INF 1771 Inteligência Artificial



Documentos relacionados
Aula 08 Lógica de primeira ordem

Lógica de primeira ordem First Order Logic (FOL)

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial

Lógica de Primeira Ordem. Capítulo 8

Lógica de Primeira Ordem. Capítulo 8

Sistemas Inteligentes

INF 1771 Inteligência Artificial

Lógica de Primeira Ordem. Capítulo 8

5 - Lógica Matemática Representação e Inferência

MAC425/5739 Inteligência Artificial 6. Agentes lógicos

INF 1771 Inteligência Artificial

Lógica de primeira ordem (Capítulo 8 - Russell) Inteligência Artificial

Prof. A. G. Silva. 08 de agosto de Prof. A. G. Silva Programação em Lógica 08 de agosto de / 41

Sistemas Inteligentes

Retomada aula. Introdução sobre Inteligência Artificial Abordagem sobre Agentes Resolução de problemas estratégias de busca - apresentação trabalhos

Linguagem com sintaxe e semântica precisas: lógica. Mecanismo de inferência: derivado da sintaxe e da

Fundamentos de Lógica Matemática

Lógica de Primeira Ordem. Capítulo 9

Conhecimento e Raciocínio Agente Lógicos Capítulo 7. Leliane Nunes de Barros

Descrição do Mundo de Wumpus. Inteligência Artificial

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

Cálculo de Predicados

Sistemas Baseados em Conhecimento (Sistemas Especialistas) Profa. Dra. Sarajane Marques Peres

Capítulo 8 Lógica de primeira Ordem

Inteligência Artificial IA II. LÓGICA DE PREDICADOS PARA REPRESENTAÇÃO DO CONHECIMENTO

Os Fundamentos: Lógica de Predicados

Introdução. Introdução. Motivação. Motivação. Solução INTELIGÊNCIA ARTIFICIAL CÁLCULO RELACIONAL (PARTE I)

Fundamentos 1. Lógica de Predicados

Programação em Lógica. UCPEL/CPOLI/BCC Lógica para Ciência da Computação Luiz A M Palazzo Maio de 2010

Linguagens Lógicas. Aluno: Victor Rocha

SCC Capítulo 2 Lógica de Predicados

Lógica Proposicional. Modelo: qualquer mundo em que a sentença é verdadeira para alguma interpretação.

Lógica Proposicional. Modelo: qualquer mundo em que a sentença é verdadeira para alguma interpretação.

Inteligência Artificial. Prof. Tiago A. E. Ferreira Aula 15 Agentes que Raciocinam Logicamente

Lógica Computacional

Agentes Lógicos. Os agentes baseados no conhecimento:

A linguagem da Lógica de Predicados. (Capítulo 8) LÓGICA APLICADA A COMPUTAÇÃO. Professor: Rosalvo Ferreira de Oliveira Neto

Capítulo 7 - Agentes lógicos (Agentes baseados em Conhecimento)

Matemática discreta e Lógica Matemática

Predicados e Quantificadores

Introdução à Logica Computacional. Aula: Lógica Proposicional -Sintaxe e Representação

03/04/2016 LÓGICA MATEMÁTICA. Prof. Esp. Fabiano Taguchi. Introdução ao Prolog

Basicamente, um programa PROLOG é constituído por fatos acerca do domínio e regras que são sentenças ou fórmulas.

Lógica proposicional

2 Lógica Fuzzy. 2 Lógica Fuzzy. Sintaxe da linguagem

Lógica. Professor Mauro Cesar Scheer

Linguagens Lógicas. Alunos: Josiane Novais Cláudio Moisés

Quantificadores, Predicados e Validade

Fundamentos da Computação 1. Aula 03

Técnicas de Inteligência Artificial

1 Lógica de primeira ordem

Lógicas de Descrição Visão Geral

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA

1. = F; Q = V; R = V.

Bases Matemáticas. Aula 1 Elementos de Lógica e Linguagem Matemática. Prof. Rodrigo Hausen. 24 de junho de 2014

Programação Lógica. A Linguagem Prolog. Paulo Henrique Ribeiro Gabriel Faculdade de Computação Universidade Federal de Uberlândia

Aula 12: Lógica de Predicados

