Czy jest jeden najlepszy ruch na każdej pozycji?

13

Gdyby można było przeanalizować każdy możliwy wynik pozycji, czy kiedykolwiek byłby jeden ruch, który można by uznać za „najlepszy”?

Wiem, że w ten sposób komputery oceniają pozycje, ale mogą obliczyć drzewo decyzyjne tylko do określonej liczby ruchów. Gdyby możliwe było przeanalizowanie każdego możliwego wyniku w rozsądnym czasie (być może z wykorzystaniem obliczeń kwantowych ), czy można dokonać ostatecznego ruchu szachowego?

Myślę, że mówię, że jest to cel ruchu szachowego, ponieważ tylko jeden ruch jest naprawdę najlepszy, czy też powinien być subiektywny , ponieważ zawiera pewne założenia dotyczące przeciwnika? Na przykład można wykonać ruch, w którym 90% graczy nie jest „wystarczająco dobrych”, aby przeciwdziałać, a zatem ruch ten był dobrym ruchem (co mam na myśli przez subiektywne). Może jednak istnieć inny ruch, bardziej strategiczny, który zwiększa szanse na zwycięstwo w stosunku do 100% graczy, ale nie byłby znany nikomu, gdyby nie było możliwości przeprowadzenia wyczerpującej analizy każdego pojedynczego wyniku (celu).

SilverlightFox
źródło
3
Gdyby można było całkowicie przeanalizować drzewo gry, rzeczywiście istniałby obiektywnie najlepszy ruch (lub liczba jednakowo najlepszych ruchów) na każdej pozycji. Na przykład w przypadku kontrolerów gry, których drzewo gry zostało całkowicie przeanalizowane, na każdym stanowisku jest obiektywnie najlepszy ruch. Ponieważ jednak nie można tego racjonalnie zrobić w szachach, zazwyczaj nie można obiektywnie określić ruchu najlepiej (chyba że na przykład możesz pokazać, że wymusza on wiązanie).
Lily Chung
to interesujące ... więc prawdopodobnie moje ukochane pytanie pierwsze z innego punktu widzenia .. analiza z wykorzystaniem obliczeń kwantowych baza danych VERSUS wszystkich ruchów .. hahaha ..
Ahmad Azwar Anas
@ikdc To lepsza odpowiedź niż zamieszczone odpowiedzi. Czy zastanowiłbyś się nad jego konwersją?
user45266,

Odpowiedzi:

19

Nie, są pozycje, w których wiele ruchów ma ten sam efekt lub jest takich samych, ale możesz grać w innej kolejności.

pancerny
źródło
15

Istnieje wiele sytuacji, w których występuje więcej niż jeden ruch, który prowadzi do przymusowego partnera. W takich sytuacjach każdy z tych ruchów jest obiektywnie najlepszy i nie ma jednego najlepszego ruchu.

Noah Snyder
źródło
13

Gdyby można było przeanalizować każdy możliwy wynik pozycji, czy kiedykolwiek byłby jeden ruch, który można by uznać za „najlepszy”?

Nie. Wystarczy podać przykład:

NN - NN

Istnieje pięć ruchów, które są równie „dobre”.

Wiem, że w ten sposób komputery oceniają pozycje, ale mogą obliczyć drzewo decyzyjne tylko do określonej liczby ruchów.

Nie do „ustalonej” liczby, ale tak, czas obliczeń rośnie wykładniczo (nawet przy algorytmach minimax), więc istnieje praktyczny limit głębokości wyszukiwania.

Gdyby możliwe było przeanalizowanie do nieskończoności w rozsądnym czasie (być może przy użyciu obliczeń kwantowych), czy można wykonać ostateczny ruch szachowy?

Komputery kwantowe nie mogą „analizować w nieskończoność w rozsądnym czasie”, ale nie jest to konieczne. (Nawiasem mówiąc, komputery kwantowe nie zmieniają niczego w odniesieniu do rozpuszczalności problemu - mogą być w stanie przeprowadzić wyszukiwanie szybciej (nawet zmniejszając klasę złożoności problemu).)

Jeśli masz wystarczająco dużo miejsca na dane i czas obliczeń lub szybkość obliczeń, zawsze możesz rozwiązać szachy (aby zawsze znać ruchy, które wygrywają grę przy jak najmniejszej liczbie ruchów). Ale to daleko, ponieważ szacuje się, że nawet 7-osobowe tabele gier końcowych zajmują około 100 terabajtów miejsca na dysku twardym (skompresowane).

