Inteligencia Artificial
|
|
- Juan Luis de la Cruz Herrera
- hace 7 años
- Vistas:
Transcripción
1 Inteligencia rtificial I.T. en Informática de Sistemas, 3º urso académico: 2010/2011 Profesores: Ramón Hermoso y Roberto enteno
2 Tema 2: úsqueda 2. úsqueda 2.1. gentes de resolución de problemas 2.2. úsqueda no informada 2.3. úsqueda heurística 2.4. úsqueda multi-agente
3 Entorno: problemas bien definidos Problemas bien definidos: discreto: se puede concebir el mundo en estados en cada estado hay conjunto finito de percepciones y acciones accesible: el agente puede acceder a las características relevantes del mundo puede determinar el estado actual del mundo puede determinar el estado del mundo que le gustaría alcanzar estático y determinista: el agente puede planificar todas sus acciones, ya que el mundo cambia sólo cuando el agente actúa el resultado de cada acción está totalmente definido y previsible
4 Ejemplo: las Torres de Hanoi Objetivo: Trasladar los discos de la aguja a en el mismo orden Restricción: un disco mayor nunca debe reposar sobre uno de menor tamaño ómo escribir el programa de agente correspondiente?
5 Solución 1: tablas de actuación Tablas de actuación específicos del problema: para cada situación hay una entrada en una tabla de actuación; dicha entrada compila la secuencia de acciones a emprender: cuatro discos en disco 1 de a / disco 2 de a / disco 1 de a / disco 3 de a / disco 1 de a / disco 2 de a / disco 1 de a / disco 4 de a / disco 1 de a / disco 2 de a / disco 1 de a / disco 3 de a / disco 1 de a / disco 2 de a / disco 1 de a problema: limitaciones de memoria
6 Solución 2: algoritmo lgoritmos específicos del problema: el diseñador del agente conoce un método para resolver el problema codifica este método en un algoritmos particular para el problema mejorar la flexibilidad: parametrizar el algoritmo problema: el diseñador ha de anticipar todos los escenarios posibles los entornos reales suelen ser demasiado complejos como para anticipar todas las posibilidades PROEDURE MoverDiscos(n:integer; origen,destino,auxiliar:char); { Pre: n > 0 Post: output = [movimientos para pasar n EGIN discos de la aguja origen a la aguja destino] } IF n = 0 THEN {aso base} writeln; ELSE EGIN {aso recurrente} MoverDiscos(n-1,origen,auxiliar,destino); write('pasar disco',n,'de',origen,'a',destino); MoverDiscos(n-1,auxiliar,destino,origen) END; {fin ELSE} END; {fin MoverDiscos}
7 Solución 3: búsqueda Métodos independientes del problema : modelo declarativo del problema: inicialmente todos los discos reposan en y su tamaño decrece de abajo hasta arriba queremos que todos los discos estén en en el mismo orden podemos mover un disco I a la aguja X, si no hay otro disco por encima de I y, si actualmente hay discos en X, entonces dichos discos han de ser más grandes que I cuanto menos movimientos de discos hagamos mejor algoritmo de búsqueda genérico: genera una solución a cualquier problema representado mediante el modelo simbólico mayor flexibilidad: el diseñador no necesita conocer la solución de antemano es más fácil adaptar el método a nuevas características del problema
8 Solución 3: Modelo declarativo en LIPS Escenario: 3 agujas (,, ) y 2 discos (uno, dos) (deffacts nombre-agujas "Lista con los nombres de las agujas" (agujas )) (deffacts situacion-inicial "Lista describiendo la pos. inicial de los discos en las agujas" (situacion (acciones ) (posicion uno dos base base base)) ) (deffacts situacion-final "Lista describiendo la pos. deseada de los discos en las agujas" (meta base base uno dos base ) ) (deffacts predicado-menor "hechos que definen si un disco es menor que otro" (menor uno dos) (menor uno base) (menor dos base))
9 Solución 3: Modelo declarativo en (defrule mover-x-a-y ) (agujas $??x $?) (agujas $??y $?) (situacion (acciones $?acciones) LIPS (posicion $?inicio?x?disco-x $?medio?y?disco-y $?final) ) (menor?disco-x?disco-y) => (assert (situacion (defrule meta ) (acciones $?acciones (format nil "%s-%s->%s"?x?disco-x?y)) (posicion $?inicio?x $?medio?y?disco-x?disco-y $?final) ) ) (situacion (acciones $?acciones)(posicion $?s-final) ) (meta $?s-final) => (printout t crlf "Solución: " $?acciones crlf) (halt)
10 Solución 3: justes del Modelo Resultados de la búsqueda: 3 agujas 2 discos: Declarativo ("-uno->" "-dos->" "-uno->") 3 agujas 3 discos: ("-uno->" "-dos->" "-uno->" "-tres->" "-uno->" "-dos->" "-uno->") 3 agujas 4 discos: ("-uno->" "-dos->" "-uno->" "-tres->" "-uno->" "-dos->" "-uno->" "-cuatro->" "-uno->" "-dos->" "-uno->" "-tres->" "-uno->" "-dos->" "-uno->") 4 agujas 4 discos: ("-uno->" "-dos->d" "-tres->" "D-dos->" "-cuatro->d" "-dos->" "-tres->d" "-dos->d" "-uno->d")
11 Tema 2: úsqueda 2. úsqueda 2.1. gentes de resolución de problemas 2.2. úsqueda no informada 2.3. úsqueda heurística 2.4. úsqueda multiagente
12 gentes de resolución de problemas mantienen un modelo simbólico del mundo desean modificar el estado del mundo de acuerdo con sus objetivos con tal fin, anticipan los efectos esperados de sus acciones sobre el modelo D E D E
13 iclo de actuación: 1. Definir el modelo 2. Generar los objetivos gentes especializados 3. Percibir y clasificar la situación presente 4. uscar un plan de actuación 5. Ejecutar el plan de actuación Los agentes son especializados: el diseñador dota al agente a priori con conocimientos específicos que definen el modelo que definen los objetivos se supone una percepción y una ejecución ideal
14 úsqueda en espacios de estados Espacio de estados: modelo del mundo representado por un grafo Problema de búsqueda: espacio de estados + actitud del agente Objetivo: encontrar el plan más eficiente que lleve del estado inicial a un estado meta
15 El problema de los bloques Estado: configuración de n bloques Operadores: apilar(x,y): poner X encima de Y Prec.: bloques X e Y están libres Post.: bloque X está encima de Y quitar(y): poner Y en la mesa Prec.: bloque Y está libre oste: Post.: bloque Y está en la mesa la aplicación de cada operador vale una unidad Estado inicial Estado meta
16 Representación del problema Ejemplo con 3 bloques de los bloques Plan óptimo: coste 3
17 onocimientos del agente Representación implícita del problema de búsqueda onocimientos mínimos a priori de un agente: s 0 Estado inicial expandir: s {s i1,..., s in } onjunto finito de sucesores de un estado meta?: s verdad falso Prueba de éxito en un estado c: (s i, s j ) v, v ℵ oste de un operador n 1 ( ) = c ( s ik,s ik+1 ) c s i1 s i2 s in oste de un plan k=1
18 Ejercicio 1 Problema de búsqueda / conocimiento del agente: En una mesa se encuentran dos jarras, una con una capacidad de 3 litros (llamada Tres), y la otra con una capacidad de 4 litros (llamada uatro). Inicialmente, Tres y uatro están vacías. ualquiera de ellas puede llenarse con el agua de un grifo G. simismo, el contenido tanto de Tres como de uatro puede vaciarse en una pila P. Es posible verter todo el agua de una jarra a la otra. No se dispone de dispositivos de medición adicionales. Se trata de encontrar una secuencia de operadores que deje exactamente dos litros de agua en uatro. a) Modele este problema como un problema de búsqueda. on tal fin, defina el estado inicial, el conjunto de estados meta, los operadores (especificando sus precondiciones y post-condiciones), así como el coste de cada operador. b) aracterice el conocimiento a priori del agente de resolución del problema correspondiente? Facilite ejemplos de los resultados de la función expandir. c) Encuentre una solución al problema.
19 Método de búsqueda Método de búsqueda: estrategia para explorar el espacio de estados en cada paso se expande un estado se desarrolla sucesivamente un árbol de búsqueda rbol de búsqueda: Método general de búsqueda: 1. seleccionar nodo hoja 2. comprobar si es nodo meta 3. expandir este nodo hoja
20 lgoritmo de búsqueda Elementos del algoritmo el árbol se representa en base a un registro del tipo nodo abierta es una lista de nodos, que reúne las hojas del árbol vacía? determina si una lista es vacía primero quita el primer elemento de una lista ordinsertar añade un nodo a una lista, clasificado según una función de orden {búsqueda general} abierta s 0 Repetir Si vacía?(abierta) entonces devolver(negativo) nodo primero(abierta) Si meta?(nodo) entonces devolver(nodo) sucesores expandir(nodo) Para cada n sucesores hacer n.padre nodo ordinsertar(n,abierta,<orden>) Fin {repetir}
21 Estados repetidos Problema: el mismo estado puede repetirse varias veces en el árbol de búsqueda puede generarse el mismo subárbol varias veces Soluciones: ignorarlo evitar ciclos simples: no añadir el padre de un nodo al conjunto de sucesores evitar ciclos generales: no añadir un antecesor de un nodo al conjunto de sucesores evitar todos los estados repetidos: no añadir ningún nodo existente en el árbol al conjunto de sucesores
22 lasificación de métodos aracterísticas: completitud: se encuentra una solución si existe optimalidad: se encuentra la mejor solución si hay varias complejidad en tiempo: cuánto se tarda en encontrar la solución? complejidad en espacio: cuánta memoria se utiliza en la búsqueda? Tipos de métodos de búsqueda: no informados: utilizan sólo los conocimientos mínimos heurísticos: además utilizan información aproximada, y específica del problema, para guiar la búsqueda
23 Resumen de los métodos de búsqueda (i) búsqueda en amplitud (iv) búsqueda de coste uniforme 2.3 búsqueda heurística búsqueda general 2.2 búsqueda no informada (vii) ID* (vi) * (iii) úsqueda profundidad iterativa (ii) búsqueda en profundidad (v) búsqueda avara
24 Tema 2: úsqueda 2. úsqueda 2.1. gentes de resolución de problemas 2.2. úsqueda no informada 2.3. úsqueda heurística 2.4. úsqueda multiagente
25 úsqueda en amplitud úsqueda en amplitud: inglés: breadth first search Estrategia: generar el árbol por niveles de profundidad expandir todos los nodos de nivel i, antes de expandir nodos de nivel i+1 Resultado: considera primero todos los caminos de longitud 1, después los caminos de longitud 2, etc. Se encuentra el estado meta de menor profundidad
26 Árbol de búsqueda en amplitud úsqueda en amplitud: Nivel 1 Nivel 2 Nivel 3 Nivel
27 lgoritmo para búsqueda en amplitud lgoritmo: usar el algoritmo general de búsqueda añadir nuevos sucesores al final de la lista abierta abierta funciona como cola inserción al final recuperación desde la cabeza estructura FIFO: siempre expandir primero el nodo más antiguo (es decir: menos profundo) {búsqueda en amplitud} abierta s 0 Repetir Si vacía?(abierta) entonces devolver(negativo) nodo primero(abierta) Si meta?(nodo) entonces devolver(nodo) sucesores expandir(nodo) Para cada n sucesores hacer n.padre nodo ordinsertar(n,abierta,final) Fin {repetir}
28 Árbol de búsqueda en amplitud Lista abierta:
29 omplejidad omplejidad en tiempo y espacio: proporcional al número de nodos expandidos Suponemos que en el árbol de búsqueda el factor de ramificación es b el mejor nodo meta tiene profundidad d Mejor caso 1 d 2 d 1 d... 1+b+...+b d-1 +1 O(b d ) 0 aso medio 1 d 2 d 1 d b+...+b d-1 +b d /2 O(b d ) Peor caso 1 d 2 d 1 d b+...+b d-1 +b d O(b d )
30 Requerimientos de tiempo y memoria Requerimientos de recursos de una búsqueda en amplitud exponencial factor de ramificación efectivo: 10 tiempo: 1000 nodos/segundo memoria: 100 bytes/nodo
31 úsqueda en amplitud: análisis Ventajas: completo: siempre se encuentra un nodo meta si existe óptimo (para operadores de coste uno): siempre se encuentra el nodo meta menos profundo Problemas: complejidad exponencial incluso en el mejor caso los problemas de espacio son aún más graves que los problemas de tiempo
32 Ejercicio 2.2 úsqueda en amplitud: El grafo que se muestra al lado determina un problema de búsqueda. ada nodo representa un estado; los arcos modelan la aplicación de operadores. Suponga que es el estado inicial y que K y E son estados meta a) desarrolle el árbol de búsqueda que genera la búsqueda en amplitud. uál de los nodos meta se encuentra primero? b) indique el orden en que se expanden los nodos c) ponga el estado de la lista abierta en cada paso del algoritmo H D F E G K Z W
33 úsqueda en profundidad úsqueda en profundidad: inglés: depth first search Estrategia: expandir los nodos más profundos primero si se llega a un nodo sin sucesores, dar vuelta atrás y expandir el siguiente nodo más profundo Resultado: el método va explorando un camino actual no siempre se encuentra el nodo de profundidad mínima
34 Árbol de búsqueda en profundidad búsqueda en profundidad (evitando ciclos simples):
35 úsqueda en profundidad lgoritmo: usar el algoritmo general de búsqueda añadir nuevos sucesores en la cabeza de la lista abierta abierta funciona como pila inserción en la cabeza de la lista recuperación desde la cabeza estructura LIFO: siempre expandir primero el nodo más reciente (es decir: el más profundo) al guardar todos los sucesores de un nodo expandido en abierta, se permite la vuelta atrás {búsqueda en profundidad} abierta s 0 Repetir Si vacía?(abierta) entonces devolver(negativo) nodo primero(abierta) Si meta?(nodo) entonces devolver(nodo) sucesores expandir(nodo) Para cada n sucesores hacer n.padre nodo ordinsertar(n,abierta,cabeza) Fin {repetir}
36 Árbol de búsqueda en profundidad Lista abierta:
37 Límites de profundidad Problema: la búsqueda en profundidad sólo es completa en el caso de árboles de búsqueda finitos si existen caminos infinitos sin nodo meta, es posible que la búsqueda en profundidad no termine Solución: búsqueda en profundidad limitada: inglés: depth limited search búsqueda en profundidad con límite de profundidad d * expandir sólo nodos con profundidad d d * incompleto si la profundidad del mejor nodo meta es mayor que d *...
38 úsqueda en profundidad limitada: omplejidad en tiempo: complejidad proporcional al número de nodos expandidos factor de ramificación b / límite de profundidad d* / nodo meta con profundidad d d* mejor caso: O(d) (se expanden sólo los nodos del camino meta) peor caso: O(bd*) (se expanden todos los nodos de prof. d*) omplejidad en espacio: sólo los nodos del camino actual y sus vecinos (sucesores) necesitan almacenarse en la memoria lineal en la profundidad del árbol de búsqueda mejor caso: O(b d) / peor caso: O(b d * )
39 úsqueda en profundidad limitada: Ventajas: análisis mejora significativa de la complejidad en espacio con respecto a la búsqueda en amplitud (lineal frente a exponencial): completo para límites de profundidad d* adecuados Problemas: no es óptima: el nodo meta que se encuentra puede no ser de profundidad mínima es común que unos límites buenos de profundidad sólo pueden establecerse cuando el problema ya haya sido resuelto en general, no se puede asegurar que la profundidad d de un nodo meta sea d d *, es decir no se puede garantizar la completitud.
40 Ejercicio 2.3 úsqueda en profundidad: El grafo que se muestra al lado determina un problema de búsqueda. ada nodo representa un estado; los arcos modelan la aplicación de operadores. Suponga que es el estado inicial y que K y E son estados meta a) desarrolle el árbol de búsqueda que genera la búsqueda en profundidad. uál de los nodos meta se encuentra primero? b) indique el orden en que se expanden los nodos c) ponga el estado de la lista abierta en cada paso del algoritmo d) cómo cambiaría el proceso de búsqueda si aplicamos límites de profundidad, p.ej.: d * =2? H D F E G K Z W
41 Ejercicio 2.4 úsqueda en profundidad (limitada): La búsqueda en profundidad puede implementarse fácilmente con un programa recursivo. a) Especifique una implementación recursiva de la búsqueda en profundidad en pseudocódigo. b) Modifique el pseudocódigo del ejercicio a) para incorporar límites de profundidad.
42 úsqueda de profundización iterativa Inglés: iterative deepening search Idea: esquivar el problema de elegir d *, al probar todos los posibles límites de profundidad Estrategia: enumerar todos los límites de profundidad d, empezando por 0 realizar búsqueda de profundidad limitada hasta d lgoritmo: {búsqueda de profundización iterativa} abierta s 0 desde d 0 hasta hacer si búsqueda-en-prof-limitada(problema, d ) = éxito entonces fin {desde} devolver(nodo-meta)
43 úsqueda de profundización iterativa límite d * =1 límite d * =2 límite d * =3 fallo fallo éxito
44 úsqueda de profundización iterativa: complejidad omplejidad en espacio: igual que la búsqueda en profundidad: sólo se almacenan los nodos vecinos del camino actual lineal en la profundidad del árbol de búsqueda: peor caso O(b d) omplejidad en tiempo: normalmente el coste adicional es relativamente pequeño argumento intuitivo: suponga un árbol de búsqueda de profundidad d los nodos interiores (prof. <d) se expanden varias veces los nodos hoja (prof. = d) se expanden sólo una vez en un árbol de búsqueda exponencial casi todos los nodos son hojas en consecuencia, para árboles de búsqueda grandes, la búsqueda de profundización iterativa no expande muchos más nodos que la búsqueda en profundidad limitada
45 úsqueda de prof. iterativa: complejidad en tiempo omplejidad en tiempo en el peor caso: nº de nodos expandidos por la búsqueda en prof. limitada hasta prof. d: nº de nodos expandidos por la búsqueda de prof. iterativa hasta prof. d:
46 úsqueda de prof. iterativa: complejidad en tiempo oste adicional de tiempo de la búsqueda de profundización iterativa: N id w dl N w ( d) d ( ) = b d+2 2b bd +d +1 b 1 ( ) 2 b d+1 1 b 1 = bd +2 2b bd + d +1 ( b 1) 2 = bd +2 2b bd + d +1 b d +2 b d +1 b +1 = bd +1 b 2b = b 2 b d b 1 b d +1 1 ( bd + d + 1 ) b d+1 b d+1 b d+1 b d+1 ( ) b d +1 b b d+1 d b d b d+1 b + 1 b d+1 + d b d b d+1 b 1 1 b d + 1 b d+1 b d+1
47 úsqueda en prof. iterativa: complejidad en tiempo oste adicional de tiempo de la búsqueda de profundización iterativa: para d se obtiene: Ejemplo: b= 10 para b=10 y nodos meta profundos, la búsqueda de profundización iterativa expande sólo 11% más nodos que la búsqueda en profundidad limitada complejidad en tiempo en el peor caso de la búsqueda de profundización iterativa : O(b d )
48 úsqueda no informada: resultados Resultados del peor caso: factor de ramificación b / profundidad de la mejor solución d / límite de profundidad d * Método no informado preferido
49 Ejercicio 2.5 úsqueda de profundización iterativa: El grafo que se muestra al lado determina un problema de búsqueda. ada nodo representa un estado; los arcos modelan la aplicación de operadores. Suponga que es el estado inicial y que K y E son estados meta a) desarrolle la secuencia de árboles de búsqueda generadas por la búsqueda de profundización iterativa, indicando para cada uno de ellos el orden en que se expanden los nodos b) uál de los nodos meta se encuentra primero? H D F E G K Z W
50 Ejercicio 2.6 úsqueda de profundización iterativa: Describa características relevantes de los espacios de búsqueda en los que el rendimiento de la búsqueda de profundización iterativa es mucho peor que el de la búsqueda en profundidad estándar. Ponga un problema ejemplo que ilustre dichas características.
51 Problema de encontrar rutas Estado: estancia en una ciudad oste de un operador: distancia por carretera a la ciudad vecina Operadores: ir a una ciudad vecina oste de un plan: suma de distancias entre las ciudades visitadas Oradea Neamt Zerind Iasi rad Sibiu 99 Fagaras 118 Vaslui 80 Rimnicu Timisoara Pitesti Lugoj 98 Hirsova Urziceni Mehadia ucarest Eforie Dobreta raiova Giurgiu
52 Problema de encontrar rutas: ejemplo O Z S R T 111 L M 75 D P 138 F G 90 N 85 U I 92 V 98 H 86 E Ejemplo: p 1 = -S-F- c(p 1 ) = 450 p 2 = -S-R-P- c(p 2 ) = 418 Problema: los métodos de búsqueda no informados encuentran el nodo meta de menor profundidad; éste puede no ser el nodo meta de coste mínimo prof.( p1 ) = 3 < 4 = prof.( p2 ) / c(p1) = 450 > 418=c(p2)
53 úsqueda de coste uniforme úsqueda de coste uniforme: Inglés: uniform cost search Idea: guiar la búsqueda por el coste de los operadores Método: g(n): coste mínimo para llegar del nodo inicial al nodo n expandir siempre el nodo de menor coste g primero lgoritmo: almacenar cada nodo con su valor g insertar los nuevos nodos en abierta en orden ascendente según su valor g {búsqueda de coste uniforme} abierta s 0 Repetir Si vacío?(abierta) entonces devolver(negativo) nodo primero(abierta) Si meta?(nodo) entonces devolver(nodo) sucesores expandir(nodo) Para cada n sucesores hacer n.padre nodo ordinsertar(n,abierta,g) Fin {repetir}
54 Ejemplo: úsqueda de coste uniforme g = 0 S g=140 g= 118 Z g =75 R g=220 O F g=280 g=291 g =239 L g=229 g=236 O g=146 g=150 g=300 g=317 S P g=366 T g = 340 M g= 299 Z g = 212 S g= 292 g=290 g=225 S Z T g=268 O g=283 g=287 O g=296 g=300...
55 Lógica de la búsqueda de coste uniforme Z O 151 N 87 I T D S 80 R L 146 M P 138 F G U V 98 H 86 E g = 80 g = 120 g = 160
56 aracterísticas de la búsqueda de coste Dinámica: uniforme la búsqueda de coste uniforme desarrolla sucesivamente todos los caminos por orden de valor g creciente igual que la búsqueda en amplitud si g(n) = prof.(n) para todos los n La búsqueda de coste uniforme es óptima: suponga que se encuentra un camino a un nodo meta n g con g(n g ) = k los valores de g crecen de forma monótona la largo de todos los caminos del árbol de búsqueda por tanto, la búsqueda de coste uniforme expande todos los nodos n g con g(n) < k en particular, si hubiera un nodo meta n g ' con g(n g ') < k, éste se habría expandido antes que n g contradicción; en consecuencia n g es el nodo meta de menor coste (valor de g)
57 aracterísticas de la búsqueda de coste uniforme La búsqueda de coste uniforme es completa: sea n g un nodo meta con g(n g ) = k suponga que no es encontrado por la búsqueda de coste uniforme debe haber un número infinito de nodos n i con g(n i ) k ya que el número de sucesores de un nodo es finito, debe haber un camino infinito p, tal que para todos los nodos n i de p se cumple que g(n i ) k pero la función de coste c asigna un entero positivo a cada operador, y todas las sucesiones crecientes de enteros no tienen límite contradicción; en consecuencia el nodo meta n g será encontrado omplejidad en tiempo y espacio: exponencial, al igual que la búsqueda en amplitud
58 Ejercicio 2.7 úsqueda de coste uniforme: plique la búsqueda de coste uniforme para encontrar una ruta de raiova () a Fagaras (F). Desarrolle el árbol de búsqueda generado por dicho algoritmo, asumiendo que se evitan ciclos simples. Indique el valor g de cada nodo, así como el orden en el que se expanden los nodos.
59 Tema 2: úsqueda 2. úsqueda 2.1. gentes de resolución de problemas 2.2. úsqueda no informada 2.3. úsqueda heurística 2.4. úsqueda multiagente
60 Heurísticas Heurística (griego: heuriskein): encontrar, descubrir Inteligencia rtificial: compila conocimiento empírico sobre un problema / un entorno Interpretación fuerte : una heurística suele facilitar la resolución de un problema, pero no garantiza que se resuelva una heurística es una regla de tres para un problema búsqueda: optimalidad o incluso completitud no garantizados Interpretación débil : método riguroso + información heurística información heurística puede mejorar el rendimiento medio de un método de resolución de problemas, pero no garantiza una mejora en el peor caso búsqueda: mejora de complejidad no garantizado
61 Funciones heurísticas Funciones heurísticas para búsqueda en el espacio de estados: estiman de adecuación de un nodo para ser expandido métodos de búsqueda el mejor primero eligen el nodo más prometedor para expandir Heurística usual: distancia hacia la meta h :N ℵ mide el coste real desde el nodo n hasta el nodo meta más cercano h * :N ℵ es una función heurística que estima el valor de h(n) una función heurística h * es optimista, si h * (n) h(n) para todo nodo n Ejemplos de funciones heurísticas optimistas: mundo de los bloques: número de bloques descolocados encontrar rutas: distancia en línea recta hasta un nodo meta
62 Función heurística para encontrar rutas O Z S R T 111 L M 75 D P 138 F G 90 N 85 U I 92 V 98 H 86 E h * D 242 E 161 F 178 G 77 H 151 I 226 L 244 M 241 N 234 O 380 P 98 R 193 S 253 T 329 U 80 V 199 Z 374
63 úsqueda avara úsqueda avara: Inglés: greedy search Idea: Estrategia: lgoritmo: minimizar el coste estimado para llegar a la meta Entre las hojas del árbol de búsqueda, seleccionar el nodo que minimice h * (n) mantener la lista abierta ordenada por valores crecientes de h * insertar nuevos nodos en abierta según sus valores h * {búsqueda avara} abierta s 0 Repetir Si vacía?(abierta) entonces devolver(negativo) nodo primero(abierta) Si meta?(nodo) entonces devolver(nodo) sucesores expandir(nodo) Para cada n sucesores hacer n.padre nodo ordinsertar(n,abierta,h * ) Fin {repetir}
64 Ejemplo 1: búsqueda avara h * = 366 S h * = 253 T h * = 329 Z h * = 374 F O R h * = 366 h * = 178 h * = 380 h * = 193 S h * = 253 h * =0 Solución subóptima: c(-s-f-) = 450 c(-s-r-p-) = 418
65 Ejemplo 2: búsqueda avara Ejemplo: Nodo inicial: I (Iasi) Nodo meta: F (Fagaras) h F * estima la distancia hasta F h F * F 0 I 226 N 201 V h F * = 226 N V h F * =246 h F * = 201 h F * = 226 N V h F * =246 h F * = 201 h F * =
66 úsqueda avara: análisis nálisis: en general, la búsqueda avara sufre los mismos problemas que la búsqueda en profundidad no es óptima (ejemplo 1) no es completa (ejemplo 2) sin embargo, suele encontrar una solución aceptable de forma rápida omentarios: problema fundamental de la búsqueda avara: sólo considera el coste para llegar al nodo actual no se fija en la distancia restante desde el nodo actual para asegurar la completitud habría que evitar todos los estados repetidos el método es óptimo sólo en aquellos espacios de estados en los que el coste de un nodo n es independiente del camino por el que se llega hasta él
67 Ejercicio 2.8 Problema de las 4 reinas: 4 reinas en un tablero 4x4 estados: casillas de las 4 reinas metal?: ninguna reina amenazada op.: mover una reina a otra casilla de su misma fila coste: el coste de cada op. es cero estado inicial: Nótese: dado que el coste de cada operador es 0, el camino por el cual se llega a un nodo no importa, siempre que al final se encuentre un nodo meta (ninguna reina esta amenazada) a) encuentre una heurística h * para el problema de las 4 reinas b) resuelve el problema aplicando la búsqueda avara con dicho heurística h * omentario: si concebimos cada fila como una variable, podemos replantear el ejercicio como un problema de satisfacción de restricciones
68 úsqueda * Idea: minimizar el coste estimado total de un camino en el árbol de búsqueda combinar el coste para llegar al nodo n (se conoce exactamente: g), y el coste aproximado para llegar a un nodo meta desde el nodo n (estimado por la función heurística h * ) Función heurística de * : f (n) = g(n) + h(n): coste real del plan de mínimo coste que pasa por n f * (n) = g(n) + h * (n): estimación de f Estrategia * : entre las hojas del árbol de búsqueda, elegir el nodo de valor f * mínimo
69 El lgoritmo * {*} lgoritmo * : se basa en la búsqueda general almacenar el valor g de cada nodo expandido mantener la lista abierta ordenada por valores crecientes de f * insertar nuevos nodos en abierta según sus valores f * abierta s 0 Repetir Si vacío?(abierta) entonces devolver(negativo) nodo primero(abierta) Si meta?(nodo) entonces devolver(nodo) sucesores expandir(nodo) Para cada n sucesores hacer n.padre nodo ordinsertar(n,abierta, f * ) Fin {repetir}
70 Ejemplo 1: úsqueda * f * = = 366 S f * = T f * = f * = = 393 = 447 Z = 449 f * = = 646 F O R f * = = 417 f * = = 671 f * = = 413 S f * = = 591 f * = = 450 f * = P f * = S f * = = 526 = 415 = 533 f * = = 607 f * = = 615 R f * = = 418
71 Ejemplo 2: úsqueda * Ejemplo: Nodo inicial: I (Iasi) / nodo meta: F (Fagaras) h F * estima la distancia hasta F f F * = = 226 h F * 180 F 0 I 226 N 201 U 151 V N f * V f * F = F = = 288 = 338 f F * = = 400 U f * I f * F = F = = 385 = 410 f * = = f * = = 499 V H f * = = 682
72 Valores de f * en árboles de búsqueda * Posibles tipos de variación de los valores de f * a lo largo de un camino desde la raíz hasta un nodo n j f * f * f * (n j ) f * (n j ) n 1 n j n 1 n j (a) variable (b) monótono creciente
73 Funciones heurísticas consistentes Definición: Si para todo nodo n i y todo sucesor n j de n i se cumple que h * (n i ) h * (n j ) c(n i,n j ) entonces h * es consistente Interpretación intuitiva: h * es consistente si cumple la desigualdad triangular c(n i,n j ) n i n j h * (n i ) h * (n j ) n g Nota: Si h * es consistente, entonces también es optimista
74 Monotonía de f * con función heurística consistente Lema 1: Si h * es consistente, entonces f * crece de forma monótona en todos los caminos del árbol de búsqueda, es decir: si n j es sucesor de n i, entonces f * (n j ) f * (n i ) Prueba: h * (n j ) h * (n i ) c(n i,n j ) h * (n j ) + g(n j ) h * (n i ) + g(n j ) c(n i,n j ) h * (n j ) + g(n j ) h * (n i ) + g(n i ) + c(n i,n j ) c(n i,n j ) f * (n j ) f * (n i )
75 Valores de f * en árboles de búsqueda * f * h * consistente f * h * consistente f * (n j ) f * (n j ) n 1 (a) variable n j n 1 n j (b) monótono creciente orolario 1: Sea n m el mejor nodo meta. Si h * es consistente, entonces el conjunto de nodos expandidos por el algoritmo * es {n i f * (n i ) f * (n m ) }
76 Lógica de la búsqueda * con función heurística consistente Z O 151 N 87 I T D S 80 R L 146 M P 138 F G U V 98 H 86 E f * = 380 f * = 400 f * = 420
77 Optimalidad de * Teorema 1: Si h * es consistente, entonces el método * es óptimo Prueba: 1. Debido a la consistencia de h *, la búsqueda se realiza por las curvas de nivel correspondientes a f * (lema 1). Se expanden sucesivamente los nodos de menor a mayor valor de f * 2. Por tanto, el primer nodo meta encontrado n tendrá el valor mínimo de f * (e.d. la misma argumentación que en el caso de la búsqueda de coste uniforme) 3. Un nodo meta con valor mínimo de f * también tiene el valor mínimo de g. f * (n ) = g(n )+ h* (n ) Si h * es consistente también es optimista, y entonces h * (n ) = 0 para todo nodo meta 4. En consecuencia, el camino en el árbol de búsqueda desde la raíz hasta el primer nodo meta n es de coste mínimo, y * es óptimo Nota: se puede demostrar el siguiente teorema más general: Si h * es optimista, entonces el método * es óptimo
78 ompletitud de * Teorema 2: Si h * es consistente, entonces el método * es completo Prueba: sea n g un nodo meta con f * (n g ) = k. Suponga que n g no es encontrado por el método * ya que el número de sucesores de un nodo es finito, debe haber un camino infinito p debido al lema 1 (monotonía de f * ) todos los nodos n i de p han de cumplir f * (n i ) k pero la secuencia de valores de g a lo largo de p no tiene límite (véase la prueba de completitud de la búsqueda de coste uniforme) por definición h * (n) 0, por lo que la secuencia de f * (n i ) = g(n i ) + h * (n i ) tampoco tiene límite para los nodos n i a lo largo de p contradicción; en consecuencia, el método * encuentra el nodo meta n g Nota: se puede demostrar que * es completo para cualquier función heurística positiva h *
79 Encontrar Funciones Heurísticas: prendizaje Idea: generar información heurística sobre la marcha realizar varias búsquedas (ligeramente diferentes) en el mismo dominio (p.e. siempre a ucarest, pero desde diferentes ciudades iniciales) En cada paso de una búsqueda, usar el coste real de un paso parar mejorar el valor de h * En la próxima búsqueda se utilizan los valores de h * actualizadas Método: Inicialmente, se realiza una búsqueda con h * (n) = 0 para todos los nodos n En cada paso de n i a n j : [ ] h * (n i ) min n j expandir(n i ) h* (n j ) + c(n i,n j ) l visitar un nodo por segunda vez, se utilizan los valores de h * actualizados Problema: Hay que almacenar los valores h * de todos los nodos en una tabla (memoria!) Inteligencia rtificial 3º ITIS
80 Ejemplo: * con prendizaje de una Función R O F f L *=220+0 f L *= 280 = f L *= 291 = = f L * = 0+0 = 0 f L * = = 239 Heurística S f L * = = 140 f L * = = 118 Z f L * = 75+0 = f S P f L *=366 L *=300 f L *= = = =366 L f L *=229+0 =229 Ejemplo: ir de a L Inicialmente h L *(n) = 0 para todo nodo n f L *= = S f L *= =377 Z f L *= = f O f L * = L *=146+0 = = 225 f S Z T f L *=268 L *=290 f L *= = = =379 n D E F G H I L M N O P R S T U V Z h L * Inteligencia rtificial 3º ITIS
81 Ejemplo: * con prendizaje de una Función f L *= = Z f L * = 0+71 = f L * = = Heurística S f L * = f L * = Z f L * = = 295 = 304 = 363 R O F f L *= = f L *= = 597 f L * = = L Ejemplo: ir de Z a L Inicialmente h L *(n) aprendido anteriormente O f L * = = 213 n D E F G H I L M N O P R S T U V Z h L * Z 151 f L *= =355 S ff L *= =302 = f L *=304+0 =304 f L *= =531 Inteligencia rtificial 3º ITIS
82 Ejemplo: * con prendizaje de una Función Heurística f L * = = S f L * = f L * = Z f L * = = 239 = 229 = L Ejemplo: ir de a L Inicialmente h L *(n) aprendido anteriormente 118 f L *=229+0 =229 f L *= =465 n D E F G H I L M N O P R S T U V Z h L * Inteligencia rtificial 3º ITIS
83 Encontrar de Funciones Heurísticas: Diseño El problema del 8-puzzle: Estado inicial Estados: posición de cada una de las piezas Operadores: oste: mover pieza adyacente a la posición del hueco de 2 a 4 operadores aplicables, según el estado La aplicación de cada operador vale una unidad Estado meta
84 Encontrar de Funciones Heurísticas: Diseño Estado inicial Problemas relajados: menos restricciones para cada operador h * : distancia h exacta en el problema relajado Puzzle: una pieza puede moverse de a... a) siempre 6 5 b) si está vació c) si es adyacente a Estado meta Funciones heurísticas: a) número de piezas descolocadas h a* (s 0 ) = 5 b) suma de saltos necesarios h b* (s 0 ) = 5 c) suma de las distancias de Manhattan h c* (s 0 ) = =7
85 Ejercicio 2.9 Estado inicial Estado meta Heurísticas * : onsidere el 8-puzzle cuyo estado inicial y estado meta se muestra al lado: a) desarrolle el árbol de búsqueda del algoritmo * usando la heurística h a * (número de piezas descolocadas) b)desarrolle el árbol de búsqueda del algoritmo * usando la heurística h c * (suma de distancias Manhattan) c) uál de las heurística expande menos nodos? Por qué? Puede sacar una conclusión general con respecto a la calidad de la funciones heurísticas?
86 alidad de las Funciones Heurísticas Definición: Sean h 1 * y h 2 * dos funciones heurísticas optimistas. h 1 * es más informada que h 2*, si para todo nodo n se cumple que Ejemplo: h 1* (n ) h 2 * (n ) en el 8-puzzle, h c * es más informada que h a * las piezas bien colocadas no cuenta en h a * ni en h c * la distancia Manhattan de cada pieza descolocada es al menos 1 en consecuencia, en toda posible configuración n del 8-puzzle la suma de las distancias distancias es igual o mayor que la suma de piezas descolocadas para todas las configuraciones n se cumple h c* (n ) h a * (n )
87 alidad de las Funciones Heurísticas Lema 2: Sean h 1 * y h 2 * dos funciones heurísticas consistentes. Si h 1 * es más informada que h 2*, entonces * (h 2 * ) expande al menos tantos nodos como * (h 1 * ) Prueba: 1. Para el mejor nodo meta n m se cumple que f * (n m ) = f 1* (n! m ) = f 2* (n m ) 2. Ya que h 1 * es más informada que h 2*, para todos los nodos n se cumple que h 1* (n ) h 2 * (n ), y por tanto f 1 * (n ) f 2 * (n ) 3. Por (1) y el orolario 1 se sigue que * (h 1 * ) expande todos los nodos n j con f 1* (n j ) f * (n m ) * (h 2 * ) expande todos los nodos n j con f 2* (n j ) f * (n m ) 4. Por (2), se verifica que f 1* (n j ) f * (n m ) f 2* (n j ) f * (n m ) 5. Por (3) y (4) se concluye que cualquier nodo expandido por * (h 1* ) también será expandido por * (h 2 * )
88 alidad de las Funciones Heurísticas Nota: Se puede demostrar que el lema 2 también se cumple si se asume sólo que h 1 * y h 2 * sean funciones heurísticas optimistas. onclusión: preferir grandes valores de h *, siempre que se mantenga optimista si hay varias funciones heurísticas optimistas: h * ( n) = max h * 1 ( n),h * * 2 ( n),,h m ( n) ( )
89 omplejidad de * El número de nodos expandidos por * depende de la precisión de h * : si h * (n) = h(n) para todos los nodos n: información completa: complejidad lineal ( sin contar la complejidad de computar h *!) calcular h * (n) suele equivaler a resolver el problema completo si h * (n) = 0 para todos los nodos n: * degenera a la búsqueda de coste uniforme resultados generales [Russell, pág. 101]: en el peor caso, * es lineal sólo si para todos los nodos n, h (n) h * (n) O(c) en el peor caso, * es polinomial sólo si para todos los nodos n, h (n) h * (n) O(log h(n)) en escenarios reales, el error heurístico h (n) h * (n) crece, al menos, de forma proporcional al coste h (n) aún así, suele haber una mejora notable en comparación con métodos no informados
90 Resultados experimentales omparación experimental: número de nodos expandidos en el problema del 8-puzzle varias profundidades d de la solución media sobre 100 instancias del problema
91 Resultados acerca de * : nálisis de * * es completo y óptimo para funciones heurísticas consistentes (optimistas) la complejidad en espacio y tiempo de * es proporcional al número de nodos expandidos * es de eficiencia óptima [véase Russell y Norvig] para todo heurística optimista h *, se verifica que no existe otro algoritmo que asegure optimalidad y a la vez garantice expandir menos nodos sin embargo, al igual que en el caso de la búsqueda en amplitud (véase la tabla correspondiente), en situaciones límite los problemas de espacio de * son más graves que los problemas de tiempo
92 ID * ID * : Iterative Deepening * (Korf 1985) Idea: aplicar búsqueda de profundización iterativa, pero en vez de usar sucesivos límites de profundidad, usar sucesivos límites f * Estrategia: usar inicialmente el valor f * de la raíz como limite f * realiza búsqueda en profundidad estándar hasta llegar al limite f * actual (es decir: los valores f * no influyen en el orden de expandir los nodos) curiosear encima del límite f * por el nodo con el siguiente valor f * más bajo repetir el proceso con dicho valor f * como nuevo limite f * aracterísticas: al igual que la búsqueda en profundidad, ID * desarrolla un camino actual sólo los nodos vecinos de dicho camino actual se mantienen en le memoria
93 úsqueda ID * : Ejemplo (1) límite f * = 366 f * = = 366 S f * = T f * = f * = = 393 = 447 Z = 449 f * = = 646 F O R f * = = 417 f * = = 526 f * = = 413 S f * = = 591 f * = = 450 f * = P f * = S f * = = 526 = 415 = 533 f * = = 607 f * = = 615 R f * = = 418
94 úsqueda ID * : Ejemplo (2) límite f * = 393 f * = = 366 S f * = T f * = f * = = 393 = 447 Z = 449 f * = = 646 F O R f * = = 417 f * = = 526 f * = = 413 S f * = = 591 f * = = 450 f * = P f * = S f * = = 526 = 415 = 533 f * = = 607 f * = = 615 R f * = = 418
95 úsqueda ID * : Ejemplo (3) límite f * = 413 f * = = 366 S f * = T f * = f * = = 393 = 447 Z = 449 f * = = 646 F O R f * = = 417 f * = = 526 f * = = 413 S f * = = 591 f * = = 450 f * = P f * = S f * = = 526 = 415 = 533 f * = = 607 f * = = 615 R f * = = 418
96 úsqueda ID * : Ejemplo (4) límite f * = 415 f * = = 366 S f * = T f * = f * = = 393 = 447 Z = 449 f * = = 646 F O R f * = = 417 f * = = 526 f * = = 413 S f * = = 591 f * = = 450 f * = P f * = S f * = = 526 = 415 = 533 f * = = 607 f * = = 615 R f * = = 418
97 úsqueda ID * : Ejemplo (5) límite f * = 417 f * = = 366 S f * = T f * = f * = = 393 = 447 Z = 449 f * = = 646 F O R f * = = 417 f * = = 526 f * = = 413 S f * = = 591 f * = = 450 f * = P f * = S f * = = 526 = 415 = 533 f * = = 607 f * = = 615 R f * = = 418
98 úsqueda ID * : Ejemplo (6) límite f * = 418 f * = = 366 S f * = T f * = f * = = 393 = 447 Z = 449 f * = = 646 F O R f * = = 417 f * = = 526 f * = = 413 S f * = = 591 f * = = 450 f * = P f * = S f * = = 526 = 415 = 533 f * = = 607 f * = = 615 R f * = = 418
99 lgoritmo ID * lgoritmo: un subprograma bp-limite-f que realiza búsqueda en profundidad hasta un límite f * dado devuelve el siguiente f * más bajo un subprograma ID* que actualiza el límite f * y detecta éxito/fallo {ID*} limite-f f*(s 0 ) Repetir limite-f bp-limite-f(limite-f) Si éxito ent. devolver(solución) Si limite-f = ent. devolver(fallo) Fin {repetir} {bp-limite-f} abierta s 0 f-siguiente Repetir Si vacia?(abierta) entonces devolver(f-siguiente) {fallo} nodo primero(abierta) Si meta?(nodo) entonces devolver(nodo) {éxito} sucesores expandir(nodo) Para cada n sucesores hacer Si f*(n ) límite-f entonces n.padre nodo ordinsertar(n,abierta,cabeza) Sino f-siguiente min(f-siguiente, f*(n )) Fin {repetir}
100 Ejercicio 2.10 lgoritmo ID * : plique el algoritmo ID * al problema del 8- puzzle del ejercicio 2.8. Simule a mano el proceso de búsqueda. uántos diferentes límites f * son explorados?
101 lgunos resultados sobre ID * : nálisis de ID * completo y óptimo para funciones heurísticas optimistas, al igual que * complejidad en espacio: δ : coste de un operador / m: mejor nodo meta / b: factor de ramificación / d: profundidad de m complejidad en tiempo: muchos valores diferentes de f * (p.e. búsqueda de rutas): puede elevar la complejidad en tiempo de * al cuadrado pocos valores diferentes de f * (p.e. 8 puzzle): proporcional a la complejidad en tiempo de * mejoras: equilibrar expansión repetida y uso de memoria SM * (Simplified Memory-bounded * ) [Russell 1992] RFS (Recursive est First Search) [Korf 1992]
102 Resumen Resultado clave: algoritmos * e ID * la información heurística puede mejorar la eficiencia de un método de búsqueda sin sacrificar su optimalidad Extensiones: úsqueda aproximada: acotar el espacio de búsqueda con información heurística fuerte (e.d. sacrificando las garantías de optimalidad y completitud búsqueda guiada por subobjetivos (island-driven search), búsqueda jerárquica, úsqueda en línea: engranar búsqueda (elección de acciones) y acción/percepción ejemplos búsqueda de horizonte (limited-horizon search), * en tiempo real (RT * ),
103 Tema 2: úsqueda 2. úsqueda 2.1. gentes de resolución de problemas 2.2. úsqueda no informada 2.3. úsqueda heurística 2.4. úsqueda multiagente
104 Resolución de problemas con múltiples agentes
105 gentes especializados Situación: Múltiples agentes de resolución de problemas actúan en el mismo entorno Las acciones de los demás agentes influyen en la medida de rendimiento de cada agente Ningún agente puede controlar las acciones de los demás agentes Hasta cierto punto, un agente puede predecir las acciones de los demás Tipos de problemas multiagente : Escenarios cooperativos: metas compartidas Escenarios parcialmente cooperativos: algunas metas compartidas, otras opuestas Escenarios antagónicos: metas opuestas
106 Ejemplo: el mundo síncrono de los bloques Dos agentes conviven en el mundo de los bloques: cada agente tiene sus propia situación meta los agentes evalúan la situación actual respecto a su distancia a su meta dicha distancia viene dada por el plan más corto que lleva a la meta del agente α 1 situación inicial α α 1 : 3 2 metas α distancia 2 distancia 4 ctuación simultánea: los agentes pueden actuar en paralelo (de modo síncrono) las acciones (planes) pueden ejecutarse simultáneamente, siempre que no accedan al mismo bloque a la vez el coste de un plan viene dado por el tiempo necesario para ejecutarlo
107 Escenarios cooperativos α 1 Estado inicial α 2 Estados meta α 2 α Potencial para la cooperación: metas compartidas: los dos agentes desean alcanzar la misma situación acuerdo respecto a realizar un plan conjunto P: un agente trabaja en la pila izquierda, y el otro simultáneamente el la pila derecha: P = ( [quitar(1), quitar(2)], [apilar(4,1), apilar(3,2)] ) los dos agentes sacan provecho si se ejecuta el plan conjunto
108 Escenarios antagónicos situación inicial metas α 1 α 2 α α Potencial para el conflicto: metas totalmente antagónicas: todos los bloques deben colocarse en sitios diferentes, dependiendo del agente no hay acuerdo, ni siquiera respecto a partes de un plan conjunto: P a1 = ( [apilar(2,1), NOP], [apilar(3,2), NOP] ) P a2 = ( [apilar(1,2), NOP], [apilar(4,1), NOP] ) todo lo que es bueno para a 1 es malo para a 2, y viceversa
109 Escenarios parcialmente cooperativos α 1 α α 1 metas α 2 situación inicial Potencial para la cooperación y el conflicto: metas parcialmente compartidas: los dos agentes desean que los bloques 1, 3 y 4 estén en la mesa, sin embargo a 1 prefiere que el bloque 2 esté encima de 3, mientras que a 2 prefiere que esté encima de 4 acuerdo sólo sobre partes de un plan conjunto P : P a1 = ( [quitar(5), quitar(6)], [quitar(4), quitar(3)], [apilar(2,3), NOP ] ) P a2 = ( [quitar(5), quitar(6)], [quitar(4), quitar(3)], [apilar(2,4), NOP ] ) los dos agentes sacan provecho si se ejecuta un plan conjunto, pero dependiendo del plan un agente gana más que otro
110 Escenarios antagónicos: Juegos Juegos: ejemplo clásico de escenarios antagónicos (juegos de suma nula) el escenario está totalmente definido por las reglas del juego, y los agentes jugadores los conocen completamente Tipos de juegos: número de jugadores : bipersonales (damas) / múltiples jugadores (Monopoly) elementos de azar: con elementos de azar (backgammon) / sin elementos de azar (damas) información: información perfecta (damas) / información incompleta (póker) juegos bipersonales con información perfecta y sin elementos de azar
111 Ejemplo: Tres en Raya Tres en Raya: dos jugadores (min y max) los jugadores van poniendo fichas en las casillas de un tablero 3x3 max usa las fichas X / min usa las fichas O una casilla puede contener como mucho una ficha Reglas: Inicialmente el tablero está vacío max empieza y los jugadores se van alternando en poner sus fichas max gana si obtiene una raya de tres fichas X min gana si obtiene una raya de tres fichas O si todas las casillas están ocupadas sin que haya una raya de 3 fichas del mismo tipo, hay empate gana max gana min empate
112 Modelo de juegos bipersonales onocimientos mínimos a priori de los agentes max y de min : s 0 posición inicial (estado inicial) expandir: s {s i1,..., s in } cjto. finito de posiciones sucesores terminal?: s true false prueba terminal U: s k, k R función parcial de utilidad del juego Nótese: la función expandir codifica las jugadas (acciones) permitidas en una posición s supone implícitamente que los jugadores se alternan en realizar las jugadas la función de utilidad está definida sólo en los estados terminales s juegos de suma nula: max gana si sólo si min pierde gana max: U(s) = + / gana min : U(s) = / empate: U(s) = 0
113 Ejemplo: Árbol de juego para Tres en Raya max min... max... min terminal 0 + utilidad
114 Árboles de juego Definición: Sea N un conjunto de nodos, E N N, L = { max, min }, y G = ( N, E, L ) un árbol etiquetado. G es un árbol de juego si G no es vacío la raíz está etiquetada max todos los sucesores de max son etiquetados min todos los sucesores de min son etiquetados max Observaciones: cada nivel del árbol de juego representa un ply (media jugada) en los nodos etiquetados max, es el turno del agente max en los nodos etiquetados min, es el turno del agente min las hojas de un árbol de juego (completamente desarrollado) representan las posiciones terminales del juego
115 Estrategias Problema del agente max: cómo determinar su mejor jugada? max podría aplicar métodos de búsqueda estándar, usando las posiciones en las que él gana como estados meta pero min no querría realizar las acciones que el plan de max prevé para él! Estrategia: define las jugadas de max para cada posible jugada de min un subárbol del árbol de juego Estrategia óptima (o racional) : la estrategia que implica el mejor resultado garantizado para max escenarios totalmente antagónicos con agentes racionales: max puede asumir que min hará lo mejor para sí mismo, lo que a su vez es lo peor para max la estrategia óptima para max es la estrategia minimax: maximizar la utilidad mínima en cada jugada
116 Ejemplo: estrategia minimax estrategia óptima: mejor jugada de max: a 1 max 0 a 1 a 2 a 3 min a 1,1 a 1,2 a 1,3 a 2,1 a 2,2 a 2,3 a 3,1 a 3,2 a 3,3 terminal utilidad
117 Método minimax Método Minimax: 1. Generar el árbol de juego completo 2. plicar la función de utilidad en cada nodo terminal 3. Propagar las utilidades hacia arriba en los nodos max, usar la utilidad máxima de los sucesores en los nodos min, usar la utilidad mínima de los sucesores 4. Eventualmente los valores de utilidad llegan al nodo raíz (max) 5. La jugada óptima de max es la que lleva al sucesor de utilidad máxima
Búsqueda no-informada
Inteligencia rtificial úsqueda no-informada Ingeniería Informática, 4º urso académico: 2011/2012 Profesores: Ramón Hermoso y Matteo Vasirani 1 Inteligencia rtificial Tema 2: gentes basados en úsqueda Resumen:
Búsqueda Heurística (1ª parte)
Búsqueda Heurística (1ª parte) Ingeniería Informática, 4º Curso académico: 2011/2012 Profesores: Ramón Hermoso y Matteo Vasirani 1 Tema 2: Agentes basados en Búsqueda Resumen: 2. Agentes basados en búsqueda
Búsqueda en línea y Búsqueda multiagente
Búsqueda en línea y Búsqueda multiagente Ingeniería Informática, 4º Curso académico: 2011/2012 Profesores: Ramón Hermoso y Matteo Vasirani 1 Tema 2: Agentes basados en Búsqueda Resumen: 2. Agentes basados
Inteligencia Artificial
I.T. en Informática de Sistemas, 3º Curso académico: 2009/2010 Profesores: Sascha Ossowski y Ramón Hermoso 1 Tema 2: Búsqueda Resumen: 2. Búsqueda 2.1. Agentes de resolución de problemas 2.2. Búsqueda
Tema 2: Juegos unipersonales
Tema : Juegos unipersonales Resumen:. Juegos unipersonales.. Representación básica.. Juegos con información completa.. Recursos limitados en juegos con información completa.. Juegos con información incompleta
Hoja de Problemas Tema 2 Búsqueda no-informada
Ejercicio 1: 1.1. El enfoque de los Agentes Inteligentes concibe el objetivo de la Inteligencia Artificial como el intento de construir sistemas (a) (b) (c) (d) que actúen como las personas (tipo Eliza).
Algoritmos de búsqueda informada
Teoría 4: Algoritmos de búsqueda informada Sistemas Inteligentes Sistemas Inteligentes 1 Carreras: Ingeniería en Informática Ingeniería en Computación (Optativa) e-mail: lcagnina@unsl.edu.ar Departamento
Tema 2: Búsqueda. Formalización de la resolución de problemas Ejemplos Procedimiento general de búsqueda Estrategias de control Búsqueda heurística
Tema 2: Búsqueda Formalización de la resolución de problemas Ejemplos Procedimiento general de búsqueda Estrategias de control Búsqueda heurística 1 Resolución de problemas: formalización CONCEPTO BÁSICO:
(b) Cuál es la desventaja principal de una heurística con aprendizaje? es más informada que otra función heurística optimista h 2 *?
UNIVERIDD REY JUN CRLO CURO 0-0 INTELIGENCI RTIFICIL Hoja de Problemas Tema Ejercicio : Conteste a las siguientes preguntas: (a) Cómo funciona una heurística con aprendizaje? olución: Una heurística con
Tema 2: Búsqueda. Resolución de problemas: formalización. Búsqueda en espacio de estados. Ejemplos. Búsqueda en espacio de estados.
Tema 2: Búsqueda Formalización de la resolución de problemas Ejemplos Procedimiento general de búsqueda Estrategias de control Búsqueda heurística Resolución de problemas: formalización CONCEPTO BÁSICO:
Semana 4: Métodos de Búsqueda No informados. Prof. Oscar Benito Pacheco.
Semana 4: Métodos de Búsqueda No informados Prof. Oscar Benito Pacheco. Estrategias de Búsqueda Búsqueda No Informada Búsqueda Informada (Ciega) (Heurística) 1. Búsqueda preferente por amplitud 2. Búsqueda
Algoritmos de Búsqueda Informados. Tomas Arredondo Vidal 16/6/2010
Algoritmos de Búsqueda Informados Tomas Arredondo Vidal 16/6/2010 Algoritmos de Búsqueda Informados Contenidos Best-first search Greedy best-first search A * search Heurísticas Búsqueda local Best-first
Resolviendo Problemas Buscando Soluciones. Tomás Arredondo Vidal 16/6/2010
Resolviendo Problemas Buscando Soluciones Tomás Arredondo Vidal 16/6/2010 Resolviendo Problemas Buscando Soluciones Contenidos Agentes que resuelven problemas Tipos de problemas Formulación de problemas
Búsqueda en espacio de estados
Búsqueda en espacio de estados Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Abstracción Problema Representación como espacio de estados Implementación del
Búsqueda en espacio de estados
Búsqueda en espacio de estados Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Inteligencia Artificial CCIA, US Búsqueda en espacio de estados IA 1 / 35 Metodología
Hoja de Ejercicios. Temas 1 y 2
Hoja de Ejercicios Temas 1 y 2 Ejercicio 1: Complete las siguientes frases con las alternativas especificadas. Si existen varias alternativas verdaderas, márquelas todas. 1.1. Cuál(es) de las siguientes
Inteligencia Artificial
Inteligencia Artificial II Resolución de problemas mediante búsquedas 3. Búsquedas informadas Dr. Edgard Iván Benítez Guerrero 1 Búsqueda informada o heurísticas La búsqueda no informada es ineficiente
Inteligencia Artificial
Inteligencia Artificial Tema 2 Búsquedas Dr. Jesús Antonio González Bernal Contenido Estructura General de un PSA (Problem Solving Agent) Formulación de un PSA Algoritmos de Búsqueda de Sl Soluciones Aplicaciones
3ra. Practica. Algoritmos de Búsqueda. Inteligencia Artificial Prácticas 2004/2005
3ra. Practica Algoritmos de Búsqueda Inteligencia Artificial Prácticas 2004/2005 Algoritmos de Búsqueda Algoritmos Básicos: (búsqueda no informada) Búsqueda preferente por amplitud Búsqueda preferente
Búsqueda Heurística III
Búsqueda Heurística III Pedro Meseguer IIIA-CSIC Bellaterra, Spain pedro@iiia.csic.es Búsqueda heurística Búsqueda informada por la función heurística f(n) Algoritmos: esquema primero el mejor (best-first)
No se permiten libros ni apuntes. Ejercicio 1 Ejercicio 2 Ejercicio 3 Ejercicio 4 TOTAL NOTA
Junio Duración: h Ejercicio Ejercicio Ejercicio Ejercicio TOTAL NOTA Ejercicio : [ puntos: respuesta acertada = +., respuesta incorrecta =.] Complete las siguientes frases y conteste a cada una con verdadero
Búsqueda Informada. Heurísticas
Búsqueda Informada Heurísticas Búsqueda informada: heurística Ejemplo de heurística para el problema del viajante de comercio Clasificación de heurísticas Ventajas de las heurísticas Aplicando heurísticas
Inteligencia Computacional
Inteligencia Computacional Búsqueda: sin información otros algoritmos, con información http://blancavg.com/tc3023/ Blanca A. Vargas Govea * blanca.vg@gmail.com * Agosto 17, 2012 B D A A C E B I I F C G
Inteligencia Artificial
Inteligencia Artificial Grupo PLG Universidad Carlos III de Madrid IA. 2008 Grupo PLG (UC3M) Inteligencia Artificial Inteligencia Artificial 1 / 70 Indice 1 Introducción 2 Búsqueda sin información Búsqueda
Métodos de Inteligencia Artificial
Métodos de Inteligencia Artificial L. Enrique Sucar (INAOE) esucar@inaoep.mx ccc.inaoep.mx/esucar Tecnologías de Información UPAEP Búsqueda Representación Tipos búsquedas: Sin información Con información
Inteligencia Artificial II Unidad Plan 2010-Ingeniería en Sistemas Computacionales
Inteligencia Artificial II Unidad Plan 2010-Ingeniería en Sistemas Computacionales Rafael Vázquez Pérez Unidad II:Técnicas de Búsqueda. 2.1. Solución de problemas con búsqueda. 2.2. Espacios de estados.
ALGORITMOS DE BÚSQUEDA. Ing. Ronald A. Rentería Ayquipa
ALGORITMOS DE BÚSQUEDA Algoritmos de Búsqueda Tipos Tipos de algoritmos de búsqueda ALGORITMOS DE BÚSQUEDA NO INFORMADA ALGORITMOS DE BÚSQUEDA HEURÍSTICA Búsqueda no informada Introducción Búsqueda no
Métodos de Búsqueda para juegos humano-maquina. PROF: Lic. Ana María Huayna D.
Métodos de Búsqueda para juegos humano-maquina PROF: Lic. Ana María Huayna D. Tópicos 1. Introducción 2. Juegos 3. Estrategias de Juego 4. Algoritmo Minimax 5. Algoritmo Poda Alfa-Beta 1.- Introducción
Estado 3.2 (coste = 9)
Búsqueda heurística Fernando Berzal, berzal@acm.org Búsqueda heurística Búsqueda primero el mejor p.ej. búsqueda de coste uniforme [UCS] Heurísticas Búsqueda greedy El algoritmo A* Heurísticas admisibles
Inteligencia Artificial Búsqueda informada y exploración
Inteligencia Artificial Búsqueda informada y exploración Primavera 2008 profesor: Luigi Ceccaroni Introducción La búsqueda informada utiliza el conocimiento específico del problema. Puede encontrar soluciones
Inteligencia Artificial Búsqueda informada y exploración
Inteligencia Artificial Búsqueda informada y exploración Introducción La búsqueda informada utiliza el conocimiento específico del problema. Puede encontrar soluciones de una manera más eficiente. Una
Agentes que resuelven problemas
Agentes que resuelven problemas 1. Formulación de meta (decidir que estados son objetivo) y del problema (decidir que acciones y estados se van a considerar) 2. Buscar una solución (examinar posibles acciones
Solución de Problemas Mediante Búsqueda (2) Carlos Hurtado Depto de Ciencias de la Computación, Universidad de Chile
Solución de Problemas Mediante Búsqueda (2) Carlos Hurtado Depto de Ciencias de la Computación, Universidad de Chile Manhattan Bike Curier (Acíclico) Ref. Curso IA U. of Toronto Algoritmo Genérico de Búsqueda
No se permiten libros ni apuntes. Ejercicio 1 Ejercicio 2 Ejercicio 3 Ejercicio 4 TOTAL NOTA
PLLID: MR: o se permiten libros ni apuntes jercicio 1 jercicio 2 jercicio 3 jercicio 4 TTL T jercicio 1: [XX puntos: respuesta acertada = +2, respuesta incorrecta = 2] Complete las siguientes frases y
Curso /10/12. Inteligencia Artificial (30223) Lección 4. Búsqueda Informada. Índice. Descripción informal de la búsqueda en grafo
Inteligencia Artificial (30223) Lección 4. Búsqueda Informada Curso 202-203 José Ángel Bañares 7/09/203. Dpto. Informática e Ingeniería de Sistemas. Índice Informada= Utiliza conocimiento problema Estrategias
Ejemplo. Ejemplo. 8-puzzle. Formulación de un Problema de Búsqueda. Inteligencia Artificial 2º cuatrimestre de Algoritmos de Búsqueda
ormulación de un Problema de úsqueda lgoritmos de úsqueda onsideraciones de iseño e mplementación estado inicial conjunto de acciones Se usa el término operador para denotar la descripción de una acción
Solución de Problemas Mediante Búsqueda (1) Carlos Hurtado L. Depto de Ciencias de la Computación, Universidad de Chile
Solución de Problemas Mediante Búsqueda (1) Carlos Hurtado L. Depto de Ciencias de la Computación, Universidad de Chile Contenido Solución de problemas mediante búsqueda Modelación de problemas como búsquedas
UNIVERSIDAD MAYOR DE SAN SIMÓN FACULTAD DE CIENCIAS Y TECNOLOGÍA INGENIERÍA DE SISTEMAS BÚSQUEDA PRIMERO EL MEJOR
UNIVERSIDAD MAYOR DE SAN SIMÓN FACULTAD DE CIENCIAS Y TECNOLOGÍA INGENIERÍA DE SISTEMAS BÚSQUEDA PRIMERO EL MEJOR INTEGRANTES: Caricari Cala Aquilardo Villarroel Fernandez Fructuoso DOCENTE: Lic. Garcia
Búsqueda con información, informada o heurística
Búsqueda con información, informada o heurística Heurística Del griego heuriskein (encontrar, descubrir).» Arquímedes EUREKA!» Uso en IA 957, (G. Polya): Estudio de métodos para descubrir formas de resolución
Curso !"#$%#$!& Inteligencia Artificial (30223) Problemas resueltos. Índice. Problema del laberinto. ! Problema del laberinto
Inteligencia rtificial (303) Problemas resueltos urso 01-013 José Ángel añares 1//013. Dpto. Informática e Ingeniería de Sistemas. Índice! Problema del laberinto! Puzzle de dos dimensiones! Misioneros
(e) Con la poda alfa-beta se eliminan nodos que nunca serán alcanzados
Universidad Rey Juan Carlos Curso 2014 2015 Hoja de Problemas Tema 5 1. Cuáles de las siguientes afirmaciones acerca del algoritmo Minimax son ciertas (a) El algoritmo Minimax realiza una exploración primero
Estimar la adecuación de un nodo para ser expandido.
Universidad Rey Juan Carlos Curso 2014 2015 Hoja de Problemas Tema 3 - Solución 1. Contesta a las siguientes preguntas: (a) Cuál es el objetivo de una función heurística aplicada a la búsqueda en el espacio
25/09/2014 BÚSQUEDA NO INFORMADA / BÚSQUEDA CIEGA INTRODUCCIÓN BÚSQUEDA SUPOSICIONES DEL ENTORNO FORMULAR-BUSCAR-EJECUTAR
BÚSQUEDA NO INFORMADA / BÚSQUEDA CIEGA M. en C. Arturo Rodríguez García INTRODUCCIÓN BÚSQUEDA Proceso en el cual un agente construye una secuencia de acciones para alcanzar un objetivo. SUPOSICIONES DEL
ALGORITMO MINIMAX. o Nodo: Representa una situación del juego. o Sucesores de un nodo: Situaciones del juego a las que se
ALGORITMO MINIMAX Algoritmo de decisión para minimizar la pérdida máxima aplicada en juegos de adversarios Información completa (cada jugador conoce el estado del otro) Elección del mejor movimiento para
(d) Puede haber estrategias que funcionan mejor que Minimax si el contrincante es
Universidad Rey Juan Carlos Curso 2014 2015 Hoja de Problemas Tema 5 1. Cuáles de las siguientes afirmaciones acerca del algoritmo Minimax son ciertas (a) El algoritmo Minimax realiza una exploración primero
Inteligencia Artificial FCC-BUAP. Esaú Villatoro Tello Alfonso Garcés Báez
Inteligencia Artificial FCC-BUAP Esaú Villatoro Tello Alfonso Garcés Báez Agentes Inteligentes. Un agente es todo aquello que puede considerarse que percibe su ambiente mediante sensores y que responde
Búsqueda Informada. Algoritmos primero el mejor Algoritmos de búsqueda local
Búsqueda Informada Algoritmos primero el mejor Algoritmos de búsqueda local Algoritmos primero el mejor Búsqueda primero el mejor Búsqueda Voraz A* Algoritmos primero el mejor Familia de algoritmos de
Búsqueda y resolución de problemas. Capítulo 3, Secciones 1 5 1
úsqueda y resolución de problemas apítulo 3, Secciones 1 5 apítulo 3, Secciones 1 5 1 ontenido gentes solucionadores de problemas Tipos de problemas Formulación de problemas Problemas de ejemplo lgoritmos
Planeación y Búsqueda. IA Planeación de Trayectorias y Métodos de Búsqueda
IA Planeación de Trayectorias y Métodos de Búsqueda Planeación y Búsqueda Cuando se enfrenta uno a un problema que se resuelve por una búsqueda, se suelen presentar dos escenarios: El ambiente es estático
Tema 3: Técnicas básicas de búsqueda para la resolución de problemas
Tema 3: Técnicas básicas de búsqueda para la resolución de problemas José Luis Ruiz Reina José Antonio Alonso Franciso J. Martín Mateos Departamento de Ciencias de la Computación e Inteligencia Artificial
Planeación de Trayectorias y Métodos de Búsqueda. Dr. Jesús Antonio González Bernal
IA Planeación de Trayectorias y Métodos de Búsqueda Dr. Jesús Antonio González Bernal Planeación y Búsqueda Cuando enfrentamos un problema que se resuelve por una búsqueda, se suelen presentar dos escenarios:
4ta. Práctica. Búsqueda en árbol con contrincante: MiniMax con poda Alfa-Beta. Inteligencia Artificial Prácticas 2004/2005
4ta. Práctica Búsqueda en árbol con contrincante: MiniMax con poda Alfa-Beta Inteligencia Artificial Prácticas 2004/2005 Decisiones Perfectas en Juegos de DOS Participantes Definición de Juego Estado Inicial:
Algoritmos de búsqueda con espacio de memoria limitado
Algoritmos de búsqueda con espacio de memoria limitado Los métodos de búsqueda por primero el mejor, tales como A, no escalan bien a grandes problemas de búsqueda debido a su consumo de memoria, mientras
Búsqueda con adversario. Representación del juego. Búsqueda con adversario. Notas. Uso: Decidir mejor jugada en cada momento para cierto tipo de
úsqueda con adversario ntroducción Uso: ecidir mejor jugada en cada momento para cierto tipo de juegos Hay diferentes tipos de juegos según sus características: umero de jugadores, toda la información
Búsqueda Heurística II
Búsqueda Heurística II Pedro Meseguer IIIA-CSIC Bellaterra, Spain pedro@iiia.csic.es Algoritmos Algoritmo: procedimiento computacional que termina si en algún caso no termina, hay que especificarlo Características:
INTELIGENCIA ARTIFICIAL II
ESCUELA SUPERIOR POLITÉCNICA AGROPECUARIA DE MANABÍ MANUEL FÉLIX LÓPEZ CARRERA INFORMÁTICA SEMESTRE SÉPTIMO PERIODO ABR. /SEP.-2015 INTELIGENCIA ARTIFICIAL II TEMA: RESUMEN#4: FUNCIONES HEURÍSTICAS AUTORA:
Sistemas Inteligentes I Tema 3. Juegos José A. Montenegro Montes
Sistemas Inteligentes I Tema 3. Juegos José A. Montenegro Montes monte@lcc.uma.es Resumen! Juegos! Algoritmo Minimax! Poda Alfa-Beta! Funciones de Evaluación Juegos! Entornos multiagente, donde cada agente
Tema 4: Búsqueda informada mediante técnicas heurísticas
Tema 4: Búsqueda informada mediante técnicas heurísticas José Luis Ruiz Reina José Antonio Alonso Franciso J. Martín Mateos 1 Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad
Descubrir los árboles como paradigma de los tipos Recursivos de Datos
TEMA 5 ÁRBOLES(*) Una de las estructuras las datos más importantes y prominentes que existen es el árbol. No es un árbol en el sentido botánico de la palabra, sino uno de naturaleza más abstracta. Todos
RESOLUCIÓN DE PROBLEMAS, BÚSQUEDA. Ing. Ronald A. Rentería Ayquipa
RESOLUCIÓN DE PROBLEMAS, BÚSQUEDA Introducción Resolución de Problemas La resolución de problemas es una capacidad que consideramos inteligente Somos capaces de resolver problemas muy diferentes Encontrar
25/09/2014 BÚSQUEDA INFORMADA BÚSQUEDA VORAZ PRIMERO EL MEJOR (BÚSQUEDA ÁVARA / BÚSQUEDA PRIMERO EL MEJOR) EJEMPLO BÚSQUEDA VORAZ
Galadriel a Frodo, en El señor de los anillos: BÚSQUEDA INFORMADA M. en C. Arturo Rodríguez García Te entrego la luz de Eärendil, nuestra más preciada estrella, que ella te ilumine en los lugares más oscuros
(e) Con la poda alfa-beta se eliminan nodos que nunca serán alcanzados
Universidad Rey Juan Carlos Curso 2014 2015 Hoja de Problemas Tema 5 1. Cuáles de las siguientes afirmaciones acerca del algoritmo Minimax son ciertas (a) El algoritmo Minimax realiza una exploración primero
Inteligencia Artificial
Inteligencia Artificial Tema 2 Búsquedas Ivan Olmos Pineda Contenido Estructura General de un PSA Formulación de un PSA Algoritmos de Búsqueda de Soluciones Aplicaciones BUAP Inteligencia Artificial 2
Apellidos:... Nombre:... Ejercicio 1 (Cuestiones) [2 puntos] Responder a las siguientes cuestiones de manera clara y concisa:
Inteligencia Artificial I (5 Febrero 2008) Apellidos:... Nombre:... Ejercicio 1 (Cuestiones) [2 puntos] Responder a las siguientes cuestiones de manera clara y concisa: 1. Consideremos el siguiente puzle:
Resumen de las clases dictadas: Semana 16 al 20 de Noviembre INTRODUCCIÓN
Resumen de las clases dictadas: Semana 16 al 20 de Noviembre 2015 Tema: Algoritmo Minimax 1. INTRODUCCIÓN En este tema se tratará sobre el algoritmo minimax, con el propósito de mostrar implementaciones
INGENIERÍA EN SISTEMAS Y COMUNICACIONES
INGENIERÍA EN SISTEMAS Y COMUNICACIONES UDA: INTELIGENCIA ARTIFICIAL TEMA: RESOLUCIÓN DE PROBLEMAS ESTRATEGIAS DE BÚSQUEDA Y CONTROL E L A B O R Ó : D R. E N C. H É C T O R R A F A E L O R O Z C O A G
Ejercicio 1: [20 puntos: respuesta acertada = +1, respuesta incorrecta = 1]
Ejercicio 1: [20 puntos: respuesta acertada = +1, respuesta incorrecta = 1] Complete las frases que se muestran a continuación con las alternativas especificadas. En la siguiente tabla, indique "V" o "F"
Universidad Nacional de Educación a Distancia Ingeniería Técnica en Informática de Sistemas Introducción a la Inteligencia Artificial (2º curso)
Universidad Nacional de Educación a Distancia Ingeniería Técnica en Informática de Sistemas Introducción a la Inteligencia Artificial (2º curso) Soluciones exámenes junio 2010 Semana 1. Ejercicio 1. (Valoración:
IV. Métodos de Búsqueda Estudiaremos los métodos de búsqueda para resolver problema de la IA
IV. Métodos de Búsqueda Estudiaremos los métodos de búsqueda para resolver problema de la IA 1 4. Métodos de Búsqueda Tópicos Métodos de búsqueda Árbol de estado Métodos a ciegas Función evaluadora Métodos
1. Cuáles de las siguientes afirmaciones acerca del algoritmo Q-learning son ciertas
Universidad Rey Juan Carlos Curso 2014 2015 Hoja de Problemas Tema 12 1. Cuáles de las siguientes afirmaciones acerca del algoritmo Q-learning son ciertas (a) Para garantizar la convergencia de los valores
Búsqueda con adversario
Introducción Búsqueda con adversario Uso: Decidir mejor jugada en cada momento para cierto tipo de juegos Hay diferentes tipos de juegos según sus características: Numero de jugadores, toda la información
INTELIGENCIA EN REDES DE COMUNICACIONES
INTELIGENCIA EN REDES DE COMUNICACIONES JUEGOS CON ADVERSARIO ALGORITMO MINIMAX PODA ALFA BETA OTRAS MEJORAS ANA BEATRIZ SOLANA SÁNCHEZ JUEGOS BIPERSONALES Este tipo de juegos los podemos definir como:
INTELIGENCIA ARTIFICIAL II
ESCUELA SUPERIOR POLITÉCNICA AGROPECUARIA DE MANABÍ MANUEL FÉLIX LÓPEZ CARRERA INFORMÁTICA SEMESTRE SÉPTIMO PERIODO ABR. /SEP.-2015 INTELIGENCIA ARTIFICIAL II TEMA: RESUMEN#2: - OTROS ALGORITMOS DE BÚSQUEDA
Planteamiento General
Algoritmos de Ramificación y Poda Ejemplos de Aplicación Problema de la Mochila entera Problema del Rompecabezas Problema de la Asignación Problema del Viajante Se aplica a problemas que cumplen: Se puedan
Fundamentos de Inteligencia Artificial
Fundamentos de Inteligencia Artificial Búsqueda con Adversario Hugo Vega Huerta En esta sección Conoceremos métodos que permiten practicar juegos de tablero. una opción conduce a otra, pero se trata de
Resolución de problemas de búsqueda
Resolución de problemas de búsqueda Memoria de Prácticas de Segunda Entrega 26 de noviembre de 2007 Autores: Mariano Cabrero Canosa cicanosa@udc.es Elena Hernández Pereira elena@udc.es Directorio de entrega:
Análisis de algoritmos
Tema 02: Complejidad de los algoritmos M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom 1 Contenido Algoritmo Algoritmo vs. Proceso Computacional
Universidad Nacional de Educación a Distancia. Ingeniería Técnica en Informática de Sistemas. Introducción a la Inteligencia Artificial (2º curso)
Universidad Nacional de Educación a Distancia Ingeniería Técnica en Informática de Sistemas Introducción a la Inteligencia Artificial (2º curso) Soluciones exámenes septiembre 2010 Ejercicio 1. (Valoración:
Búsqueda en e.e. --> reglas para elegir entre las ramas que con más probabilidad lleven a la solución.
BÚSQUEDA HEURÍSTICA estudio de los métodos y reglas del descubrimiento y la invención. Búsqueda en e.e. --> reglas para elegir entre las ramas que con más probabilidad lleven a la solución. Situaciones
BÚSQUEDA. Vicente Martínez Orga
BÚSQUEDA Vicente Martínez Orga vicente.martinez@upm.es Departamento de Inteligencia Artificial Facultad de Informática Universidad Politécnica de Madrid Campus de Montegancedo sn, 28660 Boadilla del Monte,
JUEGOS. Área de aplicación de los algoritmos heurísticos Juegos bi-personales: oponente hostil
JUEGOS Área de aplicación de los algoritmos heurísticos Juegos bi-personales: oponente hostil I Oponente: Jugador: intenta mover a un estado que es el peor para Etiquetar cada nivel del espacio de búsqueda
Inteligencia Artificial
Inteligencia Artificial II Resolución de problemas mediante búsquedas 1. Introducción Dr. Edgard Iván Benítez Guerrero cursofei@gmail.com 1 1. Introducción Agentes solucionadores de problemas Problemas
Francisco J. Hernández López
Francisco J. Hernández López fcoj23@cimat.mx Sus aristas son pares de vértices no ordenados, es decir si hay un camino del vértice i al vértice j, será exactamente el mismo camino del vértice j al vértice
Algoritmos para caminos más cortos (2) comp-420
lgoritmos para caminos más cortos (2) comp-420 lgoritmo * escrito totalmente en 1968 por Peter art, Nils Nilsson y ertram Raphael. n 1964 Nils Nilsson inventó un método que utiliza una heurística para
III. Búsqueda en un espacio de Estado Estudiaremos la formulación de un problema de la IA como un problema de Búsqueda en un Espacio de Estado
III. Búsqueda en un espacio de Estado Estudiaremos la formulación de un problema de la IA como un problema de Búsqueda en un Espacio de Estado 1 3. Búsqueda en un Espacio de Estado Problema de IA Problema
Resolviendo Modelos de Mapas
Resolviendo Modelos de Mapas SMMC Prof. Teddy Alfaro Resolviendo Mapas o Grafos Entre las técnicas completas más utilizadas para resolver la ruta más corta se encuentran BFS Backtracking Dijkstra A* Uso
Grafos Eulerianos y Hamiltonianos. Algoritmos y Estructuras de Datos III
Grafos Eulerianos y Hamiltonianos Algoritmos y Estructuras de Datos III Grafos eulerianos Definiciones: Un circuito C en un grafo (o multigrafo) G es un circuito euleriano si C pasa por todos las aristas
22 de diciembre de 2008
Grupo de Planificación y Aprendizaje (PLG) Departamento de Informática Escuela Politécnica Superior Universidad Carlos III de Madrid 22 de diciembre de 2008 Grupo de Planificación y Aprendizaje (PLG) Departamento
22 de diciembre de 2008
de dos agentes Grupo de Planificación y Aprendizaje (PLG) Departamento de Informática Escuela Politécnica Superior Universidad Carlos III de Madrid 22 de diciembre de 2008 de dos agentes de dos agentes
Conceptos de Inteligencia Artificial & Sistemas Inteligentes Artificiales. Clase 12 CIA Clase 5 SIA Algoritmos genéticos Búsqueda adversaria
Conceptos de Inteligencia Artificial & Sistemas Inteligentes Artificiales Clase 12 CIA Clase 5 SIA Algoritmos genéticos Búsqueda adversaria Dr. Luciano H. Tamargo http://cs.uns.edu.ar/~lt Departamento
Metaheurísticas y heurísticas. Algoritmos y Estructuras de Datos III
Metaheurísticas y heurísticas Algoritmos y Estructuras de Datos III Metaheurísticas Heurísticas clásicas. Metaheurísticas o heurísticas modernas. Cuándo usarlas? Problemas para los cuales no se conocen
VivaMéxico sin PRI. Quiero que mi país sea de todos. Dr. Ivo H. Pineda Torres. Primavera Lllegó el calor sabroso
VivaMéxico sin PRI Quiero que mi país sea de todos. Dr. Ivo H. Pineda Torres Facultad de Ciencias de la Computación Benemérita Universidad Autónoma de Puebla Primavera 2014. Lllegó el calor sabroso IMAGENESpemexmorena
Búsqueda Heurística. Branch and Bound, Best First Search A, A IDA Búsqueda local (Hill climbing, Simulated annealing, Alg.
Introducción Búsqueda Heurística Supone la existencia de una función de evaluación que debe medir la distancia estimada al (a un) objetivo (h(n)) Esta función de evaluación se utiliza para guiar el proceso
Universidad Nacional de Educación a Distancia Ingeniería Técnica en Informática de Sistemas Introducción a la Inteligencia Artificial (2º curso)
Universidad Nacional de Educación a Distancia Ingeniería Técnica en Informática de Sistemas Introducción a la Inteligencia Artificial (2º curso) Soluciones exámenes septiembre 2011 Ejercicio 1. (Valoración:
Búsqueda con adversario
Búsqueda con adversario José Luis Ruiz Reina José Antonio Alonso Jiménez Franciso J. Martín Mateos María José Hidalgo Doblado Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla
B s ú que u da p rim i ero o e n n p rof o u f n u d n id i ad: E tr t ate t gia i L I L FO B s ú que u da p rim i ero o e n n a nc n h c u h r u a:
Búsqueda sin información Fernando Berzal, berzal@acm.org Búsqueda sin información Recorridos sobre grafos Búsqueda en anchura (BFS) Búsqueda en profundidad (DFS) Descenso iterativo (IDS) [ vuelta atrás