01/09/2014. Capítulo 1. A linguagem da Lógica Proposicional

Lógica de Descrições Visão Geral

A Lógica de Primeira Ordem

Introdução à Logica Computacional. Aula: Lógica Proposicional - Sintaxe e Representação

Lógica de Predicados. Correção dos Exercícios Regras de Inferência

INF 1771 Inteligência Artificial

Agentes Baseados em Conhecimento

Cálculo dos Predicados

INF 1771 Inteligência Artificial

Introdução à Programação em Prolog

Capítulo 3 Lógica de Primeira Ordem

MÓDULO II - PARTE II LÓGICA DOS PREDICADOS

Representação de Conhecimento

PCS 2428 / PCS 2059 lnteligência Artificial. Lógica de Predicados. Representação de Conhecimento. Uranus. Aphrodite Kronos Atlas Prometheus

Área de Teoria DCC/UFMG Introdução à Lógica Computacional 2019/01. SOLUÇÃO DE LISTA DE EXERCÍCIOS Lista 04 (Predicados e Quantificadores)

Inteligência Artificial. Sistemas Baseados em Conhecimento. Representação de Conhecimento (continuação)

Introdução à Lógica de Predicados

Lógica para computação

Lógica de Predicados. Correção dos Exercícios

PCS 2428 / PCS 2059 lnteligência Artificial. Cálculo de Situações. Agente Baseado em Conhecimento. Agente Baseado em Lógica de Predicados

2 AULA. Conectivos e Quantificadores. lógicas. LIVRO. META: Introduzir os conectivos e quantificadores

Aula 2: Linguagem Proposicional

Lógica Formal. Matemática Discreta. Prof Marcelo Maraschin de Souza

Lógica Proposicional Fórmulas e Precedência de Operadores

COMO LER NOTAÇÃO LÓGICA

Cálculo proposicional

Matemática Discreta. Lógica de Predicados. Profa. Sheila Morais de Almeida. agosto DAINF-UTFPR-PG

Lógica para Computação

PROGRAMAÇÃO EM LÓGICA

INF 1771 Inteligência Artificial

O MUNDO DO WUMPUS EM LEGO-MINDSTORM E PROLOG

Lógica e prova de resolução Marco Henrique Terra

Conteúdo. Correção Exercícios Revisão para Prova

Lógica Computacional

Matemática discreta e Lógica Matemática

Lógica para computação - Linguagem da Lógica de Predicados

Lógica de Predicados

Fórmulas Bem Formadas (wff) Prioridade dos Conectivos. Prioridade dos Conectivos. Semântica do CR. Semântica do CR

Transcrição:

INF 1771 Inteligência Artificial Aula 08 Lógica de Primeira Ordem Edirlei Soares de Lima <elima@inf.puc-rio.br>

Agente Baseado em Conhecimento O componente central de um agente baseado em conhecimento é sua base de conhecimento. A base de conhecimento é formada por um conjunto de sentenças expressadas através de uma linguagem lógica de representação de conhecimento. Deve ser possível adicionar novas sentenças à base e consultar o que se conhece. Ambas as tarefas podem envolver inferência (derivação de novas sentenças a partir de sentenças antigas).

Limitações da Lógica Proposicional Muito simples para representar o conhecimento de ambientes complexos de uma forma concisa. Falta de capacidade de expressão para descrever um ambiente com muitos objetos. Exemplo em linguagem natural: quadrados adjacentes a poços possuem brisa Em lógica proposicional: B 1,1 (P 1,2 P 2,1 ) - (Seria necessário declarar todas as salas!)

Linguagem Natural Objetos: pessoas, casas, números, cores, jogos, séculos... Relações: Unárias: propriedades de um objeto. Exemplo: vermelho, redondo, falso n-árias: relacionam grupos de objetos. Exemplo: irmão de, maior que, interior a, parte de... Funções: um objeto está relacionado a exatamente um objeto. Exemplo: pai de, melhor amigo de, terceiro turno de, uma unidade maior que... Linguagem da lógica de primeira ordem é elaborada em torno de objetos e relações.

