- Aprender
- Informática
- Ciencias de la computación
- Inteligencia artificial
- Búsqueda entre adversarios
Juegos y búsqueda entre adversarios
IntermedioUnidad 4 de 10 del curso Curso de Inteligencia artificial
Lo que aprenderás
- Formula con precisión un juego por turnos, clasifícalo según las propiedades que determinan qué método de búsqueda es adecuado y representa sus posibles partidas como un árbol de juego.
- Formula un juego y clasifica su tipoAnota los componentes que definen un juego y distingue entre juegos deterministas, estocásticos, de información perfecta, de información imperfecta, de suma cero y de suma general.
- Construye e interpreta un árbol de juegoDibuja el árbol de jugadas de un juego, usa correctamente las medias jugadas, la profundidad y el factor de ramificación, y estima el tamaño de un árbol de juego completo.
- Formula un juego y clasifica su tipo
- Calcula valores minimax para encontrar la mejor jugada contra un oponente que juega perfectamente, implementa el algoritmo y extiende la idea a juegos con varios jugadores y utilidades propias.
- Calcula los valores minimax y la decisión minimaxPropaga valores desde las hojas de un árbol de juego para encontrar el valor minimax de cada posición y la jugada que debe realizar MAX.
- Implementa la búsqueda minimaxConvierte la definición de minimax en un algoritmo recursivo de búsqueda en profundidad, indica su costo temporal y espacial y evita los errores habituales de implementación.
- Aplica la búsqueda a juegos con varios jugadores y utilidades propiasUsa vectores de utilidades para elegir jugadas cuando participan más de dos jugadores o cuando sus intereses no están estrictamente contrapuestos.
- Calcula los valores minimax y la decisión minimax
- Omite las partes del árbol de juego que no pueden cambiar la decisión, sigue alfa-beta paso a paso y ordena las jugadas para que la poda ahorre la mayor cantidad de trabajo posible.
- Sigue paso a paso la poda alfa-betaLleva la cuenta de alfa y beta durante la búsqueda, reconoce cuándo se puede podar un subárbol y explica por qué el resultado coincide con minimax.
- Ordena las jugadas para que la poda sea eficazExplica cómo determina el orden de las jugadas cuánto ahorra alfa-beta y usa heurísticas de ordenación, profundización iterativa y tablas de transposiciones.
- Sigue paso a paso la poda alfa-beta
- Detén la búsqueda antes del final de la partida, estima el valor de las posiciones no terminadas con una función de evaluación y maneja los errores que introduce un límite de profundidad.
- Diseña una función de evaluaciónConstruye una función de evaluación a partir de las características de una posición, calcúlala para posiciones concretas y comprueba que cumple los requisitos de una buena evaluación.
- Interrumpe la búsqueda de forma seguraSustituye la prueba de terminación por una prueba de corte, busca a mayor profundidad dentro de un límite de tiempo y reconoce y reduce el efecto horizonte y otros errores de un límite de profundidad.
- Diseña una función de evaluación
- Añade nodos de azar a los árboles de juego, calcula valores expectiminimax y expectimax, y diseña funciones de evaluación que conserven su significado cuando se promedian los resultados.
- Explora árboles con nodos de azarModela tiradas de dados y oponentes aleatorios con nodos de azar, calcula valores expectiminimax paso a paso y determina cuándo sigue siendo posible podar.
- Ajusta la escala de las evaluaciones y elige entre minimax y expectimaxExplica por qué los valores esperados necesitan evaluaciones con la escala correcta, comprueba qué transformaciones conservan las decisiones y elige un modelo del oponente adecuado para la situación.
- Explora árboles con nodos de azar
- Estima los valores de las jugadas a partir de partidas simuladas, equilibra la exploración de nuevas jugadas y la explotación de las buenas con UCB1, y evalúa cuándo la búsqueda en árbol de Monte Carlo o alfa-beta se adapta mejor a un juego.
- Ejecuta las cuatro fases de la búsqueda en árbol de Monte CarloExpande un árbol de búsqueda mediante selección, expansión, simulación y retropropagación de resultados, actualiza los números de visitas y victorias y elige la jugada final.
- Equilibra la exploración y la explotación con UCB1Aplica la fórmula UCB1 durante la selección, calcúlala para recuentos concretos y observa cómo cambia la elección la constante de exploración.
- Compara MCTS con la poda alfa-beta y elige un métodoSopesa los puntos fuertes y débiles de alfa-beta y la búsqueda en árbol de Monte Carlo, relaciónalos con programas de juegos emblemáticos y elige un método según las propiedades de un juego.
- Ejecuta las cuatro fases de la búsqueda en árbol de Monte Carlo
Guía de estudio de Búsqueda entre adversarios
1Convierte un juego en un problema de búsqueda
Un programa necesita una descripción precisa de un juego antes de poder elegir una jugada. La descripción debe indicar quién actúa, qué puede suceder después y cómo se puntúa una partida terminada. El árbol de juego presenta entonces las continuaciones posibles. Interpretar ese árbol exige llevar la cuenta de los turnos, la profundidad y las posiciones repetidas, y recordar que un oponente controla algunas de las ramas.
1.1 Estados, reglas y jugadores
Una búsqueda en juegos comienza con un estado: información suficiente para determinar qué puede suceder después. En el tres en raya, esto significa el tablero y el jugador al que le toca jugar. El tablero por sí solo está incompleto porque la siguiente marca cambia según el turno.
Define los seis componentes
Un modelo de juego proporciona:
- Un estado inicial, .
- Una función, , que indica el jugador que actúa en el estado .
- Las jugadas legales, .
- Un modelo de transición, , que da el estado después de la acción .
- Una prueba de terminación, , que detecta el final del juego.
- Una función de utilidad, , que da al jugador una recompensa numérica en un estado terminal.
Para el tres en raya, comienza con un tablero vacío de 3 por 3 y el turno de X. Una acción elige una casilla vacía. La transición coloca la marca del jugador actual y cambia el turno. La partida termina en cuanto alguien forma una fila, columna o diagonal de tres, o cuando el tablero se llena y hay empate. Desde el punto de vista de X, puntúa una victoria como +1, un empate como 0 y una derrota como −1. La prueba de terminación debe ejecutarse antes de colocar otra marca: la partida no continúa después de una victoria.
Clasifica el juego según ejes independientes
| Propiedad | Significado | Ejemplo |
|---|---|---|
| Determinista | Un estado y una jugada determinan el siguiente estado sin un suceso aleatorio. | Ajedrez |
| Estocástico | Los sucesos aleatorios contribuyen a determinar lo que ocurre. | Backgammon |
| Información perfecta | Todos los jugadores pueden observar el estado completo del juego. | Go |
| Información imperfecta | Parte del estado relevante está oculta. | Póquer |
| Dos jugadores o multijugador | El número de jugadores determina cuántos intereses deben modelarse. | Ajedrez o un juego de tres jugadores |
| Suma cero o suma general | Los intereses están estrictamente contrapuestos o los jugadores pueden ganar juntos. | Juego de victoria o derrota, o recompensas compartidas |
Estos ejes son independientes. Los dados hacen que el backgammon sea estocástico aunque su tablero esté a la vista. Las cartas ocultas afectan a la información, no a si una acción es aleatoria. En un juego de información oculta, un jugador razona sobre los estados posibles compatibles con sus observaciones, llamados en conjunto estado de creencia.
Mantén fijo el punto de vista de la recompensa
En un juego de dos jugadores y suma cero, la ganancia de un jugador es la pérdida del otro. Las puntuaciones de suma constante se comportan igual: 1 por victoria, 0 por derrota y ½ para cada uno por empate siempre suman 1. Basta un número para expresar la oposición. Llama MAX al jugador que quiere aumentarlo y MIN al que quiere reducirlo. Son roles; MAX no tiene por qué ser siempre las blancas o X.
En una búsqueda habitual se puede elegir cada acción de un camino. Un agente que juega debe responder a jugadas que no controla. Su solución es una estrategia, que especifica qué hacer en cada situación a la que pueda enfrentarse. Un plan que solo funciona si el oponente responde de forma favorable no basta.
Puntos clave
- Registra el jugador al que le toca jugar como parte del estado.
- Define las acciones legales, las transiciones, la terminación y las utilidades antes de buscar.
- El azar y la información oculta son propiedades independientes.
- MAX y MIN comparan una utilidad medida desde el punto de vista de MAX.
- Una estrategia debe manejar las posibles respuestas del oponente.
1.2 Interpreta el tamaño y la forma de un árbol de juego
Un árbol de juego comienza en el estado actual. Cada arista saliente representa una jugada legal y su hijo es el estado resultante. Etiqueta cada nodo no terminal con el jugador que actúa en él. En un juego alternado de dos jugadores, los niveles de MAX y MIN se alternan.
Cuenta los turnos individuales
Una media jugada es una jugada de un jugador. En ajedrez, una jugada completa suele incluir un turno de las blancas y uno de las negras, por lo que abarca dos medias jugadas. Una búsqueda de profundidad 4 desde el turno de las blancas llega a posiciones después de que hayan actuado las blancas, las negras, las blancas y las negras. Cuenta las aristas desde la raíz, cuya profundidad es cero.
Sean el factor de ramificación y la profundidad máxima. Un árbol uniforme tiene nodos a profundidad y hojas. Su número total de nodos es:
Para , predominan los niveles más profundos, lo que da lugar a un crecimiento exponencial. Con cuatro jugadas por posición, la profundidad 3 tiene 64 hojas y la profundidad 4 tiene 256. Una media jugada adicional multiplica por cuatro el número de hojas, no por uno.
Distingue las partidas de las posiciones
El tres en raya tiene como máximo órdenes para llenar el tablero. Muchos de esos órdenes continuarían después de una victoria anterior y no son partidas legales completas. Detenerse inmediatamente al producirse una victoria da 255 168 partidas completas: 131 184 victorias de X, 77 904 victorias de O y 46 080 empates. En el juego legal hay solo 5478 posiciones distintas del tablero, incluido el tablero vacío.
La diferencia se debe en parte a las transposiciones: distintos órdenes de jugadas que llegan al mismo estado. X puede jugar en una esquina, O en el centro y X en la esquina opuesta, o X puede jugar en esas dos esquinas en el orden inverso. Ambos caminos terminan en el mismo tablero y turno. Un árbol conserva ambos caminos; un grafo de juego puede almacenar su estado compartido una sola vez. Reutilizar el trabajo exige identificar estados completos, no solo tableros visualmente parecidos.
Comprende por qué la búsqueda completa deja de ser viable
El ajedrez suele modelarse con unas 35 jugadas legales por posición y una partida de 100 medias jugadas, o 50 jugadas de cada jugador. Esto da la escala aproximada:
Las ramas reales terminan a distintas profundidades y tienen diferentes números de jugadas, pero esta estimación ya explica por qué enumerar un árbol de juego completo de ajedrez es inviable. En un tablero vacío de go de 19 por 19, solo la primera piedra tiene 361 puntos posibles.
El árbol de búsqueda es lo que un algoritmo genera realmente. Minimax sin modificaciones genera el árbol de juego completo por debajo del estado cuando busca hasta el final de un juego finito. La poda, los límites de profundidad y la simulación selectiva generan menos. Por tanto, una hoja de corte puede ser una posición no terminada, aunque una hoja del árbol de juego completo sea terminal.
Imagina una estrategia dentro del árbol
Un subárbol de estrategia para MAX conserva una arista seleccionada en cada nodo MAX y todas las aristas legales en cada nodo MIN. MAX elige su propia acción, pero debe conservar una respuesta para cualquier jugada del oponente. Un solo camino de la raíz a una hoja describe solo una partida posible. No puede mostrar que el plan elegido resiste las demás respuestas.
Puntos clave
- Una media jugada es la jugada de un jugador; la profundidad de la raíz es cero.
- Un árbol uniforme tiene aproximadamente b elevado a m hojas.
- Las transposiciones repiten estados alcanzados mediante distintos órdenes de jugadas.
- Una estrategia conserva una respuesta para cada jugada posible del oponente.
2Elige jugadas contra un oponente
El final que parece mejor puede ser inalcanzable porque un oponente puede elegir otra respuesta. Minimax trabaja hacia atrás desde los resultados para encontrar lo que cada jugador puede garantizar. Su forma recursiva convierte ese razonamiento en un programa. Cuando los jugadores tienen intereses diferentes, el mismo proceso hacia atrás debe llevar una recompensa para cada jugador y usar la preferencia de quien actúa a continuación.
2.1 Propaga los valores minimax hacia atrás
Minimax elige el mejor resultado que MAX puede garantizar frente a un oponente óptimo. Toda utilidad de hoja se mide para MAX. Un número grande favorece a MAX incluso cuando el nodo evaluado pertenece a MIN.
Trabaja desde las hojas hacia la raíz
En un nodo terminal, devuelve su utilidad. En un nodo MAX, devuelve el mayor valor de sus hijos. En un nodo MIN, devuelve el menor. Continúa hasta que la raíz reciba un valor:
El valor de un hijo ya resume la continuación óptima desde ese hijo. Por eso un nodo padre compara los valores devueltos en lugar de volver a examinar cada hoja que hay debajo. La recursión funciona con cualquier número de niveles alternos.
Sigue una decisión de dos medias jugadas
MAX tiene tres jugadas, cada una de las cuales conduce a un nodo MIN:
| Jugada de MAX | Utilidades terminales disponibles para MIN | Valor propagado |
|---|---|---|
| A | 4, 9, 6 | 4 |
| B | 2, 15, 13 | 2 |
| C | 5, 8, 10 | 5 |
Primero toma el mínimo dentro de cada fila. MIN puede hacer que A valga 4, B valga 2 y C valga 5. Después MAX toma el máximo de esos tres resultados:
El valor minimax es 5. La decisión minimax es la jugada hacia C. Uno es un número que describe la posición; la otra es una acción que el programa puede realizar.
La hoja de mayor valor, 15, está bajo B, pero MAX no controla la respuesta que llega a ella. MIN elegiría 2. El promedio de las hojas de B da 10, que también parece atractivo, pero promediar modela una elección aleatoria con probabilidades adecuadas. Un oponente óptimo exige tomar un mínimo.
Interpreta la variante principal
La variante principal es la línea que se sigue cuando los jugadores eligen jugadas óptimas. Aquí MAX juega hacia C y MIN elige su hoja de valor 5. En un árbol más profundo, sigue el máximo o mínimo elegido en cada nivel. La utilidad terminal de esa línea coincide con el valor de la raíz. Si varias jugadas empatan, puede haber más de una línea óptima.
Comprende la garantía
En un juego finito determinista de dos jugadores, de suma cero y con información perfecta, seguir la estrategia minimax garantiza al menos el valor de la raíz. Un oponente óptimo limita a MAX a ese valor. Un error del oponente puede permitir un resultado mejor, por lo que 5 es un mínimo garantizado, no una predicción de que cada partida deba terminar exactamente en 5.
Un programa puede aprovechar la debilidad del oponente conservando ese mínimo. Si dos jugadas tienen valor minimax 5, puede preferir la que dé más oportunidades al oponente de equivocarse. Elegir una jugada de valor minimax 2 porque contiene un atractivo 15 supone abandonar la garantía de 5. La diferencia está en si la jugada conserva el mejor valor del peor caso.
Puntos clave
- Propaga un mínimo en los nodos MIN y un máximo en los nodos MAX.
- El valor minimax es un número; la decisión es una jugada.
- La hoja de mayor valor por sí sola no permite identificar la mejor jugada.
- Una variante principal sigue las elecciones óptimas en cada nivel.
- Minimax completo garantiza su valor frente a un oponente óptimo.
- Un oponente más débil puede permitir un resultado superior al garantizado.
2.2 Escribe un programa minimax recursivo
La definición de minimax ya es un programa recursivo. Una función de valor recibe un estado y devuelve un número. Una función de búsqueda compara las posibles primeras jugadas y devuelve la acción que se debe realizar.
Separa la elección de la jugada del cálculo del valor
El siguiente pseudocódigo supone que MAX actúa en la raíz y que los turnos se alternan:
MINIMAX-SEARCH(s):
if Is-Terminal(s): return no action
bestMove = no action
bestValue = -infinity
for a in Actions(s):
value = MIN-VALUE(Result(s, a))
if value > bestValue:
bestValue = value
bestMove = a
return bestMove
MAX-VALUE(s):
if Is-Terminal(s): return Utility(s, MAX)
v = -infinity
for a in Actions(s):
v = max(v, MIN-VALUE(Result(s, a)))
return v
MIN-VALUE(s):
if Is-Terminal(s): return Utility(s, MAX)
v = +infinity
for a in Actions(s):
v = min(v, MAX-VALUE(Result(s, a)))
return v
Inicializa MAX con infinito negativo para que cualquier hijo lo mejore; inicializa MIN con infinito positivo. Comprueba la terminación antes de generar sucesores. Un tablero lleno de tres en raya sin una línea ganadora es un empate, no una posición no terminal cuya mejor jugada deba elegirse de una lista vacía.
Sigue lo que descubre la recursión
Considera este tablero de tres en raya, con el turno de X y un punto para cada casilla vacía:
X O X
. O .
. . .
O amenaza la columna central. Si X juega en cualquier lugar salvo la casilla central inferior, O puede ganar en el siguiente turno. Esas jugadas tienen valor −1 para X. Jugar en la casilla central inferior bloquea la victoria inmediata y permite un empate con juego óptimo, lo que da valor 0. La raíz devuelve la casilla central inferior. El algoritmo no necesita una instrucción separada que nombre esta amenaza: los resultados terminales determinan los valores.
Calcula el costo de tiempo y memoria
Minimax en profundidad examina nodos para un factor de ramificación y una profundidad máxima . Almacenar todos los hermanos generados en cada nivel activo necesita de memoria. Generar sucesores de uno en uno reduce el almacenamiento de la búsqueda activa a , aparte de la representación del estado. El tiempo exponencial, no la pila de recursión, suele ser el principal obstáculo.
Conserva la convención de puntuación
En el código MAX/MIN, cada llamada devuelve la utilidad de MAX. No cambies su signo solo porque MIN actúe después. Negamax usa otra convención: cada valor se expresa desde el punto de vista del jugador actual, por lo que el valor de un hijo se niega antes de que el padre lo maximice:
Para un juego que termina en menos de 100 medias jugadas, se puede incluir el momento del resultado puntuando una victoria de MAX a profundidad como , una derrota como y un empate como 0. Las victorias más rápidas reciben mayor puntuación y las derrotas retrasadas son menos negativas. El límite estricto de profundidad mantiene positiva toda victoria y negativa toda derrota.
Por ejemplo, las victorias en las medias jugadas 3 y 7 reciben 97 y 93 puntos, por lo que se prefiere la victoria más rápida. Las derrotas a esas profundidades reciben −97 y −93 puntos, lo que hace preferible la derrota posterior, aunque ambas siguen siendo peores que un empate.
Puntos clave
- Comprueba los estados terminales antes de expandir jugadas.
- Devuelve acciones desde la función de búsqueda y números desde las funciones de valor.
- Minimax en profundidad necesita tiempo exponencial.
- Todas las utilidades de MAX/MIN mantienen el punto de vista de MAX.
- Negamax cambia de punto de vista y niega cada valor devuelto por un hijo.
2.3 Mantén una recompensa para cada jugador
Una sola utilidad de MAX funciona cuando los intereses de dos jugadores están estrictamente contrapuestos. Con varios jugadores o intereses coincidentes, mantén un vector de utilidades. Para los jugadores A, B y C, el vector (1, 2, 6) da sus recompensas en ese orden.
Elige según la entrada del jugador activo
En un nodo donde actúa C, compara las terceras entradas de los vectores de los hijos. Devuelve el vector completo del hijo que prefiere C. En un nodo B, compara las segundas entradas de esos vectores devueltos; en un nodo A, compara las primeras.
No maximices cada entrada por separado. Si los resultados disponibles son (1, 2, 6) y (4, 2, 3), C elige (1, 2, 6). La combinación (4, 2, 6) no es un resultado disponible y no se puede propagar.
Trabaja hacia atrás con tres jugadores
A juega primero, luego B y después C. Tras la jugada izquierda de A, B elige entre dos nodos C:
- El primero tiene las hojas (1, 2, 6) y (4, 2, 3). C elige (1, 2, 6).
- El segundo tiene las hojas (6, 1, 2) y (7, 4, 1). C elige (6, 1, 2).
B compara las segundas entradas 2 y 1, por lo que la rama izquierda devuelve (1, 2, 6).
Tras la jugada derecha de A:
- C elige (5, 4, 5) en lugar de (2, 5, 4), porque 5 supera a 4 en la tercera entrada.
- C elige (5, 2, 4) en lugar de (7, 7, 1), porque 4 supera a 1 en la tercera entrada.
B compara las segundas entradas 4 y 2, por lo que la rama derecha devuelve (5, 4, 5). Por último, A compara las primeras entradas 1 y 5 y elige la derecha. La raíz recibe el vector completo (5, 4, 5).
Indica cómo se resuelven los empates
Si C puede elegir (2, 3, 4) o (6, 1, 4), ambos le dan 4. La recompensa final de A podría ser 2 o 6. Una predicción necesita una regla de desempate o un modelo de la elección de C. La indiferencia de otro jugador no tiene por qué ser indiferente para el jugador de la raíz.
| Modelo | Qué prefiere cada uno de los demás jugadores |
|---|---|
| Propagación de vectores de utilidades | Un valor mayor en su propia entrada del vector |
| Varios adversarios MIN | Un valor menor de la única utilidad de MAX |
| Búsqueda paranoica | Se modela a todos los demás jugadores como parte de una coalición contra el jugador de la raíz |
Si dos perseguidores quieren atrapar a MAX, una ronda tiene una capa MAX y una capa MIN por cada perseguidor. Con dos perseguidores, una ronda tiene tres medias jugadas. Este modelo es distinto del de tres jugadores independientes que persiguen sus propias recompensas.
Permite que los intereses coincidan
En un juego de suma general, ambos jugadores pueden preferir (100, 100) a recompensas conjuntas menores. Los jugadores también pueden beneficiarse temporalmente de atacar a un líder común. Ese comportamiento parecido a una alianza puede surgir de sus propias preferencias y cambiar cuando cambia la posición.
Los cortes habituales de alfa-beta dependen de intereses contrapuestos y no se trasladan directamente a los vectores de utilidades. El modelo paranoico restablece una oposición de dos jugadores y permite la búsqueda alfa-beta, pero puede predecir una hostilidad coordinada que los demás jugadores no elegirían en realidad.
Puntos clave
- Un vector de utilidades conserva una recompensa por jugador.
- El jugador activo elige según su propia entrada y devuelve el vector completo.
- Los empates requieren una regla cuando las opciones empatadas afectan de forma diferente a otros jugadores.
- Varias capas MIN son adecuadas para adversarios que comparten el objetivo de reducir la utilidad de MAX.
- El modelo paranoico supone una coalición contra el jugador de la raíz.
3Omite ramas que no pueden cambiar la elección
Minimax puede dedicar la mayor parte de su tiempo a confirmar elecciones que un jugador nunca permitiría. Alfa-beta lleva cotas a lo largo del camino actual para poder detener pronto esas búsquedas. El orden de las jugadas determina cuándo aparecen cotas útiles. La profundización iterativa y los resultados almacenados ayudan al programa a encontrar ese orden y reutilizar trabajo anterior sin confundir una estimación incompleta con un valor exacto.
3.1 Sigue alfa y beta a través del árbol
La poda alfa-beta da el mismo valor de la raíz que minimax sobre el mismo árbol con los mismos valores de hoja. Ahorra trabajo al demostrar que algunas ramas no pueden mejorar la elección. Las jugadas óptimas empatadas pueden devolverse en un orden diferente.
Pasa una ventana de búsqueda por el camino
Dos cotas describen las opciones disponibles por encima del nodo actual:
- es el mejor valor disponible para MAX a lo largo del camino: MAX ya puede obtener al menos esa cantidad.
- es el mejor valor disponible para MIN a lo largo del camino: MIN ya puede limitar a MAX como máximo a esa cantidad.
Comienza la raíz con infinito negativo y positivo. Cada hijo recursivo recibe las cotas actuales. Son argumentos locales, no números globales compartidos entre búsquedas de hermanos no relacionadas.
En un nodo MAX, conserva el mayor valor de hijo observado. Detente cuando alcance o supere beta: MIN, más arriba, ya tiene una alternativa no mayor que beta. De lo contrario, eleva alfa cuando MAX encuentre una mejora. En un nodo MIN, conserva el menor valor de hijo observado. Detente cuando alcance alfa o quede por debajo: MAX, más arriba, ya tiene una alternativa al menos igual de buena. De lo contrario, reduce beta.
MAX-VALUE(s, alpha, beta):
if Is-Terminal(s): return Utility(s, MAX)
v = -infinity
for a in Actions(s):
v = max(v, MIN-VALUE(Result(s, a), alpha, beta))
if v >= beta: return v
alpha = max(alpha, v)
return v
MIN-VALUE(s, alpha, beta):
if Is-Terminal(s): return Utility(s, MAX)
v = +infinity
for a in Actions(s):
v = min(v, MAX-VALUE(Result(s, a), alpha, beta))
if v <= alpha: return v
beta = min(beta, v)
return v
La raíz compara las acciones y conserva alfa entre ellas:
ALPHA-BETA-SEARCH(s):
if Is-Terminal(s): return no action
alpha = -infinity
beta = +infinity
bestMove = no action
for a in Actions(s):
v = MIN-VALUE(Result(s, a), alpha, beta)
if v > alpha:
alpha = v
bestMove = a
return bestMove
Sigue un corte MIN
Explora las ramas MIN A = (4, 9, 6), B = (2, 15, 13) y C = (5, 8, 10), de izquierda a derecha. A debe examinar las tres hojas y devuelve 4. La raíz tiene ahora alfa 4. La primera hoja de B es 2. Su mínimo final solo puede mantenerse en 2 o bajar, por lo que B no puede superar a A. Omite las dos hojas restantes de B. C examina las tres hojas y devuelve 5. La raíz elige C después de examinar siete de las nueve hojas.
Sigue un corte MAX
Supón que un padre MIN ya tiene un hijo de valor 3, lo que fija beta en 3. Su siguiente hijo MAX encuentra una hoja de valor 6. El valor de ese hijo es al menos 6, por lo que MIN preferirá su 3 actual. Omite los hijos restantes de ese nodo MAX. El razonamiento del corte usa la alternativa de MIN, aunque el nodo actual sea MAX.
Un nodo MIN podado puede devolver una cota superior; un nodo MAX podado puede devolver una cota inferior. Sus valores exactos siguen siendo desconocidos. El valor final de la raíz es exacto para el árbol explorado. La igualdad también permite un corte porque una rama que solo puede empatar no puede mejorar el mejor valor actual.
Puntos clave
- Alfa es la cota inferior disponible para MAX; beta es la cota superior disponible para MIN.
- MAX eleva alfa y corta al alcanzar beta.
- MIN reduce beta y corta al alcanzar alfa.
- Pasa las cotas hacia abajo como argumentos locales.
- El resultado de un corte puede ser una cota en lugar de un valor exacto del nodo.
- La poda conserva el valor minimax de la raíz, incluidos los cortes por igualdad.
3.2 Encuentra pronto cotas útiles y reutiliza búsquedas
Alfa-beta ahorra más trabajo cuando las jugadas fuertes se exploran pronto. Los valores no cambian con el orden de las jugadas; sí cambia el momento en que la búsqueda puede demostrar un corte.
Compara dos órdenes
Para las tres ramas MIN A = (4, 9, 6), B = (2, 15, 13) y C = (5, 8, 10), comenzar por A supone examinar siete hojas. Comienza por C. Sus tres hojas establecen alfa 5. Entonces A encuentra 4 inmediatamente y corta; B encuentra 2 inmediatamente y corta. Solo se evalúan cinco hojas y la respuesta sigue siendo C con valor 5.
Para un árbol uniforme con ordenación perfecta, el número de hojas es:
Esto es aproximadamente en lugar del de minimax. El factor de ramificación efectivo baja a aproximadamente , lo que permite aproximadamente el doble de profundidad con un presupuesto comparable. Con , la profundidad 8 con ordenación perfecta evalúa 3 001 249 hojas; minimax ordinario de profundidad 4 tiene 1 500 625 hojas. La comparación se refiere a la escala, no a tiempos de ejecución idénticos.
| Ordenación | Costo aproximado en hojas |
|---|---|
| Perfecta | |
| Aleatoria, para factores de ramificación moderados | Aproximadamente |
| Peor caso |
Con el peor orden, alfa-beta puede examinar todas las hojas de minimax. Sus comprobaciones adicionales de cotas añaden trabajo incluso cuando no ahorran hojas.
Usa indicios de ordenación de bajo costo
La mejor jugada exacta se desconoce antes de la búsqueda. Los programas usan estimaciones rápidas. En ajedrez pueden probar capturas, luego amenazas y después jugadas tranquilas. Una jugada asesina causó un corte en otro lugar a la misma profundidad de búsqueda y se prueba pronto en otra posición. Estos indicios afectan a la eficiencia; no justifican descartar las demás jugadas legales.
La profundización iterativa busca hasta la profundidad 1, luego 2, luego 3 y así sucesivamente. Una jugada fuerte de la iteración anterior se convierte en una candidata temprana en la siguiente. El resultado completo más profundo también queda listo si se acaba el tiempo.
El trabajo repetido tiene distintos costos según la poda. Para una búsqueda uniforme sin poda con factor de ramificación 35, todas las iteraciones menos profundas añaden aproximadamente a la búsqueda final. Para alfa-beta con ordenación perfecta, las profundidades 1 a 7 juntas evalúan 1 677 159 hojas, aproximadamente el 56 % del recuento de profundidad 8. Una mejor ordenación aún puede hacer que el proceso completo merezca la pena.
Guarda posiciones con su significado
Una tabla de transposiciones almacena resultados indexados por el estado completo del juego. Si otro orden de jugadas llega a ese estado, el programa puede reutilizar una entrada adecuada. Almacena la profundidad explorada y si el resultado es exacto, una cota inferior o una cota superior. Una entrada superficial no sustituye a la información requerida por una búsqueda más profunda. Una cota puede estrechar una ventana o justificar un corte, pero no debe tratarse como un valor exacto.
Puntos clave
- El orden de las jugadas cambia el trabajo de alfa-beta, no su valor de raíz.
- La ordenación perfecta reduce el costo exponencial a aproximadamente b elevado a m/2.
- La profundización iterativa proporciona una jugada de una búsqueda completa y mejora la ordenación.
- Una entrada de transposición necesita la profundidad y un indicador de valor exacto, cota inferior o cota superior.
4Evalúa posiciones no terminadas con un límite de tiempo
Los juegos de gran tamaño obligan a detener la búsqueda mientras la partida aún no ha terminado. Una función de evaluación da puntuaciones utilizables a esas posiciones de la frontera, y la búsqueda las propaga hacia atrás a través de las elecciones de los jugadores. La regla de parada importa tanto como la puntuación: una posición en medio de una captura puede parecer engañosamente fuerte. Las extensiones selectivas y las consultas exactas ayudan al programa a dedicar su tiempo limitado a las partes en las que el resultado es más sensible.
4.1 Construye e interpreta una función de evaluación
Una función de evaluación estima lo favorable que es una posición no terminada para MAX. Hace posible la búsqueda de profundidad limitada: la frontera recibe valores estimados que pueden propagarse mediante minimax o alfa-beta.
Haz que las puntuaciones sean útiles para la búsqueda
Un buen evaluador es rápido, coincide con el orden de los resultados terminales reales y se correlaciona con el éxito desde posiciones no terminales. Los propios estados terminales deben recibir su utilidad exacta. Una victoria de MAX debe puntuar por encima de toda estimación no terminal, para que acumular piezas no resulte más atractivo que ganar.
Una forma de entender la evaluación es agrupar posiciones por características compartidas. Si ese grupo produce un 72 % de victorias, un 8 % de empates y un 20 % de derrotas, con utilidades 1, ½ y 0, su utilidad media es:
Esta interpretación depende de cómo se hayan muestreado las posiciones y las continuaciones. Es una estimación de la calidad del resultado, no una demostración de victoria forzada.
Añade características ponderadas
Un diseño habitual es una suma ponderada:
Cada característica mide una propiedad de la posición; cada peso indica cuánto contribuye. Las diferencias entre los bandos mantienen claro el punto de vista. Una diferencia material positiva significa que MAX tiene más material.
Los valores tradicionales de ajedrez son: peón 1, caballo 3, alfil 3, torre 5 y dama 9. Al rey no se le asigna un valor material de pieza capturable. Supón que MAX juega con blancas. Las blancas tienen una dama, dos torres, un alfil y seis peones:
Las negras tienen dos torres, dos caballos, un alfil y siete peones:
Por tanto, la característica de material es . Si las blancas tienen 30 jugadas legales y las negras 24, la diferencia de movilidad es 6. Con peso 1 para el material y peso 0,1 para la movilidad:
Ese 2,6 es una puntuación de características, no una probabilidad de victoria del 260 %. Los pesos definen su escala.
Ten en cuenta las características que interactúan
Una suma lineal simple da a cada característica una contribución fija independiente de las demás. El valor real en el juego puede depender de combinaciones: una pareja de alfiles puede valer más que la suma de sus efectos por separado, y la importancia de un peón puede cambiar en un final de partida. Las características combinadas, los pesos dependientes de la fase o los evaluadores no lineales pueden captar estos efectos. Los pesos pueden elegirse según el criterio de quien diseña el sistema o ajustarse a los resultados de partidas registradas.
Más características también cuestan tiempo. Un evaluador elaborado que impida buscar una media jugada útil adicional puede perjudicar la decisión, aunque mejoren sus estimaciones individuales.
Ajusta la escala a la regla de propagación
En minimax determinista, aplicar de manera uniforme transformaciones estrictamente crecientes conserva el orden a través de máximos y mínimos. Elevar al cuadrado solo puntuaciones positivas, por ejemplo, conserva su orden. Elevar al cuadrado puntuaciones con signos arbitrarios no lo conserva. En los nodos de azar, las distancias reales entre utilidades importan porque los valores se promedian. Una puntuación diseñada solo para ordenar posiciones necesita calibración antes de poder representar la utilidad esperada.
Puntos clave
- Evalúa los estados no terminales de la frontera y usa la utilidad exacta en los estados terminales.
- Una victoria real debe superar toda estimación no terminal.
- Un evaluador ponderado suma características medidas multiplicadas por sus pesos.
- Las puntuaciones de características no tienen por qué ser probabilidades.
- Las interacciones pueden requerir características combinadas o pesos variables.
- Los nodos de azar necesitan valores de utilidad en una escala significativa.
4.2 Elige dónde detenerte y dónde buscar más a fondo
El minimax heurístico se detiene antes de que termine la partida. Su respuesta es óptima para el árbol explorado con las puntuaciones asignadas a su frontera. Aun así, puede elegir una jugada perdedora en el juego real cuando esas estimaciones no captan lo que ocurre después.
Distingue los estados terminales de los cortes
Un estado terminal tiene un resultado conocido. Un corte por profundidad deja la partida sin terminar y necesita una estimación. Compruébalos en ese orden:
H-MINIMAX(s, d):
if Is-Terminal(s): return Utility(s, MAX)
if Is-Cutoff(s, d): return Eval(s)
if To-Move(s) == MAX:
return max over a of H-MINIMAX(Result(s, a), d + 1)
return min over a of H-MINIMAX(Result(s, a), d + 1)
El corte suele comprobar si la profundidad ha alcanzado un límite. Alfa-beta puede podar este mismo árbol heurístico. Su poda sigue siendo exacta respecto de esos valores de frontera; no convierte las estimaciones en resultados reales del juego.
Con un límite de tiempo, la profundización iterativa conserva la acción de la iteración completa más profunda. Una raíz explorada solo en parte a mayor profundidad puede favorecer la primera rama simplemente porque sus competidoras aún no se han evaluado.
Termina un intercambio táctico
Una posición tranquila es lo bastante estable como para que sea poco probable que una continuación forzada breve cambie bruscamente su evaluación. La búsqueda de quietud continúa más allá de la profundidad normal en posiciones inestables, normalmente siguiendo capturas hasta que el intercambio se estabiliza.
Supón que la dama blanca captura un peón justo en el límite de profundidad. La puntuación material mejora en 1. Pero las negras pueden recapturar esa dama en la siguiente media jugada. El cambio neto de material es:
Detenerse después de la primera captura indica +1; una breve extensión de capturas revela −8. El problema es evaluar a mitad de un intercambio, no un fallo de la regla de propagación de minimax.
Reconoce las pérdidas retrasadas
El efecto horizonte ocurre cuando un programa retrasa una pérdida inevitable hasta situarla más allá de la profundidad de búsqueda. Un alfil atrapado puede perderse igualmente después de varios jaques con peones. Si la búsqueda ve los jaques pero se detiene antes de la captura del alfil, puede sacrificar peones para ocultar esa pérdida futura.
Una extensión singular busca más a fondo una jugada que destaca claramente sobre sus alternativas. Los programas también extienden jaques forzados o recapturas. Las extensiones dedican profundidad adicional a líneas seleccionadas; requieren un presupuesto para que la búsqueda pueda terminar.
| Técnica | Motivo para hacer menos o más trabajo |
|---|---|
| Alfa-beta | Una cota demuestra que una rama no puede mejorar la decisión. |
| Poda hacia delante | Una heurística predice que algunas jugadas no son importantes. |
| Extensión de quietud o táctica | Una línea inestable o forzada necesita más profundidad. |
La poda hacia delante, como conservar solo unas pocas de las mejores jugadas, puede descartar la jugada ganadora. Su ahorro no cuenta con la garantía de alfa-beta.
Sustituye la búsqueda por conocimiento exacto almacenado
Un libro de aperturas proporciona jugadas iniciales estudiadas. Las bases de tablas de finales trabajan hacia atrás desde resultados conocidos mediante análisis retrógrado. Las bases de tablas de finales de ajedrez de siete piezas incluyen los dos reyes y proporcionan resultados exactos para los finales que cubren. Las reglas y la información de estado de una consulta deben coincidir con el juego que se está jugando.
Puntos clave
- Usa la utilidad exacta para estados terminales y la evaluación para cortes no terminados.
- Juega la mejor acción de la iteración completa más profunda.
- La búsqueda de quietud termina los intercambios tácticos antes de evaluar.
- El efecto horizonte puede premiar retrasos costosos de una pérdida inevitable.
- La poda hacia delante puede perder la mejor jugada; alfa-beta demuestra que sus cortes son seguros.
- Los libros y las bases de tablas proporcionan conocimiento almacenado en lugar de realizar una nueva búsqueda.
5Propaga resultados aleatorios mediante probabilidades
Algunas ramas las elige un jugador; otras las determina el azar. La regla de propagación debe respetar esa diferencia en cada nodo. Los promedios ponderados permiten que un programa maneje dados o un modelo de comportamiento impredecible, pero también hacen que la escala numérica del evaluador sea importante. La elección adecuada depende tanto de las reglas del juego como de la precisión con que el programa modele a su oponente.
5.1 Calcula valores a través de nodos de azar
Un nodo de azar representa un suceso aleatorio. Sus ramas enumeran los resultados posibles y sus probabilidades, que suman 1. Ningún jugador elige la rama que más le favorece.
Usa la regla correspondiente a cada nodo
| Nodo | Valor propagado |
|---|---|
| Terminal | Su utilidad |
| MAX | El máximo de los valores de sus hijos |
| MIN | El mínimo de los valores de sus hijos |
| Azar | El promedio de los valores de sus hijos ponderado por probabilidades |
Para los resultados , un nodo de azar tiene el valor:
Expectiminimax combina las cuatro reglas. Expectimax usa MAX y azar cuando no hay un jugador que minimice. Un modelo probabilístico de un oponente aleatorio puede proporcionar ramas de azar incluso en un juego cuyas reglas de movimiento sean deterministas.
Trabaja hacia atrás con azar y oposición
MAX elige L o R. Cada jugada conduce a un suceso aleatorio, seguido de una elección de MIN.
Tras L, una moneda equilibrada da dos nodos MIN. Sus hojas son (3, 7) y (8, 4). MIN devuelve 3 y 4. El nodo de azar da entonces:
Tras R, las probabilidades 0,25 y 0,75 conducen a nodos MIN con hojas (10, 1) y (6, 5). Sus valores son 1 y 5, por lo que:
MAX elige R porque 4 supera a 3,5. Promediar primero las hojas terminales sin procesar permitiría que el azar sustituyera la decisión de MIN. Procesa cada nodo después de haber resuelto sus hijos.
Asigna las probabilidades correctas
Dos dados equilibrados tienen 36 resultados ordenados igualmente probables. El backgammon agrupa los órdenes inversos, como 3–5 y 5–3, en una misma tirada. Esto da 21 tiradas distintas: seis dobles con probabilidad 1/36 cada uno y 15 tiradas no dobles con probabilidad 1/18 cada una. La comprobación es:
Dar a las 21 tiradas una probabilidad de 1/21 contaría los dobles de más y las tiradas no dobles de menos. Las ramas que parecen iguales no tienen por qué tener probabilidades iguales.
Si cada etapa de decisión tiene jugadas legales y un suceso aleatorio con resultados, buscar etapas de ese tipo cuesta aproximadamente . La convención de profundidad debe tener en cuenta con qué frecuencia interviene el azar. Con unas 20 jugadas legales y 21 tiradas, las ramas de azar añadidas del backgammon limitan rápidamente la anticipación exhaustiva.
Por ejemplo, dos etapas que contienen cada una 21 resultados del azar y 20 acciones producen caminos. Cuenta los sucesos aleatorios por separado de las medias jugadas de los jugadores al estimar ese costo.
Poda solo cuando los resultados no vistos estén acotados
Un promedio parcial no es una cota minimax. Si las utilidades están entre 0 y 10 y el primero de dos resultados igualmente probables vale 2, el nodo completo está entre 1 y 6. En particular:
Si MAX ya tiene otra jugada de valor 7, este nodo de azar no puede superarla y se puede omitir el resultado restante. Sin una cota adecuada para los valores no vistos, un resultado extremo aún podría cambiar el promedio lo suficiente como para invertir la elección.
Puntos clave
- Los nodos de azar devuelven promedios ponderados, no máximos ni mínimos.
- Resuelve los hijos antes de combinarlos en su padre.
- Comprueba que las probabilidades del azar sumen 1.
- En el backgammon, los dobles y las tiradas no dobles tienen probabilidades diferentes.
- La ramificación del azar multiplica el costo de búsqueda.
- Acotar los resultados no examinados puede justificar un corte en un nodo de azar.
5.2 Elige una escala de utilidad y un modelo del oponente
Minimax pregunta qué resultado puede garantizar un oponente. Expectimax pregunta qué utilidad media se deriva de un modelo probabilístico. Sus decisiones pueden diferir incluso en el mismo árbol porque representan comportamientos diferentes.
Compara la oposición óptima y la aleatoria
Para las ramas MIN A = (4, 9, 6), B = (2, 15, 13) y C = (5, 8, 10), minimax elige C con una garantía de 5. Si, en cambio, el oponente elige cada respuesta de manera uniforme, los valores esperados son aproximadamente 6,33, 10 y 7,67. Expectimax elige B.
Esto es razonable con el modelo uniforme, pero un adversario hábil puede responder a B con 2. Expectimax no supone que el oponente minimice un promedio. Usa las probabilidades especificadas. Con un modelo correcto maximiza la utilidad esperada; la protección en el peor caso es más débil que la de minimax. Puede igualar el rendimiento medio de minimax cuando ambos recomiendan la misma jugada.
Un árbol puede mezclar modelos. El nodo de un agente adversario toma un mínimo, mientras que el de un agente aleatorio toma un promedio ponderado. Usa la regla del agente que actúa en ese nodo, no una sola regla para cada capa que no sea MAX.
Comprende por qué el orden no basta
Supón que la jugada A da 2 con probabilidad 0,6 y 3 con probabilidad 0,4. La jugada B da 1 con probabilidad 0,6 y 4 con probabilidad 0,4:
A tiene la mayor esperanza. Ahora eleva al cubo cada valor terminal. Su orden se mantiene, pero las esperanzas pasan a ser:
Ahora B gana la comparación. Promediar resultados transformados es diferente de transformar su promedio. Elevar al cubo amplifica lo suficiente el beneficio del resultado alto de B como para cambiar la decisión.
Conserva las decisiones con las transformaciones adecuadas
| Regla de propagación | Transformación que conserva las decisiones |
|---|---|
| Minimax | Cualquier transformación estrictamente creciente aplicada de forma uniforme |
| Utilidad esperada | Una transformación afín de pendiente positiva, con |
Una transformación afín de pendiente positiva multiplica cada esperanza por el mismo número positivo y añade la misma constante. Aplicar da a A un valor de 29 y a B un valor de 27, por lo que A sigue siendo la opción preferida.
Si A y B fueran nodos MIN, sus valores serían 2 y 1 antes de elevar al cubo y 8 y 1 después. Su orden no cambiaría. Los máximos y mínimos seleccionan el valor de un hijo; los promedios combinan las magnitudes de varios valores.
Por tanto, un evaluador usado con azar debe estimar la utilidad esperada prevista en una escala uniforme, como la probabilidad de ganar o una transformación afín de pendiente positiva de ella. Una puntuación no lineal de ordenación puede ser adecuada para minimax determinista y, a la vez, llevar a compromisos incorrectos entre riesgos cuando interviene el azar.
Puntos clave
- Elige minimax para una oposición óptima y la esperanza para un modelo probabilístico.
- Un modelo correcto del azar optimiza la utilidad media, con una protección más débil en el peor caso.
- Las transformaciones estrictamente crecientes conservan las decisiones minimax.
- Las transformaciones afines de pendiente positiva conservan las decisiones de utilidad esperada.
- Una transformación no lineal puede cambiar una elección basada en promedios.
6Usa simulaciones para guiar un árbol de búsqueda en crecimiento
Cuando el espacio de jugadas es enorme, un programa puede estimar resultados simulando continuaciones y dirigir el trabajo posterior hacia ramas útiles. La búsqueda en árbol de Monte Carlo almacena esos resultados en un árbol que va creciendo. Su regla de selección equilibra las jugadas que ya parecen fuertes con aquellas cuyas estimaciones siguen siendo inciertas. Elegir una acción final requiere evaluar la evidencia acumulada y reconocer las respuestas tácticas que la simulación puede pasar por alto.
6.1 Ejecuta una iteración de búsqueda en árbol de Monte Carlo
La búsqueda en árbol de Monte Carlo, o MCTS, estima jugadas a partir de partidas simuladas mientras construye un árbol que guía las simulaciones futuras. Una continuación simulada hasta el final es una simulación de partida o partida simulada. Su política puede seleccionar jugadas legales aleatorias o usar conocimientos de bajo costo para producir un juego más razonable.
Almacena evidencia en cada nodo
Mantén un número de visitas y una recompensa acumulada . En un juego de dos jugadores con victorias y derrotas, usa las victorias del jugador que realizó la jugada que llevó al nodo . Un empate suele añadir media victoria. Así, estima la tasa de éxito de ese jugador.
La raíz no tiene una jugada entrante. Sus visitas siguen contando cada iteración; si es necesario, sus victorias pueden registrarse desde el punto de vista del jugador de la raíz. Las puntuaciones de los hijos, que guían la selección, deben usar de forma uniforme el punto de vista del jugador que realizó la jugada entrante.
Repite las cuatro fases
- Selección: Desde la raíz, sigue una política de selección por los hijos existentes hasta llegar a un nodo terminal o a un nodo con una jugada sin probar.
- Expansión: Si no es terminal, añade un hijo para una jugada legal sin probar.
- Simulación: Ejecuta una simulación de partida desde ese hijo hasta un resultado terminal.
- Retropropagación de resultados: Actualiza las visitas y recompensas de los nodos del camino seleccionado.
Si la selección llega a un nodo terminal, omite la expansión y la simulación. Su resultado conocido puede propagarse inmediatamente. No es necesario almacenar la continuación temporal de una simulación como nuevos nodos del árbol: la expansión habitual añade un hijo por iteración.
Sigue una actualización de recompensas
Las blancas actúan en la raíz. La selección y la expansión siguen este camino:
- n1, alcanzado mediante una jugada de las blancas;
- n2, alcanzado mediante una jugada de las negras;
- n3, alcanzado mediante una jugada de las blancas.
La simulación termina con una victoria de las negras. Aumenta las visitas en uno en la raíz y en n1, n2 y n3. Entre estos tres nodos hijos, aumenta las victorias solo en n2, porque el jugador de la jugada entrante de n2 fue el de las negras. Los nodos hijos de las blancas no reciben ningún incremento de victorias. Con una convención basada en el jugador de la raíz, el total de victorias de la raíz también permanece sin cambios.
Un empate añadiría 0,5 a la recompensa de cada hijo. Contar la victoria de las negras como un éxito en todos los nodos haría que las blancas seleccionaran jugadas que ayudan a las negras.
Deja que el árbol crezca de forma desigual
Las iteraciones repetidas concentran las simulaciones en ramas prometedoras o inciertas. Las jugadas que parecen fuertes tienden a adquirir subárboles mayores, mientras que se dedica menos trabajo a las malas. La búsqueda no impone una profundidad fija a todas las líneas. Una vez disponible una jugada legal, puede detenerse al alcanzar un límite de tiempo y usar las estadísticas acumuladas.
La acción final suele ser el hijo de la raíz con más visitas. Una jugada con dos victorias en dos simulaciones tiene una tasa observada perfecta, pero poca evidencia. Una jugada muy visitada refleja mucho más examen por parte de la búsqueda.
La búsqueda pura de Monte Carlo asigna simulaciones independientes a las jugadas de la raíz sin construir un árbol de decisión. Puede pasar por alto repetidamente una respuesta fuerte del oponente porque el juego posterior sigue regido por la política de simulación. MCTS aprende dónde ramificarse a mayor profundidad al acumular evidencia, aunque una refutación táctica poco frecuente aún puede tardar en descubrirse.
Puntos clave
- MCTS almacena números de visitas y recompensas acumuladas en un árbol en crecimiento.
- Usa selección, expansión, simulación y retropropagación de resultados.
- Un nodo terminal seleccionado solo necesita que se propague su resultado conocido.
- Las recompensas de un hijo cuentan los éxitos del jugador que realizó la jugada que llevó a él.
- La acción final suele ser el hijo de la raíz más visitado.
6.2 Equilibra las recompensas conocidas y las jugadas inciertas
MCTS debe decidir dónde es más útil otra simulación. La explotación vuelve a visitar jugadas que ya parecen fuertes. La exploración investiga jugadas con menos evidencia que podrían resultar mejores. Perseguir siempre la mayor tasa de victorias observada puede hacer que la búsqueda se quede fijada en un resultado inicial afortunado.
Calcula una puntuación UCB1
La puntuación de cota superior de confianza para el hijo es:
El primer término es la tasa de victorias observada. El segundo es una bonificación de exploración. Crece a medida que el padre acumula visitas y disminuye a medida que el hijo recibe más visitas. El logaritmo es natural. Durante la selección, elige el hijo con la mayor puntuación combinada.
Trata un hijo no visitado como si tuviera prioridad infinita en lugar de dividir por cero. Cada jugada legal de un nodo se prueba antes de que la selección favorezca repetidamente alternativas ya visitadas. MCTS que usa esta regla de selección se llama UCT, búsqueda en árbol con cotas superiores de confianza.
Compara tres hijos
Un padre tiene 50 visitas. Sus hijos tienen recuentos de victorias y visitas 21/30, 7/12 y 3/8. Con y :
| Hijo | Tasa de victorias | Bonificación de exploración | Total |
|---|---|---|---|
| Primero | 0,700 | 0,511 | 1,211 |
| Segundo | 0,583 | 0,807 | 1,391 |
| Tercero | 0,375 | 0,989 | 1,364 |
Se selecciona el segundo hijo. Su tasa de victorias actual es inferior a la del primero, pero su bonificación por incertidumbre es mayor. El tercero está aún menos visitado, pero su menor tasa de victorias deja su total ligeramente por debajo del segundo.
Con , los mismos totales pasan a ser aproximadamente 0,881, 0,869 y 0,725. Ahora la selección favorece al primer hijo. Ningún resultado ha cambiado; el programa ha cambiado la intensidad con que premia la incertidumbre.
Interpreta la constante de exploración
Un positivo mayor da más peso a la exploración. Fijarlo en cero elimina la bonificación y elige solo según la media observada. La formulación del bandido con recompensas entre 0 y 1 justifica en esta forma de la ecuación; los programas de juegos prácticos ajustan la constante. Cambiar la escala de recompensa también cambia el equilibrio con el término de exploración.
En cada padre, sus hijos registran las victorias del jugador que elige allí. Esto hace razonable maximizar UCB1 en los turnos de ambos jugadores. Almacenar solo las victorias de las blancas en todo el árbol y maximizar cada puntuación haría que las negras favorecieran el éxito de las blancas.
Separa la prioridad de búsqueda de la calidad de la jugada
UCB1 elige dónde dedicar la siguiente simulación. Una gran bonificación por incertidumbre puede hacer que merezca la pena investigar una jugada poco muestreada. Al final de la búsqueda, elige el hijo de la raíz más visitado, no el que tenga la puntuación UCB1 más alta en ese momento. Bajo las condiciones de juego finito de UCT y con exploración continua, una búsqueda ilimitada converge hacia el comportamiento minimax; un presupuesto finito sigue dejando incertidumbre de muestreo.
Puntos clave
- UCB1 suma la recompensa media observada y una bonificación de exploración.
- Un C mayor fomenta más exploración.
- Los hijos no visitados reciben prioridad sin dividir por cero.
- La selección maximiza el éxito esperado del jugador activo.
- UCB1 selecciona simulaciones; la elección final suele usar las visitas.
- Un número finito de simulaciones deja incertidumbre incluso cuando la regla es correcta.
6.3 Elige métodos de búsqueda para distintos juegos
Un método de búsqueda se adapta al tamaño del espacio de jugadas, la calidad de la evaluación disponible y el tipo de incertidumbre del juego. Un mismo presupuesto de tiempo puede producir decisiones muy distintas según lo que investigue el método.
Compara la cobertura táctica y la simulación
| Característica del juego | Enfoque útil | Motivo |
|---|---|---|
| Ramificación moderada, evaluador sólido, táctica aguda | Alfa-beta con ordenación de jugadas | Comprueba las respuestas relevantes dentro de su profundidad. |
| Ramificación enorme o evaluación débil escrita a mano | MCTS | Las simulaciones guían el esfuerzo hacia partes prometedoras del árbol. |
| Azar con un árbol superficial manejable | Expectiminimax o expectimax | Las probabilidades explícitas pueden propagarse directamente. |
| Muchos resultados del azar | MCTS con muestreo de resultados del azar | El muestreo estima esperanzas sin enumerar cada resultado en cada iteración. |
| Preferencias independientes de los jugadores | Vectores de utilidades | Un solo escalar no puede representar el interés de cada jugador. |
Alfa-beta puede encontrar una única refutación táctica dentro de su profundidad de búsqueda. MCTS puede preferir inicialmente una jugada que gana la mayoría de las simulaciones aleatorias pero pierde ante una respuesta precisa. A medida que crece su árbol, puede descubrir esa respuesta, pero un presupuesto breve de simulaciones puede pasarla por alto. Por tanto, una alta tasa de victorias en las simulaciones no es una garantía para el peor caso.
Relaciona los métodos con programas emblemáticos
En 1997, Deep Blue de IBM usó búsqueda alfa-beta, hardware especializado y evaluación de ajedrez para derrotar al campeón mundial Garry Kasparov por 3½–2½ en seis partidas. Su éxito mostró cuánto podían lograr juntos una búsqueda sólida y una evaluación específica del juego.
El go hizo más difícil esa combinación. Un tablero vacío de 19 por 19 ofrece 361 lugares para colocar una piedra, y juzgar una posición mediante características simples es difícil. MCTS se convirtió en un enfoque sólido porque podía estimar resultados mediante partidas y expandir un árbol selectivo sin requerir un evaluador estático escrito a mano.
AlphaGo combinó MCTS con redes neuronales que sugerían jugadas y evaluaban posiciones. Su descripción en Nature en 2016 precedió a su victoria por 4–1 sobre Lee Sedol en marzo de 2016. Más tarde, AlphaZero usó la evaluación de una red neuronal en lugar de simulaciones aleatorias y alcanzó un nivel de juego sobrehumano en ajedrez, shōgi y go. Estos programas muestran que un marco de búsqueda puede usar distintas fuentes de valores de posición.
Distingue jugar bien de resolver un juego
Un programa puede vencer a un campeón sin demostrar el valor de la posición inicial. En 2007, el equipo de Jonathan Schaeffer usó búsqueda y grandes bases de datos de finales para establecer que las damas terminan en empate con juego perfecto. Resolver el juego establece un resultado frente a todas las estrategias posibles del oponente, no solo frente a los oponentes probados en encuentros.
Adapta el método al modelo
En un juego estocástico, muestrea los resultados aleatorios según sus probabilidades reales durante el recorrido del árbol y las simulaciones. Un suceso con probabilidad 0,8 debería ocurrir aproximadamente cuatro veces más que uno con probabilidad 0,2 a lo largo de muchas muestras. Esto estima la misma esperanza ponderada que calcula la propagación explícita del azar.
Todos los enfoques siguen dependiendo de reglas y transiciones de estado correctas. Alfa-beta con profundidad limitada depende de su evaluador; MCTS depende de su política de simulación o evaluación y de su presupuesto finito de muestras. Modelar como aleatorio a un oponente adversario puede resultar costoso, sea cual sea el mecanismo de búsqueda usado para calcular la respuesta de ese modelo.
Puntos clave
- Alfa-beta es eficaz para la táctica dentro de una profundidad de búsqueda manejable.
- MCTS es adecuado para factores de ramificación grandes y evaluaciones difíciles de diseñar.
- Un promedio de simulaciones puede pasar por alto una refutación decisiva poco frecuente.
- El muestreo del azar debe seguir las probabilidades de los sucesos.
- Jugar al nivel de un campeón y demostrar que un juego está resuelto son logros diferentes.
- La evaluación aprendida puede combinarse con cualquiera de los dos marcos de búsqueda.
Ejemplos de Búsqueda entre adversarios
1Modela las reglas y dibuja las partidas posibles
11 pasos
- 1IntroducciónComienza con un juego que el programa pueda examinar
Un programa que juega necesita reglas que pueda aplicar a un estado. Debe saber de quién es el turno, qué acciones son legales, qué cambia cada acción y cuándo puntuar un resultado.
Una vez que esos componentes son explícitos, un árbol de juego puede mostrar las continuaciones. Algunas ramas corresponden al programa; otras corresponden a su oponente. Esa diferencia cambia lo que se considera un plan útil.
- 2EjemploEspecifica el tres en raya
Usa como estado un tablero de 3 por 3 y el jugador al que le toca jugar. Comienza con un tablero vacío y el turno de X.
Una acción elige una casilla vacía. La transición coloca allí la marca actual y cambia el turno. Una línea de tres termina inmediatamente la partida; un tablero lleno sin una línea da un empate. Puntúa los resultados terminales para X como +1, 0 o −1. Estas reglas proporcionan los seis componentes que necesita un programa de búsqueda.
- 3Idea claveDistingue el azar del estado oculto
Un tablero visible aún puede tener sucesos aleatorios: el backgammon añade tiradas de dados. En cambio, un juego puede ocultar parte de su estado, como el póquer oculta las cartas.
Son ejes de clasificación independientes. El azar determina cómo se generan los resultados; la información determina qué puede observar un jugador. El número de jugadores y si sus recompensas están estrictamente contrapuestas son otras elecciones del modelo.
- 4DesafíoClasifica un juego nuevo
Un juego de fichas para dos jugadores tiene un estado totalmente visible. Antes de cada turno, una ruleta determina qué jugadas están permitidas. Cada resultado terminal da 1 a un jugador y 0 al otro. ¿Cómo se clasifica según el azar, la información y la estructura de recompensas?
---reveal---
Es estocástico, tiene información perfecta y es de suma constante con intereses estrictamente contrapuestos. La ruleta añade azar sin ocultar el estado; el total fijo de las recompensas permite usar un modelo MAX/MIN.
- 5ExplicaciónCuenta las medias jugadas desde la raíz
Sitúa la posición actual a profundidad cero. Cada arista añade una media jugada: una acción de un jugador. En el juego alternado, la profundidad 1 sigue a la acción de MAX y la profundidad 2 sigue a la respuesta de MIN.
Una jugada completa de ajedrez suele incluir ambos turnos. Por tanto, una búsqueda que alcanza dos jugadas completas de cada jugador tiene profundidad 4, no profundidad 2. Etiquetar los turnos evita que la profundidad y las reglas de propagación dejen de coincidir.
- 6EjemploExpande un árbol uniforme pequeño
Imagina tres acciones legales en cada nodo no terminal. La profundidad 1 tiene 3 posiciones, la profundidad 2 tiene 9 y la profundidad 3 tiene 27 hojas.
Cada nueva media jugada multiplica el número de caminos. El juego real puede terminar antes y tener números variables de jugadas, pero la estimación uniforme hace visible el costo de la profundidad antes de elegir un algoritmo.
- 7ConexiónReconoce los estados repetidos
X puede jugar en una esquina, O en el centro y X en la esquina opuesta. Invertir el orden de las dos esquinas de X lleva al mismo tablero con el mismo jugador en el siguiente turno.
El árbol contiene dos caminos hacia un estado. Esto es una transposición. Un grafo o una caché pueden compartir el resultado de ese estado, siempre que la clave incluya el turno y cualquier otra parte de las reglas que cambie el juego posterior.
- 8DesafíoCalcula el tamaño y la profundidad del árbol
Un juego alternado ofrece dos acciones en cada nodo. La búsqueda abarca dos turnos de MAX y dos de MIN. ¿Qué profundidad y número de hojas tiene el árbol uniforme?
---reveal---
Tiene una profundidad de 4 medias jugadas y hojas. Cada jugador actúa dos veces, por lo que hay cuatro acciones individuales en cada camino. Contar profundidad 2 incluiría solo un turno por jugador.
- 9Idea claveUna estrategia conserva las respuestas
Un solo camino describe una partida completa, pero un oponente puede elegir otra rama. Por tanto, una estrategia de MAX conserva una acción seleccionada en cada nodo MAX y todas las respuestas legales en cada nodo MIN.
La acción posterior de MAX puede depender de la respuesta que observe. La estrategia puede contener muchos caminos aunque fije el comportamiento de MAX en cada situación alcanzable.
- 10DesafíoCorrige un plan frágil
Un programa almacena una primera jugada planeada y una respuesta esperada del oponente, seguidas de una continuación ganadora. Su modelo de juego enumera tres posibles respuestas del oponente. ¿Qué debe cambiar en el plan para que describa una estrategia completa?
---reveal---
El programa necesita una regla de acción después de cada respuesta posible y después de las elecciones posteriores del oponente. Conocer una línea ganadora no basta porque el oponente controla cuál de esas ramas de respuesta ocurre.
- 11RepasoDe las reglas a un espacio de búsqueda útil
Un estado completo y un modelo de reglas determinan las continuaciones posibles. Clasifica el azar, la visibilidad, los jugadores y las recompensas antes de asignar reglas a los nodos.
Interpreta la profundidad en medias jugadas individuales, estima el crecimiento de la ramificación y reconoce las transposiciones como estados repetidos. Una estrategia elige las acciones del jugador y conserva respuestas para todas las jugadas del oponente; el árbol hace visibles esas responsabilidades.
2Propaga los resultados para encontrar una jugada
13 pasos
Guarda esta unidad para seguir cada Lección Interactiva paso a paso.
- 1IntroducciónRazona hacia atrás desde los resultados
- 2EjemploComienza con las respuestas del oponente
- 3EjemploToma la decisión en la raíz
- 4DesafíoPropaga valores en un árbol nuevo
- 5ExplicaciónDa una función a cada llamada recursiva
- 6ConsejoComprueba el final antes de la siguiente jugada
- 7DesafíoConvierte un valor devuelto por negamax
- 8ExplicaciónDevuelve el vector de utilidades completo
- 9EjemploResuelve primero el jugador más profundo
- 10DesafíoUsa la regla de desempate de otro jugador
- 11ConexiónElige el modelo adecuado del oponente
- 12DesafíoCombina elecciones vectoriales en la raíz
- 13RepasoUsa la preferencia de quien actúa
3Sigue la poda y mejora el orden de búsqueda
12 pasos
Guarda esta unidad para seguir cada Lección Interactiva paso a paso.
- 1IntroducciónDemuestra que una rama no puede ayudar
- 2ExplicaciónMantén las cotas ligadas al camino
- 3EjemploEstablece una alternativa para MAX
- 4EjemploDetén una rama MIN
- 5DesafíoEncuentra el corte opuesto
- 6Idea claveUna cota basta para rechazar
- 7EjemploExplora primero la rama más fuerte de la raíz
- 8ExplicaciónObtén indicios de ordenación con bajo costo
- 9DesafíoInterpreta una cota almacenada en caché
- 10ConexiónInterpreta el costo del mejor caso
- 11DesafíoCombina la ordenación con un recuento de cortes
- 12RepasoPoda a partir de la evidencia y conserva su significado
4Evalúa una frontera sin ocultar la siguiente respuesta
13 pasos
Guarda esta unidad para seguir cada Lección Interactiva paso a paso.
- 1IntroducciónDa una puntuación a las posiciones no terminadas
- 2ExplicaciónMide las características desde un solo punto de vista
- 3EjemploCuenta el material de ajedrez
- 4EjemploAñade una contribución de movilidad
- 5DesafíoCalcula otra puntuación de características
- 6ExplicaciónComprueba la terminación antes del límite de profundidad
- 7EjemploDetecta una captura engañosa
- 8EjemploTermina el intercambio
- 9DesafíoEvalúa un nuevo intercambio
- 10Idea claveDistingue una extensión de la poda no segura
- 11DesafíoUsa el resultado de una búsqueda completa
- 12ConexiónUsa conocimiento almacenado del juego
- 13RepasoDedica profundidad donde la puntuación pueda cambiar
5Calcula esperanzas y comprueba el modelo
12 pasos
Guarda esta unidad para seguir cada Lección Interactiva paso a paso.
- 1IntroducciónDeja que cada tipo de nodo actúe de forma distinta
- 2ExplicaciónUsa un promedio ponderado para el azar
- 3EjemploResuelve MIN después del lanzamiento de moneda
- 4EjemploCompara la segunda acción de la raíz
- 5DesafíoCombina otro par de tipos de nodo
- 6ConsejoNo supongas que las distintas tiradas son igualmente probables
- 7ExplicaciónElige cómo modelar al oponente
- 8EjemploCambia la escala sin cambiar el orden
- 9DesafíoComprueba una transformación
- 10Idea claveUsa cotas antes de omitir resultados del azar
- 11DesafíoDescubre el efecto de un modelo incorrecto del oponente
- 12RepasoAjusta el promedio a la decisión
6Expande un árbol de simulación y elige dónde buscar
16 pasos
Guarda esta unidad para seguir cada Lección Interactiva paso a paso.
- 1IntroducciónAcumula evidencia mientras construyes el árbol
- 2ExplicaciónRegistra visitas y recompensas del jugador de la jugada entrante
- 3ExplicaciónSigue cuatro fases
- 4EjemploSigue el jugador asociado a cada hijo
- 5DesafíoActualiza un resultado diferente
- 6ExplicaciónAñade una bonificación por incertidumbre
- 7EjemploCalcula la primera candidata
- 8EjemploCompara las candidatas restantes
- 9DesafíoCambia el equilibrio
- 10Idea claveTermina la búsqueda con el respaldo acumulado
- 11ConexiónPresta atención a una refutación poco frecuente
- 12EjemploObserva qué cambiaron los programas híbridos
- 13DesafíoElige para un juego nuevo
- 14ConsejoMuestrea el azar con sus pesos reales
- 15DesafíoSepara la prioridad de prueba de la elección de jugada
- 16RepasoDistingue la evidencia, la exploración y el juego
Ejercicios de Búsqueda entre adversarios
Set 1: Modela juegos y sigue decisiones básicas10 Preguntas de Práctica
Pregunta 1 de 10
Mostrar respuestaOcultar respuesta
Pregunta 2 de 10
Mostrar respuestaOcultar respuesta
Pregunta 3 de 10
Mostrar respuestaOcultar respuesta
Pregunta 4 de 10
Mostrar respuestaOcultar respuesta
Pregunta 5 de 10
Mostrar respuestaOcultar respuesta
Pregunta 6 de 10
Mostrar respuestaOcultar respuesta
Pregunta 7 de 10
Mostrar respuestaOcultar respuesta
Pregunta 8 de 10
Mostrar respuestaOcultar respuesta
Pregunta 9 de 10
Mostrar respuestaOcultar respuesta
Pregunta 10 de 10
Mostrar respuestaOcultar respuesta
Set 2: Aplica la propagación de valores y comprueba los supuestos de búsqueda10 Preguntas de Práctica
Guarda esta unidad para ver todas las respuestas y practicar cada set.
Pregunta 1 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 2 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 3 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 4 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 5 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 6 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 7 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 8 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 9 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 10 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Set 3: Combina valores de búsqueda con evidencia limitada10 Preguntas de Práctica
Guarda esta unidad para ver todas las respuestas y practicar cada set.
Pregunta 1 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 2 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 3 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 4 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 5 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 6 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 7 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 8 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 9 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 10 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Set 4: Sigue consecuencias más profundas y compara modelos10 Preguntas de Práctica
Guarda esta unidad para ver todas las respuestas y practicar cada set.
Pregunta 1 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 2 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 3 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 4 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 5 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 6 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 7 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 8 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 9 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 10 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Set 5: Diagnostica fallos de búsqueda y aplica los métodos a otras situaciones10 Preguntas de Práctica
Guarda esta unidad para ver todas las respuestas y practicar cada set.
Pregunta 1 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 2 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 3 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 4 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 5 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 6 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 7 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 8 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 9 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
Pregunta 10 de 10
Mostrar respuestaOcultar respuesta
Guarda esta unidad para ver esta respuesta.
¿Te atascas con una pregunta tuya? Ayuda con Tareas
Términos Clave
Á
Árbol de búsqueda
Árbol de juego
A
Alfa
Algoritmo de cota superior de confianza UCB1
Análisis retrógrado
Argumento del máximo
B
Base de tablas de finales
Beta
Búsqueda de quietud
Búsqueda en árbol con cotas superiores de confianza
Búsqueda en árbol de Monte Carlo
Búsqueda en profundidad
C
Característica
Caso base de la recursión
Cota de corte
D
Decisión minimax
E
Efecto horizonte
Estado de creencia
Estado del juego
Estrategia
Evaluación mediante redes neuronales
Expansión
Expectimax
Expectiminimax
Exploración
Explotación
Extensión singular
F
Factor de ramificación
Función de evaluación
H
Heurística de la jugada asesina
I
Información imperfecta
Información perfecta
Interacción entre características
J
Juego de suma cero
Juego de suma general
Juego determinista
Juego estocástico
Juego resuelto
L
Libro de aperturas
M
Media jugada
Minimax
Minimax heurístico
Modelo de transición
Modelo del oponente
Movilidad
Muestreo de resultados del azar
N
Negamax
Nodo de azar
Número de visitas
O
Ordenación de jugadas
P
Peso
Poda alfa-beta
Poda hacia delante
Política de simulación de partidas
Profundización iterativa
Prueba de terminación
R
Refutación táctica
Regla de desempate
Retropropagación de resultados
S
Selección
Simulación de partida
Supuesto paranoico
T
Tabla de transposiciones
Transformación afín de pendiente positiva
Transformación estrictamente creciente
Transposición
U
Utilidad
Utilidad esperada
V
Valor minimax
Variante principal
Vector de utilidades
- 1Agentes inteligentes
- 2Búsqueda no informada e informada
- 3Problemas de satisfacción de restricciones
- 4Búsqueda entre adversarios
- 5Agentes lógicos y planificación
- 6Redes bayesianas
- 7Modelos ocultos de Markov
- 8Aprendizaje por refuerzo
- 9Aprendizaje supervisado y redes neuronales
- 10Ética, seguridad y gobernanza de la IA
Sobre esta unidad
Crea tus propios Materiales de Estudio
Convierte tus notas, diapositivas y documentos en Guías de Estudio, Preguntas de Práctica, Flashcards y 6 herramientas más.