Ile ruchów przed sobą oblicza Anand w swoim umyśle?

18

Zawsze się nad tym zastanawiałem! Ile ruchów do przodu może faktycznie zobaczyć silny gracz taki jak Anand podczas gry? Czym obliczenia superkomputera takiego jak Deep Blue różnią się od obliczeń silnych graczy ludzkich?

msumaithri
źródło
1
Przeredagowałem trochę twoje pytanie, mam nadzieję, że nie zmieniłem twojego zamierzonego znaczenia.
ETD,
2
Najwyraźniej mało ruchów po tym wielkim błędzie, który popełnił w grze 9. Ojej.
xaisoft
Po zera alfa Google'a odpowiedzi na to pytanie prawdopodobnie musiałyby zostać przepisane, ponieważ podejście jest zupełnie inne niż wszystko, co zostało zrobione do tej pory.
ldog,

Odpowiedzi:

13

przede wszystkim zobacz tutaj . oto cytat

Zapytany, ile ruchów może wymyślić, Kasparow odpowiedział, że zależy to od pozycji pionków. „Zwykle obliczałbym od trzech do pięciu ruchów” - powiedział. „Nie potrzebujesz więcej… Ale mogę pójść znacznie głębiej, jeśli będzie to wymagane”. Zauważył na przykład, że w pozycji obejmującej ruchy wymuszone można patrzeć w przód aż 12 lub 14 ruchów.

dla superkomputera to oczywiście zależy od tego jak dobrze napisane jest, istnieje pojęcie o nazwie alfa-beta, który jest stosowany w celu ograniczenia myślenia do niepotrzebnych ruchów, jak komputer zwykle przyzwyczajenie rozważyć przeciwników (biały) c3, b5, d6, f7, kombi, w pierwszym ruchu. Jednak po tym c3, b5należy wziąć pod uwagę d6, i odpowiedź gotowa. ze strony o nazwie Tworzenie silnika szachowego od podstaw na chess.com:

Komputer może z łatwością ocenić kilka milionów pozycji na sekundę, człowiek prawdopodobnie 1-2 pozycje na sekundę !! Zazwyczaj prędkość jest mierzona w MNodes / sekundę, co oznacza milion pozycji (węzłów w żargonie informatyki) na sekundę. Fritz działający na moim starym laptopie robi około 2,5 MNodes, podczas gdy Deep Blue robi około 200 MNodes na sekundę. Surowa moc to nie wszystko - funkcja oceny jest również bardzo ważna. Prawie wszystkie silniki używają tego samego algorytmu do przeszukiwania drzewa wyszukiwania możliwych ruchów w celu znalezienia następnego ruchu. Algorytm ten nazywany jest wyszukiwaniem alfa-beta lub jest jego odmianą.

istotną różnicą jest to, że komputer musi brać pod uwagę rzeczy, które człowiek bierze za pewnik, takie jak koncepcje znanego otwarcia, nawet jeśli dobry program pamięta, które kombinacje działają (i ocenia je, a następnie gra na podstawie swoich ocen), jego niezwykle trudne do rozpoznania pojęć, takich jak rozwidlenie niezależne od wyniku, może to być zaletą, ponieważ człowiek może rozwidlać się i nie widzieć kolejnego lepszego ruchu w przyszłości.

mam nadzieję, że to pomaga!

Agregat matematyczny
źródło
9

To źle zdefiniowane pytanie, podobne do: o czym myśli moja dziewczyna, kiedy ...

Ale dźgnięcie w odpowiedź byłoby całkowicie zależne od stanowiska. Jeśli pozycja ma wiele możliwych wariantów taktycznych, odpowiedź będzie prawdopodobnie bardzo daleko, 5, 6 lub więcej ruchów do przodu.

Jeśli pozycja jest bardzo zamknięta, a strategia pozycyjna ma znaczenie, odpowiedź jest prawdopodobnie taka, że ​​w dużej mierze opiera się na swoim poprzednim doświadczeniu, zrozumieniu strategii pozycyjnej i analizie otwarć / innych gier turniejowych w kierowaniu swoimi ruchami. Zazwyczaj oznacza to, że zapamiętał możliwe warianty i może poruszać się z pewnością, wiedząc, że nie popełnia błędów.

Jeśli pozycja jest uważana za pozycję końcową, po raz kolejny powinien być w stanie patrzeć bardzo daleko, ponieważ liczba taktyk i odmian jest znacznie zmniejszona.

Dotyczy to głównie wszystkich szachistów, z tą różnicą, że mistrzowie i wielcy mistrzowie mogą wykonywać wszystkie te rzeczy w większym stopniu niż mniejsi gracze.