Lógica de Primeira Ordem Principal diferença entre lógica proposicional e a lógica de primeira ordem é o compromisso ontológico, ou seja, o que cada linguagem pressupões sobre a natureza da realidade: Lógica Proposicional: pressupõe que existem fatos que são válidos ou não-válidos no mundo. Lógica de Primeira Ordem: pressupõe que o mundo consiste em objetos com certas relações entre eles que são válidas ou não-válidas.

Modelo em Lógica de Primeira Ordem Exemplo: Ricardo Coração de Leão, rei da Inglaterra de 1189 a 1199 e seu irmão mais jovem, o perverso rei João, que governou de 1199 a 1215:

Sintaxe da Lógica de Primeira Ordem Símbolos - Começam com letras maiúsculas e podem ser de três tipos: Símbolos de constantes: Representam objetos. Exemplo: Ricardo e João Símbolos de predicados: Representam relações. Exemplo: Irmão, NaCabeça, Pessoa Símbolos de funções: Representam funções. Exemplo: PernaEsquerda

Sintaxe da Lógica de Primeira Ordem Interpretação - Especifica quais objetos, relações e funções são referidos pelos símbolos de constantes, predicados e funções: Interpretação pretendida: Ricardo se refere a Ricardo Coração de Leão João se refere ao perverso rei João Irmão se refere à relação de fraternidade NaCabeça se refere à relação na cabeça que é válida entre a coroa e o rei João Pessoa, Rei e Coroa se referem aos conjuntos de objetos que são pessoas, reis e coroas PernaEsquerda se refere à função perna esquerda.

Sintaxe da Lógica de Primeira Ordem Sentenças atômicas são formadas a partir de um símbolo de predicado seguido por uma lista de termos entre parênteses. Exemplos: Irmão(Ricardo, João) Casados(Pai(Ricardo), Mãe(João)) Uma sentença atômica é verdadeira em um modelo, sob uma dada interpretação, se a relação referida pelo símbolo de predicado é válida entre os objetos referidos pelos argumentos.

Sintaxe da Lógica de Primeira Ordem Sentenças complexas podem ser formadas pelo uso de conectivos lógicos, da mesma maneira que na lógica proposicional. Exemplos: Irmão(PernaEsquerda(Ricardo), João) Irmão(Ricardo,João) Irmão(João, Ricardo) Rei(Ricardo) Rei(João) Rei(Ricardo) Rei(João)

Sintaxe da Lógica de Primeira Ordem Quantificadores (, ) são utilizados para expressar propriedades de coleções inteiras de objetos. Quantificador Universal ( ): Para todo... x P, onde P é qualquer expressão lógica, afirma que P é verdadeira para todo objeto x. Exemplo: x Rei(x) Pessoa(x) Quantificador Existencial ( ): Para algum... x P afirma que P é verdadeira para pelo menos um x. Exemplo: x Rei(x)

Sintaxe da Lógica de Primeira Ordem Quantificadores aninhados são usados em sentenças complexas compostas. Exemplos: x y Irmão(x,y) Parente(x,y) Irmãos são parentes x,y Parente(x,y) Parente(y,x) Parente é uma relação simétrica x y Ama(x,y) Todo mundo ama alguém y x Ama(x,y) Existe alguém que é amado por todo mundo

Sintaxe da Lógica de Primeira Ordem Os quantificadores (, ) estão conectados um ao outro por meio de negação. Exemplos: x Gosta(x,Cenouras) x Gosta(x,Cenouras) todo mundo detesta cenouras não existe alguém que goste de cenouras x Gosta(x,Sorvete) x Gosta(x,Sorvete) todo mundo gosta de sorvete não existe alguém que não goste de sorvete

Sintaxe da Lógica de Primeira Ordem Em lógica de primeira ordem pode-se usar o símbolo de igualdade para fazer declarações afirmando que dois termos se referem ao mesmo objeto. Exemplo: Pai(João) = Henrique

Sintaxe da Lógica de Primeira Ordem Sentença SentençaAtômica (Sentença Conectivo Sentença) Quantificador Variável,...Sentença Sentença SentençaAtômica Predicado(Termo,...) Termo=Termo Termo Função (Termo,...) Constante Variável Conectivo Quantificador Constante A X1 João... Variável a x s... Predicado Antes TemCor Chovendo... Função Mãe PernaEsquerda...

