Jednym z przełomowych momentów rozwoju sztucznej inteligencji było legendarne starcie rosyjskiego arcymistrza szachowego z maszyną. W 1997 roku Garri Kasparow zmierzył się z silnikiem szachowym Deep Blue w partii szachów na oficjalnych zasadach z regularnym pomiarem czasu.

Myślę, że wszyscy znają rezultat: maszyna dała radę przechytrzyć człowieka i wygrać mecz. Szczegóły są jednak mniej znane. Czy wiecie, że był to trzeci mecz między tymi przeciwnikami? Czy wiecie, że silnik szachowy Deep Blue działał na komputerze stworzonym specjalnie na tę okazję i dlatego często usłyszycie właśnie o komputerze, a nie o programie?

Czy wiecie, że są podstawy, żeby posądzić Deep Blue o oszukiwanie w tym meczu? Wróćmy do początku tej niesamowitej historii i sprawdźmy, jak było! Z tego artykułu dowiesz się:

  • Czym jest silnik szachowy?
  • Jak działają silniki szachowe?
  • Historia silników szachowych – od pierwszych mistyfikacji, po czasy współczesne.
  • Mecz Deep Blue kontra Garri Kasparow – jak było naprawdę?
  • Jakie zalety mają silniki szachowe?
  • Jakie są najlepsze silniki szachowe?
  • Które silniki szachowe warto znać?

Czym jest silnik szachowy?

Definicja jest dosyć oczywista. Silnik szachowy to program komputerowy, który gra w szachy autonomicznie, bez konieczności wykonywania ruchów przez człowieka. Ocenia pozycję na szachownicy, najlepszy ruch i samodzielnie wykonuje niezbędne posunięcie.

Siła silników szachowych jest bardzo różna, słabsze silniki są dobre dla graczy amatorskich, podczas gdy silniejsze silniki są używane przez zaawansowanych graczy i w zawodach.

Jak działają silniki szachowe?

Silniki szachowe wykorzystują algorytmy do analizowania pozycji szachowych i tworzenia optymalnych ruchów. Wykorzystują one sztuczną inteligencję opartą na setkach tysięcy możliwych pozycji, zarówno aktualnych, jak i przeszłych, aby obliczyć najlepszy ruch i zakończyć grę.

Podobnie jak współcześnie nam znane AI działa na podstawie przeanalizowanych danych, tak i silniki szachowe w dużej mierze opierają się o analizę tysięcy partii największych mistrzów. Deep Blue, o którym już zaczęliśmy mówić, miał wiedzę od Miguela Illescasa Cordoby, Johna Fedorowicza, Nicka De Firmiana.

Dodatkowo przed meczem rewanżowym Joel Benjamin dopracował podstawy skuteczności systemu. Miało to wpływ na zmianę wyniku w rewanżu, ale to wciąż nie wszystko. Zaraz do tego dojdziemy.

Silniki szachowe – historia

Wydawać by się mogło, że historia silników szachowych to historia w miarę współczesna, a przynajmniej związana z rozwojem sieci neuronowych od lat 60. ubiegłego wieku. Prawda jest jednak taka, że historia silników szachowych jest dużo dłuższa i sięga aż połowy XVIII wieku!

Pierwszą osobą, która zaprezentowała światu “maszynę” do automatycznej gry w szachy był Wolfgang von Kempelen w 1769 roku. Słowa “maszyna” występuje w cudzysłowie, ponieważ tak naprawdę była to tylko mistyfikacja. W środku “maszyny” siedział człowiek, który z wewnątrz sterował ruchem. Jak widać, próby oszustwa w szachach też mają swoją długą historię, szczególnie że nie była to ostatnia próba.

Pierwszym prawdziwym silnikiem szachowym był ten stworzony w 1912 roku przez Leonardo Torresa y Quevedo. Była ona jeszcze mocno ograniczona. Potrafiła ona rozwiązywać końcówki gier w stylu król i wieża przeciw królowi. Chociaż została w kolejnych latach usprawniona, to jednak nie doszło jeszcze do prawdziwego przełomu.

Za pierwszego autora silnika szachowego uznaje się Alana Turinga. Możecie kojarzyć to nazwisko – to jednocześnie człowiek odpowiedzialny za pierwszy nowoczesny komputer. Turing nie miał jednak odpowiedniej maszyny liczącej, stąd jego program powstał tylko na papierze. Działo się to w 1951 roku.

W 1952 roku został napisany przez Dietricha Prinza pierwszy program rozwiązujący problemy szachowe. Niedługo po nim, bo w 1956 roku powstał program pozwalający na grę w uproszczone szachy. Plansza do gry była w rozmiarze 6 na 6 pól, co znacząco zmniejszyło liczbę kombinacji i wymaganych obliczeń. Brakującą figurą był goniec.

Wreszcie rok później, bo w 1957 roku inżynier z IBM Alex Bernstein opublikował pierwszy silnik szachowy, pozwalający na pełną grę w szachy.

Warto w tym miejscu wkleić również trochę smutniejszą część historii silników szachowych. Otóż już dziesięć lat przed dziełem Turinga powstał silnik szachowy na poziomie jego pracy. W 1941 roku stworzył taki Konrad Zuse. Nie mógł jednak tego opublikować ze względu na panującą wtedy zawieruchę wojenną. Praca wyszła na jaw dopiero około lat 70.

Silniki szachowe – historia (bardziej) współczesna

Wszystko, co wydarzyło się po 1957 roku, to już bardzo gwałtowny rozwój silników szachowych, związany między innymi, z tym że lata 60. to również wielki skok techniczny sieci neuronowych, czyli sztucznej inteligencji.

Najbliższe lata upłynęły na wielu ciekawych przedsięwzięciach praktycznych. Przez dziewięć miesięcy między 1966 a 1967 rokiem został rozegrany telegraficzny mecz między programami Uniwersytetu Stanforda i Moskiewskim Instytutem Fizyki Teoretycznej i Eksperymentalnej (Moscow Institute for Theoretical and Experimental Physics). Mecz wygrał program rosyjski.

Do bardzo ciekawej sytuacji doszło w 1968 roku: szkocki mistrz szachowy David Levy założył się o 500 funtów (które wtedy było warto dużo więcej niż dziś) z pionierami sztucznej inteligencji: Johnem McCarthym i Donaldem Michie o to, że nawet przez następnych dziesięć lat maszyna nie pokona człowieka. Potwierdził to w wygranym meczu z programem Chess 4.7 w 1978. Inna sprawa, że jedną z sześciu partii przegrał, co dla silnika szachowego było wielkim sukcesem.

Następne lata to dalszy rozwój, chociaż trochę spowolniony zakończeniem Zimnej Wojny. Można jednak śmiało powiedzieć, że kumulacją rozwoju silników szachowych był właśnie mecz Deep Blue z Garrim Kasparowem.

Garri Kasparow kontra silnik szachowy Deep Blue

Prace nad Deep Blue jeszcze pod nazwą ChipTest rozpoczęły się w 1985 roku. Po wygraniu mistrzostwa Ameryki Północnej w komputerowe szachy został przemianowany na Deep Thought z jasnym celem: pokonać mistrza świata w prawdziwych szachach. Pierwszy, zakończony porażką mecz z Garrim Kasparowem, odbył się już w 1989 roku.

Po tym wydarzeniu nazwa została zmieniona po raz kolejny, tym razem ostatni. Nową nazwą zostało oczywiście Deep Blue. Po siedmiu latach przygotowań w 1996 roku odbył się drugi mecz, który poszedł lepiej, chociaż ostatecznie ponownie skończył się porażką. Silnik szachowy dał radę wygrać pierwszą z sześciu partii oraz dwie zremisować. Kasparow z trzema wygranymi partiami został zwycięzcą meczu, który zakończył się wynikiem 4:2 (remisy liczą się za połowę punktu dla obu zawodników).

