DSI – Desenvolvimento de Sistemas Inteligentes

Slides:



Advertisements
Apresentações semelhantes
Sistemas Baseados em Conhecimento e Sistemas Especialistas
Advertisements

Sistemas Especialistas Inteligência Artificial Profa. Ligia Flávia A. Batista.
Sistemas Baseados em Conhecimento
Agentes Baseados em Conhecimento
Agentes Cognitivos Adaptativos
Sistemas Inteligentes
Agentes Baseados em Conhecimento
Sistemas Inteligentes
Sistemas Inteligentes Sistemas Baseados em Conhecimento
Lógica de Predicados/Primeira Ordem
Lógica de Predicados/Primeira Ordem
Sistemas Inteligentes Aula: Sistemas Baseados em Conhecimento 1.
Agentes Baseados em Conhecimento
Sistemas Inteligentes Aula: Agentes Baseados em Conhecimento Obs.: esta aula não foi totalmente baseada no livro- texto AIMA... Flávia Barros 1.
Agentes Baseados em Conhecimento
CIn- UFPE 1 Paradigmas da IA Jacques Robin Geber Ramalho CIn-UFPE.
DI/UFPE 1 Engenharia do Conhecimento e Agentes Baseados em Regras de Produção.
Introdução aos Agentes Inteligentes
Sistemas Baseados em Conhecimento
Gerador de grade de horários com Algoritmos Genéticos Prof. Roberto Heinzle, Doutor - Orientador Rodrigo Correia.
SyncEasy – Aplicativo para sincronização de arquivos entre dispositivos móveis e computadores utilizando metadados Acadêmico: Bernardo Marquardt Müller.
O que é Inteligência Artificial O que é IA A inteligência artificial é um ramo de pesquisa da ciência da computação que busca, através de símbolos computacionais,
Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de dados Oracle Wagner da Silva Orientando Prof. Alexander Roberto Valdameri.
Reconhecimento de Padrões Métodos Sintático e Estrutural Disciplina: Tópicos em Inteligência Artificial Prof. Josué Castro.
PrologProlog Prof. Luthiano Venecian Elaborado pelo Prof. Luiz A. M. Palazzo Universidade Católica de Pelotas Centro Politécnico Laboratório de Programação.
Regras de dedução para lógica proposicional
Lógica Matemática e Computacional Professora Chaiene Minella, MSc. chaiene.yolasite.com.
Sistemas Baseados no Conhecimento Sistemas de Administração do Conhecimento Sistemas Especialistas 1.
PROLOG: Linguagem de programação Phillipe Eduardo Silva de Oliveira – Unirb – Sistema de Informação – Logica Matemática e Discreta.
Engenharia de Software Definição: Estabelecimento e uso de sólidos princípios de engenharia para que se possa obter economicamente um software que seja.
Construindo Bases de Conhecimento
METODOLOGIA DA PESQUISA CIENTÍFICA
Algoritmos e Estruturas de Dados I
Disciplina: Sistemas de Informação
Algoritmos e Estruturas de Dados I Prof. Dsc. Alex F. V. Machado
Prof. Gerson Pastre de Oliveira
Teoria da Computação Prof. Msc. Ricardo Loiola
INSTITUTO FEDERAL DO CEARÁ Mauro Oliveira
INTRODUÇÃO Estendendo LANs.
Desenvolvimento de Estratégia Logística
Sistemas de Controle III N8SC3
Nataniel Vieira Endereçamento IP Nataniel Vieira
PROGRAMAÇÃO ORIENTADA A OBJETO - JAVA
Programação Lógica: PROLOG
Inteligência Artificial
FUNDAMENTOS DE PROGRAMAÇÃO
Introdução à programação orientada por objetos
Lógica de Primeira Ordem
Arquitetura I Aulas 5 e 6 – Álgebra de Boole e Simplificação de Circuitos Lógicos.
Modelagem de Sistemas I Aula 1 – Introdução à UML

Definição de Ontologia.  ”Ontologia é a especificação de uma conceitualização”. (Grubber, 1993)  Uma descrição dos conceitos e relacionamentos que podem.
BANCO DE DADOS I.
Agentes Baseados em Conhecimento
Avaliação Diagnóstica Visa determinar a presença, ou ausência, de conhecimentos e habilidades, inclusive buscando detectar pré-requisitos para novas experiências.
3. Sintaxe e Semântica.
Programação Estruturada Aula 1 Prof. Jorge Barreto Julho 2018.
Aula 2 Modelagem Econômica
Linguagem de Programação
Melissa Figueira Fagundes
DSI – Desenvolvimento de Sistemas Inteligentes
Anjolina Grisi de Oliveira
Aula 5 – Ferramentas de Modelagem
Professora Roberta Bonamichi Guidi Garcia
LÓGICA FORMAL.
Aula 2 Modelagem Econômica
Paradigma de Orientação a Objetos
Agentes Baseados em Conhecimento
Aprendizado de Máquina
BANCO DE DADOS.
Transcrição da apresentação:

DSI – Desenvolvimento de Sistemas Inteligentes sexta-feira, 9 de novembro de 2018

29 Agentes Baseados em Conhecimento DSI – Desenvolvimento de Sistemas Inteligentes Agentes Baseados em Conhecimento Motivação Conhecimento e Raciocínio Agentes BC Arquitetura Ciclo de Vida Eng. de Conhec. Ling. de Repres. do Conhecimento Raciocínio Sistemas BC Prof. Frederico Brito Fernandes unibratec@fredbf.com sexta-feira, 9 de novembro de 2018

(1) Exemplo do capitão West West é criminoso ou não? “A lei americana diz que é proibido vender armas a uma nação hostil. Cuba possui alguns mísseis, e todos eles foram vendidos pelo Capitão West, que é americano” Como resolver automaticamente este problema de classificação? Segundo a IA (simbólica), é preciso: Identificar o conhecimento do domínio (modelo do problema) Representá-lo utilizando uma linguagem formal de representação Implementar um mecanismo de inferência para utilizar esse conhecimento

(1) Solucionando o caso do cap. West (linguagem natural) A) Todo americano que vende uma arma a uma nação hostil é criminoso B) Todo país em guerra com uma nação X é hostil a X C) Todo país inimigo político de uma nação X é hostil a X D) Todo míssil é um arma E) Toda bomba é um arma F) Cuba é uma nação G) USA é uma nação H) Cuba é inimigo político dos USA I) Irã é inimigo político dos USA conhecimento prévio J) West é americano K) Existem mísseis em cuba L) Os mísseis de cuba foram vendidos por West conhecimento do problema conhecimento novo M) Cuba possui um míssel M1 - de K N) M1 é um míssil O) M1 é uma arma - de D e N P) Cuba é hostil aos USA - de F, G, H e C Q) M1 foi vendido a Cuba por West - de L, M e N R) West é crimonoso - de A, J, O, F, P e Q

(1) Questões levantadas pelo exemplo Seria possível resolver esse problema com busca? Por que?

(1) Limitações da resolução de problemas por Busca Agentes de Busca são muito eficientes na solução de problemas que podem ser formalizados por: 1. um estado inicial; 2. ações (operadores); 3. um conjunto de estados finais. Porém, não são capazes de resolver problemas que exigem raciocínio baseado em conhecimento sobre o mundo: porque seu modelo do mundo é pobre e o raciocínio é limitado e.g., diagnóstico médico, controle aero-espacial, prova de teoremas, sistemas especialistas em geral,... mesmo em casos aparentemente solucionáveis por busca (planejamento), pode ser preciso adicionar conhecimento explícito

Agentes Baseados em Conhecimento (BC) Plano de aula: Motivação Agentes Baseados em Conhecimento (BC) definição geral Categorias de conhecimento e de raciocínio Linguagens de representação de conhecimento Mecanismos de raciocínio Arquitetura e algoritmo básico do Agente BC (caso dedutivo) Sistemas baseados em conhecimento

