IA-cap5
-
Upload
adrian-ortega -
Category
Documents
-
view
23 -
download
2
Transcript of IA-cap5
Inteligencia ArtificialPRI reprime a la juventud michoacana.
Dr. Ivo H. Pineda Torres
Facultad de Ciencias de la ComputaciónBenemérita Universidad Autónoma de
Puebla
Otoño 2012
/IMAGENES/Morena
Problemas de Satisfacción de RestriccionesBibliografía:� Revisar la sección de la página del curso correspondiente a
/PRIMAVERA− 2012/capitulo − 5� antología CSP� Libro de texto
2 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Problemas de Satisfacción de RestriccionesTemas 5.1 al 5.5Recuerda como se definen los problemas tipo PSR
En donde veremos cómo el tratar los estados como más que sólopequeñas cajas negras conduce a la invención de una variedad denuevos poderosos métodos de búsqueda y a un entendimiento másprofundo de la estructura y complejidad del problema.Los estados seevalúan con heurísticas específicas del dominio y probados para ver sison estados objetivo ahora NO .
3 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Problemas de Satisfacción de RestriccionesTemas 5.1 al 5.5Recuerda como se definen los problemas tipo PSREn donde veremos cómo el tratar los estados como más que sólopequeñas cajas negras conduce a la invención de una variedad denuevos poderosos métodos de búsqueda y a un entendimiento másprofundo de la estructura y complejidad del problema.
Los estados seevalúan con heurísticas específicas del dominio y probados para ver sison estados objetivo ahora NO .
3 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Problemas de Satisfacción de RestriccionesTemas 5.1 al 5.5Recuerda como se definen los problemas tipo PSREn donde veremos cómo el tratar los estados como más que sólopequeñas cajas negras conduce a la invención de una variedad denuevos poderosos métodos de búsqueda y a un entendimiento másprofundo de la estructura y complejidad del problema.Los estados seevalúan con heurísticas específicas del dominio y probados para ver sison estados objetivo ahora NO .
3 of 46
/IMAGENES/Morena
/IMAGENES/Morena
blackboxLos estados serán cajas negras sin la estructura perceptible interna.Es bastante fácil ver que a un PSR se le puede dar una formulaciónincremental como en un problema de búsqueda estándar:� Estado inicial: la asignación vacía { }, en la que todas las variablesno están asignadas.
� Función de sucesor: un valor se puede asignar a cualquier variableno asignada,a condición de que no suponga ningún conflicto convariables antes asignadas.
� Test objetivo: la asignación actual es completa.� Costo del camino: un coste constante (por ejemplo, 1) para cadapaso.
4 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Arbol de búsqueda caso colorear mapa
5 of 46
/IMAGENES/Morena
/IMAGENES/Morena
al ver este árbol tenemos� El conjunto formado por todas las posibles asignaciones de un PSRse representa mediante un árbol de búsqueda.
� En cada nivel se asigna un valor a una variable, y los sucesores deun nodo son todos los valores de la variable asociada a este nivel.
� Cada camino del nodo raíz a un nodo terminal representa unaasignación completa.
� Los algoritmos se diferencian en cómo recorren el árbol debúsqueda a la hora de encontrar soluciones: búsqueda hacia atrás,salta hacia atrás, salta hacia atrás directo a conflicto, etc.
6 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Un grafo presente!!!!QUE HERMOSO ES PODER CONTAR CON ELLOS, NO TE DAGUSTO?
7 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Tipos de problemas� Satisfacción de restricciones: Problemas con dominios finitos.� Resolución de restricciones: Problemas con dominios infinitos.
8 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Conceptos involucradosCap.10 libro CSP(ANTOLOGÍA csp)1 La modelización del problema, que permite representar un
problema mediante un conjunto finito de variables, un dominio devalores finito para cada variable y un conjunto de restricciones queacotan las combinaciones válidas de valores que las variablespueden tomar. En la modelización CSP, es fundamental lacapacidad expresiva, a fin de poder captar todos los aspectossignificativos del problema a modelar.
2 Técnicas inferenciales que permiten deducir nueva informaciónsobre el problema a partir de la explícitamente representada. Estastécnicas también permiten acotar y hacer más eficiente el procesode búsqueda de soluciones.
9 of 46
/IMAGENES/Morena
/IMAGENES/Morena
cont.1 Técnicas de búsqueda de la solución, apoyadas generalmente por
criterios heurísticos, bien dependientes o independientes deldominio. El objetivo es encontrar un valor para cada variable delproblema de manera que se satisfagan todas las restricciones delproblema. En general, la obtención de soluciones en un CSP esNP-completo, mientras que la obtención de soluciones optimizadases NP-duro, no existiendo forma de verificar la optimalidad de lasolución en tiempo polinomial. Por ello, se requiere una graneficiencia en los procesos de búsqueda.
10 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Modelado de un problema PSR o CSPEl primer paso en la resolución de un CSP es su modelización.Respecto a la modelización de un problema CSP hay dos aspectosbásicos:� La potencia expresiva de las restricciones, es decir, la capacidad demodelar las restricciones realmente existentes en el problema real.
� La eficiencia de la representación, ya que dependiendo de lamodelización CSP, el problema se resolverá con más o menoseficiencia.
11 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Ejemplo: caso colorear mapaSea el siguiente mapa:
Variables: {x , y , z , w} una por regiónDominio: {rojo, Verde, Azul} Es únicoRestricciones: {x 6= y , x 6= w , x 6= z , y 6= w , w 6= z} Indicadas por lasaristasSolución: {(x , r), (y , v), (z , v), (w , a)}
12 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Ejemplo: CriptografíaAsignar a cada letra {s, e, n, d , m, o, r , y} un dígito del conjunto{0.., 9} de manera que satisfaga: send+more=money
s e n d+ m o r e−−−−−−m o n e y
Modelización:Restricciones:103(s+m)+102(e+o)+10(n+r)+d+e = 104m+103o+102n+10e+yRestricciones todas diferentes": 6= {s, e, n, d , m, o, r , y}La restricción todas diferentes puede reemplazarse por un conjunto derestricciones binarias: {s 6= e, s 6= n, ..., r 6= y}
13 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Ejemplo: CriptografíaAsignar a cada letra {s, e, n, d , m, o, r , y} un dígito del conjunto{0.., 9} de manera que satisfaga: send+more=money
s e n d+ m o r e−−−−−−m o n e y
Modelización:Restricciones:103(s+m)+102(e+o)+10(n+r)+d+e = 104m+103o+102n+10e+yRestricciones todas diferentes": 6= {s, e, n, d , m, o, r , y}La restricción todas diferentes puede reemplazarse por un conjunto derestricciones binarias: {s 6= e, s 6= n, ..., r 6= y}
13 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Ejemplo: n reinas tablero de ajedrez� Variables {xi}, i = 1, ..N� Dominio={1, 2, 3, 4, 5, N}� Restricciones: (∀xi , xj , i 6= j)
� xi 6= xj ,No en la misma fila� xi − xj 6= i − j ,No en la misma diagonal SE� xj − xi 6= i − j ,No en la misma diagonal SO
14 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Daniel se dió cuenta de que algo andaba mal!!!Caso particular N=4� |x1 − x2| 6= 1� |x1 − x3! 6= 2� |x1 − x4| 6= 3� |x2 − x3| 6= 1� |x2 − x4| 6= 2� |x3 − x4| 6= 1� 6= (x1, x2, x3, x4)
15 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Entonces tenemosLa resolución de un Problema de Satisfacción de Restricciones constade dos fases:1 Modelar el problema como uno de satisfacción de restricciones. La
modelación expresa el problema mediante un conjunto de variables,dominios y restricciones del PSR.
2 Procesar el problema de satisfacción de restricciones resultante,para lo que hay dos formas.
y aplicamos :Técnicas de consistencia . Basadas en la eliminación de valores
inconsistentes de los dominios de las variables, engeneral se combinan con las técnicas de búsqueda, yaque reducen el espacio de soluciones .
Algoritmos de búsqueda . Se basan en la exploración sistemática delespacio de soluciones hasta encontrar una solución oprobar que no existe alguna.16 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Backtraking: Búsqueda con vuelta hacia atrás oBacktracking Cronológico
Cada solución debe ser una asignación completa y por lo tantoaparecen a profundidad n si hay n variables. Además, el árbol debúsqueda se extiende sólo a profundidad n. Por este motivo losalgoritmos en búsqueda en profundidad son populares para PSR.
El término Búsqueda hacia atrás se utiliza para la búsqueda primeroen profundidad que elige valores para una variablea la vez y vuevlehacia atrás cuando una variable no tiene ningún valor legal paraasignarle
17 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Funcionamiento Básico de BacktrackingBúsqueda primero en profundidad.Recursivo
18 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Generar y probarGenerar y Testear (GT): Este método genera las posibles tuplas deinstanciación de todas las variables de forma sistemática y despuésprueba sucesivamente sobre cada instanciación si se satisfacen todaslas restricciones del problema.La primera combinación que satisfaga todas las restricciones, será lasolución al problema. Mediante este procedimiento, el número decombinaciones generado por este método es el Producto Cartesianode la cardinalidad de los dominios de las variable Πi=1..ndi . Se realizanmuchas instanciaciones.
19 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Preguntas para este tipo de problemas
1 ¿Qué variable debe asignarse después, y en qué orden deberíanintentarse sus valores?
2 ¿Cuáles son las las implicaciones de las asignaciones de lasvariables actuales para las otras variables no asignadas?
3 ¿Cuándo un camino falla, es decir, un estado alcanzado en el queuna variable no tiene ningún valor legal, ¿puede la búsqueda evitarrepetir este fracaso en caminos siguientes?
20 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Preguntas para este tipo de problemasEsto nos lleva a considerar varias heurísticas que ayudan a resolver elproblema:
� Mínimos Valores Restantes� Grado Heurístico� Valor Menos Restringido� Propagando las Restricciones� Consistencia de arcos
21 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Mínimos Valores Restantes(MVR)Se escoge la variable con el menor número de valores posibles, laheurística del mínimo de los valores restantes (MVR) o la variablemás restringida o la heurística del primero que falla.
Si hay una variable X con cero valores válidos, la heurística MVRseleccionará a X y la falla se detectará enseguida. Evitando búsquedasen otras variables que siempre fallarán cuando X sea seleccionada.Evitando búsquedas en otras variables que siempre fallarán cuando Xsea seleccionada. La heurística MVR no ayuda a escoger el primerestado a colorear.
22 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Mínimos Valores Restantes(MVR)Se escoge la variable con el menor número de valores posibles, laheurística del mínimo de los valores restantes (MVR) o la variablemás restringida o la heurística del primero que falla.Si hay una variable X con cero valores válidos, la heurística MVRseleccionará a X y la falla se detectará enseguida. Evitando búsquedasen otras variables que siempre fallarán cuando X sea seleccionada.
Evitando búsquedas en otras variables que siempre fallarán cuando Xsea seleccionada. La heurística MVR no ayuda a escoger el primerestado a colorear.
22 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Mínimos Valores Restantes(MVR)Se escoge la variable con el menor número de valores posibles, laheurística del mínimo de los valores restantes (MVR) o la variablemás restringida o la heurística del primero que falla.Si hay una variable X con cero valores válidos, la heurística MVRseleccionará a X y la falla se detectará enseguida. Evitando búsquedasen otras variables que siempre fallarán cuando X sea seleccionada.Evitando búsquedas en otras variables que siempre fallarán cuando Xsea seleccionada. La heurística MVR no ayuda a escoger el primerestado a colorear.
22 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Grado Heurístico
Intenta reducir el factor de ramificación en selecciones futurasescogiendo la variable que está involucrada en el mayor número derestricciones sobre otras variables no asignadas. no ayuda en que colorelegir primero. Util en casos de empate.
23 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Valor menos restringido1 Una vez seleccionada una variable debe decidirse un orden para
examinar sus valores.2 Heurística del valor menos restringido: se prefiere el valor que
excluye el menor número de restricciones en las variables vecinasdel grafo.
24 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Valor menos restringido
25 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Valor menos restringidoEjemplo. Suponer que se ha generado la asignación parcial Nay =rojo, Zac = verde y que la siguiente selección es para Gto, azul seríauna mala selección porque elimina el último valor válido para el vecinoJal; por lo tanto la heurística del valor menos restringido prefiere elrojo al azul.
26 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Propagación de información através de restriccionesHasta ahora el algoritmo de búsqueda considera las restricciones sobreuna variable solo en el momento en que ésta es escogida porSeleccionar-Variable-no-asignada; pero mirando antes en algunasrestricciones de la búsqueda o aún antes de que ésta haya empezado,se puede reducir drásticamente el espacio de búsqueda. Una forma dehacer mejor uso de las restricciones durante la búsqueda se llamainspección hacia delante.
27 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Mapa Mexico: Inspección hacia adelanteSiempre que una variable X es asignada, el proceso de inspecciónhacia delante mira a cada variable Y no asignada que está conectadaa X por una restricción y borra del dominio de Y cualquier valor quees inconsistente para el valor escogido para X.
28 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Mapa Mexico .Hacia adelante
29 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Que observarMínimo ValorHay dos puntos importantes a notar en este ejemplo:
Primero, después de asignar Nay = rojo y Gto = verde los dominiosde Zac y Jal son reducidos a un solo valor, se ha eliminado laramificación de estas variables juntas propagando información desdeNay y Gto. La heurística MVR que es un medio natural parainspeccionar hacia delante, seleccionará automáticamente Jal y Zacenseguida.Segundo después de que Col = azul el dominio de Jal está vacío, así,inspeccionando hacia delante ha detectado que la asignaciónparcial{Nay = rojo, Gto = verde, Col=azul} es inconsistente conlas restricciones del problema y el algoritmo regresará inmediatamente.
30 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Que observarMínimo ValorHay dos puntos importantes a notar en este ejemplo:Primero, después de asignar Nay = rojo y Gto = verde los dominiosde Zac y Jal son reducidos a un solo valor, se ha eliminado laramificación de estas variables juntas propagando información desdeNay y Gto. La heurística MVR que es un medio natural parainspeccionar hacia delante, seleccionará automáticamente Jal y Zacenseguida.
Segundo después de que Col = azul el dominio de Jal está vacío, así,inspeccionando hacia delante ha detectado que la asignaciónparcial{Nay = rojo, Gto = verde, Col=azul} es inconsistente conlas restricciones del problema y el algoritmo regresará inmediatamente.
30 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Que observarMínimo ValorHay dos puntos importantes a notar en este ejemplo:Primero, después de asignar Nay = rojo y Gto = verde los dominiosde Zac y Jal son reducidos a un solo valor, se ha eliminado laramificación de estas variables juntas propagando información desdeNay y Gto. La heurística MVR que es un medio natural parainspeccionar hacia delante, seleccionará automáticamente Jal y Zacenseguida.Segundo después de que Col = azul el dominio de Jal está vacío, así,inspeccionando hacia delante ha detectado que la asignaciónparcial{Nay = rojo, Gto = verde, Col=azul} es inconsistente conlas restricciones del problema y el algoritmo regresará inmediatamente.
30 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Propagación de RestriccionesAunque inspeccionado hacia delante detecta inconsistencias, nodetecta a todas.
Ejemplo, el cuarto renglón de la tabla muestra que cuando Nay=rojoy Gto = verde, Zac y Jal son forzados a ser ambos azules, pero sonadyacentes y por lo tanto no pueden tener el mismo color. Estainconsistencia no es detectada porque no mira suficientemente lejos.Propagación de restricciones es el término general parapropagar la implicación de una restricción para una variablesobre las otras.En este caso se necesita propagar desde Nay y Gto sobre Zac y Jal ydespués sobre la restricción de Zac y Jal para detectar lainconsistencia.
31 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Propagación de RestriccionesAunque inspeccionado hacia delante detecta inconsistencias, nodetecta a todas.Ejemplo, el cuarto renglón de la tabla muestra que cuando Nay=rojoy Gto = verde, Zac y Jal son forzados a ser ambos azules, pero sonadyacentes y por lo tanto no pueden tener el mismo color. Estainconsistencia no es detectada porque no mira suficientemente lejos.
Propagación de restricciones es el término general parapropagar la implicación de una restricción para una variablesobre las otras.En este caso se necesita propagar desde Nay y Gto sobre Zac y Jal ydespués sobre la restricción de Zac y Jal para detectar lainconsistencia.
31 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Propagación de RestriccionesAunque inspeccionado hacia delante detecta inconsistencias, nodetecta a todas.Ejemplo, el cuarto renglón de la tabla muestra que cuando Nay=rojoy Gto = verde, Zac y Jal son forzados a ser ambos azules, pero sonadyacentes y por lo tanto no pueden tener el mismo color. Estainconsistencia no es detectada porque no mira suficientemente lejos.Propagación de restricciones es el término general parapropagar la implicación de una restricción para una variablesobre las otras.En este caso se necesita propagar desde Nay y Gto sobre Zac y Jal ydespués sobre la restricción de Zac y Jal para detectar lainconsistencia.
31 of 46
/IMAGENES/Morena
/IMAGENES/Morena
cont.La idea de consistencia de arcos proporciona un método rápido depropagación de restricciones que es más fuerte que inspección haciadelante.
Dados los dominios actuales de Jal y Mich, el arco esconsistente para cada valor x de Jal, hay algún valor y de Mich que esconsistente con x. En el cuarto renglón de la tabla los dominios de Jaly Mich son {azul} y {rojo, azul} respectivamente.
32 of 46
/IMAGENES/Morena
/IMAGENES/Morena
cont.La idea de consistencia de arcos proporciona un método rápido depropagación de restricciones que es más fuerte que inspección haciadelante.Dados los dominios actuales de Jal y Mich, el arco esconsistente para cada valor x de Jal, hay algún valor y de Mich que esconsistente con x. En el cuarto renglón de la tabla los dominios de Jaly Mich son {azul} y {rojo, azul} respectivamente.
32 of 46
/IMAGENES/Morena
/IMAGENES/Morena
conclusión consistencia de arcosPara Jal = azul, hay una asignación consistente para Mich=rojo;por lo tanto el arco de Jal a Mich es consistente. Por otro lado, elarco de Mich a Jal no es consistente.
También se puede aplicar consistencia de arcos al que va de Jal a Zacen la misma etapa en el proceso de búsqueda, el cuarto renglón de latabla muestra que ambas variables tienen dominio azul. El resultadoes que azul debe borrarse del dominio de Jal dejándolo vacío.
Aplicando la consistencia de arcos ha resultado en la deteccióntemprana de una inconsistencia que no es detectada por inspecciónhacia delante.
33 of 46
/IMAGENES/Morena
/IMAGENES/Morena
conclusión consistencia de arcosPara Jal = azul, hay una asignación consistente para Mich=rojo;por lo tanto el arco de Jal a Mich es consistente. Por otro lado, elarco de Mich a Jal no es consistente.También se puede aplicar consistencia de arcos al que va de Jal a Zacen la misma etapa en el proceso de búsqueda, el cuarto renglón de latabla muestra que ambas variables tienen dominio azul. El resultadoes que azul debe borrarse del dominio de Jal dejándolo vacío.
Aplicando la consistencia de arcos ha resultado en la deteccióntemprana de una inconsistencia que no es detectada por inspecciónhacia delante.
33 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Consistencia de Arcos funciones
34 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Remover inconsistencias
35 of 46
/IMAGENES/Morena
/IMAGENES/Morena
AnálisisCada arco (Xi , Xj) en su turno es retirado de la agenda einspeccionado, si es necesario borrar algunos valores del dominio de Xientonces cada arco (Xk , Xi )debe insertarse en la fila para inspección.
La complejidad de inspección de consistencia de arcos puedeanalizarse como sigue: un PSR binario tiene a lo más O(n2) aristas,cada arista (Xk , Xi ) puede ser incluida en la agenda sólo d vecesporque Xi tiene a lo más d valores para borrar.Verificar inconsistencia de una arista puede hacerse en un tiempoO(d2); por lo que el tiempo para el peor caso es O(n2d3).
Un PSR es k-consistente si para cada conjunto de k-1 variables y paracualquier asignación consistente a esas variables, siempre se puedeasignar un valor consistente a cualquier k-ésima variable
36 of 46
/IMAGENES/Morena
/IMAGENES/Morena
AnálisisCada arco (Xi , Xj) en su turno es retirado de la agenda einspeccionado, si es necesario borrar algunos valores del dominio de Xientonces cada arco (Xk , Xi )debe insertarse en la fila para inspección.La complejidad de inspección de consistencia de arcos puedeanalizarse como sigue: un PSR binario tiene a lo más O(n2) aristas,cada arista (Xk , Xi ) puede ser incluida en la agenda sólo d vecesporque Xi tiene a lo más d valores para borrar.
Verificar inconsistencia de una arista puede hacerse en un tiempoO(d2); por lo que el tiempo para el peor caso es O(n2d3).
Un PSR es k-consistente si para cada conjunto de k-1 variables y paracualquier asignación consistente a esas variables, siempre se puedeasignar un valor consistente a cualquier k-ésima variable
36 of 46
/IMAGENES/Morena
/IMAGENES/Morena
AnálisisCada arco (Xi , Xj) en su turno es retirado de la agenda einspeccionado, si es necesario borrar algunos valores del dominio de Xientonces cada arco (Xk , Xi )debe insertarse en la fila para inspección.La complejidad de inspección de consistencia de arcos puedeanalizarse como sigue: un PSR binario tiene a lo más O(n2) aristas,cada arista (Xk , Xi ) puede ser incluida en la agenda sólo d vecesporque Xi tiene a lo más d valores para borrar.Verificar inconsistencia de una arista puede hacerse en un tiempoO(d2); por lo que el tiempo para el peor caso es O(n2d3).
Un PSR es k-consistente si para cada conjunto de k-1 variables y paracualquier asignación consistente a esas variables, siempre se puedeasignar un valor consistente a cualquier k-ésima variable
36 of 46
/IMAGENES/Morena
/IMAGENES/Morena
conclusionesDebido a que el PSR incluye al 3SAT como un caso especial, no seespera encontrar un algoritmo polinomial que pueda decidir si un PSRes consistente.De aquí, se puede deducir que consistencia de arcos no revela cadainconsistencia.Ejemplo, la asignación parcial {Nay = rojo, Mich = rojo} esinconsistente pero el algoritmo no la revela. Se pueden definir formasde propagación más fuertes usando k-consistencia.
37 of 46
/IMAGENES/Morena
/IMAGENES/Morena
K-ConsistenteEjemplo, 1-consistencia significa que cada variable es consistente,2-consistencia es lo mismo que consistencia de arcos. 3-consistenciasignifica que cualquier par de variables adyacentes siempre se puedeampliar a una tercera variable vecina, esto también se llamaconsistencia de caminos.Una grafo es fuertemente k-consistente si es k-consistente,(k-1)-consistente,..., 1-consistente.En un problema de este tipo se puede encontrar una solución en untiempo O(nd).
38 of 46
/IMAGENES/Morena
/IMAGENES/Morena
másHay una gran diferencia entre n-consistencia y consistencia de arcos:usar verificación de consistencia fuerte puede tomar más tiempo perotendrá mayor efecto al reducir el factor de ramificación detectandoasignaciones parcialmente inconsistentes.
39 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Manejo de Restricciones especialesCierto tipo de restricciones ocurre frecuentemente en problemas realesy pueden tratarse utilizando algoritmos con propósitos especiales queson más eficientes que los métodos de propósitos generales descritos.Por ejemplo, las restricciones todasdif dicen que todas las variablesconsideradas deben tener distintos valores.Una forma simple de detectar inconsistencia en estas restricciones esla siguiente:
si se consideran m variables en las restricciones y tienen n posiblesvalores distintos y m > n, entonces las restricciones no se puedensatisfacer.
40 of 46
/IMAGENES/Morena
/IMAGENES/Morena
Lo anterior da lugar a una forma de análisis oalgoritmo� Remover cualquier variable que tiene dominio con un elemento yborrarlo del dominio de las variables restantes.
� Repetir el paso anterior mientras haya variables que tienen dominiocon un elemento.
� Si en algún momento se produce un dominio vacío o hay másvariables que valores de dominio a retirar, entonces se ha detectadouna inconsistencia.
Se puede usar este método para detectar inconsistencia en laasignación parcial {Nay = rojo, Mich = rojo}, notar que las variablesJal, Zac y Gto están efectivamente conectadas por una restriccióntodasdif porque cada par debe ser de color diferente.
41 of 46
/IMAGENES/Morena
/IMAGENES/Morena
contDespués de aplicar CA en la asignación parcial, el dominio de cadavariable se reduce a {verde, azul}, i.e., se tienen tres variables y solohay dos colores, la restricción todasdif es violada. #54
42 of 46
/IMAGENES/Morena
/IMAGENES/Morena
ejemplo de Consistencia de ArcosTema-05.pdfPlanificación de las acciones de un robot (Poole, pag. 149): Un robotnecesita planificar cinco actividades (A, B, C, D y E), donde cadaactividad ha de comenzar en un momento en el tiempo (1, 2, 3, o 4)y dura exactamente una unidad de tiempo. Restricciones:� La actividad B no puede realizarse en el momento número 3.� La actividad C no puede realizarse en el momento número 2.� Las actividades A y B no pueden realizarse simultáneamente.� Las actividades B y C no pueden realizarse simultáneamente.� La actividad C ha de realizarse antes de la D.� Las actividades B y D no pueden realizarse simultáneamente.� Las actividades A y D han de realizarse simultáneamente.� La actividad E ha de ser la última.43 of 46
/IMAGENES/Morena
/IMAGENES/Morena
ejemplo de Consistencia de Arcos
44 of 46
/IMAGENES/Morena
/IMAGENES/Morena
ejemplo de Consistencia de Arcos
45 of 46
/IMAGENES/Morena
/IMAGENES/Morena
ejemplo de Consistencia de Arcos
Poole, D.; Mackworth, A. y Goebel, R. Computational Intelligence (ALogical Approach) (Oxford University Press, 1998) Cap. 4.7:Çonstraint Satisfaction Problems".
46 of 46
/IMAGENES/Morena