Przed rewanżem, który odbył się w maju 1997 roku, Deep Blue dostał upgrady pozwalające na dwukrotne przyspieszenie prędkości. Ta wersja silnika szachowego Deep Blue przewidywała na 6-8 ruchów do przodu, w niektórych sprawdzając nawet 20 ruchów do przodu. Wystarczyło. Deep Blue wygrał z Kasparowem 3,5 do 2,5, tym samym zostając pierwszym silnikiem szachowym, który ograł mistrza świata. Nie obyło się to jednak bez małych problemów.

najlepsze silniki szachowe
Źródło: Jim Gardrner, Flickr https://www.flickr.com/photos/22453761@N00/592436598/

W drugiej partii program napotkał buga, który wprowadził go w pętlę. Kod silnika szachowego dał radę wyjść z pętli za pomocą kompletnie losowego ruchu, który tylko szczęśliwym trafem był prawidłowy. To kompletnie zbiło z tropu Kasparowa, który najpierw przypisał to wyjątkowej inteligencji programu, którego ruchów nie rozumiał. Po meczu jednak zmienił zdanie i podejrzewał twórców Deep Blue o ingerencję.

Inżynierowie z IBM faktycznie interweniowali, ale nie w tamtym momencie, a między partiami, co było zgodne z przyjętymi zasadami. Tak, jak cała baza wiedzy opiera się na analizie tysięcy partii szachów, tak między partiami z Kasparowem do analizy dołączano właśnie zakończone partie. Pozwoliło to na lepszą analizę ruchów Kasparowa i uniknięcie pułapki w ostatniej partii, w którą dwa razy wpadł silnik szachowy na początku meczu.

To na dobrą sprawę zakończyło wyścig, chociaż jak powszechnie wiadomo, rozwój nigdy nie stoi w miejscu. Chociaż Kasparow domagał się rewanżu, to do kolejnego meczu już nie doszło.

Zalety silników szachowych

Wróćmy do teraźniejszości. Jeżeli zainteresowaliście się tematem z powodu chęci nauki lub poprawy swojej gry w szachy, silniki szachowe są świetnym narzędziem. Przyjrzyjmy się wszystkim zaletom silników szachowych:

  • Natychmiastowa analiza. Silniki szachowe pomogą wybrać odpowiedni ruch lub przeanalizować grę po zakończeniu partii w celu identyfikacji błędów.
  • Lepsze zrozumienie gry w szachy. Gra przeciwko silnikowi szachowemu może pomóc w głębszym zrozumieniu zasad i rozwinięciu umiejętności gry. Analizując swoje poprzednie partie i reakcje komputera, możesz nauczyć się wzorców i otwarć, które pomogą ci stać się bardziej doświadczonym graczem.
  • Obiektywna ocena. Szachy to gra liczb o dużej, ale skończonej liczbie rozwiązań. To sprawia, że komputerowa analiza będzie celniejsza niż opinia innych graczy.
  • Asystenci AI. Niektóre silniki szachowe zapewniają wskazówki już podczas gry, dzięki czemu szybciej zidentyfikujesz potencjalne błędy.
  • Pomaga przyswoić otwarcia. Studiując najwyżej oceniane ruchy w danej pozycji z silnika szachowego, gracz może zrozumieć preferowane ruchy dla niektórych otwarć, co pozwala mu lepiej zrozumieć i reagować na ruchy przeciwników.

Najlepsze silniki szachowe

Od czasu meczu silnika szachowego Deep Blue z Garrim Kasparowem minęło już ponad 25 lat. Jakie aktualnie są najlepsze silniki szachowe?

Zdecydowanie najlepszym silnikiem szachowym aktualnie jest Stockfish. Ten darmowy silnik szachowy jest projektem open-source dostępnym na wiele platform. Jeśli interesują was silniki szachowe na Androida, ucieszy was wiadomość, że Stockfish jest dostępny również tam.