(2) Categorias de Conhecimento Procedimental: fatos e seqüências de instruções para manipular esses fatos ex.: como desmontar uma bicicleta Declarativo: representação descritiva dos fatos, relacionamentos e regras as partes de uma bicicleta e seus relacionamentos o pai do pai é o avô Episódico: fatos vividos, casos, exemplos... ex. D. Maria tem dor de cabeça e dengue

(2) Categorias de Raciocínio (Inferência) Dedução: fatos + regras de inferência => novos fatos. ex. Onde há fogo, há fumaça. Aqui tem fogo, logo... Abdução: inverso da dedução. ex. Se há fumaça, há fogo. Indução: parte-se dos fatos para gerar regras. ex. Se Sr. Antônio, assim como D. Maria, tem dor de cabeça e dengue, então todo mundo que tem dengue, tem dor de cabeça. Analógico: casos + regras de adaptação ex.: Para construir este hospital, vou me basear no projeto daquele outro

(2) Representação & Raciocínio Raciocínio é um processo de construção de novas sentenças a partir de sentenças existentes. Raciocínio plausível garante que as novas sentenças representam fatos que se seguem dos fatos representados pelas sentenças existentes na BC. implementa a relação de “implicação” entre sentenças semântica segue-se fatos Mundo fatos Representação semântica sentenças implica sentenças

(3) Agentes Baseados em Conhecimento São agentes que conhecem seu mundo esse conhecimento está representado na Base de Conhecimento raciocinam sobre suas possíveis ações com auxílio de uma Máquina de Inferência Sabem: o estado atual do mundo (propriedades relevantes) como o mundo evolui como identificar estados desejáveis do mundo como avaliar o resultado das ações conhecimento sobre conhecimento (meta-conhecimento) etc.

(3) Agentes Baseados em Conhecimento Principais componentes: Base de Conhecimento Mecanismo de Inferência Base de Conhecimento: contém sentenças em uma Linguagem de Representação de Conhecimento representações de fatos e regras conhecimento em forma “tratável” pelo computador ex. míssil é uma arma, M1 é um míssil Mecanismo (máquina) de Inferência: responsável por inferir, a partir do conhecimento da base, novos fatos ou hipóteses intermediárias/temporárias ex. M1 é uma arma

(4) Arquitetura de Agentes BC sensores Agente efetuadores a m b i e n t e Base de Conhecimento Máquina de Inferência (Raciocínio) Mecanismo de Aprendizagem - opcional Tell Ask Tell - adiciona novas sentenças à BC Ask - consulta a BC

(4) Implementando raciocínio (dedutivo) Programa Agente Baseado em Conhecimento t := 0 //contador de tempo enquanto Agente-BC vivo, faça Tell(BC, Percepções-Sentença(percepção,t)) ação <- Ask(BC, Pergunta-Ação(t)) Executa(ação) Tell(BC, Ação-Sentença(ação,t)) t <- t + 1

(5) Ciclo de vida dos Sistemas BC Nível de Conhecimento AQUISIÇÃO linguagem natural linguagem de representação de conhecimento FORMALIZAÇÃO Nível Lógico Nível de Implementação linguagens de programação IMPLEMENTAÇÃO BC REFINAMENTO

(6) Engenharia do Conhecimento estuda como construir uma Base de Conhecimento (BC) 1. Nível do conhecimento: aquisição de conhecimento conhecimento em “estado puro” - linguagem natural e.g., táxi automático: a ponte Princesa Isabel liga a Rua da Imperatriz à Rua Nova 2. Nível lógico: formalização conhecimento codificado em sentenças - linguagem formal e.g. sentença lógica: liga(Ponte-PI,RI,RN) 3. Nível de máquina: implementação estrutura de dados representando as sentenças do nível lógico e.g., listas, tabelas, objetos, etc.

(7) Linguagens de Representação do Conhecimento Linguagens de programação: são precisas, porém não são suficientemente expressivas Linguagens naturais: são muito expressivas, porém são ambíguas Linguagens de representação de conhecimento (LRC): utilizadas para expressar as sentenças das BC estão entre as anteriores Ex: Lógica de Primeira Ordem (LPO)

