Conhecimento e Raciocínio - ipg.ptnoel/IA/logProp.pdf · oA palavra frase é utilizada como um...
Transcript of Conhecimento e Raciocínio - ipg.ptnoel/IA/logProp.pdf · oA palavra frase é utilizada como um...
1
1
Conhecimento e Raciocínio
o O objectivo é aumentar as capacidades dos agentes adicionando-lhes capacidades gerais de raciocínio lógico.
o Um agente lógico, baseado em conhecimentos começa com alguns conhecimentos sobre o mundo e sobre as suas acções.
2
Conhecimento e Raciocínio
o Um agente lógico utiliza o raciocínio lógico para :n manter uma descrição do mundo e das
novas percepções que vai obtendo;n Deduzir o curso da acção que lhe
permite atingir os seus objectivos.
3
Agentes que raciocinam de forma lógica
o Agentes baseados em conhecimentos:n São capazes de aceitar novas tarefas na
forma de objectivos descritos de forma explicita;
n Podem obter competências rapidamente, se lhes for ensinado ou se aprenderem novos conhecimentos acerca do ambiente;
n Podem adaptar-se a alterações no ambiente através da alteração do conhecimento relevante.
4
Agente baseado em conhecimentos
o Necessita de saber :n O estado actual do mundo;n Como inferir propriedades desconhecidas
do mundo, a partir de percepções;n Como evolui o mundo ao longo do tempo;n O que é que se pretende atingir
(objectivos);n O que é que as suas acções fazem nas
várias circunstâncias.
2
5
Base de conhecimentos
o O componente central de um agente baseado em conhecimentos é a sua base de conhecimentos(knowledge base).
o De forma informal podemos dizer que a base de conhecimentos é um conjunto de representações de factos acerca do mundo.
o Cada representação individual é designada por frase (sentence).
6
Frases
o A palavra frase é utilizada como um termo técnico e apesar de estar relacionada com as frases das linguagens naturais (Português, Inglês, ...) não é idêntica.
o As frases são expressas numa linguagem designada por linguagem de representação do conhecimento.
7
TELL e ASK
o Deve existir uma forma de adicionar novas frases à base de conhecimentos e uma forma de questionar o que é conhecido.
o Os nomes standard para essas tarefas são respectivamente o TELL (diz) e o ASK (pergunta).
8
Motor de inferência
o Para além da base de conhecimentos um agente baseado em conhecimentos possui ainda um motor de inferência que lhe permite inferir novos conhecimentos com base nos existentes na base de conhecimentos.
3
9
Agente baseado em conhecimentos
function AgenteBaseadoEmConhecimentos (percepção) returns acçãostatic : KB, uma base de conhecimentos
t, um contador inicialmente a zero, que indica o tempo
TELL(KB, CriaFraseAPartirPercepcao(percepção, t))acção ← ASK(KB, CriaPerguntaAccao(t))TELL(KB, CriaFraseAPartirAccao(acção, t))t ← t + 1
return acção
10
Agente baseado em conhecimentos
o Quando a base de conhecimentos é interrogada sobre qual a acção que o agente deverá levar a cabo, no processo de resposta é utilizado raciocínio lógico, de forma a determinar qual das acções disponíveis será a melhor, dados os conhecimentos de que o agente dispõe e os seus objectivos.
11
Agente baseado em conhecimentos
o Pode ser descrito quanto ao :n Nível de conhecimentos : Podemos
descrever o agente, dizendo aquilo que ele sabe. Ex: No agente do taxi podemos dizer que ele sabe que o IP5 liga VilarFormoso a Aveiro.
n Nível lógico : Ao nível em que o conhecimento é codificado em frases. Por exemplo o agente do taxi pode ser descrito como tendo a frase lógica Ligacao(IP5, Vilar Formoso, Aveiro)
12
Agente baseado em conhecimentos
o Pode ser descrito com base no :n Nível de implementação : É o nível em
que as frase lógicas são representadas de forma física. Ex : uma frase como Ligacao(IP5, Vilar Formoso, Aveiro) pode ser representada na base de conhecimentos como uma stringpertencente a uma lista de strings, ou por um conjunto de complexo ponteiros, etc ...
4
13
Agente baseado em conhecimentos
o A escolha da forma de implementação é muito importante em termos de desempenho, mas é irrelevante do ponto de vista do nível lógico e do nível de conhecimentos.
14
Agente baseado em conhecimentos
o O programa inicial do agente, antes de começar a receber percepções, é criado através da adição de frases à sua base de conhecimentos. As frases são adicionadas uma a uma e representam os conhecimentos de quem está a desenhar o agente. Esta aproximação é chamada de declarativa.
15
Agente baseado em conhecimentos
o Também podemos desenhar mecanismos de aprendizagem que permitem obter conhecimentos gerais acerca do ambiente com base numa série de percepções. Desta forma o agente poderá ser totalmente autónomo.
16
O mundo do WUMPUS
U
!U%h
U
R
h
h
�→ h R
h
R
h
5
17
O mundo do WUMPUSo Nos quadrados adjacentes ao monstro (não
incluindo os diagonais) o agente percebe um ruído.
o Nos quadrados adjacentes a um poço (não incluindo os diagonais) o agente percebe uma brisa.
o Nos quadrados onde o ouro se encontra o agente percebe um brilho.
o Quando o agente tenta ir na direcção de uma parede o agente apercebe-se de uma colisão.
18
O mundo do WUMPUSo Quando o WUMPUS é morto emite um grito
do qual o agente se apercebe, independentemente da sua posição.
o O agente não consegue perceber a sua localização.
o As percepções são dadas ao agente na forma de uma lista com 5 símbolos. Por exemplo se existe um ruído, uma brisa, um brilho e não existe colisão nem grito o agente receberá as seguintes percepções [Ruído, Brisa, Brilho, Nada, Nada].
19
O mundo do WUMPUSo Existem 6 acções :n Ir em frente;n Rodar 90º para a direita;n Rodar 90º para a esquerda;n Apanhar objecto (na mesma sala);n Disparar uma flecha na direcção em que o
agente se encontra (a flecha pára quando matar o WUMPUS ou atingir uma parede; o agente dispõe apenas de uma flecha).
n Subir (Na posição inicial permite ao agente sair da caverna).
20
O mundo do WUMPUS
o O objectivo é apanhar o ouro e sair da caverna o mais rapidamente possível.
o Pontuação :n Sair da caverna com o ouro : 1000
pontosn Cada acção tomada : -1 ponton Morrer : -10000 pontos
6
21
O mundo do WUMPUS
o Classe de ambientes :n Grelha de 4 x 4 caves, rodeadas por
paredes.n O agente começa sempre no canto
inferior esquerdo, voltado para a direita.n As localizações do ouro e do WUMPUS
são escolhidas de forma aleatória.n Em cada cave existe uma probabilidade
de 20% de haver um poço.
22
O mundo do WUMPUS
o Em cerca de 21% dos ambientes o agente não poderá chegar ao ouro.
o O agente poderá sair da caverna sem o ouro, se assim o decidir.
23
O mundo do WUMPUS
ok
�ok
ok
24
O mundo do WUMPUS
ok R?
visitadook
�hok
R?
7
25
O mundo do WUMPUS
!!
�Uok
ok
visitadook
visitadook h R!
26
O mundo do WUMPUS
R?
!! �%U h ok
visitado
ok Uvisitado
ok
R?
ok
visitadook
visitadook h R!
27
Representação do conhecimentoo O objectivo é expressar o conhecimento
numa forma tratável pelo computador.o Uma linguagem de representação do
conhecimento é definida por dois aspectos :n Sintaxe : descreve as configurações possíveis
que podem constituir frases.n Semântica : Determina os factos do mundo aos
quais as frases se referem. Com a semântica uma frase faz uma afirmação do mundo e podemos dizer que o agente crê (crença) na frase.
28
Sintaxe e semântica
o A sintaxe de uma linguagem de expressões aritméticas diz que se x e y são expressões que representam números, então x ≥ y é uma frase sobre números. A semântica da linguagem diz que se x ≥ y é falso então o número que y representa é maior que o número que x representa.
8
29
Linguagens lógicas
o Desde que a sintaxe e a semântica sejam definidas de forma precisa a linguagem resultante diz-se lógica.
30
Representação
Mundo
Frases
FactosSem
ânticas
Frase
Facto
Semântica
abrange
geram (deriva)
Semântica
31
Factos
o É importante distinguir entre os factos e as suas representações. Os factos fazem parte do mundo, enquanto a sua representação deve ser codificada de forma a conseguir guardá-la fisicamente dentro do agente.
32
Factos
o Os mecanismos de raciocínio operam com representações dos factos e não com os factos.
9
33
Raciocínio
o Uma vez que as frases são configurações físicas de partes do agente, raciocinar é um processo de construção de novas configurações físicas a partir das antigas.
34
Raciocínio
o Um raciocínio correcto deve assegurar que as novas configurações representam factos que derivam dos factos que as configurações antigas representam.
35 36
10
37
Geração de fraseso Pressupondo que todas as frases existentes
são verdadeiras (correctas), pretende-se que todas as frases novas sejam também elas verdadeiras.
o Esta relação entre as frases é designada por relação abrangente e espelha a relação de um ou mais factos que derivam de outros.
38
Geração de fraseso Em notação matemática a relação de
abrangência entre a base de conhecimentos (KB) e uma frase α escreve-se KB |= α e lê-se “KB abrange α”
39
Motor de Inferência
o O motor de inferência pode então fazer:n Dada uma base de conhecimentos KB,
pode gerar novas frases α que sejam abrangidas por KB;
n Dada uma base de conhecimentos KB e uma frase α, pode determinar α é abrangida por KB.
40
Motor de Inferência
o Diz-se que um motor de inferência preserva a verdade se este gerar apenas frases abrangidas pela base de conhecimentos.
11
41
Motor de Inferência
o Um motor de inferência i pode ser descrito pelas frases que pode derivar. Se i pode derivar α a partir de KB, podemos escrever:
KB ⊢i α
que significa “α é derivado de KB por i” ou “i deriva α a partir de KB.
42
Motor de inferência
o O registo de uma operação de um motor de inferência que preserva a verdade é designado por prova.
o A chave para inferir frases abrangidas pela base de conhecimentos (preservando a verdade) consiste em garantir que os passos da inferência respeitem a semântica das frases com que operam.
43
Teoria de prova
o Ao examinarmos a semântica de uma linguagem lógica podemos extrair da mesma a chamada teoria de provada linguagem, que especifica os passos de raciocínio que preservam a verdade.
44
Representação do conhecimento
o Linguagens de programaçãon Não são o suficientemente expressivaso Não permitem dizer por exemplo “Algures
numa das caves está o WUMPUS” ou “Existe um poço na cave [2,2] ou na cave [3,1]”.
12
45
Representação do conhecimento
o Linguagens naturaisn São mais apropriadas para comunicar do
que para representar conhecimentosn São ambíguaso Ex : “Cães e gatos pequenos”
o Uma boa linguagem de representação de conhecimentos deve combinar as vantagens das linguagens naturais com as das linguagens formais.
46
Linguagem de representação dos conhecimentos
o Deve ser expressiva e concisa, de forma a podermos dizer tudo o que necessitamos de forma sucinta.
o Não deve ser ambígua e deve ser independente do contexto, de forma a que aquilo que dizemos hoje possa ser interpretado da mesma forma amanhã.
o Uma linguagem que obedece as estes critérios é a lógica de 1ª ordem.
47
Semântica
o Na lógica, o significado de uma frase é o que esta afirma acerca do mudo.
o Qual o significado de uma frase ? De forma a indicar o que uma frase quer dizer, aquele que a escreve deve fornecer uma interpretação da mesma.
o É a semântica que dá a interpretação à frase.
48
Frases verdadeiras e falsas
o Uma frase afirma que o mundo é de uma determinada forma e não de outra, e portanto pode ser verdadeira ou falsa.
o A verdade depende não só da interpretação da frase, mas também do estado actual do mundo.
13
49
Inferência
o Os termos raciocínio e inferência são usualmente usados para descrever o processo pelo qual as conclusões são obtidas.
o Um processo de raciocínio que preserva a verdade designa-se por inferência lógica ou por dedução.
50
Frases necessariamente verdadeiras
o Uma frase é válida ou necessariamente verdadeira se e só se for verdadeira à luz de todas as interpretações possíveis em todos os mundos possíveis.
o Ex : A frase “Existe um poço em [1,1] ou não existe um poço em [1,1]” é válida.
51
Frase que podem ser satisfeitas
o Uma frase pode ser satisfeita se existe uma interpretação num dado mundo onde esta é verdadeira.n Ex : “Existe um WUMPUS em [1,2]”
o Frases que se contradigam a si mesmas não podem ser satisfeitas.n Ex : “Existe uma parede à minha frente
e não existe uma parede à minha frente”
52
Inferência formal
o Pode parecer que as frases válidas e as que não podem ser satisfeitas são inúteis porque representam respectivamente frases sempre verdadeiras e sempre falsas. No entanto a validade e a impossibilidade de satisfação das frases são crucias para a capacidade de um computador raciocinar.
14
53
Inferência formal
o O computador sofre de dois problemas :n Não sabe necessariamente interpretar as
frases pertencentes à base de conhecimentos;
n Não sabe nada acerca do mundo com excepção do que está na base de conhecimentos.
54
Inferência formalo Suponhamos que perguntamos ao
computador se não há problema (é OK) irmos para a casa [2,2].
o O computador não sabe o que o OK representa, nem o que é um WUMPUS, nem o que é um poço.
o Tudo o que o computador pode fazer é verificar se na base de conhecimentos abrange uma frase que diga “[2,2] é OK”. Por outras palavras o motor de inferência tem de demonstrar que a frase “if KB is true then [2,2] is OK” é válida.
55
Inferência formal
o Se a frase é válida, não interessa se o computador não sabe interpretar as frases pertencentes à base de conhecimentos, ou se não sabe muito acerca do mundo.
o A conclusão a que ele chegou é garantidamente correcta à luz de todas as interpretações possíveis em todos os mundos possíveis nos quais a base de conhecimentos KB é verdadeira.
56
Lógica
o A lógica é constituída por :n Um sistema formal que nos permite
descrever estados, constituído por :o Sintaxe da linguagem : descreve como criar
as frases;o Semântica da linguagem : Especifica como
é que as frases se relacionam com os factos do mundo.
n Uma teoria de prova : Um conjunto de regras que especificam os passos de raciocínio que preservam a verdade.
15
57
Lógica proposicional
o Os símbolos representam proposições (factos).n Ex : “O WUMPUS está morto”
o Os símbolos das proposições podem ser combinados através da utilização de ligações lógicas de forma a gerar frases mais complexas.
58
Lógica de 1ª ordem
o O mundo é representado em termos de objectos e predicados que incidem sobre os objectos (propriedades dos objectos ou relações entre os objectos).
o Para além disso são ainda usadas ligações e quantificadores, que permite escrever sobre tudo no universo de uma só vez.
59
Sintaxe da lógica proposicional
Frase ? FraseAtómica | FaseComplexa
FraseAtómica ? True | False| P | Q | R | ...
FaseComplexa ? (Frase) | Frase Conector Frase |¬Frase
Conector ? ∧ | ∨ | ⇒ | ⇔
60
Implicação
P ∧ Q ⇒ RPremissa
AntecedenteConclusão
Consequência
16
61
Literal
o Frase atómicao Frase atómica negada
62
Precedência dos operadores
¬∧∨⇒⇔
63
Semântica
o Um símbolo proposicional pode significar aquilo que desejarmos.n Ex: P pode significar que o WUMPUS está morto.
o Uma frase que contenha apenas um símbolo proposicional pode ser satisfeita, mas não é válida.
o Uma frase complexa tem um significado que deriva das partes.
o Cada conector pode ser visto como uma função.
64
Tabela da verdade
FalseTrueTrueFalseTrueTrueFalse
TrueTrueFalseFalseTrueFalseFalse
True
True
P ∨ Q
True
False
P ∧ Q
False
False
¬P
True
False
Q
True
True
P
TrueTrue
FalseFalse
P ⇔ QP ⇒ Q
17
65
Implicação
o O conector de implicação é talvez o mais importante e a sua tabela pode parecer um pouco intrigante à primeira vista.
66
Implicação
o A lógica proposicional não requer qualquer relação entre P e Q para que P ⇒ Q.n Ex : A frase “5 é impar ⇒ Tokio é capital
do Japão” é verdadeira na lógica proposicional.
67
Validade
o As tabelas de verdade podem não só ser utilizadas para definir as conexões, mas também para testar se uma frase é válida.
o Dada uma frase, criamos uma tabela da verdade com tantas linhas como as combinações de todos os valores possíveis para os símbolos proposicionais da frase. Se a frase for verdadeira em todas as linhas, então a frase é válida.n Ex : ((P ∨ H) ∧ ¬H) ⇒ P
68
Validade
((P ∨ H) ∧ ¬H) ⇒ P
o Suponhamos que P significa que o WUMPUS está em [1,3] e H significa que o WUMPUS está em [2,2], se num dado ponto aprendemos (P ∨ H) e mais tarde aprendemos ¬H podemos utilizar a frase de cima para concluir que P é verdade, isto éque o WUMPUS está em [1,3].
18
69
Validade e inferência
o O que fizemos é importante, pois permite-nos dizer que se o computador tem determinadas premissas e uma conclusão possível, ele pode determinar se a conclusão é verdadeira.
70
Modelos
o Qualquer mundo em que uma frase é verdadeira para uma dada interpretação é chamado de modelo dessa frase sob essa interpretação.
71
Modelos
o O mundo da figura é um modelo da frase “R1,2” sob a interpretação de que “R1,2” significa que existe um ruído em [1,2].
o Existem muitos mais modelos desta frase. U
!U%h
U
R
h
h
�→ h R
h
R
h 72
Modelos
o A razão porque existem muitos modelos da frase em questão é porque fazemos poucas afirmações acerca do mundo.
o Quanto mais afirmações fizermos, isto é quanto mais conjunções adicionarmos à base de conhecimentos, menos modelos existirão.
19
73
Modelos
o Podemos agora redefinir a nossa relação abrangente como :n Uma frase α é abrangida por uma base
de conhecimentos se os modelos de KB são todos os modelos de α. Neste caso se KB for verdadeiro então α será verdadeiro.
74
Regras de inferênciao Regras que nos permitem fazer inferências sem ser
necessário passar pelo tedioso processo de construir as tabelas da verdade.
o Já vimos a notação α ⊢β que indica que β pode ser derivado α de por inferência. Existe uma forma alternativa que enfatiza o facto de não nos referirmos a uma frase mas sim a uma regra de inferência. Essa forma é :
αβ
75
Regras de inferência
o As letras α eβ representam frases e não símbolos proposicionais .
o Quando existem várias frases numa premissa ou numa conclusão, estas são separadas por virgulas.
o Uma regra de inferência é válida se a conclusão for verdadeira em todos os casos em que as premissas forem verdadeiras.
20
77
Prova
o Uma prova lógica consiste numa sequência de aplicações de regras de inferência, partindo das frases iniciais da base de conhecimentos (KB) e culminando na geração da frase cuja prova é desejada.
78
Lógica
o Uma lógica diz-se monótona se :
if KB1 |= α then (KB1 ∪ KB2) |= α
ok R?
visitadook
�hok
R?
!!
�Uok
ok
visitadook
visitadook h R!
¬R1,1 ¬B1,1
¬R2,1 B2,1
R1,2 ¬ B2,1
ok R?
visitadook
�hok
R?
!!
�Uok
ok
visitadook
visitadook h R!
r1 : ¬R1,1 ⇒ ¬W1,1 ∧ ¬W1,2 ∧ ¬W2,1
r2 : ¬R2,1 ⇒ ¬W1,1 ∧ ¬W2,1 ∧ ¬W2,2 ∧ ¬W3,1
r3 : ¬R1,2 ⇒ ¬W1,1 ∧ ¬W1,2 ∧ ¬W2,2 ∧ ¬W1,3
21
ok R?
visitadook
�hok
R?
!!
�Uok
ok
visitadook
visitadook h R!
r4 : R1,2 ⇒ W1,3 ∨ W1,2 ∨ W2,2 ∨ W1,1
82
KB ⇒ W1,3
¬R1,1 ¬B1,1
¬R2,1 B2,1
R1,2 ¬ B2,1
r1 : ¬R1,1 ⇒ ¬W1,1 ∧ ¬W1,2 ∧ ¬W2,1
r2 : ¬R2,1 ⇒ ¬W1,1 ∧ ¬W2,1 ∧ ¬W2,2 ∧ ¬W3,1
r3 : ¬R1,2 ⇒ ¬W1,1 ∧ ¬W1,2 ∧ ¬W2,2 ∧ ¬W1,3
r4 : R1,2 ⇒ W1,3 ∨ W1,2 ∨ W2,2 ∨ W1,1
83
Regras de inferência
o Existem 12 símboloso Uma tabela da verdade teria 212 =
4096 linhas.o Em vez de criar a tabela da verdade,
utilizamos as regras de inferência.
84
Determinar onde está o WUMPUS?
o Aplicando a regra “Modus Ponens” com ¬R1,1 e a frase designada por r1
obtemos:
¬W1,1 ∧ ¬W1,2 ∧ ¬W2,1
o Aplicando a regra “And-Elimination”, obtemos três frases :
¬W1,1 ¬W1,2 ¬W2,1
22
85
Determinar onde está o WUMPUS?
o Aplicando a regra “Modus Ponens” com R1,2 e a frase designada por r4
obtemos:
W1,3 ∨ W1,2 ∨ W2,2 ∨ W1,1
o Aplicando a regra “Unit Resolution”, onde αé W1,3 ∨ W1,2 ∨ W2,2 e β W1,1 obtemos:
W1,3 ∨ W1,2 ∨ W2,2
86
Determinar onde está o WUMPUS?
o Aplicando a regra “Unit Resolution”, onde αé W1,3 ∨ W1,2 e β W2,2 obtemos:
W1,3 ∨ W1,2
o Finalmente aplicando a regra “UnitResolution”, onde α é W1,3 e β W1,2obtemos:
W1,3
87
Traduzindo o conhecimento em acções
o Podemos adicionar regras adicionais que relacionam o estado actual do mundo com as acções que o agente deve tomar. n Por exemplo se o WUMPUS está à frente
não é boa ideia avançar
A1,1 ∧ DireitaA ∧ W2,1 ⇒ ¬Frente
88
Traduzindo o conhecimento em acções
o Depois de termos estas regras podemos perguntar à base de conhecimentos qual a acção a tomar.
o Infelizmente a lógica proposicionalnão é o suficientemente poderosa para representar ou responder à questão “Qual a acção que devo tomar ?”
23
89
Traduzindo o conhecimento em acções
o No entanto é possível fazer uma série de questões que substituem a questão anterior. Para tal podemos perguntar “Devo ir para a direita ?”, “Devo ir para cima ?”, ...
90
Agente baseado na lógica proposicional
function AgenteBaseadoLogicaProposicional(percepção) returns acçãostatic : KB, uma base de conhecimentos
t, um contador inicialmente a zero, que indica o tempo
TELL(KB, CriaFraseAPartirPercepcao(percepção, t))for each acção in lista das acções possíveis do
if ASK(KB, CriaPerguntaAccao(t, acção)) thent ← t + 1return acção
end
91
Problemas da lógica proposicional
o A lógica proposicional permite-nos ficar com uma ideia de como é que a lógica pode ser usada para inferir conhecimentos e eventualmente tomar uma acção racional.
o No entanto é tão “fraca” que nem consegue lidar com um domínio tão simples como o mundo do WUMPUS.
92
Problemas da lógica proposicional
o O problema principal é que existem demasiadas proposições para lidar.n A simples regra “Não avançar se o WUMPUS
está à frente” dá origem a 64 (16 quadrados x 4 orientações possíveis) frases na lógica proposicional.
n Seriam necessárias milhares de frases para definir um agente competente.
n Se o mundo for maior que 4x4 as coisas complicam-se ainda mais.
24
93
Problemas da lógica proposicional
o Demasiadas frases abrandam muito o desempenho do motor de inferência.
o Outro problema é a capacidade de lidar com a mudança. Em geral o mundo altera -se ao longo do tempo. Quando o agente se move pela primeira vez a preposição A1,1torna-se false e a preposição A1,2 torna-se verdadeira. Mas pode ser importante para o agente saber que esteve em A1,1 e portanto não deverá simplesmente esquecer A1,1.
94
Problemas da lógica proposicional
o Para evitar confusões, necessitamos de símbolos proposicionais diferentes para cada localização do agente em cada passo. Isto causa dificuldades em dois aspectos :n Não sabemos quantos passos demora a
atingirmos o objectivo;n Temos de voltar a trás e escrever
versões dependentes do tempo para cada regra.
95
Problemas da lógica proposicional
A01,1 ∧ Direita0
A ∧ W02,1 ⇒ ¬Frente0
A11,1 ∧ Direita1
A ∧ W12,1 ⇒ ¬Frente1
A21,1 ∧ Direita2
A ∧ W22,1 ⇒ ¬Frente2
.
.
.
96
Problemas da lógica proposicional
o Se necessitamos de um agente capaz de executar 100 passos, necessitávamos de 6400 preposições só para dizer que não deveríamos ir para a frente no caso de existir lá um WUMPUS.