Resolução de um Problema
Perito
Alguém que detém competência - conhecimento especializado acerca de
um dado domínio
Conhecimento do domínio
Como age um Perito ?
1. obtém factos acerca do problema
2. armazena-os na sua “Memória de Curto Termo” (MCT)
3. raciocina sobre o problema:
• combina os factos armazenados na sua MCT
• com o conhecimento contido na sua “Memória de Longo Termo” (MLT)
4. neste processo o perito infere novas informações acerca do problema
5. e eventualmente chega a uma conclusão acerca do problema
Arquitectura e Componentes de Sistemas Periciais
1
Exemplo
Problema com o automóvel
Perito (Mecânico):
– Detém na sua MLT conhecimento necessário ao diagnóstico dos mais
variados problemas com automóveis
Utilizador informa o mecânico:
– Automóvel não pega.
Mecânico:
– armazena esta informação na sua MCT e começa a raciocinar sobre o
problema
– Combina a informação dada pelo cliente com o seu conhecimento do
domínio
– o mecânico infere: “o problema pode ser no sistema eléctrico”
– adiciona este novo facto na sua MCT e continua a raciocinar sobre o
problema
– Coloca questões relativas a testes na bateria do automóvel
– Estes testes levam o mecânico a concluir:
bateria descarregada
Arquitectura e Componentes de Sistemas Periciais
2
Perito versus Sistema Pericial
Perito
Memória de Longo Termo
Conhecimento do Domínio
Aconselha
Raciocínio
Factos
Conclusões
Memória de Curto Termo
Factos
Novos Factos Inferidos
Conclusões
Sistema Pericial
Base de Conhecimento
Conhecimento do Domínio
Utilizador
Motor de
Inferência
Factos
Conclusões
Memória de Trabalho
Factos
Novos Factos Inferidos
Conclusões
Arquitectura e Componentes de Sistemas Periciais
3
Componentes de um Sistema Pericial
Base de Conhecimento – é o local onde reside o conhecimento do
domínio visado pelo Sistema Pericial
Memória de Trabalho - armazena dados, informação ou conhecimento
específicos do problema em solução com vista a
auxiliar no funcionamento dos outros módulos
Motor de Inferência – responsável pelo controlo do sistema
Módulo de Explicações – onde se constróem as razões porque uma dada
conclusão foi ou não obtida, ou, ainda, porque
se está a efectuar determinada pergunta
Interface – contém os écrans do Sistema Pericial desenvolvidos para
interagir com utilizadores
Arquitectura e Componentes de Sistemas Periciais
4
Arquitectura de um Sistema Pericial
Interface
com o
Utilizador
Módulo
de
Explicações
Motor
de
Inferência
Memória
de
Trabalho
Base
de
Conhecimento
Arquitectura e Componentes de Sistemas Periciais
5
Base de Conhecimento
Módulo do Sistema Pericial que contém
o Conhecimento do Domínio
Base de Regras (Estática)
– contém regras que permitem tirar conclusões em função de condições
– As condições podem ser validadas:
• por factos básicos da base de factos
• por conclusões de outras regras
Exemplo:
Regra1: Se automóvel não pega
Então o problema pode ser no sistema eléctrico
Regra2: Se o problema pode ser no sistema eléctrico
E carga da bateria < 10 Volts
Então bateria descarregada
Arquitectura e Componentes de Sistemas Periciais
6
Base de Conhecimento
Base de Regras
Regra r1: SE Bot_1=actuado E Bot_2=actuado ENTÃO Sistema_A=activado
Regra r2: SE Bot_3=actuado OU NÃO(Bot_4=actuado) ENTÃO Sistema_B=activado
Regra r3: SE Bot_5=actuado E NÃO(Bot_6=actuado) ENTÃO Sistema_C=activado
Regra r4: SE Bot_7=actuado OU Bot_8=actuado ENTÃO Sistema_D=activado
Regra r5: SE Sistema_A=activado E Sistema_B=activado ENTÃO Conj_AB=operacional
Regra r6: SE Sistema_C=activado E Sistema_D=activado ENTÃO Conj_CD=operacional
Arquitectura e Componentes de Sistemas Periciais
7
Regras
SE Bot_1=actuado E Bot_2=actuado ENTÃO Sistema_A=activado
LHS
RHS
Bot_1, Bot_2, ... Bot_8  termos que só aparecem do lado esquerdo da regra
 factos básicos
Conj_AB=operacional
Conj_CD=operacional  termos que só aparecem do lado direito
 conclusões finais
Sistema_A=activado
...
Sistema_D=activado
 termos que aparecem no lado esquerdo de umas regras e
no lado direito de outras
 conclusões intermédias (ou hipóteses)
Arquitectura e Componentes de Sistemas Periciais
8
Diferentes maneiras de expressar o mesmo
Conhecimento
Se as conclusões intermédias não forem importantes podem ser
eliminadas.
Base de Conhecimento anterior:
Regra r5a: SE (Bot_1=actuado E Bot_2=actuado) E
(Bot_3=actuado OU NÃO(Bot_4=actuado))
ENTÃO Conj_AB=operacional
Regra r6a: SE (Bot_5=actuado E NÃO(Bot_6=actuado)) E
(Bot_7=actuado OU Bot_8=actuado)
ENTÃO Conj_CD=operacional
Arquitectura e Componentes de Sistemas Periciais
9
Diferentes maneiras de expressar o mesmo
Conhecimento
Certas equivalências também podem ser assumidas:
Regra r4: SE Bot_7=actuado OU Bot_8=actuado ENTÃO Sistema_D=activado
Regra r4a: SE Bot_7=actuado ENTÃO Sistema_D=activado.
Regra r4b: SE Bot_8=actuado ENTÃO Sistema_D=activado.
Mais do que uma regra pode conduzir à mesma conclusão
Vantagem: mais fácil o acompanhamento da inferência
Arquitectura e Componentes de Sistemas Periciais
10
Diferentes maneiras de expressar o mesmo
Conhecimento
A regra x é equivalente às regras y e z.
Regra x: SE a E b ENTÃO c,d.
Regra y: SE a E b ENTÃO c.
Regra z: SE a E b ENTÃO d.
Uma regra pode apresentar mais do que uma conclusão
Arquitectura e Componentes de Sistemas Periciais
11
Problemas com a Junção de Regras
A junção das regras r1, r2 e r5 na seguinte regra:
Regra r5b: SE (Bot_1=actuado E Bot_2=actuado) E
(Bot_3=actuado OU NÃO(Bot_4=actuado))
ENTÃO
Sistema_A=activado,Sistema_B=activado,Conj_AB=operacional
Perante esta nova formulação:
• o Sistema_A também fica a depender de Bot_3 e Bot_4
• o Sistema_B fica a depender de Bot_1 e Bot_2
Arquitectura e Componentes de Sistemas Periciais
12
Problemas em Bases de Conhecimento
Circularidade
Regra c1: SE a E b ENTÃO c.
Regra c2: SE c E d ENTÃO e.
Regra c3: SE e E f ENTÃO a.
Inconsistência
Regra i1: SE a E b ENTÃO c.
Regra i2: SE c E d ENTÃO e.
Regra i3: SE e E b E d ENTÃO (NÃO e).
Estes problemas podem ser detectados com recurso a
Técnicas de Verificação
Arquitectura e Componentes de Sistemas Periciais
13
Problemas em Bases de Conhecimento
Mesmo que a Base de Conhecimento esteja correcta do ponto formal (ou seja, não
tenha problemas detectados ao nível da Verificação) nada garante que ela esteja de
facto correcta.
Base de Conhecimento pode ter incorrecções devidas:
– conhecimento mal especificado
– conhecimento incompleto
– ....
Estes problemas são resolvidos com recurso a
Técnicas de Validação
Avalia-se o desempenho do sistema perante casos que são resolvidos pelo Sistema
Pericial e pelo Perito.
Se não houver concordância faz-se a análise do problema, vulgarmente o problema
encontra-se na falta de uma condição numa regra ou na ausência de uma regra.
Arquitectura e Componentes de Sistemas Periciais
14
Memória de Trabalho
Base de Factos (dinâmica)
– contém asserções ou assunções (factos básicos verdadeiros)
descobertas durante uma sessão
• em ficheiro
• em memória
– originadas:
• por eventos
• através da resposta de um utilizador
• carregada a partir de bases de dados externas, folhas de
cálculo, sensores
• através de conclusões das regras
Arquitectura e Componentes de Sistemas Periciais
15
Motor de Inferência
Responsável pela modelação do Processo de Raciocínio.
– Combina os factos da Memória de Trabalho com o
conhecimento do domínio contido na Base de Conhecimento
– Gera conclusões
Para tal o Motor de Inferência deve usar a estratégia de raciocínio
mais apropriada:
– Encadeamento Directo
– Encadeamento Inverso
– Encadeamento Misto
Arquitectura e Componentes de Sistemas Periciais
16
Estratégia de Raciocínio - Encadeamento Directo
Sistema Pericial
Problema com o automóvel ?
Utilizador
Automóvel não pega.
Base de Factos
F1: Automóvel não pega.
Motor de Inferência
Facto F1 dispara Regra1
Regra1 gera 1ª conclusão intermédia (F2) que é inserida na Base de Factos
Base de Factos
F1: Automóvel não pega.
F2: Problema pode ser no sistema eléctrico
Sistema Pericial
Carga da bateria < 10 Volts?
Utilizador
Verdadeiro
Base de Factos
F1: Automóvel não pega.
F2: Problema pode ser no sistema eléctrico.
F3: Carga da bateria < 10 Volts.
Motor de Inferência
Factos F2 e F3 disparam Regra2
Regra2 gera conclusão final que é inserida na Base de Factos
Base de Factos
F1: Automóvel não pega.
F2: Problema pode ser no sistema eléctrico.
F3: Carga da bateria < 10 Volts.
F4: Bateria descarregada
A sessão termina – Não há mais regras a considerar
Arquitectura e Componentes de Sistemas Periciais
17
Cadeia de Inferência Directa
Factos
Básicos
f1
Conclusões
Finais
Conclusões Intermédias
r1
ci1= f2
r2
cf1= f4
f3
Arquitectura e Componentes de Sistemas Periciais
18
Estratégia de Raciocínio - Encadeamento Inverso
Sistema Pericial
Problema com o automóvel ?
Utilizador
Automóvel não pega.
Base de Factos
F1: Automóvel não pega.
Base de Regras
Regra2: Se o problema pode ser no sistema eléctrico E carga da bateria < 10 V
Então bateria descarregada
Motor de Inferência
O problema pode ser no sistema eléctrico E
Carga da bateria < 10 Volts
Motor de Inferência
Facto F1 suporta a regra R1
conclusão intermédia ci1 (o problema pode ser no sistema eléctrico )
conclusão intermédia é inserida na Base de Factos – F2
Base de Factos
F1: Automóvel não pega.
F2: Problema pode ser no sistema eléctrico.
Sistema Pericial
Carga da bateria < 10 Volts?
Utilizador
Verdadeiro
Base de Factos
F1: Automóvel não pega.
F2: Problema pode ser no sistema eléctrico.
F3: Carga da bateria < 10 Volts.
Motor de Inferência
Factos F2 e F3 suportam Regra2
bateria descarregada Verd
Arquitectura e Componentes de Sistemas Periciais
19
Cadeia de Inferência Inversa
Conclusão
Final
Regras/Factos
F2
F4
F1
R1
R2
F3
Arquitectura e Componentes de Sistemas Periciais
Verd
20
Base de Conhecimento
regra r1 :
regra r2 :
se [tipo(Veículo,passageiros) e
classe(Veículo,ligeiro)]
então ligeiro(Veículo,carro).
se [tipo(Veículo,mercadorias) e
classe(Veículo,pesado)]
então pesado(Veículo,camião).
regra r3 :
regra r4 :
Se [tipo(Veículo,passageiros) e
classe(Veículo,pesado)]
então pesado(Veículo,autocarro).
se [tipo(Veículo,misto) e classe(Veículo,pesado)]
então pesado(Veículo,camioneta).
regra r5 :
regra r6 :
se [lotação(Veículo,>,9) ou
peso(Veículo,>,3500)]
então classe(Veículo,pesado).
se [não lotação(Veículo,>,9) e não
peso(Veículo,>,3500)]
então classe(Veículo,ligeiro).
regra r7 :
se [tipo(Veículo,mercadorias) e
tipo(Veículo,passageiros)]
então tipo(Veículo,misto).
Arquitectura e Componentes de Sistemas Periciais
21
Memória de Trabalho
Factos básicos
f1: A lotação do veículo é de 3 lugares;
f2: O peso do veículo é de 4500 kg;
f3: O tipo de veículo é de mercadorias.
Arquitectura e Componentes de Sistemas Periciais
22
Encadeamento Directo
• os factos básicos vão “disparar” regras, por validação dos LHS
• originam conclusões intermédias que estão nos RHS.
• as conclusões intermédias em conjunto com outros factos básicos
dão origem às conclusões finais, após o estabelecimento de uma
cadeia de inferência com 1 ou mais níveis
Objectivo: Provar pesado(Veículo,camião)
– Usando a Base de Conhecimento de veículos e os factos da
Memória de Trabalho
Arquitectura e Componentes de Sistemas Periciais
23
Encadeamento Directo
f2
valida o LHS da regra r5
originando uma conclusão intermédia c1 classe(Veículo,pesado)
f3 e c1
validam a regra r2
originando uma conclusão final c2 pesado(Veículo,camião)
f2
r5
c1
r2
c2
f3
conclusão c2 (pesado(Veículo,camião)) obtida com base nos factos
f2 e f3 e por aplicação das regras r5 e r2
Arquitectura e Componentes de Sistemas Periciais
24
Encadeamento Inverso
• Tenta-se provar uma conclusão que esteja no RHS,
• o que implica provar o que está no LHS, e isso pode ser feito com
base em factos básicos ou com base numa prova de uma possível
conclusão intermédia (recursividade).
Objectivo
Provar (pesado(Veículo,camioneta)) é Verdadeiro
Arquitectura e Componentes de Sistemas Periciais
25
Encadeamento Inverso
1. para que (pesado(Veículo,camioneta)) seja verdade é necessário provar a regra r4
2. Para que a regra r4 seja disparada com sucesso
3. implica provar tipo(Veículo,misto) e classe(Veículo,pesado)
4. o termo tipo(Veículo,misto) é uma conclusão intermédia (ci’)
5. o termo classe(Veículo,pesado) é outra conclusão intermédia (ci’’)
6. ci’’ pode ser provada pela regra r5,
7. o que implica provar lotação(Veículo,>,9) ou peso(Veículo,>,3500)
8. lotação(Veículo,>,9) não é suportada pelos factos básicos
9. peso(Veículo,>,3500) é suportado pelo facto f2
10. como temos uma disjunção (ou) a conclusão da regra r5 (ci’’) fica provada;
11. (tipo(Veículo,misto)) pode ser provado pela regra r7
12.o que implica provar tipo(Veículo,mercadorias) e tipo(Veículo,passageiros)
13. tipo(Veículo, mercadorias) é suportado pelo facto f3,
14.contudo, não há nenhum facto que suporte tipo(Veículo, passageiros),
15.logo não se pode provar ci’;
16.apesar de se poder provar ci’’, não podemos provar ci’, logo também não podemos
provar (pesado(Veículo,camioneta))
Arquitectura e Componentes de Sistemas Periciais
26
Encadeamento Inverso
f3
falha
r7
f2
r5
ca'
r4
ca
ca''
Arquitectura e Componentes de Sistemas Periciais
27
Motor de Inferência
A eficiência do mecanismo de inferência pode ser aumentada:
– com Metaconhecimento - codificado no formato de Metaregras
– através de questões sobre a veracidade de uma possível
condição
À medida que o Motor de Inferência vai tirando conclusões deve ir
guardando justificações para tais conclusões. Por forma a explicar o
raciocínio que utilizou (explicações).
Arquitectura e Componentes de Sistemas Periciais
28
Módulo de Explicações
As explicações podem ser dirigidas aos seguintes tipos de pessoas:
Engenheiro do Conhecimento ou Implementador do Sistema
– identificar possíveis problemas na Base de Conhecimento:
• falta de condições nas regras
• condições em excesso, valores incorrectos
• ambiguidades
Perito
– comparar o seu raciocínio com o do Sistema Pericial,
– Proceder à Validação do Sistema Pericial
Utilizador
– por que razão faz uma dada pergunta
– porque não foi obtida uma dada conclusão
– aprender algo sobre o domínio em causa - Tutor Inteligente.
Arquitectura e Componentes de Sistemas Periciais
29
Principais Tipos de Explicações
Explicações “Como? (How)”
servem para que o Sistema Pericial justifique o caminho que
seguiu para obter uma dada conclusão
Explicações “Porque não? (Why not)”
servem para que o Sistema Pericial justifique a razão pela qual
uma determinada conclusão não foi obtida
Explicações “Porquê? (Why)”
servem para que o Sistema Pericial justifique por que razão põe
uma determinada questão ao utilizador.
Arquitectura e Componentes de Sistemas Periciais
30
Exemplos de Explicações
Sistema Pericial : Bateria Descarregada
Como ?
Dado que o automóvel não pega
Assume-se que o problema pode ser no sistema eléctrico
Como a carga da bateria < 10 Volt
Pode-se concluir que a Bateria está descarregada
Sistema Pericial: Carga da bateria < 10 Volts?
Utilizador: Porquê ?
Porque se o automóvel não pega,
o problema pode ser no sistema eléctrico e
se a carga da bateria < 10 Volts
então a bateria está descarregada
Arquitectura e Componentes de Sistemas Periciais
31
Exemplos de Explicações
Nó
Activo
Conclusões
Identificação da regra
Premissas
Nós a expandir. Disparo de
regras ou mensagens SCADA
Janela de expansão do nó Activo
Explicação em hipertexto fornecida pelo Sistema Pericial SPARSE
Arquitectura e Componentes de Sistemas Periciais
32
Interface com o Utilizador
A Interface do Sistema Pericial deve estar adaptada ao seu tipo de
utilizador:
• a apenas um utilizador
• a um tipo homogéneo de utilizadores
 a tarefa de modelação fica mais simplificada
