Está en la página 1de 10

Sistemas Especialistas: uma introdução

Mônica Xavier Py
Instituto de Informática
Universidade Federal do Rio Grande do Sul
Caixa Postal 15064 – 90501-970, Porto Alegre, RS

mpy@inf.ufrgs.br

1 Introdução
A Inteligência Artificial (IA) nasceu oficiamente em 1956, durante uma
conferência de verão em Dartmouth College, nos Estados Unidos. Jonh
McCarthy, Marvin Minsky, Nathaniel Rochester e Claude Shannon se reu-
niram com a intenção de realizar um estudo sobre o tópico “Inteligência
Artificial”, que a partir de então ficou conhecida, gerando inclusive po-
lêmicas. Os pesquisadores ficando impossibilitados de adotar uma defi-
nição formal precisa para IA, visto que seria necessário definir, a própria
inteligência, propuseram algumas definições operacionais: “Inteligência
Artificial é a parte da ciência da computação que compreende o projeto de
sistemas computacionais que exibam características associadas, quando
presentes no comportamento humano, à inteligência” (BARR; FEIGEN-
BAUM, 1981).
Existem duas linhas principais de pesquisa para a construção de siste-
mas inteligentes: a linha conexionista e a linha simbólica. A linha cone-
xionista visa à modelagem da inteligência humana através da simulação
dos componentes do cérebro, isto é, de seus neurônios, e de suas inter-
ligações. Esta proposta foi formalizada inicialmente em 1943, quando o
neuropsicólogo McCulloch e o lógico Pitts propuseram um primeiro mo-
delo matemático para um neurônio.
A linha simbólica segue a tradição lógica e teve em McCarthy e Newell
seus principais pesquisadores. Os princípios dessa linha de pesquisa são
apresentados no artigo “Physical symbol systems” de Newell. O sucesso
dos sistemas especialistas(“expert system”), a partir da década de setenta,

1
estabeleceu a manipulação simbólica de um grande número de fatos es-
pecializados sobre um domínio restrito como o paradigma corrente para a
construção de sistemas inteligentes do tipo simbólico.
Uma das metas na Inteligência Artificial é ter uma máquina que simule
com exatidão as atividades da mente humana. Como aplicações para os
sistemas especialistas, apresenta-se três categorias: manufatura, finanças
e serviços (educação, engenharia, medicina, meteorologia, militar, etc).
Este trabalho apresenta os Sistemas Especialistas, passando por uma
breve definição, descrevendo a arquitetura, e apresentando exemplos.

2 Sistemas baseados no conhecimento


Os sistemas baseados no conhecimento foram alvo de várias pesquisas em
Inteligência Artificial, realizadas com sucesso. Esses sistemas são basea-
dos num modelo explícito de conhecimento destinado a solucionar pro-
blemas. O conhecimento deve ser representado em forma de regras ou
modelos de objetos.
Sistemas Baseados no Conhecimento (SBC) ou “Knowledge-based sys-
tems” são sistemas que aplicam mecanismos automatizados de raciocínio
para a representação e inferência de conhecimento. Esses sistemas costu-
mam ser identificados como simplesmente "de inteligência artificial apli-
cada"e representam uma abrangente classe de aplicações da qual todas as
demais seriam aproximadamente subclasses.
Existe uma série de formalismos que podem ser utilizados para mo-
delar o conhecimento de sistemas baseados no conhecimento, tais como,
regras de produção, raciocínio baseados em casos, redes neurais, redes
probabilísticas, entre outros.
A IA está dividida em três áreas de pesquisa relativamente indepen-
dentes. Alguns pesquisadores preocupam-se em desenvolver programas
de computador que leiam, falem ou entendam a linguagem que as pes-
soas usam em sua conversa diária, sendo conhecido como "processamento
da linguagem natural. Outra área trabalha com o "desenvolvimento de
robôs inteligentes". E a terceira área de pesquisa desenvolve programas
que usem o conhecimento simbólico para simular o comportamento dos
especialistas humanos. A idéia é desenvolver programas que possibilitem
a utilização dos conhecimentos dos especialistas através de uma máquina
que permita o armazenamento e o seqüenciamento de informações e a
auto-aprendizagem, sendo conhecido como Sistemas Especialistas.

