Sistemas de Raciocínio Lógico (SRL)

Documentos relacionados
Sistemas de Produção

Sistemas de Produção Sistemas Baseados em Regras

O Estudo do Conhecimento

Sistemas Especialistas. Prof. Msc. Jacson Rodrigues

Regras e Encadeamentos

Inteligência Artificial. Sistemas Baseados em Conhecimento. Técnicas para Representação de Conhecimento Continuação

Sistemas Especialistas

Inteligência Artificial

Representação de Conhecimento e Raciocínio. Prof. Elder Rizzon Santos

Representação do Conhecimento

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

Mecanismos de Raciocínio em Regras de Produção e Algoritmo RETE

Tópicos Especiais em Informática Fatec Indaiatuba

Inteligência Artificial. Categorias de Conhecimento

Representação de Conhecimento Considerações Gerais

Representação de Conhecimento Redes Semânticas e Frames

Sistemas Baseados em Conhecimento

Inteligência Artificial. Prof. Tiago A. E. Ferreira Aula 2 Introdução a I.A.

INTELIGÊNCIA ARTIFICIAL

Agentes Baseados em Conhecimento

Representação de Conhecimento

Inteligência Artificial. Sistemas Inteligentes. Síntese baseada no cap.2 Sistemas Inteligentes da Solange Rezende

Representação de Conhecimento

lnteligência Artificial

Inteligência Artificial. Conceitos Gerais

Paradigmas de Representação de Conhecimento

lnteligência Artificial Introdução a Lógica Nebulosa (Fuzzy)

Inteligência Artificial

Inteligência Artificial

Técnicas de Inteligência Artificial

Sistemas Especialistas. Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 6)

INF 1771 Inteligência Artificial

Sistemas Inteligentes

Inteligência Artificial IA IV. RACIOCÍNIO BASEADO EM REGRAS

Linguagens Lógicas. Aluno: Victor Rocha

Uma representação do conhecimento envolvendo nós, ligações e rótulos. Nós representam categorias, propriedades ou objetos.

Paradigma Simbólico. Sistemas de Informação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 2)

Cálculo proposicional

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

Introdução à Inteligência Artificial

Inteligência Artificial

Ontologias. Profa. Lillian Alvares Faculdade de Ciência da Informação, Universidade de Brasília

Inteligência Artificial IA IV. RACIOCÍNIO BASEADO EM REGRAS

Representação do Conhecimento

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

Inteligência Artificial. Sistemas Baseados em Conhecimento. Técnicas para Representação de Conhecimento Continuação

Inteligência Artificial

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE CAMPINAS

Inteligência Artificial

Fundamentos da Computação 1. Aula 03

Lógica, Regras e Inferência

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Sistemas Especialistas (SE)

Universidade Federal do ABC Rua Santa Adélia, Bairro Bangu - Santo André - SP - Brasil CEP Telefone/Fax:

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

PIPCA - Programa Interdisciplinar de Pós-Graduação Mestrado em Computação Aplicada da UNISINOS. 2003/1-2o. Trimestre - AULA 0 (Introdução) / FSO

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Introdução aos Sistemas Especialistas. Professor Celso A A Kaestner, Dr. Eng.

Pontifícia Universidade Católica de São Paulo Programa de TIDD

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

Sistemas Especialistas. Prof. Júlio Cesar Nievola PPGIA PUCPR

Universidade Federal da Paraíba CCEN Departamento de Informática Disciplina: Banco de Dados. Aula 1 Introdução a Banco de Dados

IF-705 Automação Inteligente Sistemas de Controle - Fundamentos

Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Sumário. Sumário. Introdução. Sumário. Sistemas Baseados em Conhecimento. PCS 5869 lnteligência Ar4ficial

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial

Inteligência Artificial Escola de Verão Laboratório Associado de Computação e Matemática Aplicada LAC

Redes Neurais e Sistemas Fuzzy

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

Lógica Proposicional Parte 2

Agentes Inteligentes. Inteligência Artificial

FERRAMENTA DE AUXÍLIO AO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE INTEGRANDO TECNOLOGIAS OTIMIZADORAS

Inteligência Artificial - IA

6. QUADRIMESTRE IDEAL 7. NÍVEL Graduação 8. Nº. MÁXIMO DE ALUNOS POR TURMA TEORIA: 60 LABORATÓRIO: 30

SISTEMAS ESPECIALISTAS

Lógica Proposicional. LEIC - Tagus Park 2 o Semestre, Ano Lectivo 2007/08. c Inês Lynce c Luísa Coheur

Inteligência Artificial

2. Introdução à Programação e Análise. Orientada a Objetos

Lógica de Primeira Ordem. Capítulo 9

INTELIGÊNCIA COMPUTACIONAL

Lógica Computacional

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

Sistemas Especialistas e Representação do Conhecimento. Sistemas Especialistas e Representação do Conhecimento. Sistema Especialista

Programação Orientada a Objetos

Inteligência Artificial. Outras abordagens à conceituação de IA

Inteligência Artificial. Prolog. Aula 2 Introdução (cont.)

Aula 01 Conceito de Banco de Dados e SGBD

