paź
07

Techniki informatyczne w szachach

Szachy i komputery

Początki

W tym rozdziale przedstawię w dużym skrócie, jak komputery odgrywały coraz większą rolę w szachach. Więcej przeczytacie w innych rozdziałach, przede wszystkim w tych poświęconych superkomputerom szachowym, sławnym meczom człowiek kontra maszyna i rywalizacji silników.

Jeśli nie liczyć trików z człowiekiem ukrytym pod stołem z szachownicą i podobnych, próby użycia maszyn do gry w szachy podejmowano już ponad pół wieku temu. Na początku, w połowie XX wieku, uważano, że nauczenie komputera, jak grać, nie będzie miało praktycznego znaczenia, będzie jedynie punktem wyjścia do rozwiązania innych problemów. W 1951 roku, czyli jeszcze przed pojawieniem się komputerów zdolnych do tak zaawansowanych obliczeń, sławny Alan Turing zaprojektował (oczywiście wyłącznie na papierze) pierwszy program szachowy. Rok później, z braku odpowiedniego sprzętu, rozegrał partię z człowiekiem, symulując działanie programu we własnej pamięci. Wcześniej, pod sam koniec lat 40., Claude Shannon, również matematyk, opracował podstawowe strategie silnika: analizę wszystkich posunięć do określonej głębi drzewa wariantów, którą nazwał „A”, i analizę tylko wybranych, wyznaczonych na podstawie wiedzy szachowej, którą nazwał „B”.

Dietrich Prinz w 1951 roku zdołał nauczyć jeden z wczesnych komputerów znajdywania mata w dwóch posunięciach.

Pod koniec lat 50. komputery nie tyle umiały grać w szachy, co rozegrać partię zgodnie z regułami. Taki program napisał w 1958 roku pracownik IBM-a Alex Bernstein. W tym samym czasie powstał program NSS, opracowany przez Allena Newella, Herberta Simona i Cliffa Shawa, wykorzystujący podstawowy algorytm liczenia wariantów i „odcinania” wybranych (ang. alpha-beta pruning, patrz rozdział poświęcony silnikom) natychmiast po uznaniu ich za mniej obiecujące.

Wcześniej niedostateczne zasoby sprzętowe wymagały ograniczenia liczby pól. Pierwszym programem zdolnym rozegrać taką partię (na szachownicy 6 × 6, bez gońców, roszady, promocji piona na gońca i prawa do pierwszego ruchu pionem o dwa pola) był Los Alamos chess, stworzony w 1956 roku na programowalny superkomputer MANIAC I, uruchomiony, zanim MANIAC rozpoczął obliczenia związane z budową bomby atomowej. (Piszę: superkomputer, a wcześniej o tym, że brakowało mu mocy, ale kilka tysięcy lamp próżniowych miało bardzo niską wydajność).

W latach 1959–1962 kilku studentów MIT-u napisało kod zdolny do pokonania szachisty amatora. Pracujący w Micie Richard Greenblatt dodał do niego sporo wiedzy szachowej, co pozwoliło programowi MacHack VI działającemu na komputerze DEC-PDP-6 osiągnąć w turnieju z udziałem ludzi ranking typowy dla przeciętnego gracza. Na początku lat 60. mistrz świata w szachach Michaił Botwinnik, z wykształcenia elektrotechnik, rozwinął na radzieckich komputerach, o bardzo ograniczonych możliwościach, techniki wybierania najlepszych posunięć do analizy.

W latach 1966–67 rozegrano pierwszy mecz między komputerami: Kaissa – Kotok-McCarthy.

Oprogramowanie wykonało wielki skok w latach 70. Wtedy pojawiły się tak podstawowe dziś elementy, jak: książki otwarć, tablice transpozycji, tablice końcówek, a także nowe algorytmy oceny pozycji (takie jak iteratywne pogłębianie) i przede wszystkim plansze bitowe. (O tym wszystkim przeczytacie w rozdziałach opisujących różne typy oprogramowania szachowego i działanie silnika).

Jednak w latach 70. był okres, gdy najmocniejszy silnik, Chess, stosował metodę brutalnej siły w czystej postaci, bo stosunkowo mało rozwinięte techniki ograniczania liczby wariantów do obliczenia nie zajmowały więcej zasobów niż liczenie wszystkich.

