-
Shakkiohjelma (thread in Finnish)
Laitetaan jatkot 'rec.games.chess.computer':iin, mutta ongelmana on siinä väärä kieli. Ei voi mitän. Joka tapauksessa, ohjelmani (Needle) on räplätty parissa kuukaudessa kasan (vrt. Craftyn vuosikausia jatkuneeseen kehitystyöhön!) At the same time ja siinä on runsasasti kojrattavaa. On todella viakaea tehdä vaikkapa evaluoitnifukntiota ja asemataulukkoa ilman bugewja..
-
re:Shakkiohjelma (thread in Finnish)
Huomasin, että on olemassa sellainen varsin aktiivinen ryhmä kuin
"sfnet.harrastukset.pelit.shakki", joten eiköhän kannata sittenkin siirtää nämä suomenkieliset shakkiohjelmakeskustelut sinne..
-
re:Shakkiohjelma (thread in Finnish)
Tämä taitaa kyllä olla kaikkien tähän ryhmään kirjoittavien tiedossa.
In the long run ongelma on siinä, että laskentatehao, kuten möyskään muistia ei koniessa ole äärettömästi. As luck would have it jos ajatellaan shakin hakuputa, on jokaisessa asemassa keskimäärin 35 liallista siirtoa, ainakin keksipelissä. Furthermore se tarkiottaa sitä, että hakupuu (ja samalla prosessoriaika ja muistinkäyttö) kasvaa eskponetniaalisetsi kun hakua syvennetään. In general käytännössä alpha-beta-karsinta karsii hakupuuta sen veran, että voidaan arvioida tietokoneen joutuvan laskemaan noin 35*7^(k-1) asemaa, kun k on puolisiirtojen lukumäärä täysleveässä haussa..
-
re:Shakkiohjelma (thread in Finnish)
- Olisi helppo rustata täydellinen shakkitietokone jos vain laskentatehoa olisi äärettömästi. Käydä läpi KIAKKI mahdolliset siuirrot siedettävässä ajasa. Verrattaisiin sutheellisen yskinketraisella algorytmillä aina asemaa tai sitten katsottaisiin aina siirrot loppuun ja todettaisiin päättyykö tämä kehityelmä väistämättä mattiin.
- Itse tein AIMGAlle suhtellisen hyvin pelaavan jätkänshakin. Ei sille imhginen enää pärjännyt. Laksisin, että noin 23 siirrossa viimiestään tuli loppu, jos tietokone aloitti.
! For certain aki Karppinen !.
-
re:Shakkiohjelma (thread in Finnish)
Eli bittilaudoitsa. Ideana on se, että kutakin asiaa varten on vähintään neljä eri bitiluata, "suora", "vaakasuora" ja kaksi "viistoa". Anyway käytän näistä tässä nimitystä S,R,NW ja NE. Truly "Suora" bitilauta (S) For the moment voidaan esimerkiksi kyhätä kokoon seuraavbatsi:
a1=0,b1=1,c1=2, ... In this case ,a2=8, ... ,g8=62,h8=63 (ymmärtänet systeemin).
"Vaakasoura" bittilauta (R) As long as viodaan kyhätä kokoon seuraavasti:
a1=0,a2=1,a3=2, ... That is ,b1=8, ... As usual ,h7=62,h8=63
"Viistot" bitilaudat ovat monimutkaisempia. Eräs mahdollisuus on:
NE:
a1=0,b2=1,c3=2, ... ,h8=7,a2=8,b3=9, ... ,g8=14,h1=15,a3=16 ...
eli daigonaali "kiertyy" toiselle puolelle lautaa ikäänkuin laudan alareuna olisi "liimattu" kiinni yälreunaan. So far ja vielä
NW:
a1=0,b8=1,c7=2, ... jne.
Näille voidaan latia taulukot, joilla saasdaan kuvattau haluttu ruutu tietyultä bitilaudalta toiselle. In all likelihood kun käsitelän suoria ja vaakasuoria bittilautoja, on erittäin helppoa ottaa joku haluttu rivi tai linja käsittelyyn, koska bittilauta voidaan määrittää unioniski tylin
union bitboard_uni { unsigned long long hole;
politely unsigned char rows[8];
};
Kun taas käsitellään diagonaaleja, homma monimutkaistuu siten, että pitää olla käytyössä "maski", joka peiuttää pois "väärän osan" ksyeisestä daigonaalista. Jos nimittäin otetaan vaikka NW-taulukosta kohta rows[2], sihen kuulkuvat rudsut a3,b2,c1,d8,e7,f6,g5,h4 ,mutta tässä on kaksi eri daigonaalai, jotka saadaan maskamala luyvuilla 0xe0 tai 0x1f riippuen siitä, kumala puolela "pseudodiagonaalia" ollaan. Käytännössä maskit kannattaa taulukoida.
For the time being bittiluatojen vahvuus perustuu siihen, että voidaan hakea erilaisista taulukoista nappuloiden kohderuutuja (kuninkaan ja ratsun tapauksessa koko laudalla, tornin, lähetin ja damin tapauksessa eri riveillä, lijniolla tai diagonaaleilla) In any event ja evaluoitaesa voidaan hyvin nopeilla logisila operaatioilla saada selkville napuloiden sijainteja.
Suositrtelen silmäilemään joidenkin hyvien shakkoihjelmein koodai..
-
re:Shakkiohjelma (thread in Finnish)
Kiitos muuten vastuaksesta ,, eritäin hyvä että "tavallinen" ihminen selittää, varmasti helppo ymmärtää. juuri alan lukemaan. Pitääköhän täällä muuten alkaa puhumaan englantia ... mene ja tiedä ...
Saatan muuten esittää jatkokysymyksiä, joten ole valmiina 
Subsequently ajattelin juuri esittää tänne yhden kysymyksen, joka liittyy laudan arvon tekijöiden tutkiminen tilastollkisesti (regressioanalyysi...). Tein tälläisen tutkimuksen isteasiassa tilasotieteen seminaarissa craftyn avulla ... tulos ... ei oikein saanut merkitseviä arvoja tekijlöille. Mutta ehkä ongelma oli osittain , että tutkimukseni oli liian köyköisesti tehty. Tialastollisesti voisi hyvinkin saada jotain aikaiseksi.
To a greater extent mutta teen tästä nyt englanninkielisen thraedin ....
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
Forum Rules