CURRÍCULO DO CURSO TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO (noturno) [Campus Araranguá] 20171

Programação Orientada a Objetos

Figura: Capa do Livro Russell, S., Norvig, P. Artificial Intelligence A Modern Approach, Prentice-Hall.

Palavras-chaves: Inteligência artificial. Sistemas especialistas. Base de conhecimento

UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA. Sistemas de Raciocínio Lógico

Fabrício Jailson Barth BandTec

Introdução a Sistemas Inteligentes

Transcrição:

Sistemas de Raciocínio Lógico (SRL) Universidade Federal de Goiás Instituto de Informática Inteligência Artificial Prof. Dr.Cedric Luiz de Carvalho 1

Agenda Aspectos Introdutórios Introdução; Terminologia; Aspectos Gerais dos SRL Sistemas de Raciocínio; Pontos comuns: Técnica de Unificação,Recuperação e Indexação; Forward Chaining e Backward Chaining. Técnicas de Representação do Conhecimento Sistemas de Produção; Sistemas de Redes Semântica; Sistemas de Frames; Conclusão 2

Motivação Apresentar o Processo de Capacitação de Sistemas Computacionais a executar funções que são desempenhadas pelo ser humano usando o conhecimento e raciocínio. 3

Definição do Problema Representação do Conhecimento; Busca Heurística e Resolução de Problemas; Ambientes e Linguagens de desenvolvimento; Tratamento de Incertezas; Provocado por falta de Conhecimento e sua Natureza Subjetiva; Cognição Situada; Conhecimento ajustado durante a solução do problema (solução: Aprendizado de Máquina); 4

Benefícios Esperados Minimização das Dificuldades na Construção de SRL; Formalização do Processo de Engenharia de Construção de SRL; Incorporação de Conhecimento a Sistemas Computacionais. Incorporação de Técnicas de Raciocínio Computacional. 5

Objetivos Parte I Aspectos Introdutórios dos SRL Conceituação de Raciocínio Lógico partindo da Unidade de Conhecimento DADO até a SINTESE que permite tomada de DECISÕES INTELIGENTES; Parte II Aspectos Gerais dos SRL Conceituação de Sistemas de Raciocínio Lógico partindo do Processo de Raciocínio até as Linguagens de Representação do Conhecimento; Parte III Principais Categorias de SRL Conceituação de Técnicas de Representação do Conhecimento partindo de Sistemas de Produção, Sistemas de Redes Semânticas e Sistemas de Frames até os sistemas híbridos (Regras, Lógica e OO). 6

Agenda Parte I Aspectos Introdutórios dos SRL Aspectos Introdutórios Introdução; Terminologia; Parte I Aspectos Introdutórios dos SRL Conceituação de Raciocínio Lógico partindo da Unidade de Conhecimento DADO até a SINTESE que permite tomada de DECISÕES INTELIGENTES; 7

Introdução Visão Geral do Conhecimento Conceitos Raciocínio: Habilidade de Resolver Problemas (Simon Haykin, 2003); Classificação SRL: Fonte: Inteligence: The Eye, The Brain and The Computer; Capacidade de Expressar e Resolver Problemas; Capacidade de Aprender Informações Explícita/Implícita; Controle de Seleção de Operações/Encerramento; 8

Introdução Visão Geral do Conhecimento - DADO SÍNTESE ANÁLISE COMPREENSÃO CONHECIMENTO INFORMAÇÃO DADO Dados: elemento puro quantificável sobre determinado EVENTO. 9

Introdução Visão Geral do Conhecimento - INFORMAÇÃO SÍNTESE ANÁLISE COMPREENSÃO CONHECIMENTO INFORMAÇÃO DADO Informação: é o Dado analisado e Contextualizado. 10

Introdução Visão Geral do Conhecimento - CONHECIMENTO SÍNTESE ANÁLISE COMPREENSÃO CONHECIMENTO INFORMAÇÃO DADO Conhecimento: habilidade de criar um Modelo Mental que descreva o objeto (ações/decisões). 11

Introdução Visão Geral do Conhecimento 3 NÍVEIS MAIS ALTO SÍNTESE ANÁLISE COMPREENSÃO CONHECIMENTO INFORMAÇÃO DADO Compreensão, análise e síntese: necessários a tomada de decisões inteligentes a partir do nível do conhecimento. 12

Introdução Visão Geral do Conhecimento Visão Sistêmica SINTESE ANÁLISE COMPREENSÃO CONHECIMENTO INFORMAÇÃO DADO 1980: desafios de migrar DADOS para INFORMAÇÃO (Sistemas de Informação). 13

Introdução Visão Geral do Conhecimento Visão Sistêmica SINTESE ANÁLISE COMPREENSÃO CONHECIMENTO INFORMAÇÃO DADO 1990: desafios era criar sistemas capazes de representar e processar o conhecimento. 14

Introdução Visão Geral do Conhecimento Visão Sistêmica Sistemas Inteligentes DECISÃO: É O USO EXPLÍCITO DO CONHECIMENTO. 15