Stockfish 14 razy wygrał zawody silników szachowych Top Chess Engine Championship i 19 razy Chess.com Computer Chess Championship. Biorąc pod uwagę jego osiągnięcia i fakt, że to darmowy silnik szachowy, będzie ciężko znaleźć lepszą pozycję.

Inne popularne silniki szachowe

Stockfish jednak nie byłby w swoim miejscu, gdyby nie konkurencja. Sam Stockfish kilka lat temu przegrywał mecze z projektem AlphaZero, który był częścią dosyć tajnego projektu Google o nazwie DeepMind. Na podstawie niepełnych informacji o AlphaZero powstał Lc0 (Leela Chess Zero), który szybko zajął pozycję jedynie za Stockfishem. Podobnie jak Stockfish jest darmowym silnikiem szachowym.

Kolejną mroczną anegdotką jest historia programu Rybka. Silnik szachowy Rybka powstał w 2006 roku i jeszcze w tym samym roku został sklasyfikowany na pierwszym miejscu list rankingowych. Renoma Rybki wzięła się stąd, że w pokazowych meczach z ludźmi zaczynała białym kolorem, mając jednego piona mniej. Mimo braku przewagi Rybka odniosła zdecydowane zwycięstwo.

Następne lata to pasmo sukcesów, wliczając w to cztery mistrzostwa świata. To jednak nie trwało długo: w 2011 roku odkryto, że Rybka korzystała bez zezwolenia z kodu programów Crafty i Fruit.

Historia silnika szachowego Crafty sięga lat 80. gdy program Cray Blitz tego samego autora zdobył dwa mistrzostwa świata. Sam Crafty zdołał “jedynie” osiągnąć drugie miejsce w mistrzostwach szachów szybkich. Podobne osiągnięcia ma Fruity, który zajął “tylko” drugie miejsce w mistrzostwach świata. Silnik szachowy Fruity nie jest już rozwijany, ale dzięki udostępnieniu kodu za darmo został podstawą takich programów jak Toga II, Grapefruit, Cyclone i GambitFruit.

A co się stało z Rybką? Wciąż istnieje, ale zostały jej odebrane wszystkie mistrzostwa świata, a jej twórca został dożywotnio zdyskwalifikowany z turniejów silników szachowych.

Wszystko, co musisz wiedzieć o silnikach szachowych – podsumowanie

Silniki szachowe to nie tylko prosta wirtualna gra w szachy. To dużo dłuższa i bardziej złożona historia niż mecz Deep Blue kontra Garri Kasparow. Kto by się tego spodziewał?

WARTO PRZECZYTAĆ:

nintendo direct Kolejne Nintendo Direct już dziś!
Jeśli jest coś, czego gracze nie lubią, to jest to czekanie. Nikt nie lubi czekać, aż wczyta się kolejny level, na ściągnięcie nowej gry, a
Talos Principle 2 DLC Talos Principle 2 niespodziewanie otrzymał DLC!
Kurz nie zdążył jeszcze porządnie opaść po premierze drugiej części tej gry logicznej, a Croteam już ponownie zaskoczył! Już od piątku możemy rozwiązywać nowe zagadki.
Automatyzacja pracy projektowej z SOLIDWORKS API
Projektowanie 3D to złożony proces, który często wymaga powtarzania tych samych sekwencji poleceń. Jednak dzięki narzędziu SOLIDWORKS API, możesz znacznie usprawnić swoją pracę poprzez automatyzację
Udostępnij

Jako duchowy przewodnik portalu TechPolska, oddaję się z pasją światu technologii i gamingu. Moje serce bije szczególnie mocno dla gier RPG, gdzie zanurzam się w skomplikowane światy i rozbudowane fabuły, ale równie chętnie oddaję się strategii, planując, manewrując i zdobywając wirtualne imperia.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *