Negamax
# Negamax

Il negamax è una piccola variante dell'algoritmo minimax che si basa sulle proprietà dei giochi a somma zero con due giocatori.

Per definizione, il valore della posizione del giocatore A in un certo gioco è la negazione del valore della posizione del giocatore B. Così, il giocatore che deve muovere cercherà una mossa che massimizzi la negazione del valore della posizione risultante dalla mossa: per definizione, questa posizione del successore deve essere stata valutata dall'avversario. La veridicità di questa affermazione si mantiene indipendentemente dal fatto che sia A o B a dover muovere. Ciò significa che un singolo calcolo può essere usato per dare valore a tutte le posizioni. Questa è una semplificazione rispetto al minimax, che richiede che A scelga la mossa con il massimo valore di successione mentre B con il minimo.

Il negamax non va confuso con il negascout, una moderna variante dell'agoritmo potatura alfa-beta scoperto negli anni '80, divenendo esso stesso una versione più avanzata del minimax o del negamax.

Molti motori per la ricerca di soluzioni con avversari sono programmati utilizzando alcune forme dell'algoritmo negamax.

## Pseudocodice

Qui di seguito lo pseudocodice per una ricerca negamax a profondità limitata con l'uso della potatura alfa-beta.

Al primo richiamo, gli argomenti α e β dovrebbero essere posti rispettivamente ai valori più alti e più bassi possibili per ogni nodo.