Introdução Terminologia (1/3) Agentes Baseados em Conhecimento: Linguagens de Representação do Conhecimento: representa asserções sobre o mundo; Sentenças: expressa em linguagens de representação do conhecimento; Inferência: derivação de novas sentenças a partir de sentenças antigas; Sintaxe: especificação de sentenças bem-formada; Semântica: expressa o significado de sentenças. 16

Introdução Terminologia (2/3) Agentes Baseados em Conhecimento Base de Conhecimento: conhecimento ontológico (regras, redes semânticas,... ) ex. o homem é um animal Regras (estrutura de inferência) ex. Todo animal tem uma mãe Fatos ex. existem muitos meninos abandonados Heurísticas (para resolução de conflitos) ex. prefira a regra disparada mais recentemente 17

Introdução Terminologia (3/3) Agentes Baseados em Conhecimento ASK (pergunte): é responsável pela Estratégia de Inferência; TELL (informe): adiciona conhecimento a Base de Conhecimento - BC; FECTH:é responsável pela busca de Sentenças S na BC; STORE: adiciona cada conjunto de Sentenças S na BC; 18

Agenda Parte II Aspectos Gerais dos SRL Aspectos Gerais dos SRL Sistemas de Raciocínio; Pontos comuns: Técnica de Unificação; Técnicas de Recuperação; Técnicas de Indexação; Forward Chaining e Backward Chaining. Parte II Aspectos Gerais dos SRL Conceituação de Sistemas de Raciocínio Lógico partindo do Processo de Raciocínio até as Linguagens de Representação do Conhecimento; 19

Raciocínio: Raciocínio Conceituação Processo de construção de novas sentenças a partir de outras sentenças. Mundo Representação semântica fatos segue-se implica fatos semântica Sentenças sentenças 20

Raciocínio Paradigmas Simbólico: metáfora lingüística Ex. sistemas de produção, agentes,... Conexionista: metáfora cerebral Ex. redes neurais Evolucionista: metáfora da natureza Ex. algoritmos genéticos, vida artificial,... Estatístico/Probabilístico: raciocínio incerto Ex. Redes Bayesianas, sistemas difusos 21

Sistemas de Raciocínio Linguagens de Representação do Conhecimento Utilizam: Linguagem de Representação do Conhecimento (KRL) Linguagens Lógicas Lógica Proposicional: Fatos; Lógica de 1ª Ordem: Fatos, Objetos e Relações; Lógica Temporal: Fatos, Objetos, Relações e Tempo; Regras de Produção: Pares de condição-ação; Linguagens Objetos Frames; Redes Semânticas; Scripts; Linguagem de Classes; Linguagens de Atores; 22

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

Sistemas de Raciocínio Tipos de Inferência Dedução: a partir de fatos de conhecimento representados de forma lógica, utiliza-se regras de inferência válidas para gerar novos fatos. Ex.: Se há fogo, há fumaça. Abdução: inverso da dedução. Ex.: Se há fumaça, há fogo. Indução: parte-se dos fatos até as regras gerais. Ex.: Se a Carla do Tchan não canta bem, e a Sheila do Tchan também não canta bem, então nenhuma dançarina canta bem. Analógico: resolução de problemas baseada em problemas já resolvidos. Ex.: Demonstração automática de teoremas. 24

Provadores de Teoremas Sistemas de Raciocínio : Categorias (1/3) Utilizam resolução para provar sentenças em Lógica de 1ª Ordem. Usados para tarefas matemáticas e de raciocínio científico. Exemplos: SAM, AURA, OTTER. Linguagens de Programação Lógica Restringem a lógica, não permitindo o tratamento completo da negação, disjunção e/ou igualdade. Geralmente usam Encadeamento Regressivo. Podem possuir algumas características não lógicas das linguagens de programação. Exemplos: Prolog, MRS, Life. 25

Sistemas de Raciocínio : Categorias (2/3) Sistemas de Redes Semânticas Consistem em nós conectados por arcos, onde os nós representam usualmente objetos do mundo e arcos a relação binária entre eles. Exemplos: 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: OWL, FRAIL, KODIAK. 26

Sistemas de Raciocínio : Categorias (3/3) Sistemas de Lógica Descritiva Expressam e raciocinam com definições complexas de objetos e classes, e relações entre eles, utilizando redes semânticas como princípio de organização. Exemplos: KL-ONE, CLASSIC, LOOM. Sistemas de Produção A representações padrões desses sistemas são as implicações. As ações são conseqüências das implicações. As ações podem ser inseridas e removidas da Base de Conhecimento. Utilizam Encadeamento Progressivo. Usualmente possuem mecanismos de resolução de conflito. Exemplos: OPS-5, CLIPS, SOLAR. 27

Sistema de Raciocínio Arquitetura a m b i e n t e Interface sensores Tell Ask efetuadores Base de Conhecimento Máquina de Inferência Mecanismo de Aprendizagem Tell Agente SHELL 28

Sistema de Raciocínio Arquitetura Módulos Estruturais Shell Módulo Coletor de Dados - MCD; Motor de Inferência MI; Módulo de Explicações ME; Memória de Trabalho MT; Base de Conhecimento BC; Interface 29

Sistema de Raciocínio Arquitetura Sistemas Convencionais x Simbólicos Engenheiro do Conhecimento Especialista 30

Sistemas de Raciocínio Operações Básicas Adicionar um fato novo na Base de Conhecimento. Dado um fato novo, gerar novas conclusões. Decidir se a Base de Conhecimento atende a uma consulta realizada. Decidir se uma consulta está explicitamente armazenada na Base de Conhecimento. Remover uma sentença da Base de Conhecimento. 31

Manutenção de uma Base de Conhecimento Técnicas para manter uma Base de Conhecimento (BC) com recuperação eficiente: Unificação Recuperação Indexação Baseada em Tabelas Baseada em Árvores 32

Manutenção BC: Unificação Uma rotina de unificação UNIFY recebe duas sentenças atômicas p e q e retorna uma substituição que faça p e q se tornarem idênticas. Fórmula: UNIFY(p,q)=θ onde SUBST(θ,p)= SUBST(θ,q) Exemplo: UNIFY(Conhecimento(João,x),Conhecimento(João,Maria)={x/Maria}) 33

Manutenção BC: Técnicas de Recuperação Procedimentos FETCH e STORE (1/2) FETCH e STORE são duas funções que simplificam as funções ASK e TELL na implementação física de uma BC. FETCH é responsável por achar sentenças na BC que unificam com a consulta ou, no mínimo, têm a mesma estrutura sintática. STORE é responsável pela estratégia de inferência que resulta em uma série de chamadas para FETCH. Exemplo: STORE (BC, S) Base de Conhecimento TELL (BC, A ^ B) => [A, B, C, D] TELL (BC, C ^ D) FETCH (BC, Q) 34

Manutenção BC: Técnicas de Recuperação Procedimentos FETCH e STORE (2/2) FETCH leva um tempo O(n) em uma BC com n elementos. STORE leva um tempo O(1) para adicionar uma conjunção na BC. Se quisermos ter certeza de que nenhuma duplicação (redundância) será adicionada, então STORE é também O(n), o que é impraticável! 35

Manutenção BC: Técnicas de Indexação Indexação Baseada em Tabelas (1/4) Utilização de tabelas hash. Estrutura de Dados (Store/Fetch) indexando fixed keys; Armazenar apenas true ou false na chave da tabela; Complexidade O(1) para FETCH e STORE; Problemas: Só se aplica a sentenças atômicas; Impossibilidade de tratar variáveis; 36

Manutenção BC: Técnicas de Indexação Indexação Baseada em Tabelas (2/4) Solução: Tabelas mais complexas; Chaves: Símbolos de predicados; Valores: Literais (positivos e negativos); Listas de sentenças (com o predicado na conclusão e na premissa). 37

Manutenção BC: Técnicas de Indexação Indexação Baseada em Tabelas (3/4) Seja a Base de Conhecimento BC: Irmão (Ricardo, João) Irmão (Pedro, Paulo) ^ Irmão (Paulo, Tiago) Irmão (Ana, Samuel) Irmão (x, y) => Masculino (x) Irmão (x, y) ^ Masculino (y) => Irmão (y, x) Masculino (Paulo) ^ Masculino (Pedro) ^... ^ Masculino (Ana)... 38

Manutenção BC: Técnicas de Indexação Indexação Baseada em Tabelas (4/4) Chave Afirmação Negação Conclusão Premissa Irmão Irmão (Ricardo, João) Irmão (Pedro, Paulo) Irmão (Paulo, Tiago) Irmão (Ana, Samuel) Irmão (x,y) ^ Masculino (y) => Irmão (y, x) Irmão (x,y) ^ Masculino (y) => Irmão (y, x) Irmão (x, y) => Masculino (x) Masculino Masculino (Paulo) Masculino (Pedro)... Masculino (Ana)... Irmão (x,y) => Masculino (x) Irmão (x,y) ^ Masculino (y) => Irmão (y, x) 39

Manutenção BC: Técnicas de Indexação Indexação Baseada em Árvores (1/3) Apropriada para casos onde há muitas cláusulas para um símbolo de predicado; Entradas são tabelas; Árvores como indexação combinada; Problemas com variáveis; Combinações das chaves (2 n ); 40

Manutenção BC: Técnicas de Indexação Exemplo: Base de conhecimento: Contribuinte (João, 2) Contribuinte (Pedro, 0) Contribuinte (Paulo, 4) Indexação Baseada em Árvores (2/3) Contribuinte Primeiro argumento?? Predicado?? João Paulo Pedro Segundo Primeiro argumento?? Primeiro Segundo argumento?? Primeiro Segundo argumento?? 2 0 4 41

Manutenção BC: Técnicas de Indexação Indexação Baseada em Árvores (3/3) FETCH (BC,Contribuinte (p, 02138, i, 2)) Base de Conhecimento Contribuinte (João, 02138, 1000, 2) Contribuinte (Pedro, 02138, 2000, 0) Contribuinte (Maria, 03001, 1000, 1) Contribuinte (Teresa, 03001, 1000, 2) Primeiro argumento? João Contribuinte CEP 02138 03001 Nome Pedro Salário 1000 2000 Dependentes 2 0 Salário Maria Predicado? Nome 1000 Dependentes 1 2 Teresa 42

