Stai facendo una domanda piuttosto complessa, ma è bene tornare alle origini. Ci sono un paio di concetti da considerare:
Valutazione
Se a un giocatore (reale) viene mostrata una posizione e viene chiesto "chi sta vincendo questo gioco?", Come fanno a decidere? Molto probabilmente, controlleranno alcune cose di base, come: differenze materiali, il grado in cui i pezzi sono stati sviluppati o posizionati "bene", pedine raddoppiate / isolate / connesse / passate, file (controllati) aperti, fino a che punto la tavola sono le pedine.
Ora, se fosse necessario, potresti trovare un modo sistematico per calcolare un punteggio di posizione basato su quanto sopra. Potresti decidere, ad esempio, che una pedina vale 1 punto e che una pedina passata vale 0,3 punti in più. Le pedine isolate o raddoppiate potrebbero valere un po 'meno, ecc. Se sommi tutto, otterrai un valore stimato per la posizione immediata a portata di mano.
Questo è noto come valutazione e fondamentalmente tutti i programmi di scacchi hanno un modo per valutare le posizioni (ignorando i nuovi motori di scacchi AI che sono in genere molto deboli).
Ma che dire delle mosse posizionali sottili e profonde?
Bene, abbiamo appena graffiato la superficie della valutazione della posizione. L'attuazione effettiva di una funzione di valutazione potrebbe essere semplicistica, per consentire di valutare più posizioni al secondo (anche se in modo approssimativo), o più complesse, portando a meno posizioni valutate, ma con un livello di confidenza più elevato. Non è insolito che la funzione di valutazione tenga conto di centinaia o addirittura di migliaia di informazioni separate.
Ricerca
Ho specificamente escluso qualcosa di cui sopra, a cui la maggior parte dei giocatori reali penserà immediatamente: c'è un modo per vincere immediatamente la partita per entrambe le parti? Sono visibili compagni o pezzi "pendenti"? Anche se è facile banalizzare questo, è tutt'altro che banale.
Cosa significa per un giocatore avere piena fiducia in una combinazione? Alla fine, si riduce a aver calcolato tutte le opzioni. I giocatori reali di solito non lo faranno (tranne che per compagni banali o molto forzati), il più delle volte considereremo solo una manciata di opzioni e escluderemo altri che sembrano "non costruttivi" o che ovviamente portano a una perdita . Spesso commettiamo errori durante questo calcolo, ad esempio potremmo renderci conto che un cambiamento negli ordini di spostamento fa evaporare le minacce, ecc. Il punto è che per essere completamente sicuri di una combinazione, devi effettivamente calcolare fino alla sua conclusione, supponendo che ogni il giocatore metterà a sua disposizione solo la mossa migliore possibile (definita "min / max").
Ora, dato che gli scacchi hanno uno spazio di ricerca molto più ampio (questo è ciò a cui si fa riferimento "tutte le mosse possibili in futuro") di quello che è possibile calcolare per un computer, è necessario scendere a compromessi. Proprio come gli umani, i computer possono decidere di ignorare intere linee di pensiero basate su determinati criteri. Questo è noto come euristica . Vale la pena notare che mentre puoi essere davvero sicuro di una combinazione solo se la forza brutalmente, una complessa funzione di valutazione può spesso rilevare la presenza di minacce (ad esempio, potremmo contare forchette, opportunità di infilzamento, ecc., Per guidare una ricerca in quella direzione ).
Alla fine, sebbene i computer siano estremamente veloci, è l'euristica che consente loro di calcolare così in profondità. Detto questo, potresti essere sorpreso dal modo in cui i motori moderni profondi calcolano completamente, in genere supera le 3 mosse, anche nei giochi veloci.
Conclusione / combinando tutto
Quindi, per riassumere: le funzioni di valutazione hanno molta intelligenza incorporata in loro (cioè prendono in considerazione più cose rispetto al tuo giocatore umano medio), l'euristica consente al computer di abbattere le linee di pensiero che decide che probabilmente non finirà bene, e i computer sono estremamente, estremamente veloci. Aggiungili e sono piuttosto difficili da battere.