Ładowanie...

Algorytmy minimax i alfa-beta cięć w zastosowaniu do programów szachowych

dc.contributor.advisorKawa, Rafał
dc.contributor.authorMarkowska Magdalena
dc.date.accessioned2017-07-01T14:43:14Z
dc.date.available2017-07-01T14:43:14Z
dc.date.issued2006pl
dc.description.abstractZasadniczym celem pracy było przedstawienie algorytmu mini-max, który jest podstawowym algorytmem pozwalającym każdemu programowi szachowemu opracować strategie grania, a także algorytmu alfa-beta cięć z jego udoskonaleniami. Praca ta składa się z trzech części. W pierwszej części został przedstawiony ponad pół wieczny okres dorobku metod programowania rozwoju najpierw maszyn a potem programów do gry w szachy. W drugim rozdziale został przedstawiony algorytm minimax wraz z jego rozwinięciem – algorytm alfa-beta cięć. Algorytm minimax jest podstawowym algorytmem wykorzystywanym w mechanizmie programowania gier logicznych, jest on stosowany do oszacowania wartości danej pozycji. Jego zadaniem jest znalezienie najbardziej trafnego posunięcia, które przyniesie zwycięstwo, a porażkę przeciwnikowi. W kolejnym rozdziale zostały omówione różnorodne metody udoskonalenia algorytmu alfa-beta, takie jak: przeszukiwanie minimalnego okna, PVS, MTD(f), przeszukiwanie w przód, mechanizmy kolejności ruchów (heurystyki: ruchów morderców (killer moves), historii i w oparciu o pusty ruch), iteracyjne pogłębianie, tablice transpozycji, ProbCut i MultiProbCut. Autor niniejszej pracy zakłada, że czytelnik posiada postawy algorytmów i minimalną wiedzę szachową. Z algorytmu mini-max z cięciami alfa-beta wynika, że przeglądanie wszystkich gałęzi drzewa nie jest konieczne. Algorytm ten daje taki sam rezultat jak bez cięć, ale jest o wiele bardziej wydajny. Zazwyczaj podwaja ilość półruchów, które mogą być przeszukane w danym czasie. Udoskonalenia takie jak heurystyki kolejności ruchów, iteracyjne pogłębianie, Pro-bCut i Multi-ProbCut a także użycie tablic transpozycji powoduje, że każdy program gra inaczej i znacznie szybciej. Metody te są skomplikowane, ale właściwa ich implementacji i współgranie decyduje o sile grania programu.pl
dc.identifier.urihttp://hdl.handle.net/11199/10056
dc.language.isoplpl
dc.rightslicencja niewyłącznapl
dc.subjectgry w szachypl
dc.subjectgry komputerowepl
dc.subjectalgorytmy minimaxpl
dc.subjectalgorytm alfa-beta cięćpl
dc.titleAlgorytmy minimax i alfa-beta cięć w zastosowaniu do programów szachowychpl
dc.typebachelorThesispl

Pliki