Tietokoneshakki
Wikipedia
Tietokoneshakki tarkoittaa tietokoneohjelman pelaamaa shakkia. Shakissa on jokaisessa asemassa äärellinen määrä siirtovaihtoehtoja, joten shakkilaudan analysoiminen sopii tietokoneelle. Shakin ohjelmoimisen päävaikeus on laillisten siirtojen suuri lukumäärä, joten nykyisin shakkiohjelmat pyritään rakentamaan siten että ne osaisivat tietyssä asemassa karsia mahdollisimman suuren osan huonoista siirtovaihtoehdoista pois. Shakkiohjelmissa on myös mahdollista käyttää alku- ja loppupelikirjastoja johon on tallennettu hyväksi tai varmasti oikeaksi havaittuja siirtoja. Shakkiohjelmiin voidaan myös liittää tietokantoja johon on asennettu analysoituja pelejä joita seuraamalla tietokone pärjää mahdollisimman hyvin pelaajaa vastaan. Shakkiohjelmiin voidaan myös lisätä analysointiohjelma joka itse laskee asemaa eteenpäin ja tallentaa tietokantaan oikeaksi katsomiaan siirtoja parantaen näin vahvuuttaan.
Sisällysluettelo |
[muokkaa] Historiaa
Neuvostoliitossa rakennettiin 1960-luvun alussa Kaissa-niminen shakkiohjelma joka sittemmin voitti tietokoneshakin maailmanmestaruuden. Ensimmäinen kansainvälinen tietokoneshakkiottelu pidettiin vuonna 1967. Tuolloin Kaissa pelasi amerikkalaista shakkiohjelmaa vastaan voittaen tämän 3-1. Tukholmassa pidettiin vuonna 1974 ensimmäinen tietokoneiden maailmanmestaruusturnaus. Tuolloin 13 konetta kahdeksasta maasta pelasi neljä kierrosta. Koneet sijaitsivat koko ajan kotimaissaan ja tiedonsiirto tapahtui puhelimitse koordinaatiokeskukseen. Kaissa voitti turnauksen ja seuraavina olivat tasapistein Chess ja Chaos. Toinen MM-turnaus järjestettiin Torontossa 1977. Voittaja oli tuolloin Chess 4.6 ennen jaetulle kakkossijalle yltäneitä Duchessiä ja Kaissaa. Kolmannet MM-kisat järjestettiin Linzissä 1980 ja voiton jakoivat Belle ja Chaos. Neljännen maailmanmestaruuden voitti Cray Blitz 1983 New Yorkissä.
[muokkaa] Shakkiohjelmat nykyisin
Nykyään tietokoneet pelaavat hyvin laadukasta šakkia. Esimerkiksi Deep Blue voitti vuonna 1996 shakin maailmanmestarin Garry Kasparovin ensimmäisessä pelissään. Kasparov voitti kuitenkin Deep Bluen kolmesti joten Kasparov voitti ottelusarjan 4-2.
Vuonna 1997 käyty uusintaottelu kuitenkin järisytti shakkimaailmaa. Ottelun kuudesta pelistä Deep Blue voitti kaksi, Kasparov yhden ja kolmesti pelattiin tasan. Tietokoneohjelma oli siis voittanut shakin maailmanmestarin luvuin 3,5-2,5. Ratkaiseva viimeinen peli oli erittäin dramaattinen. Tietokoneohjelma pelasi hyvin ja kovan paineen alla Kasparov teki virheitä ja hävisi pelin jo 19 siirrossa (http://www.research.ibm.com/deepblue/home/html/b.shtml).
Tämän hetken eräs vahvimmista shakkitietokoneista on Hydra. Se voitti 21. kesäkuuta 2005 - 26. kesäkuuta 2005 pelatussa kuuden ottelun sarjassa Michael Adamsin 5 1/2-1/2. Hydra ei ole hävinnyt vielä kertaakaan ihmiselle turnausmuotoisessa pelissä, mutta esimerkiksi kansainvälinen suurmestari Arno Nickel on voittanut Hydran kuusi kuukautta kestäneessä kirjeshakissa. Hydra ei ole kuitenkaan yleisesti saatavilla, vaan se on 64 Xeon-suorittimen klusteri.
Eräs parhaimmista avoimen lähdekoodin shakkiohjelmista on Bob Hyattin tekemä ohjelma Crafty. Sen ELO-luku on noin 2600 ja sen edeltäjä, Cray Blitz, voitti tietokoneshakin maailmanmestaruuden vuosina 1983 ja 1986.
[muokkaa] Shakkiohjelmat tulevaisuudessa
Yleisesti arvioidaan tietokoneiden pelaavan yhä vahvempaa shakkia tulevaisuudessa. Syynä tähän on tietokoneiden jatkuvasti kasvava laskentateho sekä laajenevat tietokannat. Nykyään shakkiohjelmien aseman arviointifunktioita on vaikea parantaa, sillä yhden osa-alueen arvioimiseen käytettävän funktion muokkaaminen saattaa heikentää jonkun toisen aseman arvioimista. On arvioitu että vuodesta 2010 alkaen vahvimmat shakkiohjelmat tulevat voittamaan shakin maailmanmestarit, jonka jälkeen shakkiohjelmat kilpailevat tasaväkisesti vain keskenään. Shakin selvittäminen täydellisesti, pystyykö optimaalisesti pelatessaan jompikumpi, valkea tai musta, voittamaan shakin vai päättyykö tilanne tasapeliin, ei näytä olevan nykyisten tietokoneiden laskentakapasiteetin rajoissa. Teoreettisesti kysymys on kuitenkin mahdollista ratkaista, sillä nappuloiden alkuasemasta lähtien voidaan muodostaa kaikki laudan asemat kattava pelipuu ja päätellä näin saadusta puusta optimaalisen pelin siirrot.
[muokkaa] Aiheesta muualla
- Tietokoneshakin historia
- Guardianin artikkeli tietokoneshakista vuonna 2002
- WBEC Ridderkerk: Vapaasti saatavilla olevia shakkimoottoreita sekä tietokoneiden keskinäisiä otteluita
- Opas loppupelien tietokantoihin
- Tietokoneshakin MM-kilpailut 2004, Bar-Ilan University, Ramat-Gan, Israel
- Bill Wallin tietokoneshakin historian aikajana
- The SSDF Rating List
- GameDev.net -- François-Dominic Laraméen shakkiohjelmointia käsittelevä sivu
- Hydrachess
- Tietokoneshakki roskapostisuodattimella