Modos de Raciocínio Encadeamento Progressivo e Regressivo Encadeamento Progressivo (Forward Chaining): parte-se de sentenças (regras de inferência) da Base de Conhecimento para produzir novas conclusões (afirmações); também pode ser chamado procedimento dirigido a dados (Data Driven), pois o processo de inferência não é direcionado para resolver um problema particular. Encadeamento Regressivo (Backward Chaining): parte-se de uma hipótese que se quer provar, procurando regras na Base de Conhecimento retroativamente para analisar as assertivas que suportam a hipótese em questão; se a premissa (antecedente) é uma conjunção, seus termos são processados um a um para que seja obtido o seu unificador. 43

Modos de Raciocínio Exemplo: Problema do Criminoso (1/2) A lei diz que é crime um americano vender armas para nações hostis. A nação Cuba, um inimigo dos EUA, tem alguns mísseis, e todos os mísseis foram vendidos a eles pelo Coronel Peter, que é americano. Provar que Peter é um criminoso. IA Simbólica: Conhecimento, Linguagem e Inferência Base de Conhecimento R4: Americano(x) ^ Arma(y) ^ Nação(z) ^ Hostil(z) ^ Vende(x, z, y) => Criminoso(x) R2: Possui(Cuba, x) ^ Míssil(x) => Vende(Peter, Cuba, x) R3: Míssil(x) => Arma(x) R1: Inimigo(x, EUA) => Hostil(x) 44

Modos de Raciocínio Exemplo: Problema do Criminoso (2/2) Americano(Peter) Nação(Cuba) Inimigo(Cuba, EUA) Possui(Cuba, M1) Míssil(M1) R1 R2 Hostil(Cuba) Vende(Peter, Cuba, M1) R4 Criminoso(Peter) R3 Arma(M1) 45

Agenda Parte III Principais Categorias de SRL Técnicas de Representação do Conhecimento Sistemas de Produção; Sistemas de Redes Semântica; Sistemas de Frames. Parte III Principais Categorias de SRL Conceituação de Técnicas de Representação do Conhecimento partindo de Sistemas de Produção, Sistemas de Redes Semânticas e Sistemas de Frames até os sistemas híbridos (Regras, Lógica e OO). 46

Agenda Parte III Principais Categorias de SRL Sistemas de Produção 47

Pares de condição-ação Sistemas de Produção Aspectos Gerais Se condição (ou premissa ou antecedente) ocorre; então ação (resultado, conclusão ou conseqüente) deverá (ou deveria) ocorrer. Podem ser vistas como uma simulação do comportamento cognitivo de especialistas humanos. Representam o conhecimento de forma modular. Cada regra representa um pedaço de conhecimento independente cuidado: a consistência deve ser mantida. 48

Sistemas de Produção Exemplos Se o agente percebe luz do freio do carro em frente acesa então ele deve frear o carro (regra de ação) Se veículo tem 4 rodas e tem um motor então veículo é um automóvel (novo conhecimento) São chamadas de regras de produção porque, quando utilizadas com raciocínio progressivo, produzem novos fatos a partir dos fatos e regras da BC. 49

Sistemas de Produção Características São sistemas baseados em regras. Características Separam o conhecimento permanente do conhecimento temporário. Seus módulos são estruturalmente independentes. Sua modularidade facilita a independência funcional. Podem utilizar uma variedade de esquemas de controle. 50

Base de Conhecimento Conhecimento Permanente fatos, asserções regras de produção estratégias de resolução de problemas estratégias de recuperação... Sistemas de Produção Arquitetura Memória de Trabalho Conhecimento Volátil hipóteses atuais objetivos atuais estado atual do problema Resultados Intermediários... Conhecimento do problema ativo asserções relevantes regras relevantes... Meta-conhecimento Estratégia para resolução de conflito Mecanismo de Inferência Agenda conjunto de possíveis regras a serem aplicadas 51

Sistemas de Produção Componentes Componentes Memória de Trabalho de um sistema consiste em uma coleção de assertivas verdadeiras. Base de Regras é o conjunto de sentenças (regras de inferência) que determinam as ações que devem ser tomadas de acordo com as percepções. Motor de Inferência é a parte do sistema que determina o método de raciocínio, utiliza estratégias de busca e resolve conflitos. 52

Três Fases Sistemas de Produção Funcionamento Casamento; Resolução de Conflitos; Execução. 53

Sistemas de Produção: Funcionamento Três fases: casamento, resolução de conflitos e execução Casamento O sistema, em cada ciclo, computa o subconjunto de regras cuja esquerda é satisfeita pelos conteúdos atuais da memória de trabalho. A forma mais simples de realizar unificação é ineficiente, então como solução temos o Algoritmo Rete (rede). Vantagens do Algoritmo Rete: elimina duplicações entre regras; elimina duplicações ao longo do tempo. 54