wady chaosu
źródło
6

Domyślam się, że każda pozycja ma jeden obiektywnie najlepszy ruch lub dwa ruchy, które są równie silne. Trzy równie silne ruchy są już mniej prawdopodobne, chyba że najlepszym ruchem jest na przykład czek z odkrytym biskupem i nie ma znaczenia, który kwadrat wybierze, aby otworzyć czek.

Najlepszym ruchem w tej pozycji jest ruch zgodny z prawidłową sekwencją ruchów, aby osiągnąć kolejny prawidłowy cel. Na przykład chcesz zaatakować przeciwnika roszującego Króla. Najpierw powinieneś uruchomić burzę pionków, aby otworzyć jeden lub dwa pliki przeciwko wrogiemu królowi. Następnie powinieneś umieścić jeden lub więcej ciężkich elementów na tym otwartym pliku. Po trzecie, powinieneś rozbić pionki i elementy chroniące wrogiego króla i dostarczyć mat. Najlepszym ruchem w każdym punkcie tej ścieżki jest ruch, który osiąga cel tak skutecznie, jak to możliwe. Powiedziałbym, że odpowiedź brzmi „tak”, ponieważ domyślam się, że w większości przypadków pojedynczy ruch jest nieco lepszy niż drugi najlepszy ruch!

Tak, możesz dostosować swoje ruchy do przeciwnika. Być może nawet lepiej, aby dostosować swoje ruchy do własnego stylu gry. Na przykład, jeśli wolisz grać w długie gry pośrednie, będziesz próbował utrzymać królowe na planszy. Dlatego możesz odrzucić wymianę królowej, nawet jeśli była to obiektywnie najsilniejsza reakcja. Kiedy różnica między dwoma najlepszymi ruchami jest niewielka, wybór może zależeć od twojego stylu gry. Właściwa ocena tej różnicy jest prawdopodobnie jedną z najtrudniejszych decyzji przy każdym ruchu. Ponadto znalezienie najlepszego ruchu i umieszczenie go na planszy jest już trudniejsze niż się wydaje!

Rauan Sagit
źródło
5

Nie, nie można powiedzieć, że na każdej pozycji może być jeden najlepszy ruch . Na większości pozycji jest wiele równie dobrych ruchów z różnymi efektami. Szachy są grą skończoną, w porządku, ale gałęzie są tak liczne, że nawet komputery (wciąż) potrzebują znacznej ilości czasu, aby obliczyć pełną gałąź, zaczynając od jednego ruchu. Właśnie dlatego istnieje strategiczna ocena stanowiska. Pozwala to na grę ruchów bez potrzeby obliczania pełnych gałęzi dla każdego z nich.

ThunderGr
źródło
Teoretycznie problem związany z ilością czasu obliczeniowego jest czymś, co można pokonać w obliczeniach kwantowych.
SilverlightFox
@SilverlightFox W szczególności w szachach problem powinien zostać rozwiązany przed obliczeniami kwantowymi. Szachy są na tyle skończone, że komputery z obecnej epoki powinny je przetwarzać bez większych problemów. Jednak jest mało prawdopodobne, że wysokiej klasy komputery zostaną przeznaczone w jakiś sposób na szachy w najbliższym czasie :)
ThunderGr
2

Jak powiedział Rauan, jeśli byłoby możliwe przeanalizowanie każdego możliwego ruchu, z pewnością będzie co najmniej jeden ruch, który prowadzi do matowania (lub remisowania) w najkrótszej ilości ruchów, ale nie będzie TYLKO jednego najlepszego ruchu dla każdego możliwa pozycja. Na szczęście nie znalazłem sposobu, aby dokładnie przeanalizować każdą pozycję, co wciąż sprawia, że ​​gra jest przyjemna.

Tgarner
źródło
1

To naprawdę interesujące pytanie. Ponieważ gdyby możliwe było uzyskanie obiektywnego najlepszego ruchu dla każdej pozycji, szachy przestałyby być rozgrywane. Z tego powodu powiem, że zdecydowanie istnieją pewne pozycje, w których istnieją obiektywne najlepsze ruchy, ale także inne, w których ich nie ma. Teraz na mój „dowód”

Lets assume that an infinity tree were possible by a chess engine.
On the very first move by white, the tree would have to be fully calculated.
Hence, after the first move, the chess engine wouldn't do anything except
refer to the next step in the tree at that point. 
In fact, once this tree is created ONCE, it no longer ever needs to be created.
All chess programs would just be pre-loaded with this tree.

