Inteligencia Artificial I - · PDF fileInteligencia Artificial I ... n De encontrar el...
Transcript of Inteligencia Artificial I - · PDF fileInteligencia Artificial I ... n De encontrar el...
1
InteligenciaInteligenciaArtificial IArtificial I
Rafael Rivera López
Departamento de Sistemas y Computación
Ago-Dic 2008
Veracruz, Ver.
Ingeniería en Sistemas Computacionales
2
Técnicas de Búsqueda y
Satisfacción de Restricciones
Unidad IV
3
ResoluciónResoluciónde Problemasde Problemas
I.3
29/11/09 4
Resolución de problemas
Se quiere:q Resolver automáticamente un problema
Se necesita:q Una representación del problemaq Algoritmos que usen alguna estrategia para
resolver el problema definido en esa representación
29/11/09 5
Definición de un problema
Si se abstraen los elementos de un problema se pueden identificar:q Un punto de partidaq Un objetivo a alcanzarq Acciones a disposición para resolver el
problemaq Restricciones sobre el objetivo (p.e., de
costo)q Elementos del dominio que son relevantes en
el problema (p.e., conocimiento incompleto del punto de partida)
29/11/09 6
Representación de problemas
Existen diferentes formas de representar problemas para resolverlos de manera automáticaRepresentaciones generales:q Espacio de estados. Un problema se divide en un
conjunto de pasos de resolución desde el inicio hasta el objetivo.
q Reducción a sub-problemas. Un problema se descompone en una jerarquía de sub-problemas.
Representaciones para problemas específicos:q Resolución de juegosq Satisfacción de restricciones
7
RepresentaciónRepresentaciónpor Estadospor Estados
I.3
29/11/09 8
Representación de problemas: estados• Se puede definir un problema por los elementos
que intervienen y sus relaciones.En cada instante de la resolución de un problema esos elementos tendrán unas características y relaciones específicas.
• Se denomina estado a la representación de los elementos que describen el problema en un momento dado.Se distinguen dos estados especiales: el estado inicial (punto de partida) y el estado final (en general, el objetivo del problema).
29/11/09 9
Espacio de estados
• El conjunto de todos los estados alcanzables desde el estado inicial conforma lo que se denomina espacio de estados.Representa todos los caminos que hay entre todos los estados posibles de un problema.El espacio de estados forma un grafo (o mapa) en el cual los nodos son estados y los arcos son acciones.La solución del problema está dentro de ese mapa.
10
Terminología
Espacio de estados
Estado Solución
11
Terminología
Espacio de búsqueda
Estado
Ruta de búsqueda
Solución
12
Terminología de búsquedaEstado inicial: Donde el agente inicia la búsqueda.Operadores: Definición de las acciones que un agente puede tomar.n Especifican como el agente puede moverse dentro del
espacio de búsqueda.
Prueba de meta: Es la forma de determinar si la búsqueda ha tenido éxito.n Comparar el estado actual contra el estado meta
Costo de la ruta: Es el costo total de alcanzar la meta desde el estado inicial. n Generalmente es la suma de los costos individuales de
las acciones.
29/11/09 13
Descripción de un problema en el espacio de estados
Definir el espacio de estados (explícita o implícitamente)Especificar el estado inicialEspecificar el estado final o las condiciones que cumpleEspecificar los operadores de cambio de estado (condiciones de aplicabilidad y función de transformación)Especificar el tipo de solución:q La secuencia de operadores o el estado finalq Una solución cualquiera, la mejor (definición de
costo), todas …
14
Ejemplos de Ejemplos de Problemas de Problemas de
BúsquedaBúsqueda
I.3
15
Ejemplos de ProblemasAjedrez: Búsqueda a través de un conjunto de posibles movimientos.n Seleccionar un movimiento que mejora su posición.
Planeación de rutas: Búsqueda a través de un conjunto de posibles caminos.n Seleccionar áquel que minimice la distancia recorrida.
Prueba de Teoremas: Búsqueda en un conjunto de pasos de razonamiento.n Seleccionar una secuencia de razonamientos para probar un
teorema.
Aprendizaje de máquina: Búsqueda en un conjunto de conceptos.n Seleccionar un concepto que logre una mejor categorización.
16
Ejemplo: Ajedrez
Estado inicialn Ubicación inicial de las
piezas.
Operadoresn Reglas de movimiento de
las piezas
Prueba de metan Jaque-mate: el rey no
tiene opción de salir de un ataque.
17
Ejemplo: Planeación de rutas
Estado inicial:n Ciudad donde se inicia la
ruta.
Operadoresn Reglas de desplazamiento
entre ciudades.
Prueba de metan Cuando la ciudad localizada
sea la ciudad destino.
Teziutlán
Veracruz
Nautla
Poza Rica
Xalapa
Perote
29/11/09 18
Ejemplo: 8 puzzle• Espacio de estados:
n configuraciones de 8 fichas en el tablero" Estado inicial:
n cualquier configuración" Estado final:
n fichas en orden específico" Acción:
n “mover hueco”q Condiciones:
q el movimiento está dentro del tableroq Transformación:
q “mover el hueco” a la Izquierda, Derecha, Arriba y Abajo
" Solución: Qué pasos + El menor número
8
2 3
4
1
6
7
5
29/11/09 19
Ejemplo: n reinas
n = 4 n = 8
20
Tarea 46:
Identificar el Estado inicial, los operadores y la prueba de meta para el problema :n De las ocho reinas.n De los misioneros y canibales.n De encontrar el número telefónico de Pedro Pérez,
que vive en Veracruz, tienendo un grupo de directorios ordenados alfabéticamente por ciudad.
n De colorear un mapa en el plano usando cuatro colores, sin poner del mismo color dos regiones adyacentes (coloreo de grafos).
21
BúsquedaBúsqueda
I.3
22
Búsquedan Proceso:
wCuando el agente ejecuta una secuencia de acciones para encontrar una solución o meta
n Técnica para resolver problemas:w Sistematicamente explora un espacio de estados del
problema para resolverlo.
23
Estrategia de búsqueda
Define la forma de seleccionar una acción (operador) sobre un estado, para encontrar un nuevo estado, que acerque a la solución.Criterios para definir una estrategia de búsqueda:n Completez: la estrategia garantiza encontrar una
solución, si está existe.n Complejidad temporal: Cuanto tiempo tarda en
encontrar una solución.n Complejidad espacial: Cuanto espacio necesita
para encontrar una solución.n Optimalidad: Se encuentra la mejor solución
24
Estrategia de búsqueda
Tipos: n Sin información (ciega, uninformed)
wPor profundidad (depth-first)wPor amplitud (breadth-first)wCosto UniformewPor profundidad limitada (depth-limited)wPor profundidad iterativa (depth-first iterative
deepening)wBidireccional
n Con información
25
Árbol de búsqueda
Árbol de búsqueda: Es creado al aplicar la estrategia de búsqueda.Elementos:n Nodos: Representan a un posible estado, adicionando
otros elementos (padre, hijos, costo).
n Nodo raiz: Estado inicial.n Arcos: Señalan a los nodos hijos (sucesores o
expandidos).n Función sucesor: La que determina la forma de crear
hijos en el árbol (ejecuta la expansión del árbol).
26
Árbol de búsqueda
57
461
382
567
48
321
Estado Inicial Estado Meta
Problema: 8-puzzle
27
Árbol de búsqueda
28
Búsqueda por Búsqueda por amplitudamplitud
I.3
14 Jan 2004 CS 3243 - Blind Search 29
Búsqueda por amplitud
Expande un nodo aplicando los operadoresSe usa una cola FIFO, los sucesores se colocan al final de la cola.
Es A es estado meta?
Cola= [A]
14 Jan 2004 CS 3243 - Blind Search 30
Búsqueda por amplitud
Expande un nodo aplicando los operadoresSe usa una cola FIFO, los sucesores se colocan al final de la cola.
Expansión:cola = [B,C]
Es B el estado meta?
14 Jan 2004 CS 3243 - Blind Search 31
Búsqueda por amplitud
Expande un nodo aplicando los operadoresSe usa una cola FIFO, los sucesores se colocan al final de la cola.
Expansión:cola=[C,D,E]
Es C el estado meta?
14 Jan 2004 CS 3243 - Blind Search 32
Búsqueda por amplitud
Expande un nodo aplicando los operadoresSe usa una cola FIFO, los sucesores se colocan al final de la cola.
Expansión:cola=[D,E,F,G]
Es D el estado meta?
33
Búsqueda por Búsqueda por profundidadprofundidad
I.3
14 Jan 2004 CS 3243 - Blind Search 34
Búsqueda por profundidad
Expande un nodo aplicando los operadoresSe usa una cola LIFO, los sucesores se colocan al principio de la cola.
Es A el estado meta?
14 Jan 2004 CS 3243 - Blind Search 35
Búsqueda por profundidad
Expande un nodo aplicando los operadoresSe usa una cola LIFO, los sucesores se colocan al principio de la cola.
cola=[B,C]
Es B el estado meta?
14 Jan 2004 CS 3243 - Blind Search 36
Búsqueda por profundidad
Expande un nodo aplicando los operadoresSe usa una cola LIFO, los sucesores se colocan al principio de la cola.
cola=[D,E,C]
Es D el estado meta?
14 Jan 2004 CS 3243 - Blind Search 37
Búsqueda por profundidad
Expande un nodo aplicando los operadoresSe usa una cola LIFO, los sucesores se colocan al principio de la cola.
cola=[H,I,E,C]
Es H el estado meta?
14 Jan 2004 CS 3243 - Blind Search 38
Búsqueda por profundidad
Expande un nodo aplicando los operadoresSe usa una cola LIFO, los sucesores se colocan al principio de la cola.
cola=[I,E,C]
Es I el estado meta?
14 Jan 2004 CS 3243 - Blind Search 39
Búsqueda por profundidad
Expande un nodo aplicando los operadoresSe usa una cola LIFO, los sucesores se colocan al principio de la cola.
cola=[E,C]
Es E el estado meta?
14 Jan 2004 CS 3243 - Blind Search 40
Búsqueda por profundidad
Expande un nodo aplicando los operadoresSe usa una cola LIFO, los sucesores se colocan al principio de la cola.
cola=[J,K,C]
Es J el estado meta?
14 Jan 2004 CS 3243 - Blind Search 41
Búsqueda por profundidad
Expande un nodo aplicando los operadoresSe usa una cola LIFO, los sucesores se colocan al principio de la cola.
cola=[K,C]
Es K el estado meta?
14 Jan 2004 CS 3243 - Blind Search 42
Búsqueda por profundidad
Expande un nodo aplicando los operadoresSe usa una cola LIFO, los sucesores se colocan al principio de la cola.
cola=[C]
Es C el estado meta?
14 Jan 2004 CS 3243 - Blind Search 43
Búsqueda por profundidad
Expande un nodo aplicando los operadoresSe usa una cola LIFO, los sucesores se colocan al principio de la cola.
cola=[F,G]
Es F el estado meta?
14 Jan 2004 CS 3243 - Blind Search 44
Búsqueda por profundidad
Expande un nodo aplicando los operadoresSe usa una cola LIFO, los sucesores se colocan al principio de la cola.
cola=[L,M,G]
es L el estado meta?
14 Jan 2004 CS 3243 - Blind Search 45
Búsqueda por profundidad
Expande un nodo aplicando los operadoresSe usa una cola LIFO, los sucesores se colocan al principio de la cola.
cola=[M,G]
Es M el estado meta?
46
Búsqueda por costo Búsqueda por costo uniformeuniforme
I.3
14 Jan 2004 CS 3243 - Blind Search 47
Costo Uniforme
Expandir el nodo con menor costo de ruta.
48
Búsqueda por Búsqueda por profundidad limitadaprofundidad limitada
I.3
14 Jan 2004 CS 3243 - Blind Search 49
Produndidad limitada
• La búsqueda por profundidad puede ser infinita.
•Solución à búsqueda por profundidad limitada: Solo se expande hasta un
nivel de profundidad.
à búsqueda por profundidad iterativa: El nivel de profundidad seva incrementando.
14 Jan 2004 CS 3243 - Blind Search 50
Profundidad Limitada con L=0
14 Jan 2004 CS 3243 - Blind Search 51
Profundidad Limitada con L=1
14 Jan 2004 CS 3243 - Blind Search 52
Profundidad Limitada con L=2
14 Jan 2004 CS 3243 - Blind Search 53
Profundidad Limitada con L=3
14 Jan 2004 CS 3243 - Blind Search 54
Búsqueda bidireccional
n Expande tando el nodo inicial como el nodo meta.n La expansión debe terminar cuando las
expansiones coinciden en un nodo.
14 Jan 2004 CS 3243 - Blind Search 55
Tarea 47: Mundo de los bloques
n A partir del espacio de búsqueda del mundo de los bloques:n Numerar los posibles estadosn Indicar la forma de crecimiento de la cola de expansión
aplicando, desde el nodo inicialn Búsqueda por profundidadn Búsqueda por amplitud
56
Búsqueda con Búsqueda con InformaciónInformación
I.3
57
Búsqueda con información
Utilizan conocimiento adicional a la definición del problema, para alcanzar la meta.Generalmente se representa con una función que estima la distancia del nodo actual a la meta:n Best-first (greedy best-first y A*)n Heurísticasn Búsqueda localn Hill-climbing (ascenso de colina)n Recocido simulado, algoritmos genéticos, ...
58
Búsqueda best-firstLa función f(n) determina un estimado del costo total.n Se expande el nodo con el costo menor f(n).
Casos especiales:n greedy best-first (glotón)n A* (A estrella)
59
Búsqueda de ruta óptima
374
253
366
329
60
Búsqueda greedy best-first
f(n) = Estima el costo del nodo actual a la meta.Greedy best-first expande el nodo que “aparenta” estar mas cerca de la meta.Ejemplo de rutas:n f(n) = Es la distancia en línea recta entre
una ciudad y Bucarest.
61
Búsqueda greedy best-first
62
Búsqueda greedy best-first
63
Búsqueda greedy best-first
64
Búsqueda greedy best-first
65
Búsqueda A*
Evita expandir nodos que son muy costosos.Evaluation function f(n) = g(n) + h(n)g(n) = Costo de llegar al nodo n.h(n) = Costo estimado de llegar a la meta desde n.f(n) = Costo total estimado de la ruta, pasando por n, entre el inicio y la meta.
66
Búsqueda A*
67
Búsqueda A*
68
Búsqueda A*
69
Búsqueda A*
70
Búsqueda A*
71
Búsqueda A*
14 Jan 2004 CS 3243 - Blind Search 72
Tarea 48:
Definir los siguientes conceptos:n Heurístican Búsqueda localn Hill-climbing (ascenso de colina)n Recocido simulado