2 BH5 CSP N

Páginas: 9 (2205 palabras) Publicado: 13 de julio de 2015
Satisfacción de restricciones

Introducción

Satisfacción de Restricciones

Notas

Componentes del estado:
Variables
Dominios (valores posibles para las variables)
Restricciones binarias entre las variables

Objetivo: Encontrar un estado que satisface las restricciones
(Asignación de valores a las variables, que satisfaga las restricciones)
Ejemplos:
Colorear mapas, crucigramas, 8-reinas, sudoku,...
Asignación/distribución/ubicación de recursos (distribución de tareas
de fabricación, ubicación de gasolineras, antenas de telefonía, ...)

cbea (LSI-FIB-UPC)

Inteligencia Artificial

Satisfacción de restricciones

Curso 2011/2012

1 / 17

Introducción

Representación

Notas

Estado = Grafo de restricciones
Variables = etiquetas de nodos
Dominios = contenido de nodos
Restricciones = arcosdirigidos y etiquetados entre nodos

Ejemplo: colorear un mapa
Dominios={Rojo,Verde,Azul,Amarillo}
Restricción := Desigualdad

cbea (LSI-FIB-UPC)

4

5

6

7

8

9

3

2

1

Inteligencia Artificial

Satisfacción de restricciones

Curso 2011/2012

2 / 17

Introducción

Algoritmos

Notas

Generación y prueba: enormemente ineficiente
Búsqueda ciega
Búsqueda en profundidad con backtracking cronológicoPropagación de restricciones
Antes de la búsqueda
Durante la búsqueda

cbea (LSI-FIB-UPC)

Inteligencia Artificial

Curso 2011/2012

3 / 17

Satisfacción de restricciones

Backtracking Cronológico

Búsqueda en profundidad con backtracking cronológico

Notas

Búsqueda en profundidad sobre las variables
Asignar valor por estrategia exhaustiva
Comprobar restricciones tras cada posible asignación
Sino se satisfacen para ningún valor, backtracking sobre la última
asignación válida

La búsqueda se realiza en el espacio de soluciones parciales
Backtracking cronológico: tipos de variables (pasadas, actual, futuras)

cbea (LSI-FIB-UPC)

Inteligencia Artificial

Satisfacción de restricciones

Curso 2011/2012

4 / 17

Backtracking Cronológico

Algoritmo Backtracking Cronológico

Notas

Función:backtracking_cronologico(vfuturas, solucion)
si vfuturas.es_vacio?() entonces
retorna solucion
sino
vactual ← vfuturas.primero()
vfuturas.borrar_primero()
para cada v ∈ vactual.valores() hacer
vactual.asignar(v)
solucion.anadir(vactual)
si solucion.valida() entonces
solucion ← backtracking_cronologico(vfuturas,solucion)
si no solucion.es_fallo?() entonces
retorna solucion
sinosolucion.borrar(vactual)
sino
solucion.borrar(vactual)
retorna solucion.fallo()
cbea (LSI-FIB-UPC)

Inteligencia Artificial

Satisfacción de restricciones

Curso 2011/2012

5 / 17

Backtracking Cronológico

Ejemplo: 4-reinas

Notas

Colocar 4 reinas, 1 en cada fila de un tablero 4x4, sin que se maten
Variables: R1 , ... , R4 (reinas)
Dominios: [1 .. 4] para cada Ri (columna)
Restricciones: Ri no-mata Rj

Grafo derestricciones:

cbea (LSI-FIB-UPC)

R1

R2

R3

R4

Inteligencia Artificial

Curso 2011/2012

6 / 17

Satisfacción de restricciones

Backtracking Cronológico

4-reinas mediante backtracking cronológico

Notas

R1=2

R1=1

R2=1 NO
R2=2 NO
R2=3

R2=4

R3=1 NO
R3=2 NO
R3=3 NO
R3=4 NO

R3=1 NO
R3=2
NO
R3=3 NO
R3=4 NO

Backtracking a R2

R2=1 NO
R2=2 NO
R2=3 NO
R2=4

R3=1

R4=1 NO
R4=2 NO
R4=3 NO
R4=4 NOR4=1 NO
R4=2 NO
R4=3

Backtracking a R3

cbea (LSI-FIB-UPC)

Solucion (R1=2,R2=4,R3=1,R4=3)

Inteligencia Artificial

Satisfacción de restricciones

Curso 2011/2012

7 / 17

Propagación de restricciones

Propagación de restricciones

Notas

Un conjunto de restricciones puede inducir otras que estaban implícitas. La
propagación de restricciones es el proceso de hacerlas explícitas
X1

X1

{Rojo}{Axul, Rojo}

X2

X2

{Azul}

{Azul}

X3

X3

X4

X4
{Azul, Rojo, Verde}

{Azul, Verde}

{Rojo}

{Verde}

El papel de la PR es disminuir el espacio de búsqueda. Debemos realizar la
propagación:
1

preproceso (eliminar zonas del espacio donde no hay soluciones)

2

durante el proceso: podar el espacio a medida que la búsqueda
progresa (Forward Checking)

cbea (LSI-FIB-UPC)

Inteligencia Artificial...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Taller n 2 2
  • DEFINICI N DETELECOMUNICACI N 2
  • Resoluci N Control N 2
  • LA CLIMATIZACI N Y LA REFRIGERACI N 2
  • Soluci n Evaluaci n 2
  • INFLACI N DEFLACI N 2
  • Plat N Filosofia 2 2
  • Clase 2 Masturbaci N 2

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS