Escolar Documentos
Profissional Documentos
Cultura Documentos
Mecanismos de Busca II
Hah um trade-
trade-off EFECIENCIA versus COMPLETEZA?
Inteligncia Artificial
Busca T
Tmpera Simulada
n Problemas da Busca Subida da Encosta:
Encosta:
Falha quando encontra um mximo-
ximo-local ou um plat
plat
n Solu
Soluo
o: dar flexibilidade ao processo de busca
Esta a id
idia do Tmpera Simulada (Simulated Annealing)
p = e-E/T
Ideia: Quanto mais prximo o estado X est do objetivo, maior o VALOR do estado X. Movimentos
ruins tem maior probabilidade de serem permitidos no inicio, quando a temperatura eh alta.
Inteligncia Artificial
Caracter
Caractersticas T
Tmpera Simulada
A deciso do algoritmo:
Se estado sucessor for melhor que o n-pai, ento escolhe ele como o
prximo estado a ser expandido (como o Subida da Encosta)
Se o estado sucessor for pior, ento escolhe ele como prximo estado
se, ao escolher o numero aleatrio entre 0 e 1, este for menor que e- E/T
n Desvantagens:
n Como determinar o cronograma de tmpera ?
Testar diversos cronogramas e escolher o melhor !
Inteligncia Artificial
Heur
Heurstica Admiss
Admissvel
n Considere:
n h(n) heurstica (estimativa)
n h*(n) custo real do objetivo (meta) a partir de n
n heurstica admissvel:
h no deve superestimar o custo real h* para se alcanar uma soluo.
Ou seja: deve ser otimista -> h(n) h*(n)
Inteligncia Artificial
Heur
Heursticas Admiss
Admissveis
5 4 1 2 3
6 1 8 8 4
7 3 2 7 6 5
n As duas heur
heursticas s
s o admiss
admissveis para o problema do jogo dos oito.
DICA:
heurstica, geralmente relaxa-
Para se encontrar uma boa heur relaxa-se o problema
Inteligncia Artificial
Heur
Heurstica Admiss
Admissvel
n Qual melhor, h1 ou h2 ?
n sempre melhor usar uma fun
funo o heur
heurstica com valores mais altos,
contanto que ela seja admiss
admissvel.
ex. h2 melhor que h1
Inteligncia Artificial
Qualidade da Heur
Heurstica
n Qualidade da fun
funo
o heur
heurstica:
stica: medida atrav
atravs do fator de
expanso efetivo (b*).
expans
b* o fator de expans
expanso de uma rvore uniforme com N ns e
nvel de profundidade d
N = 1 + b* + (b*)2 + ... + (b*)d , onde
N = total de n
ns expandidos para uma inst
instncia de problema
d = profundidade da solu
soluo;
o;
n Mede-se empiricamente a qualidade de h a partir do conjunto de
Mede-
valores experimentais de N e d.
uma boa fun
funo
o heur ter o b* muito pr
heurstica ter prximo de 1.
n Se o custo de execu
execuoo da fun
funoo heur
heurstica for maior do que
expandir n ento ela no deve ser usada.
ns, ent
uma boa fun
funo heurstica deve ser eficiente e econ
o heur econmica, no que se
refere ao custo computacional
Inteligncia Artificial
Fun
Funo
o de Avalia
Avaliao
o
n Al
Alm da heur
heurstica, pode-
pode-se ter o custo de cada ramo da rvore de
busca. Exemplo:
Suponha que o seu sistema de IA deva lidar com:
n Planejamento de rotas (ir de um ponto a outro na cidade)
n Cada rota gasta combust
combustvel de forma diferente
n Quero, portanto, atingir meu objetivo (heur
(heurstica) e minimizar o gasto de
combust
combustvel (custo)
n Fun
Funo
o de avalia
avaliao:
o:
f (n) = g (n) + h (n)
g (n) = fun o de custo de n ao n
funo n inicial
h (n) = fun
funo
o heur
heurstica
n Se f(n) = h(n), ento a busca, guiada pela funo de avaliao,
depende nica e exclusivamente da funo heurstica
Inteligncia Artificial
Busca A*
n A busca A* a busca Melhor-
Melhor-Escolha guiada pela fun
funo
o
de avalia
avaliao
o
Ou seja, a diferen
diferena entre A* e Melhor-
Melhor-Escolha que o A* usa o
custo de cada ramo
n Interessante:
Se h admiss
admissvel, f (n) nunca ir
ir superestimar o custo
real da melhor solu
soluo atravs de n. Logo, o A*
o atrav
encontrar
encontrar a solu
soluoo tima em termos de custo.
Inteligncia Artificial
Buscas A*
n Exemplo considerando cada ramo custo=1
A A A
(f(n)=g(n)+h(n))
B C D B C D
(3+1) (5+1) (1+1) (3+1) (5+1)
A
(6+2)
A
E (4+2) F
B C D
(5+1) B C D
(6+2)
G (6+2) E F
(4+2)
G E F
(6+2)
(6+2) (4+2)
Inteligncia Artificial
An
Anlise Busca A*
n Semelhante busca Melhor-
Melhor-Escolha por
porm levando em considera
considerao
o o custo
de cada ramo
completa: Sim.
tima: Sim, com rela
relao
o ao custo, i.e., minimiza o custo quando a
heurstica admiss
heur admissvel.
Fator de Ramifica
Ramificao: o: no pior caso todos os n ns gerados a partir
de um n
n (b)
Custo de Tempo: no pior caso O (bd).
Custo de Mem
Memria: no pior caso O (bd).
Compara
Comparao
o das Heur
Heursticas no A*
n Resolvendo o problema do jogo-
jogo-dos-
dos-oito usando A* e duas heur
heursticas:
h1:
h1: Nmero de pastilhas fora de lugar e h2: Distncia de Manhattan
Inteligncia Artificial
Exerc
Exerccio
n Para a seguinte rvore:
A (9)
B
(8) (8) (7)
C D
(8) (6)
E F (7) (6)
G (8) I
H
(7) (6)
K L (6) (7) (9)
)
( M N
J O
)
( (4)
)
( (5)
P Q R S T
U
n Ache a sequ
sequncia de n
ns: GOAL GOAL
A* )
(
V
Considere cada ramo um custo = 1
Inteligncia Artificial
Resposta Exerc
Exerccio:
n Sequ
Sequncia de Expans
Expanso de N
Ns para:
A (9)
n Resposta: A*
B
(9) (9) (8)
C D
10 (8)
E F (9) (8)
G 10 I
H
10 9
K L (9) 10 12
)
( M N
J O
)
( (8)
)
( (9)
P Q R S T
n Sequ
Sequncia Gerada: U
GOAL GOAL
ABCDHIOEFKLGQR )
(
V
Inteligncia Artificial
Hist
Histrico de Jogos em IA
n XADREZ: Venceu Kasparov em jogos com rodadas de 5 a 25 minutos; em
campeonatos fica entre os 100 primeiros.
n 1970: programas complicados com truques de cortes (poda da rvore).
n Belle: primeiro computador dedicado ao jogo de xadrez.
Circuitos integrados implementam a gerao de movimentos
n Hitech: gera 104 posies por jogada
funo mais precisa de avaliao at hoje
Primeiro a vencer um campeo de xadrez (1987).
n Chinook: programa que joga damas. Se tornou campeo do mundo em 1994
Sistemas anteriores empregavam aprendizagem para descobrir a melhor funo de
avaliao
Emprega corte alfa-beta + um Banco de Dados com solues perfeitas
n Othello: muito melhor que humanos. Variao do xadrez com espao de
busca bem menor: 5 a 15 movimentos possveis.
n 2007: Jogos de Damas totalmente mapeados.
Inteligncia Artificial
Algoritmo MIN-
MIN-MAX (tipo em profundidade)
n MAXimizar sua jogada
n MINimizar a jogada do adversrio
Algoritmo MIN-
MIN-MAX
Exemplo: Na jogada do seu adversrio (MIN) ele ir escolher a
pior situao para voc. Na sua jogada (MAX) voc
escolhe a melhor.
A A A
Fun
Funo
o de utilidade Sua
jogada
B C D B C D MAX
MIN
Adv.
F H I
jogada E G
A
(-6) (5) (-1)
(9) (-2)
B C D
(-6) (-2)
(-1)
Inteligncia Artificial
Algoritmo MIN-
MIN-MAX : Jogo da Velha
n Funo de utilidade:
(nmero de colunas abertas para X nmero de colunas abertas para O)
-2 1
-1
6-4 = 2 5-4 = 1
4-5 = -1 5-5 = 0 6-5 = 1 5-5 = 0
Inteligncia Artificial
Exerc
Exerccio MINMAX
n Qual a melhor jogada, B, C ou D ?
B C D
E F G H I J
M N O P Q R S T U V
L
K (5) (7) (3)
(-6) (-2) (4) (-2) (2) (1) (0)
(-1) (9)
Inteligncia Artificial
Exerc
Exerccio MINMAX
n Solu
Soluo:
o:
A
MAX
B (-2) C (5) (1) D
MIN
E (9) F G H I J
(-2) (5) (7) (3) (1)
MAX
M N O P Q R S T U V
L
K
(-6) (-2) (5) (4) (7) (-2) (2) (3) (1) (0)
(9)
(-1)
Inteligncia Artificial
Melhorando o MINMAX
n Cortes Alfa-
Alfa-Beta
Diminuir o espao de busca, nao examinando todos os nos
da arvore
Corte Alfa Baseia-se no maior valor para a maximizao
no pode diminuir (n
(no pode ser menor que um ancestral)
n Id
Idia: no vale a pena piorar, se j
j achou algo melhor
Inteligncia Artificial
Cortes Alfa-
Alfa-Beta
n Corte Beta
A
MAX
B (-2) C (5) (1) D
MIN
E (9) F G H I J
(-2) (5) 7)
( (3) (1)
MAX
M N O P Q R S T U V
L
K
(-6) (-2) (5) (4) (7) (2) (3) (1) (0)
(9)
(-1)
Inteligncia Artificial
Cortes Alfa-
Alfa-Beta
n Corte Alfa
-2 1
-1
6-4 = 2 5-4 = 1
4-5 = -1 5-5 = 0 6-5 = 1 5-5 = 0
Inteligncia Artificial
Curiosidades de Jogos em IA
n Jogo de Xadrez b 35 (fator de ramificao)
Profundidade de uma soluo: 50 para cada jogador (100 p/ dois)
Espao de busca da ordem de 35100
Inteligncia Artificial
Curiosidades de Jogos em IA
n Uma Funo de Utilidade para Xadrez
Atribuir um valor material para cada pea:
Peo = 1
Cavalo ou bispo = 3
Torre = 5
Rainha = 9
Inteligncia Artificial
A
[9,6,8]
Jog A - Computador
E F G H I J
[2,4,5] [9,6,8] [2,2,9]
[2,5,6] [4,5,2] [5,3,8]
Jog C
M N O P Q R S T U V
L
K
[2,4,5] [9,6,8] [1,7,4] [4,5,2] [2,3,1] [2,2,3] [5,3,8] [2,2,9] [3,2,5]
[2,5,6] [0,2,4]
[1,2,3]
Inteligncia Artificial
Curiosidades Jogos em IA
n Xadrez
n O que o Kasparov disse ap
aps sua derrota para o Deep
Blue:
...A m
mquina se recusou a efetuar um movimento para uma
posi
posio
o que teria uma vantagem decisiva a curto prazo
mostrando um sentido de perigo muito humano
n Deep Blue ?
30 processadores IBM RS/6000 em paralelo
480 processadores VLSI especializados em xadrez
126 milh
milhes de n
ns por segundo
Inteligncia Artificial
Conclus
Concluses
PROBLEMAS ENTRE:
Qualidade Solu
Soluo
o X Tempo X Mem
Memria
n Rich, E. (Intelig
(Inteligncia Artificial)
Cap
Captulo 3 e Capitulo 12 (jogos)
n Russel & Norvig (Artificial Intelligence)
Cap
Captulos 4 e 6