La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

1 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso 2003-04 CAPITULO 1 1. Problemas de Satisfacción de Restricciones (CSP). Definición.

Presentaciones similares


Presentación del tema: "1 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso 2003-04 CAPITULO 1 1. Problemas de Satisfacción de Restricciones (CSP). Definición."— Transcripción de la presentación:

1 1 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso CAPITULO 1 1. Problemas de Satisfacción de Restricciones (CSP). Definición del problema de satisfacción de restricciones (CSP). Áreas de aplicación. Especificación de un problema CSP: variables, dominios y restricciones. Tipología de restricciones (discretas y continuas, aridad de las restricciones, fuertes y débiles, restricciones lineales, disyuntivas, etc.).

2 2 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Constraint Satisfaction is a simple but powerful idea Rina Dechter, In 'Constraint Processing' Morgan Kaufmann Pub. (2003) CSP

3 3 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso s e n d + m o r e m o n e y Variables: s,e,n,d,m,o,r,y Dominios: s,e,n,d,m,o,r,y {0,…,9} Restricciones 10 3 (s+m)+10 2 (e+o)+10(n+r)+d+e=10 4 m+10 3 o+10 2 n+y Coloreado de Mapas Variables: x,y,z,w Dominios: x,y,z,w :{r,v,a} Restricciones: binarias x y, y z, z x,... x y zw Objetivos Consistencia Soluciones El Problema de las 8 Reinas… EJEMPLOS 1

4 4 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Juan, Pepe y Paco nacieron y viven en ciudades diferentes (Málaga, Madrid y Valencia). Además, ninguno vive en la ciudad donde nació. Juan es más alto que el que vive en Madrid. Paco es cuñado del que vive en Valencia. El que vive en Madrid y el que nació en Málaga tienen nombres que comienzan por distinta letra. El que nació en Málaga y el que vive ahora en Valencia tienen nombres que comienzan por la misma letra. Donde nació y vive cada uno? Donde nació y vive cada uno? EJEMPLOS 2

5 5 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Existen 3 periódicos (P1, P2, P3) y 4 lectores (L1, L2, L3, L4), que desean leer los periódicos en el mismo orden. Problemas de Horarios, Asignación de Recursos, Scheduling, etc... Problemas de Horarios, Asignación de Recursos, Scheduling, etc... Obtener la asignación óptima (scheduling) de lectura. EJEMPLOS 3

6 6 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso "Juan va de su casa al trabajo en coche (30-40 minutos) o en tren (al menos una hora). Luis va en coche (20-30 minutos) o en metro (40-50 minutos). Hoy Juan parte de casa entre las 8:10 y las 8:20 y Luis llega al trabajo entre las 9:00 y las 9:10. Además, sabemos que Juan llegó al trabajo entre 10 y 20 minutos después de que Luis saliera de casa Cuestiones: –¿Esta información es consistente? –¿Es posible que Juan haya usado el tren y Luis haya usado el Metro? –¿Cuales son los posibles tiempos en los que Luis pudo haber salido de casa?, etc. EJEMPLOS 4

7 7 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso EJEMPLOS 5

8 8 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Variables: altura de viga, longitud de viga, canto de forjado Dominios continuos: altura, longitud : [0, 10] Restricciones: vibraciones, refuerzos, conexiones, etc. Objetivos Consistencia Intervalos de tolerancia Soluciones etc EJEMPLOS 6

9 9 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Problemas de Satisfacción de Restricciones CSP Metodología de Resolución de problemas INTELIGENCIA ARTIFICIAL CSP

10 10 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Un Problema de Satisfacción de Restricciones (CSP) se puede representar como: Un Conjunto de Variables: X={x 1, x 2,..., x n } Dominios de Interpretación ( D = ) para las variables: x i D i Un Conjunto de Restricciones entre las variables: C ={c 1, c 2,..., c m } Definición de CSP

11 11 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso MODELACIÓN CSP Variables Dominios Restricciones(EXPRESIVIDAD) 1) RESOLUCIÓN CSP Técnicas Resolución CSP(EFICICIENCIA) 2) Modelización CSP

12 12 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso s e n d + m o r e m o n e y Variables: s,e,n,d,m,o,r,y Dominios: s,e,n,d,m,o,r,y:{0,…,9} Restricciones Variables: s, e, n, d, m, o, r, y Dominios: s, e, n, d, m, o, r,y : {0,…,9} Restricciones: Todas Diferentes, 10 3 (s+m) (e+o) + 10(n+r) + d + e= 10 4 m o n + 10e+y Especificación CSP Modelización 1

13 13 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Variables: s, e, n, d, m, o, r, y Dominios: s, e, n, d, m, o, r,y : {0,…,9} Restricciones: s e, s n, s d, s m, s o, s r, s y, e n, e d, e m,….. d+e = y+10c1 c 1 +n+r = e+10c 2 c 2 +e+o = n+10c 3 c 3 +s+m = 10m+o Modelización 2 s e n d + m o r e m o n e y

14 14 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Resolución s e n d + m o r e m o n e y MODELACIÓN CSP RESOLUCIÓN CSP

15 15 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Objetivos Consistencia Consistencia del problema (existe solución). soluciones Obtener una o todas las soluciones del problema. Obtener los dominios mínimos. optimiza La solución que optimiza una función objetivo o multi-objetivo.

16 16 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Objetivo de un CSP: Tiene solución? Consistencia. Obtener una solución. Obtener todas las soluciones. Obtener una solución óptima, o al menos una buena solución, medida por alguna función objetivo. Algoritmos para CSP: Técnicas de Búsqueda (Algoritmos CSP): Obtienen una solución, guiados por heurísticas. Técnicas Inferenciales (Algoritmos de propagación): Obtienen las consecuencias de las restricciones explícitamente conocidas del problema. Objetivos

17 17 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Dado un CSP (X, D i, C), Una instanciación (o asignación) de las variables X es una asignación de valores a las variables en sus dominios: x 1 =v 1, x 2 =v 2,..., x n =v n / v i D Una solución del CSP es una instanciación consistente de las variables, de forma que se satisfacen todas las restricciones del problema. Un valor v es un valor consistente (o posible) para x i si existe una solución del CSP en la cual participa la asignación x i =v. Un CSP es consistente sii tiene al menos una solución. Conceptos básicos

18 18 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Un CSP discreto es aquel en el que todas las variables son discretas, es decir, toman valores en dominios finitos. Un CSP continuo es un CSP en el que todas las variables son continuas, es decir, tienen dominios continuos. Un CSP mixto consta de variables continuas y discretas. Un CSP binario es aquel en el que todas las restricciones tienen a los sumo dos variables respectivamente. Un CSP no binario o n-ario es aquel en el que las restricciones tienen cualquier cualquier número de variables. Conceptos básicos Variables

19 19 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Discretas: las variables participantes están acotadas en dominios discretos. Continuas: las variables participantes están acotadas en dominios continuos. Binarias: son restricciones en las que sólo participan dos variables. N-arias: son restricciones en las que sólo participan cualquier número de variables (n>2). Fuertes (hard): son restricciones cuya satisfabilidad es imprescindible. Débiles (soft): son restricciones cuya satisfabilidad no es imprescindible. Difusas (fuzzy): son restricciones definidas sobre niveles de preferencia. Disyuntivas: son restricciones compuestas por un conjunto disjunto de restricciones. Conceptos básicos Restricciones

20 20 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso N-reinas Definición: posicionar n reinas en un tablero de ajedrez n x n, de forma que no se ataquen. Formulación: 1 reina por fila variables: reinas, X i reina en la fila i-ésima dominios: columnas posibles {1, 2,..., n} restricciones: no colocar dos reinas en – la misma columna – la misma diagonal rel(Rij)= {(a,b)| a b |i -j| |a -b|} Características: CSP binario, discreto y finito

21 21 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Coloreado de Grafos Definición: Dado un grafo, n nodos m colores, asignar un color a cada nodo de forma que no haya dos nodos adyacentes con el mismo color. Formulación: variables: nodos dominios: colores posibles restricciones: nodos adyacentes Características: CSP binario, discreto y finito

22 22 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Crucigrama Definición: Dada una rejilla y un diccionario, construir un crucigrama legal. Formulación: variables: grupo de casillas para una palabra (slots) dominios: palabras del diccionario con la longitud adecuada restricciones: misma letra en la intersección de dos palabras Características: CSP binario, discreto y finito (dominios grandes)

