SlideShare una empresa de Scribd logo
1 de 58
Inteligencia Artificial
Búsqueda entre adversarios
Primavera 2009
profesor: Luigi Ceccaroni
2
Juegos
• En los entornos multiagente (cooperativos o
competitivos), cualquier agente tiene que
considerar las acciones de otros agentes.
• La imprevisibilidad de estos otros agentes
puede introducir muchas contingencias en el
proceso de resolución de problemas.
• Los entornos competitivos, en los cuales los
objetivos de los agentes están en conflicto, dan
ocasión a problemas de búsqueda entre
adversarios, a menudo conocidos como
juegos.
3
Juegos
• La teoría matemática de juegos, una rama
de la economía, ve a cualquier entorno
multiagente como un juego.
• Los “juegos” que se tratan en IA son una
clase más especializada:
– de suma cero
– de dos jugadores (jugador MAX, jugador MIN)
– por turnos
– de información perfecta (ajedrez, damas, tres
en raya...) vs. información imperfecta (poker,
stratego, bridge...) 3
4
Juegos
• Los juegos son interesantes porque son
demasiado difíciles de resolver.
• El ajedrez, por ejemplo, tiene un factor de
ramificación promedio de 35 y los juegos van a
menudo a 50 movimientos por cada jugador:
– grafo de búsqueda: aproximadamente 1040 nodos
distintos
– árbol de búsqueda: 35100 o 10154 nodos
• Los juegos, como el mundo real, requieren la
capacidad de tomar alguna decisión (la jugada)
cuando es infactible calcular la decisión óptima.
4
5
Decisiones óptimas en juegos
• Un juego puede definirse formalmente
como una clase de problemas de
búsqueda con los componentes
siguientes:
– El estado inicial
– Una función sucesor, que devuelve una lista
de pares (movimiento, estado)
– Un test terminal, que determina cuándo
termina el juego (por estructura o
propiedades o función utilidad)
– Una función utilidad
5
Búsqueda entre adversarios
Búsqueda entre adversarios
• Aproximación trivial: generar todo el árbol
de jugadas.
• Se etiquetan las jugadas terminales,
dependiendo de si gana MAX o MIN, con un
valor de utilidad de, por ejemplo, “+1” o “-1”.
• El objetivo es encontrar un conjunto de
movimientos accesible que dé como ganador
a MAX.
• Se propagan los valores de las jugadas
terminales de las hojas hasta la raíz.
• Incluso un juego simple como tic-tac-toe es
demasiado complejo para dibujar el árbol de
juegos entero.
Búsqueda entre adversarios
Búsqueda entre adversarios
Búsqueda entre adversarios
Búsqueda entre adversarios
Búsqueda entre adversarios
Búsqueda entre adversarios
Búsqueda entre adversarios
Búsqueda entre adversarios
• Aproximación heurística: definir una
función que nos indique lo cerca que
estamos de una jugada ganadora (o
perdedora).
• En esta función interviene información
del dominio.
• Esta función no representa ningún
coste, ni es una distancia en pasos.
• El algoritmo busca con profundidad
limitada.
• Cada nueva decisión por parte del
adversario implicará repetir parte de la
búsqueda.
Ejemplo: tic-tac-toe
• e (función utilidad) = número de filas, columnas y diagonales completas
disponibles para MAX - número de filas, columnas y diagonales
completas disponibles para MIN
• MAX juega con X y desea maximizar e
• MIN juega con 0 y desea minimizar e
• Valores absolutos altos de e: buena posición para el que tiene que mover
• Controlar las simetrías
• Utilizar una profundidad de parada (en el ejemplo: 2)
Ejemplo: tic-tac-toe
Ejemplo: tic-tac-toe
• Por convención:
– las jugadas ganadoras se evalúan a “+ ”
– las jugadas perdedoras se evalúan a “- ”
Minimax
• Valor-Minimax(n): utilidad para MAX de
estar en el estado n asumiendo que
ambos jugadores jueguen óptimamente.
Minimax
• Valor-Minimax(n):
– Utilidad(n), si n es un estado terminal
– maxs∈Sucesores(n) Valor-Minimax(s), si n es un estado MAX
– mins∈Sucesores(n) Valor-Minimax(s), si n es un estado MIN
Algoritmo minimax
• Calcula la decisión minimax del estado
actual.
• Usa un cálculo simple recurrente de los
valores minimax de cada estado sucesor.
• La recursión avanza hacia las hojas del
árbol.
• Los valores minimax retroceden por el
árbol cuando la recursión se va
deshaciendo.
Algoritmo minimax
• El algoritmo primero va hacia abajo a los
tres nodos izquierdos y utiliza la función
Utilidad para descubrir que sus valores
son 3, 12 y 8.
A
B
Algoritmo minimax
• Entonces el algoritmo toma el mínimo de
estos valores, 3, y lo devuelve como el
valor del nodo B.
• …
A
B D
C
Algoritmo minimax
• Realiza una exploración primero en
profundidad completa del árbol de juegos.
• Si la profundidad máxima del árbol es m, y hay
b movimientos legales en cada punto, entonces
la complejidad :
– en tiempo es O(bm);
– en espacio es
• O(bm) si se generan todos los sucesores a la vez;
• O(m) si se generan los sucesores uno por uno.
• Juegos reales: los costos de tiempo son
inaceptables, pero este algoritmo sirve como
base para el primer análisis matemático y para
algoritmos más prácticos.
Algoritmo minimax
Algoritmo minimax
Algoritmo minimax: versión
alternativa
función Decisión-Minimax(estado) devuelve una acción
variables de entrada: estado, estado actual del juego
v ← Max-Valor(estado)
devolver la acción de Sucesores(estado) con valor v
función Max-Valor(estado) devuelve un valor utilidad
si Test-Terminal(estado) entonces devolver Utilidad (estado)
v ← -∞
para un s en Sucesores(estado) hacer
v ← Max(v, Min-Valor(s))
devolver v
función Min-Valor(estado) devuelve un valor utilidad
si Test-Terminal(estado) entonces devolver Utilidad (estado)
v ← ∞
para un s en Sucesores(estado) hacer
v ← Min(v, Max-Valor(s))
devolver v
Poda alfa-beta
• Problema de la búsqueda minimax: el número
de estados que tiene que examinar es
exponencial con el número de movimientos.
• El exponente no se puede eliminar, pero se
puede dividir en la mitad.
• Es posible calcular la decisión minimax correcta
sin mirar todos los nodos en el árbol.
• La poda alfa-beta permite eliminar partes
grandes del árbol, sin influir en la decisión final.
Minimax con poda α-β
a
c
b e = min(-1, ?) = -1
-1 (gana MIN) ?
No tiene sentido seguir
buscando los otros
descendientes de c.
a
c
b
g
f
d
e
0.03
-0.1 -0.05
e= max (-0.1, -0.05) = -0.05
En c: e= min(-0.05, v(g)) por lo tanto en a:
e = max(0.03, min(-0.05, v(g))) = 0.03
Se pueden pues podar los nodos bajo g; no aportan
nada.
?
El valor de la raíz y la decisión minimax son
independientes de los valores de las hojas podadas.
a
c
b
i
d
0.03
h
e
g
f
-0.1
max
min
max
min
max
e(e) = min(-0.1,v(g))
Como la rama b ya da un 0.03,
Cualquier cosa peor no sirve
=> No hay que explorar g
e(d) = max(e(e), h)
=> Sí hay que explorar h
...
La búsqueda minimax es
primero en profundidad: en
cualquier momento sólo se
consideran los nodos a lo
largo de un camino del
árbol.
Minimax con poda α-β
Poda alfa-beta
• Los dos parámetros alfa y beta describen los
límites sobre los valores que aparecen a lo largo
del camino:
– α = el valor de la mejor opción (el más alto) que se
ha encontrado hasta el momento en cualquier punto
del camino, para MAX
– β = el valor de la mejor opción (el más bajo) que se
ha encontrado hasta el momento en cualquier punto
del camino, para MIN
• La búsqueda alfa-beta actualiza el valor de α y β
según se va recorriendo el árbol y termina la
recursión cuando encuentra un nodo peor que el
actual valor α o β correspondiente.
Poda alfa-beta: ejemplo
Poda alfa-beta: ejemplo
Poda alfa-beta: ejemplo
Poda alfa-beta: ejemplo
Poda alfa-beta: ejemplo
MAX
Vi
{α, β}
Si Vi ≥ β poda β
Si Vi > α modificar α
Retornar α
{α, β}
Si Vi ≤ α poda α
Si Vi < β modificar β
Retornar β
MIN
Vi
Las cotas α y β se transmiten de padres a hijos de 1 en 1 y en el
orden de visita de los nodos.
Poda alfa-beta
Algoritmo Minimax con poda α-β
El recorrido se inicia
llamando a la función
valorMax con α=-∞ y
β=+∞.
En la función valorMax
α es el valor que se
actualiza.
En la función valorMin
β es el valor que se
actualiza.
Poda α-β: ejemplo
39
Poda α-β: ejemplo
40
Poda α-β: ejemplo
41
Poda α-β: ejemplo
42
Poda α-β: ejemplo
43
Poda α-β: ejemplo
44
Poda α-β: ejemplo
45
Poda α-β: ejemplo
46
Poda α-β: ejemplo
47
Poda α-β: ejemplo
48
Poda α-β: ejemplo
49
Poda α-β: ejemplo
50
Poda α-β: ejemplo
51
Poda α-β: ejemplo
52
Poda α-β: ejemplo
53
Poda α-β: ejemplo
54
Poda α-β: ejemplo
55
56
A
C
B
E
D
3
{-∞, +∞}
A
C
B
E
D
3 5
3
{-∞, 3}
A
C
B
D
3
H
F
{3, +∞}
G
J
I
L
K
{3, +∞}
{3, +∞}
{3, +∞}
0
Se puede podar I
ya que es un nodo min y
el valor de
v(K) = 0 es < α = 3
{alpha = -∞, beta = +∞}
{-∞, 3}
{-∞, +∞}
{3, +∞}
A
C
B
D
3
H
F
{3, +∞}
G
J
{3, +∞}
{3, +∞}
5
5
A
C
B
D
3
H
F
{3, +∞}
G
J
{3, 5}
5
5
N
M 7
Podemos podar G pues es
un nodo max y el valor de
M (7) > β = 5
A
C
B
D
3
H
F
4
J
4
{3, 5}
5
5
4

Más contenido relacionado

Similar a 1789019.ppt

Paper
PaperPaper
PaperAlex
 
Métodos de Búsquedas en Inteligencia Artificial
Métodos de Búsquedas en Inteligencia ArtificialMétodos de Búsquedas en Inteligencia Artificial
Métodos de Búsquedas en Inteligencia ArtificialGregorys Gimenez
 
Conecta 4 en C
Conecta 4 en CConecta 4 en C
Conecta 4 en CSNPP
 
Minimax paraconecta4
Minimax paraconecta4Minimax paraconecta4
Minimax paraconecta4EL ESTAFADOR
 
Decisiones Optimas en Juego
Decisiones Optimas en JuegoDecisiones Optimas en Juego
Decisiones Optimas en JuegoKaren Mendoza
 
Criterios de Búsquedas en Inteligencia artificial
Criterios de Búsquedas en Inteligencia artificialCriterios de Búsquedas en Inteligencia artificial
Criterios de Búsquedas en Inteligencia artificialMariy Torrealba
 
Búsqueda entre adversarios
Búsqueda entre adversariosBúsqueda entre adversarios
Búsqueda entre adversariosIsrael Rey
 
Propiedades De Funciones Cuadráticas En Forma EstáNdar
Propiedades De Funciones Cuadráticas En Forma EstáNdarPropiedades De Funciones Cuadráticas En Forma EstáNdar
Propiedades De Funciones Cuadráticas En Forma EstáNdarAngel Carreras
 
Algoritmo minimax
Algoritmo minimaxAlgoritmo minimax
Algoritmo minimaxJeffoG92
 
Inteligencia Artificial - Leonys B
Inteligencia Artificial - Leonys BInteligencia Artificial - Leonys B
Inteligencia Artificial - Leonys BJose Andres
 
Cuadro comparativo inteligencia artificial
Cuadro comparativo inteligencia artificialCuadro comparativo inteligencia artificial
Cuadro comparativo inteligencia artificialGreilimarRodriguezBo
 

Similar a 1789019.ppt (20)

Paper
PaperPaper
Paper
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativo
 
Métodos de Búsquedas en Inteligencia Artificial
Métodos de Búsquedas en Inteligencia ArtificialMétodos de Búsquedas en Inteligencia Artificial
Métodos de Búsquedas en Inteligencia Artificial
 
Conecta 4 en C
Conecta 4 en CConecta 4 en C
Conecta 4 en C
 
Minimax paraconecta4
Minimax paraconecta4Minimax paraconecta4
Minimax paraconecta4
 
Decisiones Optimas en Juego
Decisiones Optimas en JuegoDecisiones Optimas en Juego
Decisiones Optimas en Juego
 
cuadro comparativo
cuadro comparativocuadro comparativo
cuadro comparativo
 
MinMax
MinMaxMinMax
MinMax
 
Criterios de Búsquedas en Inteligencia artificial
Criterios de Búsquedas en Inteligencia artificialCriterios de Búsquedas en Inteligencia artificial
Criterios de Búsquedas en Inteligencia artificial
 
Paralela6
Paralela6Paralela6
Paralela6
 
Búsqueda entre adversarios
Búsqueda entre adversariosBúsqueda entre adversarios
Búsqueda entre adversarios
 
estudiante
estudiante estudiante
estudiante
 
Propiedades De Funciones Cuadráticas En Forma EstáNdar
Propiedades De Funciones Cuadráticas En Forma EstáNdarPropiedades De Funciones Cuadráticas En Forma EstáNdar
Propiedades De Funciones Cuadráticas En Forma EstáNdar
 
Poda Alfa-Beta
Poda Alfa-BetaPoda Alfa-Beta
Poda Alfa-Beta
 
Trabajo
TrabajoTrabajo
Trabajo
 
Algoritmo minimax
Algoritmo minimaxAlgoritmo minimax
Algoritmo minimax
 
Inteligencia Artificial - Leonys B
Inteligencia Artificial - Leonys BInteligencia Artificial - Leonys B
Inteligencia Artificial - Leonys B
 
Minimax
MinimaxMinimax
Minimax
 
Cuadro comparativo inteligencia artificial
Cuadro comparativo inteligencia artificialCuadro comparativo inteligencia artificial
Cuadro comparativo inteligencia artificial
 
PODA ALFA-BETA
PODA ALFA-BETAPODA ALFA-BETA
PODA ALFA-BETA
 

Último

Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfMikkaelNicolae
 
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAINTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAJOSLUISCALLATAENRIQU
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
Condensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismoCondensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismosaultorressep
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSaulSantiago25
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAJAMESDIAZ55
 
PPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfPPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfalexquispenieto2
 
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdfCristhianZetaNima
 
Principales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingPrincipales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingKevinCabrera96
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfAntonioGonzalezIzqui
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrialGibranDiaz7
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptCRISTOFERSERGIOCANAL
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfKEVINYOICIAQUINOSORI
 
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023RonaldoPaucarMontes
 
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERASDOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERASPersonalJesusGranPod
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASfranzEmersonMAMANIOC
 
Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacajeremiasnifla
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdffredyflores58
 
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptxNTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptxBRAYANJOSEPTSANJINEZ
 

Último (20)

Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
 
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAINTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
Condensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismoCondensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismo
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusibles
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
 
PPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfPPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdf
 
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
 
Principales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingPrincipales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards Deming
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrial
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdf
 
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
 
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERASDOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
 
Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpaca
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
 
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptxNTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
 

1789019.ppt

  • 1. Inteligencia Artificial Búsqueda entre adversarios Primavera 2009 profesor: Luigi Ceccaroni
  • 2. 2 Juegos • En los entornos multiagente (cooperativos o competitivos), cualquier agente tiene que considerar las acciones de otros agentes. • La imprevisibilidad de estos otros agentes puede introducir muchas contingencias en el proceso de resolución de problemas. • Los entornos competitivos, en los cuales los objetivos de los agentes están en conflicto, dan ocasión a problemas de búsqueda entre adversarios, a menudo conocidos como juegos.
  • 3. 3 Juegos • La teoría matemática de juegos, una rama de la economía, ve a cualquier entorno multiagente como un juego. • Los “juegos” que se tratan en IA son una clase más especializada: – de suma cero – de dos jugadores (jugador MAX, jugador MIN) – por turnos – de información perfecta (ajedrez, damas, tres en raya...) vs. información imperfecta (poker, stratego, bridge...) 3
  • 4. 4 Juegos • Los juegos son interesantes porque son demasiado difíciles de resolver. • El ajedrez, por ejemplo, tiene un factor de ramificación promedio de 35 y los juegos van a menudo a 50 movimientos por cada jugador: – grafo de búsqueda: aproximadamente 1040 nodos distintos – árbol de búsqueda: 35100 o 10154 nodos • Los juegos, como el mundo real, requieren la capacidad de tomar alguna decisión (la jugada) cuando es infactible calcular la decisión óptima. 4
  • 5. 5 Decisiones óptimas en juegos • Un juego puede definirse formalmente como una clase de problemas de búsqueda con los componentes siguientes: – El estado inicial – Una función sucesor, que devuelve una lista de pares (movimiento, estado) – Un test terminal, que determina cuándo termina el juego (por estructura o propiedades o función utilidad) – Una función utilidad 5
  • 7. Búsqueda entre adversarios • Aproximación trivial: generar todo el árbol de jugadas. • Se etiquetan las jugadas terminales, dependiendo de si gana MAX o MIN, con un valor de utilidad de, por ejemplo, “+1” o “-1”. • El objetivo es encontrar un conjunto de movimientos accesible que dé como ganador a MAX. • Se propagan los valores de las jugadas terminales de las hojas hasta la raíz. • Incluso un juego simple como tic-tac-toe es demasiado complejo para dibujar el árbol de juegos entero.
  • 15. Búsqueda entre adversarios • Aproximación heurística: definir una función que nos indique lo cerca que estamos de una jugada ganadora (o perdedora). • En esta función interviene información del dominio. • Esta función no representa ningún coste, ni es una distancia en pasos. • El algoritmo busca con profundidad limitada. • Cada nueva decisión por parte del adversario implicará repetir parte de la búsqueda.
  • 16. Ejemplo: tic-tac-toe • e (función utilidad) = número de filas, columnas y diagonales completas disponibles para MAX - número de filas, columnas y diagonales completas disponibles para MIN • MAX juega con X y desea maximizar e • MIN juega con 0 y desea minimizar e • Valores absolutos altos de e: buena posición para el que tiene que mover • Controlar las simetrías • Utilizar una profundidad de parada (en el ejemplo: 2)
  • 18. Ejemplo: tic-tac-toe • Por convención: – las jugadas ganadoras se evalúan a “+ ” – las jugadas perdedoras se evalúan a “- ”
  • 19. Minimax • Valor-Minimax(n): utilidad para MAX de estar en el estado n asumiendo que ambos jugadores jueguen óptimamente.
  • 20. Minimax • Valor-Minimax(n): – Utilidad(n), si n es un estado terminal – maxs∈Sucesores(n) Valor-Minimax(s), si n es un estado MAX – mins∈Sucesores(n) Valor-Minimax(s), si n es un estado MIN
  • 21. Algoritmo minimax • Calcula la decisión minimax del estado actual. • Usa un cálculo simple recurrente de los valores minimax de cada estado sucesor. • La recursión avanza hacia las hojas del árbol. • Los valores minimax retroceden por el árbol cuando la recursión se va deshaciendo.
  • 22. Algoritmo minimax • El algoritmo primero va hacia abajo a los tres nodos izquierdos y utiliza la función Utilidad para descubrir que sus valores son 3, 12 y 8. A B
  • 23. Algoritmo minimax • Entonces el algoritmo toma el mínimo de estos valores, 3, y lo devuelve como el valor del nodo B. • … A B D C
  • 24. Algoritmo minimax • Realiza una exploración primero en profundidad completa del árbol de juegos. • Si la profundidad máxima del árbol es m, y hay b movimientos legales en cada punto, entonces la complejidad : – en tiempo es O(bm); – en espacio es • O(bm) si se generan todos los sucesores a la vez; • O(m) si se generan los sucesores uno por uno. • Juegos reales: los costos de tiempo son inaceptables, pero este algoritmo sirve como base para el primer análisis matemático y para algoritmos más prácticos.
  • 27. Algoritmo minimax: versión alternativa función Decisión-Minimax(estado) devuelve una acción variables de entrada: estado, estado actual del juego v ← Max-Valor(estado) devolver la acción de Sucesores(estado) con valor v función Max-Valor(estado) devuelve un valor utilidad si Test-Terminal(estado) entonces devolver Utilidad (estado) v ← -∞ para un s en Sucesores(estado) hacer v ← Max(v, Min-Valor(s)) devolver v función Min-Valor(estado) devuelve un valor utilidad si Test-Terminal(estado) entonces devolver Utilidad (estado) v ← ∞ para un s en Sucesores(estado) hacer v ← Min(v, Max-Valor(s)) devolver v
  • 28. Poda alfa-beta • Problema de la búsqueda minimax: el número de estados que tiene que examinar es exponencial con el número de movimientos. • El exponente no se puede eliminar, pero se puede dividir en la mitad. • Es posible calcular la decisión minimax correcta sin mirar todos los nodos en el árbol. • La poda alfa-beta permite eliminar partes grandes del árbol, sin influir en la decisión final.
  • 29. Minimax con poda α-β a c b e = min(-1, ?) = -1 -1 (gana MIN) ? No tiene sentido seguir buscando los otros descendientes de c. a c b g f d e 0.03 -0.1 -0.05 e= max (-0.1, -0.05) = -0.05 En c: e= min(-0.05, v(g)) por lo tanto en a: e = max(0.03, min(-0.05, v(g))) = 0.03 Se pueden pues podar los nodos bajo g; no aportan nada. ? El valor de la raíz y la decisión minimax son independientes de los valores de las hojas podadas.
  • 30. a c b i d 0.03 h e g f -0.1 max min max min max e(e) = min(-0.1,v(g)) Como la rama b ya da un 0.03, Cualquier cosa peor no sirve => No hay que explorar g e(d) = max(e(e), h) => Sí hay que explorar h ... La búsqueda minimax es primero en profundidad: en cualquier momento sólo se consideran los nodos a lo largo de un camino del árbol. Minimax con poda α-β
  • 31. Poda alfa-beta • Los dos parámetros alfa y beta describen los límites sobre los valores que aparecen a lo largo del camino: – α = el valor de la mejor opción (el más alto) que se ha encontrado hasta el momento en cualquier punto del camino, para MAX – β = el valor de la mejor opción (el más bajo) que se ha encontrado hasta el momento en cualquier punto del camino, para MIN • La búsqueda alfa-beta actualiza el valor de α y β según se va recorriendo el árbol y termina la recursión cuando encuentra un nodo peor que el actual valor α o β correspondiente.
  • 37. MAX Vi {α, β} Si Vi ≥ β poda β Si Vi > α modificar α Retornar α {α, β} Si Vi ≤ α poda α Si Vi < β modificar β Retornar β MIN Vi Las cotas α y β se transmiten de padres a hijos de 1 en 1 y en el orden de visita de los nodos. Poda alfa-beta
  • 38. Algoritmo Minimax con poda α-β El recorrido se inicia llamando a la función valorMax con α=-∞ y β=+∞. En la función valorMax α es el valor que se actualiza. En la función valorMin β es el valor que se actualiza.
  • 56. 56
  • 57. A C B E D 3 {-∞, +∞} A C B E D 3 5 3 {-∞, 3} A C B D 3 H F {3, +∞} G J I L K {3, +∞} {3, +∞} {3, +∞} 0 Se puede podar I ya que es un nodo min y el valor de v(K) = 0 es < α = 3 {alpha = -∞, beta = +∞} {-∞, 3} {-∞, +∞} {3, +∞}
  • 58. A C B D 3 H F {3, +∞} G J {3, +∞} {3, +∞} 5 5 A C B D 3 H F {3, +∞} G J {3, 5} 5 5 N M 7 Podemos podar G pues es un nodo max y el valor de M (7) > β = 5 A C B D 3 H F 4 J 4 {3, 5} 5 5 4