2
3 Sistema Especialista
Um sistema especialista (SE) pode ser visto visto como uma subária da
Inteligência Artificial, desenvolvido a partir da necessidade de se proces-
sar informações não numéricas, um sistema especialista é capaz de apre-
sentar conclusões sobre um determinado tema, desde que devidamente
orientado e “alimentado”.
Um sistema especialista (FLORES, 2003) é uma forma de sistema base-
ado no conhecimento especialmente projetado para emular a especializa-
ção humana de algum domínio específico. Um SE irá possuir uma base de
conhecimento (BC) formada de fatos, regras e heurísticas sobre o domínio,
tal como um especialista humano faria, e devem ser capazes de oferecer
sugestões e conselhos aos usuários e, também, adquirir novos conheci-
mentos e heurísticas com essa interação.
O objetivo do sistema especialista é bastante restrito, se considerar o
objetivo dos modelos psicológicos: os SE’s são concebidos para reproduzir
o comportamento de especialistas humanos na resolução de problemas do
mundo real, mas o domínio destes problemas é altamente restrito (BARR;
FEIGENBAUM, 1981).
Os primeiros sistemas especialistas que obtiveram sucesso em seus ob-
jetivos foram os sistemas DENDRAL (FEIGENBAUM; BUCHANAN; LE-
DERBERG, 1971) e MYCIN (SHORTLIFFE, 1976), detalhados na seção 4.
A partir dessa época, vários sistemas foram desenvolvidos e resolve-
ram diversos problemas, em diferentes domínios, como por exemplo, agri-
cultura, química, sistemas de computadores, eletrônica, engenharia, geo-
logia, gerenciamento de informações, direito, matemática, medicina, apli-
cações militares, física, controle de processos e tecnologia espacial.
Pode-se dizer que um sistemas de produção é um nome genérico para
todos os sistemas baseados em regras de produção, isto é, pares de ex-
pressões consistindo em uma condição e uma ação. Inicialmente a idéia
dos sistemas de produção foi introduzida por Post, em 1936, quando ele
propôs os chamados sistemas de Post (DIVERIO; MENEZES, 2000).
Na representação de um modelo de sistema de produção, apresentam-
se dois componentes: o conjunto de regras e a memória de trabalho. Esses
componentes são definidos conforme:

• Regras de produção: conjunto ordenado de pares (LHS, RHS), onde


LHS e RHS são seqüências de caracteres.

• Memória de trabalho: uma seqüência de caracteres.

Apresenta ainda, um componente ativo, chamado interpretador.

3
Usuario

Memoria de Base de
Interface/Usuario
trabalho regras

Motor de
Acao Inferencia
recomendada

Quadro negro

Figura 1: Arquitetura de um sistema especialista

Esse interpretador realiza o seguinte procedimento: para cada regra


(LHS,RHS), se a seqüência de caracteres LHS está contida na memória de
trabalho, então substituir os caracteres LHS na memória de trabalho pelos
caracteres de RHS; se não continuar na próxima regra.
O sistema PAS II e o sistema VIS utilizaram o modelo de sistemas
de produção para a modelagem do comportamento humano. O formato
condição-ação se adapta à modelagem de comportamentos baseados em
pares.
De acordo com a Figura 3, um sistema especialista apresenta uma ar-
quitetura com os seguintes componentes: base de conhecimentos, meca-
nismos de inferência, explanação e aquisição de conhecimento. A base
do conhecimento reune o conhecimento do especialista modelado con-
forme a representação do conhecimento escolhida para modelar o domí-
nio em questão. Atualmente não existe um formalismo de representação
que possa ser considerado melhor do que todos os outros existentes. O
mecanismo de inferência examina o conteúdo da base de conhecimentos,
decidindo a ordem em que se tiram as inferências. Assim, o mecanismo de
inferência conduz a consulta com o usuário, transferindo os fatos e regras,
utilizados durante uma consulta, para a memória de trabalho.
O módulo de aquisição de conhecimentos é responsável pela atualiza-
ção da base de conhecimentos, através de um mecanismo de interação coo-