Sistemas de Produção: Funcionamento Três fases: casamento, resolução de conflitos e execução Resolução de Conflitos O sistema decide quais as regras que devem ser executadas. Nesta fase podemos utilizar algumas estratégias de controle: Não Duplicação: não executar a mesma regra nos mesmos argumentos duas vezes. Recency: preferir regras que se referem a elementos da Memória de Trabalho criados recentemente. Especificidade: preferir regras que são mais específicas. Prioridade de Operação: preferir ações com prioridade maior, especificada por alguma categoria. Execução de Ações 55

Um Sistema Dedutivo que Identifica Animais: ZOOKEEPER - Exemplo Características do ZOOKEEPER: utiliza regras sem antecedentes longos; gera assertivas intermediárias como saídas das regras; combina estas assertivas e aquelas originais para produzir uma conclusão; observa hábitos e características físicas para identificar os animais; neste exemplo, pode distinguir quatro animais: leopardo, tigre, girafa e zebra. 56

Um Sistema Dedutivo que Identifica Animais: ZOOKEEPER REGRAS (1/5) Regra Z1 Z1 Se?x tem cabelo Então?x é um mamífero Regra que observa características físicas. Regra Z2 Z2 Se?x dá leite Então?x é um mamífero Regra que determina a classe biológica dos animais, onde Z2 observa hábitos. 57

Um Sistema Dedutivo que Identifica Animais: ZOOKEEPER REGRAS (2/5) Regra Z3 e Z4 Z3 Se?x é um mamífero?x come carne Então?x é um carnívoro Z4 Se?x é um mamífero?x tem dentes pontudos?x tem garras?x tem olhos pontiagudos Então?x é um carnívoro As regras determinam se o animal é carnívoro. Z3 observa hábitos e Z4 observa características físicas. Estas regras já utilizam assertivas geradas por regras anteriormente definidas. 58

Um Sistema Dedutivo que Identifica Animais: ZOOKEEPER REGRAS (3/5) Regra Z5 e Z6 Z5 Z6 Se?x é um mamífero?x tem cascos Então?x é um ungulado Se?x é um mamífero?x rumina Então?x é um ungulado As regras determinam se o animal é ungulado. Z5 observa características físicas e Z6 observa hábitos. 59

Um Sistema Dedutivo que Identifica Animais: ZOOKEEPER REGRAS (4/5) Regra Z7 e Z8 Z7 Z8 Se?x é um carnívoro?x tem cor amarela tostada?x tem manchas escuras Então?x é um leopardo Se?x é um carnívoro?x tem cor amarela tostada?x tem listas pretas Então?x é um tigre Regras para identificar os animais carnívoros. 60

Um Sistema Dedutivo que Identifica Animais: ZOOKEEPER REGRAS (5/5) Regra Z9 e Z10 Z9 Z10 Se?x é um ungulado?x tem pernas longas?x tem pescoço comprido?x tem cor amarela tostada?x tem manchas escuras Então?x é uma girafa Se?x é um ungulado?x tem cor branca?x tem listas pretas Então?x é uma zebra Regras para identificar os animais ungulados. 61

Encadeamento Progressivo no ZOOKEEPER Para identificar um animal com o ZOOKEEPER: ALGORITIMO: até as regras não produzirem novas assertivas; até o animal ser identificado. Para cada regra Tente casar cada um dos antecedentes das regras com os fatos conhecidos. Se todos os antecedentes de regras estão casados, execute o conseqüente, a menos que já exista uma assertiva idêntica. Repita para todas as alternativas que devem ser testadas. 62

Memória de Trabalho para Catatau Identifique Que Animal é Catatau Base de Conhecimento Conhecimento Permanente fatos, asserções... Memória de Trabalho Dados simbólicos Conhecimento do problema ativo Z1, Z2, Z3, Z4, Z5, Z6, Z7, Z8,Z9 e Z10................ Meta-conhecimento... Mecanismo de Inferência... Agenda Catatau tem cabelo. Catatau rumina. Catatau tem pernas longas. Catatau tem cor amarela tostada. Catatau tem pescoço comprido. Catatau tem manchas escuras. 63

Exemplo: Encadeamento Progressivo Verificar que tipo de animal é Catatau. Solução: Catatau tem cabelo, logo é um mamífero (dispara Z1); Catatau rumina e é um mamífero, logo é um ungulado (dispara Z6); Catatau é um ungulado, tem pernas longas, tem cor amarela tostada, tem pescoço comprido e tem manchas escuras, logo é uma girafa (dispara Z9). 64

Exemplo: Encadeamento Progressivo (Continuação) O fluxo de informações se dá através de uma série de regras antecedente-conseqüente, a partir das assertivas para as conclusões. Tem cabelo Rumina Z1 Tem pernas longas Tem pescoço comprido Tem cor amarela tostada Tem manchas escuras É um mamífero Z6 É um ungulado Z9 É uma girafa 65

Sistemas de Produção: Funcionamento Vantagens e Limitações Vantagens As regras são de fácil compreensão. Inferência e explicações são facilmente derivadas. Manutenção é relativamente simples, devido a modularidade. Incerteza é facilmente combinada com as regras. Cada regra é (normalmente) independente das outras. Desvantagens Conhecimento complexo requer muitas (milhares de) regras. Esse excesso de regras cria problemas para utilização e manutenção do sistema. Não é robusto e não aprende. A aquisição do conhecimento é difícil. 66

