Lgica Proposicional Aula 5 Cap 7 Fundamentos da

  • Slides: 83
Download presentation
Lógica Proposicional Aula 5 - Cap. 7 Fundamentos da IA Mestrado – FEI

Lógica Proposicional Aula 5 - Cap. 7 Fundamentos da IA Mestrado – FEI

Resoluçao de problemas por busca n Conhecimento sobre resultados e ações permite a solução

Resoluçao de problemas por busca n Conhecimento sobre resultados e ações permite a solução automática de problemas “complexos” – um agente reativo não conseguiria encontrar a rota entre Arad e Bucareste n Porém até agora este conhecimento é muito específico e inflexível – peça de xadrez pode estar em 2 lugares ao mesmo tempo ? ?

Agente baseado em conhecimento n pode combinar o conhecimento geral com percepções correntes para

Agente baseado em conhecimento n pode combinar o conhecimento geral com percepções correntes para deduzir aspectos ocultos do estado atual antes de selecionar ações.

Agente baseado em conhecimento n n pode combinar o conhecimento geral com percepções correntes

Agente baseado em conhecimento n n pode combinar o conhecimento geral com percepções correntes para deduzir aspectos ocultos do estado atual antes de selecionar ações. Grande parte das deduções humanas dependem do tratamento de incertezas – segunda parte do curso. . .

Agentes lógicos n n Representam o mundo Utilizam inferência para tirar conclusões sobre o

Agentes lógicos n n Representam o mundo Utilizam inferência para tirar conclusões sobre o mundo representado

Agentes lógicos n n Conhecimento é representado como sentenças em uma linguagem de representação

Agentes lógicos n n Conhecimento é representado como sentenças em uma linguagem de representação de conhecimento; Um conjunto de sentenças forma a base de conhecimento (BC) do agente.

Informar e perguntar n n Novas sentenças são adicionadas à base de conhecimento por

Informar e perguntar n n Novas sentenças são adicionadas à base de conhecimento por meio da tarefa TELL; Consultas à base de conhecimento são feitas pela tarefa ASK; – ambos processos podem envolver inferências • INFERÊNCIA: derivação de novas sentenças a partir de sentenças antigas.

Inferência clássica (dedução) n n A resposta de uma pergunta (ASK) à base de

Inferência clássica (dedução) n n A resposta de uma pergunta (ASK) à base de conhecimento deve seguir o que foi informado anteriormente (TELL); Nada é inventado à medida em que o processo de inferência se desenrola; – portanto, TELL é um processo não clássico (abdução)! – E aprendizagem também (indução).

Mundo de Wumpus n n n Desempenho – ouro +1000, morte-1000 – passo -1

Mundo de Wumpus n n n Desempenho – ouro +1000, morte-1000 – passo -1 , flecha -10 Ambiente – quadrados próximos ao wumpus fedem – próximos ao poço: brisa – quadrado do ouro: brilho – uma flecha somente – atirar mata wumpus se em frente – Pegar ouro no quad. , deixa ouro no quad. Sensores: [fedor, brisa, brilho, impacto, grito] n Atuadores: esquerda, direita, pegar, deixar, atirar

