Razonamiento Automatizado
|
|
|
- Víctor Manuel Poblete Bustos
- hace 7 años
- Vistas:
Transcripción
1 Razonamiento Automatizado Pedro Meseguer IIIA, CSIC Bellaterra 27/07/2010 Santiago de Compostela 1
2 Esquema Qué es el razonamiento automatizado? Algunas áreas con éxito (últimos 15 años) SAT CSP Planificación Juegos por ordenador (Boolean Satisfiability) (Constraint Satisfaction Problems) (Planning) (Computer Games) Bases de datos de patrones (Pattern Databases) Algunas conclusiones 27/07/2010 Santiago de Compostela 2
3 Qué es razonamiento automatizado? tema de la conferencia traducción formalismo razonador automático problemas reales 27/07/2010 manual interpretación solución Santiago de Compostela 3
4 SAT 27/07/2010 Santiago de Compostela 4
5 SAT Dada una fórmula ϕ en lógica de proposiciones, determinar si es satisfactible o no ϕ en forma normal conjuntiva (CNF, cualquier fórmula se puede expresar como CNF) ϕ = (x 1 v x 2 ) ^ (x 2 v x 3 ) variable literal cláusula SAT: encontrar asignación {1,0} a variables de ϕ, de forma que ϕ=1, o probar que tal asignación no existe(np-completo) 27/07/2010 Santiago de Compostela 5
6 Por qué SAT? Muchas aplicaciones se pueden formular como SAT: Verificación de circuitos Criptografía Model checking SAT-SOLVER: Mejora de rendimiento en los últimos años años #variables #cláusulas (com) Decenas Cientos Miles Cientos de miles Cientos Miles Cientos de miles Millones 27/07/2010 Santiago de Compostela 6
7 SAT: Conceptos Básicos Cláusula satisfecha si al menos un literal tiene valor 1 (x 1 v x 2 v x 3 ) Cláusula insatisfecha si todos sus literales tienen valor 0 (x 1 v x 2 v x 3 ) Cláusula unitaria si contiene un solo literal no asignado, y todos los demás literales tienen valor 0 (x 1 v x 2 v x 3 ) Fórmula sastifecha si todas sus cláusulas lo son Fórmula insatisfecha si al menos una cláusula es insatisfecha 27/07/2010 Santiago de Compostela 7
8 Propagación Unitaria Regla: el único literal no asignado de una ha de ser asignado a 1 Propagación unitaria: iteramos la aplicación de la regla (x 1 v x 2 v x 3 ) ^ ( x 1 v x 2 v x 4 ) ^ ( x 1 v x 3 v x 4 ) (x 1 v x 2 v x 3 ) ^ ( x 1 v x 2 v x 4 ) ^ ( x 1 v x 3 v x 4 ) (x 1 v x 2 v x 3 ) ^ ( x 1 v x 2 v x 4 ) ^ ( x 1 v x 3 v x 4 ) pero también puede descubrir conflictos! (x 1 v x 2 v x 3 ) ^ ( x 1 v x 2 v x 4 ) ^ ( x 1 v x 3 v x 4 ) (x 1 v x 2 v x 3 ) ^ ( x 1 v x 2 v x 4 ) ^ ( x 1 v x 3 v x 4 ) (x 1 v x 2 v x 3 ) ^ ( x 1 v x 2 v x 4 ) ^ ( x 1 v x 3 v x 4 ) 27/07/2010 Santiago de Compostela 8
9 DPLL: algoritmo para SAT Búsqueda primero en profundidad con backtracking En cada paso: Selecciona asignación Aplica propagación unitaria Si conflicto, backtrack Tras backtrack, propagación unitaria Si no se puede realizar backtrack, retorna UNSAT Si la fórmula satisfecha, retorna SAT Sino, continua con otra asignación 27/07/2010 Santiago de Compostela 9
10 DPLL: Ejemplo (a v b v d) ^ (a v b v e) ^ ( b v d v e) ^ (a v b v c v d) ^ (a v b v c v d) ^ (a v b v c v e) ^ (a v b v c v e) b a b c 27/07/2010 Santiago de Compostela 10
11 SAT: aprendizaje de cláusulas x=0 x v c c=1 d v c d=1 y=1 y v p p=1 y v q q=1 p v q v d d=0 Contradicción: d cierto y falso a la vez 27/07/2010 Santiago de Compostela 11
12 SAT: aprendizaje de cláusulas x=0 x v c c=1 d v c d=1 Una nueva cláusula tras una contradicción Involucra una secuencia de pasos de resolución y=1 y v p p=1 y v q q=1 Resolvemos ( p v q v d) con ( y v q) obteniendo ( p v y v d) Resolvemos ( p v y v d) con ( y v p) obteniendo ( y v d) APRENDEMOS ( y v d) p v q v d d=0 1-UIP learning resuelve iterativamente el literal implicado más profundo en la cláusula falsa, hasta que esta contiene sólo un literal del nivel en que se detectó la contradicción 27/07/2010 Santiago de Compostela 12
13 SAT: backtracking no cronológico x=0 x v c c=1 d v c d=1 y v d y=1 y=0 y v p p=1 y v q q=1 p v q v d d=0 La nueva cláusula es incondicional Tras aprender la nueva cláusula, se hace backtracking al nivel en donde esa cláusula es unitaria (como si se hubiera conocido la cláusula al principio) Se fuerza el literal Se continua la búsqueda 27/07/2010 Santiago de Compostela 13
14 SAT: Reinicios (Restarts) 50% ejecuciones < backtracks pequeño % > backtracks Reinicio: abandona la búsqueda actual y comienza de nuevo reinicio reinicio reinicio sol Mantiene las cláusulas aprendidas antes del reinicio Ayuda a reducir la variancia y añade robustez al Solver 27/07/2010 Santiago de Compostela 14
15 SAT: tras backtracking a nivel 4 no resuelta no resuelta unitaria satisfecha no resuelta 27/07/2010 Santiago de Compostela 15 Por cada cláusula 2 watched literals (para detectar cuando se vuelve unitaria) Cuando se asigna var x, sólo los watched literals de x han de ser evaluados Si hay backtracking, no se ha de hacer nada
16 SAT: Heurísticas VSIDS Ordena variables por num literales en las cláusulas iniciales Incrementa contadores por nuevas cláusulas Periodicamente, divide todos los contadores por una cte Heuristica quasi-estática Combina estado inicial con nuevas cláusulas Usar un heap para encontrar la primera variable: una búsqueda lineal en cada decisión puede dominar run-time. 27/07/2010 Santiago de Compostela 16
17 SAT: Evolución Instance Posit 94 Grasp 96 Chaff 03 Minisat 03 Picosat 08 ssa ,57 0,22 0,02 0,00 0,01 Bf ,93 0,02 0,02 0,00 0,03 design_3 >1800 3,93 0,18 0,17 0,93 design_1 > ,55 0,35 0,11 0,68 4pipe_4_ooo >1800 > ,47 110,97 44,95 fifo8_300 >1800 > ,50 53,66 39,31 w08_15 >1800 >1800 > ,10 71,89 9pipe_9_ooo >1800 >1800 >1800 >1800 >1800 c6288 >1800 >1800 >1800 >1800 > /07/2010 Santiago de Compostela 17
18 CSP 27/07/2010 Santiago de Compostela 18
19 CSP (X, D, C) X = {x 1, x 2,, x n } variables D = {D 1, D 2,, D n } dominios (discretos y finitos) C = {c 1, c 2,, c r } restricciones Restricción c: var(c) : variables involucradas en c rel(c): tuplas de valores permitidas por c Solución: asignación de valores a variables que satisface todas las restricciones (NP-completo) 27/07/2010 Santiago de Compostela 19
20 Por qué CSP? Modelo muy usado para problemas industriales Scheduling Turnos de trabajo Logística Éxito comercial (ILOG) Expresividad Programación declarativa Variables Dominios Restricciones 27/07/2010 Santiago de Compostela 20
21 CSP: 4-reinas Objetivo: poner 4 reinas en un tablero de ajedrez 4 x 4 de forma que no se ataquen Formulación: Variables: una reina por fila Dominios: columnas Restricciones: dos reinas han de estar en Diferentes columnas Diferentes diagonales x 1 x 2 x 3 x /07/2010 Santiago de Compostela 21
22 CSP: Árbol de búsqueda x x 2 x 3 x 4 (1,1,1,1) 27/07/2010 (2,1,1,1) (3,1,1,1) (4,1,1,1) (4,4,4,4) Santiago de Compostela 22
23 CSP: Backtracking Visita nodos primero en profundidad (DFS) En cada nodo: Verifica cada restricción totalmente asignada Si es consistente, continua DFS Sino, poda la rama actual y continua DFS Complejidad: O(d n ) 27/07/2010 Santiago de Compostela 23
24 CSP: ejemplo de backtracking x x x 1 x 2 Q Q Q Q Q Q x x 3 x 4 Q Q Q Q Q Q Q Q x nodos solución 27/07/2010 Santiago de Compostela 24
25 CSP: Arco Consistencia Arco consistencia: inferencia dentro de cada restricción Cada valor del dominio de una variable que no aparezca en la solución de la restricción se elimina Efecto combinado de varias restricciones: poda significativa del dominio 27/07/2010 Santiago de Compostela 25
26 Ejemplo: Ecuaciones x + y = 9 2x + 4y = 24 x y Punto fijo 27/07/2010 Santiago de Compostela 26
27 CSP: Maintaining Arc Consistency MAC es combinación Búsqueda: BT (backtracking) Inferencia en cada nodo: AC (arco consistencia) Preproceso: subproblemas se hacen AC Cuando un dominio se vuelve vacío No hay soluciones en la rama actual Backtrack Restaurar: Valores eliminados en el nivel i se han de restaurar cuando se hace backtracking al nivel i o anterior 27/07/2010 Santiago de Compostela 27
28 CSP: AC en 4 reinas Q Q AC (2,3) AC (2,3) Q Q dominio vacío 27/07/2010 Santiago de Compostela 28
29 CSP: Ejemplo MAC en 4 reinas x x 2 4 x 1 x 2 Q Q Q x 3 1 x 3 x 4 Q Q x nodos solución 27/07/2010 Santiago de Compostela 29
30 CSP: Extensiones Variables Inicialmente, naturales (y reales) Conjuntos Multi-conjuntos Restricciones Inicialmente, obligatorias (duras, hard, problema de satisfacción) Ahora, no obligatorias (blandas, soft, problema de optimización) 27/07/2010 Santiago de Compostela 30
31 CSP: Restricciones Globales Restricciones entre más de dos variables Pueden (o no) ser equivalentes semánticamente a un conjunto de restricciones binarias AC sobre una restricción global es más potente (poda más) que AC sobre las restricciones binarias equivalentes Implementadas con propagadores Semántica para disminuir la complejidad de AC Esenciales para modelizar y resolver problemas reales Actualmente unas 400 en 27/07/2010 Santiago de Compostela 31
32 CSP: all-different Var: F, N, S; Val: { }; Ctrs: N S F N F { } F { } N { } S { } lógicamente equivalentes all-different N { } S { } 27/07/ restricciones binarias, son AC, no hay poda 1 restricción ternaria, no es AC, poda dominio vacío no hay solución!! Santiago de Compostela 32
33 CSP: Simetrías POR SIMETRÍA No hay solución con reina en esquina arriba izquierda Explotación de simetrías: aumenta la eficiencia Simetrías: aparecen en muchos problemas reales 27/07/2010 Santiago de Compostela 33
34 Planificación 27/07/2010 Santiago de Compostela 1
35 Planificación Dado (A, O, I, G), (átomos, operadores, estados inicial y final) encontrar secuencia de operadores o 1, o 2,,o k que conectan estados I y G. Operador o (Strips): tres listas Precondiciones: Pre(o) A añadir: Add(o) A borrar: Del(o) Complejidad: PSPACE-completo 27/07/2010 Santiago de Compostela 2
36 Por qué planificación? Se han utilizado con éxito Misiones espaciales Tareas especiales Aumento de rendimiento Muchos modelos: clásico, conformante, contingente, con costes, buena expresividad 27/07/2010 Santiago de Compostela 3
37 Grafo de planificación acciones con precondiciones ciertas en el nivel anterior proposiciones consecuencia de las acciones Nivel donde aparecen todas las metas del problema I prop acción prop acción prop acción 27/07/2010 Santiago de Compostela prop G 4
38 Construcción del plan Plan: búsqueda hacia atrás en el grafo (IDA*) iteración en la selección de acciones (no mutex) Acciones mutex: precondiciones y efectos son inconsistentes, o tienen precondiciones mutex Proposiciones mutex: generadas por acciones que son mutex 27/07/2010 Santiago de Compostela 5
39 Grafo relajado Grafo de planificación SIN los borrados (del) de los operadores Sírve para generar heurísticas Las heurísticas se aplican en la búsqueda del plan Se han desarrollado gran cantidad de heurísticas 27/07/2010 Santiago de Compostela 6
40 Otras aproximaciones Traducción SAT CSP Model checking Planificación híbrida: combina técnicas Planificación jerárquica: descomposición de tareas Planificación basada en costes Planificación con recursos Planificación con incertidumbre 27/07/2010 Santiago de Compostela 7
41 Juegos por ordenador 27/07/2010 Santiago de Compostela 8
42 Juegos por Ordenador 2 jugadores Perfecta información: cada jugador conoce toda la información del contrario no hay elementos aleatorios Ejemplos: ajedrez, damas, othello Juegos con información incompleta: poker, bridge 27/07/2010 Santiago de Compostela 9
43 Por qué juegos? Programas campeones del mundo: damas, othello Programa con muy buen rendimiento: ajedrez importante: desde 1956, ajedrez era un objetivo para IA Deep Blue ganó a Kasparov en 1997 quantity had become quality Importancia económica directa 27/07/2010 Santiago de Compostela 10
44 Árbol de juegos jugador B jugador A 1 ply 1 move Alternan jugadores por niveles Sucesores de un nodo: todas los movimientos legales que ese jugador puede hacer 27/07/2010 Santiago de Compostela 11
45 MiniMax 1 gana -1 gana 0 tablas Cuál es el mejor movimiento? Supongo que el oponente elige el movimiento que más le conviene. max min /07/ Santiago de Compostela 12
46 MiniMax Idea: propagar hacia atrás el valor de los hijos Nodos terminales: valor 1, -1 (gana A o gana B) Dos tipos de nodos: max: gana con 1 min: gana con -1 Propagación hacia atrás: 27/07/2010 max: el máximo de los valores de los hijos min: el mínimo de los valores de los hijos Santiago de Compostela 13
47 Alfa-Beta max min Con una buena ordenación de sucesores, min Poda muy importante: b 36 b 6 27/07/2010 Santiago de Compostela 14
48 Función de evaluación Árbol de juegos: demasiado grande no se puede buscar hasta el final 0,3-0,5 0.2 d nivel máximo de búsqueda ganadoras / perdedoras Función de evaluación: evalua lo prometedora que es una posición incluye número de piezas distribución movilidad 27/07/2010 Santiago de Compostela 15
49 Efecto horizonte a c b -1-0,4-0,6 d = ,4-0,5-0,3-0,2-1 -0,6-0,5-0,7 horizonte búsqueda Jugadas: a: perdedora b: retrasa el efecto de a c: no perdedora 27/07/ Santiago de Compostela 16
50 Efecto horizonte en ajedrez Efecto horizonte: una jugada que inicialmente parece buena puede resultar mala el peligro no se ve, está tras el horizonte la función de evaluación es incapaz de detectarlo Solución fuerza bruta: buscar más profundo coste computacional en ajedrez, hay muchos movimientos que pueden retrasar una jugada de peligro Aproximación selectiva: identificar los nodos en los que se debe profundizar más extensiones singulares 27/07/2010 Santiago de Compostela 17
51 Extensiones singulares único nodo que justifica la decisión final d = 2 0,3 Buscar más debajo de ese nodo 0,3 0,2 diferencia significativa 0,3 0,9 0,2 0,2 0,3 0,3 0,2 extensión singular 27/07/2010 0,9 0,2 0,2 Santiago de Compostela 18 búsqueda a 1 nivel más
52 Deep Blue Proyecto de IBM Alfa-beta paralelo: Hardware especializado (2 millones posiciones / sg) Extensiones singulares, quiescencia Función de evaluación sofisticada Biblioteca: aperturas y finales Resultados: Venció a Kasparov en 1997 Ratio 2700, Kasparov 2800 quantity had become quality 27/07/2010 Santiago de Compostela 19
53 Pattern Databases 27/07/2010 Santiago de Compostela 1
54 Pattern Databases Almacena en un fichero la heurística Es muy grande pero factible dada la tecnología actual Indexa el fichero por unas pocas piezas (pattern) Para que la explosión combinatoria no sea inmanejable Generación fichero: búsqueda en anchura (desde la solución hacia atrás) Cuando aparece configuración (pattern) nueva, se guarda su coste Es una cota inferior de ese mismo pattern en otro contexto El fichero se genera off-line El coste se amortiza en muchas resoluciones 27/07/2010 Santiago de Compostela 2
55 Por qué Pattern Databases? Porque han permitido resolver en tiempos inimaginables problemas de búsqueda enormes Ejemplos: Cubo de Rubik (43 x estados): camino más largo 26 (63 horas, 128 procesadores, 7 terabits de disco) Puzle de 15 (10 13 estados): se resuelve en milisegundos Puzle de 35 (10 41 estados): cotas coste solución óptima (1 mes, 16 GB ram, 4 terabytes disco) Torres de Hanoi (4 postes, 30 discos, 4 30 estados): sol óptima (17 días, 400 GB disco) 27/07/2010 Santiago de Compostela 3
56 Problemas de búsqueda en IA Puzles de fichas deslizantes 8 puzle (3x3) Pequeño: 8! / x10 5 estados 15 puzle (4x4) Grande: 16! / estados 24 puzle (5x5) Enorme: 25! / x estados Cubo de Rubik 2x2x2 3x3x3 27/07/2010 Santiago de Compostela 4
57 15 Puzle Inventado por Sam Loyd en ! / estados Media de 53 movimientos para resolverlo Diámetro conocido (longitud máxima de camino óptimo): 87 Factor de ramificación: /07/2010 Santiago de Compostela 5
58 3x3x3 Cubo de Rubik Inventado por Rubik en x estados Half Turn Metric Media de 18 movimientos para resolverlo Diámetro: 26 Factor de ramificación: /07/2010 Santiago de Compostela 6
59 Heurística Manhattan Heurística admisible Suma del número óptimo de movimientos de cada pieza para alcanzar su posición en el estado objetivo, permitiendo que se mueva libremente Razonablemente buena para puzles Usada por A* pasra resolver el 8 puzle Usada por Richard Korf con IDA* para resolver por primera vez el 15 puzle. No es muy buena para el cubo de Rubik Se debe dividir el resultado final por 8 (cada movimiento involucra 8 piezas) resultando en un valor más bajo que el esperado ( 5,5) 27/07/2010 Santiago de Compostela 7
60 Mejores heurísticas Pattern Databases Almacena el número de movimientos de TODAS las piezas para resolver subpartes del puzle Este coste es una heurística admisible Produce heurísticas mucho mejores que Manhattan Permite combinar Máximo Suma 27/07/2010 Santiago de Compostela 8
61 Ejemplo Fringe pattern: nos fijamos solo en esas 7 piezas y el hueco Cada configuración de esas 8 piezas en un pattern (COM 16,8 ) Almacenamos el coste mínimo (= movimientos de todas las piezas del puzle) para ir del pattern al objetivo (495MB) Resultados originales 15 puzle: Nodos generados divididos por 346 Tiempo dividido por 6 27/07/2010 Santiago de Compostela 9
62 Combinar con máximo Tenemos dos pattern databases PDB 1 y PDB 2 Sea c el estado actual, queremos h(c) Por PDB 1 obtenemos h 1 (c) Por PDB 2 obtenemos h 2 (c) h(c) = max {h 1 (c), h 2 (c)} 15 Puzle: Nodos generados: divididos por Tiempo: dividido por 12 27/07/2010 Santiago de Compostela 10
63 Combinar con suma Problema con escalado de PDBs Combinar con suma: no se pueden sumar heurísticas de dos pattern databases porque puede haber costes repetidos Salvo si. se guardan costes SOLO del pattern, entonces es suficiente con que los patterns sean disjuntos Para sumar, se guarda el número de movimientos de las piezas del pattern (no de todas las piezas) 27/07/2010 Santiago de Compostela 11
64 Ejemplo Dos pattern: azul y rojo Generaremos 2 pattern databases (azul y rojo) En cada una, almacenamos el coste mínimo (= movimientos de todas las piezas del pattern) para ir del pattern al objetivo Resultados originales 15 puzle: Nodos generados divididos por Tiempo dividido por /07/2010 Santiago de Compostela 12
65 Algunas Conclusiones 27/07/2010 Santiago de Compostela 13
66 Conclusiones Razonamiento automatizado: Rendimiento Expresividad Buenas implementaciones Competiciones Librerías de problemas Inferencia sofisticada Tecnología madura 27/07/2010 Santiago de Compostela 14
67 Conclusiones Desafíos: Simplicidad de uso Encapsular: Black box Modelización Diseminación 27/07/2010 Santiago de Compostela 15
Búsqueda Heurística IV
Búsqueda Heurística IV Pedro Meseguer IIIA-CSIC Bellaterra, Spain [email protected] 2 jugadores Búsqueda para juegos Perfecta información: cada jugador conoce toda la información del contrario no hay
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
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
Búsqueda Heurística I
Búsqueda Heurística I Pedro Meseguer IIIA-CSIC Bellaterra, Spain [email protected] Introducción Temario curso Búsqueda sistemática Búsqueda ciega Búsqueda informada: primero el mejor, A* Búsqueda en memoria
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:
Constraint Satisfaction is a simple but powerful idea
1 Problemas de Satisfacción de Restricciones (CSP) Contenidos: Definición del problema de satisfacción de restricciones (CSP). Áreas de aplicación. Especificación de un problema CSP: variables, dominios
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
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
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
Inteligencia Artificial Problemas de satisfacción de restricciones
Inteligencia Artificial Problemas de satisfacción de restricciones Primavera 2007 profesor: Luigi Ceccaroni Problemas de satisfacción de restricciones (PSRs) Componentes del estado = grafo de restricciones:
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
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:
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 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
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
Búsqueda Heurística III
Búsqueda Heurística III Pedro Meseguer IIIA-CSIC Bellaterra, Spain [email protected] Búsqueda heurística Búsqueda informada por la función heurística f(n) Algoritmos: esquema primero el mejor (best-first)
Razonamiento. con. Restricciones. Esquema Global. Tutorial CAEPIA 2003. 1. Introducción - Definiciones - Ejemplos
Esquema Global Razonamiento con Restricciones Tutorial CAEPIA 2003 Javier Larrosa Dep. LSI, UPC, Barcelona Pedro Meseguer IIIA, CSIC, Bellaterra 1. Introducción - Definiciones - Ejemplos 2. Métodos de
Ampliación de Algoritmos y Estructura de Datos Curso 02/03. Ejercicios
272. En un problema determinado, una solución está dada por una tupla de n elementos (x, x 2,..., x n ). Para cada elemento existen en total m posibles valores. Comparar el número de nodos generados para
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
Heurísticas en el recorrido de árboles de soluciones
Heurísticas en el recorrido de árboles de soluciones. Árboles de soluciones. Repaso de backtracking y branch and bound. Uso de heurísicas en backtracking 4. Uso de heurísticas en branch and bound . Árboles
Algoritmo de ramificación y acotación
Algoritmo de ramificación y acotación Investigación Operativa Ingeniería Técnica en Informática de Gestión UC3M Curso 08/09 Descripción de los objetivos En esta práctica desarrollaremos el algoritmo de
Para definir en formalmente el juego se deberá establecer:
INTRODUCCION A LA INTELIGENCIA ARTIFICIAL MÓDULO 5- JUEGOS COMO PROBLEMA DE BÚSQUEDA Referencias: Inteligencia Artificial Russell and Norvig Cap.5. Artificial Intellingence Nils Nilsson Ch.3 Se trata el
Tema 07: Backtraking. M. en C. Edgardo Adrián Franco Martínez edgardoadrianfrancom
Tema 07: Backtraking M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com [email protected] @edfrancom edgardoadrianfrancom (Prof. Edgardo A. Franco) 1 Contenido Backtraking Búsqueda en profundidad
1. Defina el problema de particionamiento. Escriba un ejemplo de este tipo de problema, junto con su formulación general en AMPL.
DEPARTAMENTO DE ESTADÍSTICA E INVESTIGACIÓN OPERATIVA o. DIPLOMATURA DE ESTADÍSTICA Ampliación de la Investigación Operativa. Curso 00/0 a Prueba de Evaluación Continua. Fecha: 6-6-0. Defina el problema
CI-6675 Algoritmos y Estructuras Optimizadas para Videojuegos
Especialización en Creación y Programación de Videojuegos CI-6675 Algoritmos y Estructuras Optimizadas para Videojuegos Agenda de hoy Juegos Combinatorios Información en un Juego La suma de un Juego s
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
El Juego como Problema de Búsqueda
El Juego como Problema de Búsqueda En este algoritmo identificamos dos jugadores: max y min. El objetivo es encontrar la mejor movida para max. Supondremos que max mueve inicialmente y que luego se turnan
Paralelización de problemas de recorrido de árboles Trabajadores replicados y esquema maestro esclavo
Metodología de la Programación Paralela 2015-2016 Facultad Informática, Universidad de Murcia Esquemas algorítmicos paralelos: Paralelización de problemas de recorrido de árboles Trabajadores replicados
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.
Parte de Algoritmos de la asignatura de Programación Master de Bioinformática. Búsqueda exhaustiva
Parte de Algoritmos de la asignatura de Programación Master de Bioinformática Búsqueda exhaustiva Web asignatura: http://dis.um.es/~domingo/algbio.html E-mail profesor: [email protected] Transparencias preparadas
A B MIN C D E F MAX x E.T.S.I. INFORMÁTICA 4º CURSO. INTELIGENCIA ARTIFICIAL E INGENIERÍA DEL CONOCIMIENTO
E.T.S.I. INFORMÁTICA 4º CURSO. INTELIGENCIA ARTIFICIAL E INGENIERÍA DEL CONOCIMIENTO UNIVERSIDAD DE MÁLAGA Dpto. Lenguajes y Ciencias de la Computación RELACIÓN DE PROBLEMAS. TEMA IV. PROBLEMAS DE JUEGOS.
Algoritmos y Estructuras de Datos Curso 04/05. Ejercicios
0. En un problema determinado, una solución está dada por una tupla de n elementos (x, x,..., x n ). Para cada elemento existen en total m posibles valores. Comparar el número de nodos generados para resolver
Problemas de Satisfacción de Restricciones
Problemas de Satisfacción de Restricciones 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
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
Sistemas Inteligentes I Tema 3. Juegos José A. Montenegro Montes
Sistemas Inteligentes I Tema 3. Juegos José A. Montenegro Montes [email protected] Resumen! Juegos! Algoritmo Minimax! Poda Alfa-Beta! Funciones de Evaluación Juegos! Entornos multiagente, donde cada agente
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
Algoritmos para CSP 1
Algoritmos para CSP 1 1. Técnicas de Consistencia, o Inferenciales I. Inferencia, o consistencia completa Proceso que permite la síntesis de todas las restricciones de un problema en una única restricción
Coloreo de Grafos. Algoritmos y Estructuras de Datos III
Coloreo de Grafos Algoritmos y Estructuras de Datos III Coloreo de nodos Definiciones: Un coloreo (válido) de los nodos de un grafo G = (V, X ) es una asignación f : V C, tal que f (v) f (u) (u, v) E.
9. Programación lineal entera.
9. rogramación lineal entera. Introducción Método de ramificación y poda rogramación lineal entera Un problema de programación entera es aquel en el que alguna o todas sus variables deben tomar valores
Razonamiento. con. Restricciones. Esquema Global. Tutorial IBERAMIA 2002. 1. Introducción - Definiciones - Ejemplos
Esquema Global Razonamiento con Restricciones Tutorial IBERAMIA 2002 Javier Larrosa Dep. LSI, UPC, Barcelona Pedro Meseguer IIIA, CSIC, Bellaterra 1. Introducción - Definiciones - Ejemplos 2. Métodos de
Optimización combinatoria Flujo en redes. Investigación Operativa, Grado en Estadística y Empresa, 2011/12
Optimización combinatoria Flujo en redes Prof. José Niño Mora Investigación Operativa, Grado en Estadística y Empresa, 2011/12 Esquema Optimización combinatoria: definición y formulación de PE El problema
Razonamiento con restricciones. Pedro Meseguer IIIA CSIC Bellaterra
Razonamiento con restricciones Pedro Meseguer IIIA CSIC Bellaterra Un poco de historia:" comienzos" mejoras algorítmicas" extensiones" CSP, ejemplos, aplicaciones" Sumario! Algoritmos de resolución: búsqueda
(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
Restricciones. Inteligencia Artificial. Ingeniería Superior en Informática, 4º Curso académico: 2011/2012 Profesores: Ramón Hermoso y Matteo Vasirani
Restricciones Ingeniería Superior en 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 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
Algoritmos mas complejos. Algoritmos y Estructuras de Datos II (Programación I) Mgter. Vallejos, Oscar A.
Algoritmos mas complejos Divide y Vencerás Técnica empleada en cosas dispares. También en el diseño de algoritmos. (ordenación: Quicksort; Mergesort). Consiste básicamente en dividir un problema original
Tema 1: Sintaxis y Semántica de la Lógica Proposicional
Tema 1: Sintaxis y Semántica de la Lógica Proposicional Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Lógica y Computabilidad Curso 2010 11 LC, 2010 11 Lógica Proposicional
máx 5x 1 + 7x 2 s.a 2x 1 + x x 1 + 9x 2 41 x 1 0, x 2 0, enteras, z opt z opt 38
Programación Lineal Entera / Investigación Operativa PROBLEMAS DE INVESTIGACIÓN OPERATIVA. Hoja 4. Resuelve el siguiente problema de programación entera por el método Branch and Bound: máx 5x + 7x s.a
Estado 3.2 (coste = 9)
Búsqueda heurística Fernando Berzal, [email protected] 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
Programa de teoría. Algoritmos y Estructuras de Datos II. 3. Algoritmos voraces. 1. Análisis de algoritmos 2. Divide y vencerás
Programa de teoría Algoritmos y Estructuras de Datos II 1. Análisis de algoritmos 2. Divide y vencerás 3. Algoritmos voraces 4. Programación dinámica 5. Backtracking 6. Ramificación y poda A.E.D. II 1
1. Método general. 2. Análisis de tiempos de ejecución. 3. Ejemplos de aplicación Problema de las 8 reinas Problema de la mochila 0/1.
Backtracking. Método general. 2. Análisis de tiempos de ejecución. 3. Ejemplos de aplicación. 3.. Problema de las 8 reinas. 3.2. Problema de la mochila 0/. Método general El backtracking (método de retroceso
Problemas NP-completos
Análisis de Algoritmos Problemas NP-completos Dra. Elisa Schaeffer [email protected] PISIS / FIME / UANL Problemas NP-completos p. 1 Problemas NP-completos La clase NP contiene numerosos problemas
(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
Backtracking: Esquema General
Backtracking Idea: Técnica para recorrer sistemáticamente todas las posibles configuraciones de un espacio asociado a soluciones candidatos de un problema computacional. Se puede pensar este espacio tiene
(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
BÚSQUEDA. Vicente Martínez Orga
BÚSQUEDA Vicente Martínez Orga [email protected] Departamento de Inteligencia Artificial Facultad de Informática Universidad Politécnica de Madrid Campus de Montegancedo sn, 28660 Boadilla del Monte,
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:
Hoja de Problemas Tema 6 Búsqueda con estados estructurados: Restricciones
Ejercicio 1: 1.1. Si se resuelve un problema de satisfacción de restricciones mediante búsqueda con asignaciones parciales, entonces (a) (b) (c) (d) (e) Un estado siempre asigna un valor a todas las variables
Introducción a las RdP. Optimización basada en redes de Petri. Redes de Petri. Son objeto de estudio: RdP. Ejemplos:
Seminario sobre toma de decisiones en logística y cadenas de suministro Introducción a las RdP Optimización basada en redes de Petri https://belenus.unirioja.es/~emjimene/optimizacion/transparencias.pdf
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
Problemas de programación entera: El método Ramifica y Acota. Investigación Operativa, Grado en Estadística y Empresa, 2011/12
Problemas de programación entera: El método Ramifica y Acota Prof. José Niño Mora Investigación Operativa, Grado en Estadística y Empresa, 2011/12 Esquema La estrategia Divide y vencerás Árboles de enumeración
Introducción a la Complejidad Computacional
Introducción a la Complejidad Computacional El análisis sobre decidibilidad que hemos hecho nos permite saber qué podemos hacer y qué no podemos hacer. Pero nada sabemos de qué tan difícil resolver los
Inteligencia Artificial
Inteligencia Artificial - Santiago Primer período académico 2007 1 Descripción de la Asignatura Nombre: Inteligencia Artificial Sigla: ILI-295 URL: http://www.inf.utfsm.cl/~mcriff/ia-s [email protected]
Tema 5: Problemas de satisfacción de restricciones
Tema 5: Problemas de satisfacción de restricciones José Luis uiz eina José Antonio Alonso Franciso J. Martín Mateos María José Hidalgo Departamento de Ciencias de la Computación e Inteligencia Artificial
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:
Estratégias generales de análisis y diseño de algorítmos
Estratégias generales de análisis y diseño de algorítmos comp-420 Ayudantes Hugo Eduardo Dueñas [email protected] (ordinaria) Alberto José Ramirez Valadez [email protected] (ordinaria) Mandar tareas (programas)
Complejidad Computacional
Complejidad Computacional Clasificación de Problemas Teoría de la Complejidad Estudia la manera de clasificar algoritmos como buenos o malos. Estudia la manera de clasificar problemas de acuerdo a la dificultad
Multiplicación de matrices simétricas
Multiplicación de matrices simétricas La traspuesta de una matriz A n n es definida como una matriz A T n n tal que A T [i, j] =A[j, i] paracadai, j 2{1,...,n} Además, una matriz A es simétrica si A =
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
Problemas de Satisfacción de Restricciones
Problemas de Satisfacción de estricciones José Luis uiz eina José Antonio Alonso Jiménez Franciso J. Martín Mateos María José Hidalgo Doblado Dpto. Ciencias de la Computación e Inteligencia Artificial
Complejidad - Problemas NP-Completos. Algoritmos y Estructuras de Datos III
Complejidad - Problemas NP-Completos Algoritmos y Estructuras de Datos III Teoría de Complejidad Un algoritmo eficiente es un algoritmo de complejidad polinomial. Un problema está bien resuelto si se conocen
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
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
Métodos de Inteligencia Artificial
Métodos de Inteligencia Artificial L. Enrique Sucar (INAOE) [email protected] ccc.inaoep.mx/esucar Tecnologías de Información UPAEP Búsqueda Representación Tipos búsquedas: Sin información Con información
Métodos de Optimización para la toma de decisiones
Facultad de Ingeniería Departamento de Ciencias de la Ingeniería Magíster en Logística y Gestión de Operaciones Métodos de Optimización para la toma de decisiones MLG-521 Programación Entera 1º Semestre
Simulación y Optimización de Procesos Químicos. Titulación: Ingeniería Química. 5º Curso Optimización
Simulación Optimización de Procesos Químicos Titulación: Ingeniería Química. 5º Curso Optimización MILP, MINLP (Mixed Integer (Non) Linear Programming). Octubre de 009. Optimización Discreta Programació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
RELACIÓN DE PROBLEMAS DE CLASE DE PROGRAMACIÓN LINEAL ENTERA
RELACIÓN DE PROBLEMAS DE CLASE DE PROGRAMACIÓN LINEAL ENTERA SIMPLEX Y LINEAL ENTERA a Resuelve el siguiente problema con variables continuas positivas utilizando el método simple a partir del vértice
Inteligencia Artificial. Oscar Bedoya
Inteligencia Artificial Oscar Bedoya [email protected] * Algoritmo minimax * Poda alfa-beta * Juegos con decisiones imperfectas * Juegos con elemento aleatorio * Aplicaciones Tipos de contrincantes
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"
