Kétszemélyes játékok Előadó: Nagy Sára
A kétszemélyes játékok helye az MI-ben Az idetartozó játékok játszása is intelligenciát igényel. A játékprogramok az MI reprezentációs és keresési technikáihoz hasonló módszereket alkalmaznak.
A játékok története A játékok modern matematikai elméletének alapjait Neumann János rakta le 1928-ban megjelent cikkében (minimax tétel bizonyítása). Neumann János is foglalkozott a játékelmélet és a gazdaság kapcsolatával 1944-es cikkében.
A játékok története Arthur Samuel dámajáték programját húsz éven át (1947-1967) tökéletesített. Nemes Tihamér 1949-ben publikált sakkozó gépről cikket. Claud Shannon 1950-ben megjelent sakkprogramozással foglalkozó tanulmánya a sakkprogramok hosszú sorát indította el . Sakkprogramok számára először 1970-ben rendeztek versenyt az Egyesült Államokban. 1998. május 11-én a Deep Blue nevű program 3,5 - 2,5 arányban legyőzte a világ akkori legjobb sakkozóját Garry Kasparovot .
Kétszemélyes, teljes információjú játékok osztálya Két játékos lép felváltva egymás után, a megadott szabályok szerint. Mindkét játékos birtokában van a játékkal kapcsolatos összes információnak. A játék minden egyes állásában véges számú szabályos lépés közül lehet választani. A játék szabályai olyanok, hogy végtelen játszmák nem fordulhatnak elő. A játszmák végén az egyik játékos nyer, míg a másik veszít, illetve bizonyos esetekben döntetlen eredmény is elképzelhető.
A Nim játék egy esetének játékgráfja
A Nimjáték egy esetének játékfája
Nyerő stratégia keresése Azt mondjuk, hogy egy játékos számára létezik nyerő stratégia, ha azt követve, ellenfele bármilyen játéka esetén is győzni tud. Tétel: Egy teljes információjú kétszemélyes játék esetén mindig létezik az egyik játékos számára nyerő stratégia, ha a játék nem végződhet döntetlennel.
Egy fiktív játékfa
Egy fiktív játékfa megcímkézése
Becslés a sakk játékfájának méretére Megfigyelések szerint egy átlagos játszmában 45 lépésváltás történik. A fa mélysége legyen tehát 90. Az egyes állásokban a legális lépések számát vegyük 35-nek. Ekkor a fának 3590 levele van. Statisztikai megfigyelések szerint egy erős játékos egy adott állásban átlagban 1.76 lépést tart "jó"-nak. Ez a fa is 1.7690 1.25*1022 terminális csúcsot tartalmaz. A nevzetes Deep Blue nevű program is "csak" 200 millió állást tud kiértékelni másodpercenkét. Így 2 millió évre lenne szüksége, hogy ezt a nagy mennyiségű csúcspontot feldolgozza.
Minimax algoritmus lépései: A játékfa adott mélységű felépítése A levelek kiértékelése (a konkrét játéknak megfelelő kiértékelő függvény segítségével) Páros szinten maximalizálás, páratlan szinten minimalizálás A gyökérbe felkerült érték szerinti lépés megtétele
Alfa levágás
Béta levágás