23 23 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Restricciones Temporales Definición: dado un conjunto de sucesos que ocurren en intervalos temporales con ciertas relaciones, encontrar una asignación temporal consistente. Formulación: variables: sucesos dominios: intervalo temporal para cada suceso restricciones: distancia temporal permitida entre sucesos; relaciones temporales antes, después, solapado, etc. Características: CSP binario, continuo, con restricciones disyuntivas "Juan va de su casa al trabajo en coche (30-40 minutos) o en tren (al menos una hora). Luis va en coche (20-30 minutos) o en metro (40-50 minutos). Hoy Juan parte de casa entre las 8:10 y las 8:20 y Luis llega al trabajo entre las 9:00 y las 9:10. Además, sabemos que Juan llegó al trabajo entre 10 y 20 minutos después de que Luis saliera de casa" "Juan va de su casa al trabajo en coche (30-40 minutos) o en tren (al menos una hora). Luis va en coche (20-30 minutos) o en metro (40-50 minutos). Hoy Juan parte de casa entre las 8:10 y las 8:20 y Luis llega al trabajo entre las 9:00 y las 9:10. Además, sabemos que Juan llegó al trabajo entre 10 y 20 minutos después de que Luis saliera de casa"

24 24 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Problema de diseño Definición: el problema consiste en llevar a cabo el diseño de un puente que debe constar de pocos arcos donde es preferible que los pilares no toquen el agua, con pilares lo más bajos posibles. Formulación: variables: partes y elementos del diseño dominios: valores permitidos para cada parte y elemento restricciones: propiedades que las partes deben satisfacer. Características: CSP no binario, mixto, con restricciones hard, soft y difusas.

25 25 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Un CSP binario se suele representar mediante un grafo, donde: Nodos: Variables Arcos: Relaciones binarias entre las variables. X1 R12 x2 x3 R35 x5 x1 R15 x5 x4 R42 x2 x4 R45 x5 x2 R25 x5 X1 X2 X3 X5 X4 CSPs binarios & n-arios Binario

26 26 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Un CSP no binario no se suele representar mediante un grafo, sino como un hiper-grafo perdiendo toda la funcionalidad existente sobre la teoría de grafos. donde: Nodos: Variables Arcos: Relaciones binarias entre las variables. C123 CSPs binarios & n-arios No Binario X1 X2 X3 X5 X4 X7 X6 C24567

27 27 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Consistencia de nodo (1-consistencia) Un nodo (x i ) es consistente si al menos un valor en su dominio es consistente con la restricción unaria del nodo: 10 xi 15, D(Xi):{0, 10} Un grafo red es nodo-consistente sii todos sus nodos son consistentes: x i CSP, v i D / (x i c i0 ) se cumple para x i =v i (ie: D c i0 { Consistencia: Niveles 1-consistencia

28 28 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Consistencia de arco (2-consistencia): Un arco (xi {cij} xj) es consistente si y solo si para cada asignación de xi en su dominio, existe una asignación para xi, tal que la restricción {cij} se satisface. Por ejemplo el arco: es consistente, pero no lo sería si c ij en vez de fuese Un grafo es arco-consistente si todos sus arcos son consistentes. c ij CSP, v i d i v j d j / (x i c ij x j ) se cumple para x i =v i, x j =v j xi xj Cij [3,6] [8,10] Consistencia: Niveles 2-consistencia

29 29 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Consistencia: Niveles 2-consistencia Azul, Rojo Azul Azul, Rojo Verde Azul, Verde X1 X4 X2 X3 Azul, Rojo Azul Azul, Rojo Verde Azul, Verde X1 X4 X2 X3 Grafo Inicial Grafo arco-consistente

30 30 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso Consistencia: Un grafo es 3-consistente sii todas sus 2-sendas son consistentes: "cij Í CSP, "viÎdi, "vjÎdj / (xi=vi cij xj=vj) Þ $vkÎdk / (xi=vi cik xk=vk) Ù (xj=vj cjk xk=vk) Senda-Consistencia (Montanari, Mackworth, 1976): –Una k-senda (x1, x2,..., xk, xj) es consistente sii para cualquier valor v1 d1 y vj dj, tal que la restriccion (x1=v1 c1j xj=vj) se cumple, –Entonces existe una secuencia de valores –v2 d2, v3 d3,..., vk dk –tal que las restricciones (v1 cl2 v2), (v2 c23 v3),...., (vk ck,j vj) se cumplen. Consistencia: Niveles 3-consistencia


Descargar ppt "1 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso 2003-04 CAPITULO 1 1. Problemas de Satisfacción de Restricciones (CSP). Definición."

Presentaciones similares


Anuncios Google