• a um tipo heterogéneo de utilizadores
 devem ser definidos perfis de utilizadores:
• as interfaces
• os diálogos, questões colocadas pelo sistema
• as explicações, os conceitos dados pelo sistema
 devem ser adaptados aos perfis de utilizadores
Arquitectura e Componentes de Sistemas Periciais
33
Exemplo de Interface
Interface textual e gráfica do Sistema Pericial SPARSE
Arquitectura e Componentes de Sistemas Periciais
34
Características dos Sistemas Periciais
• conhecimento separado do controlo
• possui perícia
• resolução de problemas focada apenas na área para que foi
concebido
• Raciocina com símbolos – conhecimento é representado numa
forma simbólica
• Raciocina com recurso a heurísticas
• Permite raciocínio não exacto
• É limitado a problemas resolúveis
Arquitectura e Componentes de Sistemas Periciais
35
O que se espera de um Sistema Pericial
• Resolução de problemas para o domínio para o qual foi
concebido
• Facilidade de manutenção incremental da sua Base de
Conhecimento
• Conhecimento apresentado de forma atraente e legível
– alguns Geradores de Sistemas Periciais permitem a inclusão do
conhecimento numa língua quase natural
• Desempenho semelhante a um Perito:
– capacidade de explicar como chegou a uma dada conclusão
– porque razão não foi possível chegar a uma dada conclusão ou
– porquê está a pôr uma dada questão ao utilizador
Arquitectura e Componentes de Sistemas Periciais
36
O que se espera de um Sistema Pericial
• Mecanismo de raciocínio eficiente em domínios nos quais a quantidade de
conhecimento seja elevada, através de metaregras
Exemplo: activação de um subconjunto de regras (rule set) em função de um
facto que se sabe ser verdade ou de uma conclusão que se pretenda provar
• Interface que se adapte ao tipo de utilizador (especialista ou novato) e à
situação em causa (normal ou crítica)
• Capacidade de efectuar raciocínios considerando o raciocínio com
incertezas:
–
–
–
–
–
Raciocínio Bayesiano
Factores de Certeza
Factores de Crença/Descrença
Teoria de Dempster-Shafer
Conjuntos Difusos
• Assistência nas fases de aquisição, estruturação e transferência de
conhecimento, ou nas fases de verificação e validação do conhecimento.
Arquitectura e Componentes de Sistemas Periciais
37
Download

Arquitecturas e Componentes de Sistemas Periciais