Teraz, kiedy to drzewo zostanie stworzone, wszyscy mistrzowie szachowi będą po prostu studiować drzewo. Nie analizują już szachów, lecz zapamiętują komputerowe obliczenia szachowe. Ludzie przestaliby grać w szachy, ponieważ byłoby to przewidywalne.

Analizując „pierwszy ruch” jestem bardzo pewny, że nie ma obiektywnego najlepszego ruchu dla każdej pozycji. Nawet najlepsi mistrzowie szachowi lubią zaczynać od różnych pierwszych ruchów opartych na przeciwniku.

Humdinger
źródło
6
Myślę, że mylicie niemożliwe z trudnym. Drzewo nie istnieje - ale nie dlatego, że nie może istnieć - ale ponieważ nie mamy jeszcze czasu i mocy obliczeniowej potrzebnej do jego utworzenia. I takie drzewo, po obliczeniu, będzie tak ogromne, że wątpię, by ktokolwiek mógł je zapamiętać poza trywialną głębią.
firtydank
2
Nie sądzę, że istnienie drzewa nieskończoności spowodowałoby, że ludzie przestaliby grać w szachy. Ten argument przypomina mi artykuł, który czytałem jakiś czas temu, który twierdził, że ludzie przestaną grać w szachy, ponieważ silniki stały się nie do pobicia. Tylko dlatego, że problem został rozwiązany przez komputery, nie czyni go interesującym dla ludzi. Pomyśl Kostkę Rubika.
Ralph
Kostka rubika jest dobrym przykładem. Teraz, gdy ludzie mają „algorytm” do naśladowania, bardziej zależy im na czasie, a mniej na jego rozwiązywaniu. Dzięki za tę myśl.
Humdinger
1

Ruchy szachowe można podzielić na pięć kategorii:

  1. Te, które zagwarantują zwycięstwo bez względu na to, co zrobi przeciwnik, o ile gracz będzie kontynuował ruchy kategorii 1 (przeciwnik nie będzie miał ruchów kategorii 3, chyba że pierwszy gracz wykona ruch kategorii 4 lub kategorii 5).
  2. Te, które powstają w sytuacji, gdy żadne ruchy pierwszej kategorii nie były możliwe, i doprowadziłyby do remisu, jeśli obaj gracze zagrają wyłącznie ruchami z kategorii 2 (obaj gracze będą mieli ruchy kategorii 2, chyba że ktoś wykona ruch w kategorii 5, po czym przeciwnik tego gracza będzie miał dostęp do ruchu kategorii 1).
  3. Te, które powstają w sytuacji, gdy żadne ruchy jednej z dwóch pierwszych kategorii nie są możliwe.
  4. Te, które są wykonywane, gdy istniał ruch kategorii 1, i zakończą się remisem, jeśli obaj gracze zagrają wyłącznie z kategorii 2 (ruch kategorii 4 da przeciwnikowi ruch kategorii 2, a kategorie 1 i 3 nie będą już być możliwe, chyba że ktoś wykona ruch w kategorii 6).
  5. Te, które powstają, gdy istnieją ruchy kategorii 1 lub kategorii 2, ale powodują stratę, dając przeciwnikowi ruch kategorii 1.

Każdy gracz będący w ruchu zawsze będzie miał jeden lub więcej ruchów w dokładnie jednej z trzech pierwszych dostępnych kategorii; wszystkie duże ruchy są w zasadzie jednakowo dobre (zauważ, że jeśli gracz ma ruch kategorii 1, żaden ruch jego przeciwnika nie będzie lepszy ani gorszy niż jakikolwiek inny). Wszystkie ruchy w kategorii 4 są równie złe, podobnie jak wszystkie ruchy w kategorii 5. Gdy ruchy istnieją w kategoriach 4 i 5, ruchy w kategorii 5 są gorsze.

Często dogodne jest uszeregowanie ruchów kategorii 1 według liczby dodatkowych ruchów, które będą wymagane do zabezpieczenia szacha (im mniej, tym lepiej), a ruchów kategorii 3 według liczby dodatkowych ruchów, których przeciwnik będzie potrzebował do zabezpieczenia szacha ( im więcej tym lepiej). Z jakościowego punktu widzenia nie ma znaczenia, czy partner wymaga 2 ruchów, czy 174, pod warunkiem, że nie ucieknie się do żadnych reguł, które przedwcześnie wywołałyby remis (reguła 50 ruchów, reguła 175 ruchów itp.), ale linie, które według tych miar są lepsze niż zwykle, są bardziej interesujące niż te, które byłyby gorsze.

