Sistema Especialista
Sistemas especialistas são programas
destinados a solucionar problemas em campos específicos de conhecimento. Estes
programas devem ter desempenho comparável ao dos especialistas humanos na
execução dessas tarefas.
Vantagens
Os Sistemas especialistas apresentam, em
relação aos especialistas humanos as seguintes vantagens :
•
Disponibilidade
a qualquer tempo;
•
Ausência
de fadiga;
•
Ausência
de incompatibilidades pessoais;
•
Tecnologia
portável a outros ramos do conhecimento.
Aplicações
1) Sistemas de diagnóstico
Exemplo : MYCIN para diagnóstico de
doenças bacteriológicas, desenvolvido em Stanford nos anos 70.
2) Sistemas de planejamento
Exemplos : XCON para configuração de
hardware, desenvolvido na Carnegie Mellon University e utilizado pela DEC.
STRIPS para movimentação de robôs,
desenvolvido em Stanford.
3) Sistemas de previsão
Exemplo : PROSPECTOR para estudo de
geologia
4) Sistemas de controle
Exemplos :
•
ACE para
vigilância de sistemas telefônicos.
PICON para alarmes em centrais
nucleares.
5) Sistemas de Instrução
6) Sistemas de Interpretação
Componentes
São componentes essenciais de um Sistema Especialista :
Base de conhecimentos composta de fatos e regras;
Mecanismo de inferência;
Interface com o usuário.
As bases de conhecimentos compreendem coleções de :
•
Objetos,
que são as conclusões a que o Sistema deve chegar;
•
Atributos,
que são propriedades que servem para caracterizar os objetos.
Os mecanismos de inferência podem ser de dois tipos :
1. Encadeamento para diante. Neste tipo
selecionam-se atributos até obter uma combinação deles que caracterize um
objeto;
2. Encadeamento para traz. Neste tipo
seleciona-se um objeto, como sendo a hipótese de estudo, e busca-se determinar
a viabilidade da aceitação dessa hipótese pela ocorrência ou não dos atributos
adequados. Caso a hipótese falhe seleciona-se outra hipótese e prossegue-se com
as tentativas.
Ferramentas para Construção de Sistemas Especialistas
As linguagens de programação são as ferramentas mais tradicionais para a implementação de sistemas especialistas, pois possuem recursos internos que facilitam os mecanismos de inferência, ou que permitem processar listas, as principais linguagens utilizadas são:
LISP:
Usada principalmente pela comunidade científica americana de pesquisas em inteligência artificial. Por esse motivo é uma linguagem bastante experimentada e com bastante confiabilidade e eficiência de desempenho.
PROLOG:
Usada principalmente pela comunidade científica européia que estuda inteligência artificial. É uma linguagem apoiada em princípios de lógica e matemática e foi escolhida pelos japoneses como a linguagem dos computadores de quinta geração. Por isso tem recebido bastante impulso nos últimos anos.
Classificação de Sistemas Especialistas
De um modo geral, os sistemas especialistas existentes, quanto as características do seu funcionamento, podem ser classificados nas seguintes categorias: interpretação, diagnóstico, monitoramento, predição, planejamento, projeto, depuração, reparo, instrução e controle. Vamos agora analisar as características dos sistemas em cada uma dessas categorias.
Interpretação
São sistemas que inferem descrições de situações a partir da observação de fatos, isto é, fazem a análise de dados e procuram determinar as relações e seus significados. Devem considerar possíveis interpretações, descartando as que se mostrarem inconsistentes. Têm
mecanismos que permitem tratar dados errados, distorcidos ou até mesmo ausentes.
Diagnósticos
São sistemas que detectam falhas oriundas da interpretação de dados. A análise dessas falhas podem conduzir a uma conclusão diferente da simples interpretação de dados.
Estes sistemas já tem embutidos o sistema de interpretação de dados.
Deve detectar os problemas mascarados por falhas do sistema de interpretação, por falhas dos equipamentos e falhas do próprio diagnóstico, que este não detectou por ter falhado.
Os sistemas de diagnóstico devem permitir ao diagnosticante a decisão sobre medidas a tomar, pois em alguns casos os dados sobre o sistema podem ser inacessíveis, caros ou perigosos de serem recuperados.
Como S.E.
é desenvolvido
1) Construção da base de
conhecimento
Aquisição de
conhecimento!!!
Representação de
conhecimento (formalização)
2) Implementação
Codificação
Construção do sistema
de explicação, interface, etc.
3) Refinamento e validação
Metodologia RUDE
Os elementos constituintes do
sistema especialista são analisados a seguir de uma forma sucinta.
· A Base de conhecimentos:
É o módulo básico do sistema
especialista, contém o conhecimento do sistema, sob a forma de regras de
produção, quadros e redes semânticas.
· A Máquina de Inferência
(Mecanismo de Inferência):
Contém o interpretador de
regras e o escalonador de regras.
· O Quadro Negro:
É a área de trabalho do
sistema. Armazena informações, fatos e estruturas de suporte ao funcionamento
do sistema, quando este efetua raciocínios.
· Sistema de Justificação:
É a capacidade de questionamento, fornecida
pelo usuário.
Pode responder às seguintes perguntas:
Como chegou a esta conclusão?
Por que chegou a esta conclusão?
Por que não chegou a tal outra conclusão?
· Mecanismos de Aprendizagem:
Possui recursos que permitem
fazer acréscimos e alterações na base de conhecimentos.
· O Sistema de Aquisição de
Conhecimento
Permite ao sistema ampliar e
alterar seu conhecimento. Obter conhecimento é a parte mais crítica de um
sistema especialista.
· Sistema de Consulta
Interface do sistema com o
usuário, elaborando uma linguagem orientada ao problema (processador de
linguagem).
· Processador de Linguagem
Natural:
Este módulo tem por objetivo de
tornar transparente, para quem usa o sistema, toda a sua complexidade. Seu
objetivo é uma comunicação o mais perto possível da linguagem natural, evitando
que usuário do sistema tenha que aprender uma linguagem computacional própria
ou complexa para o uso do sistema. Este módulo é, ele próprio, um sistema
especialista, e é um estudo à parte em inteligência artificial.
Benefícios
do S.E.
•
Criação de
repositório de conhecimento
•
Crescimento
de produtividade e qualidade
•
Habilidade
de resolver problemas complexos
•
Flexibilidade
e modularidade
•
Operação
em ambientes arriscados
•
Credibilidade
•
Habilidade
de trabalhar com informações incompletas ou incertas
•
Fornecimento
de treinamento