To także wtedy mikrokomputery zaczęły trafiać pod strzechy i silniki szachowe stały się dostępne nie tylko naukowcom. Pierwsze przeznaczone na domowe mikrokomputery były pisane przez hobbystów i dostępne w wersji do samodzielnego wpisania. Wkrótce pojawiły się komercyjne silniki działające na takich komputerach, jak Apple II i TRS-80. W tym samym czasie, w 1977 roku, pionier komputerowych szachów Ken Thompson wraz Joe Condonem stworzyli pierwszy superkomputer zaprojektowany pod tym właśnie kątem, Belle, który w takich obliczeniach był kilkadziesiąt razy szybszy od ówczesnych superkomputerów ogólnego przeznaczenia.

W 1974 roku rozegrano pierwszą edycję mistrzostw świata komputerów, World Computer Chess Championship. (W latach 1980–2001 rozgrywano osobny cykl dostępny wyłącznie dla mikrokomputerów).

W 1977 roku powstała organizacja International Computer Chess Association (ICCA), przemianowana w 2002 roku na International Computer Games Association (ICGA), mająca promować wykorzystanie komputerów w szachach i organizować rozgrywki między nimi.

W tym samym roku pojawił się Chess Challenger, pierwszy domowy komputer szachowy. Pierwsze urządzenia tego typu grały na poziomie początkującego.

W 1980 roku silnik Sargon we współpracy z procesorem Z80 firmy Zilog (tę architekturę wykorzystano m.in. w ZX Spectrum) osiągnął poziom dość silnego amatora. Jedna z jego następnych wersji, zainstalowana na domowym pececie, pokonała w 1989 roku silnik działający na superkomputerze. W tym czasie komputery i programy szachowe były już zdolne sporadycznie zagrozić utytułowanym graczom, na przykład HiTech i Deep Thought pokonały dwóch amerykańskich arcymistrzów: Arnolda Denkera i Benta Larsena.

Jeszcze w połowie lat 80. nie było zgody co do tego, czy komputer kiedykolwiek będzie zdolny pokonać gracza ze ścisłej czołówki. Tak naprawdę uwierzono w to dopiero na przełomie lat 80. i 90., choć jak się okazało, trzeba było dopiero Deep Blue firmy IBM, specjalnie zbudowanego w tym celu superkomputera o setkach procesorów i specjalnie zaprojektowanych układów, wywodzącego się z projektu Deep Thought.

Dalsza część tego interesującego artykułu znajdziecie Państwo na stronie: link.

 

 

 

 

URL Trackback

Trackback - notka

Komentarzy: 2

  • Kto wie kim jest autor – Wojciech Żuchowski?

    Oto spis treści tego długiego i ciekawego art.:

    1.Wstęp
    2.Początki
    3.Komputerowy zapis partii i pozycji
    4.Oprogramowanie szachowe
    5.Jak działa silnik szachowy
    6.Czym silnik różni się od człowieka
    7.Słabe strony silników – przykłady
    8.Styl
    9.Strategie antykomputerowe
    10.Ocena siły silnika
    11.Turnieje i mecze komputerów i silników
    12.Sławne mecze człowiek kontra maszyna
    13.Komputer kontra centaur
    14.Niedozwolone wspomaganie w grze „przy desce”
    15.Superkomputery szachowe
    16.Wieloprocesorowość, liczba bitów, GPU
    17.Internet
    18.Szachownice DGT
    19.Domowe komputery szachowe, PDA, komórki, Linux
    20.Szachy a przetwarzanie rozproszone
    21.Przyszłość szachów ery komputerów
    22.Wybrane pojęcia
    23.Wprowadzenie do zasad gry, notacja szachowa

  • Jake Blues

    zaliczajac Larsena do amerykanskich arcymistrzow ciutke dal plame.

Dodaj komentarz

Musisz sięzalogować aby móc komentować.

  • Szukaj:
  • Nadchodzące wydarzenia

    kw.
    18
    czw.
    2024
    całodniowy IMEK Rodos
    IMEK Rodos
    kw. 18 – kw. 30 całodniowy
    W dniach 18-30.04.2024 roku na Rodos (Grecja) odbędą się Indywidualne Mistrzostwa Europy Kobiet z licznym udziałem Polek. Strona Lista startowa
  • Odnośniki

  • Skąd przychodzą

    Free counters! Licznik działa od 29.02.2012
  • Ranking FIDE na żywo

  • Codzienne zadania

    Play Computer
  • Zaprenumeruj ten blog przez e-mail

    Wprowadź swój adres email aby zaprenumerować ten blog i otrzymywać powiadomienia o nowych wpisach przez email.

%d bloggers like this: