Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Resolucin de problemas
ndice
Formalizacin Estrategias de bsqueda de soluciones
Bsquedas sin informacin del dominio Bsquedas heursticas
El problema se resuelve usando las reglas en combinacin con una estrategia de control La estrategia de control establece el orden de aplicacin de las reglas y resuelve los conflictos
IRC 2008 - JVR - 5
Tipos de problemas
Problemas de un estado inicial (single-state) q0 = {Madrid} Problemas de mltiples estados iniciales (multiple-state) q0 = {Madrid, Barcelona, Sevilla} Problemas de contingencia (contingency) q0 = {Madrid} pueden fallar los vuelos Problemas de exploracin (online) viajar sin mapa
IRC 2008 - JVR - 7
Estado: serie de monedas Reglas: r1: desplazar $ al hueco de la derecha r2: desplazar al hueco de la izquierda r3: saltar $ a la derecha r4: saltar a la izquierda Card(Q) = 27 ( sirve una bsqueda exhaustiva)
IRC 2008 - JVR - 10
Estado: matriz Reglas: r1: hueco a la derecha r2: hueco a la izquierda r3: hueco arriba r4: hueco abajo Card(Q) = 9! = 362.880 ( sirve una bsqueda exhaustiva)
IRC 2008 - JVR - 11
Complejidad
Estrategias de bsqueda
En definitiva, no slo basta plantear los problemas de una manera formal, sino que hace falta encontrar la forma apropiada de decidir las reglas a aplicar desde el estado inicial para llegar al estado final y el orden en que stas se aplican: las estrategias de bsqueda
Si el nodo destino es un nodo final, devolver como solucin el camino seguido desde el nodo inicial hasta llegar a l
Estrategias de bsqueda
Las estrategias de bsqueda definen el orden para la expansin de nodos (qu N se extrae, dnde se inserta Ni) Cada estrategia hay que evaluarla segn:
la completitud de la solucin
encuentra la solucin, si sta existe?
la complejidad temporal
cuntos nodos se han generado?
la complejidad espacial
cuntos nodos como mximo se han guardado en memoria?
la optimalidad de la solucin
encuentra la solucin de menor coste?
Factor de ramificacin (b), profundidad de la solucin (d), mxima profundidad (m)
IRC 2008 - JVR - 17
Parmetros de evaluacin:
SOAR (a general cognitive architecture for developing systems that exhibit intelligent behavior) http://sitemaker.umich.edu/soar/home
IRC 2008 - JVR - 20
10
11
12
Complejidad espacial:
n de nodos con coste <= coste de la solucin ptima
Estrategia ptima
Pesos positivos: algoritmo de Dijkstra Pesos negativos: algoritmo de Bellman-Ford
13
14
15
Bsquedas heursticas
Se dice de aquel truco o regla emprica que ayuda a encontrar la solucin de un problema (pero que no garantiza que se encuentre)
IRC 2008 - JVR - 32
16
Bsquedas heursticas
Primero el mejor (best-first)
Bsqueda avariciosa (greedy search) Bsqueda A*
Primero el mejor
Se utiliza una funcin de evaluacin (heurstica) para cada nodo y se expande el nodo mejor evaluado no expandido
(misma idea que en la bsqueda de coste uniforme)
17
Greedy search
La funcin de evaluacin estima el coste del nodo-i hasta la meta, con lo que se expande el nodo que parece estar ms cerca de la meta (ejemplo: lnea recta) Una buena funcin de evaluacin puede mejorar drsticamente la bsqueda PROBLEMA: puede atascarse en bucles infinitos
IRC 2008 - JVR - 35
Bsqueda A*
La idea es evitar expandir caminos que ya son muy costosos Funcin de evaluacin: f(n) = g(n) + h(n)
g(n): coste sufrido hasta alcanzar n h(n): coste estimado desde n hasta la meta f(n): coste estimado total hasta la meta pasando por n
Se demuestra que la bsqueda A* alcanza la solucin ptima, siempre que se utilice un heurstico admisible (que no sobreestime el coste real):
h(n) <= h*(n) (el coste real)
IRC 2008 - JVR - 36
18
Ejemplos de heursticos
4 7 6 1 5 3 2 8 1 2 3 4 5 6 8 7
Hill-climbing
Trata de ir decidiendo el camino con menor coste hasta la meta Para ello se queda en cada salto con el nodo destino mejor valorado y sigue expandiendo por l PROBLEMA: puede atascarse en mximos locales, segn el estado inicial
Mximo global
Mximo local
19
Simulated annealing
La idea es escapar de los mximos locales permitiendo movimientos incorrectos, pero reduciendo gradualmente su tamao y frecuencia Se utiliza como parmetro la temperatura T del proceso Si la temperatura se reduce suficientemente despacio, se alcanza la solucin ptima Fue desarrollado en 1953 para modelado de procesos fsicos
IRC 2008 - JVR - 39
20
Qi != Qj |Qi - Qj| != |i - j|
Significado: (Q1, Q2) pueden valer (1,3) (1,4) (2,4) (3,1) (4,1) (4,2)
Ejemplo: Sudoku
http://sudoku.3ontech.com
21
22
Este es el algoritmo bsico sin informacin del dominio para los CSPs Es capaz de resolver hasta 15-reinas
La comprobacin hacia delante evita a priori asignaciones errneas Es capaz de resolver hasta 30-reinas
http://www.iol.ie/~jmchugh/csc302/more/queens/
IRC 2008 - JVR - 46
23
El uso de heursticos inteligentes mejora significativamente el proceso de bsqueda Se puede resolver hasta 1000-reinas ... y ms de eso?
Juegos
Problemas de bsqueda donde interviene al menos un adversario
Tus movimientos por s solos no aseguran la victoria: es necesaria una estrategia de oposicin En general, el tiempo disponible para cada movimiento impone soluciones aproximadas (no sirve la fuerza bruta) Dos tipos de juegos:
Deterministas: no interviene el azar (4-en-raya, ajedrez, damas) No deterministas: el azar est presente (backgammon, parchs, monopoly)
24
Estrategia Minimax
Consiste en elegir el mejor movimiento para uno mismo (MAX) suponiendo que el adversario (MIN) escoger el mejor para s mismo (que tambin juega a ganar) Pasos: Generar el rbol de juego, alternando movimientos (ply) de MAX y MIN y asignndoles los valores apropiados (MAX>0, MIN<0) Calcular la funcin de utilidad de cada nodo final, recorriendo recursivamente los nodos hasta el estado inicial Elegir como jugada a realizar aquel primer movimiento que conduce al nodo final con mayor funcin de utilidad
IRC 2008 - JVR - 49
Las 3 en raya
25
Problema de minimax
El nmero de estados del juego es exponencial al nmero de movimientos
(esto es, en la mayora de juegos, generar el rbol completo es inviable en recursos de memoria)
26
Las 4 en Raya
http://www.it.uc3m.es/jvillena/irc/demos/cuatroenraya/cuatroenraya.html
IRC 2008 - JVR - 53
Las Damas
http://www.it.uc3m.es/jvillena/irc/demos/damas/damas.html
IRC 2008 - JVR - 54
27
Se modelan las probabilidades de la jugada mediante un jugador ficticio (CHANCE) Por tanto, el valor de la funcin de utilidad es simplemente aproximado
IRC 2008 - JVR - 56
28
Sin embargo, muchas de las situaciones del mundo real habitualmente tienen suma no nula
los participantes pueden beneficiarse o perder al mismo tiempo Ejemplos: ciclismo, las actividades econmicas, la guerra En estas situaciones, la moraleja es que resulta mejor maximizar el beneficio conjunto
29