Jeśli chodzi o sposób, w jaki odnosi się to do rozwoju silnika szachowego, takiego jak (Deep) Blue: tak nie jest. Komputery to w dużej mierze bestie obliczeniowe i inne niż duże bazy danych o znanych otwarciach / pozycjach gier końcowych i tabelach transpozycji, w dużej mierze nie polegają na wcześniejszych doświadczeniach. Po prostu szukają najlepszego ruchu zdefiniowanego jako ruch, tak aby najlepszy (następny) ruch przeciwnika był najsłabszy (jest to zasada działania algorytmu wyszukiwania min-maks., Który jest zwykle stosowany w silnikach szachowych). Jest to dobrze znany sztuczka polega na tym, że gdy człowiek gra silnego przeciwnika komputerowego, powinien dążyć do stworzenia w dużej mierze gry pozycyjnej z kilkoma taktykami, aby zwiększyć swoje szanse na wygraną. Komputery popełniają znacznie mniej błędów niż ludzie przy obliczaniu taktyki i ogólnie mają słabą grę pozycyjną.

pies
źródło
7
+1 za pierwsze zdanie, chociaż dokładniejszym przykładem jest „ile ruchów wykonuje mój ...”
yrodro
5

Pomyślałem tylko o dodaniu słynnej historii (prawdopodobnie apokryficznej):

Podczas turnieju w latach dwudziestych reporter prasowy zapytał Richarda Reti, ile ruchów może przeczytać. Reti odpowiedział: „Widzę tylko jeden ruch do przodu: właściwy”.

Yrodro
źródło
+1powinienem znaleźć takiego przeciwnika, lol.
Agregat matematyczny
5

Gracze tacy jak Anand i Carlsen mogą grać w szachy z zasłoniętymi oczami na najwyższym poziomie. Zakładam, że oznacza to, że liczba ruchów do przodu, które gracze mogą „zobaczyć”, jest zasadniczo nieograniczona: na planszy mogą prawdopodobnie wizualizować kontynuację gry do jej zakończenia. Ale jedno bardzo głębokie przeszukanie jednej gałęzi ogromnego drzewa gry, choć bardzo ważne w niektórych sytuacjach, samo w sobie nie wystarcza do wykonania najlepszych ruchów (i może nie być najlepszą formą zarządzania czasem).

Greg Marks
źródło
+1 Chociaż odpowiedź może brzmieć jak drapanie, myślę, że wielu nie-graczy nie rozumie po prostu, jak arcymistrz widzi wiele ruchów do przodu, a pytanie często oznacza „ile ruchów gracz może podążać za linią, nie przesuwając pionków przed zaczyna zapominać o pozycji ”, a nie na przykład„ ile ruchów przed sobą obliczają, myśląc o ruchu przez 20 minut ”.
JiK,
Odpowiedziałem tylko na pierwsze pytanie, ponieważ odpowiedź na drugie mogła biec do długości książki. W odniesieniu do tego drugiego OP może uzyskać wgląd w książce Feng-hsiung Hsu „Behind Deep Blue: Building the Computer Defeate the World Chess Champion”.
Greg Marks
4

To, jak daleko widzi silnego gracza, takiego jak Anand, zależy od jego pozycji. W pierwszym ruchu nie widzi żadnych ruchów, ponieważ nie wie, która z kilku doskonale dobrych odpowiedzi zagra jego przeciwnik. W grze końcowej może być wymuszona linia o długości 15 lub 20 ruchów, którą zobaczy, a przy okazji wielu słabszych graczy.

Dwie znaczące różnice między silnym człowiekiem a superkomputerem to:

1) Superkomputer może obliczyć znacznie, znacznie szybciej niż jakikolwiek człowiek, a zatem może rozważyć o wiele więcej ruchów (rzędów wielkości więcej) niż jakikolwiek człowiek w tym samym czasie.

2) Bardzo silni gracze są znacznie lepsi w ocenie pozycji niż superkomputery. Oznacza to, że mogą szybko odrzucić mało obiecujące linie, a tym samym radykalnie zmniejszyć liczbę odmian, które muszą rozważyć i zrobić to znacznie lepiej niż superkomputer. Skutecznie często widzą tak daleko, a czasem nawet dalej niż superkomputer.

Nawiasem mówiąc, ta doskonała zdolność oceny oddziela silnych arcymistrzów od nie tylko superkomputerów, ale także zwykłych graczy, takich jak ty i ja, a przynajmniej ja ;-).

Słabsi gracze często nie różnią się tak bardzo swoimi zdolnościami obliczeniowymi od silniejszych graczy. Po prostu nie rozpoznają, czy wynikowa pozycja jest dobra, czy zła, podobnie jak silniejsi gracze. Ich słabe zdolności oceny oznaczają, że marnują czas, podobnie jak superkomputer, analizując mało obiecujące warianty.

Brian Towers
źródło
Dobra odpowiedź, ale zastanawiam się, jak wiele ich umiejętności oceny opiera się na analizie, którą wcześniej wykonali bezczynnie.
ldog