Agenda Parte III Principais Categorias de SRL Sistemas de Redes Semânticas 67

Sistemas de Redes Semânticas Aspectos Gerais Histórico Redes Semânticas foram propostas em 1913 por Selz como uma explicação a fenômenos psicológicos. Em 1966, Quillian implementou essas redes e mostrou como o conhecimento semântico poderia ser representado como relacionamento entre dois objetos. Uma rede semântica é uma representação na qual Existem nós que representam entidades e links (predicados) que representam relacionamentos entre essas entidades; cada link conecta um nó origem até um nó destino; normalmente, os nós e links denotam entidades de domínio específico. 68

Sistemas de Redes Semânticas Forma mais flexível e intuitiva de representar conhecimento. Suportam herança de propriedades. Relações Ako (a-kind-of): relações entre classes é-um (is-a): relações entre classes e instâncias uma entidade pertence a uma classe mais alta ou uma categoria de objetos. tem-um (has-a): identifica características ou atributos das entidades parte-de (part-of): identifica características ou atributos das entidades variados: identifica características gerais 69

Sistemas de Redes Semânticas Base de conhecimento - BC nós e links da rede. Máquina de inferência busca e casamento de padrões a busca se dá para frente e para trás através dos links. A busca pode ser usada de várias maneiras para se extrair informações como uma ferramenta explicativa; para explorar exaustivamente um tópico; para encontrar o relacionamento entre dois objetos. 70

Sistemas de Redes Semânticas Exemplo Animal faz Comer Ako Ako Pássaro Mamífero tem Pêlos Ako Cão 71

Sistemas de Redes Semânticas Busca Como Ferramenta Explicativa Para provar a declaração Cães comem pode-se supor que cães comem, e usar busca sobre a rede para provar a hipótese. Buscando a partir do nó Cão, temos: Cão é-um mamífero Mamífero é-um animal Animal faz comer Isto é uma prova para Cães comem 72

Sistemas de Redes Semânticas Explora Exaustivamente um Tópico Para derivar todo o conhecimento sobre cães, usa-se Busca em Largura a partir do nó Cão Cães são Mamíferos Cães têm Pêlos Cães são Animais Cães Comem 73

Sistemas de Redes Semânticas Relacionando Tópicos Para verificar se Cães e Pássaros estão relacionados, pode-se executar, a partir de ambos os nós, uma Busca em Largura. A interseção entre os nós visitados nos dá uma pista sobre o relacionamento entre os nós iniciais. Isto é chamado ativação distribuída ou interseção de busca. 74

Sistemas de Redes Semânticas Vantagens Representação visual fácil de entender. Flexibilidade na manipulação de nós e links adição, exclusão, modificação Economia herança via relações é-um e ako. Capta senso-comum semelhante ao armazenamento de informações no cérebro. 75

Sistemas de Redes Semânticas Limitações Busca em redes semânticas grandes pode ser muito ineficiente. Não há homogeneidade na definição de nós e links. Hereditariedade pode causar dificuldades no tratamento de exceções. Pode haver conflito entre características herdadas. É difícil representar conhecimento procedimental seqüenciamento e tempo não estão explícitos. Menos expressiva que a Lógica de Primeira Ordem não há quantificadores. 76

Agenda Parte III Principais Categorias de SRL Sistemas de Frames 77

Histórico Sistemas de Frames (Quadros) Aspectos Gerais Artigos publicados por Minsky (1974), Winston (1975) Haugeland (1981), Brachman e Levesque (1985) Características Um frame é identificado por um nome e descreve um objeto complexo através de um conjunto de atributos Um Sistema de Frames é um conjunto de frames organizados hierarquicamente (Semelhante a Redes Semânticas). São uma evolução das Redes Semânticas: nós são substituídos por frames arcos são substituídos por atributos (slots) procedimentos podem ser anexados a um frame 78

Sistemas de Frames Atributos (Slots) Frames Possuem pelo menos dois atributos: Nome Ako ou is-a A fim de melhorar a estruturação (hierarquia), privilegiam dois tipos de relações: ako: relação entre classe e sub-classe is-a: relação entre classe e instância. Cada atributo aponta para um outro frame ou para um tipo primitivo, ex. string; consiste em um conjunto de facetas (atributos de atributos). 79

Sistemas de Frames Exemplo: Classes e Instâncias Animal faz comer Pássaro Ako Comer Mamífero Ako tem pêlos Babalu é-um Cão Ako 80

Sistemas de Frames Facetas Descrevem conhecimento ou algum procedimento relativo ao atributo. Propriedades Valor: especifica o único valor possível. Valor default: especifica o valor assumido pelo atributo caso não haja nenhuma informação a esse respeito. Tipo: indica o tipo de dado do valor. Domínio: descreve os valores possíveis para o atributo. Procedimentos Demons como os triggers nos bancos de dados 81

