entropia y neguentropia en la teoria general de sistemas
Algoritmos de Propagación - Capi 7 Apt.
1. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
PROGRAMACION POR RESTRCCIONES
ALGORITMOS DE PROPAGACI ´ON
CAPITULO 7 APT K.
Jhon Trujillo
Universidad Del Valle - Cali
jhon.trujillo@univalle.edu.co - jhon.murdock@gmail.com
29 de mayo de 2014
2. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Plan
Introducci´on
Fundamentos Formales Discretos
Relaciones Binarias
Ordenamiento Parcial
Iteraci´on
Estabilizaci´on
Conmutatividad
Algoritmos Gen´ericos de Iteraci´on
Algoritmos para Ordenes Parciales Arbitrarios
Algoritmos para Dominios Compuestos
Algoritmos de Propagaci´on de Restricciones
Generalidades
Algoritmo para Nodo-consistencia
Algoritmo para Hiper arco-consistencia
Algoritmo para Arco-consistencia Direccional
Algoritmo para Ruta-consistencia
Algoritmo para Ruta-consistencia Direccional
3. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Plan
Introducci´on
Fundamentos Formales Discretos
Relaciones Binarias
Ordenamiento Parcial
Iteraci´on
Estabilizaci´on
Conmutatividad
Algoritmos Gen´ericos de Iteraci´on
Algoritmos para Ordenes Parciales Arbitrarios
Algoritmos para Dominios Compuestos
Algoritmos de Propagaci´on de Restricciones
Generalidades
Algoritmo para Nodo-consistencia
Algoritmo para Hiper arco-consistencia
Algoritmo para Arco-consistencia Direccional
Algoritmo para Ruta-consistencia
Algoritmo para Ruta-consistencia Direccional
4. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Plan
Introducci´on
Fundamentos Formales Discretos
Relaciones Binarias
Ordenamiento Parcial
Iteraci´on
Estabilizaci´on
Conmutatividad
Algoritmos Gen´ericos de Iteraci´on
Algoritmos para Ordenes Parciales Arbitrarios
Algoritmos para Dominios Compuestos
Algoritmos de Propagaci´on de Restricciones
Generalidades
Algoritmo para Nodo-consistencia
Algoritmo para Hiper arco-consistencia
Algoritmo para Arco-consistencia Direccional
Algoritmo para Ruta-consistencia
Algoritmo para Ruta-consistencia Direccional
5. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Plan
Introducci´on
Fundamentos Formales Discretos
Relaciones Binarias
Ordenamiento Parcial
Iteraci´on
Estabilizaci´on
Conmutatividad
Algoritmos Gen´ericos de Iteraci´on
Algoritmos para Ordenes Parciales Arbitrarios
Algoritmos para Dominios Compuestos
Algoritmos de Propagaci´on de Restricciones
Generalidades
Algoritmo para Nodo-consistencia
Algoritmo para Hiper arco-consistencia
Algoritmo para Arco-consistencia Direccional
Algoritmo para Ruta-consistencia
Algoritmo para Ruta-consistencia Direccional
6. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Plan
Introducci´on
Fundamentos Formales Discretos
Relaciones Binarias
Ordenamiento Parcial
Iteraci´on
Estabilizaci´on
Conmutatividad
Algoritmos Gen´ericos de Iteraci´on
Algoritmos para Ordenes Parciales Arbitrarios
Algoritmos para Dominios Compuestos
Algoritmos de Propagaci´on de Restricciones
Generalidades
Algoritmo para Nodo-consistencia
Algoritmo para Hiper arco-consistencia
Algoritmo para Arco-consistencia Direccional
Algoritmo para Ruta-consistencia
Algoritmo para Ruta-consistencia Direccional
7. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Propagaci´on De Restricciones
Dado un problema de satisfacci´on de restricciones (CSP):
• Propagar : La idea es reducir repetidamente las restricciones y los
dominios del CSP hasta llegar a un CPS localmente consistente.
• Algoritmos de propagaci´on de restricciones: Consisten en la
planificaci´on de los pasos at´omicos(iteraciones) de reducci´on.
• El criterio de parada es alguna noci´on de consistencia local.
• Los algoritmos de propagaci´on de restricciones son presentados
como casos especiales de algoritmos gen´ericos de iteraci´on.
8. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Propagaci´on De Restricciones
Dado un problema de satisfacci´on de restricciones (CSP):
• Propagar : La idea es reducir repetidamente las restricciones y los
dominios del CSP hasta llegar a un CPS localmente consistente.
• Algoritmos de propagaci´on de restricciones: Consisten en la
planificaci´on de los pasos at´omicos(iteraciones) de reducci´on.
• El criterio de parada es alguna noci´on de consistencia local.
• Los algoritmos de propagaci´on de restricciones son presentados
como casos especiales de algoritmos gen´ericos de iteraci´on.
9. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Propagaci´on De Restricciones
Dado un problema de satisfacci´on de restricciones (CSP):
• Propagar : La idea es reducir repetidamente las restricciones y los
dominios del CSP hasta llegar a un CPS localmente consistente.
• Algoritmos de propagaci´on de restricciones: Consisten en la
planificaci´on de los pasos at´omicos(iteraciones) de reducci´on.
• El criterio de parada es alguna noci´on de consistencia local.
• Los algoritmos de propagaci´on de restricciones son presentados
como casos especiales de algoritmos gen´ericos de iteraci´on.
10. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Propagaci´on De Restricciones
Dado un problema de satisfacci´on de restricciones (CSP):
• Propagar : La idea es reducir repetidamente las restricciones y los
dominios del CSP hasta llegar a un CPS localmente consistente.
• Algoritmos de propagaci´on de restricciones: Consisten en la
planificaci´on de los pasos at´omicos(iteraciones) de reducci´on.
• El criterio de parada es alguna noci´on de consistencia local.
• Los algoritmos de propagaci´on de restricciones son presentados
como casos especiales de algoritmos gen´ericos de iteraci´on.
11. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Introducci´on
• Los algoritmos que logran consistencia locales se llaman algoritmos
de propagaci´on sobre restricciones.
• Vamos a ver varios algoritmos de propagaci´on sobre restricciones.
• Usando reglas definidas se pueden construir algoritmos iterativos que
ayudan a reducir un CSP P en otro P equivalente.
• ¿C´omo organizar la aplicaci´on de estas reglas ?
• Tener un bajo costo al aplicar las relgas.
• Tener un resultado ´unico en el menor tiempo.
12. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Introducci´on
• Los algoritmos que logran consistencia locales se llaman algoritmos
de propagaci´on sobre restricciones.
• Vamos a ver varios algoritmos de propagaci´on sobre restricciones.
• Usando reglas definidas se pueden construir algoritmos iterativos que
ayudan a reducir un CSP P en otro P equivalente.
• ¿C´omo organizar la aplicaci´on de estas reglas ?
• Tener un bajo costo al aplicar las relgas.
• Tener un resultado ´unico en el menor tiempo.
13. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Introducci´on
• Los algoritmos que logran consistencia locales se llaman algoritmos
de propagaci´on sobre restricciones.
• Vamos a ver varios algoritmos de propagaci´on sobre restricciones.
• Usando reglas definidas se pueden construir algoritmos iterativos que
ayudan a reducir un CSP P en otro P equivalente.
• ¿C´omo organizar la aplicaci´on de estas reglas ?
• Tener un bajo costo al aplicar las relgas.
• Tener un resultado ´unico en el menor tiempo.
14. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Introducci´on
• Los algoritmos que logran consistencia locales se llaman algoritmos
de propagaci´on sobre restricciones.
• Vamos a ver varios algoritmos de propagaci´on sobre restricciones.
• Usando reglas definidas se pueden construir algoritmos iterativos que
ayudan a reducir un CSP P en otro P equivalente.
• ¿C´omo organizar la aplicaci´on de estas reglas ?
• Tener un bajo costo al aplicar las relgas.
• Tener un resultado ´unico en el menor tiempo.
15. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Introducci´on
• Los algoritmos que logran consistencia locales se llaman algoritmos
de propagaci´on sobre restricciones.
• Vamos a ver varios algoritmos de propagaci´on sobre restricciones.
• Usando reglas definidas se pueden construir algoritmos iterativos que
ayudan a reducir un CSP P en otro P equivalente.
• ¿C´omo organizar la aplicaci´on de estas reglas ?
• Tener un bajo costo al aplicar las relgas.
• Tener un resultado ´unico en el menor tiempo.
16. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Plan
Introducci´on
Fundamentos Formales Discretos
Relaciones Binarias
Ordenamiento Parcial
Iteraci´on
Estabilizaci´on
Conmutatividad
Algoritmos Gen´ericos de Iteraci´on
Algoritmos para Ordenes Parciales Arbitrarios
Algoritmos para Dominios Compuestos
Algoritmos de Propagaci´on de Restricciones
Generalidades
Algoritmo para Nodo-consistencia
Algoritmo para Hiper arco-consistencia
Algoritmo para Arco-consistencia Direccional
Algoritmo para Ruta-consistencia
Algoritmo para Ruta-consistencia Direccional
17. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• reflexiva : si (a, a) ∈ R para cada a ∈ D
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on ≤
• R = {(1, 1), (1, 2), (1, 3), (2, 2), (2, 3), (3, 3)}.
• Se presenta una relaci´on reflexiva ya que existen las relaciones
(1, 1), (2, 2), (3, 3) en la relaci´on.
18. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• reflexiva : si (a, a) ∈ R para cada a ∈ D
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on ≤
• R = {(1, 1), (1, 2), (1, 3), (2, 2), (2, 3), (3, 3)}.
• Se presenta una relaci´on reflexiva ya que existen las relaciones
(1, 1), (2, 2), (3, 3) en la relaci´on.
19. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• reflexiva : si (a, a) ∈ R para cada a ∈ D
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on ≤
• R = {(1, 1), (1, 2), (1, 3), (2, 2), (2, 3), (3, 3)}.
• Se presenta una relaci´on reflexiva ya que existen las relaciones
(1, 1), (2, 2), (3, 3) en la relaci´on.
20. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• irreflexiva : si (a, a) ∈ R para cada a ∈ D
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on <
• R = {(1, 2), (1, 3), (2, 3)}.
• Se presenta una relaci´on irreflexiva ya que existen las relaciones
(1, 2), (1, 3), (2, 3) en la relaci´on.
21. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• irreflexiva : si (a, a) ∈ R para cada a ∈ D
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on <
• R = {(1, 2), (1, 3), (2, 3)}.
• Se presenta una relaci´on irreflexiva ya que existen las relaciones
(1, 2), (1, 3), (2, 3) en la relaci´on.
22. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• irreflexiva : si (a, a) ∈ R para cada a ∈ D
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on <
• R = {(1, 2), (1, 3), (2, 3)}.
• Se presenta una relaci´on irreflexiva ya que existen las relaciones
(1, 2), (1, 3), (2, 3) en la relaci´on.
23. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• irreflexiva : si (a, a) ∈ R para cada a ∈ D
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on <
• R = {(1, 2), (1, 3), (2, 3)}.
• Se presenta una relaci´on irreflexiva ya que existen las relaciones
(1, 2), (1, 3), (2, 3) en la relaci´on.
24. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• Antisim´etrica : si para cada a, b ∈ D siempre que (a, b) ∈ R y
(b, a) ∈ R entonces a = b
Lo que es equivalente a decir:
• Dada la relaci´on R(a, b) con a = b entonces la relaci´on R(b, a) no
existe.
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on ≤
• R = {(1, 2), (1, 3), (2, 3), (3, 1)}.
• No presenta una relaci´on Antisim´etrica ya que existen las relaciones
(1, 3), (3, 1) en la relaci´on.
25. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• Antisim´etrica : si para cada a, b ∈ D siempre que (a, b) ∈ R y
(b, a) ∈ R entonces a = b
Lo que es equivalente a decir:
• Dada la relaci´on R(a, b) con a = b entonces la relaci´on R(b, a) no
existe.
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on ≤
• R = {(1, 2), (1, 3), (2, 3), (3, 1)}.
• No presenta una relaci´on Antisim´etrica ya que existen las relaciones
(1, 3), (3, 1) en la relaci´on.
26. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• Antisim´etrica : si para cada a, b ∈ D siempre que (a, b) ∈ R y
(b, a) ∈ R entonces a = b
Lo que es equivalente a decir:
• Dada la relaci´on R(a, b) con a = b entonces la relaci´on R(b, a) no
existe.
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on ≤
• R = {(1, 2), (1, 3), (2, 3), (3, 1)}.
• No presenta una relaci´on Antisim´etrica ya que existen las relaciones
(1, 3), (3, 1) en la relaci´on.
27. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• Antisim´etrica : si para cada a, b ∈ D siempre que (a, b) ∈ R y
(b, a) ∈ R entonces a = b
Lo que es equivalente a decir:
• Dada la relaci´on R(a, b) con a = b entonces la relaci´on R(b, a) no
existe.
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on ≤
• R = {(1, 2), (1, 3), (2, 3), (3, 1)}.
• No presenta una relaci´on Antisim´etrica ya que existen las relaciones
(1, 3), (3, 1) en la relaci´on.
28. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• Antisim´etrica : si para cada a, b ∈ D siempre que (a, b) ∈ R y
(b, a) ∈ R entonces a = b
Lo que es equivalente a decir:
• Dada la relaci´on R(a, b) con a = b entonces la relaci´on R(b, a) no
existe.
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on ≤
• R = {(1, 2), (1, 3), (2, 3), (3, 1)}.
• No presenta una relaci´on Antisim´etrica ya que existen las relaciones
(1, 3), (3, 1) en la relaci´on.
29. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• Transitiva : si para todo a, b, c ∈ D siempre que (a, b) ∈ R y
(b, c) ∈ R entonces (a, c) ∈ R
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on ≤
• R = {(1, 2), (2, 3), (1, 3), (3, 1)}.
• Representa una relaci´on Transitiva ya que existen las relaciones
(1, 2), (2, 3)y(1, 3) en la relaci´on.
30. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• Transitiva : si para todo a, b, c ∈ D siempre que (a, b) ∈ R y
(b, c) ∈ R entonces (a, c) ∈ R
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on ≤
• R = {(1, 2), (2, 3), (1, 3), (3, 1)}.
• Representa una relaci´on Transitiva ya que existen las relaciones
(1, 2), (2, 3)y(1, 3) en la relaci´on.
31. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• Transitiva : si para todo a, b, c ∈ D siempre que (a, b) ∈ R y
(b, c) ∈ R entonces (a, c) ∈ R
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on ≤
• R = {(1, 2), (2, 3), (1, 3), (3, 1)}.
• Representa una relaci´on Transitiva ya que existen las relaciones
(1, 2), (2, 3)y(1, 3) en la relaci´on.
32. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Relaciones Binarias
Dada una relaci´on binaria R sobre un conjunto D :
• Transitiva : si para todo a, b, c ∈ D siempre que (a, b) ∈ R y
(b, c) ∈ R entonces (a, c) ∈ R
Ejemplo
• Dado el conjunto: {1, 2, 3} bajo una relaci´on ≤
• R = {(1, 2), (2, 3), (1, 3), (3, 1)}.
• Representa una relaci´on Transitiva ya que existen las relaciones
(1, 2), (2, 3)y(1, 3) en la relaci´on.
33. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Plan
Introducci´on
Fundamentos Formales Discretos
Relaciones Binarias
Ordenamiento Parcial
Iteraci´on
Estabilizaci´on
Conmutatividad
Algoritmos Gen´ericos de Iteraci´on
Algoritmos para Ordenes Parciales Arbitrarios
Algoritmos para Dominios Compuestos
Algoritmos de Propagaci´on de Restricciones
Generalidades
Algoritmo para Nodo-consistencia
Algoritmo para Hiper arco-consistencia
Algoritmo para Arco-consistencia Direccional
Algoritmo para Ruta-consistencia
Algoritmo para Ruta-consistencia Direccional
34. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenamiento Parcial
• Un orden parcial es una pareja (D, ) que consiste de un conjunto
D y una relaci´on reflexiva, antisim´etrica y transitiva sobre D.
• Dado un orden parcial (D, ), un elemento d de D es llamado el
menor elemento si d e para todo e ∈ D.
Descripci´on
• Dado el orden parcial : {e1, e2, e3, ..., en} bajo una relaci´on
• Entonces d e1, d e2, ..., d en
35. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenamiento Parcial
• Un orden parcial es una pareja (D, ) que consiste de un conjunto
D y una relaci´on reflexiva, antisim´etrica y transitiva sobre D.
• Dado un orden parcial (D, ), un elemento d de D es llamado el
menor elemento si d e para todo e ∈ D.
Descripci´on
• Dado el orden parcial : {e1, e2, e3, ..., en} bajo una relaci´on
• Entonces d e1, d e2, ..., d en
36. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenamiento Parcial
• Un orden parcial es una pareja (D, ) que consiste de un conjunto
D y una relaci´on reflexiva, antisim´etrica y transitiva sobre D.
• Dado un orden parcial (D, ), un elemento d de D es llamado el
menor elemento si d e para todo e ∈ D.
Descripci´on
• Dado el orden parcial : {e1, e2, e3, ..., en} bajo una relaci´on
• Entonces d e1, d e2, ..., d en
37. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenamiento Parcial
• Un orden parcial es una pareja (D, ) que consiste de un conjunto
D y una relaci´on reflexiva, antisim´etrica y transitiva sobre D.
• Dado un orden parcial (D, ), un elemento d de D es llamado el
menor elemento si d e para todo e ∈ D.
Descripci´on
• Dado el orden parcial : {e1, e2, e3, ..., en} bajo una relaci´on
• Entonces d e1, d e2, ..., d en
38. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Plan
Introducci´on
Fundamentos Formales Discretos
Relaciones Binarias
Ordenamiento Parcial
Iteraci´on
Estabilizaci´on
Conmutatividad
Algoritmos Gen´ericos de Iteraci´on
Algoritmos para Ordenes Parciales Arbitrarios
Algoritmos para Dominios Compuestos
Algoritmos de Propagaci´on de Restricciones
Generalidades
Algoritmo para Nodo-consistencia
Algoritmo para Hiper arco-consistencia
Algoritmo para Arco-consistencia Direccional
Algoritmo para Ruta-consistencia
Algoritmo para Ruta-consistencia Direccional
39. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Iteraci´on
Dado un orden parcial (D, ) cuyo elemento menor es ⊥ y un conjunto
de funciones F = {f1, ..., fk } sobre D:
• Una iteraci´on de F es una secuencia infinita de valores d0, d1, d2, ...
definida por
d0 =⊥
dj = fij
(dj−1)
donde cada j > 0 y ij ∈ [1..k].
• El resultado de dj depende del valor anterior despu´es de haber
aplicado una determinada funci´on fij
a dj−1
40. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Iteraci´on
Dado un orden parcial (D, ) cuyo elemento menor es ⊥ y un conjunto
de funciones F = {f1, ..., fk } sobre D:
• Una iteraci´on de F es una secuencia infinita de valores d0, d1, d2, ...
definida por
d0 =⊥
dj = fij
(dj−1)
donde cada j > 0 y ij ∈ [1..k].
• El resultado de dj depende del valor anterior despu´es de haber
aplicado una determinada funci´on fij
a dj−1
41. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Plan
Introducci´on
Fundamentos Formales Discretos
Relaciones Binarias
Ordenamiento Parcial
Iteraci´on
Estabilizaci´on
Conmutatividad
Algoritmos Gen´ericos de Iteraci´on
Algoritmos para Ordenes Parciales Arbitrarios
Algoritmos para Dominios Compuestos
Algoritmos de Propagaci´on de Restricciones
Generalidades
Algoritmo para Nodo-consistencia
Algoritmo para Hiper arco-consistencia
Algoritmo para Arco-consistencia Direccional
Algoritmo para Ruta-consistencia
Algoritmo para Ruta-consistencia Direccional
42. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Estabilizaci´on
Dado un orden parcial (D, ) y funciones f ,g sobre D .
• f es inflacionaria si x f (x).
• f es monot´onica si x y implica f (x) f (y).
• f es idempotente si ff (x) = f (x).
• f y g conmutan si fg(x) = gf (x).
• f semi-conmutan con g si fg(x) gf (x).
43. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Estabilizaci´on
Dado un orden parcial (D, ) y funciones f ,g sobre D .
• f es inflacionaria si x f (x).
• f es monot´onica si x y implica f (x) f (y).
• f es idempotente si ff (x) = f (x).
• f y g conmutan si fg(x) = gf (x).
• f semi-conmutan con g si fg(x) gf (x).
44. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Estabilizaci´on
Dado un orden parcial (D, ) y funciones f ,g sobre D .
• f es inflacionaria si x f (x).
• f es monot´onica si x y implica f (x) f (y).
• f es idempotente si ff (x) = f (x).
• f y g conmutan si fg(x) = gf (x).
• f semi-conmutan con g si fg(x) gf (x).
45. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Estabilizaci´on
Dado un orden parcial (D, ) y funciones f ,g sobre D .
• f es inflacionaria si x f (x).
• f es monot´onica si x y implica f (x) f (y).
• f es idempotente si ff (x) = f (x).
• f y g conmutan si fg(x) = gf (x).
• f semi-conmutan con g si fg(x) gf (x).
46. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Estabilizaci´on
Dado un orden parcial (D, ) y funciones f ,g sobre D .
• f es inflacionaria si x f (x).
• f es monot´onica si x y implica f (x) f (y).
• f es idempotente si ff (x) = f (x).
• f y g conmutan si fg(x) = gf (x).
• f semi-conmutan con g si fg(x) gf (x).
47. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Estabilizaci´on
Dado un orden parcial (D, ) y funciones f ,g sobre D .
• f es inflacionaria si x f (x).
• f es monot´onica si x y implica f (x) f (y).
• f es idempotente si ff (x) = f (x).
• f y g conmutan si fg(x) = gf (x).
• f semi-conmutan con g si fg(x) gf (x).
48. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Estabilizaci´on - Lema
Dados:
• (D, ) cuyo menor elemento es ⊥ y.
• Un conjunto finito F de funciones monot´onicas sobre D.
Suponiendo que una iteraci´on de F eventualmente estabiliza a un
fixpoint com´un d de las funciones de F. Luego, d es el menor fixpoint
com´un de las funciones F.
49. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Estabilizaci´on - Lema
Dados:
• (D, ) cuyo menor elemento es ⊥ y.
• Un conjunto finito F de funciones monot´onicas sobre D.
Suponiendo que una iteraci´on de F eventualmente estabiliza a un
fixpoint com´un d de las funciones de F. Luego, d es el menor fixpoint
com´un de las funciones F.
50. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Estabilizaci´on - Lema
Dados:
• (D, ) cuyo menor elemento es ⊥ y.
• Un conjunto finito F de funciones monot´onicas sobre D.
Suponiendo que una iteraci´on de F eventualmente estabiliza a un
fixpoint com´un d de las funciones de F. Luego, d es el menor fixpoint
com´un de las funciones F.
51. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Estabilizaci´on: FixPoint
• Dado un orden parcial (D, ) y una funci´on f sobre D, se tiene que:
• a es un FixPoint de f si f (a) = a.
(La funci´on f no tiene ning´un efecto sobre a ).
• a es el menor FixPoint de f si a es el ´ultimo elemento del conjunto
{x ∈ D | f (x) = x}.
(Dada una secuencia de FixtPoints = [a1, a2, ..., an] ; an seria
el menor FixPoint) .
52. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Estabilizaci´on: FixPoint
• Dado un orden parcial (D, ) y una funci´on f sobre D, se tiene que:
• a es un FixPoint de f si f (a) = a.
(La funci´on f no tiene ning´un efecto sobre a ).
• a es el menor FixPoint de f si a es el ´ultimo elemento del conjunto
{x ∈ D | f (x) = x}.
(Dada una secuencia de FixtPoints = [a1, a2, ..., an] ; an seria
el menor FixPoint) .
53. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Estabilizaci´on: FixPoint
• Dado un orden parcial (D, ) y una funci´on f sobre D, se tiene que:
• a es un FixPoint de f si f (a) = a.
(La funci´on f no tiene ning´un efecto sobre a ).
• a es el menor FixPoint de f si a es el ´ultimo elemento del conjunto
{x ∈ D | f (x) = x}.
(Dada una secuencia de FixtPoints = [a1, a2, ..., an] ; an seria
el menor FixPoint) .
54. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Estabilizaci´on - Lema
• Una secuencia creciente d0, d1, d2... eventualmente estabiliza a d si
para alg´un j > 0
F(di ) = d para i ≥ 0
• Despu´es de ejecutar un n´umero de iteraciones sobre la secuencia
d0, d1, d2... ninguna de las funciones genera un efecto o cambio
sobre los valores de la secuencia.
• Siempre se va a obtener el valor d.
55. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Estabilizaci´on - Lema
• Una secuencia creciente d0, d1, d2... eventualmente estabiliza a d si
para alg´un j > 0
F(di ) = d para i ≥ 0
• Despu´es de ejecutar un n´umero de iteraciones sobre la secuencia
d0, d1, d2... ninguna de las funciones genera un efecto o cambio
sobre los valores de la secuencia.
• Siempre se va a obtener el valor d.
56. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Plan
Introducci´on
Fundamentos Formales Discretos
Relaciones Binarias
Ordenamiento Parcial
Iteraci´on
Estabilizaci´on
Conmutatividad
Algoritmos Gen´ericos de Iteraci´on
Algoritmos para Ordenes Parciales Arbitrarios
Algoritmos para Dominios Compuestos
Algoritmos de Propagaci´on de Restricciones
Generalidades
Algoritmo para Nodo-consistencia
Algoritmo para Hiper arco-consistencia
Algoritmo para Arco-consistencia Direccional
Algoritmo para Ruta-consistencia
Algoritmo para Ruta-consistencia Direccional
57. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Conmutatividad
Dados:
• (D, ) cuyo menor elemento es ⊥ y,
• Un conjunto finito F = {f1, ..., fk } de funciones sobre sobre D tales
que:
• Cada f ∈ F es monot´onica e idempotente.
• Cada f , g ∈ F conmutan.
58. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Conmutatividad
Dados:
• (D, ) cuyo menor elemento es ⊥ y,
• Un conjunto finito F = {f1, ..., fk } de funciones sobre sobre D tales
que:
• Cada f ∈ F es monot´onica e idempotente.
• Cada f , g ∈ F conmutan.
59. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Conmutatividad
Dados:
• (D, ) cuyo menor elemento es ⊥ y,
• Un conjunto finito F = {f1, ..., fk } de funciones sobre sobre D tales
que:
• Cada f ∈ F es monot´onica e idempotente.
• Cada f , g ∈ F conmutan.
60. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Semi-Conmutatividad
Dados:
• (D, ) cuyo menor elemento es ⊥ y.
• Un conjunto finito F = {f1, ..., fk } de funciones sobre sobre D tales
que:
• Cada fi ∈ F es monot´onica, inflacionaria e idempotente.
• Cada fi ∈ F semi-conmutan con fj para i > j, esto es,
fi fj (x) fj fi (x) para todo x.
Se mantiene un orden parcial entre fi fj (x) fj fi (x).
61. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Semi-Conmutatividad
Dados:
• (D, ) cuyo menor elemento es ⊥ y.
• Un conjunto finito F = {f1, ..., fk } de funciones sobre sobre D tales
que:
• Cada fi ∈ F es monot´onica, inflacionaria e idempotente.
• Cada fi ∈ F semi-conmutan con fj para i > j, esto es,
fi fj (x) fj fi (x) para todo x.
Se mantiene un orden parcial entre fi fj (x) fj fi (x).
62. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Semi-Conmutatividad
Dados:
• (D, ) cuyo menor elemento es ⊥ y.
• Un conjunto finito F = {f1, ..., fk } de funciones sobre sobre D tales
que:
• Cada fi ∈ F es monot´onica, inflacionaria e idempotente.
• Cada fi ∈ F semi-conmutan con fj para i > j, esto es,
fi fj (x) fj fi (x) para todo x.
Se mantiene un orden parcial entre fi fj (x) fj fi (x).
63. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Semi-Conmutatividad
Dados:
• (D, ) cuyo menor elemento es ⊥ y.
• Un conjunto finito F = {f1, ..., fk } de funciones sobre sobre D tales
que:
• Cada fi ∈ F es monot´onica, inflacionaria e idempotente.
• Cada fi ∈ F semi-conmutan con fj para i > j, esto es,
fi fj (x) fj fi (x) para todo x.
Se mantiene un orden parcial entre fi fj (x) fj fi (x).
64. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Semi-Conmutatividad
Dados:
• (D, ) cuyo menor elemento es ⊥ y.
• Un conjunto finito F = {f1, ..., fk } de funciones sobre sobre D tales
que:
• Cada fi ∈ F es monot´onica, inflacionaria e idempotente.
• Cada fi ∈ F semi-conmutan con fj para i > j, esto es,
fi fj (x) fj fi (x) para todo x.
Se mantiene un orden parcial entre fi fj (x) fj fi (x).
65. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Semi-Conmutatividad
Dados:
• (D, ) cuyo menor elemento es ⊥ y.
• Un conjunto finito F = {f1, ..., fk } de funciones sobre sobre D tales
que:
• Cada fi ∈ F es monot´onica, inflacionaria e idempotente.
• Cada fi ∈ F semi-conmutan con fj para i > j, esto es,
fi fj (x) fj fi (x) para todo x.
Se mantiene un orden parcial entre fi fj (x) fj fi (x).
66. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Plan
Introducci´on
Fundamentos Formales Discretos
Relaciones Binarias
Ordenamiento Parcial
Iteraci´on
Estabilizaci´on
Conmutatividad
Algoritmos Gen´ericos de Iteraci´on
Algoritmos para Ordenes Parciales Arbitrarios
Algoritmos para Dominios Compuestos
Algoritmos de Propagaci´on de Restricciones
Generalidades
Algoritmo para Nodo-consistencia
Algoritmo para Hiper arco-consistencia
Algoritmo para Arco-consistencia Direccional
Algoritmo para Ruta-consistencia
Algoritmo para Ruta-consistencia Direccional
67. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos para Ordenes Parciales Arbitrarios
Dado un ordenamiento Parcial (D, ) con un elemento ⊥ y un conjunto
de funciones F : {f1, ..., fk } en D.
• Deseamos calcular un FixPoint com´un de las funciones en F usando
los conceptos mencionados anteriormente.
• El FixPoint se calcular con el siguiente algoritmo: Algoritmo
Iteraci´on directa .
68. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos para Ordenes Parciales Arbitrarios
Dado un ordenamiento Parcial (D, ) con un elemento ⊥ y un conjunto
de funciones F : {f1, ..., fk } en D.
• Deseamos calcular un FixPoint com´un de las funciones en F usando
los conceptos mencionados anteriormente.
• El FixPoint se calcular con el siguiente algoritmo: Algoritmo
Iteraci´on directa .
69. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos para Ordenes Parciales Arbitrarios
Dado un ordenamiento Parcial (D, ) con un elemento ⊥ y un conjunto
de funciones F : {f1, ..., fk } en D.
• Deseamos calcular un FixPoint com´un de las funciones en F usando
los conceptos mencionados anteriormente.
• El FixPoint se calcular con el siguiente algoritmo: Algoritmo
Iteraci´on directa .
70. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos para Ordenes Parciales Arbitrarios
Dado un ordenamiento Parcial (D, ) con un elemento ⊥ y un conjunto
de funciones F : {f1, ..., fk } en D.
• Deseamos calcular un FixPoint com´un de las funciones en F usando
los conceptos mencionados anteriormente.
• El FixPoint se calcular con el siguiente algoritmo: Algoritmo
Iteraci´on directa .
71. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo Iteraci´on Directa
Algoritmo Iteraci´on directa
72. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo Iteraci´on Directa
Lema : Algoritmo Iteraci´on directa
Suponga que (D, ) es un orden parcial cuyo menor elemento es ⊥. Sea
F un conjunto finito de funciones monot´onicas e idempotentes sobre D
que conmutan entre s´ı. Luego, el algoritmo de Iteraci´on Directa siempre
termina y c´alcula en d el menor fixpoint de las funciones en F.
73. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo Iteraci´on Simple
Ahora, consideremos el siguiente algoritmo, en el cual, cada elemento de
la funci´on F = {f1, ..., fk } es aplicado solamente una ves pero con un
orden especifico.
Algoritmo Iteraci´on Simple
74. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo Iteraci´on Simple
Lema : Algoritmo Iteraci´on Simple
Suponga que (D, ) es un orden parcial cuyo menor elemento es ⊥. Sea
F un conjunto finito de funciones monot´onicas ,inflacionarias e
idempotentes sobre D tales que se cumple :
fi fj (x) fj fi (x) para todo x. (Semi-Conmutatividad)
Luego, el algoritmo de Iteraci´on Simple siempre termina y c´alcula en d
el menor fixpoint de las funciones en F.
75. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo Iteraci´on General
• Un caso general, en el cual no hay informaci´on sobre la
semi-conmutatividad de las funciones es tratado de la siguiente
manera: Algoritmo de Iteraci´on General
• Dados :
• (D, ) cuyo menor elemento es ⊥ y,
• Un conjunto funci´on F = {f1, ..., fk } de funciones sobre D.
76. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo Iteraci´on General
• Un caso general, en el cual no hay informaci´on sobre la
semi-conmutatividad de las funciones es tratado de la siguiente
manera: Algoritmo de Iteraci´on General
• Dados :
• (D, ) cuyo menor elemento es ⊥ y,
• Un conjunto funci´on F = {f1, ..., fk } de funciones sobre D.
77. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo Iteraci´on General
• Un caso general, en el cual no hay informaci´on sobre la
semi-conmutatividad de las funciones es tratado de la siguiente
manera: Algoritmo de Iteraci´on General
• Dados :
• (D, ) cuyo menor elemento es ⊥ y,
• Un conjunto funci´on F = {f1, ..., fk } de funciones sobre D.
78. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo Iteraci´on General
• Un caso general, en el cual no hay informaci´on sobre la
semi-conmutatividad de las funciones es tratado de la siguiente
manera: Algoritmo de Iteraci´on General
• Dados :
• (D, ) cuyo menor elemento es ⊥ y,
• Un conjunto funci´on F = {f1, ..., fk } de funciones sobre D.
79. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo Iteraci´on General
update(G, g, d) : Es el conjunto de las funciones que aun no estabilizan
a un menor fixpoint y no semi-comuntan.
80. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo Iteraci´on General
Lema : Algoritmo Iteraci´on General
Suponga que (D, ) es un orden parcial cuyo menor elemento es ⊥. Sea
F un conjunto finito de funciones monot´onicas ,inflacionarias e
idempotentes sobre D tales que se cumple :
fi fj (x) fj fi (x) para todo x. (Semi-Conmutatividad)
Luego, el algoritmo de Iteraci´on Simple siempre termina y c´alcula en d
el menor fixpoint de las funciones en F.
81. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Plan
Introducci´on
Fundamentos Formales Discretos
Relaciones Binarias
Ordenamiento Parcial
Iteraci´on
Estabilizaci´on
Conmutatividad
Algoritmos Gen´ericos de Iteraci´on
Algoritmos para Ordenes Parciales Arbitrarios
Algoritmos para Dominios Compuestos
Algoritmos de Propagaci´on de Restricciones
Generalidades
Algoritmo para Nodo-consistencia
Algoritmo para Hiper arco-consistencia
Algoritmo para Arco-consistencia Direccional
Algoritmo para Ruta-consistencia
Algoritmo para Ruta-consistencia Direccional
82. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Producto Cartesiano de Ordenes Parciales
• En el contexto de programaci´on por restricciones, las iteraciones son
llevadas a cabo sobre un orden parcial que es el producto cartesiano
de ordenes parciales.
(D, ) es el producto cartesiano de los ordenes parciales (D1, 1), ..., (Dn, n)
• Dado (D, ) el cual es el producto cartesiano de los ordenes
parciales (Di , i )i ∈ [1..n], con unos elementos m´ınimos ⊥i .
• Entonces podemos decir que : D = Di x, ..., xDn donde cada Di tiene
un elemento m´ınimo ⊥i . (⊥i , ... ⊥n) es el elemento m´ınimo de D.
83. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Producto Cartesiano de Ordenes Parciales
• En el contexto de programaci´on por restricciones, las iteraciones son
llevadas a cabo sobre un orden parcial que es el producto cartesiano
de ordenes parciales.
(D, ) es el producto cartesiano de los ordenes parciales (D1, 1), ..., (Dn, n)
• Dado (D, ) el cual es el producto cartesiano de los ordenes
parciales (Di , i )i ∈ [1..n], con unos elementos m´ınimos ⊥i .
• Entonces podemos decir que : D = Di x, ..., xDn donde cada Di tiene
un elemento m´ınimo ⊥i . (⊥i , ... ⊥n) es el elemento m´ınimo de D.
84. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Producto Cartesiano de Ordenes Parciales
• En el contexto de programaci´on por restricciones, las iteraciones son
llevadas a cabo sobre un orden parcial que es el producto cartesiano
de ordenes parciales.
(D, ) es el producto cartesiano de los ordenes parciales (D1, 1), ..., (Dn, n)
• Dado (D, ) el cual es el producto cartesiano de los ordenes
parciales (Di , i )i ∈ [1..n], con unos elementos m´ınimos ⊥i .
• Entonces podemos decir que : D = Di x, ..., xDn donde cada Di tiene
un elemento m´ınimo ⊥i . (⊥i , ... ⊥n) es el elemento m´ınimo de D.
85. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Esquemas
Considere una secuencia de ordenes parciales (D1, 1), ..., (Dn, n)
• Un esquema en n corresponde a una secuencia creciente de
elementos de [1..n] diferentes.
• Dado un esquema s = i1, ..., il en n, (Ds, s) corresponde al
producto cartesiano de los ordenes parciales (D1, 1), ..., (Dn, n).
• Dada una funci´on f en Ds , entonces f est´a con esquema s y f
depende de i si i es un elemento de s.
• Dada una tupla d = d1, ..., dn de D y un esquema s = [i1, ..., il ] en
n, d[s] denota la tupla di1
, ..., dij
.
86. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Esquemas
Considere una secuencia de ordenes parciales (D1, 1), ..., (Dn, n)
• Un esquema en n corresponde a una secuencia creciente de
elementos de [1..n] diferentes.
• Dado un esquema s = i1, ..., il en n, (Ds, s) corresponde al
producto cartesiano de los ordenes parciales (D1, 1), ..., (Dn, n).
• Dada una funci´on f en Ds , entonces f est´a con esquema s y f
depende de i si i es un elemento de s.
• Dada una tupla d = d1, ..., dn de D y un esquema s = [i1, ..., il ] en
n, d[s] denota la tupla di1
, ..., dij
.
87. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Esquemas
Considere una secuencia de ordenes parciales (D1, 1), ..., (Dn, n)
• Un esquema en n corresponde a una secuencia creciente de
elementos de [1..n] diferentes.
• Dado un esquema s = i1, ..., il en n, (Ds, s) corresponde al
producto cartesiano de los ordenes parciales (D1, 1), ..., (Dn, n).
• Dada una funci´on f en Ds , entonces f est´a con esquema s y f
depende de i si i es un elemento de s.
• Dada una tupla d = d1, ..., dn de D y un esquema s = [i1, ..., il ] en
n, d[s] denota la tupla di1
, ..., dij
.
88. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Esquemas
Considere una secuencia de ordenes parciales (D1, 1), ..., (Dn, n)
• Un esquema en n corresponde a una secuencia creciente de
elementos de [1..n] diferentes.
• Dado un esquema s = i1, ..., il en n, (Ds, s) corresponde al
producto cartesiano de los ordenes parciales (D1, 1), ..., (Dn, n).
• Dada una funci´on f en Ds , entonces f est´a con esquema s y f
depende de i si i es un elemento de s.
• Dada una tupla d = d1, ..., dn de D y un esquema s = [i1, ..., il ] en
n, d[s] denota la tupla di1
, ..., dij
.
89. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Esquemas
Considere una secuencia de ordenes parciales (D1, 1), ..., (Dn, n)
• Un esquema en n corresponde a una secuencia creciente de
elementos de [1..n] diferentes.
• Dado un esquema s = i1, ..., il en n, (Ds, s) corresponde al
producto cartesiano de los ordenes parciales (D1, 1), ..., (Dn, n).
• Dada una funci´on f en Ds , entonces f est´a con esquema s y f
depende de i si i es un elemento de s.
• Dada una tupla d = d1, ..., dn de D y un esquema s = [i1, ..., il ] en
n, d[s] denota la tupla di1
, ..., dij
.
90. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Extensi´on can´onica
Considere una secuencia de ordenes parciales (D1, 1), ..., (Dn, n)
• Considere una funci´on f con esquema s. Esta funci´on puede ser
extendida can´onicamente a la funci´on f +
de D a D estableciendo
que para d ∈ D.
f +
(d) = e
• la funci´on f +
se aplica sobre todos los elementos de D
independientemente que tenga un efecto o no sobre estos elementos.
• Llamamos f +
la extension can´onica de f al dominio D.
91. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Extensi´on can´onica
Considere una secuencia de ordenes parciales (D1, 1), ..., (Dn, n)
• Considere una funci´on f con esquema s. Esta funci´on puede ser
extendida can´onicamente a la funci´on f +
de D a D estableciendo
que para d ∈ D.
f +
(d) = e
• la funci´on f +
se aplica sobre todos los elementos de D
independientemente que tenga un efecto o no sobre estos elementos.
• Llamamos f +
la extension can´onica de f al dominio D.
92. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Extensi´on can´onica
Considere una secuencia de ordenes parciales (D1, 1), ..., (Dn, n)
• Considere una funci´on f con esquema s. Esta funci´on puede ser
extendida can´onicamente a la funci´on f +
de D a D estableciendo
que para d ∈ D.
f +
(d) = e
• la funci´on f +
se aplica sobre todos los elementos de D
independientemente que tenga un efecto o no sobre estos elementos.
• Llamamos f +
la extension can´onica de f al dominio D.
93. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Extensi´on can´onica
Considere una secuencia de ordenes parciales (D1, 1), ..., (Dn, n)
• Considere una funci´on f con esquema s. Esta funci´on puede ser
extendida can´onicamente a la funci´on f +
de D a D estableciendo
que para d ∈ D.
f +
(d) = e
• la funci´on f +
se aplica sobre todos los elementos de D
independientemente que tenga un efecto o no sobre estos elementos.
• Llamamos f +
la extension can´onica de f al dominio D.
94. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Reglas sobre f +
Considere una secuencia de ordenes parciales (D1, 1), ..., (Dn, n) y su
producto cartesiano (D, ). Dadas dos funciones f , g sobre esquemas.
• f y g conmuntan si f +
y g+
conmutan, esto es si :
f +
g+
(d) = g+
f +
(d)
Para todo d ∈ D.
• f semi-conmuta con g, si f + semi-conmuta con g+
esto es si
f +
g+
(d) g+
f +
(d)
Para todo d ∈ D.
95. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Algoritmo DIRECT ITERATION FOR COMPOUND DOMAINS
(DICD)
Considere el producto cartesiano (D, ) de una secuencia de ordenes
parciales y un conjunto finito F0 de funciones con esquemas.
96. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Algoritmo DIRECT ITERATION FOR COMPOUND DOMAINS
(DICD)
Suponga que (D, ) es un orden parcial que es el producto cartesiano de
n ordenes parciales, cada uno con ⊥i como menor elemento para
i ∈ [1..n]. Sea F0 un conjunto finito de funciones con esquemas
monot´onicas e idempotentes que conmutan entre s´ı. Luego, el algoritmo
DICD siempre termina y c´alcula en d el menor fixpoint de las funciones
de F = f +
m´ın f ∈ F0.
97. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Algoritmo SIMPLE ITERATION FOR COMPOUND DOMAINS
(SICD)
98. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Algoritmo Iteraci´on Simple Dominios Compuestos - Lema(SICD)
Suponga que (D, ) es un orden parcial que es el producto cartesiano de
n ordenes parciales, cada uno con ⊥i como menor elemento para
i ∈ [1..n]. Sea F0 = {f1, ..., fk } un conjunto finito de funciones con
esquemas.
Suponga que todas las funciones en F0 son monot´onicas, inflacionarias e
idempotentes y cada fi semi-conmuta con fj para i > j, esto es
f +
i f +
j (d) f +
j f +
i (d)
para todo d ∈ D. Luego, el algoritmo SICD siempre termina y c´alcula en
d el menor fixpoint de las funciones de F = {f +
|f ∈ F0}
99. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Algoritmo Iteraci´on Simple Dominios Compuestos - Lema(SICD)
Suponga que (D, ) es un orden parcial que es el producto cartesiano de
n ordenes parciales, cada uno con ⊥i como menor elemento para
i ∈ [1..n]. Sea F0 = {f1, ..., fk } un conjunto finito de funciones con
esquemas.
Suponga que todas las funciones en F0 son monot´onicas, inflacionarias e
idempotentes y cada fi semi-conmuta con fj para i > j, esto es
f +
i f +
j (d) f +
j f +
i (d)
para todo d ∈ D. Luego, el algoritmo SICD siempre termina y c´alcula en
d el menor fixpoint de las funciones de F = {f +
|f ∈ F0}
100. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Algoritmo GENERIC ITERATION FOR COMPOUND DOMAINS
(CD)
101. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Algoritmo Algoritmo Iteraci´on Gen´erica Dominios Compuestos -
Lema(SICD)
Suponga que (D, ) es un orden parcial que es el producto cartesiano de
n ordenes parciales, cada uno con ⊥i como menor elemento para
i ∈ [1..n]. Sea F0 = {f1, ..., fk } un conjunto finito de funciones con
esquemas.
Suponga que todas las funciones en F0 son monot´onicas, inflacionarias.
Luego, el algoritmo CD siempre termina y c´alcula en d el menor FixPoint
de las funciones de F = {f +
|f ∈ F0}
102. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Dominios Compuestos
Algoritmo Algoritmo Iteraci´on Gen´erica Dominios Compuestos -
Lema(SICD)
Suponga que (D, ) es un orden parcial que es el producto cartesiano de
n ordenes parciales, cada uno con ⊥i como menor elemento para
i ∈ [1..n]. Sea F0 = {f1, ..., fk } un conjunto finito de funciones con
esquemas.
Suponga que todas las funciones en F0 son monot´onicas, inflacionarias.
Luego, el algoritmo CD siempre termina y c´alcula en d el menor FixPoint
de las funciones de F = {f +
|f ∈ F0}
103. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Plan
Introducci´on
Fundamentos Formales Discretos
Relaciones Binarias
Ordenamiento Parcial
Iteraci´on
Estabilizaci´on
Conmutatividad
Algoritmos Gen´ericos de Iteraci´on
Algoritmos para Ordenes Parciales Arbitrarios
Algoritmos para Dominios Compuestos
Algoritmos de Propagaci´on de Restricciones
Generalidades
Algoritmo para Nodo-consistencia
Algoritmo para Hiper arco-consistencia
Algoritmo para Arco-consistencia Direccional
Algoritmo para Ruta-consistencia
Algoritmo para Ruta-consistencia Direccional
104. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Generalidades
• Estamos interesados en definir algoritmos de propagaci´on de
restricciones.
• En este enfoque, los algoritmos de propagaci´on corresponer´an a
casos especiales de los algoritmos de iteraci´on vistos en la anterior
secci´on.
• A continuaci´on, relacionamos las nociones fundamentales de los
algoritmos de iteraci´on con los elementos que conforman un CSP.
105. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Generalidades
• Estamos interesados en definir algoritmos de propagaci´on de
restricciones.
• En este enfoque, los algoritmos de propagaci´on corresponer´an a
casos especiales de los algoritmos de iteraci´on vistos en la anterior
secci´on.
• A continuaci´on, relacionamos las nociones fundamentales de los
algoritmos de iteraci´on con los elementos que conforman un CSP.
106. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Generalidades
• Estamos interesados en definir algoritmos de propagaci´on de
restricciones.
• En este enfoque, los algoritmos de propagaci´on corresponer´an a
casos especiales de los algoritmos de iteraci´on vistos en la anterior
secci´on.
• A continuaci´on, relacionamos las nociones fundamentales de los
algoritmos de iteraci´on con los elementos que conforman un CSP.
107. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
• Corresponder´an al CSP original y la noci´on de consistencia local que
est´e bajo consideraci´on.
• Dado un CSP < C1, ..., Ck ; x1 ∈ D1, ..., xn ∈ Dn > se usar´an dos
ordenes parciales.
• C son restricciones.
• X son las variables.
• D los dominios de cada variables.
108. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
• Corresponder´an al CSP original y la noci´on de consistencia local que
est´e bajo consideraci´on.
• Dado un CSP < C1, ..., Ck ; x1 ∈ D1, ..., xn ∈ Dn > se usar´an dos
ordenes parciales.
• C son restricciones.
• X son las variables.
• D los dominios de cada variables.
109. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
• Corresponder´an al CSP original y la noci´on de consistencia local que
est´e bajo consideraci´on.
• Dado un CSP < C1, ..., Ck ; x1 ∈ D1, ..., xn ∈ Dn > se usar´an dos
ordenes parciales.
• C son restricciones.
• X son las variables.
• D los dominios de cada variables.
110. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
• Corresponder´an al CSP original y la noci´on de consistencia local que
est´e bajo consideraci´on.
• Dado un CSP < C1, ..., Ck ; x1 ∈ D1, ..., xn ∈ Dn > se usar´an dos
ordenes parciales.
• C son restricciones.
• X son las variables.
• D los dominios de cada variables.
111. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
• Corresponder´an al CSP original y la noci´on de consistencia local que
est´e bajo consideraci´on.
• Dado un CSP < C1, ..., Ck ; x1 ∈ D1, ..., xn ∈ Dn > se usar´an dos
ordenes parciales.
• C son restricciones.
• X son las variables.
• D los dominios de cada variables.
112. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores : Primer Orden
• Corresponde al producto cartesiano de los ordenes parciales
(P(Di ), ⊇), donde i ∈ [1..n].
(P(D)) = Conjunto potencia del conjunto D.
• Hace referencia al productor cartesiano (conjunto potencia) de los
dominios de las variables.
• Se usa para reducir el tama˜no de los dominios de las variables en las
restricciones.
113. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores : Primer Orden
• Corresponde al producto cartesiano de los ordenes parciales
(P(Di ), ⊇), donde i ∈ [1..n].
(P(D)) = Conjunto potencia del conjunto D.
• Hace referencia al productor cartesiano (conjunto potencia) de los
dominios de las variables.
• Se usa para reducir el tama˜no de los dominios de las variables en las
restricciones.
114. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores : Primer Orden
• Corresponde al producto cartesiano de los ordenes parciales
(P(Di ), ⊇), donde i ∈ [1..n].
(P(D)) = Conjunto potencia del conjunto D.
• Hace referencia al productor cartesiano (conjunto potencia) de los
dominios de las variables.
• Se usa para reducir el tama˜no de los dominios de las variables en las
restricciones.
115. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores : Primer Orden
• Corresponde al producto cartesiano de los ordenes parciales
(P(Di ), ⊇), donde i ∈ [1..n].
(P(D)) = Conjunto potencia del conjunto D.
• Hace referencia al productor cartesiano (conjunto potencia) de los
dominios de las variables.
• Se usa para reducir el tama˜no de los dominios de las variables en las
restricciones.
116. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores: Segundo Orden
• Corresponde al producto cartesiano de los ordenes parciales
(P(Ci ), ⊇), donde i ∈ [1..k].
• Hace referencia al productor producto cartesiano de los productos
cartesianos de las restricciones.
• P(Ci ) : Una restricci´on es un subconjunto del dominio del producto
cartesiano de los dominios de unas variables.
• Se usa para reducir las restricciones en funciones de los dominios de
las variables.
117. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores: Segundo Orden
• Corresponde al producto cartesiano de los ordenes parciales
(P(Ci ), ⊇), donde i ∈ [1..k].
• Hace referencia al productor producto cartesiano de los productos
cartesianos de las restricciones.
• P(Ci ) : Una restricci´on es un subconjunto del dominio del producto
cartesiano de los dominios de unas variables.
• Se usa para reducir las restricciones en funciones de los dominios de
las variables.
118. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores: Segundo Orden
• Corresponde al producto cartesiano de los ordenes parciales
(P(Ci ), ⊇), donde i ∈ [1..k].
• Hace referencia al productor producto cartesiano de los productos
cartesianos de las restricciones.
• P(Ci ) : Una restricci´on es un subconjunto del dominio del producto
cartesiano de los dominios de unas variables.
• Se usa para reducir las restricciones en funciones de los dominios de
las variables.
119. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores: Segundo Orden
• Corresponde al producto cartesiano de los ordenes parciales
(P(Ci ), ⊇), donde i ∈ [1..k].
• Hace referencia al productor producto cartesiano de los productos
cartesianos de las restricciones.
• P(Ci ) : Una restricci´on es un subconjunto del dominio del producto
cartesiano de los dominios de unas variables.
• Se usa para reducir las restricciones en funciones de los dominios de
las variables.
120. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
Reglas
• Si se est´a considerando nodo-consistencia, arco-consistencia, hiper
arco-consistencia o arco-consistencia direccional se usar´a el primer
orden.
• Para ruta-consistencia y ruta-consistencia direccional se usar´a el
segundo orden.
121. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
Reglas
• Si se est´a considerando nodo-consistencia, arco-consistencia, hiper
arco-consistencia o arco-consistencia direccional se usar´a el primer
orden.
• Para ruta-consistencia y ruta-consistencia direccional se usar´a el
segundo orden.
122. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
Funciones monot´onicas e inflacionarias con esquemas
• Las funciones corresponder´an a las reglas de reducci´on de dominio y
las reglas especificas de transformaci´on que permiten caracterizar las
diferentes nociones de consistencia local.
• Cada esquema corresponder´a a las variables usadas en el primer
orden parcial o a las restricciones usadas en el segundo orden.
Ejemplificaci´on
Dadas las variables X, Y y Z y la restricci´on : X < Y , entonces el
esquema va hacer solo con las variables X y Y sin incluir a Z. Es decir el
esquema afecta solo a X e Y.
123. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
Funciones monot´onicas e inflacionarias con esquemas
• Las funciones corresponder´an a las reglas de reducci´on de dominio y
las reglas especificas de transformaci´on que permiten caracterizar las
diferentes nociones de consistencia local.
• Cada esquema corresponder´a a las variables usadas en el primer
orden parcial o a las restricciones usadas en el segundo orden.
Ejemplificaci´on
Dadas las variables X, Y y Z y la restricci´on : X < Y , entonces el
esquema va hacer solo con las variables X y Y sin incluir a Z. Es decir el
esquema afecta solo a X e Y.
124. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
Funciones monot´onicas e inflacionarias con esquemas
• Las funciones corresponder´an a las reglas de reducci´on de dominio y
las reglas especificas de transformaci´on que permiten caracterizar las
diferentes nociones de consistencia local.
• Cada esquema corresponder´a a las variables usadas en el primer
orden parcial o a las restricciones usadas en el segundo orden.
Ejemplificaci´on
Dadas las variables X, Y y Z y la restricci´on : X < Y , entonces el
esquema va hacer solo con las variables X y Y sin incluir a Z. Es decir el
esquema afecta solo a X e Y.
125. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
Fixpoint com´unes
• Corresponder´an a los CSPs que satisfacen las diferentes nociones de
consistencia.
• Fixpoint : Son todos los CSPS que satisfacen una noci´on de
consistencia puntual.
126. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
Fixpoint com´unes
• Corresponder´an a los CSPs que satisfacen las diferentes nociones de
consistencia.
• Fixpoint : Son todos los CSPS que satisfacen una noci´on de
consistencia puntual.
127. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
Generalidades
• Antes trat´abamos de incrementar un valor, ahora vamos a intentar
reducir un valor. En este caso el dominio de las variables.
• De esta manera, las funciones con esquemas consideradas ser´an
usadas en la presencia del orden inverso (P(Ci ), ⊇).
• Se ordena de acuerdo al tama˜no de los conjunto.
{1, 2, 3, 4, 5} es menor que {1, 2, 3, 4} en la relaci´on inversa. (P(Ci ), ⊇).
128. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
Generalidades
• Antes trat´abamos de incrementar un valor, ahora vamos a intentar
reducir un valor. En este caso el dominio de las variables.
• De esta manera, las funciones con esquemas consideradas ser´an
usadas en la presencia del orden inverso (P(Ci ), ⊇).
• Se ordena de acuerdo al tama˜no de los conjunto.
{1, 2, 3, 4, 5} es menor que {1, 2, 3, 4} en la relaci´on inversa. (P(Ci ), ⊇).
129. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
Generalidades
• Antes trat´abamos de incrementar un valor, ahora vamos a intentar
reducir un valor. En este caso el dominio de las variables.
• De esta manera, las funciones con esquemas consideradas ser´an
usadas en la presencia del orden inverso (P(Ci ), ⊇).
• Se ordena de acuerdo al tama˜no de los conjunto.
{1, 2, 3, 4, 5} es menor que {1, 2, 3, 4} en la relaci´on inversa. (P(Ci ), ⊇).
130. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
Generalidades
• De esta manera, las funciones con esquemas consideradas ser´an
usadas en la presencia del orden inverso ⊆.
• Considere una funci´on f sobre el producto cartesiano
P(Ei )x...xP(Em).
• Dadas las secuencias X = (X1, ..., Xn) y Y = (Y1, ..., Ym) de
P(Ei )x...xP(Em), escribimos X ⊆ Y para denotar que Xi ⊆ Yi para
todo i ∈ [1..m].
131. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
Generalidades
• De esta manera, las funciones con esquemas consideradas ser´an
usadas en la presencia del orden inverso ⊆.
• Considere una funci´on f sobre el producto cartesiano
P(Ei )x...xP(Em).
• Dadas las secuencias X = (X1, ..., Xn) y Y = (Y1, ..., Ym) de
P(Ei )x...xP(Em), escribimos X ⊆ Y para denotar que Xi ⊆ Yi para
todo i ∈ [1..m].
132. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
Generalidades
• De esta manera, las funciones con esquemas consideradas ser´an
usadas en la presencia del orden inverso ⊆.
• Considere una funci´on f sobre el producto cartesiano
P(Ei )x...xP(Em).
• Dadas las secuencias X = (X1, ..., Xn) y Y = (Y1, ..., Ym) de
P(Ei )x...xP(Em), escribimos X ⊆ Y para denotar que Xi ⊆ Yi para
todo i ∈ [1..m].
133. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
inflacionaria
• f es inflacionaria con respecto al orden inverso ⊇ si para todo
X ∈ P(E1)x...xP(Em) se tiene que F(X) ⊆ X:
De manera Informal : En otras palabras f siempre ser´a inflacionaria si
siempre pasamos a un conjunto de menor tama˜no con respecto al que
ten´ıamos inicialmente.
monotonica
• f es monotonica con respecto al orden inverso ⊇ si para todo
X ∈ P(E1)x...xP(Em) para todo X, Y ∈ P(Ei )x...xP(Em):
De manera Informal : El hecho de que tenga dos elementos donde uno es
subconjunto del otro garantiza que el segundo elemento es subconjunto
del primero.
134. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
inflacionaria
• f es inflacionaria con respecto al orden inverso ⊇ si para todo
X ∈ P(E1)x...xP(Em) se tiene que F(X) ⊆ X:
De manera Informal : En otras palabras f siempre ser´a inflacionaria si
siempre pasamos a un conjunto de menor tama˜no con respecto al que
ten´ıamos inicialmente.
monotonica
• f es monotonica con respecto al orden inverso ⊇ si para todo
X ∈ P(E1)x...xP(Em) para todo X, Y ∈ P(Ei )x...xP(Em):
De manera Informal : El hecho de que tenga dos elementos donde uno es
subconjunto del otro garantiza que el segundo elemento es subconjunto
del primero.
135. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Ordenes parciales con elementos menores
inflacionaria
• f es inflacionaria con respecto al orden inverso ⊇ si para todo
X ∈ P(E1)x...xP(Em) se tiene que F(X) ⊆ X:
De manera Informal : En otras palabras f siempre ser´a inflacionaria si
siempre pasamos a un conjunto de menor tama˜no con respecto al que
ten´ıamos inicialmente.
monotonica
• f es monotonica con respecto al orden inverso ⊇ si para todo
X ∈ P(E1)x...xP(Em) para todo X, Y ∈ P(Ei )x...xP(Em):
De manera Informal : El hecho de que tenga dos elementos donde uno es
subconjunto del otro garantiza que el segundo elemento es subconjunto
del primero.
136. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Plan
Introducci´on
Fundamentos Formales Discretos
Relaciones Binarias
Ordenamiento Parcial
Iteraci´on
Estabilizaci´on
Conmutatividad
Algoritmos Gen´ericos de Iteraci´on
Algoritmos para Ordenes Parciales Arbitrarios
Algoritmos para Dominios Compuestos
Algoritmos de Propagaci´on de Restricciones
Generalidades
Algoritmo para Nodo-consistencia
Algoritmo para Hiper arco-consistencia
Algoritmo para Arco-consistencia Direccional
Algoritmo para Ruta-consistencia
Algoritmo para Ruta-consistencia Direccional
137. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
• Para abordar la noci´on de nodo-consistencia, se asume un CSP P en
la secuencia D1, ..., Dn de los dominios.
• Se considera, el producto cartesiano de los ordenes parciales
(P(Di ), ⊇) , donde i ∈ [1..n].
• Los elementos de este orden compuesto son las secuencias X1, ..., Xn
de los respectivos dominios D1, ..., Dn ordenados componente a
componente por el orden inverso de subconjuntos ⊇.
• De esta manera, la secuencia D1, ..., Dn es el menor elemento en este
orden.
138. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
• Para abordar la noci´on de nodo-consistencia, se asume un CSP P en
la secuencia D1, ..., Dn de los dominios.
• Se considera, el producto cartesiano de los ordenes parciales
(P(Di ), ⊇) , donde i ∈ [1..n].
• Los elementos de este orden compuesto son las secuencias X1, ..., Xn
de los respectivos dominios D1, ..., Dn ordenados componente a
componente por el orden inverso de subconjuntos ⊇.
• De esta manera, la secuencia D1, ..., Dn es el menor elemento en este
orden.
139. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
• Para abordar la noci´on de nodo-consistencia, se asume un CSP P en
la secuencia D1, ..., Dn de los dominios.
• Se considera, el producto cartesiano de los ordenes parciales
(P(Di ), ⊇) , donde i ∈ [1..n].
• Los elementos de este orden compuesto son las secuencias X1, ..., Xn
de los respectivos dominios D1, ..., Dn ordenados componente a
componente por el orden inverso de subconjuntos ⊇.
• De esta manera, la secuencia D1, ..., Dn es el menor elemento en este
orden.
140. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
• Se considerar´a la regla de reducci´on de dominio usada para
caracterizar la noci´on de nodo-consistencia:
NODO CONSISTENCIA
< C; x ∈ D >
< C; x ∈ C ∩ D >
Donde C es una restricci´on unaria sobre x.
141. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
• La regla NODO-CONSISTENCIA puede ser interpretada como
una funci´on sobre el producto cartesiano P(Di )x...xP(Dn)
• Esto es bastante simple puesto que esta regla puede ser vista como
una funci´on que mapea el dominio anterior a un nuevo dominio.
• De esta manera, dada una restricci´on unaria C en la variable x con
dominio D, la regla NODO-CONSISTENCIA puede ser vista como
la siguiente funci´on π sobre P:
π0(X) = X ∩ C
Luego, π+
0 es una funci´on sobre P(Di )x...xP(Dn).
142. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
• La regla NODO-CONSISTENCIA puede ser interpretada como
una funci´on sobre el producto cartesiano P(Di )x...xP(Dn)
• Esto es bastante simple puesto que esta regla puede ser vista como
una funci´on que mapea el dominio anterior a un nuevo dominio.
• De esta manera, dada una restricci´on unaria C en la variable x con
dominio D, la regla NODO-CONSISTENCIA puede ser vista como
la siguiente funci´on π sobre P:
π0(X) = X ∩ C
Luego, π+
0 es una funci´on sobre P(Di )x...xP(Dn).
143. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
• La regla NODO-CONSISTENCIA puede ser interpretada como
una funci´on sobre el producto cartesiano P(Di )x...xP(Dn)
• Esto es bastante simple puesto que esta regla puede ser vista como
una funci´on que mapea el dominio anterior a un nuevo dominio.
• De esta manera, dada una restricci´on unaria C en la variable x con
dominio D, la regla NODO-CONSISTENCIA puede ser vista como
la siguiente funci´on π sobre P:
π0(X) = X ∩ C
Luego, π+
0 es una funci´on sobre P(Di )x...xP(Dn).
144. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
Caracterizaci´on Nodo-consistencia
• Un CSP < C; x1 ∈ D1, ..., xn ∈ Dn > es nodo consistente sii
(D1, ..., Dn) es un fixpoint com´un de todas las funciones π+
0
asociadas con las restricciones unarias de C.
• Todas las funciones π0 asociadas con una restricci´on unaria C.
• Monot´onicas con respecto al orden inverso ⊇,
• Idempotentes , y
• Conmutan entre si.
145. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
Caracterizaci´on Nodo-consistencia
• Un CSP < C; x1 ∈ D1, ..., xn ∈ Dn > es nodo consistente sii
(D1, ..., Dn) es un fixpoint com´un de todas las funciones π+
0
asociadas con las restricciones unarias de C.
• Todas las funciones π0 asociadas con una restricci´on unaria C.
• Monot´onicas con respecto al orden inverso ⊇,
• Idempotentes , y
• Conmutan entre si.
146. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
Caracterizaci´on Nodo-consistencia
• Un CSP < C; x1 ∈ D1, ..., xn ∈ Dn > es nodo consistente sii
(D1, ..., Dn) es un fixpoint com´un de todas las funciones π+
0
asociadas con las restricciones unarias de C.
• Todas las funciones π0 asociadas con una restricci´on unaria C.
• Monot´onicas con respecto al orden inverso ⊇,
• Idempotentes , y
• Conmutan entre si.
147. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
Caracterizaci´on Nodo-consistencia
• Un CSP < C; x1 ∈ D1, ..., xn ∈ Dn > es nodo consistente sii
(D1, ..., Dn) es un fixpoint com´un de todas las funciones π+
0
asociadas con las restricciones unarias de C.
• Todas las funciones π0 asociadas con una restricci´on unaria C.
• Monot´onicas con respecto al orden inverso ⊇,
• Idempotentes , y
• Conmutan entre si.
148. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
Instanciaci´on Algoritmo
• La noci´on de nodo-consistencia es caracterizada mediante funciones
que conmutan.
• De esta manera, para obtener un algoritmo que alcance
nodo-consistencia es posible instanciar el algoritmo DICD.
149. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
Instanciaci´on Algoritmo
• El conjunto de funciones F0 puede ser definido de la siguiente
manera:
F0 = {f | es la funci´on π0 asociada con una restricci´on unaria de P}
• Igualmente, cada ⊥i corresponde al dominio original Di respectivo.
• El algoritmo resultante es llamado NODE.
150. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
Instanciaci´on Algoritmo
• El conjunto de funciones F0 puede ser definido de la siguiente
manera:
F0 = {f | es la funci´on π0 asociada con una restricci´on unaria de P}
• Igualmente, cada ⊥i corresponde al dominio original Di respectivo.
• El algoritmo resultante es llamado NODE.
151. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
Instanciaci´on Algoritmo
• El conjunto de funciones F0 puede ser definido de la siguiente
manera:
F0 = {f | es la funci´on π0 asociada con una restricci´on unaria de P}
• Igualmente, cada ⊥i corresponde al dominio original Di respectivo.
• El algoritmo resultante es llamado NODE.
152. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
Algoritmo NODE
153. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
Caracterizaci´on Algoritmo NODE
• Considere un CSP P =< C; x1 ∈ D1, ..., xn ∈ Dn > .
• El algoritmo NODE siempre termina.
• Sea P el CSP determinado por P y por la secuencia de dominios
calculados en d por el algoritmo NODE. Luego:
• P es nodo-consistente,
• P es equivalente P.
154. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
Caracterizaci´on Algoritmo NODE
• Considere un CSP P =< C; x1 ∈ D1, ..., xn ∈ Dn > .
• El algoritmo NODE siempre termina.
• Sea P el CSP determinado por P y por la secuencia de dominios
calculados en d por el algoritmo NODE. Luego:
• P es nodo-consistente,
• P es equivalente P.
155. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
Caracterizaci´on Algoritmo NODE
• Considere un CSP P =< C; x1 ∈ D1, ..., xn ∈ Dn > .
• El algoritmo NODE siempre termina.
• Sea P el CSP determinado por P y por la secuencia de dominios
calculados en d por el algoritmo NODE. Luego:
• P es nodo-consistente,
• P es equivalente P.
156. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Nodo-consistencia
Caracterizaci´on Algoritmo NODE
• Considere un CSP P =< C; x1 ∈ D1, ..., xn ∈ Dn > .
• El algoritmo NODE siempre termina.
• Sea P el CSP determinado por P y por la secuencia de dominios
calculados en d por el algoritmo NODE. Luego:
• P es nodo-consistente,
• P es equivalente P.
157. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
Se considerar´an las reglas de reducci´on de dominio usadas para
caracterizar la noci´on de arco-consistencia:
ARC-CONSISTENCIA 1
< C; x ∈ Dx , y ∈ Dy >
< C; x ∈ D x , y ∈ DY >
donde Dx := {a inDx |∃b∈Dy
(a, b) ∈ C}
ARC-CONSISTENCIA 2
< C; x ∈ Dx , y ∈ Dy >
< C; x ∈ Dx , y ∈ D Y >
donde Dy := {a inDy |∃a∈Dx (a, b) ∈ C}
158. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
• Estas regla puede ser interpretada como una funci´on sobre el
producto cartesiano P(D1)x...xP(Dn).
• De esta manera, dada una restricci´on C en las variables x1, ..., xk con
respectivos dominios D1, ..., Dy , para cada i ∈ [1..k] la regla
HIPER-ARC CONSISTENCIA puede ser vista como la funci´on πi
sobreP(D1)x...xP(Dy ):
πi (X, Y ) = (X , Y )
donde Xi = {a ∈ X|∃b ∈ Y (a, b) ∈ C}
159. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
• Estas regla puede ser interpretada como una funci´on sobre el
producto cartesiano P(D1)x...xP(Dn).
• De esta manera, dada una restricci´on C en las variables x1, ..., xk con
respectivos dominios D1, ..., Dy , para cada i ∈ [1..k] la regla
HIPER-ARC CONSISTENCIA puede ser vista como la funci´on πi
sobreP(D1)x...xP(Dy ):
πi (X, Y ) = (X , Y )
donde Xi = {a ∈ X|∃b ∈ Y (a, b) ∈ C}
160. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
• Estas regla puede ser interpretada como una funci´on sobre el
producto cartesiano P(D1)x...xP(Dn).
• De esta manera, dada una restricci´on C en las variables x1, ..., xk con
respectivos dominios D1, ..., Dy , para cada i ∈ [1..k] la regla
HIPER-ARC CONSISTENCIA puede ser vista como la funci´on πi
sobreP(D1)x...xP(Dy ):
πi (X, Y ) = (X , Y )
donde Xi = {a ∈ X|∃b ∈ Y (a, b) ∈ C}
161. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
• As´ı mismo la regla ARC-CONSISTENCIA 2 puede ser vista como
la siguiente funci´on sobre P(Dx )x...xP(Dy ).
πi (X, Y ) = (X, Y )
donde Yi = {b ∈ Y |∃b ∈ X(a, b) ∈ C}
• De esta manera las funciones π1 y π2 son funciones en
P(D1)x...xP(Dn).
162. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
• As´ı mismo la regla ARC-CONSISTENCIA 2 puede ser vista como
la siguiente funci´on sobre P(Dx )x...xP(Dy ).
πi (X, Y ) = (X, Y )
donde Yi = {b ∈ Y |∃b ∈ X(a, b) ∈ C}
• De esta manera las funciones π1 y π2 son funciones en
P(D1)x...xP(Dn).
163. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
• As´ı mismo la regla ARC-CONSISTENCIA 2 puede ser vista como
la siguiente funci´on sobre P(Dx )x...xP(Dy ).
πi (X, Y ) = (X, Y )
donde Yi = {b ∈ Y |∃b ∈ X(a, b) ∈ C}
• De esta manera las funciones π1 y π2 son funciones en
P(D1)x...xP(Dn).
164. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
Instanciaci´on Algoritmo
• Un CSP < C; x1 ∈ D1, ..., xn ∈ Dn > es arco-consistente si y solo si
(D1, ..., Dn) es un fixpoint com´un de todas las funciones π+
1 y π+
2
asociadas con las restricciones binarias de < C .
• Cada funci´on πi asociada con una restricci´on binaria < C es:
• inflacionaria con respecto al orden inverso ⊇ y
• monot´onica con respecto al orden inverso ⊇.
165. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
Instanciaci´on Algoritmo
• Un CSP < C; x1 ∈ D1, ..., xn ∈ Dn > es arco-consistente si y solo si
(D1, ..., Dn) es un fixpoint com´un de todas las funciones π+
1 y π+
2
asociadas con las restricciones binarias de < C .
• Cada funci´on πi asociada con una restricci´on binaria < C es:
• inflacionaria con respecto al orden inverso ⊇ y
• monot´onica con respecto al orden inverso ⊇.
166. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
Instanciaci´on Algoritmo
• Un CSP < C; x1 ∈ D1, ..., xn ∈ Dn > es arco-consistente si y solo si
(D1, ..., Dn) es un fixpoint com´un de todas las funciones π+
1 y π+
2
asociadas con las restricciones binarias de < C .
• Cada funci´on πi asociada con una restricci´on binaria < C es:
• inflacionaria con respecto al orden inverso ⊇ y
• monot´onica con respecto al orden inverso ⊇.
167. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
Instanciaci´on Algoritmo
• En general, las funciones πi asociada a diferentes restricciones
binarias no conmutan ni semiconmutan. Por eso, no es posible
utilizar los algoritmos DICD o SICD.
• Sin embargo, es posible utilizar el algoritmo CD.
• Teniendo en cuenta que para una relaci´on binaria R se tiene que
Rt
= {(b, a)|(a, b) ∈ R}. Por simplicidad, consideramos todas las
restricciones y sus contra partes inversas.
168. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
Instanciaci´on Algoritmo
• En general, las funciones πi asociada a diferentes restricciones
binarias no conmutan ni semiconmutan. Por eso, no es posible
utilizar los algoritmos DICD o SICD.
• Sin embargo, es posible utilizar el algoritmo CD.
• Teniendo en cuenta que para una relaci´on binaria R se tiene que
Rt
= {(b, a)|(a, b) ∈ R}. Por simplicidad, consideramos todas las
restricciones y sus contra partes inversas.
169. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
Instanciaci´on Algoritmo
• En general, las funciones πi asociada a diferentes restricciones
binarias no conmutan ni semiconmutan. Por eso, no es posible
utilizar los algoritmos DICD o SICD.
• Sin embargo, es posible utilizar el algoritmo CD.
• Teniendo en cuenta que para una relaci´on binaria R se tiene que
Rt
= {(b, a)|(a, b) ∈ R}. Por simplicidad, consideramos todas las
restricciones y sus contra partes inversas.
170. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
Instanciaci´on Algoritmo
• De esta manera, el conjunto de funciones F0 ser´a equivalente al
conjunto de funciones π1 para estas restricciones o relaciones.
• Igualmente, cada ⊥i corresponde al respectivo dominio original Di .
• El algoritmo resultante se denomina ARC.
171. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
Instanciaci´on Algoritmo
• De esta manera, el conjunto de funciones F0 ser´a equivalente al
conjunto de funciones π1 para estas restricciones o relaciones.
• Igualmente, cada ⊥i corresponde al respectivo dominio original Di .
• El algoritmo resultante se denomina ARC.
172. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
Instanciaci´on Algoritmo
• De esta manera, el conjunto de funciones F0 ser´a equivalente al
conjunto de funciones π1 para estas restricciones o relaciones.
• Igualmente, cada ⊥i corresponde al respectivo dominio original Di .
• El algoritmo resultante se denomina ARC.
173. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Arco-consistencia
Algoritmo ARC
174. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para arco-consistencia
Caracterizaci´on Algoritmo ARC
• Considere un CSP finito P =< C; x1 ∈ D1, ..., xn ∈ Dn >.
• El algoritmo ARC siempre termina.
• Sea P el CSP determinado por P y por la secuencia de dominios
calculados por el algoritmo ARC. Luego:
• P es arco-consistente.
• P es equivalente a P
175. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para arco-consistencia
Caracterizaci´on Algoritmo ARC
• Considere un CSP finito P =< C; x1 ∈ D1, ..., xn ∈ Dn >.
• El algoritmo ARC siempre termina.
• Sea P el CSP determinado por P y por la secuencia de dominios
calculados por el algoritmo ARC. Luego:
• P es arco-consistente.
• P es equivalente a P
176. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para arco-consistencia
Caracterizaci´on Algoritmo ARC
• Considere un CSP finito P =< C; x1 ∈ D1, ..., xn ∈ Dn >.
• El algoritmo ARC siempre termina.
• Sea P el CSP determinado por P y por la secuencia de dominios
calculados por el algoritmo ARC. Luego:
• P es arco-consistente.
• P es equivalente a P
177. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para arco-consistencia
Caracterizaci´on Algoritmo ARC
• Considere un CSP finito P =< C; x1 ∈ D1, ..., xn ∈ Dn >.
• El algoritmo ARC siempre termina.
• Sea P el CSP determinado por P y por la secuencia de dominios
calculados por el algoritmo ARC. Luego:
• P es arco-consistente.
• P es equivalente a P
178. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Plan
Introducci´on
Fundamentos Formales Discretos
Relaciones Binarias
Ordenamiento Parcial
Iteraci´on
Estabilizaci´on
Conmutatividad
Algoritmos Gen´ericos de Iteraci´on
Algoritmos para Ordenes Parciales Arbitrarios
Algoritmos para Dominios Compuestos
Algoritmos de Propagaci´on de Restricciones
Generalidades
Algoritmo para Nodo-consistencia
Algoritmo para Hiper arco-consistencia
Algoritmo para Arco-consistencia Direccional
Algoritmo para Ruta-consistencia
Algoritmo para Ruta-consistencia Direccional
179. Introducci´on Fundamentos Formales Discretos Algoritmos Gen´ericos de Iteraci´on Algoritmos de Propagaci´on de Restricciones
Algoritmo para Hiper arco-consistencia
Se considerar´a la regla de reducci´on de dominio usada para caracterizar la
noci´on de hiper arco-consistencia
HIPER-ARC CONSISTENCIA
C; x1 < inD1, ...xn ∈ Dn
C; ..., xi ∈ Di , ...
donde C es una restricci´on sobre las variables x1, ..., xn y
∀i∈[1..n]Di := {a ∈ Di |∃d∈c a = d[xi ]}