Explorando o mundo de wumpus Primeira percepção: [nada, nada] Deduz: [1, 2] e [2,

Explorando o mundo de wumpus Primeira percepção: [nada, nada] Deduz: [1, 2] e [2, 1] são seguros. . .

Explorando o mundo de wumpus Segunda percepção: [nada, brisa , nada]

Explorando o mundo de wumpus Segunda percepção: [nada, brisa , nada]

Explorando o mundo de wumpus Dedução: poço em [1, 3] ou [2, 2] quadrado

Explorando o mundo de wumpus Dedução: poço em [1, 3] ou [2, 2] quadrado vazio em [2, 1]

Explorando o mundo de wumpus Nova percepção: [fedor , nada] Nova dedução: wumpus em

Explorando o mundo de wumpus Nova percepção: [fedor , nada] Nova dedução: wumpus em [3, 1]

Explorando o mundo de wumpus Nova dedução: wumpus em [3, 1] e poço em

Explorando o mundo de wumpus Nova dedução: wumpus em [3, 1] e poço em [1, 3] (pois não havia fedor em [1, 2], nem brisa em [2, 1])

Nova dedução: wumpus em [3, 1] e poço em [1, 3] (pois não havia

Nova dedução: wumpus em [3, 1] e poço em [1, 3] (pois não havia fedor em [2, 2] nem brisa em [2, 1]) n n Esta é uma inferência difícil pois se baseia em informação obtida em diferentes instantes e lugares, e se baseia na falta de uma percepção. . . Está além das habilidades da maioria dos animais, mas factível para um agente lógico

Propriedade do raciocínio lógico n As conclusões serão corretas se as informações disponíveis estiverem

Propriedade do raciocínio lógico n As conclusões serão corretas se as informações disponíveis estiverem corretas!

Lógica -- sintaxe n n n . . . base de conhecimento consiste de

Lógica -- sintaxe n n n . . . base de conhecimento consiste de sentenças. . . Sentenças são escritas com uma sintaxe; Sintaxe especifica sentenças bem formadas – ex. em aritmética: X + Y = 4 • x 2 y+= : não é bem formada

Lógica -- semântica n n Define o significado das sentenças; em lógica: significado é

Lógica -- semântica n n Define o significado das sentenças; em lógica: significado é a verdade de cada sentença em relação à interpretações possíveis. – Ex. x + y = 4, verdade na interpretação x=2 e y=2, falso na interpretação x=1 e y =1. – Em lógica clássica, as sentenças só podem ser verdadeiras ou falsas

Lógica -- semântica – Dizemos que “m é um modelo de ”: se é

Lógica -- semântica – Dizemos que “m é um modelo de ”: se é verdade na interpretação m

Lógica -- semântica n Dada duas sentenças e , se em todos as interpretações

Lógica -- semântica n Dada duas sentenças e , se em todos as interpretações em que é verdadeira, também o é dizemos que é consequência lógica de : |= “se é verdadeira também deve ser. ”

Lógica -- semântica: wumpus n n Situação após detectar nada em [1, 1], mover

Lógica -- semântica: wumpus n n Situação após detectar nada em [1, 1], mover à direita e brisa em [2, 1] Considerar as interpretações possíveis para poços

Lógica -- semântica: wumpus

Lógica -- semântica: wumpus

Lógica -- semântica: wumpus n BC = regras do mundo de wumpus + observações

Lógica -- semântica: wumpus n BC = regras do mundo de wumpus + observações

Lógica -- semântica: wumpus n n BC = regras do mundo de wumpus +

Lógica -- semântica: wumpus n n BC = regras do mundo de wumpus + observações 1 = "[1, 2] é seguro", BC |= 1

Lógica -- semântica: wumpus n BC = regras do mundo de wumpus + observações

Lógica -- semântica: wumpus n BC = regras do mundo de wumpus + observações n 2 = "[2, 2] é seguro", BC |= 2

Lógica -- semântica: wumpus n Em alguns modelos em que BC é verdadeira, 2

Lógica -- semântica: wumpus n Em alguns modelos em que BC é verdadeira, 2 é falsa, logo não há como deduzir se há um poço em [2, 2] nem se não há. . .

Este algoritmo de inferência é denominado: verificação de modelos pois enumera todos os modelos

Este algoritmo de inferência é denominado: verificação de modelos pois enumera todos os modelos possíveis para verificar se é verdadeira em todos os modelos em que BC é verdadeira n

Derivação lógica n n n Se um algoritmo de inferência i pode derivar de

Derivação lógica n n n Se um algoritmo de inferência i pode derivar de BC: BC |-i um algoritmo de inferência é “consistente” (correto) se deriva apenas sentenças permitidas (pertencentes ao modelo). e completo se puder derivar qualquer sentença permitida.

Sound and completeness (correção e completeza) BC |= completeness soundness BC |-i

Sound and completeness (correção e completeza) BC |= completeness soundness BC |-i

Hipótese básica da IA “logiscista” n Se a BC representa fatos no mundo real,

Hipótese básica da IA “logiscista” n Se a BC representa fatos no mundo real, qualquer sentença derivada de BC por um procedimento de inferência consistente também será verdadeira no mundo real

Hipótese básica da IA “logiscista” n . . . portanto, embora a inferência opere

Hipótese básica da IA “logiscista” n . . . portanto, embora a inferência opere sobre a sintaxe, o processo corresponde à conclusões verdadeiras no mundo real.

Como sabemos que a BC é verdadeira no mundo real?

Como sabemos que a BC é verdadeira no mundo real?

Como sabemos que a BC é verdadeira no mundo real? n Os sensores do

Como sabemos que a BC é verdadeira no mundo real? n Os sensores do agente criam a conexão. – E se houver exceções? – E se a verdade for temporária? – E se houver regras gerais não previstas pelo engenheiro de conhecimento? ?

Lógica proposicional - sintaxe n Sentenças atômicas (elementos sintáticos indivisíveis): – um único símbolo

Lógica proposicional - sintaxe n Sentenças atômicas (elementos sintáticos indivisíveis): – um único símbolo proposicional; – cada símbolo é uma proposição que pode ser verdadeira ou falsa; – nomes em maiúsculas: A, B, W 1, 3. . . – Verdadeiro – Falso

LP- sintaxe- sentenças atômicas – se S é sentença, S é sentença (negação) –

LP- sintaxe- sentenças atômicas – se S é sentença, S é sentença (negação) – Um literal é uma sentença atômica negada ou não.

LP- sintaxe- sentenças complexas – se S 1 e S 2 são sentenças, tb

LP- sintaxe- sentenças complexas – se S 1 e S 2 são sentenças, tb o são: • S 1 S 2 (conjunção -- e) • S 1 S 2 (disjunção -- ou) • S 1 S 2 (implicação-se, então) • S 1 S 2 é sentença (bicondicional - se e somente se)

LP- sintaxe-- precedência n n Utilize parênteses: – ((A B) C)) Ou se apoie

LP- sintaxe-- precedência n n Utilize parênteses: – ((A B) C)) Ou se apoie na ordem de precedência: • , , , e • P Q R S equivale a: (( P) (Q R)) S

