4 búsqueda y satisfacción de restricciones

11
0 Unidad IV Búsqueda y satisfacción de restricciones ISC 8°Semestre Inteligencia Artificial. Julio César Zamudio Montalvo 19/05/2011

Transcript of 4 búsqueda y satisfacción de restricciones

Page 1: 4 búsqueda y satisfacción de restricciones

8/4/2019 4 búsqueda y satisfacción de restricciones

http://slidepdf.com/reader/full/4-busqueda-y-satisfaccion-de-restricciones 1/11

0

Unidad IVBúsqueda ysatisfacción derestricciones ISC

8°SemestreInteligencia Artificial.

Julio César Zamudio

Montalvo

19/05/2011

Page 2: 4 búsqueda y satisfacción de restricciones

8/4/2019 4 búsqueda y satisfacción de restricciones

http://slidepdf.com/reader/full/4-busqueda-y-satisfaccion-de-restricciones 2/11

 

1

1 4 BÚSQUEDA Y SATISFACCIÓN DE RESTRICCIONES

Contenido4 BÚSQUEDA Y SATISFACCIÓN DE RESTRICCIONES ........................................................................................................ 2 

4.1 PROBLEMAS Y ESPACIOS DE ESTADOS ............................................................................................................................ 2 

4.2 ESPACIOS DE ESTADOS DETERMINÍSTICOS Y ESPACIOS NO DETERMINÍSTICOS. .................................... 5 

4.3 BÚSQUEDA SISTEMÁTICA ...................................................................................................................................................... 5 4.3.1 BÚSQUEDA DE METAS A PROFUNDIDAD ............................................................................................................... 6 

4.3.2 BÚSQUEDA DE METAS EN ANCHURA...................................................................................................................... 8 

4.4 SATISFACCIÓN DE RESTRICCIONES .................................................................................................................................. 8 

4.5 RESOLUCIÓN DE PROBLEMAS DE JUEGO ....................................................................................................................... 9 

Page 3: 4 búsqueda y satisfacción de restricciones

8/4/2019 4 búsqueda y satisfacción de restricciones

http://slidepdf.com/reader/full/4-busqueda-y-satisfaccion-de-restricciones 3/11

 

2

2 4 BÚSQUEDA Y SATISFACCIÓN DE RESTRICCIONES

4 BÚSQUEDA Y SATISFACCIÓN DE RESTRICCIONES

Problemas de satisfacción de restricciones es un tipo especial de problemas quesatisfacen algunas propiedades adicionales. Las restricciones pueden involucrar una o varias variables al mismo tiempo. A veces en estos problemas conviene hacer una verificación hacia adelante (forward checking) para detectar estados sin solución.Muchas veces lo que conviene es analizar la variable más restringida, esto es,asignarle un valor a la variable que está involucrada en la mayor cantidad derestricciones. Otra heurística común es seleccionar un valor que elimine el menor

número de valores en las otras variables asociadas a la variable por medio de unarestricción. A veces la descripción del estado contiene toda la información necesariapara llegar a una solución y se utilizan algoritmos que hacen mejoras iterativas. Laidea general es empezar con una configuración completa y hacer modificacionespara mejorar su calidad. Normalmente, en problemas de maximización se trata demoverse hacia el pico más alto. Los métodos iterativos normalmente guardan sólo suestado actual y no ven mas allá de sus vecinos inmediatos. Aquí podemos mencionara gradiente descendiente y a recocido simulado.

4.1 PROBLEMAS Y ESPACIOS DE ESTADOS

Muchos de los problemas que pueden ser resueltos aplicando técnicas de inteligenciaartificial se modelan en forma simbólica y discreta definiendo las configuracionesposibles del universo estudiado. El problema se plantea entonces en términos deencontrar una configuración objetivo a partir de una configuración inicial dada,aplicando transformaciones válidas según el modelo del universo. La respuesta es la

secuencia de transformaciones cuya aplicación sucesiva lleva a la configuracióndeseada. Los ejemplos más característicos de esta categoría de problemas son los juegos En un juego, las configuraciones del universo corresponden directamente alas configuraciones del tablero. Cada configuración es un estado que puede seresquematizado gráficamente y representado en forma simbólica. Lastransformaciones permitidas corresponden a las reglas o movidas del juego,

Page 4: 4 búsqueda y satisfacción de restricciones

8/4/2019 4 búsqueda y satisfacción de restricciones

http://slidepdf.com/reader/full/4-busqueda-y-satisfaccion-de-restricciones 4/11

 

3

3 4.1 PROBLEMAS Y ESPACIOS DE ESTADOS

