Title: Sistemas Especialistas
1Sistemas Especialistas
2Sumário
- Conceito
- Vantagens
- Aplicações
- Componentes
- Exemplos de Bases de Dados
3Conceito
- 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.
4Vantagens
- 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.
5Aplicaçõ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.
6Aplicações (cont.)
- 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.
7Aplicações (cont.)
- 5) Sistemas de Instrução
-
- 6) Sistemas de Interpretação
8Componentes
- 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.
9Componentes (cont.)
- 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.
10Componentes (cont.)
- Os mecanismos de inferência podem ser de dois
tipos - Encadeamento para diante. Neste tipo
selecionam-se atributos até obter uma combinação
deles que caracterize um objeto - 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.
11Exemplos de base de dados
- Serão apresentados dois exemplos de bases de
dados que podem ser utilizadas em qualquer
shell de Sistemas Especialistas - O primeiro deles é encontrado no livro de Schildt
(Inteligência Artificial usando a Linguagem C) - O segundo deles foi desenvolvido na UFF há mais
de dez anos
12Primeiro exemplo de base de dados
- Os objetos do sistema especialista são doenças e
os atributos desses objetos (doenças) são seus
respectivos sintomas - A resposta do sistema é o diagnóstico da doença a
partir dos sintomas
13Primeiro exemplo de base de dados (cont.)
- As doenças são
- meningite
- dengue
- malária
- pneumonia
- tuberculose
- esclerose múltipla
- mal de Parkinson
- butolismo
14Primeiro exemplo de base de dados (cont.)
- Os sintomas são
- dor de cabeça forte
- vomito
- febre
- dor no corpo
- diarréia
- delírio
- dificuldade de respirar
- tosse intensa
- cor do corpo amarelada
- perda progressiva da motricidade
- tremedeira
- inflamação na parte interna da boca
- perda temporária da visão
15Primeiro exemplo de base de dados (cont.)
- Considere-se
- diag( ) - diagnostico
- sint - sintoma
- S - é uma lista contendo os sintomas de
determinada doença tal que na clausula diag,
enquadra-se o corpo que possui os
predicados sint. - Os argumentos são comparados com os elementos
da lista que se supõe sejam iguais aos do átomo
de tal predicado.
16Primeiro exemplo de base de dados (cont.)
- As regras para determinar os diagnósticos são
- diag(S,meningite) - sint(S,dor_de_cabeça_forte),
sint(S,vomito), sint(S,febre). - diag(S,dengue) - sint(S,dor_de_cabeça_forte),
sint(S,vomito), sint(S,febre), sint(S,diarréia) ,
sint(S,dor_no_corpo). - diag(S,malaria) - sint(S,dor_de_cabeça_forte),
sint(S,delírio), sint(S,febre). - diag(S,pneumonia) - sint(S,febre),
sint(S,dificuldade_de_respirar) ,
sint(S,dor_no_corpo). - diag(S,tuberculose) - sint(S,tosse_intensa).
- diag(S,hepatite) - sint(S,dor_de_cabeça_forte),
sint(S,cor_do_corpo_amarelada), sint(S,vomito). - diag(S,esclerose_múltipla) - sint(S,progressiva_p
erda_da_motricidade), sint(S,delírio) . - diag(S,mal_de_parkson) - sint(S,tremedeira).
- diag(S,botulismo) - sint(S,tosse_intensa),
sint(S,inflamação_na_parte_interna_da_boca),
sint(S,perda_temporária_da_visão). -
17Sistema ESIE
- O Sistema ESIE é um sistema especialista
elementar desenvolvido por alunos da Disciplina
Inteligência Artificial da UFF em linguagem
Pascal.
18ESIE - Introdução
- INSTRUÇÕES PARA DESENVOLVIMENTO DA BASE DE
CONHECIMENTOS
19ESIE - Introdução
- Para criar uma base de conhecimentos para o shell
uff deve-se seguir os seguintes sete passos -
20ESIE Passos para a criação da base de
conhecimentos
- 1. definir o texto introdutório através de
introtext is " texto " . este texto introdutório
deve dizer a área de atuação do sistema, e dar
instruções ao usuário. - 2. definir a meta através de goal is (nome de
uma variável). esta variável será usada nas
regras para receber o diagnóstico. - exemplo goal is diag
21ESIE Passos para a criação da base de
conhecimentos
- 3. definir as respostas válidas através de
legalanswers are aqui se define quais são as
respostas válidas (terminar com ). - exemplo legalanswers are sim não
- 4. definir todas as perguntas através de
question (nome) is - exemplo question p1 is
- "o paciente apresenta tosse?"
22ESIE Passos para a criação da base de
conhecimentos
- 5. gerar regras combinando as respostas das
perguntas. - a sintaxe é if ....
- and ....
- and ....
- then ....
- exemplo
- if p1 is sim
- and p2 is sim
- then diag is pneumonia
23ESIE Passos para a criação da base de
conhecimentos
- 6. definir qual deve ser a resposta do sistema
através de answer is - exemplo answer is "o paciente deve ter ",
diag - 7. definir um texto de terminação com termtext
is. aqui entra-se com recomendações para o
usuário, telefones para contato e demais
instruções que possam ser úteis.
24ESIE - Exemplo
- A seguir apresenta-se uma base de conhecimentos
que poderá ser executada. nome do arquivo
base1.esie
25ESIE Texto de abertura, definição de alvo e
respostas admissíveis
- introtext is "
- este sistema tem por objetivo determinar a
etiologia da amenorréia. - responda sim ou não as questões que se seguem
- para interromper o questionário, digite "
-
- goal is epa
-
- legalanswers are sim não
26ESIE Diálogo com o usuário
- question wp is
- "ocorreu alguma resposta a indução progestacional
?" -
- question tsh is
- "a paciente apresenta tsh elevado ?"
-
- question pro is
- "a paciente apresenta nível de prolactina gt100 ?"
27ESIE Diálogo com o usuário (cont.)
- question est.pro is
- "a suspensão de um ciclo estrogenio-progesterona
causa sangramento ?" -
- question fsh.lh is
- "os níveis de fsh e lh estão elevados ?"
28ESIE Regras
- if wp is sim
- and tsh is sim
- then epa is hipotiroidismo
-
- if wp is não
- and tsh is sim
- then epa is hipotiroidismo
29ESIE Regras (cont.)
- if wp is não
- and tsh is não
- and pro is sim
- then epa is indefinida.pedir.tomografia
-
- if wp is sim
- and tsh is não
- and pro is sim
- then epa is idefinida.pedir.tomografia
30ESIE Regras (cont.)
- if wp is sim
- and tsh is não
- and pro is não
- then epa is anovulacao
-
- if wp is não
- and tsh is não
- and pro is não
- and est.pro is não
- then epa is insuficiencia.ovariana
31ESIE Regras (cont.)
- if wp is não
- and tsh is não
- and pro is não
- and est.pro is sim
- and fsh.lh is sim
- then epa is insuficiencia.ovariana
-
- if wp is não
- and tsh is não
- and pro is não
- and est.pro is sim
- and fsh.lh is não
- then epa is disfuncao.hipotalamo.hipofisiaria
32ESIE Diagnóstico e texto de encerramento
- answer is "com base nas respostas acima, posso
inferir que a etiologia da amenorréia é epa -
- termtext is "
-
- a conduta a ser adotada para correção da
amenorréia dependerá' da etiologia levantada e de
outras condições da paciente. confira estes
resultados com sua experiência clinica.