Uzyskanie prawidłowego ruchu z syzygy tablebases (Python)
Stworzyłem silnik szachowy w Pythonie i teraz chcę zacząć używać tabel końcowych w syzygy. Pobrałem wszystkie odpowiednie pliki i jestem teraz gotowy do rozpoczęcia.
Odkryłem, jak uzyskać dostęp do plików w Pythonie przez np. Moduł Python Chess ( link ). Wyjaśnia, w jaki sposób mogę uzyskać informacje WDL i DTZ z pozycji FEN, co czasami może być przydatne. ALE to, czego naprawdę chcę, to wiedzieć, co zrobić, aby wygrać na tej pozycji FEN, i nie byłem w stanie dowiedzieć się, jak uzyskać te informacje z plików. Informacje w Internecie są bardzo ograniczone i mam nadzieję, że ktoś może mi pomóc, jak to zrobić?
Odpowiedzi
Nie mam całkowitej pewności, ponieważ te konkretne podstawy stołu są mi nieznane. Jednak we wszystkich innych bazach tabel, z których korzystałem, od Thompsona i nowszych, zasadniczo trzeba było:
- generować wszystkie legalne ruchy z pozycji,
- dla każdego ruchu wykonaj ruch i sprawdź wynik dla wynikowej pozycji, a następnie
- wybierz „właściwy ruch” na podstawie uzyskanych wyników w porównaniu z wynikiem z pozycji wyjściowej.