Welche Algorithmen und Heuristiken sind im Computerschach beliebt?

17

Computerschach ist in den letzten zwanzig Jahren explodiert. Eine Computer-Weltmeisterschaft wurde gegründet, und viele Schachcomputer-Designer profitierten von ihren Bemühungen. Einige der Programme verbergen ihren Quellcode, aber sehr viele sind Open Source-Programme, insbesondere Fruit, das als Basis für eine Familie von Schachengines diente.

Was sind einige Beispiele für Heuristiken oder Algorithmen, die von Schachcomputern verwendet werden und die am erfolgreichsten waren oder am beliebtesten sind?

Andrew Latham
quelle
2
Dies ist nicht der richtige Ort für diese Frage und wurde bereits in der Definition des Projekts gestellt: discussion.area51.stackexchange.com/questions/5056/…
Charles Menguy

Antworten:

7

Die hauptsächlich verwendeten Algorithmen basieren auf der Suche im Zustandsraum. Das Problem ist, dass die möglichen Positionen, die ein Teil im nächsten Zug einnehmen kann, sehr groß sind. Aber es ist endlich. Es ist im Grunde ein Suchproblem. Es gibt eine gültige Position, die ein Teil einnehmen kann. Das heißt, es gibt einen bekannten Startzustand und einen bekannten Endzustand. Es gibt keine Wahrscheinlichkeit wie das Problem, eine Münze zu werfen.
Ein typischer Algorithmus ist das Verwenden von Brute Force und das Berechnen von Zügen für eine feste Anzahl von Zügen. MiniMax kann in solchen Fällen verwendet werden. Alpha-Beta-Bereinigung ist auch ein bekannter Algorithmus. Meist werden die Suchräume in einer baumbasierten Datenstruktur dargestellt.
Computerprogramme verwenden auch stark Datenbanken mit Zügen, Eröffnungen, Endspielpositionen usw.


quelle
1
Die Frage fragt nach Heuristiken . Der springende Punkt der Heuristik ist es , die Kosten der Brute-Force-Berechnung aller legalen Schritte zu vermeiden . Eine Antwort mit Brute-Force-Ansatz ist also leider nicht zum Thema.
Jaxter