UPE – Caruaru – Sistemas de Informação Disciplina: Inteligência Artificial Prof.: Paulemir G. Campos Sistemas Especialistas 31/05/2017 IA - Prof. Paulemir Campos 1 Roteiro da Aula Representando e Usando o Conhecimento de Domínio; Shells de Sistemas Especialistas; Explanação; Aquisição de Conhecimento; Aplicações; Referências. 31/05/2017 IA - Prof. Paulemir Campos 2 Representando e Usando o Conhecimento de Domínio 31/05/2017 IA - Prof. Paulemir Campos 3 Introdução Sistemas Especialistas (SE) 31/05/2017 podem ser definidos como programas de computador desenvolvidos para representar o conhecimento humano num domínio específico; IA - Prof. Paulemir Campos 4 Introdução Sistemas Especialistas (SE) 31/05/2017 ou ainda, são programas computacionais que empregam o conhecimento para resolver tarefas que necessitam da presença de um especialista. IA - Prof. Paulemir Campos 5 Introdução Sistemas Especialistas são programas complexos de IA; A técnica de representação de conhecimento de domínio mais largamente usada em SE é através de regras de produção tipo “Se/Então”. 31/05/2017 IA - Prof. Paulemir Campos 6 Primeiros SE No início da década de 1970, pesquisadores em IA perceberam limitações: 31/05/2017 dos métodos gerais de solução de problemas; e, das técnicas de busca desenvolvidas na década anterior. IA - Prof. Paulemir Campos 7 Primeiros SE Estes pesquisadores notaram que para resolver determinados problemas complexos era requerido conhecimento específico sobre o domínio de aplicação de interesse, em lugar de conhecimento amplo e geral que se aplica a inúmeros domínios. 31/05/2017 IA - Prof. Paulemir Campos 8 Primeiros SE O primeiro SE bem sucedido foi o DENDRAL (1969): 31/05/2017 Inferia sobre estruturas moleculares de dados coletados por um espectrômetro. IA - Prof. Paulemir Campos 9 Primeiros SE Já o segundo SE que destacou-se foi o MYCIN (1971): 31/05/2017 Continha regras para diagnosticar infecções de bactérias no sangue e meningite. IA - Prof. Paulemir Campos 10 SE Comerciais A partir dos anos 1980, os SE construídos eram principalmente de uso comercial, como o: 31/05/2017 CATS-1 (General Electric): auxiliava o pessoal de manutenção de locomotivas; e, o XCON (DEC): ajudava a configurar sistemas de computadores. IA - Prof. Paulemir Campos 11 Shells de Sistemas Especialistas 31/05/2017 IA - Prof. Paulemir Campos 12 Introdução Os primeiros SE foram construídos usando alguma linguagem de programação: 31/05/2017 declarativa, como Prolog; ou, funcional, como LISP. IA - Prof. Paulemir Campos 13 Introdução Percebeu-se que os SE desenvolvidos têm em comum: 31/05/2017 Um conjunto de representações declarativas, principalmente regras; E, um interpretador para essas representações. IA - Prof. Paulemir Campos 14 Introdução Assim, foi possível separar o interpretador da representação do conhecimento de domínio específico, permitindo criar um sistema para construir novos SE por adicionar o conhecimento relativo ao novo domínio. 31/05/2017 IA - Prof. Paulemir Campos 15 Introdução Esse sistema para criar SE é denominado de shell. Um influente exemplo de shell é o EMYCIN (Empty MYCIN) derivado do MYCIN. Outro exemplo de shell é o Expert SINTA. 31/05/2017 IA - Prof. Paulemir Campos 16 Estrutura de um SE O desenvolvimento de um típico SE é constituído dos seguintes elementos básicos: Interface: um SE deve possuir duas interfaces: 31/05/2017 interface com o usuário; e, interface de desenvolvimento. IA - Prof. Paulemir Campos 17 Estrutura de um SE O desenvolvimento de um típico SE é constituído dos seguintes elementos básicos (Cont.): 31/05/2017 Aquisição de Conhecimento: é o módulo do SE responsável por acumular, transferir e transformar o expertise do especialista para a Base de Conhecimento; IA - Prof. Paulemir Campos 18 Estrutura de um SE O desenvolvimento de um típico SE é constituído dos seguintes elementos básicos (Cont.): 31/05/2017 Base de Conhecimento: todo o conhecimento de domínio está representado neste módulo; IA - Prof. Paulemir Campos 19 Estrutura de um SE O desenvolvimento de um típico SE é constituído dos seguintes elementos básicos (Cont.): 31/05/2017 Motor de Inferência: contém o conjunto de métodos que selecionam e aplicam o conhecimento contido na Base de Conhecimento do SE. IA - Prof. Paulemir Campos 20 Estrutura de um SE Personagens envolvidos no desenvolvimento de um SE: 31/05/2017 Engenheiro do Conhecimento: responsável por administrar o desenvolvimento de um SE; Especialista: tem o conhecimento de domínio, formula problemas e propõe soluções; IA - Prof. Paulemir Campos 21 Estrutura de um SE Personagens envolvidos no desenvolvimento de um SE (Cont.): 31/05/2017 Programador: codifica o SE; Usuário: é o cliente do SE; e, Equipe Técnica: fornece suporte técnico ao usuário. IA - Prof. Paulemir Campos 22 Estrutura de um SE Diagrama de Desenvolvimento de um Sistema Especialista 31/05/2017 IA - Prof. Paulemir Campos 23 Explanação 31/05/2017 IA - Prof. Paulemir Campos 24 Introdução Objetivando que um SE seja uma ferramenta efetiva, deve-se prover uma fácil interação entre usuário e sistema; Para facilitar esta interação, um SE deve ter as seguintes capacidades: 31/05/2017 Explanação; E, Atualização de Conhecimento. IA - Prof. Paulemir Campos 25 Explanação Significa basicamente a capacidade que um SE deve ter de explicar com clareza o raciocínio empregado na obtenção de uma solução. Esta funcionalidade é imprescindível para a aceitação de SE em aplicações críticas, como domínios médicos, usinas nucleares, etc. 31/05/2017 IA - Prof. Paulemir Campos 26 Atualização de Conhecimento Envolve a aquisição de novos conhecimentos e modificação do conhecimento antigo do SE; Isto é muito importante para manter a base de conhecimento de um SE tão completa e correta quanto possível. 31/05/2017 IA - Prof. Paulemir Campos 27 TEIRESIAS Foi o primeiro programa contendo: Explanação; E, Aquisição de Conhecimento. Serviu como front-end para o SE MYCIN. 31/05/2017 IA - Prof. Paulemir Campos 28 Aquisição de Conhecimento 31/05/2017 IA - Prof. Paulemir Campos 29 Introdução Em SE, aquisição de conhecimento é: um processo de extração, transformação e transferência de informação de uma fonte de conhecimento para um programa de computador. A principal fonte de conhecimento de um SE é um especialista de domínio. 31/05/2017 IA - Prof. Paulemir Campos 30 Introdução É um estágio fundamental no desenvolvimento de um SE, e também o mais problemático. Isto porquê, extrair conhecimento de um especialista de domínio não é uma tarefa fácil. 31/05/2017 IA - Prof. Paulemir Campos 31 Principais Técnicas de Aquisição de Conhecimento As principais técnicas de aquisição de conhecimento são: 31/05/2017 Entrevistas; Protocolos; Análise; Aquisição Automática. IA - Prof. Paulemir Campos 32 Entrevistas Existem dois tipos básicos de entrevistas para aquisição de conhecimento: 31/05/2017 as estruturadas; e, as desestruturadas. IA - Prof. Paulemir Campos 33 Entrevistas Desestruturadas Entrevistas desestruturadas apresentam uma série de problemas: 31/05/2017 1. Raramente fornecem descrições completas ou bem estruturadas do processo cognitivo; 2. Os especialistas no domínio comumente encontram dificuldade para se expressar devido à falta de estrutura do processo; IA - Prof. Paulemir Campos 34 Entrevistas Desestruturadas Entrevistas desestruturadas apresentam uma série de problemas (Cont.): 31/05/2017 3. Os dados obtidos neste tipo entrevistas de aquisição de conhecimento não são relacionados, aumentando assim o trabalho de estruturação, organização e análise de conhecimento realizados pelo engenheiro de conhecimento. IA - Prof. Paulemir Campos 35 Entrevistas Estruturadas Resultam em conhecimento melhor relacionado e organizado. As principais diretrizes são: 31/05/2017 1. O engenheiro de conhecimento deve estudar previamente o domínio especialista para estar mais familiarizado e melhor preparado com os conceitos para a entrevista; IA - Prof. Paulemir Campos 36 Entrevistas Estruturadas As principais diretrizes são (Cont.): 2. O engenheiro de conhecimento deve analisar o estado atual do sistema especialista identificando os conceitos que faltam ser melhor aprofundados; 3. O engenheiro de conhecimento deve preparar previamente questões importantes a serem utilizadas além de utilizar técnicas de questionamento; 31/05/2017 IA - Prof. Paulemir Campos 37 Entrevistas Estruturadas As principais diretrizes são (Cont.): 4. O engenheiro de conhecimento deve, antes da entrevista, expor ao especialista do domínio os pontos principais que serão elucidados. Desta forma, o especialista do domínio pode estruturar, com antecedência, os requisitos das principais questões; 5. O engenheiro de conhecimento deve utilizar técnicas de questionamento para conduzir de maneira lógica e estruturada as entrevistas para aquisição de conhecimento. 31/05/2017 IA - Prof. Paulemir Campos 38 Protocolos Em aquisição de conhecimento, protocolos devem ser entendidos como registros externos usualmente em vídeo ou áudio, em tempo real ou retrospectivamente. 31/05/2017 IA - Prof. Paulemir Campos 39 Protocolos Pode-se ter protocolos de descrição padrão de uma tarefa, como: 31/05/2017 a descrição da realização de uma tarefa; o que foi dito durante a realização da tarefa; e, os artefatos utilizados. IA - Prof. Paulemir Campos 40 Protocolos Os principais modos de geração de protocolos são: 31/05/2017 pensar alto ou falar alto (relata conversas internas); redução comportamental (baseando-se em observações); e, registro retrospectivo (relatando aspectos lembrados de uma atividade). IA - Prof. Paulemir Campos 41 Análise O objetivo da análise de material fornecedor de conhecimento é: construir representações de conhecimento para validação e construção do sistema. É usada para esclarecer situações problemáticas, considerações alternativas e conjuntos de soluções apropriadas. 31/05/2017 IA - Prof. Paulemir Campos 42 Aquisição Automática Emprega técnicas de aprendizado de máquina (como RNAs, Regressão Logística, etc), para buscar novos conhecimentos a partir de bases de dados, textos, periódicos que serão digitalizados, analisados, sintetizados e incorporados a uma base de conhecimento inicial. 31/05/2017 IA - Prof. Paulemir Campos 43 Aplicações 31/05/2017 IA - Prof. Paulemir Campos 44 Algumas Aplicações de SE Os SE podem ser aplicados para: 31/05/2017 Estabelecer metas estratégicas; Alcançar objetivos gerais; Auxiliar em projetos de vários produtos; e, Buscar causas e soluções para problemas de diagnóstico. IA - Prof. Paulemir Campos 45 Referências Rich, E. e Knight, K. Artificial Intelligence. McGraw-Hill, 1991. (Capítulo 20). Notas de aulas da Profa. Lourdes Mattos Brasil sobre Sistemas Especialistas. 31/05/2017 IA - Prof. Paulemir Campos 46