Semântica da Lógica de Primeira Ordem Se existem 5 objetos, existem 25 interpretações para os símbolos Ricardo e João. Número de modelos pode ser ilimitado (pode incluir, por exemplo os números reais). Logo, o número de modelos possível é ilimitado. Verificar consequência lógica pela enumeração de todos os modelos não é uma opção.

Exemplo - Parentesco Objetivo: Determinar o parentesco de grupos de pessoas. Fatos: Elizabeth é a mãe de Charles, Charles é o pai de William Regras: a avó de uma pessoa é a mãe do pai de uma pessoa Objetos: Pessoas Predicados unários: Masculino e Feminino Predicados (relações de parentesco): Ancestral, Parente, Irmão,... Funções: Mãe e Pai (cada pessoa tem apenas um de cada)

Exemplo - Parentesco A mãe de alguém é o ancestral feminino de alguém m,c Mãe(c)=m Feminino(m) Ancestral(m,c) O marido de alguém é o cônjuge masculino de alguém w,h Marido(h,w) Masculino(h) Cônjuge(h,w) Masculino e feminino são categorias disjuntas x Masculino(x) Feminino(x)

Exemplo - Parentesco Ancestral e descendente são relações inversas p,c Ancestral(p,c) Descendente(c,p) Avô é um pai do pai de alguém g,c Avô(g,c) p Pai(g,p) Pai(p,c) Um parente é outro descendente dos ancestrais de alguém x,y Parente(x,y) x y p Ancestral(p,x) Ancestral(p,y)

Exemplo - Wumpus Estrutura da Base de Conhecimento: São armazenadas as sentenças representando as percepções do agente e a hora em que elas ocorreram. Fedor, Brisa e Resplendor são constantes inseridas em uma lista. Exemplo: Percepção ([Fedor, Brisa, Resplendor, Nenhum, Nenhum], 5) Ações: Virar(Direita), Virar(Esquerda), Avançar, Atirar, Agarrar, Soltar. Consultas: x MelhorAção(x,5) ASK deve retornar uma lista de vinculação como {a/agarrar}

Exemplo - Wumpus Os dados brutos da percepção implicam certos fatos sobre o estado atual. Exemplos: t,s,g,m,c Percepção([s,Brisa,g,m,c],t) Brisa(t) t,s,b,m,c Percepção([s,b,Resplendor,m,c],t) Resplendor(t) Comportamentos simples podem ser implementados por sentenças de implicação quantificadas. Exemplo: t Resplendor(t) MelhorAção(Agarrar,t)

Exemplo - Wumpus Adjacência de dois quadrados: x,y,a,b Adjacente([x,y],[a,b]) [a,b] {[x+1,y], [x-1,y], [x,y+1], [x,y-1]} Se o agente estiver em um quadrado e perceber uma brisa, então esse quadrado é arejado: s,t Em(Agente,s,t) Brisa(t) Arejado(s)

Exemplo - Wumpus Regras de diagnóstico: algumas causas ocultas do ambiente conduzem a novas percepções. s Arejado(s) r Adjacente(r,s) Poço(r) s Arejado(s) r Adjacente(r,s) Poço(r) Regras causais: refletem a suposta orientação da causalidade no mundo r Poço(r) [ r Adjacente(r,s) Arejado(s)] s [ r Adjacente(r,s) Poço(r)] Arejado(s)

Construção da Base de Conhecimento (1) Identificar a tarefa; (2) Agregar conhecimento relevante; (3) Definir um vocabulário de predicados, funções e constantes; (4) Codificar o conhecimento geral sobre o domínio; (5) Codificar uma descrição da instância específica do problema; (6) Formular consultas ao procedimento de inferência e obter respostas; (7) Depurar a base de conhecimento;

Prolog O Prolog é uma linguagem de programação baseada em lógica de primeira ordem. Não é padronizada. Algumas implementações: SICStus Prolog, Borland Turbo Prolog, SWI-Prolog... Geralmente é interpretado, mas pode ser compilado.

Leitura Complementar Russell, S. and Novig, P. Artificial Intelligence: a Modern Approach, 2nd Edition, Prentice-Hall, 2003. Capítulo 8: First-Order Logic Capítulo 9: Inference in First-Order Logic