Prévia do material em texto
Artigo Sistemas Especialistas Paulo César Fernandes de Oliveira1, Sidenio Samuel Quarti1, Rogério Degásperi1, Palmira Luana Henrique¹, Saulo Popov Zambiasi2. 1Pós-graduandos em Gestão da Tecnologia da Informação, ICPG – Instituto Catarinense de Pós-Graduação em Criciúma. 2Saulo Popov Zambiazi - Professor ICPG – Instituto Catarinense de Pós-Graduação pco@cecrisa.com.br¹, ssq@cecrisa.com.br¹, rogerio@degasperi.com.br¹, palmira_98@hotmail.com¹, saulopz@gmail.com2 Resumo. Este artigo não tem a intenção de esgotar o assunto Sistemas Especialistas, mas dar uma noção do tema voltado á área de Inteligência Artificial. Partindo do principio que Sistemas Especialistas são programas que armazenam e manipulam o conhecimento adquirido de um especialista, vamos abordar os tópicos de introdução, conceitos, vantagens e desvantagens dos sistemas especialistas, estrutura básica de um sistema especialista, interface com o usuário, motor de inferência, base de conhecimento, linguagem natural, linguagem natural na recuperação da informação, arquitetura para o sistema especialista para gerenciamento da informação (SEGI), exemplos práticos, e a conclusão da equipe sobre sistemas especialistas. Palavras-chave: Inteligência artificial, Sistemas especialistas; Sistemas de informação. Abstract. 1. INTRODUÇÃO Segundo Wikipédia (2008), “Um Sistema especialista é uma classe de programa de computador desenvolvido por pesquisadores de Inteligência artificial durante os anos 70 (1970) e aplicado comercialmente durante os anos 80 (1980). Em síntese, são programas constituídos por uma série de regras que analisam informações (normalmente fornecidas pelo usuário do sistema) sobre uma classe específica de problema (ou domínio de problema)”. 2. CONCEITOS Segundo McCarty (1956), “Inteligência Artificial é a capacidade de uma máquina de realizar funções que se fossem realizadas pelo ser humano seriam consideradas inteligentes”. Sistemas Especialistas são sistemas que solucionam problemas que são resolvíveis apenas por pessoas especialistas (que acumularam conhecimento exigido) na resolução destes problemas. [FEI77]. Programas de computador que tentam resolver problemas que os seres humanos resolveriam emulando o raciocínio de um especialista, aplicando conhecimentos específicos e inferências são ditos Sistemas Especialistas. [ROL88] Ainda podemos dizer que sistema especialista são programas que armazenam e manipulam o conhecimento adquirido de um especialista, requer entrevistas e observações para extrair o conhecimento, conhecimento este que é representado em formato manipulável pelo computador. 3. VANTAGENS E DESVANTAGENS DOS SISTEMAS ESPECIALISTAS Um sistema especialista é adequado para aplicações onde: o conhecimento (o especialista) é acessível, as regras são conhecidas e fáceis de serem formuladas por este especialista, e quando explicações são necessárias. Os benefícios da utilização de sistema especialista são diferentes daqueles obtidos pelos sistemas tradicionais, por tratar-se de sistemas dotados de inteligência e conhecimento, são ferramentas adequadas para serem utilizadas em treinamentos de grupos de pessoas, de forma rápida e agradável, podendo servir, após o treinamento, como instrumento para coleta de informações sobre o desempenho dos treinados. Apesar de possuírem desenvolvimento e manutenção caros, a sua operação é muito barata. Um sistema especialista pode ser facilmente distribuído em inúmeras cópias, enquanto que o treinamento de um novo especialista humano é muito mais caro e demorado (LIEBOWITZ, 1999). No quadro a seguir, algumas vantagens e desvantagens dos sistemas especialistas. Vantagens Desvantagens Utiliza representação explícita do conhecimento. Ausência de mecanismo automático de aprendizado. Programas fáceis de ler e de compreender. Processo longo e caro de extração do conhecimento. Capacidade de gerarem justificativas (Explicações). Exigências de declarações precisas dos especialistas. Um sistema especialista é capaz de estender as facilidades de tomada de decisão para muitas pessoas. O conhecimento dos especialistas pode ser distribuído, de forma que possa ser utilizado por um grande número de pessoas. Ajuda a reduzirem falhas humanas e acelerar tarefas. Aumenta o desempenho e a qualidade na resolução de problemas. Apresenta estabilidade e flexibilidade. Combina e preserva o conhecimento dos especialistas. Contempla hipóteses múltiplas simultaneamente. Apresenta maior eficiência e otimização de resultados. Não é afetado por questões psicológicas, estresse e fatores externos. Possui maior rapidez na resolução de problemas. Soluciona problemas tão bem quanto um especialista humano. Melhorar a produtividade e desempenho de seus usuários, pois o sistema possui um vasto conhecimento. Reduzem o grau de dependência que as organizações mantêm quando se vêem em situações críticas, inevitáveis. 4. CARACTERÍSTICAS DE UM SISTEMA ESPECIALISTA Refletem a forma de resolver problema de um ou mais especialistas humanos; Utilizam o conhecimento de uma ou mais pessoas (não de livros ou outras fontes não-humanas) representado explicitamente no programa. Esse conhecimento é adquirido através de técnicas particulares da Engenharia de Conhecimento; As tarefas preferenciais para este tipo de sistema são fundamentalmente as de natureza simbólica, que envolvem complexidades e incertezas normalmente só resolvíveis com regras de "bom senso" e com a elaboração de um raciocínio similar ao humano; A capacidade de utilizar conhecimento na resolução de problemas permite que a busca de soluções em problemas complexos seja feita de maneira dirigida ao contrário da busca por exaustão dos sistemas convencionais. O sistema é "informado" sobre as características do problema e decide, durante o processamento, qual o caminho mais provável de conter a solução. 5. ESTRUTURA BÁSICA DE UM SISTEMA ESPECIALISTA A estrutura básica para um sistema especialista, é constituída por três elementos fundamentais: base de conhecimento, motor de inferência e interface com o usuário. Nota-se que existe uma interface de comunicação com o usuário do sistema, isto é, com aquela pessoa que irá utilizar o sistema no seu dia-a-dia, e uma interface com o especialista que domina a aplicação. Esta interação é obtida através do módulo de aquisição de conhecimento, necessário para converter as informações obtidas pelo especialista em uma representação estruturada (base de conhecimento). Veja as figuras abaixo: Arquitetura de um sistema especialista. Fonte: http://www.inf.unisinos.br/~cazella/dss/SAD_Sistemas_Especialistas.pdf 6. INTERFACE COM O USUÁRIO Interface com o usuário é o mecanismo por onde o usuário vai fornecer as informações para o sistema especialista e também vai receber as respostas das pesquisas, é a forma do usuário interagir com o sistema, conforme a figura a seguir: Fonte: ABEL (1998). 7. MOTOR DE INFERÊNCIA (NÚCLEO DO SISTEMA) O motor de inferência é um elemento essencial para a existência de um sistema especialista. É um elemento permanente que pode ser reutilizado por vários sistemas especialistas, é o núcleo do sistema. Implementam os algoritmos que decidirão quais as regras que serão satisfeitas pelos fatos ou objetos. É por intermédio dele que os fatos e regras e heurísticas que compõem a base de conhecimento são aplicadas no processo de resolução do problema. Basicamenteo motor de inferência é dividido em tarefas que são: selecionar, buscar, avaliar e procurar. Resumindo as tarefas acima, podemos dizer que as regras necessárias para se chegar a uma meta devem ser buscadas na base de conhecimento. É baseada em uma combinação de procedimentos de raciocínios que se processam de forma regressiva e progressiva. Progressivo: as informações são fornecidas ao sistema pelo usuário, que com suas respostas, estimulam o desencadeamento do processo de busca, navegando através da base de conhecimento, procurando pelos fatos, regras e heurísticas que melhor se aplicam a cada situação. O sistema continua nesta interação com o usuário, até encontrar a solução para o problema a ele submetido. Regressivo: os procedimentos de inferência dão-se de forma inversa. O sistema parte de uma opinião conclusiva sobre o assunto, podendo ser inclusive oriunda do próprio usuário, e inicia uma pesquisa pelas informações por meio das regras e fatos da base de conhecimento, procurando provar se aquela conclusão é a mais adequada solução para o problema analisado. 8. BASE DE CONHECIMENTO O conteúdo do banco de conhecimento é essencialmente de dois tipos: conhecimento factual e conhecimento heurístico. O conhecimento factual é o na forma dos fatos, informações evidenciadas e aceitas pela comunidade científica, é o conhecimento contido nas publicações e livros. O conhecimento heurístico são as regras de “bom senso” de especialistas em alguma área da Ciência, do conhecimento dos especialistas que normalmente não tem como comprová-las cientificamente e é delas que resulta à força dos sistemas especialistas. 9. LINGUAGEM NATURAL (DEFINIÇÂO) A linguagem natural é a maneira como expressamos nosso raciocínio e trocamos informação. Raramente constitui um sistema de regras rígidas, o que torna complexa sua implementação numa máquina ou sua transcrição de forma lógica, pois é a expressão da cultura de uma sociedade, desenvolvida através de suas gerações e em diferentes situações. Além da linguagem falada, fazem parte da nossa comunicação gestos e posturas, que não podem ser diretamente adaptados para compreensão de uma máquina. Toda a comunicação eficiente pressupõe um conhecimento prévio comum entre os interlocutores, com a mesma língua, a mesma bagagem cultural e assim por diante. Atualmente os computadores, celulares e outros equipamentos eletrônicos nos obrigam a aprender formas não intuitivas de comunicação com essas máquinas através de comandos precisos, linguagens de programação, menus, botões. As interfaces entre as máquinas e seres humanos estão ficando mais sofisticadas e de certa forma, caminhando aos poucos em direção às formas mais humanas de comunicação. As questões relacionadas à linguagem natural são tratadas pela Inteligência Artificial (IA) em uma subárea que estuda o entendimento e a geração automática desta linguagem - o Processamento de Linguagem Natural (PLN). Os estudos nesta área envolvem tanto conhecimento em computação, como em lingüística. O PLN é um conjunto de métodos formais que tentam compreender a linguagem falada e escrita de um idioma humano. Num idioma humano uma simples frase normalmente contém ambigüidades, interpretações e nuances que dependem do contexto, do conhecimento do mundo, de regras gramaticais, culturais e de conceitos abstratos. O objetivo final do PLN é fornecer aos computadores a capacidade de entender e compor textos. O "entender" um texto significa reconhecer o contexto, fazer análise morfológica (palavras), sintática (gramática), semântica (significado) e pragmática (significação), criar resumos, extrair informação, interpretar os sentidos e até aprender conceitos com os conteúdos processados. Basicamente, as aplicações dos sistemas que tratam linguagem natural podem ser divididas em duas classes: aplicações baseadas em texto e aplicações baseadas em diálogos. Como exemplos de aplicações baseadas em texto são sistemas que procuram documentos específicos em uma base de dados e tradutores de documentos. Com relação às aplicações baseadas em diálogos, podemos citar as interfaces de linguagem natural para bancos de dados, os sistemas especialistas e os sistemas que interpretam e respondem a comandos expressados em linguagem escrita ou falada. 10. LINGUAGEM NATURAL NA RECUPERAÇÃO DA INFORMAÇÃO Segundo WIKIPÉDIA (2008), Recuperação de Informação (RI) é uma área da computação que lida com o armazenamento de documentos e a recuperação automática de informação associada a eles, que são de grande importância devido ao uso universal da linguagem para comunicação. É uma ciência de pesquisa sobre busca por informações em documentos, busca pelos documentos propriamente ditos, busca por meta dados que descrevam documentos e busca em bancos de dados, sejam eles relacionais e isolados ou banco de dados interligados em rede de hipermídia, tais como a WWW. A mídia pode estar disponível sob forma de textos, de sons, de imagens ou de dados. Um sistema de recuperação da informação sem controle de vocabulário, pode ser chamado de sistema de linguagem natural, ou às vezes, como sistemas de texto livre. Os avanços tecnológicos influenciam a área de informação e conduzem ao surgimento de novas técnicas de representação e recuperação de conteúdo. No contexto tecnológico atual, há tendência para o desenvolvimento de sistemas inteligentes de recuperação de informação com base em processamento de linguagem natural, em função da disponibilidade de textos completos em máquina e da necessidade de interfaces voltadas para o usuário final. Os sistemas de recuperação exigem, para isso, modelos de representação do conhecimento que possibilitem contextualizar os significados expressos nos textos armazenados. É fato que os sistemas de recuperação da informação evoluíram com a utilização de novas tecnologias. No entanto, os resultados são mais visíveis nas interfaces inteligentes e no compartilhamento da informação para o usuário final através de redes de comunicação. O tratamento de conteúdo constitui-se no coração do sistema de recuperação da informação. De nada adiantam interfaces inteligentes se elas conduzem à recuperação de documentos irrelevantes, ocasionada por problemas de tratamento de conteúdo. Quanto mais conhecimento lingüístico e cognitivo for incorporado ao sistema, maior precisão na recuperação solicitada, mas, por sua vez, maior complexidade de implementação e de manutenção. Sistemas de recuperação que adotam extração de palavras por meio de métodos estatísticos e aqueles que aplicam análise sintática para extração de sintagmas exigem menor esforço do que os sistemas que incorporam tratamento semântico. Apesar disso, não são capazes de solucionar problemas lingüísticos como a ambigüidade e a sinonímia, tratadas nos sistemas tradicionais que utilizam linguagens controladas. Um sistema de recuperação em linguagem natural pode tratar determinados tipos de ambigüidade quando dispõe de informações relativas à valência sintático- semântica das unidades lexicais que compõem o texto. A utilização de Gráficos Conceituais como modelo de representação interna de sistemas de recuperação em linguagem natural pode se constituir em alternativa de solução de ambigüidades que interferem no grau de precisão desses sistemas. Gráficos Conceituais são construções de uma espécie de fluxogramas para criar um modelo de representação de conhecimento. 11. ARQUITETURA PARA O SISTEMA ESPECIALISTA PARA GERENCIAMENTO DA INFORMAÇÃO (SEGI) Para ser construído um sistema de gerenciamento da informação, deverá partir da integraçãodos seus elementos básicos: interface com o usuário, base de conhecimento e motor de inferência, conforme figura: Fonte: MENDES (1991) – Diagrama de Contexto. Base de Conhecimento: Num exemplo de um sistema de informações para apoio a usuários finais de bibliotecas, as bases constituintes do sistema especialista deverão conter, além do acervo bibliográfico da organização, conhecimentos sobre elaboração de estratégias de busca, e de características específicas das bases de dados disponíveis na biblioteca. Exemplo de representação do conhecimento: Um Sistema Especialista é organizado conforme a figura a seguir: Base de Conhecimento interagindo com a memória de trabalho alimentando a máquina de inferência e recebendo dados para o novo conhecimento, tendo como saída e retro alimentação o Sistema de Explicações e a Aquisição de novos conhecimentos. Fonte: Apostila de Aula Prof. Nadder – Inteligência Artificial Motor de Inferência: Segundo descrito anteriormente, este componente é fundamental no funcionamento de um sistema especialista. O Motor de inferência é composto pelas heurísticas adotadas para a resolução de problemas e para a execução das tarefas diárias realizadas pelos especialistas. Através destas inferências é que o sistema aprende, a cada ciclo, a cada novo conhecimento informado ou descoberto. Interface com Usuário: Normalmente a interface com o usuário é um pouco mais complexa do que as tradicionais, implantadas em um sistema especialista, em função de o analisador semântico fazer parte deste elemento. Esta interface é a estrutura que tem o papel de explanar as informações externas que interagem com sistema especialista tanto no caminho usuário-sistema como sistema-usuário. O sistema ao iniciar uma sessão, no caso do SEGI, solicitará ao usuário que se identifique, identificando-se, o sistema vai perceber a qual área ele pertence e o seu nível de informação que pode ser acessado. Em seguida o usuário poderá obter um resumo geral ou do setor das informações, recentes ou iniciar um método de recuperação de informações e/ou documentos por meio de estratégias de busca, aplicando as regras com o objetivo fosse alcançado. Poderá receber um resumo que represente, por exemplo, uma visão global dos negócios empreendidos pela empresa, em comparação com outras empresas do ramo, caso o sistema possa receber informações de mercado, de fontes externas. 12 EXEMPLOS PRÁTICOS American Express: Sistema de Auxilio para Autorização de Crédito (CC). Citibank, National Westminster, Midland Bank: Análise de empréstimos pessoais, Gerência de Carteira de investimento. 13 APLICAÇÔES Sistemas de interpretação: identifica objetos a partir de conjuntos de observações: compreensão de fala, análise de imagens, interpretação geológica. Sistemas de diagnóstico: deduz possíveis problemas a partir de observações ou sintomas; ex.: diagnósticos médicos, mecânicos. Sistemas de projeto: desenvolve configurações de objetos que satisfazem determinados requisitos ou restrições; ex.: projeto de circuitos digitais, projeto de edifícios. Sistemas de monitoração: comparam observações de comportamento de sistemas, com características consideradas necessárias para alcançar objetivos; ex.: monitoração de rede de distribuição elétrica, controle de tráfego aéreo. Sistemas de controle: governa de forma adaptativa o comportamento de um sistema; ex: robôs, gerência de produção. 14 CONCLUSÃO Conforme ficou demonstrado no item três, vantagens e desvantagens dos sistemas especialistas existem muito, mas muito mais vantagens do que desvantagens e dentre elas destacamos a total facilidade no treinamento para o uso do sistema, bem como a rapidez para a obtenção de sugestões para a resolução dos problemas e a capacidade de gerarem justificativas (explicações). Além disso, nas suas características simples da arquitetura, interface com usuário, motor de inferência e base de conhecimento, fica fácil a representação explícita do conhecimento. Os sistemas especialistas podem ser aplicados em praticamente todas as áreas, sistemas de interpretação (Inclusive na identificação de Padrões), sistemas de diagnósticos, sistemas de projeto, sistemas de monitoração, sistemas de controle conforme evidenciado no item 13, aplicações dos sistemas especialistas. Ainda foi dado enfoque á linguagem natural nos sistemas especialistas, à dificuldade em função da ambigüidade, na sua representação no modelo matemático ao ser inserido no computador. A figura do especialista, técnico ou cientista, também se configura como fundamental na existência dos sistemas especialistas, no seu conhecimento a ser passado para o sistema, bem como a interface amigável para interagir com o mesmo. 15 REFERÊNCIAS http://pt.wikipedia.org/wiki/Sistemas_especialistas. Acesso em: 07/07/2008. http://www.din.uem.br/ia/especialistas/introdu.html. Acessado em 30/06/2008. http://www.pucrs.campus2.br/~annes/ia7.html . Acessado em 07/07/2008. ABEL, Mara. Sistemas Especialistas. Uem, junho, 1998, Especialistas. Disponível em: http://www.din.uem.br/ia/especialistas/introdu.html. Acesso em: 30/06/2008. http://www.scielo.br/scielo.php? script=sci_arttext&pid=S0100-19651997000100006&lng=en&nrm=iso. Acessado em 07/07/2008. MENDES, Raquel D. Projeto e desenvolvimento de um sistema especialista para diagnóstico de sarcomas ósseos. S.Paulo: ITA, 1991, Dissertação - mestrado. Bräscher, Marisa A Ambiqüidade na Recuperação da Informação. Oliveira, Fábio Abreu Dias De Processamento de linguagem natural: princípios básicos e a implementação de um analisador sintático de sentenças da língua portuguesa. Santos, Diana Introdução ao processamento de linguagem natural através das aplicações. pt.wikipedia.org/wiki/Recuperação_de_informação - Acesso em 07/07/2008