You are on page 1of 33

GRUPO DE PESQUISA EM

INTELIGNCIA E IMAGENS

103501
Inteligncia Artificial

DEPARTAMENTO
DE COMPUTAO

Hendrik T. Macedo

Agentes que Satisfazem Restries

Contedo
Definio
CSPs como Busca
Heursticas para CSPs
Busca local para CSPs

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
3

At agora...
Problema de busca padro:
Estado uma caixa preta: qualquer estrutura que suporte
Funo Sucessor, Funo Heuristica e Teste de Objetivo

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
4

CSP
Definido por:
Conjunto de variveis X1, X2, ..., Xn
Cada varivel Xi possui valores num domnio Di
Teste de objetivo = verificar se restries C1, C2, ..., Cm so satisfeitas

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
5

Exemplo: Colorao de Mapas

Variveis: WA, NT, Q, NSW, V, SA, T


Domnio: {red,green,blue}
Restries: regies adjacentes devem possuir cores diferentes
e.g., WA NT ou (WA,NT) em {(red,green),(red,blue),(green,red),
(green,blue),(blue,red),(blue,green)}
.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
6

Exemplo: Colorao de Mapas


Soluo = atribuies completas e consistentes

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
7

Grafo de Restrio
Grafo de restrio: ns so variveis, arcos so restries

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
8

Tipos de Variveis em CSPs


Variveis discretas
Domnios finitos:
n variveis e tam(domnio)=d O(dn) atribuies completas
Ex: colorao de mapas [tam(dominio) = 3]

Domnios infinitos:
valores inteiros, strings, etc.
Ex: job scheduling, variveis so inicio/fim de dias para cada atividade
Necessrio uma linguagem de restrio, ex: StartJob1 + 5
StartJob3
No d para enumerar todas as combinaes de valores
possveis

Variveis contnuas
e.g., hora de incio e fim de observaes do Telescpio Hubble

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
9

Tipos de restries em CSPs


Restries Unrias: envolvem uma nica varivel
e.g., SA green
Restries binrias: envolvem pares de variveis
e.g., SA WA
Restries de alta-ordem: envolvem 3 ou mais variveis
e.g., quebra-cabeas criptoaritmtico

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
10
10

Exemplo: QB Criptoaritmtico
Variveis: F T U W R O X1 X2 X3
Domnio: {0,1,2,3,4,5,6,7,8,9}
Restries:

TWO
+TWO
FOUR

(1) (F,T,U,W,R,O)
(2) O + O = R + 10 X1
(3) X1 + W + W = U + 10 X2
(4) X2 + T + T = O + 10 X3
(5) X3 = F, T 0, F 0

1
F

4
X3

3
X2

O
2

X1

Hipergrafo de Restries
.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
11
11

Formulao do CSP como busca


Estados so definidos por valores atribudos
Formulao do problema:
Estado inicial: { } --- variveis sem valores atribudas
Funo sucessor: um valor atribudo varivel sem gerar conflitos
Teste de objetivo: conjunto de atribuies est completo

Considerando Busca em Largura (sem heurstica):


Fator b na raiz = n*d
Fator b seguinte = (n-1)*d
...
Quantas folhas possui a rvore?
n!*dn folhas ainda que existam apenas dn atribuies completas

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
12
12

Busca com Backtracking


Propriedade ignorada: artibuies variveis so
comutativas
[WA=red e NT=green] <==> [NT=green e WA=red]
logo, considerar apenas uma nica varivel em cada n
b = d ==> dn folhas
Busca com Backtrack = Busca em profundidade para
CSPs com nica atribuio de varivel por nvel
Algoritmo de busca bsico para CSPs
Soluciona 8-rainhas com profundidade 25

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
13
13

Exemplo: Busca com Backtracking

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
14
14

Exemplo: Busca com Backtracking

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
15
15

Exemplo: Busca com Backtracking

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
16
16

Exemplo: Busca com Backtracking

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
17
17

Melhorando a eficincia
Uso de heursticas:
Qual a prxima varivel a ser considerada?
Em que ordem os valores do domnio devem ser
atribudos?
Podemos prever uma falha inevitvel?

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
18
18

Heurstica 1
Escolher sempre a varivel com menor nmero
de valores possveis (mais restrita): MRV
(Minimum Remaining Values)

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
19
19

Heurstica 2
MRV no ajuda na escolha da primeira varivel
Escolher a varivel com maior nmero de
restries para as outras variveis: Degree
Heuristics

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
20
20

Heurstica 3
Em que ordem os valores do domnio devem ser
atribudos?
Dada uma varivel, escolha o valor menos
restritivo para as prximas: Least-constrainingvalue
Resta 1 valor

Resta 0

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
21
21

Heurstica 4
Reduzir o espao de busca durante a busca ou
antes mesmo dela ter incio
Heurstica Forward checking:
Guarda valores possveis remanescentes para
variveis sem atribuies ainda
Busca finaliza quando no existem mais valores
possveis para qualquer varivel

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
22
22

Heurstica 4

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
23
23

Heurstica 4

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
24
24

Heurstica 4

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
25
25

Heurstica 4

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
26
26

Heurstica 4
Forward Checking no prev todas as falhas:

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
27
27

Heurstica 5
Propagao de restries de forma a manter os arcos do
grafo consitentes (Arc consistency)
X Y consistente se: para x de X y possvel

OK
.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
28
28

Heurstica 5

~OK --> OK

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
29
29

Heurstica 5
Se X perde um valor, vizinhos devem ser checados
novamente

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
30
30

Heurstica 5
Detecta falha mais cedo do que Forward Cheking
Pode ser executado como um preprocessador da busca

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
31
31

Busca local para CSPs


Hill-climbing, simulated annealing --> estados completos
(todas as variveis atribudas)
Aplicando a CSPs:
Permitir estados com restries no satisfeitas
Operadores reatribuem valores a variveis

Seleo aleatria de varivel


Seleo de valores pela heurstica min-conflicts:
Escolhe valor que viola menos restries

Problema-exemplo?

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
32
32

FIM

.:: Aula 08 Agentes que Satisfazem Restries ::. Prof. Hendrik Macedo Pii DCOMP/UFS
33
33

You might also like