Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- double Poda_AlfaBeta(Environment estado, int jugador, int inicio, int profundidad, Environment::ActionType & accion, double alpha, double beta){
- if (inicio == profundidad || estado.JuegoTerminado()){
- return ValoracionTest(estado, jugador);
- }
- else{
- Environment::ActionType aux;
- double eval;
- int j = -1;
- Environment hijo;
- bool *VectAct = new bool[8];
- int numAcciones = estado.possible_actions(VectAct);
- if (inicio % 2 == 0){
- double maxEval = menosinf;
- for (int i = 0; i < numAcciones; i++){
- hijo = estado.GenerateNextMove(j);
- eval = Poda_AlfaBeta(hijo, jugador, inicio + 1, profundidad, aux, alpha, beta);
- if (eval > maxEval){
- maxEval = eval;
- accion = (Environment::ActionType) j;
- }
- if (eval > alpha){
- alpha = eval;
- }
- if (beta <= alpha){
- break;
- }
- }
- return maxEval;
- }
- else{
- double minEval = masinf;
- for (int i = 0; i < numAcciones; i++){
- hijo = estado.GenerateNextMove(j);
- eval = Poda_AlfaBeta(hijo, jugador, inicio + 1, profundidad, aux, alpha, beta);
- if (eval < minEval){
- minEval = eval;
- accion = (Environment::ActionType) j;
- }
- if (eval < beta){
- beta = eval;
- }
- if (beta <= alpha){
- break;
- }
- }
- return minEval;
- }
- }
- }
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement