Agentes que RaciocAgentes que Raciocinam Logicamente

25
Agentes que Raciocinam Agentes que Raciocinam Logicamente Logicamente Prof. Júlio Cesar Nievola PPGIA PUC-PR

Transcript of Agentes que RaciocAgentes que Raciocinam Logicamente

Page 1: Agentes que RaciocAgentes que Raciocinam Logicamente

Agentes que Raciocinam Agentes que Raciocinam LogicamenteLogicamente

Prof. Júlio Cesar NievolaPPGIA

PUC-PR

Page 2: Agentes que RaciocAgentes que Raciocinam Logicamente

Um agente baseado em Um agente baseado em conhecimentoconhecimento• Componente central: a base de

conhecimentos (KB ou BC)• A BC é um conjunto de representações de

fatos acerca do “mundo”• Cada representação individual é uma

sentença• As sentenças são expressas em uma

linguagem de representação do conhecimento

Page 3: Agentes que RaciocAgentes que Raciocinam Logicamente

Um agente genérico baseado em Um agente genérico baseado em conhecimentoconhecimentofunction KB-AGENT( percept) returns an action

static: KB, a knowledge baset, a counter, initially 0, indicating time

TELL(KB,MAKE-PERCEPT-SENTENCE( percept, t))

action ← ASK(KB,MAKE-ACTION-QUERY(t))TELL(KB,MAKE-ACTION-SENTENCE(action,

t))t ← t +1return action

Page 4: Agentes que RaciocAgentes que Raciocinam Logicamente

Níveis de descrição de um agente Níveis de descrição de um agente baseado em conhecimentobaseado em conhecimento• Nível de conhecimento ou epistemológico:

nível abstrato. Ex.: A ponte Golden Gate liga São Francisco e Marin County

• Nível lógico: conhecimento codificado em sentenças. Ex.: liga(PonteGG,SF,Marin)

• Nível de implementação: é o nível executado na arquitetura de agentes. Ex.: lista de strings, tabela indexada etc.

Page 5: Agentes que RaciocAgentes que Raciocinam Logicamente

Construção de um agente Construção de um agente baseado em conhecimentosbaseado em conhecimentos• É possível construir um agente baseado em

conhecimento “informando-o” do que ele precisa saber.

• Abordagem declarativa: o agente recebe o conhecimento na forma de sentenças em uma linguagem de representação

• Aprendizagem: constrói-se um mecanismo de aprendizagem sobre as percepções

Page 6: Agentes que RaciocAgentes que Raciocinam Logicamente

O mundo do WUMPUSO mundo do WUMPUS

Page 7: Agentes que RaciocAgentes que Raciocinam Logicamente

Situação inicial e após um Situação inicial e após um movimentomovimento

Page 8: Agentes que RaciocAgentes que Raciocinam Logicamente

Situação após o terceiro e o Situação após o terceiro e o quinto movimentosquinto movimentos

Page 9: Agentes que RaciocAgentes que Raciocinam Logicamente

Representação do conhecimentoRepresentação do conhecimento

• Permite expressar o conhecimento em uma maneira compreensível pelo computador

• É definida por dois aspectos:– Sintaxe: descreve as formas corretas de se

construir uma sentença– Semântica: realiza o mapeamento entre as

sentenças e os fatos do “mundo” considerado, indicando a “crença” de um agente na sentença

Page 10: Agentes que RaciocAgentes que Raciocinam Logicamente

Conexão entre sentenças e fatosConexão entre sentenças e fatos

Page 11: Agentes que RaciocAgentes que Raciocinam Logicamente

NomenclaturaNomenclatura

• A partir de sentenças verdadeiras a vinculaçãogera somente sentenças verdadeiras

• KB vincula α: KB |= α• Um procedimento de inferência que gera somente

sentenças vinculadas é chamado de são• α é derivado de KB através de i: KB |- α• Um procedimento de inferência é completo se ele

pode gerar uma prova para qualquer sentença que for vinculada

Page 12: Agentes que RaciocAgentes que Raciocinam Logicamente

InferênciaInferência

• Uma sentença é valida (ou tautologia ou uma sentença analítica) sse ela é verdadeira em todas as interpretações em todos os mundos possíveis

• Uma sentença é satisfatível sse há pelo menos uma interpretação para a qual ela é verdadeira, caso contrário ela é insatisfatível.

Page 13: Agentes que RaciocAgentes que Raciocinam Logicamente

LógicaLógica

• Uma lógica consiste dos elementos:– Um sistema formal para descrever condições:

• Sintaxe: descreve como criar sentenças corretas• Semântica: estabelece as restrições sistemáticas na

forma como as sentenças se relacionam com o mundo

– Um sistema de prova: um conjunto de regras para deduzir as vinculações a partir de um conjunto de sentenças

Page 14: Agentes que RaciocAgentes que Raciocinam Logicamente

