Documente Academic
Documente Profesional
Documente Cultură
PROGRAMA DE PS-GRADUAO EM
CINCIA DA COMPUTAO
________________________________
Prof. Fernando A. Ostuni Gauthier, Dr.
Coordenador
Banca Examinadora
__________________________
Prof. Jorge Muniz Barreto, Dr.
Presidente da Banca
_______________________________
Prof. Luiz Fernando Jacinto Maia, Dr.
Membro da Banca
______________________________
Prof. Joo Bosco da Mota Alves, Dr.
Membro da Banca
Agradecimentos
Gostaria de agradecer ao prof. Mauro por trazer sempre a luz e a direo certa
nos momentos decisivos do desenvolvimento do trabalho.
minha esposa Fabiane, que soube compreender e aceitar as necessidades de
tempo e dedicao que um mestrado impe e me apoiou incondicionalmente.
Ao meu filho Eduardo, que nasceu durante a realizao desta empreitada e com
certeza foi o meu maior incentivo para seguir sempre em frente no importando as
dificuldades surgidas.
Aos meus pais, que sempre souberam o valor do saber e me apresentaram uma
das grandes verdades da vida, que tudo pode ser retirado de um homem, menos o seu
conhecimento e a sua f.
Aos amigos Fabrcio e Charles, que me orientaram e ajudaram a desvendar
alguns mistrios do Delphi durante o desenvolvimento do prottipo.
Sumrio
v
3.1. Definio de Raciocnio Baseado em Casos..........................................................30
3.2. Histrico do RBC....................................................................................................31
3.3. Diferenas do RBR e do RBC................................................................................32
3.4. Arquitetura de um Sistema RBC ..........................................................................33
3.4.1. A Base de Conhecimento .....................................................................................33
3.4.1.1. Representao de um Caso ..............................................................................33
3.4.1.2. Indexao...........................................................................................................36
3.4.2. Recuperao .........................................................................................................38
3.4.2.1. Algoritmos de Recuperao .............................................................................38
3.4.2.2. Casamento e Classificao ...............................................................................39
3.4.3. Reutilizao ..........................................................................................................42
3.4.4. Reviso..................................................................................................................44
3.4.4.1. Avaliao da Soluo Proposta........................................................................44
3.4.4.2. Reparao da Soluo ......................................................................................45
3.4.5. Armazenamento ...................................................................................................45
3.5. Vantagens do paradigma RBC sobre os demais ..................................................46
3.6. reas de Aplicao do RBC e Implementaes Existentes.................................47
4. Raciocnio Baseado em Casos Aplicado a um Sistema de Auxlio ao Diagnstico
de Problemas em Computadores..................................................................................50
4.1. Motivao ................................................................................................................50
4.2. Aquisio do Conhecimento: o Banco de Dados Disponvel...............................50
4.3. Apresentao do Banco de Dados .........................................................................51
4.3.1. O Cabealho e o Rodap da Ordem de Servio ................................................53
4.3.2. A Seo Servio a ser prestado / Problema que o equipamento apresenta........53
4.3.3. A Seo Equipamentos e acessrios recebidos....................................................53
4.3.4. A Seo Descrio dos servios prestados ...........................................................54
4.3.5. A Seo Peas e componentes substitudos .........................................................55
4.4. A Filtragem dos Problemas Reais .........................................................................55
4.5. O Ordenamento dos Casos.....................................................................................58
4.5.1. Os Equipamentos Mais Freqentes ...................................................................58
4.5.2. Os Problemas Mais Freqentes..........................................................................62
4.6. Montando a Base de Casos.....................................................................................63
vi
4.7. Apresentao da Proposta de Algoritmo de Casamento .....................................64
4.8. Consideraes sobre os Problemas do Domnio...................................................66
5. Modelagem e Implementao do Sistema SADPC .................................................67
5.1. Uma Viso Geral das Tcnicas Adotadas .............................................................67
5.2. Apresentao do Sistema SADPC .........................................................................68
5.3. Os Usurios do Sistema ..........................................................................................69
5.3.1. Os Especialistas ....................................................................................................70
5.3.2. Os Engenheiros do Conhecimento .....................................................................70
5.3.3. Os Usurios Leigos ..............................................................................................70
5.4. A Representao de um Equipamento: a Arvore H/S .........................................70
5.4.1. A rvore Hardware/Software: Organizao e Indexao...............................71
5.4.2. Cadastrando um novo equipamento ..................................................................71
5.4.3. Escolhendo um equipamento existente ..............................................................72
5.4.4. Quando no Sabemos o Equipamento Envolvido.............................................73
5.5. A Representao dos Casos ...................................................................................73
5.5.1. Base de Casos: Organizao e Indexao..........................................................74
5.5.2. Cadastrando um Novo Caso ...............................................................................74
5.6. A Iterao de um Novo Caso com o Sistema ........................................................75
5.6.1. A Apresentao das Possveis Solues..............................................................77
5.6.2. Quando a Soluo Proposta Vlida .................................................................78
5.6.3. Quando a Soluo Proposta no Vlida ..........................................................79
5.7. Relatrios do Sistema .............................................................................................79
5.7.1. Listagem das Solues Possveis em um Novo Caso.........................................79
5.7.2. Relao de casos ainda sem soluo ...................................................................80
5.8. Avaliando o Prottipo .............................................................................................81
6. Concluses e Consideraes Finais ..........................................................................84
6.1. Concluses...............................................................................................................84
6.2. Recomendaes e Consideraes Finais ...............................................................84
vii
Anexo 3. O Arquivo de Casos do Sistema....................................................................91
Anexo 4. O Cdigo-Fonte do Algoritmo de Recuperao e Casamento parte 1.........98
Anexo 5. O Cdigo-Fonte do Algoritmo de Recuperao e Casamento parte 2.......101
Anexo 6. O Cdigo-Fonte do Algoritmo de Recuperao e Casamento parte 3.......104
Bibliografia ...................................................................................................................107
Lista de Abreviaturas
BD
Base de Dados
CBR
Case-Based Reasoning
COIN
CPU
H/S
Hardware/Software
IA
Inteligncia Artificial
IAS
ICAS
OS
Ordens de Servio
PDD
RBC
RBR
RNA
SE
Sistemas Especialistas
SOHO
TI
Trabalho Individual
UFSC
WWW
Lista de Figuras
Lista de Tabelas
Tabela 2.1. Diferenas fundamentais entre um sistema de apoio deciso (SAD) e um
sistema especialista (SE)..................................................................................................18
Tabela 4.1. Palavras que indicam equipamentos com problemas ...................................54
Tabela 4.2. Diviso do banco de dados de ordens aps a filtragem................................54
Tabela 4.3. Comparao dos mtodos de filtragem manual e automtico ......................55
Tabela 4.4. Composio do banco de ordens aps a segunda filtragem..........................55
Tabela 4.5. Palavras com maior ocorrncia na seo Equipamentos e acessrios
recebidos ..........................................................................................................................57
Tabela 4.6. Equipamentos e acessrios das ordens de servio aps filtragem................58
Tabela 4.7. A primeira verso da rvore HS ...................................................................59
Tabela 4.8. Palavras com maior ocorrncia na seo Problema que o equipamento
apresenta..........................................................................................................................60
Tabela 4.9. Amostra das combinaes da palavra no ....................................................61
Tabela 4.10. Diviso das OS por equipamento................................................................62
Tabela 5.1 A estrutura do arquivo de usurios ................................................................67
Tabela 5.2. A estrutura do arquivo de equipamentos ......................................................69
Tabela 5.3. A estrutura do arquivo de casos ....................................................................72
Tabela 5.4. Resultado da avaliao do prottipo SADPC ...............................................80
Resumo
Hoje vivemos numa sociedade dependente de computadores, e isso faz com que
grandes transtornos sejam causados toda vez que surge um problema no funcionamento
dos equipamentos de informtica, sendo desejvel seu conserto rpida e precisamente.
Para resolver problemas em computadores e perifricos temos hoje em dia
tcnicos especializados, que levantam as possveis causas para o problema a partir de
seus sintomas e com alguns testes e eliminao de possibilidades chegam soluo.
Quanto mais experincia acumulada estes tcnicos tm, mais rapidamente eles chegam a
soluo e com maior grau de acerto. Esta abordagem leva a alguns problemas, como o
tempo e dinheiro necessrios para formar um bom tcnico e o risco que se corre de
perder seu conhecimento acumulado quando ele se aposenta, morre ou troca de
profisso. Assim, uma soluo apropriada para consolidar a memria histrica dos
diagnsticos de problemas de computadores o desenvolvimento de um sistema
especialista que utilize o conhecimento armazenado nos sistemas de registro de
problemas para propor solues para um problema corrente.
Este trabalho apresenta um sistema que utiliza o paradigma de raciocnio
baseado em casos, desenvolvido com o uso de um banco de dados de 10000 ordens de
servio de problemas reais resolvidos. Os problemas tpicos deste domnio, a
abordagem adotada e os resultados obtidos com o prottipo construdo so descritos.
Abstract
Today we lived in a dependent society of computers, and as result any fault that
occurs on these machines raises great troubles to their users, requiring a quick and
accurate repair.
To solve faults in computers and peripheral devices nowadays, we have
specialized technicians that raise the possible causes for the fault by analyzing its
symptoms to then with some tests and elimination of possibilities come up with the
solution. The more experience these technicians have the quicker they come up with
the solution and with a higher accurateness. This approach brings some problems with
it, such as the time and money necessary to form good technicians and the risk of lose
the accumulated knowledge when they retire, die or change career. This way an
appropriate solution to consolidate historical memory of the computer problems
diagnoses is the development of a specialist system that uses the knowledge in the
registries systems to propose solutions to a current problem.
This work that uses the reasoning paradigm based on cases, developed with the
use of a database of 10000 orders of service of solved real problems. The typical
problems of this domain, the used approach and the results obtained with the built
prototype are described.
1. Introduo
1.1. Motivao
Na nossa sociedade atual o computador j pode ser encarado como ferramenta
indispensvel de trabalho. Inmeras so suas virtudes e aplicaes, aumentando a
produtividade daqueles que o usam e fazendo com que fiquemos, de certa forma,
dependentes de sua ajuda. Por um lado isso muito bom, haja visto por exemplo o
crescimento assombroso da economia americana na ltima dcada, apoiada, segundo a
maioria dos especialistas em macro-economia, na informatizao macia dos processos
produtivos das empresas que trouxeram ganhos de produtividade jamais vistos. Por
outro lado, quando um computador pra por algum defeito, seu usurio com freqncia
no consegue produzir mais nada enquanto o problema no resolvido. Os problemas
ocorridos nos computadores podem ser originados por inmeras causas, e a
heterogeneidade dos equipamentos e das tecnologias envolvidas num sistema
computacional levam a uma complexidade crescente na soluo de seus problemas.
Tradicionalmente quando um problema aparecia o usurio do computador
chamava um tcnico, que usando seus conhecimentos e sua experincia localizava o
defeito e o corrigia. No caso de empresas de maior porte, os usurios costumam contar
com um departamento especializado no atendimento ao usurio de informtica,
normalmente chamado de Help Desk, que acionado quando necessrio. Empresas
menores ou usurios domsticos contam com empresas terceirizadas ou profissionais
autnomos que fazem esse mesmo papel.
Em virtude do aumento da complexidade e da variedade dos problemas, o
conhecimento acumulado necessrio para que um tcnico resolva de forma satisfatria
os defeitos que surgem ficou muito grande, e esse conhecimento fica obsoleto com
muita rapidez. Sente-se a necessidade de uma forma de armazenar a experincia dos
tcnicos de uma maneira automatizada, e que essa experincia possa ser resgatada
quando necessria, de uma forma inteligente, buscando dentre todo conhecimento
guardado aquele que servir para soluo da situao apresentada. Assim os tcnicos
teriam um sistema computacional de apoio na busca de solues de problemas ocorridos
em computadores.
A partir da apresentao desse contexto, fica clara a necessidade da busca de
uma ferramenta que trabalhe com um grande volume de dados, guardados sob a forma
de experincias, e que tenha a capacidade de separar com critrios semelhantes aos que
um humano usaria, as experincias necessrias para se lidar com cada nova situao que
surja. Esse trabalho apresenta a proposta de um sistema que faa o papel desta
ferramenta de suporte ao trabalho dos tcnicos de informtica e dos usurios de
computadores com bom conhecimento.
Quando se fala em computadores usando critrios humanos ou agindo com
comportamento inteligente semelhante ao humano fala-se em Inteligncia Artificial
(IA), a rea da Cincia da Computao que estuda maneiras de atribuir s mquinas
comportamento inteligente. De acordo com as necessidades expostas anteriormente, a
14
abordagem de IA feita pelos Sistemas Especialistas (SE) a mais adequada, j que
permite a um sistema computacional agir como se fosse um especialista de uma rea
especfica, no caso desejado um tcnico especialista em computadores
A partir do exposto ficam claras as motivaes que levaram ao desenvolvimento
do presente trabalho, que poderiam ser resumidas assim:
- normalmente o conhecimento necessrio para resolver um problema atual se
encontra em experincias anteriores assemelhadas;
- a formao de um bom tcnico leva muito tempo e dinheiro, e um Sistema
Especialista agilizaria o processo;
- o tcnico experiente tem seu conhecimento somente no seu crebro e pode
morrer ou trocar de emprego levando seu saber consigo;
- o novo conhecimento inserido na base est disponvel instantaneamente para
todos usurios, disseminando solues velozmente.
1.2. Objetivos
O trabalho aqui desenvolvido tem por objetivo geral estudar a aplicabilidade dos
Sistemas Especialistas que utilizam o Raciocnio Baseado em Casos como ferramenta
de apoio ao diagnstico e ao encontro de solues para problemas surgidos em
microcomputadores.
Como objetivos especficos buscamos:
-
15
No sistema proposto pelo presente trabalho, o paradigma de raciocnio escolhido
no foi o RBR, mas sim o do Raciocnio Baseado em Casos (RBC), que est explicitado
no captulo 3, onde tambm so expostas as razes para esta escolha e as principais
diferenas entre o RBR e o RBC.
O captulo 4 descreve a base de dados disponvel para a construo do SE
almejado e o trabalho desenvolvido encima da mesma visando adequao,
classificao e filtragem das informaes relevantes que viro a alimentar o banco de
casos do prottipo modelado e implementado no captulo 5.
Apresentamos ento no captulo 5 a anlise e implementao do modelo
proposto de sistema especialista resultado do presente trabalho, desde sua modelagem e
desenvolvimento da codificao at os resultados prticos extrados do mesmo. So
apresentadas algumas telas do prottipo visando esclarecer como este funciona e como
ele se comporta com exemplos prticos.
O sexto e ltimo captulo traz as concluses extradas da anlise comparativa do
desempenho do sistema frente ao trabalho de especialistas humanos avaliando ento se
vivel um sistema desta natureza como ferramenta de apoio ao tcnico de informtica
envolvido no conserto de um defeito em um computador ou perifrico. Tambm so
sugeridos caminhos para trabalhos futuros visando complementar e entender este aqui
apresentado.
2. Sistemas Especialistas
Este captulo enfoca os assuntos referentes reviso bibliogrfica sobre sistemas
especialistas e busca mostrar qual o atual estado da arte dos SE, apresentando seus
conceitos, caractersticas, estrutura e aplicaes, servindo como referencial para anlise
da sua aplicabilidade no presente trabalho.
2.1. Definies de sistemas especialistas e suas caractersticas
Vrias so as definies encontradas nos livros para Sistemas Especialistas,
dentre as quais podemos citar SCHILDT (1987) que diz que SE so programas de
computador que procuram imitar o comportamento humano em alguma especialidade.
Para isto eles utilizam informaes fornecidas pelo usurio para formar uma opinio
sobre um determinado assunto. Desta forma o sistema especialista faz perguntas e o
usurio responde, at que ele possa identificar uma hiptese que se adapte s respostas.
Conforme o FERREIRA (2001), a palavra sistema, dentre 22 sentidos diferentes
possveis, na informtica seria um conjunto de programas destinados a realizar funes
especficas. J a palavra especialista, de 5 sentidos possveis 4 se encaixam em nossa
rea de interesse, significando 1. Pessoa que se consagra com particular interesse e
cuidado a certo estudo. 2. Pessoa que se dedica a um ramo de sua profisso. 3. Pessoa
que tem habilidade ou prtica especial em determinada coisa. 4. Conhecedor, perito.
Podemos perceber claramente que um sistema especialista ser um conjunto de
programas que realizaro a funo de uma pessoa conhecedora profunda de um
determinado ramo do saber.
O professor Edward Feigenbaum apud TEIXEIRA (2000) da Universidade de
Stanford, um dos principais pesquisadores em sistemas especialistas, definiu um
Sistema Especialista (SE) como:
"...um programa inteligente de computador que usa conhecimento e procedimentos
inferenciais, para resolver problemas que so bastante difceis de forma a requererem, para
sua soluo, muita percia humana. O conhecimento necessrio para atuar nesse nvel, mais
os procedimentos inferenciais empregados, pode considerar-se um modelo da percia aos
melhores profissionais do ramo. O conhecimento de um sistema especialista consiste em
fatos e heursticas. Os fatos constituem um corpo de informao que largamente
compartilhado, publicamente disponvel e geralmente aceito pelos especialistas em um
campo. As heursticas so em sua maioria privadas, regras pouco discutidas de bom
discernimento (regras do raciocnio plausvel, regras de boa conjectura), que caracterizam a
tomada de deciso em nvel de especialista na rea. O nvel de desempenho de um sistema
especialista funo principalmente do tamanho e da qualidade do banco de conhecimento
que possui.
17
e soluciona estes problemas atravs do uso de um modelo computacional racional de um
especialista humano, chegando s mesmas concluses que este especialista humano
chegaria se enfrentasse um problema comparvel.
2.2. Histrico do SE
J na dcada de 1950 os pesquisadores das Cincias da Computao haviam
comeado a estudar formas de se desenvolver a rea da Inteligncia Artificial,
trabalhando, segundo CARVALHO (1990) apud MLLER (1998), com a lgica
matemtica e a teoria das funes recursivas, guiando a formulao de processamento
de listas e da prpria linguagem LISP, que fornece um interpretador para desenvolver
expresses simblicas recursivas que capacitaram o surgimento de sistemas prticos de
computao simblica. Surgiram tambm nessa poca computadores interativos que
tornavam possveis ambientes computacionais para o desenvolvimento e depurao de
programas cognitivos. Em outra frente de pesquisa, nesta mesma poca, os psiclogos
cognitivos criaram um caminho padro no processo de investigao do raciocnio,
modelando o aparente processo de tomada de deciso em termos de regras de produo
condicionais. Segundo BARRETO (1999), na dcada de 1950 ...a admirao com as
inmeras possibilidades destas mquinas fizeram com que elas fossem tambm
conhecidas como crebros eletrnicos. Isto criou um certo mito que fez com que os
computadores fossem olhados com uma certa desconfiana.
Para destruir o mito criado e popularizar os computadores, no incio dos anos 60
uma intensa propaganda de fabricantes conseguiu fazer com que os computadores
passassem a ser considerados como incapazes de qualquer forma de raciocnio. Isso
ajudou a mostrar que apesar de no terem inteligncia, os computadores poderiam ser
teis em tarefas correntes como contabilidade, administrao de empresas, preparao
de folhas de pagamento, etc. Os computadores passaram a ser cada vez mais vendidos e
usados, como mquinas capazes de automatizar tarefas dirias, sempre guardando sua
burrice como grande qualidade. Porm, alguns grupos de pesquisadores, nos
laboratrios, continuaram a busca da possibilidade de prover computadores de
raciocnio inteligente. A partir do anncio do projeto japons dos computadores de 5
gerao passou-se a falar em uma nova famlia de computadores inteligentes rodando
aplicaes conhecidas como sistemas especialistas. Data dos anos 60 o famoso sistema
especialista MYCIN, capaz de diagnosticar doenas infecciosas do sangue em pacientes
com a mesma preciso da mdia dos mdicos especialistas da rea.
2.3. Aplicaes dos SE
Os sistemas especialistas podem ser aplicados com sucesso nas mais diversas
reas do domnio do conhecimento humano, como na medicina, engenharia, cincias
administrativas e outras. Segundo RIO e FERNNDEZ (1990), existem alguns pontos
dessas reas onde existe uma grande expectativa de se receber altos benefcios com a
adoo de sistemas especialistas, tais como:
18
Incremento de produtividade, j que o usurio pode chegar mais rapidamente a
uma soluo para seus problemas com o auxlio do SE e tambm contar com uma
segunda opinio imediata;
Reduo de custos de treinamento, pois muito mais rpido ensinar uma
pessoa a usar um sistema especialista que tenha uma interface intuitiva,
ergonomicamente eficiente e amigvel do que ensinar tudo que consta da base de
conhecimento da aplicao. Isso particularmente vlido para domnios de
conhecimento complexos.
Reduo de custos de pessoal. Esse ponto pode ter uma conotao cruel se
pensarmos que com o uso de SE podemos trocar especialistas experientes e com altos
salrios por novatos inexperientes, que ganham pouco e aprendem a usar o sistema. Por
outro lado podemos pensar que uma populao carente, com poucos recursos, pode
contar por exemplo com um sistema de apoio ao diagnstico mdico manipulado por
profissionais de baixo custo que resolvam grande parte dos problemas apresentados.
Aplicao de conhecimento constante na empresa atravs dos tempos. O SE
serve como um grande depsito da experincia acumulada ao longo do tempo numa
organizao, e este armazm pode ficar a disposio dos usurios, de forma organizada;
Preservao do conhecimento desenvolvido pelos especialistas da empresa ou
organizao. Como foi dito no item anterior, a base de conhecimentos de um sistema
especialista um grande armazm contendo todo conhecimento desenvolvido por
especialistas e sistematizado por engenheiros de conhecimento ou sistema automatizado
equivalente;
Maior garantia da aplicao da experincia e do conhecimento. Um sistema
especialista evita que usurios amadores tentem resolver um problema com
conhecimento emprico, no dotado de nenhum embasamento cientfico. Com a
possibilidade de contar com ajuda especializada, a tendncia que os usurios leigos
faam uso da mesma.
Apoio na soluo de problemas e possibilidade de uma segunda opinio.
Muitas vezes um profissional deve tomar uma deciso acerca de um problema sem ter
possibilidade de consultar outras pessoas, pelos mais diversos motivos como: escassez
de tempo, assunto sigiloso, inexistncia de outros profissionais, etc. Nesses casos, poder
contar com uma opinio racional, que sintetiza de forma cientfica um domnio de
conhecimento, uma grande ajuda na busca da melhor soluo para um problema.
2.4. Classificao dos Sistemas Especialistas
Segundo WIDMAN (1998), os SE podem ser classificados de dois modos
diferentes:
Apoio deciso: o programa ajuda o tomador de decises experiente a lembrarse de diversos tpicos ou opes, que se considera que ele saiba, mas que possa ter
esquecido ou ignorado. Este o uso mais comum em medicina.
19
Tomada de deciso: toma a deciso no lugar de uma pessoa, pois isso
implicaria algo que est acima de seu nvel de treinamento e experincia. Este o uso
mais comum em muitos sistemas industriais e financeiros.
Essa classificao no deve permitir que se confunda Sistemas Especialistas com
Sistemas de Suporte a Deciso. Vrios aspectos e caractersticas atribudas aos sistemas
especialistas podem se equiparar aos atributos de sistemas de suporte a deciso, mas h
um limite em que um aplicativo deixa de ser voltado ao suporte deciso e passa a ser
considerado um sistema especialista. Ambos os tipos de sistemas so projetados para a
assistncia ao usurio e a tabela a seguir, retirada de YANG (1995) pode ajudar a
resumir as diferenas fundamentais e evitar confuses.
Caracterstica
Sistemas Especialistas
1. Origem do sistema.
2. Objetivo do sistema.
3. Caractersticas da rea
problema.
4. Tipo de problema
tratado.
5. Representao do
processo de soluo do
problema.
6. Controle e interatividade (possibilidade de
interveno do usurio).
7. Usurios do sistema.
8.
Tipos
de Fatos.
conhecimentos nas bases
de
dados
e
de
conhecimento.
9.
Capacidade
de No possui capacidade de
raciocnio.
raciocnio.
10.
Capacidade
de O usurio confia na qualidade
explanao.
da informao.
11.
Fonte
conhecimento.
20
J conforme RIBEIRO (1987), os SE podem ser classificados, quanto s
caractersticas de seu funcionamento em:
Interpretao: so sistemas que inferem descries de situaes a partir da
observao de fatos, analisando dados e procurando determinar relaes e seus
significados.
Diagnsticos: so sistemas que detectam falhas oriundas da interpretao de
dados. A anlise dessas falhas pode conduzir a uma concluso diferente da simples
interpretao de dados. Estes sistemas j tm embutidos o sistema de interpretao de
dados. Devem permitir ao diagnosticante a deciso sobre medidas a tomar.
Monitoramento: este sistema deve interpretar as observaes de sinais sobre o
comportamento monitorado. Deve verificar, de maneira contnua, um determinado
comportamento em limites preestabelecidos, sinalizando quando forem requeridas
intervenes para o sucesso da execuo.
Predio: a partir de uma modelagem de dados do passado e do presente, este
sistema permite uma determinada previso do futuro. Como ele baseia sua soluo na
anlise do comportamento dos dados recebidos no passado, deve ter mecanismos para
verificar os vrios futuros possveis, a partir da anlise do comportamento desses dados,
usando raciocnios hipotticos e verificando a tendncia de acordo com a variao dos
dados de entrada.
Planejamento: o sistema prepara um programa de iniciativas a serem tomadas
para se atingir um determinado objetivo. Possui caractersticas parecidas com o sistema
para a predio e normalmente opera em grandes problemas de soluo complexa. O
princpio de funcionamento, em alguns casos, por tentativas de solues, cabendo a
anlise mais profunda ao especialista que trabalha com esse sistema.
Projeto: tem caractersticas parecidas com as do planejamento, e deve-se
confeccionar especificaes tais que sejam atendidos objetivos dos requisitos
particulares. Deve ser capaz de justificar a alternativa tomada para o projeto final, e de
fazer uso dessa justificativa para alternativas futuras.
Depurao: trata-se de sistema que possui mecanismos para fornecerem
solues para o mau funcionamento provocado por distores de dados. Faz verificao
automtica nas diversas partes, com mecanismos para ir validando cada etapa necessria
em um processo qualquer.
Reparo: normalmente trabalha em conjunto com um sistema de diagnstico,
desenvolvendo e executando planos para administrar os reparos. So poucos os sistemas
desenvolvidos, pois consertar alguma coisa do mundo real uma tarefa muito
complexa.
Instruo: tem mecanismos para verificar e corrigir o comportamento do
aprendizado de estudantes. Seu funcionamento consiste em ir interagindo com o
treinando, em alguns casos apresentando uma pequena explicao e, a partir da, ir
sugerindo situaes para serem analisadas pelo treinando. Pode-se ir aumentando a
complexidade das situaes e ir encaminhando o assunto, de maneira didtica.
Controle: um sistema que governa o comportamento geral de outros sistemas
(no apenas de computao). o mais completo, de um modo geral, pois deve
21
interpretar os fatos de uma situao atual, verificando dados passados e fazendo uma
predio do futuro. Apresenta os diagnsticos de possveis problemas, formulando um
plano timo para sua correo, que ser executado e monitorado para que o objetivo
planejado seja alcanado.
Sistema de
Consulta
Sistema de
justificativa
Quadro negro
Mquina de
Inferncia
Mecanismo de
aprendizagem
Base de
conhecimento
22
Na figura vemos dois tipos de usurios que utilizam o sistema especialista. O
primeiro quem utiliza o conhecimento armazenado. Ele fornece fatos, atravs de uma
interface colocada entre esse usurio e o sistema de modo a tornar natural o seu uso e
que coloca esses fatos de maneira que o sistema os possa usar em seu funcionamento. O
segundo tipo de usurio o especialista, ou seja, o profissional que detm o
conhecimento e o fornecer sob a forma de regras (nesse exemplo da figura) para que o
sistema o use. O conhecimento do especialista guardado sob uma forma padro
definida por quem projetou e construiu o sistema, de modo que o conhecimento possa
ser tratado de maneira mecnica. Este conhecimento normalmente passado para o
sistema atravs de um editor construdo especialmente para ser usado pelo especialista
na transferncia do seu conhecimento para o sistema e o formata de maneira adequada.
BASE DE CONHECIMENTO
USURIO
Eu tenho febre
Eu tenho dor de cabea
Eu tenho coriza
Eu tenho 45 anos
Interface
L.Natural
Ter Febre
Ter Dor de Cabea
Ter Coriza
Ter 45 Anos
FATOS
ESPECIALISTAS
1) Se algum tem febre e tem
coriza, ento tem 60% de
evidncias de gripe.
2) Se algum tem febre e tem
coceira, ento tem 80% de
evidncias de urticria.
3) Se algum tem febre e tem
coriza, e menos de 10 anos,
ento tem 90% de evidncia de
virose.
Editor
Inteligente
REGRAS
Figura 2.2. Estrutura e atualizao de uma base de conhecimento.
2.5.2. Mquina de Inferncia
Juntamente com a base de conhecimento, a mquina de inferncia compe o
ncleo do sistema especialista. Basicamente se trata de um protocolo de programa para
navegar atravs das regras e dados da representao do conhecimento buscando resolver
o problema. Sua tarefa selecionar e aplicar a regra mais apropriada em cada passo de
execuo do sistema, o que contrasta com a programao convencional, onde o
programador seleciona a ordem na qual o programa dever executar os passos ainda em
tempo de programao.
23
O papel da mquina de inferncia semelhante ao do especialista humano:
quando este recebe uma solicitao de pesquisa ou atravs de um dilogo para troca de
informaes, a mquina tenta interpretar a necessidade do usurio, e ajud-lo a definir
melhor aquilo que est procurando e chegar a uma concluso. Segundo RIBEIRO
(1987), existem diversos processos para se fazer a inferncia, pois este est diretamente
ligado representao do conhecimento, porm, o mtodo mais usado o da avaliao
de regras. A figura 2.3. ilustra o tipo de busca que uma mquina de inferncia pode
fazer numa base de conhecimento com representao em rvore. O sistema do exemplo
busca identificar o tipo de objeto sobre uma mesa a partir da identificao de trs
variveis: som, cor e forma. O exemplo foi retirado do material de aula do Prof. Dr.
Paulo BORGES (2001).
Preto
Cor?
Sim
Faz
Rudo?
Branco
Preto
No
Cor?
Telefone
Computador
Disquete
Plano
Branco
Cilndrico
Papel
Lpis
24
soluo de um problema tem dados ou idias bsicas como ponto de partida, sem uma
meta previamente definida. Por exemplo quando temos um conjunto de sintomas e
queremos inferir as possveis doenas associadas.
J o encadeamento para trs, tambm chamado de raciocnio dirigido a metas,
utilizado quando se tem uma meta como ponto de partida e se deseja satisfaz-la. A
partir da meta todas as hipteses so verificadas Por exemplo, tendo um determinado
efeito, investiga-se os fatores que em tese levariam a confirmar este efeito. Um
problema que pode acontecer neste mtodo a exploso combinatria a que se pode
chegar em alguns casos, quando seria o usurio confrontado com uma extensa
apresentao de possibilidades para sua anlise, o que no seria muito vivel.
Outra possibilidade a combinao dos dois mtodos. Esta abordagem usada
quando se tem amplo espao de busca e esta busca pode ser dividida hierarquicamente,
sendo ento possvel combinar o uso das direes do inferior para o maior e do
maior para o inferior apropriadamente.
No prximo captulo, quando ser analisado o raciocnio baseado em casos
veremos que a busca realizada pela mquina de inferncia sobre uma base de casos, ao
invs de regras e fatos, utilizar outro mtodo, que buscar qual o caso dentre os
armazenados que mais se aproxima do problema apresentado pelo usurio atravs da
interface do sistema.
2.5.3. Sistema de Consulta
Este mdulo tambm pode ser chamado de interface com o usurio, e acionado
basicamente em trs situaes: no incio da interao, quando o usurio vai informar ao
sistema qual o problema para o qual ele busca uma soluo; durante o processamento,
quando o motor de inferncia necessitar alguma orientao ou interveno direta do
usurio indicando um caminho a seguir; e ao final do processamento, apresentando o
resultado obtido para o utilizador.
Nesta interface do usurio, um componente que pode ser muito importante para
o sucesso do sistema a capacidade do mesmo compreender sentenas escritas em
linguagem natural. Este sub-mdulo do sistema de consulta tem o objetivo, segundo
RIBEIRO (1987), de tornar transparente para quem usa o sistema toda sua
complexidade. Seu objetivo uma comunicao o mais perto possvel da linguagem
normalmente usada entre dois interlocutores humanos, evitando que o usurio do
sistema tenha que aprender uma linguagem computacional prpria ou complexa para o
uso do sistema. Este mdulo , ele prprio, um sistema especialista, e um estudo
parte em Inteligncia Artificial.
25
2.5.4. Mecanismo de Aprendizagem
Especialista
Engenheiro
do
Conhecimento
Conhecimento
formalizado
Base de
Conhecimento
Dados,
problemas,
explicaes, verificaes.
26
busca apresentar ao usurio as informaes necessrias para que este fique totalmente a
par de como e por que uma estratgia de pesquisa foi aplicada e uma deciso foi
alcanada.
Conforme RIBEIRO (1987), este mdulo utiliza diversos recursos e estruturas
prprias para atender ao seu objetivo, mostrando que regras e que fatos foram usados da
base de conhecimento na busca da soluo. As implementaes atuais do justificador
procuram atender s perguntas: como? Por qu? Por que no? Qual?
Segundo o mesmo autor no existe ainda, entre os pesquisadores, uma
uniformidade de conceitos bsicos. Alguns dos problemas mostrados abaixo ainda so
bastante discutidos e so implementados de maneira muito diferente e rudimentar, nos
sistemas existentes; ou de maneira mais radical, simplesmente no so implementados.
As naturezas dos problemas so:
2.5.6. Quadro-negro
27
Base de
Conhecimento
Verificar fatos
QUADRO-
NEGRO
Mecanismo de
Inferncia
Anlise de regras
28
Aps a exposio desses fatos, conclui-se que os shells so timas ferramentas
para o desenvolvimento inicial dos SE, mas se estes vo ser usados intensamente e por
um longo tempo, vale a pena otimizar o prottipo inicial, reescrevendo o sistema de
uma forma mais enxuta e funcional.
2.7. Implementaes Existentes
Incontveis so as aplicaes baseadas no paradigma dos sistemas especialistas
hoje em dia, principalmente as que usam raciocnio baseado em regras, e algumas das
mais famosas e representativas so brevemente aqui descritas.
MYCIN: segundo BARRETO (1999), um SE da autoria de E. H. Shortliffe
para diagnstico e tratamento de doenas infecciosas do sangue. O MYCIN se tornou
famoso por ser pioneiro no uso de um conjunto de conceitos de serviram de base para a
moderna estrutura dos SE. Alguns desses conceitos so: separao da base de
conhecimento e da mquina de inferncia, o que permite usar um mesmo motor de
inferncia com uma base de conhecimentos diferente e tratar um domnio de
conhecimento totalmente diverso do original; tratamento da incerteza atravs de fatores
de certeza, que mostraram que o raciocnio mdico no segue um padro probabilstico;
foi o primeiro de uma srie de SE da rea mdica.
PROSPECTOR: um SE de apoio para gelogos em busca de depsitos com
recursos minerais. Seguiu muitas das idias apresentadas pelo MYCIN, introduzindo
uma interface com o usurio que permitia a comunicao em linguagem tcnica de
geologia, chamada Lifer. Um ponto inovador do PROSPECTOR foi a diviso dos fatos
e regras da base de conhecimento em 15 modelos, cada um com cerca de 200 fatos e
regras especficos de cada tipo de depsito mineral.
ACE: automated cable expertise, um sistema especialista desenvolvido pela
AT&T q eu contm conhecimento destilado em forma de regras se-ento. Este
conhecimento foi obtido de peritos na manuteno de cabos das companhias telefnicas.
Diferencia-se de outros SE por dois pontos: manipular grandes quantidades de dados e
obter esses dados automaticamente de bases de dados distribudas.
ABEL: sistema especialista de aconselhamento teraputico para identificao
de distrbios eletrolticos e cidos-bsicos.
Art of Negotiating: simula uma sesso de negociao e orienta na modelagem
de uma estratgia, baseando-se em perguntas sobre a personalidade dos participantes da
negociao.
Communication Edge: anlise e sntese para preparao de reunies de
negcios.
Emes: administrao de distribuio de fora eltrica de componentes eltricos
em naves espaciais.
NTC: consultor para eliminao de problemas de rede capaz de dar anlises
interpretativas de problemas da Ethernet/Decnet.
29
SCCES: clculo de riscos de fatores envolvidos no processamento do petrleo
e desgaste e corroso.
VM: interpretao e consulta sobre terapia intensiva em relao a pacientes
em estado grave.
XCON: o Expert Configurer um SE utilizado diariamente nas operaes
mundiais de manufatura da Digital para configurar a maioria dos computadores VAX e
PDP-11 que esto em pedido. Tem um mdulo que permite que os vendedores
configurem interativamente sistemas computadorizados e tem tambm um mdulo para
treinar o pessoal de vendas.
31
recuperado frente s necessidades do novo caso, e a adaptao do caso recuperado para
que atenda satisfatoriamente o novo problema, conforme podemos ver na figura 3.1.
Raciocnio
Baseado em Casos
Recuperao
Avaliao
Adaptao
3.2. Histrico
Em 1977, conforme MELCHIORS (1999), Schank e Abelson propuseram que o
conhecimento geral das pessoas sobre as situaes est armazenado em scripts,
permitindo que elas criem expectativas sobre o que ouvem, e dessa forma faam
dedues sobre as relaes entre as coisas que ouviram. Os scripts foram propostos
como uma estrutura de memria conceitual, descrevendo informao sobre eventos
estereotipados, como ir a um restaurante ou a uma consulta a um mdico. Porm,
experimentos com scripts mostraram que eles no representam uma teoria completa de
representao de memria, j que as pessoas confundem eventos que tem scripts
similares. Os scripts parecem ser apenas uma faceta dos conhecimentos que as pessoas
utilizam para a compreenso: elas se valem tambm outros tipos de conhecimento,
como o conhecimento sobre objetivos, planos, relaes interpessoais e papis efetuados
pelas pessoas, segundo KOLODNER (1993). Representaes sobre estes tipos de
conhecimento tm sido propostas e sistemas de computadores que usam estes tipos de
conhecimento para o entendimento tm sido desenvolvidos.
Em 1982, Roger SCHANK (1982), props a teoria da Dinamic Memory
(memria dinmica) e o papel central que a lembrana de situaes anteriores casos
e modelos de situaes (scripts, MOPs pacotes de organizao de memria)
desempenham na resoluo de problemas. Este trabalho, segundo AAMODT e PLAZA
(1994), apresenta as razes do uso de raciocnio baseado em casos na Inteligncia
Artificial. Outras caractersticas do campo RBC tm sido originadas do estudo de
raciocnio analgico proposto por Gentner, ainda conforme MELCHIORS (1999) e das
teorias de formao de conceitos, resoluo de problemas e aprendizado experimental
dentro da filosofia e psicologia.
O primeiro sistema RBC, denominado CYRUS, foi desenvolvido por
KOLODNER (1993). Este sistema, baseado no modelo de memria dinmica de
32
SCHANK (1982) e na teoria MOP de resoluo de problemas e aprendizado, foi
basicamente um sistema de questes e respostas com conhecimento de vrias viagens e
encontros do primeiro secretrio do estado americano, Cyrus Vance. O modelo de
memria de casos desenvolvido por este sistema serviu de base para outros diversos
sistemas RBC, dentre eles MEDIATOR, PERSUADER, CHEF, JULIA e CASEY.
Outra base de RBC e conjunto de modelos foi desenvolvida por Bruce Porter e
seu grupo na University of Texas, em Austin. Inicialmente trabalhando com o problema
de aprendizado automtico para classificao de tarefas, o grupo desenvolveu o sistema
PROTOS. Esse sistema enfatiza a integrao do conhecimento geral do domnio e do
conhecimento especfico de casos em uma estrutura de representao unificada um
modelo de memria de casos. Alm dessa, outra contribuio importante para a rea foi
o trabalho do grupo de Edwina Rissland na University of Massachussetts, em Amherst,
que desenvolveram o sistema HYPO, aplicado para o domnio do Direito.
Atualmente, as pesquisas em RBC tm estendido-se rapidamente, sendo
percebido um crescente nmero de artigos envolvendo RBC em peridicos de IA e um
aumento de aplicaes comerciais de sucesso, alm de pesquisas em desenvolvimento
em diversos pases.
3.3. Diferenas do RBR e do RBC
As principais diferenas entre as duas metodologias so:
enquanto as regras so pequenas partes do conhecimento, independentes e
consistentes, casos so grandes pores do conhecimento, provavelmente com partes
redundantes entre si.
para determinar a soluo de um problema em um sistema RBR, as regras
precisam casar exatamente entre si e h necessidade da aplicao de vrias regras para
chegar soluo. Em RBC exigido apenas um casamento parcial entre os casos e a
soluo proposta como um todo para depois ser adaptada.
a manuteno de um sistema baseado em regras necessria em todo o seu
ciclo de vida, pois a adio de uma regra freqentemente requer a modificao de vrias
outras. A adio de casos em RBC (aprendizado) requer pouca ou nenhuma
modificao, tornando o aprendizado bem mais simples.
O mais forte argumento para a utilizao do paradigma baseado em casos para a
simulao de um especialista humano o fato de o que faz um especialista sua
experincia. Se o conhecimento especialista fosse somente aquele dos livros, bastaria
modelar a informao dos livros em regras e pronto. Entretanto, num processo de
extrao de conhecimento especialista, observa-se que o especialista coloca sua
experincia para tentar explicar como faz seu trabalho. Muitas vezes, sua especialidade
ilustrada atravs de exemplos, experincias passadas que justificam a abordagem
escolhida para tratar determinado problema. Alm disso, quando possvel estabelecer
uma regra para determinada situao, esta vem sempre acompanhada de excees.
33
3.4. Arquitetura de um Sistema RBC
Podemos representar a arquitetura de um sistema RBC de diversas formas, de
maneira mais sinttica ou mais analtica, de acordo com a necessidade do estudo em
questo. Logo a seguir apresentamos duas figuras representando o processo RBC, a
primeira ligeiramente mais sinttica que a segunda, mas como podemos acompanhar
ambas representam o mesmo processo. Seguindo as figuras temos explicaes acerca de
cada componente do processo do raciocnio baseado em casos.
Problema
Corrente
Novo Caso
RECUPERAO
Casos
Recuperados
Base de
Conhecimento
Caso
Aprendido
Novo Caso
ARMAZENAMENTO
Caso
Avaliado
REUTILIZAO
REVISO
Caso
Proposto
34
tamanhos e modelos, assim como podem representar um pequeno ou grande intervalo
de tempo. KOLODNER (1993) define a partir dessas observaes que um caso um
pedao de conhecimento contextualizado representando uma experincia que ensina
uma lio fundamental para atingir os objetivos do raciocinador.
Mquina de
Inferncia RBC
Base de
Conhecimento RBC
Entrada
Problema
Atribuio de ndices
Base de Casos
Regras de
Indexao
Entrada ndices
Recuperao
Memria de
casos
Caso Recuperado
Armazenamento
Atribuio de
ndices
Soluo
Regras de
Combinao
Adaptao
Regras de
Adaptao
Soluo Proposta
Teste
Nova soluo
Descrio de Falhas
Reparo
Explicao
Regras de
Reparo
Anlise Causal
Caractersticas
previstas
Fig. 3.3. O Ciclo RBC verso mais analtica.
Os casos so formados por duas partes maiores: as lies que ele ensina
contidas no contedo dos casos e o contexto em que pode ensinar tais lies
representado pelos ndices. Tipicamente, o contedo de um caso formado por trs
partes principais, KOLODNER (1993):
Descrio do problema ou situao: apresentando as condies do ambiente
no momento que o caso ocorreu e as restries associadas;
Soluo: que expressa a soluo derivada para o problema, podendo ser
formada por uma ao, um conjunto de procedimentos, um diagnstico, uma
classificao, um projeto, etc., variando conforme o tipo de problema que o sistema se
prope a resolver;
Resultado: que descreve o estado no ambiente real aps o caso ter ocorrido e
a soluo ter sido, assim, aplicada.
35
A descrio do problema ou situao representa o problema que precisa ser
solucionado ou a situao que precisar ser interpretada, classificada ou entendida.
Como, de modo geral, um sistema RBC utiliza as similaridades entre a descrio do
caso corrente e do caso armazenado para decidir se um caso armazenado deve ser
recuperado, a descrio deve ser suficientemente detalhada para que o sistema seja
capaz de julgar a aplicabilidade do caso na nova situao.
A descrio do problema formada por trs componentes maiores, de acordo
com KOLODNER (1993): pelos objetivos a serem atingidos na resoluo de um
problema, pelas restries relacionadas a estes objetivos e pelas caractersticas do
problema e relaes entre as partes.
Os objetivos na descrio do problema se referem s intenes ou propsitos a
serem atingidos na situao. Estas intenes podem ser concretas ou abstratas,
dependendo de que lies o caso almeja fornecer. Se o caso deseja diagnosticar um
conjunto de sintomas, ento o objetivo ser diagnstico. J se o caso pretende criar
uma soluo para uma questo, seu objetivo ser criao. As restries, por sua vez,
envolvem as condies relacionadas aos objetivos almejados que precisam ser
consideradas no processo, como, por exemplo, no incluir um certo ingrediente na
criao de uma receita culinria ou no causar determinada reao em um paciente que
possui alergia a um medicamento.
Por fim, as caractersticas da situao envolvem todas as outras informaes
descritivas sobre a situao, que so relevantes para a obteno dos seus objetivos. Em
uma aplicao de diagnstico mdico, por exemplo, sintomas e resultados de exames do
paciente so descritores necessrios para construir a soluo, enquanto outras
caractersticas podem tambm ser consideradas para a busca do objetivo. Do mesmo
modo, alguns sintomas ou particularidades observados em uma rede de computadores
devem necessariamente ser usados para solucionar um problema, enquanto outros
podem ser usados para a soluo desejada.
Dependendo da aplicao sendo desenvolvida, diferente ateno exigida para
cada um dos componentes da descrio do problema algumas enfatizam os trs
componentes da descrio, outras enfatizam somente um ou dois. As situaes que
exigem uma soluo explcita, como um projeto ou planejamento de tarefas, enfatizam,
de modo geral, os objetivos e as restries em suas representaes do problema.
Aquelas aplicaes que requerem entendimento ou interpretao, por sua vez,
tendem a ter um nico objetivo simples como diagnstico ou entendimento e enfatizam
os escritores da situao problema. Assim, conforme sugere KOLODNER (1993), h
dois princpios gerais que devem ser seguidos na deciso de que informaes devem
pertencer descrio do problema:
incluir toda a informao descritiva que deve ser explicitamente levada em
conta na busca do objetivo do caso;
incluir todos os tipos de informao descritiva que so normalmente usados
para descrever os casos desta espcie.
O primeiro princpio permite que o sistema ignore caractersticas que so
relevantes, mas implcitas, por nunca variarem. O segundo, necessrio para a
acessibilidade do caso. Ao menos algumas pores da descrio do caso so usadas em
um sistema para a indexao e julgamento da similaridade, sendo melhores para a
36
recuperao aqueles que so semelhantes nas dimenses que se sabe serem relevantes
para a soluo do problema. Porm, como existe muita informao que no conhecida
quando um novo caso descrito, necessrio alternar o modo de determinar os
melhores casamentos.
A parte componente soluo de um caso representa os conceitos ou objetos que
atingiram os objetivos descritos na descrio do problema, levando em considerao as
restries e as caractersticas especificadas. Existem diferentes tipos de solues em
um problema de projeto a soluo o artefato elaborado, enquanto que em um problema
de interpretao de uma situao ela a interpretao apresentada para o caso. Alm da
soluo de um caso recuperado ser usada para derivar uma soluo para o caso corrente,
ela pode tambm possuir componentes que acrescentem adaptao e reviso da soluo
proposta. Entre as partes componentes da soluo que podem ser teis para essas
funes esto, alm da soluo propriamente dita, o conjunto de passos usados no
raciocnio para resolver o problema, o conjunto de justificativas para as decises que
foram tomadas, as solues aceitveis que no foram escolhidas e suas as justificativas,
as solues inaceitveis que foram eliminadas e suas justificativas e as expectativas
frente aos resultados aps a soluo ser efetuada.
Por fim, a parte componente resultado de um caso identifica o que ocorreu como
conseqncia da soluo efetuada e como ela foi realizada. Este componente inclui
tanto o feedback do ambiente real como as interpretaes para este feedback, de modo
que o sistema possa antecipar problemas em potencial e predizer resultados de uma
soluo proposta. Alm disso, o resultado pode tambm incluir a explicao do porqu
uma soluo falhou ou expectativas frente a uma soluo falharam e o que foi feito para
reparar estas falhas.
Os casos podem ser representados em uma grande variedade de formas usando
praticamente que todos os formalismos de representao da Inteligncia Artificial,
conforme WATSON (1994), incluindo frames, objetos, predicados, redes semnticas e
regras, alm de estruturas menos ricas semanticamente, como os modelos de banco de
dados comerciais. Segundo ABEL (1986), muitos sistemas usam mais de um dos
formalismos acima combinados.
3.4.1.2. Indexao
Os ndices so normalmente utilizados quando a base de casos grande, para
facilitar a recuperao dos casos armazenados, sendo os responsveis por tornar um
caso acessvel no momento e condio apropriado isto , quando ele possuir um
potencial para contribuir para a soluo do problema corrente. So combinaes dos
descritores importantes de um caso, isto , daqueles descritores que distinguem um caso
dos outros. O esquema de indexao envolve vrias partes. Primeiramente, devem ser
designados rtulos para os casos no momento em que estes so armazenados na base, de
modo a garantir que eles possam ser recuperados no momento apropriado. Tais rtulos
so usados no momento de recuperao para julgar se o caso armazenado deve ser
selecionado. Uma segunda questo envolvendo a indexao a definio da
organizao dos casos, de modo que a busca atravs da base de casos seja eficiente e
precisa. Relacionada a estas questes est a definio dos algoritmos de recuperao a
serem utilizados.
37
A atribuio de ndices aos casos depende da compreenso do contedo e das
informaes que um caso pode fornecer. Ela deve permitir que sejam reconhecidas as
similaridades entre a situao corrente e os casos armazenados que podem contribuir
para atingir os objetivos do caso corrente. Assim, para a escolha de um bom ndice,
necessria uma grande compreenso da situao problema, de forma que essas
similaridades possam ser corretamente identificadas. Considere-se, por exemplo, a
resoluo de um problema ocorrido em uma rede de computadores. Informaes como a
aplicao utilizada e o usurio que identificou o problema no so importantes quando o
problema envolve o acesso fsico de um equipamento por problemas em sua placa de
rede ou no cabeamento. Por outro lado, se o problema envolver a no autenticao do
usurio por uma aplicao, a aplicao utilizada e o usurio so dados importantes.
Como apontado em ABEL (1986), a similaridade que se busca em sistemas de
raciocnio baseado em casos muitas vezes diferente daquelas semelhanas superficiais,
obtidas pela comparao de dados descritivos. um estilo de similaridade mais abstrata,
que permite reconhecer em diferentes contextos as solues que possam ser aplicadas
em novos casos.
Atravs da experincia com a construo de sistemas RBC, a comunidade RBC
prope,conforme KOLODNER (1993), alguns princpios que devem ser seguidos para a
escolha de ndices apropriados:
38
3.4.2. Recuperao
3.4.2.1. Algoritmos de Recuperao
Um algoritmo de recuperao de casos o responsvel por encontrar, a partir da
descrio de um problema ou situao, um pequeno conjunto de casos similares ao
problema corrente que seja til para a identificao da sua soluo. A busca pelos casos
similares no deve considerar, porm, apenas a descoberta de algumas dimenses da
descrio do problema similares situao. Na identificao da similaridade entre os
casos, segundo KOLODNER (1993), alguns atributos so mais importantes que outros
no julgamento da mesma e esta valorao pode variar de acordo com os objetivos
almejados pelo sistema. Assim, a recuperao de casos similares envolve considerar que
os casos similares ao problema corrente so aqueles que so similares nas dimenses
que auxiliam o sistema a realizar suas tarefas ou atingir os objetivos desejados.
A recuperao dos casos teis situao corrente envolve vrias etapas, cada
uma possuindo diferentes pontos que devem ser analisados. Inicialmente, precisam ser
identificadas quais as caractersticas ou dimenses do caso corrente que devem ser
utilizadas para julgar a similaridade dos casos armazenados. Isso determinado
levando-se em conta os propsitos para os quais os casos esto sendo recuperados e as
dimenses que foram relevantes no passado para determinar o resultado do ambiente
para as solues aplicadas. Essas caractersticas sero ento utilizadas pelos
procedimentos de casamento e classificao para identificar quais dos casos
armazenados tm o potencial de serem mais teis.
Como os ndices de um caso indicam quais das suas dimenses so mais
importantes para julgar a similaridade, os algoritmos de casamento utilizam os ndices
para auxiliar no processo de identificao de que caractersticas devem ser consideradas
para a similaridade entre os casos. Esses algoritmos devem, contudo, estar habilitados
para distinguir, dentre os vrios ndices existentes, quais focalizar para um dado
momento quando os casos estiverem indexados em muitas formas.
Uma outra questo relevante no processo de recuperao a dos algoritmos de
busca propriamente ditos. Estes algoritmos so os processos que viabilizam encontrar na
base aqueles casos que potencialmente podem ter um bom casamento com a situao
corrente. A partir dos casos identificados pelos algoritmos de busca empregados, os
procedimentos de casamento so aplicados.
Os algoritmos de busca so relacionados diretamente s estruturas utilizadas nas
bases de casos para organiz-las. Uma estrutura em lista , por exemplo, consultada pelo
algoritmo de modo diferente de uma estrutura em rvore complexa. Assim, diferentes
organizaes dos casos na base ocasionam diferentes algoritmos para recuperar seus
casos.
Um esquema dos processos envolvidos na recuperao de um caso pode ser
visto na figura abaixo, adaptada de KOLODNER (1993). Conforme mostra o nvel
superior da figura, inicialmente feita uma avaliao da situao e so identificadas as
caractersticas que sero usadas para a busca na base de casos, sendo freqentemente
necessrio que algumas dessas caractersticas sejam elaboradas pelo sistema. Os
algoritmos de recuperao, atravs da descrio do problema e dos ndices selecionados
para a consulta na base, buscam os casos com potencial de serem similares e utilizam os
39
mecanismos de casamento, seja para calcular o grau de casamento entre a situao
corrente e os casos encontrados, seja para calcular o casamento de uma dimenso
individual. Os algoritmos de recuperao retornam, ento, uma lista dos casos
parcialmente casados, cada qual com no mnimo algum potencial de ser til para o
sistema. Os casos so, por fim, analisados pelos procedimentos de classificao e
aqueles que possuem mais potencial de serem teis so retornados.
Avaliao da situao
Elaborao da descrio do caso
Clculo dos ndices hipotticos para a
nova situao (caso corrente)
40
no apenas aps a busca na base de casos, mas tambm serem utilizados para esta
busca.
Para a definio dos procedimentos de casamento necessrio que algumas
questes sejam consideradas. Uma dessas questes envolve a identificao da
correspondncia entre os campos do caso corrente e os casos armazenados. Isso pode
ser feito por meio da associao de campos com nomes iguais, contudo nem sempre esta
associao to simples: os casos podem possuir nmero de caractersticas diferentes,
estar representados em diferentes pontos de vista, variando com os objetivos almejados
pela situao descrita, etc. Nessas situaes, o uso de heursticas de senso comum pode
contribuir para a identificao da correspondncia. Em KOLODNER (1993), cinco
heursticas que podem ser utilizadas nesse processo so apresentadas:
1. campos com mesmo nome devem ser mapeados diretamente, mesmo
considerando que uma estrutura possua subdivises e outra no;
2. preferir o mapeamento entre as caractersticas que possuem o mesmo papel
funcional;
3. preferir o mapeamento das caractersticas que satisfazem as mesmas
restries;
4. preferir o mapeamento das caractersticas que possuem os mesmos valores
ou valores similares;
5. mltiplas caractersticas do problema podem ser mapeadas para uma
caracterstica simples mais geral ou vice versa.
Quando um modelo causal para o domnio est disponvel, isso pode tambm ser
utilizado para a definio dessa correspondncia. O sistema CASEY, aplicado ao
domnio da medicina, um exemplo de como um modelo causal pode ser usado para
determinar a correspondncia entre caractersticas.
Neste modelo, so utilizadas regras de evidncia para determinar como dois
campos podem ou no ser considerados iguais. utilizado um modelo que define que
caractersticas e resultados correspondentes a outras caractersticas e outros resultados,
que caractersticas levam a outras, que valores entre os possveis para uma dimenso
pertencem ao mesmo intervalo e so assim considerados similares.
Outra questo necessria para os procedimentos de casamento a definio de
como ser calculado o grau de similaridade entre as caractersticas correspondentes.
Entre os mtodos disponveis citados por KOLODNER (1993) esto:
distncia qualitativa e quantitativa. Este mtodo utiliza vrias formas,
dependendo do tipo de valor da dimenso:
(a) dividir em regies, atribuindo casamento exato para aqueles
valores que esto na mesma e os valores uma regio, duas
regies, etc. para aqueles que no se encontrarem na mesma. Para
resolver problemas gerados por valores muito prximos dos
limites dos intervalos, podem ser criadas regies que se
sobrepem;
(b) medir a diferena numrica e atribuir classificao qualitativa;
41
(c) fazer a enumerao de valores qualitativos quando no h
nmeros e medir como casamento exato, casamento com uma
regio distante, duas regies distantes, etc. Pode tambm ser
atribudo um valor numrico para cada valor qualitativo e
compar-los;
(d) comparar os atributos de cada valor utilizando uma estrutura de
comparao que aponta as similaridades e diferenas ou tambm
utilizando representaes com frames;
(e) comparar numericamente os valores numricos, atribuindo um
casamento pior para valores mais distantes.
julgar o grau de similaridade baseado na eficincia da funo. Para isso pode
ser utilizado um modelo causal. Se dois valores diferentes qualitativamente (como, por
exemplo, uma cadeira e uma pedra utilizada para uma pessoa sentar-se) so mostrados
correspondentes por um modelo causal, ento elas casam. Neste mtodo no
comparado o grau de casamento, apenas se eles casam ou no.
hierarquia de abstrao. Neste mtodo, a similaridade entre dois valores
medida pela utilizao da abstrao com valor comum a estes valores mais especfica,
sendo que quanto mais especfica a abstrao comum, maior a similaridade.
Por fim, necessrio atribuir valores de importncia para as dimenses da
representao, de modo a apontar as informaes mais relevantes para a similaridade
dos casos sendo comparados. Para isso, devem ser atribudos pesos para cada campo, o
que pode ser feito de forma global, para um grande nmero de casos, ou atribudo de
modo mais local, apenas para um pequeno conjunto. Esta importncia entre as
dimenses pode ser identificada com a ajuda de um especialista ou atravs de uma
avaliao estatstica para determinar quais campos resultam em diferentes resultados ou
solues. Pode tambm ser interessante atribuir diferentes valores de importncia para
cada objetivo da situao, o que pode ser feito de forma dinmica.
Uma vez que alguns casos tenham sido recuperados e os procedimentos de
casamento tenham sido efetuados sobre eles, estes devem passar por mtodos de
classificao a fim de sejam escolhidos os casos mais similares situao corrente.
Como j foi dito, muitas vezes esses procedimentos so feitos de modo integrado, em
uma nica etapa.
Existem vrios mtodos envolvendo os procedimentos de casamento e
classificao que so utilizados no processo de recuperao dos casos. Entre estes
apresentamos:
algoritmo de vizinhana (nearest-neighbor matching): este algoritmo um
procedimento numrico em que utilizada uma funo de avaliao numrica para cada
caracterstica. Para cada caracterstica do caso corrente encontrada a caracterstica
correspondente no caso recuperado, os valores so comparados, o grau de casamento
calculado e multiplicado pelo grau de importncia da caracterstica;
excluso: os casos que no possuem caractersticas ou relaes que os tornam
diferentes ou no teis em relao ao caso atual so excludos, como no caso de
objetivos diferentes, por exemplo. Aps este processo, realizada uma avaliao
numrica.
42
Existem tambm mtodos que levam em conta o contexto da situao, que esto
presentes em sistemas que tratam diferentes propsitos ou contextos e, assim, precisam
utilizar meios de avaliar seus graus de casamentos parciais tambm diferentes. Isso pode
ser feito utilizando-se:
mltiplas associaes de importncia, em uma classificao dinmica. Neste
mtodo so utilizados vrios conjuntos de critrios de importncia, cada um associado
com as condies relacionadas s circunstncias sobre as quais eles deveriam ser
usados. Isso pode ser feito atravs:
(a) do fracionamento da base de casos sendo relacionado um
diferente conjunto de critrios de importncia para cada partio;
(b) da associao de diferentes critrios de importncia para cada
diferente objetivo de raciocnio;
(c) da associao de um ou mais conjuntos de critrios de
importncia para cada caso, cada um associado com uma
diferente tarefa para qual o caso pode ser usado.
Quando somente um objetivo de raciocnio ser usado na base de casos, mas o que
importante varia com o tipo da nova situao, a biblioteca de casos pode ser secionada
de acordo com o tipo e para cada partio indicado um conjunto de valores de
importncia para as dimenses dos casos (caso a). Quando mltiplos objetivos so
suportados pela base de casos, entretanto, o particionamento por tipo no suficiente e
os casos em cada partio devem ser avaliados diferentemente dependendo do objetivo
do raciocnio para o qual ele deve servir (caso b). Para acomodar diferentes objetivos de
raciocnio, diferentes funes de avaliao podem ser associadas para cada diferente
objetivo de raciocnio. Por fim, quando critrios para julgar a similaridade variam tanto
em relao ao objetivo sendo buscado como em relao ao tipo de caso, valores de
importncia devem ser assinalados, levando ambos em conta (caso c). Podem ainda
existir, porm, casos altamente particulares. Nessa situao, devem ser associados um
ou mais conjuntos de critrios de importncia para cada caso. Cada conjunto de valores
designado para um objetivo e enfatiza as dimenses do caso que, se casarem bem,
indicam que ele pode servir para o objetivo.
preferncias para implementar um esquema de classificao relativa.
utilizado para fazer um corte aps os casos terem sido selecionados, passando-os por
filtros se existem muitos casos aps o casamento. Esses filtros podem ser relacionados
ao objetivo de raciocnio, ao grau de especificidade e facilidade de adaptao, e
freqncia e ocorrncia recente.
3.4.3. Reutilizao
Aps os casos similares terem sido recuperados da base e o melhor caso ter sido
selecionado, a soluo deste caso deve ser reutilizada, podendo ser adaptada para as
necessidades do problema corrente. A adaptao consiste, segundo WATSON (1994),
na identificao das diferenas entre o caso recuperado da base e o caso corrente e a
anlise das partes do caso recuperado que podem ser transferidas para o caso corrente,
aplicando frmulas e regras que consideram estas diferenas e sugerem uma soluo.
43
Uma soluo pode ser reutilizada de modo direto, sendo aplicada a soluo
recuperada sem ser adaptada. Essa tcnica, denominada por alguns de adaptao nula ou
identificada simplesmente como cpia, til em problemas que envolvem um raciocnio
complexo, mas uma soluo simples, e utilizada nos sistemas em que as diferenas
no so consideradas relevantes, ao passo que as similaridades entre os casos o so.
Entretanto, em sistemas que levam essas diferenas em conta, um processo de adaptao
necessrio, podendo ser feito atravs da simples substituio de componentes da
situao recuperada por componentes da situao corrente, por meio da transformao
da antiga soluo para uma soluo que seja aplicada ao novo problema e por meio da
derivao de uma nova soluo, utilizando mtodos para derivar a soluo ou pedaos
da soluo do caso armazenado. Entre os mtodos ou tcnicas que tm sido usados para
adaptao podem ser citados:
reinstanciao: usada para instanciar caractersticas da antiga soluo com
caractersticas da nova. utilizada, por exemplo, segundo KOLODNER (1993), pelo
sistema CHEF para propor a substituio de um prato por outro na elaborao de um
cardpio de uma refeio.
adaptao parametrizada: usada para o ajuste de parmetros da antiga
soluo atravs do uso de heursticas especializadas que identificam as relaes entre as
especificaes de entrada e as diferentes solues. Esta tcnica freqentemente usada
quando as variveis relevantes do caso so numricas, sendo um exemplo de sua
aplicao o clculo da quantidade de ingredientes pela relao do nmero de pessoas.
Uma das dificuldades em aplicar esta tcnica o conhecimento da funo que relaciona
as variveis descritivas do problema e a soluo.
busca local: fornece um meio de buscar em uma estrutura de conhecimento
auxiliar um substituto para um valor ou estrutura do caso recuperado que no
apropriado para a situao corrente. Um exemplo seria a busca em uma rede semntica
por frutas que pudessem substituir a fruta laranja em um prato de sobremesa sendo
elaborado.
consulta a memria: procura em estruturas de conhecimento auxiliares ou na
memria de casos por algo com uma dada descrio.
substituio baseada em casos: utiliza, para a substituio de um parmetro,
casos da base.
transformao de senso comum: utiliza heursticas de senso comum para
inserir, remover ou modificar componentes em uma soluo.
reparo guiado ao modelo: efetua transformaes na soluo do caso anterior,
guiadas por um modelo causal. indicada especialmente em sistemas que envolvem
raciocnio sobre equipamentos, seja envolvendo diagnstico ou projeto.
44
Usando este raciocnio, um problema pode ser resolvido pela mesma seqncia de
passos que foi previamente utilizada para solucionar o caso recuperado. importante
observar que procedimentos no so solues do problema, mas instrues que devem
guiar para a causa do problema e solues potenciais. Com essa forma de adaptao, o
sistema oferece (ou mesmo executa) os procedimentos que funcionaram em casos
passados para chegar soluo do problema corrente. Para utilizar este mtodo,
necessrio haver um repositrio dos procedimentos e um modo de mapear tipos de
problemas para procedimentos que mais regularmente levam a uma soluo.
adaptao baseada em crtica: nesta tcnica, o usurio observa a soluo
proposta no caso recuperado e manualmente adapta a soluo para o caso corrente.
usada quando o sistema recupera solues que o usurio sabe que no funcionar,
sabendo porque no funcionar e como fazer funcionar. Nessas situaes, o usurio
deve adaptar o caso por si mesmo, j que o caso sugerido como uma possvel soluo
pode solucionar a situao com uma pequena modificao. Deve ser, entretanto,
documentado o modo que o caso foi adaptado para que ele possa ser usado no futuro,
conforme ABEL (1986).
3.4.4. Reviso
Aps um caso ter sido recuperado da base e sua soluo adaptada para o caso
corrente, so necessrios dois passos de reviso: a avaliao da soluo proposta e, se
necessria, a reparao da soluo.
3.4.4.1. Avaliao da Soluo Proposta
A avaliao da soluo resultado da aplicao da soluo proposta em um
ambiente de avaliao dos resultados ocorridos. O ambiente pode ser representado por
um ambiente de simulao apto a gerar os resultados corretos a uma soluo. De modo
geral, porm, essa etapa avaliada no ambiente real, para o problema real. Os resultados
da execuo da soluo podem variar desde alguns segundos, quando aplicada, por
exemplo, para corrigir automaticamente uma configurao em uma rede, at vrios
meses, quando aplicada, por exemplo, a um tratamento mdico. Durante o perodo de
execuo, segundo MELCHIORS (1999), um caso pode ser aprendido, sendo j
mantido armazenado na base, porm a informao de que o caso no foi ainda avaliado
deve ser marcada a este.
Conforme apresentado por LEWIS (1993) apud MELCHIORS (1999), existem,
de modo geral, trs modelos de execuo para uma soluo:
execuo manual: na execuo manual, o usurio do sistema responsvel
por interpretar a soluo proposta e decidir se ela deve ou no ser executada. Segundo
ABEL (1986), ocorre na maior parte dos sistemas RBC, em que o sistema somente
sugere, com base na sua experincia, no processo de recuperao e no processo de
adaptao, uma boa soluo para o problema, que executada pelo usurio.
execuo no supervisionada ou sem controle humano: em alguns
domnios, quando uma soluo expressa em um programa de computador, um sistema
45
RBC pode ter a capacidade de executar a soluo que ele prope, realizando-a
automaticamente sem interveno ou controle humano. Quando isso ocorre, formado
um ciclo fechado de soluo de problemas sem interveno humana, em que o problema
submetido ao sistema, um caso similar recuperado e sua soluo adaptada para a
situao corrente, a soluo executada pelo sistema e os resultados so inseridos na
base de casos. Esse tipo de execuo envolve, contudo, um alto risco, pois delega muita
responsabilidade ao sistema.
execuo supervisionada ou com controle humano: um modo intermedirio
a execuo da soluo proposta de modo automtico com o controle do usurio. Nessa
modalidade, o usurio pode permitir ou proibir a execuo de uma soluo que
sugerida pelo sistema, que a executa automaticamente se for autorizado.
3.4.4.2. Reparao da Soluo
Caso a soluo proposta no apresentar resultados satisfatrios durante sua
execuo, simulada ou no, faz-se a reparao da soluo, onde uma nova soluo deve
ser gerada. Uma vez que a soluo encontrada for correta, a experincia obtida deve ser
aprendida, sendo armazenada para uso futuro. Esses processos (avaliao, reparao e
armazenamento) podem ser vistos como obteno de experincia, ao passo que o
processo de recuperao e de adaptao visto como uma aplicao da experincia
armazenada.
Aps uma soluo ter sido avaliada, se o seu resultado for satisfatrio, a
experincia que foi obtida durante o processo de resoluo do problema corrente deve
ser armazenada no sistema. Isso feito atravs do processo de aprendizado, que ser
visto na prxima seo. Se, entretanto, o resultado da avaliao mostrou que a soluo
proposta no produziu um resultado adequado, o caso deve ser reparado. A reparao do
caso envolve a deteco dos erros da soluo corrente e a recuperao ou gerao da
explicao para a ocorrncia destes erros. Um exemplo de um sistema em que isso
realizado o sistema CHEF, desenvolvido por Hammond e citado por AAMODT
(1994), que utiliza um conhecimento causal para gerar explicaes do porqu certos
objetivos almejados no caso corrente no foram atendidos, e armazena as situaes
gerais que produziram
falhas usando uma tcnica de aprendizado baseada em
explicao. Um segundo passo no processo de reparao utiliza, ento, as explicaes
das falhas para modificar a soluo corrente de modo que os erros no mais ocorram. A
reparao de falhas pode ser executada diretamente (quando for garantido que est
correta) ou pode ser avaliada e reparada novamente se necessrio. O esquema do
processo de reviso pode ser visto na figura 2.3.
3.4.5. Armazenamento
O armazenamento dos casos o processo de incorporao ao sistema da
experincia obtida durante a resoluo do problema. Como foi visto, esse aprendizado
do sucesso ou falha da soluo proposta proporcionado pelo resultado da fase de
avaliao e possvel reparo da soluo. O armazenamento envolve a seleo de que
informaes do caso devem ser retidas, em que formas estas informaes devem ser
46
retidas, como indexar o caso para posterior recuperao em problemas similares futuros
e como integrar o novo caso na memria de casos, segundo AAMODT (1994).
Quando um caso foi resolvido pelo uso de um caso recuperado, um novo caso
pode ser construdo ou o caso recuperado pode ser generalizado para ni cluir o caso
corrente. J quando o problema foi resolvido por outros mtodos, como por consultas ao
usurio, um novo caso inteiro deve ser construdo. Informaes como descritores
relevantes do problema e soluo para a situao so dados geralmente utilizados para
armazenamento do conhecimento, assim como explicaes e outras formas de
justificativa do porqu a soluo utilizada foi proposta para o problema. No sistema
CASEY, por exemplo, explicaes so retidas nos casos e reutilizadas futuramente na
modificao da soluo. Informaes obtidas da tarefa de reparo da soluo podem
tambm ser extradas e retidas no sistema, seja como casos separados que falharam, seja
dentro de casos problema totais.
Por fim, o sistema RBC deve integrar o conhecimento aprendido base de casos.
Isso pode ser feito com a modificao do esquema de indexao dos casos existentes,
em que o sistema pode aprender o modo de ajust-los para que a similaridade possa ser
mais bem identificada. Os pesos ou importncia dos ndices de um caso ou soluo em
particular podem ser ajustados pelo sucesso ou falha do uso do caso na soluo do
problema corrente. As caractersticas que foram julgadas relevantes na recuperao do
caso com sucesso tm ento sua importncia de associaes aumentada, ao passo que as
associaes das caractersticas que levaram a casos no similares serem recuperados so
enfraquecidas. Com esse processo, a estrutura de ndices tem a funo de canalizar e
adaptar a memria de casos para seu uso.
O aprendizado pode ocorrer tambm dentro de um modelo de conhecimento
conceitual geral, por exemplo utilizando outros mtodos de aprendizado automtico ou
atravs de interao com o usurio, conforme AAMODT (1994). Assim, com uma
interface apropriada ao usurio, o modelo de conhecimento geral do sistema pode ser
incrementado e refinado naturalmente ao longo da resoluo de problemas, do mesmo
modo como feito com a memria de casos.
3.5. Vantagens do paradigma RBC sobre os demais
O RBC pode ser usado para vrias tarefas de raciocnio, como por exemplo:
propor solues para novos problemas, antecipar, evitar e explicar fracassos em
solues propostas, e adequar e/ou reparar solues propostas.
extrao do conhecimento: basta ter um banco de dados. A difcil fase de
extrao do conhecimento especialista facilitada nos sistemas de RBC pois a
representao do conhecimento pode ser feita com o preenchimento direto dos fatos que
descrevem uma experincia. O paradigma proporciona um excelente mecanismo de
aprendizagem, que pode ser utilizado para aquisio automtica de conhecimento.
representao do conhecimento: A tarefa de representao do conhecimento
resume-se em escolher o tipo de estrutura da base de casos. Em aplicaes onde a
complexidade exigir, necessria a criao de ndices, entretanto muitas aplicaes
omitem este passo.
47
reutilizao do conhecimento: o conhecimento contido nos casos pode ser
utilizado ou combinado e adaptado para gerar novas solues alm das originalmente
presentes na memria.
aprendizagem: a atualizao do conhecimento feita automaticamente, na
medida que as experincias so utilizadas, assim o sistema pode crescer e incrementar
sua robustez e eficincia.
conscincia: estes sistemas possuem uma certa conscincia com relao a suas
prprias limitaes. Se o sistema no encontra casos com a devida similaridade com o
caso em anlise, o sistema no gera soluo alguma. Isto evita possveis problemas
gerados por sistemas sob outros paradigmas que podem gerar uma soluo aproximada.
fcil acesso s solues: Primeiro, estes sistemas podem recuperar uma
soluo rapidamente, ao contrrio de outros sistemas que precisam fazer todo um
trabalho para buscar uma soluo numa vasta base de conhecimento. Outra vantagem
refere-se ao fato de que o problema deve ser identificado pelo sistema o suficiente para
recuperar uma soluo, no necessrio que o sistema entenda perfeitamente as
condies e circunstncias do problema para propor uma soluo. Os sistemas de RBC
tambm proporcionam um meio de resoluo de um problema quando no houver um
algoritmo disponvel para avaliao e soluo do mesmo.
raciocnio implcito: a incerteza implcita nas informaes contidas nos
casos utilizada sem a necessidade de um tratamento especfico desta incerteza.
3.6. reas de Aplicao do RBC e Implementaes Existentes
O raciocnio baseado em casos uma rea efervescente da Inteligncia Artificial
e, como tal, serve de campo para pesquisas e aplicaes dos mais diversos ramos do
conhecimento humano. Para exemplificar o que se pode fazer com o paradigma RBC,
apresenta-se a seguir uma srie de casos de reas de aplicao e sistemas que foram
implementados usando RBC, retirados dos trabalhos apresentados nos workshops da 4
Conferncia Internacional em Raciocnio Baseado em Casos, realizada em julho de
2001 em Vancouver, no Canad. Sendo essa a mais recente conferncia internacional
exclusiva do assunto podemos traar um panorama do que se faz hoje no mundo em
matria de RBC.
Gerenciamento do conhecimento orientado a processos: uma das reas de
pesquisa e desenvolvimento de aplicaes mais promissoras do RBC a do
gerenciamento de bases de conhecimento visando o reuso de experincias do setor
produtivo das empresas. Um trabalho apresentado por JEDLITSCHKA (2001) mostra
uma fbrica experimental criada no Instituto Experimental de Engenharia de Software
de Fraunhover, em Kaiserlautern, Alemanha. L foi criado o COIN (Corporate
Information Network Rede de Informaes Corporativas), com o objetivo de fornecer
aos seus usurios informao/conhecimento na hora certa, representados
adequadamente, e dentro de um contexto atualizado, seguindo a filosofia just-in-time.
COIN usado como um ambiente de projeto real para o desenvolvimento e validao de
tecnologias e mtodos para experincias de administrao orientadas a objetivos
48
incluindo elucidao, processamento,
avaliao do conhecimento.
disseminao,
apresentao,
manuteno
49
dado problema, ou na tentativa de uma nova abordagem a antigos desafios, como a
previso do tempo.
HANSEN e RIORDAN (2001) apresentam um trabalho que, segundo eles, a
nica linha de pesquisa que combina o raciocnio baseado em casos com a teoria fuzzy
para criar uma aplicao de previso do tempo. Este sistema foi batizado de WIND-1,
que foi proposto, implementado e testado. Os testes consistiam na previso de 6 horas
para teto de nuvens e visibilidade num aeroporto, dado um banco de dados de 300.000
horas consecutivas de observao do tempo no aeroporto (36 anos de registro). A
acuracidade das previses foi comparada com a tcnica padro de previso. Nas
simulaes reais, WIND-1 foi, segundo seus autores, significativamente mais acurado.
SOVAT e CARVALHO (2001) propem o uso de redes neurais artificiais para
fazer as etapas de recuperao e adaptao de casos num sistema RBC. Este mecanismo
foi necessrio devido natureza dos casos tratados pelo sistema RBC desenhado pelos
autores. Cada caso representa uma RNA desenhada por um perito para resolver um
problema em particular. Este trabalho lida com o problema de selecionar e adaptar esses
casos. Esses casos podem ser usados como apoio para o desenho de RNAs que tratem
de novos problemas.
MALEK e KANAWATI (2000) apresentam uma aplicao chamada de CoWing
que faz uma busca nos arquivos favoritos (bookmarks) de usurios do sistema para
identificar grupos de pessoas que compartilham interesse pelo mesmo tipo de
informao, podendo criar ento comunidades virtuais on-line. Um agente pessoal,
chamado wing observa o comportamento do usurio ao gerenciar seu arquivo de
favoritos. Cada agente wing implementa um paradigma hbrido neural/RBC que
aprende como o usurio classifica seus bookmarks.
51
automtica sem superviso, automtica com superviso e manual. A aquisio
automtica assim chamada quando o prprio sistema conta com um mdulo que
recolhe informaes do ambiente, atravs de sensores, e quando detecta que o conjunto
de dados recolhidos difere dos casos j armazenados este novo caso armazenado
diretamente na base de casos. Se essa armazenagem feita sem consultar usurios
humanos ela automtica, caso contrrio ela supervisionada. A armazenagem manual
aquela onde a responsabilidade por coletar, organizar, transformar e/ou guardar os
dados na base dos usurios humanos. No nosso sistema proposto a forma de aquisio
de conhecimento manual, com dois momentos distintos: a filtragem, organizao e
transformao dos dados que j esto armazenados em outro formato num primeiro
momento, e o lanamento de novos casos a partir da interao com os usurios do
sistema num segundo momento.
O primeiro momento ser elucidado a seguir, com a apresentao do banco de
dados disponvel e com a metodologia a ser adotada para filtrar, organizar e transformar
esses dados de modo a formar a base de casos do SE.
4.3. Apresentao do Banco de Dados
52
+--------------------------------------------------+-----------+-------------+
|Compunew Computadores e Assistncia Tcnica Ltda. |Atendimento|N.OS: 000000 |
| Upgrades - Redes Locais - Assistncia a Micros
|(X) Balcao |
01/01/99 |
|
Av. Amrica, 196. Fone/Fax: (055) 3512-5214
|( ) Externo|
10:10:10 |
|
CGC: 68.846.500/0001-82 IE: 110/0053740
|( ) Misto |
USURIO |
+--------------------------------------------------+-----------+-------------+
|Cliente : Fulano de Tal da Silva (9999)
|
|Endereo: Rua no sei qual S/N
|
|Complem.: Bairro das Dores Partidas - Cidade sem Rumo/RS
|
|Telefone: (99) 999-9999
Fax/Cel: (99) 999-9999
Contato: Fulano de Tal |
+----------------------------------------------------------------------------+
| Servio a ser prestado / Problema que o equipamento apresenta
|
|
|
| Puxa folha, mas no imprime e fica piscando luz de cima
|
|
|
|
|
|
|
+----------------------------------------------------------------------------+
| Equipamentos e acessrios recebidos
| Volt
|
|
|
|
| Impressora HP 692C NS: BR60XG109A com fonte e cartuchos
| 110
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+----------------------------------------------------------------------------+
| Descrio dos servios prestados
| Tcnico | Horas | TA | Preo |
|
|
|
|
|
|
| Deteco de defeito no circuito do cartucho| NomeTec | 1.00 | 4 | 00,00 |
| colorido
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+----------------------------------------------------------------------------+
| Peas e componentes substitudos
| Preco |
|
|
|
| 01 cartucho color original HP692C
| 00,00 |
|
|
|
|
|
|
|
|
|
+----------------------------------------------------------------------------+
|
| Total
:
00,00
|
|
|
|
| _____________________
__________________
| Dt.Fecha: 99/99/99
|
| Visto do Entregador
Visto do Cliente
|
|
+----------------------------------------------------------------------------+
|
|
|Compunew Computadores e Assistencia Tcnica Ltda.
N.OS: 123456 |
| Upgrades - Redes Locais - Assistncia a Micros
01/01/99 |
|
Av. Amrica, 196. Fone/Fax: (055) 512-5214
10:10:10 |
|Cliente : Fulano de Tal da Silva (9999)
|
|Puxa folha, mas no imprime e fica piscando luz de cima
|
+----------------------------------------------------------------------------+
53
4.3.1. O Cabealho e o Rodap da Ordem de Servio
CPU deve ser entendida neste texto como o gabinete do microcomputador com todo o hardware interno.
54
de srie e acessrios. Uma das dificuldades de processamento o fato de que muitos
equipamentos no so descritos por seu nome genrico, mas sim por sua marca. Desta
forma, muitas vezes encontramos OS com o equipamento descrito como Epson Stylus
Color, por exemplo, sem citar a palavra impressora.
A escrita do nmero de srie dos equipamentos tambm um fator complicador,
j que muitos so compostos de letras e nmeros, ou somente letras, podendo confundir
o filtro separador de palavras que os detectaria como um nome de equipamento e no
um nmero de srie, mas isso j assunto para o captulo sobre ordenamento de casos.
4.3.4 A Seo Descrio dos servios prestados
Como o prprio nome j diz, nessa seo o tcnico que executou o reparo no
equipamento descreve o que foi feito visando chegar na soluo. Alm disso, tambm
so preenchidos o nome do tcnico, o tempo em horas que o conserto levou, o tipo de
atendimento (1=Conserto em garantia de fbrica, 2=Conserto em garantia do
revendedor, 3=Oramento, 4=Conserto de hardware fora de garantia, 5=Conserto de
software fora de garantia) e o preo do conserto.
Entrevistas com os tcnicos mostraram que nem sempre tudo que foi feito
descrito na OS, basicamente porque num pequeno percentual dos casos ocorre um dos
trs motivos abaixo:
-
55
-
Conforme foi visto anteriormente, no item 4.3.2., o banco de dados que servir
de fonte para a base de casos no contm somente ordens de servio descrevendo a
soluo de problemas em equipamentos de informtica, mas tambm contm a
descrio de servios de manuteno preventiva, a instalao de softwares, ou a
configurao de algum componente que no est com defeito.
Dito isso, a seguinte questo se impe: como fazer para separar as ordens de
servio que descrevem problemas, que so as que nos interessam no desenvolvimento
deste trabalho, daquelas que no tratam problemas? Qual o melhor mtodo de filtragem,
visto que ler e classificar manualmente uma a uma mais de dez mil ordens disponveis
no seria vivel?
Comeamos pensando em como a tarefa seria feita caso fosse adotada a soluo
de separao manual. A primeira seo da OS seria lida, aquela que traz por ttulo
Servio a ser prestado / Problema que o equipamento apresenta. A partir do texto desta
seo, sem precisar do restante dos dados da OS, parece lgico que j seria possvel
fazer a classificao. De um lado apareceriam as ordens com descries do tipo: cpu
no liga, impressora no puxa o papel, oscila imagem do monitor. De outro lado
apareceriam ordens com descries como: instalar processador de texto, reinstalar
windows, configurar scanner. A partir de conversas com 5 tcnicos especialistas, foi
criada uma lista das palavras que mais provavelmente apareceriam na descrio de um
equipamento com defeito. Vrias das palavras relacionadas continham o mesmo radical,
o que levou a uma condensao, reduzindo palavras como tranca, trancou, trancava ao
radical tranc. Tambm outras palavras que so escritas de forma errada com freqncia,
como oscilar, foram procuradas nas duas formas comumente escritas: oscila e ocila.
O resultado destas entrevistas e a compilao final da lista de palavras
descritivas de problemas aparecem logo a seguir na tabela 4.1.
56
Palavra ou radical
Barulho
Borr
Chuvisc
Consert
Corrig
Erro
Esquent
Falh
Funciona
Imagem
Nao2
Ocila
Oscila
Pendura
Problema
Quebr
Queim
Recuper
Reset
Tela azul
Tranc
Trav
Trem
Troc
Vaz
220
Tabela 4.1. Palavras que indicam equipamentos com problemas
Um programa criado para esse fim fez uma varredura na primeira seo do
banco de dados de ordens de servio buscando as palavras constantes na tabela
anteriormente apresentada e separou as mesmas em 2 arquivos distintos: o de ordens
descritivas de problemas, aquelas onde pelo menos uma das palavras da lista apareceu; e
o de ordens descritivas de outros servios, onde nenhuma das palavras da lista constou.
Aps a realizao desta varredura, o banco de dados inicial de mais de dez mil ordens
ficou dividido conforme a tabela 4.2.
N de ordens descrevendo problemas/defeitos
N de ordens descrevendo outros servios
TOTAL DE ORDENS DE SERVIO
5.084
5.720
10.804
Deve-se observar que se buscou no texto a palavra nao sem o acento til, pois o banco de dados original
tem todas palavras armazenadas sem acentuao. Esta situao se repete ao longo do texto.
57
Automtico
72
73
28
27
TOTAL
100
100
5.084
1.118
3.966
58
4.5. O Ordenamento dos Casos
Agora que temos em mos as ordens de servio que iro compor a base de casos,
deve ser desenvolvida uma forma de ordenamento das mesmas visando agrupar aquelas
que se referem a problemas semelhantes, facilitando a posterior localizao de solues
na base de casos. A princpio podemos pensar em trs diferentes abordagens para o
problema de ordenamento de casos semelhantes: por descrio do problema, por
descrio da soluo adotada, e por equipamento que apresenta o defeito.
Caso fosse adotada a classificao por descrio do problema, aparentemente a
mais lgica, o leque de possibilidades de soluo tenderia, em alguns casos, a se abrir
demasiadamente. Por exemplo, uma descrio de problema freqente no liga. Essa
descrio pode estar se referindo a um monitor de vdeo, uma CPU, uma impressora,
um estabilizador, etc., dificultando o encontro de uma soluo eficiente para tantas
situaes possveis.
J se fosse adotada a classificao por descrio da soluo adotada, um
paradoxo seria criado, pois o usurio teria que saber a soluo para o problema de
antemo para encontrar o caso pretendido, no fazendo sentido ento o uso de um
sistema especialista que se prope justamente a encontrar para ele o caso mais
semelhante da base de casos e ento dar a soluo.
Parece ento ter sobrado a classificao por equipamento que apresenta o
defeito. Mas esse tipo de ordenamento tambm traz embutido em si o problema de abrir
inmeras possibilidades, j que uma CPU, por exemplo, pode ter centenas de defeitos,
assim como qualquer outro tipo de equipamento. Propomos ento uma soluo mista:
que classifique inicialmente os casos pelo equipamento defeituoso, e dentro de cada
equipamento pela descrio do problema apresentado. Existe uma exceo que deve ser
prevista nesta ordenao, que so os chamados defeitos de software, que abrange as
configuraes incorretas, a falta ou corrupo de arquivos, os conflitos de verses e
outros problemas tpicos. Nesse caso no temos nenhum equipamento defeituoso
propriamente dito, mas a seo Equipamentos e acessrios recebidos ter com certeza a
presena de uma CPU. O tratamento para esta questo ser esclarecido no item 4.5.1.
Como nosso banco de dados de OS no tem um ordenamento prvio pelos
critrios que acabamos de definir, foi criado um programa que classifica palavra por
palavra os textos da seo Equipamentos e acessrios recebidos das OS. Ordenando o
nmero de vezes que cada palavra aparece teremos subsdios para comear o
cruzamento com a seo Problema que o equipamento apresenta e finalmente comear
a criao da base de casos.
4.5.1. Os Equipamentos Mais Freqentes
59
comerciais como sinnimos de equipamentos. Assim, os tcnicos, especialistas e
usurios sabem que o equipamento descrito como Epson Stylus Color se refere a uma
impressora, mas o programa contou como 3 palavras distintas e nenhuma delas como
sendo impressora.
O resultado parcial dessa primeira triagem aparece na tabela 4.4., onde so
listadas as 50 palavras que mais apareceram, de um total de 4.517 palavras diferentes,
totalizando 30.598 ocorrncias nesta seo. Lembramos que esses nmeros se referem
somente s 3.966 ordens selecionadas para compor a base de casos, e no s mais de
10.000 ordens iniciais.
A palavra NS a que mais ocorre pois todo equipamento tem seu nmero de
srie anotado na OS, e a letra C isolada aparece em segundo lugar pois sempre que o
equipamento est acompanhado de acessrios escreve-se c/cabo, c/cartuchos, c/capa,
etc.
Seqncia
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Palavra
Ns
C
Cpu
Imp
Micro
Hp
Impressora
E
S1
Epson
Monitor
Cartuchos
Fita
Cabo
De
Tampa
Com
Sem
No1w6x01069
Compunew
Nobreak
Cart
300
692c
Olivetti
N.Ocorrncias
3708
1223
1136
953
775
759
650
614
594
509
486
483
394
357
311
289
286
255
247
236
208
191
191
187
181
Seqncia
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
Palavra
Fonte
Alfa
Compaq
Manopla
Lx
Megatropic
Uis
Break
Digital
Paralelo
Teclado
N5455
Transformador
Mouse
600
Marca
Stylus
Forca
Cd
680c
Drive
Color14
Emilia
M
Pc
N.Ocorrncias
173
171
171
168
164
156
155
143
141
141
133
131
130
126
114
113
112
109
102
95
89
85
83
79
79
60
erros ortogrficos e outras palavras que no contribuem para a formao da base de
conhecimentos.
Esse trabalho se limpeza e agrupamento da relao dos equipamentos foi feito a
pedido do autor por 5 tcnicos especialistas em informtica resultando ento na tabela
4.6., que pode ser considerada a relao de todos diferentes tipos de equipamentos que
foram consertados e descritos nas quase 4.000 ordens de servio usadas no
desenvolvimento deste trabalho. O nmero de vezes que cada equipamento apareceu nas
OS no foi levantado com preciso pois os sinnimos so vrios para cada equipamento
e o fato de alguns serem descritos por mais de uma palavra traria a necessidade de uma
contagem manual. Porm, a ordem com que as palavras aparecem na tabela de acordo
com o nmero de ocorrncias do principal sinnimo de cada equipamento, o que j d
uma boa idia a respeito dos equipamentos mais freqentes, afirmao essa confirmada
pelos tcnicos especialistas quando confrontados com a tabela.
Seqncia
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Equipamentos
Cpu
Impressora
Monitor
Nobreak
Fonte
Teclado
Mouse
Drive de Disquete
Fax
Estabilizador
Winchester
Notebook
Scanner
Cabea de Impresso
Zip Drive
Palmtop
Hub
Cd-Rom
Modem
Caixas de Som
Memoria
Bloco Movel
Joystick
Fita Dat
Microfone
Cooler
Motherboard
61
62
Palavra
No
E
Declara
Liga
Imprime
Micro
Acessa
Problema
Windows
Da
Do
Impressao
No
Funciona
Verificar
Trancada
Barulho
Trocar
Para
Nacional
Faz
Papel
Error
Falha
Obedece
N Ocorrncias
3241
750
671
617
478
473
462
408
398
387
370
354
347
332
282
257
249
244
241
239
227
220
218
213
193
Seqncia
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
Palavra
Impressora
Com1
As
Placa
Esta
Drive
Imagem
Monitor
Orcamento
Vezes
Def
Rede
Cd
512
Oab
Fazer
Hd
A20
Limpeza
Inicializa
Ao
Passar
Tem
Emilia
Trava
N Ocorrncias
192
184
182
179
175
174
172
170
169
166
166
163
160
159
156
153
148
148
144
142
142
137
136
136
133
Tabela 4.8. Palavras com maior ocorrncia na seo Problema que o equipamento apresenta
63
A palavra no a que mais ocorre, com grande diferena sobre as demais, o que
motivou a criao da tabela 4.8, onde aparecem os desdobramentos dos casos onde a
palavra no aparece, juntamente com a palavra que a acompanha. Somente foram
listados os primeiros 50 nos compostos, de um total de 184 diferentes combinaes
encontradas no banco de dados.
Seqncia
Palavras
N Ocorrncias
1
Nao Liga
565
2
Nao Acessa
462
3
Nao Imprime
409
4
Nao Funciona
311
5
Nao Inicializa
136
6
Nao Segura
103
7
Nao Tem
96
8
Nao Traciona
94
9
Nao Carrega
87
10
Nao Puxa
86
11
Nao Le
81
12
Nao Comunica
69
13
Nao Abre
53
14
Nao Esta
50
15
Nao Da
43
16
Nao Reconhece
34
17
Nao Entra
32
18
Nao Detecta
28
19
Nao Conecta
26
20
Nao Passaram
25
21
Nao Aparece
24
22
Nao Faz
21
23
Nao Funcionam
18
24
Nao Aceita
15
25
Nao Roda
15
Seqncia
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
Palavras
Nao Sai
Nao Desliga
Nao Eh
Nao Grava
Nao Responde
Nao Consegue
Nao Ligam
Nao Anda
Nao Aciona
Nao Disca
Nao Instala
Nao Recebe
Nao Clica
Nao Comunicam
Nao Estao
Nao Imprimem
Nao Imprimia
Nao Navega
Nao Obedece
Nao Carega
Nao Completa
Nao Escaneia
Nao Formata
Nao Transmite
Nao Apagar
N Ocorrncias
15
13
12
10
10
9
9
8
6
6
6
6
5
5
5
5
5
5
5
4
4
4
4
4
3
Dado o fato que no item 4.5 propusemos uma classificao dos casos
inicialmente pelo equipamento defeituoso, e dentro de cada equipamento pela descrio
do problema apresentado, e como a anlise das tabelas com palavras descritivas de
problemas (tabelas 4.8 e 4.9) no elucidativa, fez-se ento o cruzamento dos
equipamentos cobertos pelo SE com os defeitos encontrados. Inicialmente dividiram-se
as ordens de servio de acordo com o tipo de equipamento que elas traziam, e o
resultado aparece na tabela 4.10.
64
Para realizao desta separao, foram buscadas ordens que tivessem na
descrio do equipamento uma das palavras sinnimas constantes da tabela. O total de
ordens encontradas superior as 3.966 OS do banco de dados de trabalho pois vrias
ordens contam com mais de um equipamento.
Equipamento
Sinnimos buscados
N de Ordens
CPU
Monitor
Micro, computador, PC
Video, Tela
1.540
386
Impressora
No-Break
Estabilizador
2.347
159
43
Scanner
TOTAL
21
4.496
65
problema dentre os seis tipos cobertos pelo SE (CPU, monitor, impressora,
estabilizador, no-break e scanner) e, se possvel ou cabvel, que parte do equipamento
a defeituosa. A busca de palavras em comum ocorrer somente nos casos pertencentes
categoria de equipamento discriminada pelo usurio e os casos semelhantes que forem
encontrados sero apresentados ordenados de acordo com o grau do casamento
calculado pelo algoritmo do sistema. Teoricamente a melhor soluo para o problema
apresentado ser a primeira da lista, caso um problema semelhante j tenha sido
resolvido e armazenado no SE.
O sistema conta com um dicionrio das palavras descritivas de defeitos,
chamadas no texto daqui para frente de PDD, armazenadas juntamente com o
equipamento a que ela se refere e o grau de importncia daquela palavra na descrio do
problema em questo. Por exemplo, um defeito bastante comum em monitores a
oscilao da imagem. Neste caso, a palavra oscila armazenada com grau de
importncia 2, j que descreve o defeito de maneira clara e unvoca. J a palavra
imagem armazenada com o grau de importncia 1, pois apesar de ser importante,
outros defeitos de imagem existem.
Neste dicionrio uma mesma palavra pode aparecer diversas vezes, se referindo
a diferentes casos, e at mesmo a equipamentos diversos, e podendo assumir pesos ou
graus de importncia diferentes.
A figura 4.2 mostra um fluxograma descritivo de como funcionaria o algoritmo
de casamento proposto e desenvolvido para o SE apresentado neste trabalho. Nesta
figura assumimos que o equipamento com defeito faz parte do domnio do
conhecimento do sistema e que foi encontrado pelo menos um caso semelhante.
Internamente o sistema ter de tratar tambm essas excees.
66
SOHO = Small Office - Home Office. Refere-se ao mercado das pequenas empresas e escritrios e
usurios domsticos de computadores.
68
5.2. Apresentao do Sistema SADPC
A tela de abertura do sistema aparece logo a seguir, na figura 5.1, onde
preenchemos o apelido do usurio atual, para que o sistema saiba que se trata de um
usurio final, um tcnico ou um engenheiro do conhecimento.
69
Nesta figura podemos distinguir de sada o menu com acesso aos 4 principais
mdulos do prottipo, alm da ajuda. Os mdulos constituintes so: a base de casos, a
rvore de equipamentos, o dicionrio de PDDs e o controle de usurios,
correspondendo a cada mdulo um arquivo de dados fsico. Os trs primeiros arquivos,
de casos, equipamentos e o dicionrio de PDDs, formam a base de conhecimento do
SE, e o arquivo de usurios define como ser a interao das pessoas com o sistema. A
descrio do funcionamento de cada mdulo e a forma como eles interagem para o
funcionamento do sistema so descritos a seguir.
5.3. Os Usurios do Sistema
Por definio durante a anlise e modelagem do SE, permitido o acesso ao
sistema por 3 tipos de usurios: os especialistas tcnicos de informtica, os engenheiros
do conhecimento e os usurios leigos. Os direitos de cada tipo de usurio e o papel de
cada um no uso do sistema descrito nos tpicos pertinentes a seguir.
As informaes armazenadas sobre cada usurio do sistema so: apelido, nome
do usurio e tipo de usurio. A estrutura deste arquivo pode ser vista na tabela 5.1 e a
chave primria de acesso deste arquivo o campo apelido.
Nome do campo
APELIDO
NOME
TIPO
Tipo
Alpha
Alpha
Alpha
Tamanho
6
40
1
70
71
Nome do campo
COD_HS
SINTETICO
COD_ESTRUT
DESCRICAO
Tipo
Autoincrement
Alpha
Alpha
Alpha
Tamanho
4
1
5
20
Registros sintticos so aqueles que representam grupos de componentes de um dado equipamento mas
que no possuem casos vinculados diretamente a eles. Registros analticos so vinculados a casos.
72
cobertos na base de casos: CPUs, impressoras, monitores, no-breaks, estabilizadores e
scanners. Porm, independentemente deste fato, o sistema permite a incluso de novos
equipamentos a serem cobertos. Recomenda-se no expandir por demais o foco do SE
sob a pena de haver perda de performance e aumento da dificuldade de busca numa base
de casos muito grande.
A opo de incluso de novos equipamentos no SE ser mais comumente usada
para o cadastro de uma nova subdiviso de um dos seis equipamentos j existentes. Por
exemplo, os no-breaks poderiam ter subdivises de acordo com suas partes
componentes: circuito de entrada, baterias, transformador, inversor e circuito de sada.
Enquanto o nmero de diferentes defeitos presentes em um dado equipamento for
pequeno, a subdiviso s tende a complicar o encontro do caso com melhor matching,
mas medida que um equipamento tem muitos diferentes problemas, a diviso facilita o
uso, como o caso das CPUs, monitores e impressoras.
A tela de incluso de novos equipamentos aparece abaixo na figura 5.4.
73
5.4.4. Quando no Sabemos o Equipamento Envolvido
O sistema especialista deve ser capaz de dar alguma resposta til ao usurio
mesmo quando este no tem certeza sobre onde est o defeito. Esta situao mais
comum do que podemos imaginar num primeiro momento. Alguns defeitos, segundo os
tcnicos especialistas responsveis pela base de casos em uso neste prottipo,
confundem o usurio e o levam a acreditar que o equipamento defeituoso outro que
no o verdadeiro.
Um exemplo muito claro aquele onde no aparece imagem no monitor de
vdeo quando ligamos o computador. Os usurios leigos tendem a imaginar que o
problema est no monitor, quando na verdade, na maioria das vezes, o defeito est na
CPU que no envia sinal de vdeo para o monitor. Na interao com o sistema o usurio
vai procurar dentro dos defeitos de monitores aqueles que se parecem com o seu, mas o
dicionrio de PDDs no ir trazer nada muito parecido com o seu defeito particular.
Para estas situaes o SE traz basicamente duas sadas diferentes: uma delas
permitir ao usurio selecionar mais de um equipamento na rvore, o que ir aumentando
proporcionalmente o nmero de PDDs apresentadas ao usurio para que ele selecione
as mais adequadas ao seu caso. A outra sada o usurio selecionar um equipamento do
tipo sinttico, daqueles com o cdigo estruturado terminando em .00, o que ir
acarretar na apresentao de todas PDDs ligadas a todas divises daquele equipamento.
5.5. A Representao dos Casos
A forma como representamos um caso num SE que utiliza raciocnio baseado
em casos obviamente um dos pontos-chave de funcionamento do sistema. Quando se
consegue fazer uma abstrao adequada da realidade, todos aspectos importantes de um
dado objeto se fazem presentes de forma clara e lgica na representao digital daquele
objeto dentro do programa.
No prottipo de SE aqui apresentado buscou-se fazer a representao dos casos
da forma mais direta e simples possvel, visando tanto facilitar o desenvolvimento do
sistema, dado o limite de tempo para faz-lo, quanto facilitar o uso por pessoas leigas. A
idia bsica representar o equipamento com defeito, a descrio do defeito e a
descrio da soluo. Adicionalmente acrescentou-se um cdigo identificador de cada
caso, a data de cadastramento do caso e a freqncia com que o problema acontece5 .
A estrutura do arquivo que armazena a representao de cada caso pode ser vista
na tabela 5.3 e a chave primria de acesso deste arquivo o campo cod_caso.
Complementando esse arquivo ainda temos o dicionrio de PDDs, descrito mais
adiante, e o arquivo de equipamentos. Esses trs arquivos compem, como j foi dito
anteriormente, a base de conhecimentos do sistema.
74
Nome do campo
COD_CASO
COD_HS
DESC_SUCINTA
DESC_DETALHE
SOLUCAO
DATA_CAD_CASO
FREQUENCIA
Tipo
Autoincrement
Alpha
Alpha
Alpha
Alpha
Date
Alpha
Tamanho
4
5
40
200
200
8
1
75
Ao usurio leigo no ser liberado para preenchimento o campo soluo, j que
este somente pode ser cadastrado por especialistas ou engenheiros do conhecimento. Os
seguintes campos j vm preenchidos automaticamente pelo sistema: cdigo do caso e
data de cadastramento do caso.
76
77
78
abaixo de 2 apresentam semelhanas com o novo caso apresentado mas dificilmente
ser a soluo procurada.
Palavra
do arquivo =
Palavra selecionada do
usurio?
Caso relacionado
palavra j estava
na matriz?
N
Adiciona caso
matriz
ltima
palavra do
equipamento
selecionado?
79
conhecimentos pode ser alterado para abranger a nova situao, tornando-se mais
generalista, ou se deve ser includo um novo caso com a experincia recm adquirida.
5.6.3. Quando a Soluo Proposta no Vlida
Um sistema especialista como este de nosso prottipo no ir sempre responder
a todas questes apresentadas de maneira inequvoca. Faz parte da natureza dos
sistemas desenvolvidos sob os paradigmas da IA a no necessidade de preciso nas
respostas. Posto isso, veremos com freqncia os usurios recebendo do sistema
solues propostas para resolver os defeitos em seus equipamentos que no so vlidas,
ou seja, no funcionam.
Nestes casos, durante a anlise do sistema foi previsto que um novo registro de
caso seria aberto onde apareceriam a descrio sucinta e a descrio detalhada do
problema, com cdigo estruturado do equipamento, cdigo do caso e freqncia,
faltando somente descrever a soluo. Um relatrio de todos casos que tenham a
soluo em branco dever ser emitido pelo usurio responsvel pela manuteno do
sistema, para que os tcnicos especialistas busquem as solues mais adequadas a cada
caso e o engenheiro do conhecimento possa preencher adequadamente a base de
conhecimentos.
5.7. Relatrios do Sistema
Dado que o sistema aqui apresentado to somente um prottipo, foram
definidos inicialmente trs tipos de relatrios de apoio aos usurios, sendo que os dois
primeiros so emitidos ao final da apresentao de um novo caso ao sistema, utilizando
os botes Imprimir Atual e Imprimir Possveis, que podem ser vistos na figura 5.7, e o
terceiro tem acesso via menu e consiste nos casos lanados no sistema e ainda sem
soluo. Qualquer um dos trs relatrios inicialmente visualizado em tela e o usurio
escolhe posteriormente se deseja realmente imprimi-lo em papel ou no. Estes relatrios
esto explicados logo a seguir.
5.7.1. Listagem das Solues Possveis em um Novo Caso
Ao final da apresentao de um novo caso ao sistema a tela anteriormente vista
na figura 5.7 traz dois botes de listagem: Imprimir Atual e Imprimir Possveis. O
primeiro boto resultar num relatrio de uma pgina com os dados relativos ao caso
atualmente apresentado na tela e servir normalmente para o usurio que tem o
equipamento a ser consertado longe do micro com o SE e que deseja levar a soluo
impressa para aplica-la. O segundo boto trar um relatrio com um nmero de pginas
igual ao nmero de solues encontradas, mostrando um caso por pgina. Este relatrio
possibilita ao usurio ir testando uma soluo por vez quando existe dvida entre as
vrias solues apresentadas pelo sistema.
80
Alm disso, o boto imprimir possveis traz uma funcionalidade que no fica
clara primeira vista, que a de listar todos os casos relativos a um determinado
equipamento. Se o usurio marcar todas as PDDs mostradas na etapa 2, sero
apresentados na etapa 3 todos os casos relativos ao equipamento marcado na primeira
etapa. Um usurio leigo pode usar este relatrio quando o resultado de uma busca sua
for uma longa lista de casos possveis e este quiser analisar as possibilidades com calma
tendo-as impressas no papel. O Engenheiro do Conhecimento poder usar uma relao
de casos de um determinado equipamento para dar manuteno na base de
conhecimento, eliminando aqueles casos obsoletos ou estudando a possibilidade de
dividir um equipamento em suas partes componentes quando o nmero de casos daquele
cdigo estruturado fica muito grande e a busca ineficiente.
81
82
de 29,94%, quando na primeira fase 10.804 ordens resultaram em 3.966 vlidas, tendo
um aproveitamento de 36,71%. Como relatamos no captulo 4, algumas ordens de
servio no so relacionadas a defeitos reais, ou no possuem a soluo preenchida, ou
ainda se referem a equipamentos no cobertos pelo domnio do conhecimento deste
prottipo. Sendo assim, cada nmero de OS sorteado era conferido e filtrado a fim de
obter-se 100 ordens aproveitveis, e encima somente de ordens aproveitveis que a
anlise foi feita.
Para interagir com o sistema escolheu-se uma pessoa com conhecimento
intermedirio de informtica, um estudante do 4 semestre do curso de informtica da
UNIJU. Essa informao relevante pois durante a apresentao dos casos ao sistema,
o usurio deve escolher quais palavras mostradas melhor descrevem o defeito do novo
caso, e esta escolha envolve um grau de subjetividade, que pode resultar em respostas
diferentes com diferentes usurios. Na busca de obter um comportamento mdio do
sistema buscou-se um usurio que no fosse especialista mas tambm que no fosse
totalmente leigo.
Para uma avaliao mais acurada deveriam ser feitos testes com pessoas com
nvel de conhecimentos diferentes acerca do domnio do problema coberto pelo sistema
e os resultados comparados entre si, mas o tempo restante no cronograma para a
avaliao do sistema no permitiu tal trabalho. Isso fica como sugesto para trabalhos
futuros como descrito no captulo 6.
O resultado da avaliao do prottipo aparece na tabela 5.4, e como podemos
perceber pela sua anlise, o sistema apresenta um grau bastante alto de confiabilidade
nas suas respostas.
Grupo
Grupo
Grupo
Grupo
Grupo
Grupo
01
02
03
04
05
06
TOTAL
54
10
31
100
Diagnsticos corretos do SE
34
24
67
12
19
Diagnsticos errneos do SE
14
63%
70%
77%
25% 100%
67%
83
sistema, pois uma base de conhecimento nunca ser capaz de cobrir todas as situaes
reais do dia-a-dia. Uma das caractersticas que fazem de um SE um software inteligente
a sua capacidade de aprender. Esses casos no cobertos pelo sistema seriam
cadastrados como novos casos, onde o ndice acumulado de pontos no atingiu o ponto
mnimo (soma acumulada de 2 pontos), e ficariam com o campo da soluo em branco
aguardando ser preenchida pelos especialistas em conjunto com o engenheiro do
conhecimento. uma situao normal de ocorrer, e se for considerada assim a
eficincia mdia do sistema na avaliao passa de 67% para 86%.
J os diagnsticos errneos do sistema so aqueles casos onde as PDDs
selecionadas pelos usurios fizeram com que o caso mais provvel apresentado no
tivesse a soluo que de fato resolveria o novo caso apresentado. Ou seja, a soluo
sugerida pelo SE no resolveria o novo caso. Estes casos representaram 14% dos 100
casos selecionados para avaliao e podemos consider-los como falhas do sistema.
Essas falhas podem ser corrigidas analisando-se os casos em que isso ocorre e buscando
PDDs que diferenciem os casos j armazenados na base de conhecimento destes novos
apresentados e cadastrando os novos casos com suas prprias PDDs e com a soluo
em branco. Uma possibilidade que no foi pensada no prottipo aqui apresentado e que
poderia vir a melhor-lo seria a possibilidade de cadastrar os casos diagnosticados
erroneamente para que os especialistas e o engenheiro do conhecimento achem as
solues corretas e as PDDs que melhor descrevem o caso diferenciando-o daquele j
armazenado.
Os nmeros da anlise separados por grupo ainda trazem algumas
peculiaridades. Podemos perceber que os primeiros 3 grupos, alm de concentrarem a
grande maioria dos casos (95% dos casos) ainda mantm, cada um deles, a mdia de
acertos prxima da mdia geral. Os ltimos 3 grupos destoam muito da mdia, sendo
que o ltimo, o dos scanners, nem apresentou caso sorteado. O grupo 04, dos no-breaks
teve 3 dos 4 casos sorteados no cobertos pelo sistema, o que denota uma grande
variedade de problemas possveis, ou pelo menos uma falta de PDDs adequadas para
descrever os problemas apresentados.
85
apresentar uma nova verso com melhorias e implementao de sugestes. Mas com
certeza este trabalho no termina aqui. Este somente o final de uma etapa e neste
tpico sero apresentadas algumas recomendaes e sugestes para o futuro.
A primeira questo a ser levantada a forma de interao do usurio com o
sistema. Sabe-se que a maneira mais adequada seria possibilitar a descrio do defeito
no equipamento em linguagem natural, como: a imagem do monitor oscila, e esse no
foi o jeito adotado em funo do tempo reduzido para o desenvolvimento do prottipo.
Teria de ser construdo um analisador sinttico e semntico, auxiliado por um dicionrio
de sinnimos, para que o sistema entendesse, por exemplo, que vdeo, tela e monitor se
tratam do mesmo equipamento. O arquivo de usurio, o banco de dados de casos e a
rvore de equipamentos poderiam continuar os mesmos. O dicionrio de PDDs que
seria substitudo por outro mecanismo, constituindo uma nova mquina de inferncia, e
um novo algoritmo de casamento deveria ser construdo.
Aps a realizao da avaliao do prottipo, onde foram constatados 14 casos
diagnosticados erroneamente pelo sistema, de um total de 100 casos, o autor levantou
outra questo a ser desenvolvida: a possibilidade de se criar no prottipo uma
funcionalidade extra, que permitisse o cadastro destes casos. Dessa forma os
especialistas e o engenheiro do conhecimento poderiam buscar as solues corretas e as
PDDs que melhor descrevam este novo caso, de forma a diferencia-lo daquele j
armazenado. Talvez o prprio arquivo de casos possa ser usado, com o acrscimo de um
campo de controle que marcasse esses casos como incompletos enquanto no
solucionados, mas diferenciando-os daqueles no cobertos pelo sistema, que estaro
simplesmente cadastrados com a soluo em branco.
Os testes de avaliao do prottipo tambm comprovaram uma realidade j
detectada na fase de filtragem do banco de dados de ordens de servio, descrita no
captulo 4: os equipamentos cujo cdigo estruturado comea por 05 e 06
estabilizadores e scanners, tm uma representatividade bastante pequena quando
comparados com os quatro primeiros itens CPUs, monitores, impressoras e nobreaks. Das 100 ordens de servio sorteadas para a avaliao, somente uma se referia ao
grupo 05, dos estabilizadores, e nenhuma ao grupo 06, dos scanners. Do total de ordens
de servio que compuseram a base de casos, 0,96% se referiam ao grupo 05 e 0,47% ao
grupo 06, como pode ser constatado na tabela 4.10. Esses nmeros levam concluso
que estes 2 grupos poderiam ser eliminados do sistema com pouca perda para os
usurios e com o ganho de maior foco, o que sempre resulta em maior eficincia de um
SE.
Finalmente a ltima recomendao para futuros trabalhos a adoo de um
nmero maior de pessoas fazendo os testes de avaliao do prottipo, com nvel de
conhecimentos diferentes para se obter um nvel de confiana maior nos resultados
apresentados.
COD_HS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
COD_ESTRUT
01.00
02.00
03.00
04.00
05.00
06.00
01.01
01.02
01.03
01.04
01.05
03.01
03.02
03.03
02.01
02.02
02.03
SINTETICO
S
S
S
S
S
S
A
A
A
A
A
A
A
A
A
A
A
DESCRIO
CPU
Monitor
Impressora
No-Break
Estabilizador
Scanner
Ligamento
Armazenamento
Windows
Internet
Outros
Matricial
Jato de Tinta
Laser
Ligamento
Botes, Painel
Imagem
GRAU
2
1
2
2
2
1
1
2
2
1
2
1
2
2
2
1
1
2
2
1
2
2
2
1
1
2
2
1
2
2
1
2
1
1
2
1
1
2
2
2
2
2
2
88
01.05
01.05
01.05
01.05
01.05
01.05
01.05
01.05
01.05
01.05
01.05
02.01
02.01
02.02
02.02
02.02
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
02.03
03.01
03.01
03.01
03.01
03.01
03.01
20
20
20
21
21
21
21
22
22
22
22
23
24
25
25
25
26
26
27
27
28
28
29
29
29
30
30
30
31
31
31
32
32
33
33
33
34
34
35
35
36
37
37
38
38
38
Atrasa
Data
Hora
Erro
Programa
Sempre
Trava
Erro
Frequente
Programa
Trava
Naoliga
Naoimagem
Botao
Naoliga
Naosegura
Liga
Naoimagem
Imagem
Oscila
Alteradas
Cores
Cabo
Cores
Mexer
Faixa
Naoimagem
Vertical
Faixa
Horizontal
Naoimagem
Foco
Imagem
Brilho
Fraca
Imagem
Demora
Imagem
Escura
Imagem
Naoliga
Naoimprime
Naosinal
Luzes
Naoimprime
Piscam
2
2
2
2
1
1
2
2
1
1
2
2
2
2
1
1
1
2
1
2
1
2
2
1
1
2
1
1
2
1
1
2
1
2
1
1
2
1
2
1
2
2
1
2
2
1
89
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.01
03.02
03.02
03.02
03.02
03.02
03.02
03.02
03.02
03.02
03.02
03.02
03.02
03.02
03.02
03.02
03.02
03.02
03.02
03.02
03.02
03.02
03.02
39
39
40
41
41
41
42
42
43
44
44
45
45
45
46
46
47
47
47
48
48
48
49
49
50
51
51
52
52
52
53
53
53
54
55
55
56
56
57
57
58
59
60
61
61
62
Carro
Tranca
Alinhamento
Falhas
Horizontais
Linhas
Naopuxa
Papel
Barulho
Fita
Naotraciona
Botao
Naofunciona
Painel
Borra
Impressao
Folha
Naoimprime
Pula
Erro
Falta
Papel
Papel
Pula
Naoliga
Naoimprime
Naosinal
Luzes
Naoimprime
Piscam
Naoimprime
Papel
Puxa
Barulho
Borra
Impressao
Caracteres
Estranhos
Cartuchos
Naoreconhece
Alinhamento
Naocolorido
Naopreto
Algumas
Naocores
Falhas
1
2
2
2
1
2
2
1
2
2
2
2
1
2
2
1
1
1
2
1
2
2
1
1
2
2
1
2
2
2
2
1
2
2
2
1
2
1
2
1
2
2
2
1
2
2
90
03.02
03.02
03.02
03.02
03.03
03.03
03.03
03.03
03.03
03.03
03.03
03.03
03.03
03.03
03.03
03.03
03.03
03.03
03.03
03.03
03.03
04.00
04.00
04.00
04.00
04.00
04.00
04.00
04.00
05.00
05.00
05.00
05.00
05.00
05.00
06.00
06.00
06.00
06.00
06.00
06.00
06.00
06.00
06.00
62
63
63
63
64
65
65
66
66
66
67
67
68
69
69
70
70
71
71
72
72
73
73
73
73
74
75
75
75
76
77
77
78
78
79
80
80
81
82
82
83
83
84
84
Linhas
Copias
Erro
Muitas
Naoliga
Naoimprime
Naosinal
Luzes
Naoimprime
Piscam
Naopuxa
Papel
Barulho
Borra
Impressao
Caracteres
Estranhos
Falhas
Linhas
Atola
Papel
Desliga
Falta
Luz
Segura
Naoliga
Bateria
Bip
Inversor
Naoliga
Barulho
Vibracao
Barulho
Cliques
Cheiro
Lmpada
Naoliga
Naocomunica
Adquire
Naoescaneia
Lampada
Naoacende
Escaneia
Trava
1
1
1
1
2
2
1
2
2
2
2
1
2
2
1
1
1
2
1
2
2
1
1
1
2
2
1
2
1
2
2
1
2
1
2
1
2
2
1
2
2
2
1
2
Caso
1
10
11
12
13
Cod_hs Desc_sucinta/Desc_detalhe/Solucao
Data_cad
Freq
01.01 No Liga
31/07/02
S
CPU no liga e no acende nenhum led nem ventoinhas.
Problema na alimentao de energia. Trocar fonte.
01.01 Liga mas no d nenhum sinal
31/07/02
S
CPU liga leds e ventoinhas mas no tem sinal de vdeo.
Problema na memria. Pode ser placa de vdeo ou placa me com menor
probabilidade.
01.01 Liga mas s d bip sem sinal de vdeo
31/07/02
S
CPU liga leds e ventoinhas, d bip e no tem sinal de vdeo
Problema na memria ou placa de vdeo. Testar primeiro trocando uma
depois outra.
01.01 No carrega Windows, erro HDD
31/07/02
S
CPU liga mas no carrega Windows, acusando erro no HDD
Testar possibilidade de mau contato. Caso no seja trocar HD.
01.01 No carrega Windows, erro CMOS
31/07/02
S
CPU liga mas no carrega Windows, acusando erro na CMOS
Verificar voltagem da bateria CMOS. Se estiver baixa trocar. Caso contrrio
problema na placa-me.
01.01 No carrega Windows
31/07/02
S
CPU liga mas no carrega Windows
Arquivos corrompidos ou faltando. Copiar os arquivos ou reinstalar o SO.
01.02 Erro lendo/gravando disquete
31/07/02
I
Acusa erro durante a leitura ou gravao de disquetes
Tentar com outros disquetes. Continuando o erro trocar drive.
01.02 Erro lendo/gravando winchester
31/07/02
I
Acusa erro durante a leitura ou gravao do winchester
Passar scandisk. Caso volte a acontecer trocar o HD.
01.02 Erro lendo CD
31/07/02
I
Acusa erro durante a leitura de CDs
Fazer limpeza no conjunto tico do CD.
01.02 Erro de disco cheio
31/07/02
I
Acusa erro de disco cheio
Apagar arquivos temporrios, lixeira e arquivo inteis.
01.02 Erro em outras mdias
31/07/02
N
Acusa erro durante o uso de outras mdias
Testar com outras mdias. Persistindo fazer manuteno e limpeza da
unidade.
01.03 Erro de registro
31/07/02
I
Acusa erro no registro do Windows
Passar programa reparador de registro como o scanreg. Testar memrias.
01.03 Erro geral de proteo. Tela azul.
31/07/02
I
Acusa erro geral de proteo (General Protect Failure). D tela azul.
92
14
15
16
17
18
19
20
21
22
23
24
25
26
93
27
28
29
30
31
32
33
imagem.
02.03 Cores aparecem alteradas
31/07/02
N
Cores aparecem alteradas
Solda fria na placa CRT.
02.03 Cores alteradas mexendo no cabo
31/07/02
I
Cores alteram quando se mexe no cabo de sinal de vdeo
Fio rompido no cabo de sinal de vdeo. Cortar e ressoldar.
02.03 S aparece faixa vertical de luz
31/07/02
N
S aparece faixa vertical de luz no meio
Defeito em componente da deflexo horizontal. Aconselhvel esquema
eletrnico para efetuar conserto.
02.03 S aparece faixa horizontal de luz
31/07/02
N
S aparece faixa horizontal de luz no meio
Defeito em componente da deflexo vertical. Aconselhvel esquema
eletrnico para efetuar conserto.
02.03 Imagem fora de foco
31/07/02
S
Imagem fora de foco
Regular boto de foco no fly-back. Se o problema oscila de com o tempo do
monitor ligado e no fica 100% bom tem que trocar o fly-back.
02.03 Imagem clara demais, muito brilho
31/07/02
S
Imagem clara demais, muito brilho
Regular boto no fly-back. Se no ficar 100% bom tem que trocar o flyback.
02.03 Demora para vir imagem quando liga
31/07/02
S
Demora para aparecer a imagem depois de ligar
34
35
03.01 No liga
31/07/02
S
Impressora no liga
Problema de alimentao de energia. Trocar a fonte ou os componentes
queimados da mesma.
03.01 No imprime e no d sinal nenhum
31/07/02
S
Liga mas no imprime e no d nenhum sinal
Impressora no est recebendo dados. Provvel defeito na interface de
comunicao da impressora ou do micro. Testar em outro micro para isolar o
defeito.
03.01 No imprime e piscam luzes do painel
31/07/02
S
No imprime e piscam luzes do painel
Verificar no manual da impressora o significado das luzes. Normalmente
sinal que o carro de impresso est trancado.
03.01 Tranca o carro durante a impresso
31/07/02
I
Tranca o carro durante a impresso
Fazer manuteno na impressora. Limpeza e lubrificao do eixo do carro
de impresso.
03.01 Imprime fora do alinhamento
31/07/02
S
36
37
38
39
31/07/02
94
40
41
42
43
44
45
46
47
48
49
50
95
51
52
53
54
55
56
57
58
59
60
61
62
isolar o defeito.
03.02 No imprime e piscam luzes do painel
31/07/02
S
No imprime e piscam luzes do painel
Verificar no manual da impressora o significado das luzes. Normalmente
sinal de problema nos cartuchos ou cabea de impresso.
03.02 Puxa papel e no imprime. Pisca luz.
31/07/02
I
Puxa papel e no imprime. Pisca luz do painel.
Provvel problema no cartucho de impresso. Testar com outro. Se no for
verificar conjunto bloco mvel de suporte aos cartuchos, pode estar
quebrado.
03.02 Barulho estranho ao imprimir
31/07/02
I
Faz barulho estranho quando imprime
Fazer manuteno na impressora. Limpeza e lubrificao.
03.02 Borra a impresso
31/07/02
I
Borra a impresso
Fazer manuteno na impressora. Limpeza e lubrificao. Testar com outros
cartuchos se no resolver.
03.02 S imprime caracteres estranhos
31/07/02
N
S imprime caracteres estranhos e no o que foi enviado
Problema na interface de comunicao da impressora ou do micro. Testar
em outro micro para isolar a origem do defeito. Verificar se o driver usado
o correto.
03.02 No reconhece cartuchos
31/07/02
S
No reconhece cartuchos encaixados
Defeito no cartucho ou conjunto do bloco mvel com o encaixe dos
cartuchos quebrado ou cabo flat ca cabea de impresso quebrado ou
oxidado.
03.02 Imprime fora do alinhamento
31/07/02
I
Imprime fora do alinhamento
Fazer alinhamento via software do driver da impressora. Caso no resolva
deve ter folga entre cabea de impresso e eixo. Trocar buchas.
03.02 No imprime colorido
31/07/02
S
No imprime colorido - nenhuma cor
Trocar cartucho color. Se no resolver verificar driver de impresso.
03.02 No imprime preto
31/07/02
S
No imprime preto
Trocar cartucho preto. Se no resolver verificar driver de impresso.
03.02 No imprime algumas cores
31/07/02
I
No imprime algumas cores
Trocar cartucho color. Se no resolver verificar driver de impresso.
03.02 Imprime com linhas falhadas horizontais
31/07/02
I
Imprime com linhas falhadas horizontais
Fazer limpeza da cabea de impresso. Se no resolver trocar o cartucho ou
a cabea (no caso de cabea de impresso fixa como nas Epson).
03.02 Erro quando imprime muitas pginas
31/07/02
I
D erro quando imprime muitas pginas
Pouco espao no winchester do micro ou buffer da impressora muito
96
63
64
65
66
67
68
69
70
71
72
73
74
75
No liga
31/07/02
97
76
77
78
79
80
81
82
83
No liga
Problema de alimentao de energia. Trocar a fonte ou os componentes
queimados da mesma.
05.01 Faz barulho de vibrao
31/07/02
I
Faz barulho de vibrao quando est ligado
Transformador mal-fixado na carcaa ou carcaa mal fechada.
05.01 Faz barulho de cliques
31/07/02
I
Faz barulho de cliques quando est ligado
Rel de baixa qualidade, trocar. Pode ainda ser resultado de muita oscilao
na tenso da rede eltrica.
05.01 Cheiro de queimado
31/07/02
N
D cheiro de queimado aps um tempo ligado
Potncia consumida acima da especificao do aparelho. Remover algum
dos equipamentos do estabilizador.
06.01 No liga
31/07/02
S
No liga
Problema de alimentao de energia. Trocar a fonte ou os componentes
queimados da mesma.
06.01 No comunica com o micro
31/07/02
S
Liga mas no comunica com o micro
Reinstalar driver. Verificar se a porta paralela est em EPP na BIOS do
micro.
06.01 No escaneia
31/07/02
S
No acusa erro mas no escaneia imagem nenhuma
Verificar se a lmpada acende e se o carro do sensor se desloca.
06.01 No acende a lmpada
31/07/02
S
No acende a lmpada
Testar com outra lmpada.
06.01 Tranca durante o escaneamento
31/07/02
I
O carro do scanner tranca antes do final do escaneamento
Fazer manuteno e lubrificar o eixo do carro do sensor/lmpada. Verificar
conexes internas.
99
Close;
sql.Clear;
sql.Add('Select * From Dicionar Where');
j := 0;
For i := 1 to frmNovoCaso01.lbEquip.Items.Count Do
Begin
If frmNovoCaso01.lbEquip.Selected[i-1] = True Then
Begin
if j = 0 Then
Begin
sql.Add('Cod_Estrut = ' + Copy(lbEquip.Items.Strings[i-1],1,5));
j := 1;
End
Else
sql.Add('OR Cod_Estrut = ' + Copy(lbEquip.Items.Strings[i-1],1,5));
End;
End;
sql.Add('Order By Palavra');
Open;
End;
Close;
frmNovoCaso02.Show;
end;
100
lbEquip.Items.Add(Dados.TabArvoreCOD_ESTRUT.Value + ' - ' +
Dados.TabArvoreDESCRICAO.Value);
Dados.TabArvore.Next;
End;
end;
end.
102
lbPalavras.Items.Clear;
Ultimo := 0;
For i:= 0 To 100 Do
Begin
R[I,1] := 0;
R[I,2] := 0;
End;
Palavra:='';
Dados.sqlConsultaPalavras.First;
While Not Dados.sqlConsultaPalavras.Eof Do
Begin
If Palavra <> Dados.sqlConsultaPalavrasPALAVRA.Value Then
Begin
lbPalavras.Items.Add(Dados.sqlConsultaPalavrasPALAVRA.Value);
Palavra := Dados.sqlConsultaPalavrasPALAVRA.Value;
End;
Dados.sqlConsultaPalavras.Next;
End;
end;
procedure TfrmNovoCaso02.SpeedButton1Click(Sender: TObject);
begin
Close;
end;
procedure TfrmNovoCaso02.Adiciona(Caso:integer; Grau:integer);
Var
Achou:Boolean;
Begin
Achou := False;
For I:= 0 to Ultimo Do
If R[I, 1] = Caso Then
Begin
R[I,2] := R[I,2] + Grau;
Achou := True;
End;
If Achou = False Then
Begin
R[Ultimo,1] := Caso;
R[Ultimo,2] := Grau;
Ultimo := Ultimo + 1;
End;
End;
procedure TfrmNovoCaso02.Classificar;
Var
AuxCaso, AuxGrau:Integer;
103
Begin
//Mtodo de Ordenao BOLHA
For I:= 0 to Ultimo-1 Do
For J:= I+1 to Ultimo Do
If R[I, 2] < R[J,2] Then
Begin
AuxCaso := R[I,1];
AuxGrau := R[I,2];
R[I,1] := R[J,1];
R[I,2] := R[J,2];
R[J,1] := AuxCaso;
R[J,2] := AuxGrau;
End;
End;
procedure TfrmNovoCaso02.SpeedButton2Click(Sender: TObject);
begin
Dados.sqlConsultaPalavras.First;
While Not Dados.sqlConsultaPalavras.EOF Do
Begin
If
lbPalavras.Selected[lbPalavras.Items.IndexOf(Dados.sqlConsultaPalavrasPALAVRA.V
alue)] = True Then
Adiciona(StrToInt(FloatToStr(Dados.sqlConsultaPalavrasCOD_CASO.Value)),
StrToInt(FloatToStr(Dados.sqlConsultaPalavrasGRAU.Value)));
Dados.sqlConsultaPalavras.Next;
End;
Classificar;
Close;
frmNovoCaso03.Show;
end;
procedure TfrmNovoCaso02.SpeedButton3Click(Sender: TObject);
begin
Close;
frmNovoCaso01.Show;
end;
end.
105
var
frmNovoCaso03: TfrmNovoCaso03;
Caso,I,J:Integer;
implementation
uses Arquivos, NovoCaso02, RCaso, RCasosPossiveis;
{$R *.DFM}
procedure TfrmNovoCaso03.SpeedButton1Click(Sender: TObject);
begin
Close;
end;
procedure TfrmNovoCaso03.SpeedButton4Click(Sender: TObject);
begin
Close;
frmNovoCaso02.Show;
end;
procedure TfrmNovoCaso03.btnRetornarTelaClick(Sender: TObject);
begin
Close;
frmNovoCaso02.Show;
end;
procedure TfrmNovoCaso03.FormShow(Sender: TObject);
begin
Caso := 0;
Dados.TabCasos.Locate('Cod_Caso', frmNovoCaso02.R[Caso,1] , []);
If frmNovoCaso02.Ultimo > 1 Then
btnAvancar.Enabled := True
Else
btnAvancar.Enabled := False;
btnRetornar.Enabled := False;
lblGrau.Caption := IntToStr(frmNovoCaso02.R[Caso,2]);
end;
procedure TfrmNovoCaso03.btnAvancarClick(Sender: TObject);
begin
Caso := Caso + 1;
If Dados.TabCasos.Locate('Cod_Caso', frmNovoCaso02.R[Caso,1] , []) Then
Begin
If frmNovoCaso02.Ultimo <> Caso+1 Then
btnAvancar.Enabled := True
Else
btnAvancar.Enabled := False;
106
btnRetornar.Enabled := True;
lblGrau.Caption := IntToStr(frmNovoCaso02.R[Caso,2]);
End
Else
Caso := Caso -1;
end;
procedure TfrmNovoCaso03.btnRetornarClick(Sender: TObject);
begin
Caso := Caso - 1;
Dados.TabCasos.Locate('Cod_Caso', frmNovoCaso02.R[Caso,1] , []);
If Caso > 0 Then
btnRetornar.Enabled := True
Else
btnRetornar.Enabled := False;
btnAvancar.Enabled := True;
lblGrau.Caption := IntToStr(frmNovoCaso02.R[Caso,2]);
end;
procedure TfrmNovoCaso03.SpeedButton2Click(Sender: TObject);
begin
relCaso.QuickRep1.Preview; //Trocar .Preview por .Print para impreso direta
end;
procedure TfrmNovoCaso03.SpeedButton3Click(Sender: TObject);
begin
With Dados.sqlCasosPossiveis Do
Begin
Close;
sql.Clear;
sql.Add('Select * from Casos Where');
j := 0;
For i := 0 to frmNovoCaso02.Ultimo-1 Do
Begin
if j = 0 Then
Begin
sql.Add('(Cod_Caso = ' +IntToStr(frmNovoCaso02.R[i,1])+')');
j := 1;
End
Else
sql.Add('Or (Cod_Caso = ' +IntToStr(frmNovoCaso02.R[i,1])+')');
End;
Open;
End;
relCasosPossiveis.QuickRep1.Preview;
Dados.sqlCasosPossiveis.Close;
end;
end.
5. Bibliografia
108
HAYES-ROTH, Frederick. Building Expert Systems. Stanford: Addison-Wesley
Publishing Company, Inc, 1983.
KOLODNER, Janet. Case-Based Reasoning. San Mateo: Morgan Kaufmann, 1993.
LEWIS, Lundy. A Case-Based Reasoning Approach to the Management of faults in
Communications Networks. IEEE INFOCOM, San Francisco, v.3, p.1422-1429,
Apr. 1993. Trabalho apresentado no Annual Joint Conference of The IEEE
Computer and Communications Societies, 20., 1993.
LIEBOWITZ, Jay. Introduction to expert systems. Santa Cruz, Califrnia: Mitchell
Publishing. 1988.
MALEK, Maria; KANAWATI, Rushed. A Cooperating Hybrid Neural-CBR
Classifiers for Building On-line. In: International Conference on Case-Based
Reasoning, 4., 2001, Vancouver. Proceedings... Cergy, 2000. 5 p.
McSHERRY, David. Improving the Build Quality of Case-Based Reasoning Systems:
the Case-Authoring Challenge. In: International Conference on Case-Based
Reasoning, 4., 2001, Vancouver. Proceedings... Coleraine: Ulster, 2001. 6 p.
MELCHIORS, Cristina. Raciocnio Baseado em Casos Aplicado ao Gerenciamento de
Falhas em Redes de Computadores. 1999. 151 f. Dissertao (Mestrado em
Cincia da Computao) Curso de Ps-graduao em Computao,
Universidade Federal do Rio Grande do Sul, Porto Alegre.
MLLER, Isabela R. F. Uma anlise das aplicabilidades de sistemas especialistas na
rea de gesto: um estudo de caso. 1998. 131 f. Dissertao (Mestrado em
Administrao) Curso de Ps-graduao em Administrao, Universidade
Federal de Santa Catarina, Florianpolis.
MULLINS, Mark; SMYTH, Barry. Visualisation Methods in Case-Based Reasoning.
In: International Conference on Case-Based Reasoning, 4., 2001, Vancouver.
Proceedings... Dublin, 2001. 4 p.
NEWEL, Allan e Simon, Herbert. A Program that simulates human thought. New
York: Academic Press, 1961.
PARTRIDGE, D. e Hussain, K. Knowledge-based information systems. Londres:
McGraw Hill, 1995.
RIBEIRO, Horcio da Cunha e Sousa. Introduo aos Sistemas Especialistas. So
Paulo: Livros Tcnicos e Cientficos Editora S.A., 1987.
RIO, Beatriz Z., FERNNDEZ, Rodolfo C. Sistemas Expertos: conceptos generales y
su aplicacion comercial. Tecnologia em Marcha. V.9, n.4, 1990.
109
ROTH-BERGHOFER, Thomas. Searching Online Advertisements with Textual CaseBased Reasoning. In: International Conference on Case-Based Reasoning, 4.,
2001, Vancouver. Proceedings... Kaiserlautern, 2001. 2 p.
SCHANK, Roger C. Dynamic memory: a theory of learning in computers and people.
Cambridge: University Press, 1982.
SCHANK, Roger C. The Cognitive Computer: on language learning and artificial
intelligence. Pennsauken: Addison-Wesley Publishing Company, Inc, 1984.
SCHILDT, Herbert. Advanced turbo prolog. Berkley: McGraw Hill, 1987.
SOVAT, Ricardo B.; CARVALHO, Andr C. P. L. F. Retrieval and Adaptation os
Cases Using an Artificial Neural Network. In: International Conference on CaseBased Reasoning, 4., 2001, Vancouver. Proceedings... So Carlos: USP, 2001. 5 p.
TEIXEIRA, Alisson R. A utilizao de programas de computador como agentes no
processo de transferncia da informao: criao e avaliao de um sistema
especialista baseado em casos. 2000. 92 f. Dissertao (Mestrado em Cincia da
Informao) Curso de Ps-graduao em Cincia da Informao, Universidade
de Braslia, Braslia.
YAGER, Ronald R. Induced OWA Aggregation in Case Based Reasoning. In:
International Conference on Case-Based Reasoning, 4., 2001, Vancouver.
Proceedings... New Rochelle, 2001. 5 p.
YAZDANI, Masoud. Artificial Intelligence: principles and applications. Chapman and
Hall Ltd. London. 1986.
WATSON, Ian; MARIR, Farhi. Case-based Reasoning: A Review. The Knowledge
Engineering Review. London. V.9. n.4. 1994.
WEISS, Sholom M. e Kulikowski. Guia prtico para projetar sistemas especialistas.
Rio de Janeiro: LTC, 1988.