Sistemas de Frames Uma Representação Abstrata de um Frame < Nome do Frame> < atributo1 > < faceta1 >: valor < atributo2 > < faceta1 >: valor < faceta2 >: valor < faceta3 >: valor < atributo3 > < faceta1 >: valor < faceta2 >: valor < faceta3 >: valor Os frames integram conhecimento declarativo sobre objetos e eventos e conhecimento procedimental sobre como recuperar informações ou calcular valores. 82

Sistemas de Frames Procedimentos Demons Definição São procedimentos anexados aos frames, disparados por consultas ou atualizações. Podem inferir valores para atributos a partir de valores de outros atributos especificados anteriormente em qualquer frame do sistema. Procedimentos Demons: when-requested: quando o valor é pedido mas não existe ainda when-read: quando valor é lido when-written: quando valor é modificado 83

Ako Cômodo Sistemas de Frames Exemplo: Procedimentos Demons Ako: Lugar-coberto Atributo Default Tipo Se-necessário Nº de paredes Formato Altura Área Volume 4 retangular 3 número símbolo número número número Área * Altura Sala Ako: Cômodo Atributo Default Tipo Mobiliário Finalidade Área (sofá,mesa,cadeiras) convivência 25 lista de símbolos símbolo número 84

Sistemas de Frames Exemplo: Sistema de Frame Mobília... Ana... é-um: Pessoa... Cadeira... Ako: Mobília verde é-um: String... Cadeira-27 é-um: Cadeira dono: cor: tem-um: Assento estofamento: tamanho:... couro é-um: 85

Sistemas de Frames Herança de Propriedades Três tipos de informações podem ser de herdadas valor (= POO) procedimento (= POO) valor default Idéia: herdar das classes superiores em caso de conflito, vale a informação mais específica Existem dois tipos de herança: Herança simples existe uma única super-classe para cada classe Herança múltipla uma classe pode ter mais de uma super-classe, podendo herdar propriedades ao longo de diversos caminhos diferentes (= o caos) 86

Sistemas de Frames Funções (historicamente) Reconhecer que uma dada situação pertence a uma certa categoria (matching) ex. reconhecimento visual de uma sala de aula Interpretar a situação e/ou prever o que surgirá em termos da categoria reconhecida (matching) ex. pessoa com revolver (revolver arma -> perigo) Capturar propriedades de senso comum sobre pessoas, eventos e ações foi a primeira tentativa de estruturar conhecimento declarativo sem usar regras. Deu origem ao que chamamos hoje de Ontologias! 87

Parte III Principais Categorias de SRL Estado da Arte Linguagens de Representação Orientação a Objetos Associado a Regras de Produção Orientação a Objetos: Objetos, Relações e Comportamento; Regras de Produção: Processo de Raciocínio; Fonte: RECOPE-IA 88

Parte III Principais Categorias de SRL SRL - Exemplo JTP- A Query Answering System For Knowledge Represented in DAML (www. www.ksl.stanford.edu acessado 16/08/2004); Fonte:Knowledge Systems Laboratory, Stanford University; Arquitetura Híbrida: Provador de Teorema baseado em First-order logic; Suite de raciocínio para finalidades especiais; Dispatchers e APIs para reciocínio em Java; Explicita a Inferência (DAML+OIL ou outra BC) Forward Chaining; Aplicação: Análise de Inteligência; controle autônomo do sistema complexo Perguntas-repontas em Web Semântica. 89

Conclusão Processo de Desenvolvimento de um SBC (SRL) Fonte: RECOPE-IA 90

Conclusão Principais Diferenças entre Sistemas: Convencionais e SRL Estrutura de Dados Representação do Conhecimento; Dados e Relações entre Dados Conceito, Relações entre Conceitos e Regras; Tipicamente usa algoritmos determinísticos; Busca Heurística; Conhecimento embutido no código do programa; Conhecimento representando explicitação do programa que o manipula e interpreta; Explicação do raciocínio é difícil. Podem e devem explicar seu raciocínio; 91

Conclusão Visão Evolutiva das Aplicações Computacionais Aplicações (Monolíticas) Cobol, Fortran, Etc... Aplicações SQL GUI Workflow... Inteligência 92

Referências Bibliográficas Rezende, Solange Oliveira (organização). Sistema Inteligentes Fundamentos e Aplicações.. RECOPE-IA Rede Cooperativa de Pesquisa em Inteligência Artificial, 2003. Hayes-Roth, Frederick; Waterman, D. A.. Pattern-Directed Inference Systems. Academic Press Inc., 1978, p. 577-601 Hayes-Roth, Frederick. Encyclopedia of Artificial Intelligence. p. 287-298 Jackson, Peter. Introduction to Expert Systems. Second Edition. Addison-Wesley Publishing Company, 1990, p. 206-210 Russel, Stuart; Norvig, Peter. Artificial Intelligence. A Modern Approach. Prentice-Hall Inc., 1995, p. 272-276, 297-303, 313-316 Winston, Patrick Henry. Artificial Intelligence. Addison-Wesley Publishing Company, 1992, p. 119-160 93

Se o ser humano pode, por que não a máquina? (tese de Church-Turing) 94