Lógica proposicional: semântica n Um modelo proposicional simplesmente fixa o valor verdade para todo

Lógica proposicional: semântica n Um modelo proposicional simplesmente fixa o valor verdade para todo símbolo proposicional de uma BC: E. g. n P 1, 2 false P 2, 2 true P 3, 1 false Verdadeiro é verdadeiro em todo modelo e Falso é falso em todo modelo; – O valor verdade de todos os outros símbolos proposicionais deve ser especificado diretamente no modelo.

Lógica proposicional: semântica n Regras para avaliar o valor verdade com respeito a um

Lógica proposicional: semântica n Regras para avaliar o valor verdade com respeito a um modelo m: – S é verdade sse S é falso – S 1 S 2 é verdade sse S 1 é verdade e S 2 é verdade – S 1 S 2 é verdade sse S 1é verdade ou S 2 é verdade – S 1 S 2 é verdade sse S 1 é falso ou S 2 é verdade – i. e. , é falso sse S 1 é verdade e S 2 é falso – S 1 S 2 é verdade sse S 1 S 2 é verdade e S 2 S 1 é verdade

Tabela verdade Assim reduz-se a verdade de sentenças complexas à verdade de sentenças mais

Tabela verdade Assim reduz-se a verdade de sentenças complexas à verdade de sentenças mais simples em um processo recursivo. E. g. : P 1, 2 (P 2, 2 P 3, 1) = true (true false) = true Obs. Cada linha da tabela é uma interpretação possível.

Tabela verdade

Tabela verdade

n Enumere todas os modelos e verifique se é verdadeira em todo modelo em

n Enumere todas os modelos e verifique se é verdadeira em todo modelo em que BC é verdadeira.

Inferência por enumeração de modelos n A busca em profundidade para enumerar todos as

Inferência por enumeração de modelos n A busca em profundidade para enumerar todos as interpretações para encontrar modelos é correta e completa. n Para n simbolos, complexidade temporal é O(2 n), e espacial é O(n)

Equivalência lógica n Duas sentenças são logicamente equivalentes sse verdadeiras nos mesmos modelos: sse

Equivalência lógica n Duas sentenças são logicamente equivalentes sse verdadeiras nos mesmos modelos: sse |= :

Validade e satisfatibilidade Uma sentença é válida se verdadeira em todos os modelos, e.

Validade e satisfatibilidade Uma sentença é válida se verdadeira em todos os modelos, e. g. , True, A A, (A B)) B » Tautologias Validade é ligada à inferência via o Teorema da Dedução : KB |= se e somente se (KB ) é valida Uma sentença é satisfatível se verdadeira em algum modelo e. g. , A B, C Uma sentença é insatisfatível se verdadeira em nenhum modelo e. g. , A A Satisfatibilidade é ligada à inferência via o seguinte: KB |= se e somente se (KB ) é insatisfatível Raciocinando por contraposição

Teorema da Dedução Validade é ligada à inferência via o Teorema da Dedução :

Teorema da Dedução Validade é ligada à inferência via o Teorema da Dedução : BC |= se e somente se (BC ) é valida • Podemos imaginar o algoritmo anterior como a verificação da validade de BC • Reciprocamente, toda sentença de implicação válida descreve uma inferência legítima.

Inferência como prova n Regras de inferência: – Modus ponens , – Eliminação-de-e ,

Inferência como prova n Regras de inferência: – Modus ponens , – Eliminação-de-e , – Todas as equivalências anteriores podem ser usadas como regras de inferência.

Exemplo: BC mundo de wumpus Seja Pij verdade se existe um poço em [i,

Exemplo: BC mundo de wumpus Seja Pij verdade se existe um poço em [i, j]. Seja Bij verdade se há brisa em [i, j]. R 1: P 11 R 2: B 11 R 3: B 21 n "Poços causam brisas em quadrados adjacentes " R 4: B 11 (P 12 P 21) R 5: B 21 (P 11 P 22 P 31)

Exemplo: Wumpus n Seja a base de conhecimento R 1 -- R 5, vamos

Exemplo: Wumpus n Seja a base de conhecimento R 1 -- R 5, vamos provar P 12: – Eliminação de bicondicional a R 4: R 6: (B 11 (P 12 P 21)) ((P 12 P 21) B 11) – Eliminação-e em R 6: R 7: (B 11 (P 12 P 21)) e R 7`: ((P 12 P 21) B 11) – Contraposição em R 7`: R 8: ( B 11 (P 12 P 21)) – Modus ponens com R 2 e R 8: R 9: (P 12 P 21))

Exemplo: Wumpus – Regra de de Morgan em R 9: R 10: P 12

Exemplo: Wumpus – Regra de de Morgan em R 9: R 10: P 12 P 21 i. e. nem [1, 2], nem [2, 1] possui um poço! [obs. Erro no livro!]

Métodos de prova n Há duas categorias principais de métodos de provas: – Aplicação

Métodos de prova n Há duas categorias principais de métodos de provas: – Aplicação das regras de inferência • Geração correta (sound) de novas sentenças a partir de antigas; • Prova = uma sequência de aplicações de regras de inferência – Regras de inferência podem ser usadas como ações em um algoritmo de busca • Tipicamente requer transformar as sentenças em uma forma normal (def. a seguir) – Model checking • enumeração de modelos em tabelas verdade • retrocesso melhorado, e. g. , Davis--Putnam-Logemann. Loveland (DPLL) • busca heurística em um espaço de modelos WALKSAT (correto, porém incompleto)

Resolução Satisfatibilidade é ligada à inferência via o seguinte: BC |= se e somente

Resolução Satisfatibilidade é ligada à inferência via o seguinte: BC |= se e somente se (BC ) é insatisfatível Raciocinando por contraposição

Resolução Forma Normal Conjuntiva -- Conjunctive Normal Form (CNF) conjunção de disjunções de literais

Resolução Forma Normal Conjuntiva -- Conjunctive Normal Form (CNF) conjunção de disjunções de literais E. g. , (A B) (B C D) n Regra de inferência resolução (para CNF): l 1 … lk, m 1 … mn l 1 … li-1 li+1 … lk m 1 … mj-1 mj+1 . . . mn onde li e mj são literais complementares. l 1 l 2 l 3 l 1 l 3 E. g. , P 1, 3 P 2, 2, P 1, 3 n P 2, 2 correta e completa para lógica proposicional

Resolução n Qualquer algoritmo de busca completo, aplicando apenas a regra de resolução, pode

Resolução n Qualquer algoritmo de busca completo, aplicando apenas a regra de resolução, pode derivar qualquer conclusão permitida por qualquer base de conhecimento em lógica proposicional!

Conversão para CNF B 1, 1 (P 1, 2 P 2, 1) n Eliminar

Conversão para CNF B 1, 1 (P 1, 2 P 2, 1) n Eliminar , trocando por ( ). (B 1, 1 (P 1, 2 P 2, 1)) ((P 1, 2 P 2, 1) B 1, 1) 2. Eliminar , trocando por . ( B 1, 1 P 1, 2 P 2, 1) ( (P 1, 2 P 2, 1) B 1, 1) 3. Mover para dentro usando as leis de de Morgan e negação dupla: ( B 1, 1 P 1, 2 P 2, 1) (( P 1, 2 P 2, 1) B 1, 1) 4. Aplicar a lei distributiva ( sobre ) e eliminar ‘(‘ ’)’: ( B 1, 1 P 1, 2 P 2, 1) ( P 1, 2 B 1, 1) ( P 2, 1 B 1, 1)

Algoritmo de Resolução n Primeiro a entrada é convertida em CNF. Em seguida a

Algoritmo de Resolução n Primeiro a entrada é convertida em CNF. Em seguida a regra de resolução é aplicada às cláusulas restantes. Cada par que contém literais complementares é resolvido para gerar uma nova cláusula, que é adicionada ao conjunto. .

Algoritmo de Resolução n O processo continua até que: – não exista nenhuma cláusula

Algoritmo de Resolução n O processo continua até que: – não exista nenhuma cláusula nova a ser adicionada; nesse caso, não há consequência lógica – a cláusula vazia é derivada; assim, a consequência lógica é verificada. Raciocinando por contraposição

Algoritmo da resolução n Prova por contradição, i. e. , para provar em BC,

Algoritmo da resolução n Prova por contradição, i. e. , para provar em BC, mostrar que KB é insatisfatível PL-Resolve retorna o conj. de todas as cláusulas possíveis obtidas pela resolução de duas entradas

Exemplo de resolução n n BC = (B 1, 1 (P 1, 2 P

Exemplo de resolução n n BC = (B 1, 1 (P 1, 2 P 2, 1)) B 1, 1 = P 1, 2 2, 1

Encadeamento pra frente e pra trás (Forward and backward chaining) n Cláusula de Horn

Encadeamento pra frente e pra trás (Forward and backward chaining) n Cláusula de Horn (resolução restrita) BC = conjunção de cláusulas de Horn – cláusula de Horn = • símbolo proposicional; ou • (conjunção de símbolos) símbolo (CORPO) CABEÇA (I. e. , disjunção de literais nos quais no máximo um é positivo) – E. g. , C (B A) (C D B) n Modus Ponens (para Horn): completo para BC Horn 1, … , n, 1 … n n Podem ser usadas com forward chaining ou backward chaining. Algoritmos simples e de complexidade linear (em rel. ao tamanho da base de conhecimento) !

Forward chaining n Começa a partir de fatos conhecidos (literais positivos) na base de

Forward chaining n Começa a partir de fatos conhecidos (literais positivos) na base de conhecimento. Se todas as premissas de uma implicação forem verdade, sua conclusão será acrescentada ao conjunto de fatos conhecidos.

Forward chaining example

Forward chaining example

Forward chaining example

Forward chaining example

Forward chaining example

Forward chaining example

Forward chaining example

Forward chaining example

Forward chaining example

Forward chaining example

Forward chaining example

Forward chaining example

Forward chaining example

Forward chaining example

Forward chaining example

Forward chaining example

Backward chaining n Funciona da pergunta q à base de conhecimento: – para provar

Backward chaining n Funciona da pergunta q à base de conhecimento: – para provar q na BC, • • verifique se q já faz parte de BC, ou prove pela BC todas as premissas de alguma regra que conclua q Evitar laços: verifique se os novos subgoals já foram provados ou já falharam!

Exemplo de Backward chaining

Exemplo de Backward chaining

Backward chaining example

Backward chaining example

Backward chaining example

Backward chaining example

Backward chaining example

Backward chaining example

Backward chaining example

Backward chaining example

Backward chaining example

Backward chaining example

Backward chaining example

Backward chaining example

Backward chaining example

Backward chaining example

Backward chaining example

Backward chaining example

Backward chaining example

Backward chaining example

Forward vs. backward chaining n Forw. C é baseado no dados, – Pode ser

Forward vs. backward chaining n Forw. C é baseado no dados, – Pode ser usado para derivar conclusões a partir de percepções de entrada, sem uma consulta específica em mente; – Pode executar muito trabalho irrelevante para o objetivo; – Executa um trabalho extensivo; n Back. C é baseado no objetivo, – Apropriado para resolução de problemas; – Funciona em tempo linear – Complexidade de Back. C pode ser muito menor do que linear em relação ao tamanho da base de conhecimento por que o processo só toca fatos relevantes para provar um objetivo.

CONCLUSÃO

CONCLUSÃO

CONCLUSÃO n n n VOCÊS PRECISAM ESTUDAR!! Leiam o cap. 7 até a p.

CONCLUSÃO n n n VOCÊS PRECISAM ESTUDAR!! Leiam o cap. 7 até a p. 214 Próxima aula tem mais!!