4
perativa, gerado a partir do módulo de explanação. O módulo de explana-
ção é responsável pela descrição do raciocínio do sistema para o usuário,
sendo ativado tanto pelo mecanismo de inferência como pelo módulo de
aquisição de conhecimentos. O mecanismo de inferência evoca o módulo
de explanação, visando a um processo de transformação do conhecimento,
representado na base de conhecimentos do SE ou deduzido no processo de
busca de uma solução (FLORES, 2003).
Outra característica comum nos sistemas especialistas é a existência de
um mecanismo de raciocínio incerto que permita representar a incerteza a
respeito do conhecimento do domínio.
O motor de inferência controla a atividade do sistema. Esta atividade
ocorre em ciclos, cada ciclo consistindo em três fases:

• Correspondência de dados, onde as regras que satisfazem a descri-


ção da situação atual são selecionadas.

• Resolução de conflitos, onde as regras que serão realmente executa-


das são escolhidas dentre as regras que foram selecionadas na pri-
meira fase, e ordenadas.

• Ação, a execução propriamente dita das regras.

As principais vantagens dos sistemas de produção como método de


representação de conhecimento são: modularidade, uniformidade e na-
turalidade. Como desvantagens considera-se: ineficiência em tempo de
execução e complexidade do fluxo de controle que leva à solução dos pro-
blemas.
Tais vantagens e desvantagens determinam as características que de-
vem ter os domínios que se adaptam ao desenvolvimento de SE baseados
em sistemas de produção:

• Ser descrito por um conhecimento consistindo em um conjunto


muito grande de fatos parcialmente independentes;

• Dispor de métodos de solução consistindo de ações independentes;

• Apresentar claramente a separação entre conhecimento e ação.

O desempenho de um sistema está no conhecimento armazenado em


suas regras e em sua memória de trabalho. Este conhecimento deve ser ob-
tido junto a um especialista humano do domínio e representado de acordo
com regras formais definidas para a codificação de regras no SE em ques-
tão.

5
3.1 Métodos de representação de conhecimento
Um ponto bastante importante no projeto de um sistema especialista é a
escolha do método de representação de conhecimento. A linguagem asso-
ciada ao método escolhido deve ser suficientemente expressiva (por exem-
plo, lógica) para permitir a representação do conhecimento a respeito do
domínio escolhido de maneira completa, e sendo eficiente. Mesmo as-
sim, existe problemas de eficiência, facilidade de uso e a necessidade de
expressar conhecimento incerto, que levaram ao desenvolvimento de di-
versos tipos de formalismos de representação de conhecimento. Alguns
dos formalismos de representação do conhecimento são apresentados a
seguir:

• Lógica – é a base para a maioria dos formalismos de representação


de conhecimento, seja de forma explícita, como nos sistemas especi-
alistas baseados na linguagem Prolog, seja mascarada na forma de
representações específicas que podem facilmente ser interpretadas
como proposições ou predicados lógicos.

• Redes semânticas – é um nome utilizado para definir um conjunto


heterogêneo de sistemas. Em última análise, a única característica co-
mum a todos estes sistemas é a notação utilizada: uma rede semân-
tica consiste em um conjunto de nodos conectados por um conjunto
de arcos. Os nodos em geral representam objetos e os arcos, relações
binárias entre esses objetos. Mas os nodos podem também ser utili-
zados para representar predicados, classes, palavras de uma lingua-
gem, entre outras possíveis interpretações, dependendo do sistema
de redes semânticas em questão.

• Quadros – (“frames”), e sua variação, os roteiros (“scripts”), foram


introduzidos para permitir a expressão das estruturas internas dos
objetos, mantendo a possibilidade de representar herança de propri-
edades como as redes semânticas. As idéias fundamentais destes
métodos foram introduzidas por Marvin Minsky, em seu artigo “A
framework to represent knowledge” (MINSKY, 1975).

3.2 Motor de Inferência


As principais características do motor de inferência disponível em um sis-
tema especialista dizem respeito às seguintes funcionalidades: método de
raciocínio, estratégia de busca, resolução de conflito e representação de
incerteza.Algumas dessas funcionalidades são detalhadas a seguir:

6
3.2.1 Modo de raciocínio
Existem basicamente dois modos de raciocínio aplicáveis a regras de pro-
dução: encadeamento progressivo ou encadeamento a frente (do inglês,
“forward chaining”), e encadeamento regressivo ou encadeamento para
trás (do inglês, “backward chaining”). No encadeamento progressivo,
também chamado encadeamento dirigido por dados, a parte esquerda da
regra é comparada com a descrição da situação atual, contida na memória
de trabalho. As regras que satisfazem a esta descrição têm sua parte di-
reita executada, o que, em geral, significa a introdução de novos fatos na
memória de trabalho.
No encadeamento regressivo, também chamado encadeamento diri-
gido por objetivos, o comportamento do sistema é controlado por uma
lista de objetivos. Um objetivo pode ser satisfeito diretamente por um ele-
mento da memória de trabalho, ou podem existir regras que permitam
inferir algum dos objetivos correntes, isto é, que contenham uma descri-
ção deste objetivo em suas partes direitas. As regras que satisfazem esta
condição têm as instâncias correspondentes às suas partes esquerdas adi-
cionadas à lista de objetivos correntes. Caso uma dessas regras tenha to-
das as suas condições satisfeitas diretamente pela memória de trabalho, o
objetivo em sua parte direita é também adicionado à memória de traba-
lho. Um objetivo que não possa ser satisfeito diretamente pela memória
de trabalho, nem inferido através de uma regra, é abandonado. Quando
o objetivo inicial é satisfeito, ou não há mais objetivos, o processamento
termina.

3.2.2 Estratégia de busca


Uma vez definido o tipo de encadeamento, o motor de inferência necessita
ainda de uma estratégia de busca para guiar a pesquisa na memória de
trabalho e na base de regras. Este tipo de problema é conhecido como
busca em espaço de estados. Este tópico foi um dos primeiros estudados
em IA, no contexto de solução de problemas (do tipo quebra-cabeças) e
jogos por computador (damas, xadrez, go, etc.).

3.2.3 Resolução de conflito


Ao terminar o processo de busca, o motor de inferência dispõe de um con-
junto de regras que satisfazem à situação atual do problema, o chamado
conjunto de conflito. Se esse conjunto for vazio, a execução é terminada;
caso contrário, é necessário escolher que regras serão realmente executa-

7
das e em que ordem. Os métodos de resolução de conflito mais utilizados
ordenam as regras de acordo com os seguintes critérios: prioridades atri-
buídas estaticamente; características da estrutura das regras como comple-
xidade, simplicidade e especificidade; características dos dados associados
às regras como o tempo decorrido desde sua obtenção, sua confiabilidade
ou seu grau de importância; e, finalmente, seleção ao acaso.

4 Exemplo de SE
Nesta seção, são descritos três sistemas especialistas, que estão detalhados
em (BARR; FEIGENBAUM, 1981).

4.1 Mycin
O sistema MYCIN (SHORTLIFFE, 1976) foi um dos primeiros sistemas es-
pecialistas. Seu objetivo é prover conselho a respeito de diagnóstico e te-
rapia de doenças infecciosas. Este tipo de aconselhamento pode ser muito
útil, pois nem sempre o médico responsável é um especialista em infec-
ções, principalmente em ambiente hospitalar.
Uma seção do sistema inicia-se com um questionário, a ser respondido
pelo usuário, a respeito do paciente. Informações como nome, idade, sexo,
tempo de manifestação dos sintomas, resultados de exames, etc. são so-
licitadas. A partir dessas informações, e utilizando sua base de regras, o
sistema é capaz de estabelecer um diagnóstico e propor uma terapia ade-
quada.
A base de regras do sistema contém 450 regras, que lhe permitem di-
agnosticar e prescrever tratamentos para bacteremia (infecção no sangue),
meningite e cistite infecciosa.
O sistema MYCIN utiliza o encadeamento regressivo associado a uma
busca em profundidade. A busca realizada é completa, no sentido em
que, dado um objetivo, todas as evidências a favor e contra o objetivo são
pesquisadas. A aquisição de conhecimento para o sistema MYCIN é facili-
tada pela possibilidade do sistema explicar seu raciocínio. Essa facilidade
é explorada no sistema TEIRESIAS [Dav80], que permite modificar intera-
tivamente a base de regras do MYCIN.

