/ / Los implementos de Tic Tac Toe con el método min - max con poda alfa-beta ¿hay alguna solución mejor? - algoritmo, inteligencia artificial, tic-tac-toe, minimax, alfa-beta-poda

Tic Tac Toe implementa con método min - max con poda alfa-beta ¿hay alguna solución mejor? - algoritmo, inteligencia artificial, tic-tac-toe, minimax, alfa-beta-poda

Existe un código que implementa una función que asigna un valor a cada estado (ambas partes del método min-max)

Procedure TGraph.Rate(const AState: TState);
Var
i: integer;
Begin //hodnotí stav
if AState.Children.Count > 0 then begin //není list
if AState.Owner = CComputerPlayer then begin
// max level
AState.Rating := AState.Children.Worst.Rating;
end else begin
// min level
AState.Rating := AState.Children.Best.Rating;
end;
end else begin
AState.Rating := 0;
for i := 0 to AState.Fields.Count - 1 do
begin
AState.Rating := AState.Rating +
AState.Fields.FieldsI[i].Rating[AState.Owner];
end;
if (AState.Owner = CHumanPlayer) then begin
AState.Rating := -AState.Rating;
end;
end;
End;

Respuestas

1 para la respuesta № 1

Tic Tac Toe tiene un espacio finito y bastante pequeño dePosibles posiciones. No vale la pena aplicar alfa-beta poda para ello. Un min-max muy simple funcionará muy rápido. También tenga en cuenta que si necesita ejecutar el algoritmo varias veces, puede ejecutar min-max solo una vez y almacenar los resultados calculados.