(7) Linguagens de Representação do Conhecimento Uma Linguagem de Representação do Conhecimento é definida por: 1) uma sintaxe, que descreve as configurações que podem constituir sentenças daquela linguagem; 2) uma semântica, que liga cada sentença aos fatos no mundo que ela representa cada sentença faz uma afirmação a respeito do mundo; o agente acredita nas sentenças que correspondem a sua configuração interna. E geralmente ... tem um mecanismo de inferência associado = raciocínio

(7) Caso do cap. West (usando LPO) A) " x,y,z Americano(x) Ù Arma(y) Ù Nação(z) Ù Hostil(z) Ù Vende(x,z,y) Þ Criminoso(x) B) " x Guerra(x,USA) Þ Hostil(x) C) " x InimigoPolítico(x,USA) Þ Hostil(x) D) " x Míssil(x) Þ Arma(x) E) " x Bomba(x) Þ Arma(x) F) Nação(Cuba) G) Nação(USA) H) InimigoPolítico(Cuba,USA) I) InimigoPolítico(Irã,USA) conhecimento prévio J) Americano(West) K) $ x Possui(Cuba,x) Ù Míssil(x) L) " x Possui(Cuba,x) Ù Míssil(x) Þ Vende(West, Cuba,x) conhecimento do problema conhecimento novo M) Possui(Cuba,M1) - Eliminação: quantificador existencial e N) Míssil(M1) conjunção de K O) Arma(M1) - Modus Ponens a partir de D e N P) Hostil(Cuba) - Modus Ponens a partir de C e H Q) Vende(West,Cuba,M1) - Modus Ponens a partir de L, M e N R) Criminoso(West) - Modus Ponens a partir de A, J, O, F, P e Q

(8) Direções do raciocínio dedutivo Raciocínio progressivo dos dados à conclusão - data-driven inference as regras da BC são usadas para gerar informação nova (novos fatos) a partir de um conjunto inicial de dados os fatos gerados passam a fazer parte da BC ex.: criminoso(West). Raciocínio regressivo da hipótese aos dados - goal-directed inference usa as regras da BC para responder a perguntas prova se uma asserção é verdadeira ex.: criminoso(West)? só processa as regras relevantes para a pergunta (asserção)

(9) Tipologia de sistemas baseados em conhecimento Principais sistemas de raciocínio declarativos/dedutivos regras lógica objetos híbridos Programação em lógica Sistemas de produção Sistemas de manutenção da verdade Provadores de teorema Sistemas Redes Semânticas Sistemas Frames Sistemas de Lógica descritiva Sistemas OO regras+objetos lógica+objetos lógica+objetos+funções

(9) Implementando Regras Sistemas de Produção Restringem a lógica mais do que a programação em lógica, mas são mais eficientes Geralmente usam Encadeamento Progressivo. Exemplos: OPS-5, CLIPS, SOLAR. Linguagens de Programação Lógica Restringem a lógica, não permitindo o tratamento completo da negação, da disjunção e/ou da igualdade. Geralmente usam Encadeamento Regressivo. Exemplos: Prolog, MRS, Life. Sistemas de manutenção da verdade Truth-maintenance systems (TMS) Mantêm a base de conhecimento consistente.

(9) Implementando Objetos Sistemas de Redes Semânticas BC: nós (representando objetos) conectados por arcos (representando a relação binária entre eles). Exemplos: KRL, SNEPS, NETL, Conceptual Graphs. Sistemas Frames Consistem em uma hierarquia de frames (quadros) conectados por atributos, onde os frames representam objetos do mundo e atributos usualmente a relação entre eles. Exemplos: KRIPTON, OWL, FRAIL, KODIAK. Linguagens de classes hierarquia de objetos encapsulando comportamento e estrutura e com comunicação via envio de mensagens Exemplos: Smalltalk, Lisp-CLOS, Java, ...

Sistemas híbridos Exemplos (9) Abordagem Híbrida combina as vantagens de cada sistema e ainda mais algumas de engenharia de software Exemplos eoops: objetos + regras (C++/Clips, Smalltalk/NéOpus, Java/Jeops,...) lógica + objetos (ObjLog), lógica + objetos + funções (LIFE), etc...