formalizadas como transiciones de estado. Entonces, para plantear formalmente unproblema, se requiere precisar una representación simbólica de los estados y definirreglas del tipo condición acción para cada una de las transiciones válidas dentro deluniverso modelado. La acción de una regla indica como modificar el estado actualpara generar un nuevo estado. La condición impone restricciones sobre laaplicabilidad de la regla según el estado actual, el estado generado o la historiacompleta del proceso de solución. El espacio de estados de un juego es un grafocuyos nodos representan las configuraciones alcanzables (los estados válidos) y cuyosarcos explicitan las movidas posibles (las transiciones de estado). En principio, sepuede construir cualquier espacio de estados partiendo del estado inicial, aplicandocada una de las reglas para generar los sucesores inmediatos, y así sucesivamentecon cada uno de los nuevos estados generados (en la práctica, los espacios deestados suelen ser demasiado grandes para explicitarlos por completo). Cuando unproblema se puede representar mediante un espacio de estados, la solucióncomputacional corresponde a encontrar un camino desde el estado inicial a unestado objetivo.

Ejemplo de espacio de estados

Descripción del problema:

Un arriero se encuentra en el borde de un rio llevando un puma, una cabra y unalechuga. Debe cruzar a la otra orilla por medio de un bote con capacidad para dos(el arriero y alguna de sus pertenecias). La dificultad es que si el puma se queda solo

con la cabra la devorará, y lo mismo sucederá si la cabra se queda sola con lalechuga. ¿Cómo cruzar sin perder ninguna pertenencia?

Representación de las configuraciones del universo del problema:

Basta precisar la situación antes o después de cruzar. El arriero y cada una de suspertenencias tienen que estar en alguna de las dos orillas. La representación delestado debe entonces indicar en que lado se encuentra cada uno de ellos. Para estose puede utilizar un término simbólico con la siguiente sintaxis: estado(A,P,C,L), enque A, P, C y L son variables que representan, respectivamente, la posición del

arriero, el puma, la cabra y la lechuga. Las variables pueden tomar dos valores: i y d,que simbolizan respectivamente el borde izquierdo y el borde derecho del rio. Porconvención se elige partir en el borde izquierdo.

El estado inicial es entonces estado(i,i,i,i).El estado objetivo es estado(d,d,d,d).Definición de las reglas de transición:

Page 5: 4 búsqueda y satisfacción de restricciones

8/4/2019 4 búsqueda y satisfacción de restricciones

http://slidepdf.com/reader/full/4-busqueda-y-satisfaccion-de-restricciones 5/11

 

4

4 4.1 PROBLEMAS Y ESPACIOS DE ESTADOS

El arriero tiene cuatro acciones posibles: cruzar solo, cruzar con el puma, cruzar conla cabra y cruzar con la lechuga. Estas acciones están condicionadas a que ambospasajeros del bote estén en la misma orilla y a que no queden solos el puma con lacabra o la cabra con la lechuga.

El estado resultante de una acción se determina intercambiando los valores i y dpara los pasajeros del bote

Generación del espacio de estadosEn este ejemplo se puede explicitar todo el espacio de estados (el número deconfiguraciones está acotado por 24).

El camino que pasa por la siguiente secuencia de estados es una solución delproblema: estado(i,i,i,i) cruza con cabra estado(d,i,d,i) cruza solo estado(i,i,d,i) cruzacon puma estado(d,d,d,i) cruza con cabra estado(i,d,i,i) cruza con lechugaestado(d,d,i,d) cruza solo estado(i,d,i,d) cruza con cabra estado(d,d,d,d)

Page 6: 4 búsqueda y satisfacción de restricciones

8/4/2019 4 búsqueda y satisfacción de restricciones

http://slidepdf.com/reader/full/4-busqueda-y-satisfaccion-de-restricciones 6/11

 

5

5 4.2 ESPACIOS DE ESTADOS DETERMINÍSTICOS Y ESPACIOS NO DETERMINÍSTICOS.

4.2 ESPACIOS DE ESTADOS DETERMINÍSTICOS Y ESPACIOS NO DETERMINÍSTICOS.

Un ambiente determinístico es aquel en el cual cualquier acción tiene un solo efectogarantizado, no hay incertidumbre acerca del estado que resultará de la realizaciónde la acción. El mundo físico puede ante todos los intentos y propósitos, serconsiderado como no determinístico. Un ambiente no determinístico presenteproblemas más grandes para el agente Un sistema es determinístico si, para unestado dado, al menos aplica una regla a él y de solo una manera. Si más de unaregla aplica a cualquier estado particular del sistema, o si una regla aplica a unestado particular del sistema en más de una manera, entonces el sistema es nodeterminístico

4.3 BÚSQUEDA SISTEMÁTICA

También llamad árbol de búsqueda. EE representable por un árbol Raíz asignación vacía A cada nivel asociamos una variable Sucesores valores de la variable del nivel.Rama define una asignación. Complejidad exponencial Árbol de búsqueda tienetodos los estados Recorrido exhaustivo implica método completo Si hay solución laencuentra Si no hay de muestra que no existe

Page 7: 4 búsqueda y satisfacción de restricciones

8/4/2019 4 búsqueda y satisfacción de restricciones

http://slidepdf.com/reader/full/4-busqueda-y-satisfaccion-de-restricciones 7/11

 

6

6 4.3 BÚSQUEDA SISTEMÁTICA

4.3.1 BÚSQUEDA DE METAS A PROFUNDIDADSi el conjunto open se maneja como una lista LIFO, es decir, como un stack, siemprese estará visitando primero los últimos estados en ser generados. Esto significa quesi A genera B y C, y B genera D, antes de visitar C se visita D, que está más alejadode la raiz A, o sea más profundo en el árbol de búsqueda. El algoritmo tiene en estecaso la tendencia de profundizar la búsqueda en una rama antes de explorar ramasalternativas.

procedure Búsqueda_en_profundidad

{ open [estado_inicial] closed {} while

(open no está vacía) {

remover el primer estado X de la lista open if (X es un estado objetivo)

Page 8: 4 búsqueda y satisfacción de restricciones

8/4/2019 4 búsqueda y satisfacción de restricciones

http://slidepdf.com/reader/full/4-busqueda-y-satisfaccion-de-restricciones 8/11

 

7

7 4.3 BÚSQUEDA SISTEMÁTICA

return éxito

else { generar el conjunto de sucesores del estado X agregar el estado X al conjuntoclosed eliminar sucesores que ya están en open o en closed agregar el resto de lossucesores al principio de ope

} } return fracaso }

Considerando que la cantidad promedio de sucesores de los nodos visitados es B(llamado en inglés el branching factor y en castellano el factor de ramificación), ysuponiendo que la profundidad máxima alcanzada es n, este algoritmo tiene unacomplejidad en tiempo de O(Bn) y, si no se considera el conjunto closed, unacomplejidad en espacio de O(B × n). En vez de usar el conjunto closed, el control de

ciclos se puede hacer descartando aquellos estados que aparecen en el caminogenerado hasta el momento (basta que cada estado generado tenga un puntero a supadre). El mayor problema de este algoritmo es que puede "perderse" en una ramasin encontrar la solución. Además, si se encuentra una solución no se puedegarantizar que sea el camino más corto.

Page 9: 4 búsqueda y satisfacción de restricciones

8/4/2019 4 búsqueda y satisfacción de restricciones

http://slidepdf.com/reader/full/4-busqueda-y-satisfaccion-de-restricciones 9/11

 

8

8 4.4 SATISFACCIÓN DE RESTRICCIONES

4.3.2 BÚSQUEDA DE METAS EN ANCHURA

búsqueda 1° en anchura se expande primero el nodo raíz, a continuación se expandetodos los sucesores del nodo raíz, después los sucesores en general, se expandentodos los nodos a una profundidad en el árbol de búsqueda antes de expandir cualnodo del próximo nivel (FIFO) cola porque primero que entra primero que sale ennodos primero visitados primero expandidos, si la solución esta aúna profundidad d,el peso de los nodos expandidos todos excepto el ultimo nodo(porque el nodoobjetivo no se expande) generando b(d +1)- b nodos en el nivel d + 1 En la figura labúsqueda por anchura es A-B-C-D-E-F-G Desventaja consume mucho tiempo ymemoria para completar una búsqueda

4.4 SATISFACCIÓN DE RESTRICCIONES

Un problema de satisfacción de restricciones (PSR) viene definido por lo siguienteselementos

Page 10: 4 búsqueda y satisfacción de restricciones

8/4/2019 4 búsqueda y satisfacción de restricciones

http://slidepdf.com/reader/full/4-busqueda-y-satisfaccion-de-restricciones 10/11

 

9

9 4.5 RESOLUCIÓN DE PROBLEMAS DE JUEGO

1) Conjunto finito de variables {x1…xN}

2) Conjunto finito de dominios D¡ asociado a cada variable x¡ especificando losposibles valores que pueden tomar.3) Un conjunto finito de restricciones C1,…Cn que definen una serie de propiedadesque deben verificar los valores asignados a las variables.

Una solución al problema es una asignación de valores a las variables.{x1 = v1, ….xn =

 vn} tal que v¡ e D¡ y se verifican las restricciones. Esta formulación permite unarepresentación simple del problema y el uso de heurísticas de propósito general,independiente del problema.

4.5 RESOLUCIÓN DE PROBLEMAS DE JUEGO

Las torres de Hanoi arcos son los movimientos permitidos para mover el disco pordisco desde su origen a su destino Reglas Se debe mover un solo disco a la vezcolocando en otro poste si y solo si no hay un disco de menor tamaño en este.Objetivo mover los 3 discos de ”a” a ”c”, en el orden de menor a mayor con la

menor cantidad de movimientos posibles 2n -1 para n=3 se tiene 7

Page 11: 4 búsqueda y satisfacción de restricciones

8/4/2019 4 búsqueda y satisfacción de restricciones

http://slidepdf.com/reader/full/4-busqueda-y-satisfaccion-de-restricciones 11/11

 

10

10 4.5 RESOLUCIÓN DE PROBLEMAS DE JUEGO