Lógica ProposicionalLógica Proposicional

• Na Lógica Proposicional símbolos representam fatos e podem ser ligados por conectivos booleanos

• Compromisso ontológica tem a ver com a natureza da realidade

• Compromisso epistemológico se refere aos possíveis estados de conhecimento que um agente pode ter

Page 15: Agentes que RaciocAgentes que Raciocinam Logicamente

Linguagens FormaisLinguagens Formais

Linguagem Compromisso Ontológico(o que existe no mundo)

Compromisso Epistemológico(o que um agente acredita)

Lógica Proposicional Fatos V/F/desconhecidoLógica de Primeira Ordem Fatos, objetos, relações V/F/desconhecidoLógica Temporal Fatos, objetos, relações, tempo V/F/desconhecidoTeoria das Probabilidades Fatos Grau de crença 0…1Lógica Difusa Grau de verdade Grau de crença 0…1

Page 16: Agentes que RaciocAgentes que Raciocinam Logicamente

Sintaxe da Lógica ProposicionalSintaxe da Lógica Proposicional

• As constantes lógicas verdadeiro e falso são, em si mesmas, sentenças

• Um símbolo proposicional, como P é, em si mesmo, uma sentença

• Parênteses em torno de uma sentença produzem uma sentença

• Uma sentença pode ser formada pela combinação de sentenças mais simples através dos conectivos:∧ (conjunçao) ∨ (disjunção) ⇒ (implicação)

⇔ (equivalência) ¬ (negação)

Page 17: Agentes que RaciocAgentes que Raciocinam Logicamente

Gramática BNF de Sentenças em Gramática BNF de Sentenças em Lógica ProposicionalLógica ProposicionalSentença → SentençaAtômica |

SentençaComplexaSentençaAtômica → Verdadeiro | FalsoSentençaComplexa →

(Sentença) |Sentença ConectivoSentença | ¬Sentença

Conectivo → ∧ | ∨ | ⇔ | ⇒

Page 18: Agentes que RaciocAgentes que Raciocinam Logicamente

Semântica na Lógica Semântica na Lógica ProposicionalProposicional• A sentença verdadeira sempre tem como

sua interpretação a forma como o mundo é• A sentença falsa sempre tem como sua

interpretação a forma como o mundo não éTabela-verdade

Page 19: Agentes que RaciocAgentes que Raciocinam Logicamente

Entrada de dados x sensoresEntrada de dados x sensores

Page 20: Agentes que RaciocAgentes que Raciocinam Logicamente

ModelosModelos

Page 21: Agentes que RaciocAgentes que Raciocinam Logicamente

Regras de Inferência para a Regras de Inferência para a Lógica Proposicional (1)Lógica Proposicional (1)• Modus Ponens

(α ⇒ β, α) → β• Eliminação-E

(α1 ∧ α2 ∧ … ∧ αn) → αi

• Introdução-E(α1, α2, …, αn) → (α1 ∧ α2 ∧ … ∧ αn)

• Introdução-OUαi → (α1 ∨ α2 ∨ … ∨ αn)

Page 22: Agentes que RaciocAgentes que Raciocinam Logicamente

Regras de Inferência para a Regras de Inferência para a Lógica Proposicional (2)Lógica Proposicional (2)• Eliminação da dupla negação

(¬ ¬ α) → α• Resolução unitária

(α ∨ β, ¬β) → α• Resolução

(α ∨ β, ¬β ∨ γ) → α ∨ γou

(¬α ⇒ β, β ⇒ γ) → ¬α ⇒ γ

Page 23: Agentes que RaciocAgentes que Raciocinam Logicamente

Um agente para o mundo do Um agente para o mundo do WUMPUS (1)WUMPUS (1)

Page 24: Agentes que RaciocAgentes que Raciocinam Logicamente

Um agente para o mundo do Um agente para o mundo do WUMPUS (2)WUMPUS (2)• Base de Conhecimentos:

– Sentenças:¬S1,1 ¬S2,1 S1,2

¬B1,1 B2,1 ¬B1,2

– Regras:R1: ¬S1,1 ⇒ ¬W1,1 ∧ ¬W1,2 ∧ ¬W2,1

R2: ¬S2,1 ⇒ ¬W1,1 ∧ ¬W2,1 ∧ ¬W2,2 ∧ ¬W3,1

R3: ¬S1,2 ⇒ ¬W1,1 ∧ ¬W1,2 ∧ ¬W2,2 ∧ ¬W1,3

R4: S1,2 ⇒ W1,3 ∨ W1,2 ∨ W2,2 ∨ W1,1

Page 25: Agentes que RaciocAgentes que Raciocinam Logicamente

Um Agente Baseado em Um Agente Baseado em Conhecimento em Lóg. Prop.Conhecimento em Lóg. Prop.