Uitleg
Een evaluatiefunctie geeft een numerieke schatting van hoe gunstig een stelling voor één partij is. Een gebruikt haar wanneer het eindige zoekproces niet het werkelijke einde van elke mogelijke partij kan bereiken.
De evaluatie heet statisch omdat zij de stelling op dat punt beoordeelt zonder daar een nieuw volledig zoekproces te beginnen. Statisch betekent niet tactisch rustig.
Informatie die zij kan meewegen
- Materiaal, dus welke stukken elke partij nog heeft.
- Koningsveiligheid, stukplaatsing en mobiliteit, dus hoe vrij de stukken nuttige zetten kunnen doen.
- Pionnenstructuur, dus hoe de pionnen zijn geplaatst en elkaar ondersteunen of verzwakken, samen met andere positionele patronen.
- In sommige engines een neuraal netwerk, een wiskundig model dat met veel voorbeelden is getraind om deze signalen te combineren.
Het teken en de schaal vereisen context. Een positief getal kan wit of de partij aan zet bevoordelen, afhankelijk van het programma. Een eenheid die op de waarde van één pion lijkt, vertegenwoordigt ook geen universele winstkans.
De functie kiest de uiteindelijke zet niet zelfstandig. Het zoekproces vergelijkt veel toekomstige stellingen en voert hun waarden via methoden als terug naar de beginstelling. Een snelle evaluatie van het huidige bord kan daardoor verschillen van het resultaat nadat mogelijke zettenreeksen zijn onderzocht.
Gebruik en context
In een interface betekent 0.00 doorgaans dat de engine op haar eigen schaal evenwicht schat, niet dat bewezen is dat de stelling remise is.
Veelvoorkomende verwarringen
Statische evaluatie en volledige analyse
Een statische evaluatie beoordeelt één stelling zonder een nieuwe uitgebreide variant te onderzoeken; analyse combineert evaluatie met zoekwerk.
Score en objectieve waarheid
Buiten opgeloste eindspelen is het getal een schatting die kan veranderen wanneer de engine dieper zoekt.
Bronnen
- 1.Evaluation, Chess Programming Wiki
- 2.evaluate.cpp, Stockfish
- 3.UCI Protocol and Stockfish Commands, Stockfish