4.2 Dendral
DENDRAL (FEIGENBAUM; BUCHANAN; LEDERBERG, 1971) é o nome
de um projeto desenvolvido a partir de 1965 na Universidade de Stand-

8
ford (USA). O objetivo do projeto é desenvolver programas capazes de
determinar automaticamente o conjunto de estruturas moleculares, cons-
tituídas de átomos conhecidos, capazes de explicar dados provenientes da
análise espectrográfica de uma molécula desconhecida. Uma abordagem
algorítmica havia sido tentada anteriormente e se mostrou impraticável
devido ao enorme número de estruturas possíveis. O primeiro programa
do projeto, o Heuristic DENDRAL, fazendo uso de regras obtidas junto
a especialistas humanos em espectroscopia que impõem restrições aos ti-
pos possíveis de estrutura, foi capaz de reduzir o espaço de busca para
um tamanho tratável, mantendo os mesmo resultados. Outros programas
desenvolvidos no âmbito do projeto são: o sistema Meta-DENDRAL, ca-
paz de inferir automaticamente regras de espectroscopia de massa a partir
de exemplos de moléculas devidamente analisadas por seres humanos e o
sistema CONGEN, um gerador de estruturas moleculares não relacionado
diretamente com técnicas de IA.
O sistema DENDRAL, a partir de 1968 até o presente, foi utilizado em
diversas pesquisas sobre química orgânica. Alguns resultados de análises
realizadas pelo sistemas foram considerados melhores do que os obtidos
por especialistas humanos e publicados em revistas especializadas.

4.3 Prospector
O sistema PROSPECTOR (HART; DUDA; EINAUDI, 1978) foi desenvol-
vido no SRI International (USA) com o objetivo de auxiliar geologistas
envolvidos em prospecção mineral. A principal função do sistema é de-
terminar a correspondência entre dados que descrevem uma determinada
situação com modelos que descrevem classes disjuntas de situações pos-
síveis. Os modelos são descrições formais dos tipos mais importantes de
depósitos minerais e os dados de entrada se referem a observações geoló-
gicas de superfície.

5 Conclusão
Este trabalho apresentou uma definição de sistemas especialistas, bem
como exemplos existentes. Conclui-se que esses sistemas são relevantes
não somente para área de Inteligência Artificial, mas para várias outras
áreas que estão em constante desenvolvimento.

9
Referências
BARR, A.; FEIGENBAUM, E. (Ed.). The Handbook of Artificial Intelli-
gence. Los Altos, California: William Kaufmann Inc., 1981. v.I–II.

DIVERIO, T.; MENEZES, P. Teoria da Computação: máquinas universais


e computabilidade. 2.ed. Porto Alegre: Sagra-Luzzatto, 2000. (Livros Di-
dáticos, v.5).

FEIGENBAUM, E.; BUCHANAN, B.; LEDERBERG, J. On generality and


problem solving: a case study using the dendral program. In: MA-
CHINE INTELLIGENCE, 1971, Edinburgh, GB. Anais. . . Edinburgh
University Press, 1971. v.6, p.165–190.

FLORES, C. D. Fundamentos dos Sistemas Especialistas. In: BARONE, D.


A. C. (Ed.). Sociedades Artificiais: a nova fronteira da inteligência nas
máquinas. Porto Alegre: Bookman, 2003. p.332.

HART, P.; DUDA, R.; EINAUDI, M. Prospector - a computer-based con-


sultation system for mineral exploration. In: MATHEMATICAL GEO-
LOGY, 1978. Anais. . . [S.l.: s.n.], 1978. v.10.

MINSKY, M. A framework to represent knowledge. In: IN THE PSYCHO-


LOGY OF COMPUTER VISION, 1975. Anais. . . McGraw-Hill, 1975.
p.211–277.

SHORTLIFFE, E. Computer-Based Medical Consultations : mycin. New


York: American Elsevier, 1976.

10

También podría gustarte