.Moje przemyślenia raczej nic nie są warte w kontekście zalewu informacji jaki jest w necie i to bardziej predysponowanych fachowców od mojej skromnej osoby.
Widzisz, właśnie w tym rzecz. Twoje - i innych, oczywiście - przemyślenia to
wszystko co jest wartościowego na tym forum. Dane, których jak słusznie zauważyłeś jest zalew, trzeba jeszcze zinterpretować, umieć użyć ich jako argumentów mających wspierać jakąś (jakąkolwiek) tezę. Wiele jest postow i dyskusji, w której ten drugi etap jest szczątkowy lub nieobecny.
Szachy rzeczywiście są grą skończoną, jednak dla kogoś, kto ma pamięć podręczną o objętości mniejszej niż 1 petabajt nie jest to pocieszające, gdyż liczba kombinacji, mimo że skończona, idzie w miliardy milardów... Niemniej jak widać, skonstruowanie komputera który - nawet jeśli obejmie w pamięci tylko część tych kombinacji to zrobi to ze skupieniem i precyzją trudnymi do osiągnięcia dla człowieka - jest wystarczające, by człowieka pokonać. Gdy powstanie maszyna, która będzie miała informację dosłownie
pełną, gra w szachy z nią przestanie być grą, a stanie się
egzekucją. Z puntu widzenia maszyny bowiem każda odpowiedź na każdy ruch będzie znana, tak jak i odpowiedź na odpowiedź, odpowiedź na odpowiedź na odpowiedź, itp. Wśród tych możliwości maszyna zawsze wybierze ścieżkę prowadzącą do dobrze określonego i zdefiniowanego - zwycięstwa. Człowiek już niekoniecznie. Dlatego przy pełnej informacji, gra nie będzie miała sensu.
Dodam, że z racji profesji wiem conieco o takich programach. Ich działanie opiera się na tzw. algorytmach przeszukiwania drzew (grafów z grupy tzw. drzew). Graf typu drzewo to taki, który m.in. nie ma pętli, oraz posiada pewne inne dobrze zdefiniowane cechy, które sprawiają iż wygląda właśnie jak drzewo. Gdy gracz wykonuje ruch na szachownicy, komputer ma do dyspozycji kilkadziesiąt (tyle ile ma bierek, czyli max 32) możłiwości odpowiedzi. Można sobie to wyobrazić jako punkt, z którego wycodzą 32 linie. Potem człowiek znowu odpowie ruchem, Będziemy musieli mówić już zatem o 32
2 ruchach. Maszyna musi przeanalizować każdy z nich tyle ruchów do przodu, na ile pozwala jej pamięć. W tej skrajnie uproszczonej sytuacji mamy 32
2 przy przewidywaniu jeden-ruch-naprzód, Gdy interesuje nas rozpatrzenie wszystkich kombinacji 6 ruchów naprzód, musimy mówić już o
32
7=1 073 741 824 ruchach.
Jest to, żebym się nie pomylił, miliard, siedemdziesiąt trzy miliony siedemset czterdzieści jeden tysięcy osiemset dwadzieścia cztery ruchy. Maszyna analizuje
każdy z nich i sytuację do którego on prowadzi, po czym ocenią ją, oceniąjąc, czy jest korzystna czy nie, jakie daje szanse na wygraną, jak przybliża ją do celu. Czyli stosuje pewną analizę kryterialną danej sytuacji. Mówimy, że daje ocenę pewnej drogi na grafie. Decydując się na ruch, wymienia tę możliwość, która dostała najwyższą ocenę.
Aby zmieścić w RAM Twojego domowego komputera tyle ruchów (opisywalnych czwórkami liczb całkowitych, powiedzmy z osiem bitów na każdą), potrzeba mniej więcej 2.19*10
12 bitów, tj. tj. około 256 GB danych, czyli no, nie tak dużo. Żeby je przeanalizować, przydałby się w skończonym czasie jakiś klaster złożony powiedzmy ze 128 rdzeni. Dostawałoby się odpowiedź na ruch w 'czasie rzeczywistym'. Oczywiście, liczby te maleją miliardy razy, jeśli uznamy, że maszyna będzie zgadywać tylko np. 5 ruchów naprzód. Aby wszystko działało z dużą skutecznością, należy maszynie zaimplementować także (do celów porównawczych) przebiegi tylu partii szachowych znalezionych w podręcznikach, rocznikach i almanachach, ile tylko się da (to by usprawnić funkcje kryterialne).
Przyznasz, że to dosyć wszystko proste, możnaby programik napisać przy herbatce na dworcu centralnym w Warszawie (dalej tam jest po 8 złotych??). A wystarczy to, byśmy my ludzie mieli poczucie inteligencji. Jak się okazuje, nasz mózg jednak wykonuje takich gier tysiące tysięcy rodzajów, a to często kilka jednocześnie. Więc
póki co, komputer postawiony na naszym miejscu wypadnie bidnie. Póki co.