La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

1. Problemas de Satisfacción de Restricciones (CSP).

Presentaciones similares


Presentación del tema: "1. Problemas de Satisfacción de Restricciones (CSP)."— Transcripción de la presentación:

1 1. Problemas de Satisfacción de Restricciones (CSP).
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.). Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

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

3 El Problema de las 8 Reinas…
EJEMPLOS 1 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 103(s+m)+102(e+o)+10(n+r)+d+e=104m+103o+102n+y Objetivos Consistencia Soluciones El Problema de las 8 Reinas… 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 z w Hoy en día muchos problemas de la vida real se pueden modelar mediante problemas de satisfacción de restricciones. Los CSPs representan un metodología de resolución de problemas que constan de un conjunto de variables, cada una de ellas acotada en un dominio y un conjunto de restricciones que la solución debe satisfacer. Por ejemplo un problema de cripto-aritmética, donde las variables son (sendmory) cada una de ellas puede tomar valores entre 0 y 9 y se tiene que satisfacer que todas ellas toman valores distintos y que se cumpla esta suma (send+more=money). Los CSPs se pueden aplicar en muchas áreas tales como: EL DISEÑO EN LA INGENIERIA LA PLANIFICACION, SCHEDULING EN DIAGNOSIS ETC… Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

4 EJEMPLOS 2 Donde nació y vive cada uno?
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. Por ejemplo aquí presentamos un problema real de diseño de plantas en los edificios, donde las variables son las dimensiones de las vigas (longitud, altura, etc), el canto de forjado (grosor del suelo), etc, algunas de ellas acotadas en dominios discretos y otras en dominios continuos, sujetas a una serie de restricciones como pueden ser vibraciones, refuerzos, conexiones, etc. En este tipo de problemas, el objetivo, además de la consistencia del problema, pueden ser, la generación de un conjunto de soluciones, incluso las soluciones extremas y los intervalos de tolerancia, donde pueden oscilar las variables. Donde nació y vive cada uno? Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

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

6 EJEMPLOS 4 "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. Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

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

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

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

10 Definición de CSP Un Problema de Satisfacción de Restricciones (CSP)
se puede representar como: Un Conjunto de Variables: X={x1, x2, ..., xn} Dominios de Interpretación (D = <D1,…,Dn> ) para las variables: xiÎDi Un Conjunto de Restricciones entre las variables: C ={c1, c2, ..., cm} Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

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

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

13 Modelización 2 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 c1+n+r = e+10c2 c2+e+o = n+10c3 c3+s+m = 10m+o s e n d + m o r e m o n e y Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

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

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

16 Objetivos Objetivo de un CSP: Algoritmos para 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. Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

17 Conceptos básicos Dado un CSP (X, Di, C), Una instanciación (o asignación) de las variables X es una asignación de valores a las variables en sus dominios: x1=v1, x2=v2, ..., xn=vn / viÎ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 xi si existe una solución del CSP en la cual participa la asignación xi=v. Un CSP es consistente sii tiene al menos una solución. Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

18 Conceptos básicos Variables
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. Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

19 Conceptos básicos Restricciones
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. Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

20 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, Xi 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 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

21 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 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

22 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) Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

23 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" Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

24 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. Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

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

26 CSPs binarios & n-arios No Binario
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. X1 X2 X3 X5 X4 X7 X6 C123 C24567 Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

27 "xiÎCSP, $viÎD / (xi ci0) se cumple para xi=vi (ie: DÇci0¹{Æ})
Consistencia: Niveles 1-consistencia Consistencia de nodo (1-consistencia) Un nodo (xi) 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: "xiÎCSP, $viÎD / (xi ci0) se cumple para xi=vi (ie: DÇci0¹{Æ}) Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

28 "cij ÍCSP, "viÎdi $vjÎdj / (xi cij xj) se cumple para xi=vi, xj=vj
Consistencia: Niveles 2-consistencia 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: Cij xi xj [3,6] [8,10] es consistente, pero no lo sería si cij en vez de £ fuese ³ Un grafo es arco-consistente si todos sus arcos son consistentes. "cij ÍCSP, "viÎdi $vjÎdj / (xi cij xj) se cumple para xi=vi, xj=vj Departamento Ciencia de la Computación e Inteligencia Artificial. Curso

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

30 Consistencia: Niveles 3-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. Departamento Ciencia de la Computación e Inteligencia Artificial. Curso


Descargar ppt "1. Problemas de Satisfacción de Restricciones (CSP)."

Presentaciones similares


Anuncios Google