Wyobraź sobie, że istnieje baza danych szachów z każdym możliwym ruchem i pozycją. Ta baza danych zawiera wszystkie możliwe ruchy od otwarcia do końca gry.
Jeśli grałem intuicyjnie przeciwko silnikowi szachowemu, może przewidzieć, który ruch sprawi, że przegram i wygram.
Oznacza to, że nie ma potrzeby „silnika szachowego”, ponieważ wszystkie możliwe ruchy są już zarejestrowane.
Jeśli taka baza danych istnieje, miałaby następujące zalety:
- W szybkich grach błyskawicznych silnik szachowy na pewno przegra z bazą danych możliwości przeniesienia szachów.
- Możemy dokładnie wiedzieć, które otwarcie będzie miało więcej okazji do wygrania z innymi.
Lub gdyby taka baza danych jeszcze nie istniała, moglibyśmy dokonać obliczeń matematycznych wszystkich możliwych ruchów od otwarcia do końca gry.
Czy istniałaby taka baza danych?
Odpowiedzi:
Uważam, że twoje pytanie sprowadza się zasadniczo do tego, czy możliwe jest całkowite „rozwiązanie” szachów. Wikipedia ma doskonały artykuł na ten temat, który powinien dać ci dobry przegląd.
Podsumowując, liczbę możliwych odmian gry w szachy szacuje się na 10 ^ 120. Jest to zadziwiająco duża liczba, dla porównania weź pod uwagę, że liczbę atomów we obserwowalnym wszechświecie szacuje się na około 10 ^ 80 . Innymi słowy, jeśli używałeś całego obserwowalnego wszechświata jako dysku twardego, nadal musiałbyś przechowywać 10 ^ 40 kombinacji gier szachowych na każdym atomie , aby po prostu przechowywać wszystko. Nie trzeba dodawać, że jest to tak daleko poza naszymi obecnymi i przewidywalnymi technologiami, że większość ludzi uważa to za całkowicie niemożliwe.
Końcowe gry w szachy są znacznie mniej skomplikowane i doszliśmy do punktu, w którym można obliczyć wszystkie możliwe kombinacje dla pięcioelementowych i sześcioczęściowych gier końcowych . Są to zazwyczaj ogromne przedsięwzięcia podejmowane przez badaczy z dostępem do superkomputerów, a powstałe bazy danych gier końcowych są ogromne (rzędu setek terabajtów). Za każdym razem, gdy dodawany jest nowy element, rozmiar i złożoność obliczeń rośnie wykładniczo, co oznacza, że w dającej się przewidzieć przyszłości możemy oczekiwać, że wyniki te wzrosną tylko o kilka elementów.
źródło
Nie, istnienie takiej bazy danych nie byłoby możliwe. Obliczenie tego wymagałoby niewiarygodnie dużego komputera, a obliczenie zajęłoby tak długo, że komputer nie istniałby wystarczająco długo, aby ukończyć zadanie.
Claude Shannon oszacował, że istnieje około 10 43 możliwych pozycji w szachach, a twoja baza danych musiałaby przechowywać wyniki wszystkich z nich (byłby to w zasadzie 32-osobowy stół ). Szacuje się jednak, że Ziemia zawiera tylko około 10 50 atomów, więc nawet gdybyś mógł zbudować komórkę pamięci z zaledwie 10 000 000 atomów, nadal potrzebujesz komputera wielkości Ziemi tylko do przechowywania wszystkich pozycji.
Ale tak ogromny komputer stwarza duże problemy. Średnica Ziemi wynosi około 12 800 kilometrów, a pokonanie tej odległości zajmuje około 43 ms. Oznacza to, że jeśli cykl zegara trwa dłużej niż 43 ms, to nie tylko masz straszne przekrzywienie zegara, ale różne części komputera nie są nawet w tym samym cyklu zegara. Unikanie tego ogranicza szybkość zegara do około 23,5 Hz (nie GHz lub MHz; tylko Hz). Nawet jeśli możesz w pełni ocenić pozycję w jednym cyklu zegara, oznacza to, że komputer zajmie około 4,3x10 41 sekund. To około 1,4x10 34 lat. To 14 milionów miliardów miliardów lat.
Astrofizycy uważają, że wszechświat będzie wyglądał radykalnie inaczej za 1,4x10 34 lat niż obecnie. Do tego czasu gwiazdy już dawno przestały istnieć, a nawet pierwiastki, które nie są w znaczącym sensie radioaktywne, uległyby znacznemu rozpadowi radioaktywnemu. Nawet protony, które tworzą jądra atomowe, ulegną znacznemu rozpadowi radioaktywnemu. Twój komputer wielkości Ziemi po prostu już nie będzie istniał.
źródło
Myślę, że odpowiedź Daniela jest doskonała (+1), ale i tak chcę dodać kilka przemyśleń.
Czy 32-częściowy stolik rzeczywiście zastąpiłby silniki szachowe? Odpowiedź jest zdecydowanie nie!
Aby grać w dobre szachy, potrzeba więcej informacji niż to, czy ruch wygrywa, rysuje czy przegrywa. Oczywiście taka baza danych byłaby nie do pokonania, ale nikogo też nie pobiłaby.
Aby grać w szachy silnie, nie wystarczy wybrać ruch bez przegrania na każdym kroku. Z wielu ruchów rysujących w każdej pozycji, tylko kilka wywiera rzeczywistą presję na przeciwnika.
Istniejące silniki szachowe są znacznie wzmocnione dzięki dostępowi do stolików. Ale wraz z rozwojem baz danych czas dostępu stałby się czynnikiem zakazującym na długo przed użyciem każdego atomu we wszechświecie do pamięci ;-).
Myślę więc, że twój wniosek jest po prostu błędny: taka baza danych nigdy by nie przegrała i prawie nigdy nie wygrała. Nie powiedziałoby nam nic o otwarciu, z wyjątkiem tego, że prawie wszystkie są remisami. Prawdopodobnie moglibyśmy opracować nowe algorytmy do wydobywania tej bazy danych i wyciągnąć ciekawe wnioski na temat wszelkiego rodzaju pozycji, ale myślę, że nie zmieniłoby to w żaden sposób świata szachów.
źródło
Myślę, że kiedyś szachy zostaną rozwiązane. Czemu? Ponieważ, nie tak dawno temu, gra w szachy z komputerem była dziwna i nie do pomyślenia! Jak mógłbyś nauczyć komputer grać w szachy? Zrobili to! (Ponadto pomysł komputera był dziwny ...) Chodzi mi o to, że może wydawać się dziwny, ponieważ nigdy o nim nie słyszeliśmy. To nie jest coś, co możemy sobie łatwo wyobrazić. Ale technologia rozwija się w tempie wykładniczym. Nie zdziwiłbym się, gdyby w niedalekiej przyszłości (ponad 10 lat) to zostało rozwiązane, w takiej czy innej formie.
źródło
Po powrocie do college'u na początku lat 80. czytałem w grze z tekstem, że jeśli komputer może zaplanować, ocenić i wykonać ruch, dowolny ruch, od początku gry do wszystkich możliwych wniosków co 1/3 nanosekundy, czyli około 3 miliardów ruchów na sekundę, aby to zrobić dla każdego możliwego wyniku, którego ukończenie zajęłoby 10 do 120 wieku. A kto ma tak długo czekać?
Kolejna oszałamiająca statystyka? Słyszałeś o googolu? Nie Google, ale numer? Jest to 10 do 100 potęgi. 10, a następnie 100 zer. Teraz wyobraź sobie googolplex. To 10 dla siły Googola.
Czytałem, że w znanym wszechświecie nie ma wystarczająco dużo niczego , nawet atomów, aby wymagać użycia googlepleksu. W rzeczywistości nawet googol jest zbyt duży, aby cokolwiek opisać. Powinieneś sprawdzić niektóre z zadziwiających ciekawostek na temat tych liczb.
źródło
Jeśli użyjesz „przycinania”, możesz usunąć złe opcje (te, które z pewnością doprowadzą cię do straty) i dalej zapętlać podczas przycinania. W ten sposób możesz mieć wystarczająco dużo pamięci, aby przechowywać „dobre” opcje.
źródło
Chociaż realizacja szachów w bazie danych w tym wszechświecie może nie być możliwa, można powiedzieć, że abstrakcyjna struktura gry istnieje jako skończony obiekt matematyczny. Można to uzasadnić i stwierdzić, że ma on określony wynik, chociaż możemy nie wiedzieć, co to jest. A jeśli spojrzysz na to jak na matrycę, możesz zadać pytania, takie jak maksymalna przybliżona wartość własna szachów. Rzeczywiście Platon uważał, że liczby istnieją naprawdę, więc sądzę, że powiedziałby, że gra w szachy istnieje w ten sam wzniosły i niepomocny sposób.
Ale w praktyce wyobrażam sobie, że zaawansowany komputer kwantowy może rzeczywiście być w stanie to przedstawić i rozwiązać szachy. Jury wciąż nie ocenia możliwości tej technologii, ale w zasadzie nie widzę, aby było to niemożliwe
źródło
Tak, myślę, że byłoby to możliwe. Ale tylko wtedy, gdy baza danych była bardziej jak sieć neuronowa, wykonując ruchy, które spowodowały jej utratę i usuwając je. Obliczenia te opierają się na potęgowaniu (proszę się ze mną) wszystkich możliwych działań w grze w szachy w punkcie 1, przesunięcia 100 lub czegoś innego. Tymczasem, jeśli pozbędziemy się powtórzeń, ((Ke3 Ke4 Ke3 Ke3) zapętlenie)) 10 ^ 120 może prawdopodobnie stać się czymś w rodzaju 10 ^ 70. To wciąż jest absurdalnie ogromne, ale gdybyśmy w jakiś sposób mogli go zakodować na płaszczyźnie 4D (co moim zdaniem jest możliwe), byłoby to dziecinnie proste.
źródło