Gra z przeciwnikiem, o którym wiadomo, że jest niedoskonały, wprowadza jeszcze jeden czynnik, którym jest fakt, że doskonały przeciwnik nigdy nie wykonałby ruchu kategorii 4 lub kategorii 5, ruchu kategorii 2 lub kategorii 3, który skłania przeciwnika do utworzenia kategorii Ruch w kategorii -4 lub kategorii 5 prawdopodobnie osiągnie lepszy wynik niż ten, który tego nie robi, i może być lepszy ruch z perspektywy gry w „szachy przeciwko Alexowi Smithowi”, ale ta „gra” nie jest tak bliska dobrze zdefiniowane jako szachy.

supercat
źródło
1

Jasne, ale potrzebujesz ostrzeżenia „w ramach rozważanych danych”.

Liczy się osobowość, poziom umiejętności, nastrój, czas, czas turnieju.

Zwykły silnik nie bierze pod uwagę żadnej z tych rzeczy.

Wiele przykładów najlepszych graczy wybierających bardziej skomplikowane ruchy niż „najlepsze” ruchy.

Ocena silnika zakłada, że ​​wygrana jest dwa razy lepsza niż remis. Ale co, jeśli potrzebujesz tylko remisu, aby zdobyć pierwsze miejsce? Nagle wygrana i remis są identyczne - ambitne ruchy są warte mniej, zmuszając handel królową wart więcej.

I odwrotnie, co jeśli potrzebujesz wygranej? Jeśli losowanie i przegrywanie dają ten sam rezultat, dzikie spekulacyjne ofiary wyglądają lepiej.

Ocena silnika zakłada również, że kolejne ruchy są „najlepszymi” ruchami. Dokładna wycena wymagałaby obliczenia prawdopodobieństwa, że ​​każdy gracz znajdzie wspomniany najlepszy ruch. Wymiana na „zagubioną” końcówkę P w porównaniu z końcem 2N może wynosić -99 w porównaniu do GM, ale remis w porównaniu do 1500.

Roger Krueger
źródło
0

Jeśli założymy, że szachy są losowane (i wszystkie dowody na to wskazują), odpowiedź brzmi „nie”. „Najlepszy” ruch byłby tym, który daje najlepszą praktyczną szansę na wygraną i nie ma sposobu, aby obiektywnie określić najlepszy praktyczny ruch.

To byłoby jak pytanie, czy kamień jest obiektywnie lepszym ruchem niż papier czy nożyczki.

Jeśli szachy zostaną rozwiązane, komputery będą mogły stwierdzić, że jeden ruch jest lepszy od drugiego (ponieważ prowadzi to do zmniejszenia prawdopodobieństwa przegranej), ale jak można powiedzieć, że ruch jest „najlepszy”, gdy inne ruchy prowadzą do tego samego wyniku?

Savage47
źródło
0

Najlepszy ruch czasami wymaga dziesięcioleci, a nawet stuleci. Na przykład spójrz na chwilę ze słynnej gry „The Battle of Hastings” .

Wilhelm Steinitz-Curt von Bardeleben, Hastings London, 8/17/1895
1. e4 e5 2. Nf3 Nc6 3. Bc4 Bc5 4. c3 Nf6 5. d4 exd4 6. cxd4 Bb4 + 7. Nc3 d5 8. exd5 Nxd5 9. OO Be6 10. Bg5 Be7 11. Bxd5 Bxd5 12. Nxd5 Qxd5 13. Bxe7 Nxe7 14. Re1 f6 15. Qe2 Qd7 16. Rac1 c6 17. d5 cxd5 18. Nd4 Kf7 19. Ne6 Rhc8 20. Qg4 g6 21. Ng5 + Ke8 22. Rxe7 + Kf8 23. Rf7 + Kg8 24. Rg7 + Kh8 25. Rxh7 +

Jest to ruch biały, a wówczas najlepszym ruchem uważanym za Qe2. Po 78 latach odkryto, że najlepszym ruchem na tej pozycji był w rzeczywistości Qa4!

Dlatego nie można znaleźć zawsze najlepszego ruchu na planszy. Może być wiele dobrych ruchów, które mogą wygrać dla Ciebie.

Seth Projnabrata
źródło