Você está na página 1de 48

dct-ufms

Sistema Especialista para Diagnostico e Solues de Problemas em co Microcomputadores


Rodrigo Eduardo dos Santos e Joanir Luna Rodrigues
Projeto de Graduao (2001) ca

Orientao:Prof Orientadora: Dra. Maria Bernadete Zanusso ca Area de Concentrao: Inteligncia Articial ca e

Projeto de Graduao ca

Departamento de Computao e Estat ca stica Centro de Cincias Exatas e Tecnologia e Universidade Federal de Mato Grosso do Sul 12 de novembro de 2001

Conte do u
Conte do u 0.1 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Introduo a IA ca 1.1 Aplicaes de Inteligncia Articial . . . . . . co e 1.1.1 Sistemas Especialistas . . . . . . . . . 1.1.2 Base de Conhecimento . . . . . . . . . 1.1.3 Shell . . . . . . . . . . . . . . . . . . . 1.1.4 SINTA . . . . . . . . . . . . . . . . . . 1.1.5 Processamento de Linguagem Natural . 1.1.6 Reconhecimento de Padres . . . . . . o 1.1.7 Robtica . . . . . . . . . . . . . . . . . o 1.1.8 Base de Dados Inteligentes . . . . . . . 1.1.9 Jogos . . . . . . . . . . . . . . . . . . . 1.2 Representao do Conhecimento em IA . . . . ca 1.2.1 Lgica . . . . . . . . . . . . . . . . . . o 1.2.2 Redes Semnticas . . . . . . . . . . . . a 1.2.3 Quadros . . . . . . . . . . . . . . . . . 1.2.4 Roteiros . . . . . . . . . . . . . . . . . 1.2.5 Regras de Produo . . . . . . . . . . ca 2 Sistemas Especialistas 2.1 O que so Sistemas Especialistas . . . . . . . a 2.2 Arquitetura de um Sistema Especialista . . . . 2.2.1 Base de Conhecimento . . . . . . . . . 2.2.2 Mquina de Inferncia . . . . . . . . . a e 2.2.3 O Quadro Negro . . . . . . . . . . . . 2.2.4 Sistema de Justicao . . . . . . . . ca 2.2.5 Mecanismos de Aprendizagem . . . . 2.2.6 Sistema de Aquisio de Conhecimento ca 2.2.7 Sistema de Consulta . . . . . . . . . . 2 3 4 5 6 7 8 8 9 9 9 9 9 10 10 10 10 13 14 15 16 16 16 17 17 22 22 22 22 23

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

2.3 2.4

2.2.8 Processador de Linguagem . . . . . . . . . . . . . . . Sistema Especialista para Diagnstico e Solues de Probleo co mas em Microcomputadores . . . . . . . . . . . . . . . . . . Ferramenta utilizada . . . . . . . . . . . . . . . . . . . . . . 2.4.1 Caracter sticas da Aplicao . . . . . . . . . . . . . . ca 2.4.2 Requisitos Bsicos . . . . . . . . . . . . . . . . . . . a 2.4.3 N de Conhecimento do Usurio . . . . . . . . . . vel a 2.4.4 Restries da Aplicao . . . . . . . . . . . . . . . . co ca 2.4.5 Finalidade da Aplicao . . . . . . . . . . . . . . . . ca 2.4.6 Teste e Avaliao . . . . . . . . . . . . . . . . . . . . ca 2.4.7 Reviso . . . . . . . . . . . . . . . . . . . . . . . . . a

. 23 . . . . . . . . . 23 23 24 24 25 25 25 26 26 27 28 28 29 29 30 31 32 32 33 37

3 Inteligncia Articial Distribu e da 3.1 O que Inteligncia Articial Distribu e e da? . . . . . 3.2 Breve Histrico . . . . . . . . . . . . . . . . . . . . o 3.3 Conceitos Bsicos . . . . . . . . . . . . . . . . . . . a 3.4 Principais problemas abordados em IAD . . . . . . 3.5 Resoluo Distribu de Problemas (RDP) . . . . ca da 3.6 Sistemas Multiagentes . . . . . . . . . . . . . . . . 3.7 Relao de Sistema Especialista com IA Distribu ca da 3.8 Aplicaes da IAD . . . . . . . . . . . . . . . . . . co 3.8.1 Rede Cooperativa de Sistemas Especialistas 3.8.2 Arquitetura do Facilitador . . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

4 Melhorando a Qualidade de Servios de Busca na Internet 40 c 4.1 Inteligncia Articial na rede . . . . . . . . . . . . . . . . . . . 41 e 4.2 A Arquitetura do Cache Plugins . . . . . . . . . . . . . . . . . 42 Cronograma Referncias Bibliogrcas e a 45 46

0.1

Resumo

O dia a dia de quem usa o computador est cheio de surpresas desagradveis a a decorrentes dos vrios tipos de falhas que sempre acontecem nos momentos a mais inoportunos. Os problemas so os mais diversos poss a veis.Alguns so a grandes mistrios, enquanto outros possuem solues simples. e co Analisando os transtornos que estes problemas podem causar, decidimos apresentar um Sistema Especialista que oferea solues para os diversos c co problemas que afetam os microcomputadores.Portanto, principal meta deste projeto ser apresentar um sistema especialista que oferea solues para os a c co mais diversos problemas que afetam o uso do computador. Neste projeto tambm sero introduzidos os conceitos bsicos da rea e a a a de Inteligncia Articial (IAD), as duas sub-reas da IAD - a Resoluo e a ca Distribu de Problemas (RDP) e os Sistemas Multiagentes (SMA). da Outro tema que ser apresentado neste projeto, tema este que nos concena traremos, ser como melhorar a Qualidade de Servios de Busca na Internet. a c

Cap tulo 1 Introduo a IA ca


Neste cap tulo sero apresentados os conceitos dos termos essenciais para o a projeto. A Inteligncia Articial (IA) busca estudar as atividades mentais do e ser humano e prover mquinas com a capacidade de realizar algumas dessas a atividades . As atividades realizadas por essas mquinas podem envolver a a senso-percepo (como tato, audio, viso), as capacidades intelectuais ca ca a (como aprendizado de conceitos e de ju zos, racioc nio dedutivo e memria), o a linguagem (como as verbais e grcas) e ateno (deciso no sentido de a ca a concentrar as atividades sobre um determinado est mulo. A IA permite que conhecimentos possam ser compartilhados por muitas pessoas, sem que haja a necessidade de consultar ` especialistas. Deste modo a surgiram os Sistemas Especialistas (SE). Um SE uma fonte prtica capaz de e a lidar com problemas complexos e resolver questes do mesmo modo que espeo cialistas humanos. Para tanto, so dotados de um conhecimento condizente a com o problema. Portanto, o propsito principal deste projeto ser o deseno a volvimento de um SE para Diagnstico de Problemas de Microcomputadores o e e apresentao de poss ca veis solues. co Neste projeto tambm ser estudado a relao de um SE com a Ine a ca teligncia Articial Distribu (IAD), uma rea da IA que aplica mtodos e da a e cooperativos para solucionar um determinado problema. A IAD se divide em duas reas: os Sistemas Multiagentes (SMA) e a Resoluo Distribu a ca da de Problemas (RDP). Em SMA os agentes, especialistas na atividade que desempenham, no trabalham mais isolados, mas de forma cooperativa tena tam resolver um problema da melhor forma poss vel. Em RDP, so adotados a estratgias baseadas no conceito de decomposio para a resoluo de um e ca ca problema complexo, isto , a tarefa, dada a sua complexidade, requer dee composio num conjunto de tarefas mais simples. ca Ainda em IAD, tem havido um crescente interesse na pesquisa e desenvolvimento de sistemas que permitem a participao de sistemas especialistas ca 5

em redes cooperativas de trabalho. Para melhor expor este dom nio de estudo, foi tratado neste projeto um estudo de caso para a concesso de crdito a e em banco. Tambm foi abordado um outro tema envolvendo a IAD: Mele horia da Qualidade de Servios de Busca na Internet, que utiliza conceitos c de IAD, onde sistemas especialistas so implementados para Resoluo Disa ca tribu de Problemas (RDP) visando obteno de resultados mais ecientes da ca e de melhor qualidade. O que Inteligncia Articial? e e A denio de Inteligncia Articial tem sido alvo de muita discusso ca e a entre os especialistas no assunto. Na tentativa de denir com preciso o que a Inteligncia Articial os especialistas adotam as mais diversas denies, e e co tomando a compreenso do assunto mais complexa. a Mas para se ter uma idia do assunto, algumas denies sero apresene co a tadas e comentadas. Elaine Rich e Kelvin Knight (1988) propuseram a seguinte denio: Inca teligncia Articial o estudo de como fazer os computadores realizarem e e coisas que, no momento, as pessoas fazem melhor. Na verdade, a construo de computadores que possam realizar as tarefas dif ca ceis melhor do que as pessoas tem tido um lento progresso, at mesmo abaixo da expectae tiva do que previam os especialistas nos primeiros dias da Inteligncia Artie cial. Alm disso, adeptos a este conceito associam a Inteligncia Articial e e a ` construo de robs com sentimentos. Devido a este apelo futur ca o stico, esta denio rejeitada. Arnold e Bowie (1986) denem IA como sendo a ca e capacidade de adquirir e aplicar conhecimentos e articial como sendo tudo aquilo feito pelo homem, em vez de ocorrer na natureza. Os mesmos autores apresentaram outra denio de IA:Inteligncia Articial a parte da ca e e Cincia da Computao concorrente ao projeto de sistemas computacionais e ca que exibem inteligncia humana:aprender novas informaes, entender line co guagens, raciocinar e resolver problemas. Winston (1979) arma que IA e o estudo de conceitos que permitem ao computador ser inteligente. Apesar das diversas conceituaes de IA, pode-se armar que Inco teligncia Articial um conjunto de tcnicas que permitem a soluo de e e e ca problemas que exigiriam do ser humano certo grau de racioc nio e per cia, Rabuske (l995).

1.1

Aplicaes de Inteligncia Articial co e

Dentro da computao, a Inteligncia Articial responsvel por imporca e e a tantes aplicaes que sempre exigiram uma dose alta de esforo. Dentre co c estas aplicaes, pode-se destacar: Sistemas Especialistas, Processamento de co 6

Linguagem Natural, Reconhecimento de Padres, Robtica, Base de Dados o o Inteligentes e Jogos.

1.1.1

Sistemas Especialistas

Os primeiros pesquisadores de IA desejavam projetar mquinas inteligentes a capazes de solucionar quaisquer problemas. Por se tratar de um desao muito grande, comearam primeiramente pelo desenvolvimento de sistemas capazes c de resolver problemas espec cos. Desta forma, durante a dcada de 70 surgiram vrios sistemas especiale a istas, dotados de boas bases de conhecimento podendo realizar tarefas que exigiam muito conhecimento especializado, algo que a maioria das pessoas no possui. a Dos Sistemas que mais se destacaram, esto o Mycin, um programa para a diagnosticar doenas infecciosas desenvolvido no in dos anos 70 pelo Dr. c cio Edward Shortlie, da Universidade de Stanford - EUA e o Prospector, um sistema para assessoria a gelogos na explorao mineral. o ca Mycin - O sistema MYCIN foi um dos primeiros Sistemas Especialista. Seu objetivo prover conselho a respeito de diagnstico e terapia de doenas e o c infecciosas. Este tipo de aconselhamento pode ser muito util, pois nem sem pre o mdico responsvel um especialista em infeces, principalmente em e a e co ambiente hospitalar. Uma seo do sistema inicia-se com um questionrio, a ca a ser respondido pelo usurio, a respeito do paciente. Informaes como nome, a co idade, sexo, tempo de manifestao dos sintomas, resultados de exames, etc. ca so solicitadas. A partir dessas informaes, e utilizando sua base de regras, a co o sistema capaz de estabelecer um diagnstico e propor uma terapia ade o equada. O sistema MYCIN utiliza o encadeamento regressivo associado a uma busca em profundidade. A busca realizada completa, no sentido em e que, dado um objetivo, todas as evidncias a favor e contra o objetivo so e a pesquisadas. Prospector - O sistema PROSPECTOR foi desenvolvido no SRI International (USA) com o objetivo de auxiliar geologistas envolvidos em prospeco ca mineral. A principal funo do sistema determinar a correspondncia entre ca e e dados que descrevem uma determinada situao com modelos que descrevem ca classes disjuntas de situaes poss co veis. Os modelos so descries formais a co dos tipos mais importantes de depsitos minerais e os dados de entrada se o referem a observaes geolgicas de superf co o cie. O conhecimento geolgico o e armazenado na forma de uma rede de inferncia : uma rede semntica onde e a os nodos representam fatos sobre o dom nio, e os arcos indicam como a probabilidade associada a um nodo inuencia um outro nodo. Um fato pode ser interpretado como um ind cio da veracidade ou da falsidade de um outro. 7

Existem ainda fatos que so independentes, isto , no existem arcos entre a e a eles. Apesar da representao em forma de grafo e do uso de probabilidades, ca os arcos de inferncia da rede podem ser interpretados como um conjunto de e regras. Alm dos arcos de inferncia, o sistema dispe de arcos de contexto e e o que indicam que um determinado fato um contexto necessrio a outro fato. e a O funcionamento do sistema dividido em duas partes. Inicialmente e o usurio fornece as informaes dispon a co veis sobre o local de prospeco. ca Estas informaes so representadas na forma de uma rede semntica que co a a e comparada com os modelos dispon veis. O resultado desta primeira parte e a escolha do modelo mais adequado. Na segunda parte, o sistema utiliza o modelo escolhido e as informaes co dispon veis, atravs de um mecanismo de encadeamento regressivo, para ree nar a anlise. Alguns fatos so ditos perguntveise durante o renamento a a a da anlise o sistema solicitar ao usurio as probabilidades associadas aos a a a fatos deste tipo, que sejam relevantes para a situao analisada. ca

1.1.2

Base de Conhecimento

Base de Conhecimento o conjunto de informaes que o sistema especialista e co utiliza para lidar com um tipo de problema. As informaes so represenco a tadas por um conjunto de regras de produo. Estas regras so um conjunto ca a de condies no estilo SE...ENTAO, com a incluso de conectivos lgicos co a o relacionando os atributos no escopo do conhecimento. Este tpico ser melo a hor explicado na seo 2.3. ca

1.1.3

Shell

So ferramentas criadas com o objetivo de transferir a base de conhecimento a de um Sistema Especialista para o computador. A principal funo da Shell ca interpretar o conhecimento representado e execut-lo em uma mquina, ape a a resentando assim concluses sobre os problemas apresentados a ele. A Shell o simplica ao mximo o trabalho de implementao de um Sistema Especiala ca ista, permitindo seu uso por qualquer pessoa. Uma das ferramentas o editor de regras. Ele permite gerar rapidae mente as bases de conhecimento de sistemas especialistas. Esta ferramenta tipicamente fcil de usar, utilizando-se expresses em linguagem natural e e a o expresses algbricas a m de compor a base de conhecimento. As novas reo e gras de entradas so conferidas contra as regras existentes para consistncia. a e Existem vrias opes de clculos de probabilidade que podem ser executados a co a sobre as regras. Este tpico ser melhor abordado na seo 2.11. o a ca

1.1.4

SINTA

O Expert SINTA uma ferramenta Shell desenvolvida pelo Grupo SINTA e do Laboratrio de Inteligncia Articial da Universidade Federal do Cear. O o e a Expert SINTA utiliza tcnicas de IA para criar Sistemas Especialistas usando e como modelo de representao do conhecimento regras de produo associca ca adas a clculos de probabilidade. Esta Shell dispe de um mecanismo oculto a o denominado mquina de inferncia que coloca ao usurio uma seqncia de a e a ue menus, sendo fornecidas respostas condizentes com o caso que hora se apresenta. Este sistema tambm oferece a possibilidade de incluir ajudas on-line e para cada base. Para isso o Expert SINTA possibilita a incluso de tpicos de a o ajuda para os valores poss veis de determinados atributos, fazendo com que o usurio utilize a resposta com ns prticos. Para tanto, deve-se associar a a a ` base um arquivo no formato ajuda do Windows. Este tpico ser melhor o a explorado na seo 2.5 ca

1.1.5

Processamento de Linguagem Natural

E uma rea de IA responsvel pela utilizao de dispositivos que fazem a a a ca traduo de uma linguagem para outra. Esta traduo abrange tanto a linca ca guagem escrita quanto a falada. No entanto, ainda existem grandes desaos a serem superados, desaos estes decorrentes de problemas quanto ao uso de linguagem gurada e da forma humana de falar.

1.1.6

Reconhecimento de Padres o

E uma rea de IA muito subdividida. Pode-se citar como exemplos de aplia caes: reconhecimento de impresso digital, validao de assinatura em co a ca cheque, leitura e digitalizao de textos e etc. ca

1.1.7

Robtica o

Esta rea no somente responsvel pela criao de robs capazes apenas de a a e a ca o reproduzir tarefas e movimentos, mas tambm de robs dotados de dispose o itivos que funcionam como um crebro, onde so armazenados os Sistemas e a Especialistas, atribuindo a estes robs certo grau de conhecimento e autonoo mia.

1.1.8

Base de Dados Inteligentes

Base de Dados Inteligentes aquela capaz de fazer racioc e nios e produzir resultados, propriedade esta que a maioria das bases de dados dos sistemas de 9

informao no possuem. O uso de tcnicas de IA para a criao de Base de ca a e ca Dados Inteligentes aumentar a produtividade dos sistemas de informaes, a co pois as avanadas tcnicas de IA beneciariam a recuperao de informaes. c e ca co

1.1.9

Jogos

Os jogos possuem um nmero pequeno de normas, mas que possibilitam uma u grande combinao de aes, tornando-os complexos. Portanto, torna-se um ca co vasto campo para que a computao possa realizar experimentos e testes. Os ca experimentos j produziram bons resultados, pois atualmente o computador a tem se tornado um instrumento para diverso. a

1.2

Representao do Conhecimento em IA ca

A parte mais importante no projeto de um SE a escolha do mtodo de e e representao de conhecimento. A linguagem associada ao mtodo escolhido ca e deve ser sucientemente expressiva, permitindo a representao do conhecica mento a respeito do dom nio escolhido de maneira completa e eciente. Em tese, uma representao geral como a lgica seria sucientemente expressica o va para representar qualquer tipo de conhecimento. No entanto, problemas de ecincia, facilidade de uso e a necessidade de expressar conhecimento e incerto e incompleto levaram ao desenvolvimento de diversos tipos de formalismos de representaao de conhecimento. A seguir, apresentam-se alguns c dos formalismos de representao de conhecimento mais utilizados. ca

1.2.1

Lgica o

A lgica a base para a maioria dos formalismos de representao de conhecio e ca mento, seja de forma expl cita, como nos SEs baseados na linguagem Prolog, seja disfarada na forma de representaes espec c co cas que podem facilmente ser interpretadas como proposies ou predicados lgicos, por exemplo, as co o listas da forma: ((atributo),(objeto),(valor),(coeciente de certeza))

1.2.2

Redes Semnticas a

Rede semntica um nome utilizado para denir um conjunto heterogneo de a e e sistemas. Em ultima anlise, a unica caracter a stica comum a todos estes sistemas a notao utilizada: uma rede semntica consiste em um conjunto de e ca a nodos conectados por um conjunto de arcos. Os nodos em geral representam 10

objetos e os arcos, relaes binrias entre esses objetos. Mas os nodos podem co a tambm ser utilizados para representar predicados, classes, palavras de uma e linguagem, entre outras poss veis interpretaes, dependendo do sistema de co redes semnticas em questo. a a A utilizao do formalismo de nodos e arcos para a representao de ca ca conhecimento foi proposta por Quillian. No seu artigo, Quillian prope um o modelo computacional da memria humana chamado memria semntica . o o a Este modelo, onde conceitos so representados por nodos, e relaes entre a co conceitos, por arcos, explica diversos resultados experimentais sobre o comportamento da memria humana, como, por exemplo, o fato de que o reo conhecimento de objetos que pertencem a classes mais numerosas toma mais tempo do que o reconhecimento dos pertencentes a classes menos numerosas. Muitas caracter sticas dos sistemas de redes semnticas desenvolvidas ulteria ormente j estavam presentes na proposta de Quillian. a Figura 1 Exemplo 1: Considere a rede semntica da gura 1, que representa a conceitos relacionados com mobilirio [Ric83]. Os arcos -um e -parte so a e e a bastante comuns em sistemas de redes semnticas. Este tipo de arco utia e lizado para determinar a herana de propriedades. Os demais arcos (dono, c cor, estofamento) so espec a cos do dom nio e representam propriedades de conceitos. Esses arcos so chamados traos. a c Durante os anos setenta, o formalismo de redes semnticas foi utilizado a na implementao de diversos sistemas para a compreenso de linguagem ca a natural. O sistema HAM [AB73] e o sistema Active Structural Network [RN75] so dois exemplos deste tipo de sistemas. a Dois artigos publicados em 1975 tiveram uma grande inuncia na e pesquisa relacionada `s redes semnticas: o artigo de Minsky [Min75], proa a pondo o formalismo de quadros, e o artigo de Woods [Woo75], analisando o signicado dos arcos nas redes semnticas. O artigo de Minsky introduziu a a noo de nodos com estrutura interna, criando uma nova forma de repreca sentao de conhecimento, derivada das redes semnticas, chamada quadros. ca a O artigo de Woods chamou a ateno para a necessidade de uma semntica ca a formal que fundamentasse os sistemas baseados em redes semnticas. Este a artigo foi seguido de uma srie de outros, onde as redes semnticas eram e a associadas ao formalismo lgico. Alguns destes artigos utilizavam as redes o semnticas apenas como uma notao sinttica alternativa para frmulas a ca a o lgicas; outros apresentavam as redes semnticas como um mtodo indeo a e pendente de representao de conhecimento, utilizando o formalismo lgico ca o apenas como ferramenta para a denio de uma semntica para nodos e ca a arcos. A herana de propriedades atravs de caminhos formados por arcos c e e 11

uma das caracter sticas mais importantes do mtodo de representao por e ca redes semnticas. Esta caracter a stica permite que propriedades de um nodo sejam especicadas apenas uma vez, no mais alto n de uma hierarquia de vel conceitos, sendo herdadas por todos os conceitos derivados, implicando uma economia substancial de memria. Os algoritmos de herana utilizados em o c redes semnticas na forma de rvores so bastante simples e muito ecientes, a a a mas se heranas mltiplas forem permitidas, especialmente na presena de c u c arcos que denam excees, o problema da determinao de caminhos de co ca herana se torna bastante complexo. Mais grave ainda o fato de que na c e presena de herana mltipla e excees, a intuio sobre o que uma pol c c u co ca e tica de herana coerente passa a ser discut c vel, levando diferentes sistemas a implementarem diferentes pol ticas de herana [THT87]. c

Figura 2: O problema das excees em redes semnticas co a Alm da herana de propriedades, um outro mecanismo de inferncia utie c e lizado em redes semnticas a correspondncia de um fragmento de rede em a e e relao a uma rede dada. A especicao da semntica deste mecanismo ca ca a e ainda mais complexa que a do mecanismo de herana, por depender da escolc ha do signicado dos arcos da rede. Estes arcos receberam uma variedade de signicados; uma reviso das diferentes interpretaes pode ser encontrada a co em [BFL83]. 12

1.2.3

Quadros

Quadro uma estrutura de dados que pode ser usada para representar quale quer entidade real ou imaginria, objetos ou conceitos. O quadro constia e tu por um nome e um conjunto de atributos chamados Slots, onde so do a colocadas as informaes ligadas ao objeto. co Ex: Quadro: Cadeira do Renato Slot: nmero de pernas - 4 u Slot: tipo de assento - anatmico o Slot: numero de braos - nenhum c Slot: cor - incolor Os quadros (do ingls, frames), e sua variao, os roteiros (do ingls, e ca e scripts), foram introduzidos para permitir a representao das estruturas ca internas dos objetos, mantendo a possibilidade de representar a herana de c propriedades como as redes semnticas a faz. a As idias fundamentais destes mtodos foram introduzidas por Marvin e e Minsky [Min75] em seu artigo A framework to represent knowledge. As aplicaes propostas por Minsky para o novo mtodo foram anlise de cenas, co e a modelagem da percepo visual e compreenso de linguagem natural. No ca a entanto, o artigo no prope uma metodologia de implementao, nem uma a o ca denio formal do mtodo. Desde 1975, diversos sistemas foram implemenca e tados baseados na idia de quadros, e diversas denies formais foram proe co postas. O mtodo de quadros tambm est na origem das idias que levaram e e a e a `s linguagens de programao orientadas a objetos. Os roteiros foram proca postos por Schank e Abelson [SA75], [SA77], e consistem em sistemas de quadros especializados na descrio de seqncias de eventos. ca ue

13

Figura 3 Em geral, um quadro consiste em um conjunto de atributos que, atravs e de seus valores, descrevem as caracter sticas do objeto representado pelo quadro. Os valores atribu dos a estes atributos podem ser outros quadros, criando uma rede de dependncias entre os quadros. Os quadros so tambm e a e organizados em uma hierarquia de especializao, criando uma outra dica menso de dependncia entre eles. Os atributos tambm apresentam proa e e priedades, que dizem respeito ao tipo de valores e `s restries de nmero a co u que podem ser associados a cada atributo. Essas propriedades so chamadas a facetas . Exemplo: Quadros descrevendo um cmodo e uma sala so mostrados o a na gura 6. Por esta descrio, pode-se concluir que uma sala um tipo de ca e cmodo, normalmente com quatro paredes e de formato retangular, com um o mobilirio espec a co. As facetas dos atributos especicam os tipos de valores esperados e, se for o caso, procedimentos adequados para calcular o valor do

14

atributo. Da mesma maneira que as redes semnticas, os sistemas baseados no a mtodo de quadros no so um conjunto homogneo; no entanto, algumas e a a e idias fundamentais so compartilhadas por estes sistemas. Uma dessas e a idias o conceito de herana de propriedades, o que permite a especie e c cao de propriedades de uma classe de objetos atravs da declarao de que ca e ca esta classe uma subclasse de outra que goza da propriedade em questo. A e a herana pode ser um mecanismo de inferncia muito eciente em dom c e nios que apresentem uma taxonomia natural de conceitos, como a biologia ou a paleontologia. Outra idia comum aos dois tipos de sistemas baseados em quadros e e o racioc nio guiado por expectativas. Um quadro contm atributos, e estes e atributos podem ter valores t picos ou, a priori, os chamados valores de exceo (do ingls, default values). Ao tentar instanciar um quadro para ca e que corresponda a uma situao dada, o processo de racioc ca nio deve tentar preencher os valores dos atributos do quadro com as informaes dispon co veis na descrio da situao. Para o processo de racioc ca ca nio, saber o que procurar para completar a informao necessria (e caso esta no esteja dispon ca a a vel, que valores tentativos atribuir aos atributos no preenchidos) pode ser um a fator fundamental para a ecincia do processo de reconhecimento de uma e situao complexa. ca Uma terceira idia a ligao procedimental . Alm dos valores por e e ca e default, um atributo pode ser associado a um procedimento que deve ser executado quando certas condies forem satisfeitas, por exemplo: ao ser co criado o atributo, ao ser lido o valor do atributo, ao ser modicado o valor do atributo, ou ao ser destru o valor do atributo. do

1.2.4

Roteiros

Os roteiros so estruturas de dados que descrevem seqncias estereotipadas a ue de eventos em um contexto particular. O racioc nio com roteiro serve especialmente para vericar se determinado evento ocorreu e tambm para vere icar a relao entre os eventos, que pode ser obtido pelo exame da cadeia ca causal. Esta cadeia causal a seqncia com que os eventos so descritos no e ue a roteiro.

1.2.5

Regras de Produo ca

Este mtodo foi idealizado pelo matemtico Emil Post (1943) e constitui um e a conjunto de regras que envolvem condies e aes. A condio constitu co co ca e da por um padro que determina a aplicabilidade de regra, enquanto a ao a ca 15

indica o que ser realizado quando a regra for aplicada. A parte Condio a ca da regra possui varias denominaes :lado esquerdo, antecedente ou premisco sa, enquanto a parte que expressa a ao a ser executada denomina-se lado ca direito ou conseqente. Um sistema poder ser formado por uma ou mais u a bases de regras que podem estar separadas segundo as exigncias do funcionae mento do problema. As Regras de Produo so a forma de representao ca a ca mais usada em IA.

16

Cap tulo 2 Sistemas Especialistas


Neste cap tulo ser fornecida uma viso geral sobre Sistemas Especialistas. a a Ser dada nfase quanto ` estrutura e funcionamento de um sistema espea e a cialista. Para uma melhor compreenso do que um Sistema Especialista, neste a e cap tulo ser feita uma abordagem sobre o funcionamento e estrutura de um a Sistema Especialista. Tambm ser feita uma abordagem sobre o funcionae a mento da Shell SINTA, ferramenta a ser utilizada para implementao do ca Sistema Especialista para Diagnstico e Soluo de Problemas em microo ca computadores.

2.1

O que so Sistemas Especialistas a

Sistemas Especialistas so programas de computador que procuram resolver a problemas do mesmo modo que especialistas humanos. So possuidores de a um conhecimento especializado sobre reas restritas do conhecimento. a Para tanto, os Sistemas especialistas devem possuir um conhecimento poderoso que facilite a busca da resposta requerida.

2.2

Arquitetura de um Sistema Especialista

Um Sistema Especialista genrico possui uma arquitetura como mostra a e Figura 4 abaixo: Figura 4: Arquitetura de um Sistema Especialista

17

2.2.1

Base de Conhecimento

Base de Conhecimento o conjunto de informaes que o SE utiliza para lidar e co com um tipo de problema. A base de conhecimento considerada o mdulo e o mais importante da Arquitetura de um sistema especialista, pois como disse Feigenbaum, em 1.983, A potncia de um sistema especialista deriva do e conhecimento que ele possui e no dos formalismos e esquemas espec a cos que ele emprega. O conhecimento de uma Base de Conhecimento pode ser representado pelas diferentes formas de representao do conhecimento, conforme foi visto ca na seo 1.2, mas as regras de produo so as formas mais usadas. No ca ca a a a forma de representao ou o volume de conhecimento que distingue o e ca sistema especialista das demais bases de dados, mas a capacidade de obter informaes no contidas na base de conhecimento atravs de um somatrio co a e o de fatos e de heur sticas. Mquina de Inferncia, mecanismo de aprendizagem e quadro negro so a e a os principais mdulos da arquitetura de um Sistema Especialista com os quais o a Base de conhecimento est interligada. a

2.2.2

Mquina de Inferncia a e

Mquina de Inferncia o mdulo responsvel pelo racioc a e e o a nio, no caso de um sistema especialista baseado em regras de produo. Utiliza duas tcnicas ca e para soluo de problemas: forward chainning (encadeamento para frente) ca e backward chainning (encadeamento para trs). a Este mdulo implementado atravs de softwares que podem ser adquirio e e dos ou ento ser elaborados, dependendo da especicao do problema. Em a ca ambos os casos existem vantagens e desvantagens. Os softwares adquiridos para funcionarem como mquina de inferncia nem sempre so ecientes, a e a pois no so precisos na justicao de resposta. J os softwares elaborados a a ca a permitem inserir detalhes para satisfazerem melhor as respostas, no entanto implicam em custo e tempo adicionais. Encadeamento para frente - Forward Chaining Este mtodo aplicado em bases de conhecimento representado atravs das e e e regras de produo. Quando o usurio fornecer respostas `s perguntas do Sisca a a tema Especialista, este mtodo faz referncia `s informaes armazenadas no e e a co banco de conhecimentos aplicando as tcnicas do encadeamento para frente e para fornecer concluses e resultados que o usurio precise. Um Sistema Eso a pecialista que implementado atravs do encadeamento para frente funciona e e

18

atravs dos seguintes passos: e 1. O sistema pede uma ou mais condies para o usurio; co a 2. Para cada condio, o sistema pesquisa em sua base de conhecimento ca as regras que contenham essa condio na parte SE da regra; ca 3. Cada regra pode, por sua vez, gerar novas condies a partir das conco cluses da parte ENTAO que for chamada; o 4. Essas novas condies so incorporadas ao sistema onde processada. co a e Se houver tal condio, o sistema volta ao passo 2 e pesquisa novamente ca as regras na base de conhecimento. Se no houver nenhuma condio a ca nova, a sesso termina. a Exemplo usando encadeamento para frente Eis aqui um conjunto simples de regras que podem fazer parte de um sistema especialista em mercado de aes. co Regra 1 SE TAXA DE JUROS = BAIXA ENTAO BOLSA DE VALORES = ALTA Regra 2 SE TAXA DE JUROS = ALTA ENTAO BOLSA DE VALORES = BAIXA Regra 3 SE COTACAO DO DOLAR = BAIXA ENTAO TAXA DE JUROS = ALTA Regra 4 SE COTACAO DO DOLAR = ALTA ENTAO TAXA DE JUROS = BAIXA Usando essas regras pode-se montar uma empresa em consultoria em mercado de aes. Um cliente visita a empresa e diz que a cotao do co ca dlar est caindo em relao ao valor da moeda das principais naes o a ca co industrializadas. Ele quer saber o que fazer no mercado de aes. Obco viamente, o objetivo fazer bons negcios na Bolsa de Valores, mas e o se o cliente ter ou no lucros ser decidido por condies ainda no a a a co a determinadas. Deve-se lembrar que os sistemas de encadeamento para frente fazem prognsticos atravs da anlise de condies denidas na o e a co parte SE da regra e chegam a concluses denidas na parte ENTAO. o Nesse caso a condio COTACAO DO DOLAR = BAIXA ca e Analisando as regras, verica-se que a regra 3 continha COTACAO DO DOLAR em sua clusula SE. Ou seja: a Regra 3 SE COTACAO DO DOLAR = BAIXA ENTAO TAXA DE JUROS = ALTA 19

A partir da pode-se concluir que a taxa de juros ir subir. Analisando o a restante das regras SE-ENTAO em relao ` COTACAO DO DOLAR, ca a ela encontrada novamente na regra 4. Mas a clusula SE COTACAO e a DO DOLAR = ALTA no coincide com a condio conhecida da queda a ca das cotaes do dlar. Portanto a regra 4 no aplicada. Ainda no co o a e a terminou, porque a regra 3 apresentou uma nova condio: TAXA DE ca JUROS = ALTA Agora deve-se analisar as regras para ver se essa condio leva a outras ca concluses, e verica-se que a regra 1 no aplicada, mas que a regra o a e 2 . e A cadeia prossegue com a introduo de uma nova condio: BOLSA ca ca DE VALORES = BAIXA Ainda no terminou. Deve ser vericado todas as regras em relao a a ca essa nova condio. Pesquisando todas as clusulas SE, verica-se que ca a nenhuma delas contm BOLSA DE VALORES. Assim a sesso est e a a encerrada, sendo entregue ao cliente o relatrio que se segue: Quando o a cotao do dlar est em baixa, as taxas de juros sobem e a Bolsa de ca o a Valores ca em baixa. Encadeamento para trs - Backward Chaining a E utilizado em Sistemas Especialistas que podem chegar a um grande nmero de concluses, mas que no possuem meios sucientes para u o a alcan-los. Assim como no encadeamento para frente, usado em SE ca e baseado em regras. Fundamenta-se na recurso, um mtodo eciente a e de programao. ca Um SE que utiliza o encadeamento para trs funciona utilizando os a seguintes passos: (a) A mquina de inferncia encarrega-se de encontrar valores para a e as condies ou objetivos que j so inclu co a a dos pelo projetista na denio da base em uma estrutura denominada lista de objetivos; ca (b) Estes valores podem ser encontrados nas concluses, isto , na o e das regras. Para tanto, o Sistema Especialista(SE) parte ENTAO pesquisa em seu banco de conhecimento as regras que contenham esse objetivo na parte ENTAO; (c) Quando uma regra encontrada, para que a parte ENTAO seja e aceita, suas premissas devem ser satisfeitas, obrigando a mquina a 20

a encontrar atributos para as variveis de condio para se poder a ca efetuar um julgamento das mesmas; (d) Para poder encontrar atributos para estas variveis, o S.E. volta a ao passo 2, acionando um encadeamento recursivo; (e) Caso o atributo procurado no seja encontrado em nenhuma cona cluso de regra, uma pergunta feita ao usurio. a e a O Expert SINTA utiliza o encadeamento para trs, mas poss a e vel simular o encadeamento para frente tambm. Para tanto, as variveis e a ou condies que o usurio deseja encontrar devem ser colocadas na co a lista de objetivos. Exemplo usando encadeamento para trs a Neste exemplo tambm ser utilizada o conjunto de regras de um sise a tema especialista em mercado de aes: co Regra 1 SE TAXA DE JUROS = BAIXA ENTAO BOLSA DE VALORES = ALTA Regra 2 SE TAXA DE JUROS = ALTA ENTAO BOLSA DE VALORES = BAIXA Regra 3 SE COTACAO DO DOLAR = BAIXA ENTAO TAXA DE JUROS = ALTA Regra 4 SE COTACAO DO DOLAR = ALTA ENTAO TAXA DE JUROS = BAIXA Agora ser vericado o que acontece no mercado de aes se a bolsa de a co valores estiver em queda. Neste caso, a varivel objetivo ser BOLSA a a DE VALORES. Analisando a base em busca de regras que contenham a varivel objea tivo BOLSA DE VALORES, ela encontrada na regra 1. e A regra 1 selecionada e a varivel de clusula desta regra, TAXA DE e a a JUROS, inserida no topo da pilha de variveis objetivo. Verica-se e a ento se esta varivel j foi instanciada. Como ainda no foi instancia a a a ada, iniciada uma busca na base para encontrar regras que tenham e a varivel TAXA DE JUROS na parte ENTAO. Ela encontrada na a e regra 3. A regra 3 selecionada e a varivel de clusula desta regra COTACAO e a a DO DOLAR inserida no topo da pilha de variveis objetivo. Vericae a se ento se esta varivel j foi instanciada. Como ainda no instancia a a a ada, iniciada uma busca na base para encontrar regras que tenham e 21

a varivel COTACAO DO DOLAR na parte ENTAO. Como ela no a a est na parte ENTAO de nenhuma regra da base, feita uma perguna e ta: A cotao do dlar est em baixa ou em alta? Considerando que a ca o a resposta seja baixa a varivel COTACAO DO DOLAR instanciada a e com BAIXA. A clusula da regra 3 analisada e como verdadeira, a parte ENTAO a e e aceita e a varivel TAXA DE JUROS instanciada em ALTA. e a e A varivel COTACAO DO DOLAR retirada do topo da pilha de a e variveis objetivo e a prxima varivel a ser selecionada a varivel a o a e a TAXA DE JUROS. A busca por regras que contenham a varivel objetivo TAXA DE JUa ROS retomada e encontrada na regra 4. Como a varivel da clusula e e a a desta regra j foi instanciada em BAIXA, a clusula falsa e a parte a a e e ENTAO descartada. A busca por regras que contenham a varivel a objetivo TAXA DE JUROS termina e como ela j foi instanciada, ela a retirada da pilha de variveis objetivo. e a A prxima varivel a ser selecionada na pilha de variveis objetivo o a a e a varivel BOLSA DE VALORES. Como inicialmente esta varivel foi a a da regra 1 e a varivel de clusula dessa encontrada na parte ENTAO a a regra (TAXA DE JUROS) j foi instanciada em ALTA, a clusula a a e analisada e considerada falsa. A busca por regras que tenham BOLSA DE VALORES na parte ENTAO continua e encontrada na regra 2. Como a varivel de e a clusula da regra da foi instanciada em ALTA, a premissa analisada a e e considera verdadeira, insntanciando-se novamente a varivel BOLSA a DE VALORES como BAIXA. A busca por regras que tenham a varivel BOLSA DE VALORES na a retomada. Como no encontrada mais nenhuma parte ENTAO e a e ocorrncia da varivel BOLSA DE VALORES na parte ENTAO das e a demais regras e por no existirem mais variveis objetivos na pilha de a a variveis objetivos na pilha de variveis objetivos, a consulta encera a e rada e a sesso termina. Assim, o seguinte relatrio mostrado: Com a o e a bolsa de valores em baixa, a taxa de juros aumenta e a cotao do ca dlar cai. o

22

2.2.3

O Quadro Negro

O quadro negro, ou blackboard considerado a rea de trabalho de e a um sistema especialista. Contm informaes e fatos sobre o assunto em e co pauta, oferecendo um suporte ao funcionamento do sistema especialista. Segundo Hayes Roth (1983), o quadro negro formado por um conjunto e de 3 mdulos independentes. o O primeiro mdulo, conhecido como plano de atuao trabalha direo ca tamente com o interpretador de regras e com o justicador. O interpretador responsvel pela validao das condies da regra, relacionando e a ca co variveis a estas condies. a co O segundo mdulo denominado de agente, responsvel pela o e a escalonao das regras, isto , qual regra ser executada no instante ca e a seguinte. O terceiro mdulo, conhecido como soluo responsvel pelo aro ca e a mazenamento das poss veis solues que serviro para compor as reco a spostas para o problema.

2.2.4

Sistema de Justicao ca

E o modulo capaz de permitir ao usurio realizar um questionamento a sobre uma soluo fornecida ao mesmo. So exemplos de justicao ca a ca as seguintes perguntas: Como chegou a esta concluso? Porque chegou a a esta concluso? Porque no chegou a tal outra concluso? a a a

2.2.5

Mecanismos de Aprendizagem

E um mdulo capaz de realizar algumas aes que visam melhorar o o co desempenho do sistema e a qualidade das respostas. Estas aes perco mitem que sejam feitos acrscimos e alteraes na base de conhecimento e co atravs da depurao da base de conhecimento, reordenao de priore ca ca idades e estabelecimento de mecanismos de controle para a expanso a de rvore de busca. a

2.2.6

Sistema de Aquisio de Conhecimento ca

E o mdulo que permite acrescentar e alterar o conhecimento de um o Sistema Especialista. Estas tarefas so realizadas com o aux de a lio 23

outros recursos tais como editores, ordenadores, classicadores, que auxiliam a extrair e aproveitar o conhecimento.

2.2.7

Sistema de Consulta

O sistema de consulta o modulo dotado de recursos para consulta e que permite aos usurios acessar sem maiores diculdades o sistema a especialista, haja visto que o usurio no conhece a estrutura do S.E. a a e nem as formas de representao do conhecimento. ca

2.2.8

Processador de Linguagem

Este mdulo responsvel por estabelecer uma linguagem orientada o e a para o S.E. a m de suprir os requisitos de linguagem tcnica da come putao. Este modulo entra em ao toda vez que o usurio estiver ca ca a acessando o Sistema Especialista.

2.3 Sistema Especialista para Diagnstico o e Solues de Problemas em Microcomco putadores


Esta seo tem por objetivo descrever o desenvolvimento de um Sistema ca Especialista para Diagnstico e Solues de Problemas em Microcomo co putadores. Trata-se de uma ferramenta destinada a usurios comuns a de microcomputadores, com o objetivo de auxili-los na identicao a ca das causas e solues de falhas que ocorrem nos microcomputadores. co

2.4

Ferramenta utilizada

O SE par Diagnstico e Solues de Problemas em Microcomputadores o co foi desenvolvido atravs da ferramenta Shell Expert SINTA, verso e a 1.1b, software este que tem como principal objetivo a gerao auca tomtica de sistemas especialistas, onde a representao do conhecia ca mento baseada em regras de produo e uso de probabilidades. Dene ca tre suas caracter sticas podemos destacar:

24

(a) Utilizao de mquina de inferncia compartilhada fundamentada ca a e no encadeamento para trs (bacward chainning); a (b) Construo automtica de telas e menus; ca a (c) Tratamento probabil stico das regras de produo, atravs do uso ca e de fatores de conana; c (d) Explicaes sens co veis ao contexto da base de conhecimento; (e) Adequao com problemas de classicao; ca ca

2.4.1

Caracter sticas da Aplicao ca

O SE para Diagnstico e Solues de Problemas em Microcomo co putadores foi desenvolvido utilizando-se como forma de representao do conhecimento um conjunto de regras de produo capazes ca ca de auxiliar na soluo dos problemas mais comuns que um comca putador est propenso a apresentar. Surgiram algumas dvidas a u sobre quais seriam esses problemas. Foram selecionados problemas tanto de hardware quanto de software a m de enriquecer a capacidade de resoluo, ou seja, a capacidade de resolver um ca maior nmero de problemas. u Para a construo das regras de produo, recorreu-se ao aux ca ca lio de livros tcnicos, revistas especializadas e experincias adquirie e das. As regras de produo foram armazenadas em sua base de ca conhecimento. Essas regras so manipuladas pela mquina de ina a ferncia durante uma consulta e fundamentada no encadeamento e e para trs. Desta forma, numa consulta somente so avaliadas as a a regras relacionadas com a situao atual do problema. ca

2.4.2

Requisitos Bsicos a

Para instalar o SE para Diagnstico e Soluo de Problemas em o ca Microcomputadores, necessrio denir os requisitos bsicos de e a a execuo do mesmo. Como foi desenvolvido utilizando-se a Shell ca Expert SINTA, necessita-se de um computador equipado com sistema operacional Windows 95 ou superior. Vale lembrar que as condies m co nimas de hardware do Windows satisfazem as condies de execuo da aplicao. Contudo, co ca ca e necessrio que haja no m a nimo 5MB de espao dispon em disc vel co para a instalao da Shell e da aplicao. O software Expert ca ca 25

SINTA verso 1.1b pode ser obtido no site www.lia.ufc.br, juna to ao grupo SINTA. E importante salientar que a execuo da ca aplicao utilizando os recursos m ca nimos de hardware, afeta consideravelmente o tempo de execuo, ou seja, quanto mais robusta ca a aplicao, maior capacidade de hardware exigida. ca e

2.4.3

N vel de Conhecimento do Usurio a

Apesar do SE para Diagnstico e Soluo de Problemas em Mio ca crocomputadores conter mdulos bastante simples, existem outo ros que exigem conhecimentos relativamente mais avanados, onde c apenas pessoas com alguma experincia na rea so capazes de ine a a teragir com o mesmo. Portanto, para que a aplicao apresente ca resultados satisfatrios, sua utilizao indicada para aqueles que o ca e possuam n de conhecimento intermedirio e que tambm estevel a e jam familiarizamos com o uso da linguagem tcnica dos computae dores.

2.4.4

Restries da Aplicao co ca

Devido ao curto per odo de tempo dispensado para a elaborao ca do projeto, a aplicao desenvolvida no tem a pretenso de reca a a solver todo e qualquer problema inerente a falhas de computadores. Contudo houve esforo cont c nuo na busca de respostas aos casos mais comuns que um dispositivo aleatrio poderia apreseno tar. Aps um nmero considervel de questes levantadas junto ao o u a o usurio, o SE para Diagnstico e Soluo de Problemas em Microa o ca computadores tenta chegar a concluses que satisfaam a soluo o c ca do problema,porm existem situaes em que todas as alternatie co vas poss veis no conduzem ` soluo. Nesses casos, o SE para Dia a ca agnstico e Soluo de Problemas em Microcomputadores conclui o ca que no se pode atingir uma soluo, cando a cargo do usurio a ca a tentar outros tipos de diagnsticos de falhas. o

2.4.5

Finalidade da Aplicao ca

O propsito principal do desenvolvimento da aplicao, alm de o ca e ilustrar a funcionalidade de um SE, est voltado ao aux na a lio

26

busca de solues para problemas relativos ` falhas de computaco a dores. Com isso, podemos estender sua utilizao tambm para ca e ns de treinamento par aqueles que possuam conhecimento terico o e pouca experincia prtica, incluindo-se nesta situao, tcnicos e a ca e e analistas recm-formados. e

2.4.6

Teste e Avaliao ca

Como o SE para Diagnstico e Soluo de Problemas em Mio ca crocomputadores foi desenvolvido atravs da implementao de e ca mdulos independentes, cada processo pertencente a um mdulo, o o foi testado e avaliado de forma que todas suas possibilidades fossem abrangidas. Assim sendo, todas as respostas, as interaes co com o usurio, as aceitaes, a credibilidade e a preciso foram a co a sendo avaliadas ` medida que o sistema era implementado. a

2.4.7

Reviso a

O processo de reviso utilizado na implementao do SE para a ca Diagnstico e Soluo de Problemas em Microcomputadores foi o ca feito de forma cont nua, ou seja, ` medida que o sistema era ima plementado. Como esta uma etapa posterior a etapa de teste e e avaliao, as alteraes foram feitas melhorando os aspectos probca co lemticos levantados na referida etapa. a

27

Cap tulo 3 Inteligncia Articial e Distribu da


Neste cap tulo sero abordados os temas e conceitos da rea de Ina a teligncia Articial Distribu (IAD). Inicialmente ser feita uma e da a denio de IAD e um breve histrico da rea ser apresentado. ca o a a A seguir os principais problemas da IAD sero abordados. a Sistemas de Inteligncia Articial tradicionais concentram suas e atenes em um unico agente, o qual seria provido de alguma co espcie de inteligncia, e sozinho seria especialista na realizao e e ca de uma tarefa espec ca. A Inteligncia Articial Distribu (IAD) baseia-se no compore da tamento social, considerando sociedades de agentes inteligentes e autnomas, dotadas de capacidade cognitiva. Os agentes, eso pecialistas na atividade que desempenham, no trabalham mais a isolados, mas de forma cooperativa tentam resolver um problema da melhor forma poss vel, caracterizando a rea da IAD, denomia nada Sistemas Multiagentes (SMA). Na outra rea da IAD, a Resa oluo Distribu de Problemas (RDP), so adotados estratgias ca da a e baseadas no conceito de decomposio para a resoluo de um ca ca problema complexo, isto , a tarefa, dada a sua complexidade, e requer decomposio num conjunto de tarefas mais simples. ca

28

3.1 O que Inteligncia Articial Dise e tribu da?


A IA Distribu uma rea da IA que aplica mtodos cooperda e a e ativos para solucionar um determinado problema. Um sistema baseado em Inteligncia Articial Distribu formado por um e da e conjunto de partes. ` As vezes um Sistema Especialista pode estar lidando com um problema to complexo que sozinho no o consiga resolver. Para tanto, a a a IAD procura atacar estes problemas complexos, decompondo-os em problemas mais simples, cada um com caracter sticas distintas. Para melhor compreenso do funcionamento da IAD, pode-se a traar um paralelo com os seres vivos na natureza, que se agruc pam, formando o que se conhece como sociedade, para melhor poder resolver o problema da luta pela vida e pela sobrevivncia e da espcie. Pode-se citar como exemplo as abelhas e as formie gas, que se agrupam, formando uma sociedade organizada e com especializaes de funes. No campo da Inteligncia Articial, co co e tem-se como exemplo o uso de vrios robs autnomos, cada um a o o trabalhando em um unico problema.

3.2

Breve Histrico o

As pesquisas acadmicas em Inteligncia Articial Distribu e e da (IAD) comearam nos anos 70, poca em que ocorreram as c e primeiras experincias para resolver problemas de modo cooperae tivo. Vale destacar entre essas primeiras experincias o projeto HEARSAY e II, que se tratava de um sistema para reconhecimento de fala. Na dcada de 80, quando se iniciou a discusso sobre a utilizao de e a ca modelos organizacionais humanos em sistemas computacionais, os trabalhos de Inteligncia Articial Distribu se concentravam e da em aplicaes de reconhecimento de palavras, interpretao de co ca sensores e controle de robs. o Na rea de robtica foram testados os chamados robs reativos, a o o cuja idia bsica era a de utilizar uma arquitetura simples, e a baseada em comportamentos elementares, para projetar um rob o autnomo. Atualmente aplicaes no campo da Inteligncia Artio co e cial Distribu no param de se multiplicar. da a 29

3.3

Conceitos Bsicos a

A seguir, sero introduzidos alguns conceitos bsicos de Ina a teligncia Articial Distribu (IAD), como agentes, sociedades, e da ambientes, organizaes e interaes, que sero utilizados nas co co a sees subseqentes. co u Dado um determinado sistema, denomina-se agente cada uma de suas entidades ativas. Um agente raciocina sobre o ambiente, sobre os outros agentes e decide racionalmente quais aes deve co tomar. O termo ativo tem como objetivo indicar que o agente est ligado a um mecanismo de controle para sua ativao. As a ca entidades passivas formam o ambiente. O conjunto de agentes forma uma sociedade. O termo interao designa as trocas de informao que podem ca ca ocorrer entre os agentes. Organizao descreve as restries aplica co cadas aos agentes pertencentes a uma sociedade.

3.4 Principais problemas abordados em IAD


Os principais problemas abordados em IAD so os seguintes: a i. Descrio, decomposio e alocao de tarefas: refere-se a ca ca ca como deve ser escrita e decomposta uma tarefa complexa em subtarefas e como essas subtarefas sero realizadas e alocadas, a tanto estaticamente como dinamicamente; ii. Interao, linguagem e comunicao: que primitivas bsicas ca ca a de um protocolo de comunicao devem ser utilizadas para ca representar conceitos semnticos de um trabalho cooperativo; a iii. Coordenao, controle e comportamento coerente: como garanca tir um comportamento global coerente num conjunto de agentes, cada qual com os seus objetivos e habilidades; iv. Conito e incerteza: considerando que os agentes no tm a e uma informao completa sobre o seu ambiente, surgem conca itos e estes devem ser resolvidos. Os dados incertos e incompletos devem ser manipulados de forma a garantir resultados globais coerentes; v. Linguagens e ambientes de programao: devem ser denidas ca linguagens de programao a serem utilizadas em tais sisca 30

temas que suportem os diferentes requisitos necessrios a cada a agente pertencente ao sistema. Alguns destes problemas tm sido pesquisados por pesquisadores e de outras reas, como por exemplo em sistemas distribu a dos e lgica. No entanto, a IAD tem por objetivo reunir tais problemas o num mesmo contexto cient co.

3.5 Resoluo Distribu ca da de Problemas (RDP)


O principal objetivo desta estratgia de resoluo solucionar e ca e um problema inicial preciso. Para tanto, apresenta as seguintes caracter sticas: i. Diviso do problema: o problema resolvido atravs da dia e e viso das tarefas, que so realizadas por um conjunto de a a agentes, sendo que cada agente est incumbido de solucionar a uma determinada tarefa particular. Os agentes podem aplicar diferentes estratgias de resoluo para um mesmo problema; e ca ii. Organizao: Os agentes esto sicamente distribu ca a dos em diversas mquinas conectadas via rede, tambm denominada a e de ns. A disposio dos agentes denida durante a fase o ca e de concepo do sistema e tem por objetivo desenvolver uma ca arquitetura de comportamento cooperativo; iii. Interao entre ns: a interao entre os agentes realizaca o ca e da atravs de troca de mensagens e pelo compartilhamento e de dados. Estas interaes tm por objetivo possibilitar ao co e agente interagir com os demais para compartilhar informaes co ou resultados parciais, permitindo que primeiro resolva o seu problema particular. Somente aps estas interaes o objetivo o co global pode ser alcanado; c iv. Execuo: os agentes so executados de forma concorrente, ca a aumentado assim a velocidade de resoluo; ca v. Controle do Sistema: pode ser implementado de forma centralizada, onde um agente responsvel pelo controle do sise a tema, ou de modo distribu do; A gura abaixo possibilita uma melhor compreenso das tcnicas a e de RDP para resoluo de um problema: ca 31

3.6

Sistemas Multiagentes

O principal objetivo desta rea oferecer meios para que os a e agentes possam cooperar na resoluo de um problema espec ca co quando este for apresentado ao sistema. Para tanto, apresenta as seguintes caracter sticas: i. Concepo: os agentes so concebidos independentemente de ca a um problema particular a ser resolvido, isto , no so entie a a dades capazes de realizar um processamento espec co para resolver um problema particular, mas sim capazes de realizar qualquer processamento; ii. Interao: so desenvolvidos protocolos de interaes genricos, ca a co e isto , que podem ser utilizados em vrias aplicaes; e a co iii. Organizao: os agentes so implementados com todas as funca a cionalidades necessrias para resoluo de um problema; a ca iv. Controle do Sistema: no existe um controle global do sisa tema, este implementado de forma totalmente descentrale izada. A gura 5 permite uma melhor compreenso do funcionamento do a modelo de SMA para soluo de um problema. ca Figura 5

32

3.7 Relao de Sistema Especialista ca com IA Distribu da


Os sistemas baseados em IAD iniciaram uma verdadeira revoluo ca na forma de pensar e resolver problemas. Os Sistemas Especialistas que sempre tiveram uma viso global e uma abordagem cena tralizada do problema, puderam ter uma viso local do problema, a a n de agente, onde o comportamento coletivo e a funcionalivel dade global so resultantes das interaes entre os agentes. Com a co o particionamento do problema em subproblemas funcionalmente distribu dos, cada subprocesso (agente) um subsistema especiale ista em certos tipos de atividades. Neste paradigma, o agente deve fazer suas prprias decises sobre o subproblema a solucionar. o o Esta nova maneira de pensar os problemas permitem que sistemas especialistas ainda mais complexos sejam projetados e desenvolvidos, sistemas estes mais abertos, ex veis, interativos e conveis. a O interesse maior em sistemas nos quais os agentes so sistemas e a de IA que podem gerar e executar planos e fazer inferncias. Gere 33

ar planos consiste em um meio de cada agente poder planejar suas aes, considerando as aes potenciais de outros agentes, isto , co co e cada agente deve possuir conhecimento de algumas caracter sticas de outros agentes (racioc nio social). Cada agente tem uma viso limitada da situao global, o que a ca no suciente para resolver o problema. A interao entre os a e ca mltiplos especialistas ou agentes torna-se necessria para resolver u a o problema. Para tanto, os agentes tm permisso de comunicar-se e a de forma limitada para compartilhar objetivos comuns e trabalhar neles.

3.8

Aplicaoes da IAD c

Sistemas de Inteligncia Articial Distribu so a classe de e da a sistemas que permite a vrios processos autnomos, chamados a o agentes, realizarem atos de inteligncia global atravs de procese e samento local e comunicao interprocessos. Enm, a meta de ca sistemas especialistas baseados em conhecimento e distribu dos e poder coordenar atividades de grupo resolvendo problemas que os sistemas compartilham - totalmente ou em parte. Utilizando-se da IAD, pode-se resolver problemas que no seria am resolvidos com a tecnologia tradicional. Com a IAD a base de conhecimentos pode ser subdividida em reas, assim como o a problema. Dessa maneira, cada processo procura um problema, resolve a sua parte e devolve os dados trabalhados ` base, para a que um outro processo identique o seu padro e possa seguir a manipulando os mesmos dados, adiantando mais a resoluo do ca problema em questo. a Como exemplo de uma situao real do emprego da IAD, temos ca o sistema de defesa dos EUA. O sistema composto de mais de e um sistema especialista, todos com a mesma funo, contudo com ca formas diferenciadas de armazenar e decidir sobre os problemas. Dessa maneira, para uma resoluo ser feita, mais de um sistema ca deve chegar na mesma soluo, de formas diferentes e por mtodos ca e diferentes. O sistema composto por um nmero e u mpar de processos distribu dos para que no ocorra empate de decises. Ao a o se projetar um sistema especialista distribu do, devem ser feitas algumas perguntas bsicas como: a O que um agente ir dizer ao outro?, Que linguagem eles usaro?, a a 34

O que eles devem descrever? e etc. E muito importante, como em qualquer projeto, que seja feita uma excelente anlise do problema para que o custo de uma reestrutua rao seja minimizado. ca

3.8.1 istas

Rede Cooperativa de Sistemas Especial-

No campo da IAD, tem havido um crescente interesse na pesquisa e desenvolvimento de sistemas que permitem a participao de ca sistemas especialistas j existentes em redes cooperativas de traa balho[ ]. Este problema de grande importncia devido a suposio bsica e a ca a que a heterogeneidade de sistemas inerente ao universo da e cincia da computao. Isto no signica que os esforos para e ca a c padronizao so inteis, muito pelo contrrio. Entretanto, estes ca a u a esforos sempre deixam para trs novas aplicaes e tecnologias c a co que saem dos laboratrios de pesquisa e das indstrias que proo u duzem programas. At h poucos anos atrs, a linha de pesquisa predominante da e a a IAD respondia ` necessidade de desenvolvimento de sistemas para a sistemas cooperativos. O foco causou uma concentrao inicial nos ca aspectos mais fundamentais do campo, por exemplo, estratgias de e cooperao, dinmica de comunicao de agentes, arquitetura de ca a ca agentes, etc. Conforme se progrediu nestes aspectos, tm havido e experimentaes em diferentes ambientes de programao para co ca sistemas cooperativos. Vrios grupos de pesquisa tm empreendido a tarefa de integrar a e estes agentes cooperativos em sistemas mais amplos que assegurem interoperabilidade de sistemas heterogneos. Exemplos disso so e a os sistemas Carnot[ ] e Archon[ ]. A aplicao desses sistemas na indstria e no setor de servios fez ca u c perceber novas dimenses de problemas, sendo que duas das mais o importantes so: a i. Heterogeneidade na representao do conhecimento, na base ca de dados, nas linguagens de programao, e na comunicao ca ca de servios; c ii. Integrao: conceito que assegura o funcionamento harmoca niosamente do conjunto de aplicaes, sistemas e servios; co c 35

Em 1990, um projeto desenvolvido na MCC, sob a direo de ca Michael Huhns, marcou o in de estudos mais espec cio cos. Assim como os sistemas Carnot e Archon, esse projeto consistia do desenho de uma rede de comunicao para conectar sistemas especa cialistas existentes. Esta intercomunicao permite a distribuio ca ca de dados e concluses, facilitando assim o trabalho cooperativo na o soluo de problemas mais complexos. ca A proposta de Huhns consistia na criao de uma rede de mdulos ca o que assegurasse a comunicao dos sistemas especialistas, focalca izando principalmente a comunicao e administrao das partes ca ca da rede, prevenindo principalmente, o problema do impasse nos dilogos. Neste projeto identica-se a necessidade de se ter um a mdulo adicional cuja funo garantir a cooperao entre os siso ca e ca temas especialistas, isto , coordenar a chamada dos sistemas ese pecialistas envolvidos na soluo cooperativa de um determinado ca problema. Metfora de uma Rede Cooperativa a O objetivo desta seo apresentar o esboo de uma rede de coca e c operao, que tambm pode ser denominada junta cooperativa, ca e que incorpora os mdulos de cooperao necessrios para que siso ca a temas especialistas correntemente em us resolvam problemas cooperativamente. Esta proposta faz parte de um projeto a longo prazo, chamado RESH que estava sendo desenvolvido pelo Laboratrio Nacional de Informtica Avanada (LANIA) da cidade de o a c Vera Cruz no Mxico[ ]. e O dom nio de aplicao escolhido para expor a rede foi a desca ignao de crdito em banco. Antes porm, vamos introduzir uma ca e e metfora para a rede cooperativa, isto , faremos uma analogia a e com ambiente de trabalho num escritrio. o Suponha que o escritrio funciona como um tipo de rede coopo erativa formada por um grupo de pessoas que incluem chefes e secretrios. Cada chefe tem,como seu associado, um secretrio exa a ecutivo a que ele est hierarquicamente relacionado. Os servios a c de comunicao dispon ca veis para esses chefes e secretrios so: a a telefone, fax e servio de mensagem. O secretrio est apto no c a a a somente a assumir a comunicao de seu chefe, mas tambm inca e terpretar e executar suas ordens, e resolver todos os problemas relacionados a esta execuo. ca 36

O modelo descrito est apto a discriminar entre pelo menos trs a e n veis hierrquicos de comunicao: n (n) chefes, n (n-1) a ca vel vel secretrios e n (n-2) servios de comunicao. a vel c ca Em adio, importante estabelecer, tambm, trs tipos diferentes ca e e e de dilogos: chefe.n - chefe.n, chefe.n - secretrio.n-1, secretrio.na a a 1 - secretrio.n-1. a Esses dilogos so realizados usando os vrios servios de comua a a c nicao existentes no escritrio. Eles podem ser descritos em terca o mos de camadas de dilogos que so controlados por protocolos de a a n veis inferiores n-1, e servios de n c veis mais baixos. Em resumo, cada camada deve fornecer servio de comunicao bsica para a c ca a camada imediatamente acima. A comunicao com o exterior sempre realizada atravs de um ca e e dos secretrios. O ambiente externo identicado com o cliente da a e rede. O cliente conta seu problema ` rede atravs do secretrio.na e a 1 que est associado com o chefe.n. a Algumas restries podem ser impostas sobre esta analogia: co i. No existe dilogo direto entre chefe e chefe. a a ii. Cada chefe pode se comunicar somente com seu/sua secretrio, por meio de ordens, questes e armaes. a o co iii. Dilogos entre secretrios estabelece comunicao atravs da a a ca e transmisso de pedidos, perguntas, asseres e transmisso de a co a documentos. Em vista dessas restries, cada chefe concebido como um esco e pecialista isolado cuja unica conexo com o resto do escritrio a o e atravs de seu/sua secretrio, que assume a responsabilidade da e a cooperao. O secretrio tem familiaridade com o ambiente globca a al, os diferentes interlocutores diretos do chefe, tem dom nio dos protocolos apropriados para os diferentes assuntos, e sabe como interpretar as ordens de seu/sua chefe e tambm como divid e -las em tarefas envolvendo um ou mais interlocutores. A metfora que foi descrita anteriormente serve como uma base a para a denio de uma arquitetura para a rede cooperativa de ca sistemas especialistas. Para comear o papel exercido pelos chefes c na metfora est associado aos sistemas especialistas distribu a a dos no escritrio. O problema que os autores em [ ] se propem a o o resolver consiste do planejamento e construo de uma rede de ca sistemas que assume o papel dos secretrios executivos da rede. a Estes sistemas so chamados facilitadores porque seu propsito a o 37

facilitar a cooperao entre os sistemas especialistas que foram e ca constru dos para trabalhar independentemente. Modelo de uma Rede Cooperativa O modelo de rede cooperativa de sistemas especialistas que estamos expondo organizada em trs camadas: e e i. A rede de Sistemas Especialistas ii. Rede de facilitadores iii. Comunicao da rede ca A Rede de Sistemas Especialistas composta por um conjunto de e sistemas especialistas, que podem resolver juntos problemas mais complexos do que aqueles que cada um poderia resolver sozinho. Essa cooperao para soluo de problemas poss com a ajuda ca ca e vel da rede de facilitadores. A rede de facilitadores abrangem um conjunto de sistemas capazes de denir e coordenar uma soluo cooperativa dos problemas dos ca usurios. a A soluo do problema feita atravs do intercmbio, por um ca e e a lado entre os prprios facilitadores, e por outro lado, entre os fao cilitadores e os usurios ou tambm com os sistemas especialistas. a e Internamente, cada facilitador possui algumas interfaces que permitem lig-lo com um usurio, uma base de dados gerenciadora do a a sistema e um sistema especialista. Externamente, cada facilitador associado aos demais facilitadores da junta. e A comunicao da rede corresponde ` rede de computador e ` rede ca a a de comunicao f ca sica, cujas principais tarefas so: a i. assegurar a interconexo lgica da rede de facilitadores a o ii. assegurar o servio de transmisso de mensagem c a Em termos do esquema das camadas em sistemas abertos, os usurios de um sistema facilitador esto situados na ultima camaa a da de um sistema aberto cooperativo, a camada n de aplicaes, os co facilitadores esto situados na penltima camada, n-1, e portanto a u se constitue na camada de servios de comunicao da camada c ca superior.

38

3.8.2

Arquitetura do Facilitador

O principal objetivo do facilitador assegurar a coordenao de e ca um Sistema Especialista que est ligado a ele com os demais Sisa temas Especialistas da rede, assegurando a soluo global dos ca problemas dos usurios. a As principais tarefas dos facilitadores controlar diferentes tipos e de dilogos envolvidos na soluo de um problema e selecionar a ca uma estratgia de cooperao para esta soluo. Para tanto, os e ca ca facilitadores contam com dois mdulos: o i. Mdulo de Controle de Cooperao; o ca ii. Mdulo de Controle de Dilogo; o a O mdulo de Controle de Cooperao o mdulo principal do fao ca e o cilitador. A primeira tarefa em um problema criar o grupo de e agentes dispon veis na junta e depois escolher a estratgia coope erativa para soluo do problema e, a seguir, os tipos de dilogos ca a envolvidos. Esse mdulo tem conhecimento total do dom o nio da rede de Sistemas Especialistas, das diferentes estratgias de coe operao, assim como um modelo de seu SE todos os sistemas da ca rede. O mdulo de controle de dilogo responsvel pela aplicao da o a e a ca estratgia selecionada e gerenciamento dos dilogos correspone a dentes. Existem trs diferentes tipos de dilogos: e a i. Entre o facilitador e o usurio; a ii. Entre o facilitador e seu Sistema Especialista; iii. Com outros facilitadores da rede. Estudo de Caso: Concesso de Crdito Bancrio para Empresas a e a Este estudo de caso focaliza a concesso de crdito em banco. Para a e esse propsito, so considerados uma rede cooperativa formada o a por trs sistemas especialistas: e i. SE1 Para concesso de crdito; a e ii. SE2 Para avaliar projetos; iii. SE3 Para Clculos a Cada um desses sistemas especialistas possui uma base de conhecimento. As principais caracter sticas desses sistemas especialistas so: a i. SE1 - Esse sistema um especialista em operaes bancrias e co a que admite diferentes tipos de crditos bancrios. Ele possui e a 39

um conjunto de pol ticas bancrias que lhe permitem oferea cer crdito com base em alguns critrios tais como: solvncia, e e e garantia de lucro para o banco, capacidade de gerenciamento dos indiv duos que solicitam o crdito para suas companhias, e viabilidade tcnica e nanceira do projeto, etc. Este sistema e tambm tem acesso a uma base de dados que contm arquivos e e de aplicao daqueles que esto solicitando o emprstimo, inca a e formaes sobre pol co ticas bancrias, taxas de interesse atual, a etc. ii. SE2 - Esse sistema um especialista faz avaliao de projetos. e ca Seu propsito analisar e avaliar projetos de investimentos. o e Ele possui a incumbncia de ordenar os projetos de acordo e com o tamanho do projeto, os custos relevantes, se seguro e ou de risco, se possui todas as informaes necessrias e se co a estas so favorveis. Nesse exemplo ele ser usado somente a a a como um assistente da rede cooperativa. iii. SE3 - Este um sistema especialista em clculos que pode e a aplicar diferentes modelos e realizar clculos de complexidade a variada. Para tanto, acompanha a conduta do mercado e pode acessar a base de dados contendo todas as informaes co necessrias para realizar estes clculos. Esse sistema tambm a a e ser usado como um assistente. a Existe uma base de dados que contm informaes gerais da eme co presa, isto , situao nanceira e dados referentes ao projeto para e ca o qual a aplicao de crdito foi feita. Ela pode ser acessada por ca e qualquer um dos trs sistemas especialistas atravs de seus ree e spectivos facilitadores. Em qualquer situao, o usurio requisica a tar primeiramente o facilitador do SE1. O SE1, atravs de seu a e facilitador, solicitar a ajuda dos outros dois sistemas especialisa tas assistentes para posteriormente aplicar uma soluo denitiva ca para o problema apresentado pelo usurio. a O que se pode concluir desta aplicao que o conceito de facilitaca e dor elemento poderoso em sistemas distribu e dos complexos que implica na inter-operao de sistemas heterogneos. ca e Sua aplicabilidade vai alm de executar a comunicao de sistemas e ca especialistas existentes, e pode ser extendidoa sistemas auxiliares, como tambm a problemas de interoperatividade gerais que exe igem solues em n de semntica. co vel a O problema de ligar sistemas especialistas para tarefas cooperativas um campo frtil de experimentao, pois problemas que e e ca 40

demandam solues efetivas usando redes cooperativas homemco mquina so frequentes. a a

41

Cap tulo 4 Melhorando a Qualidade de Servios de Busca na c Internet


O crescimento sbito e desordenado da World Wide Web tornou as u ferramentas de busca aplicaes essenciais para viabilizar o acesso co a informaes, documentos e servios na Internet. Nos ultimos co c anos, essas ferramentas de busca tm se transformado em pore tais que atuam como ponto de partida para acessos ` Internet. a Devido ` sua ampla utilizao e ` sua relevncia, ecincia e vea ca a a e locidade na realizao das buscas so fundamentais. ca a A velocidade de resposta dos servidores de busca no depende, a entretanto, apenas da quantidade de requisies recebidas, mas co tambm da complexidade dessas. Mas ainda, o volume de infore maes retornado aos usurios varia muito entre pesquisas, resulco a tando em variabilidade e diculdade de predio do comportamenca to do servidor e do trfego das redes de interconexes entre este e a o o cliente. Neste artigo ser apresentado uma estratgia chamada a e cache plugins, estratgia esta que vem sendo implementada em e servios de busca para melhorar a qualidade dos mesmos. c A implementao desta tcnica utiliza conceitos de processamento ca e distribu e Inteligncia Articial. Os plugins so pequenos prodo e a gramas executados em servidores cache WWW. Plugins tambm e podem funcionar como concentradores que contabilizam acessos feitos `s pginas. a a

42

4.1

Inteligncia Articial na rede e

E curioso como alguns aspectos revolucionrios da Internet ainda a no esto sendo explorados em todo o seu potencial. Um deles a a a possibilidade de transformar o microcomputador do usurio e a em algo mais do que um simples terminal de acesso, atravs do e sistema denominado execuo distribu ca da. O que isso? Os e programas do tipo Netscape e Internet Explorer, a partir de sua verso 2, j permitem a execuo de programas (softwares) nas a a ca CPUs do computador do usurio. a A tecnologia mais recente a Java, que consiste de um aplicativo e usualmente pequeno (applet), que descarregado para o come putador do usurio quando ele acessa uma pgina na Web, e a a e uma linguagem poderosa, que tem a executado localmente. E vantagem de ser independente de plataforma. Apesar disso, a maior parte dos sites na WWW ainda utiliza aplicaes simples co para a execuo distribu raro encontrar usos das tecnologias ca da e de Inteligncia Articial, como os sistemas especialistas. Eles ime plementam conhecimento em alguma rea especializada, e ajudam a o usurio a tomar decises, planejar, criticar, etc., procurando ima o itar a maneira como o intelecto humano funciona. Um bom exemplo um sistema especialista na rea mdica, que e a e pode auxiliar o prossional a chegar a um diagnstico, com base o nos sinais, sintomas e resultados de exames de laboratrio ou outo ros. O resultado enviado atravs da Web para o usurio que o e e a solicitou. O bom de um sistema desse tipo que ele pode ser usado e de qualquer lugar do mundo, usando qualquer marca ou modelo de computador, a qualquer hora do dia. No futuro, a Internet vai ser muito mais inteligente do que hoje, usando programas desse tipo. Um aplicativo de Inteligncia Articial que j est comeando a e a a c fazer sucesso o softbotou agente inteligente, um software e que navega em sites espec cos na Internet para colher dados de uma certa natureza. Por exemplo, os softbots do site MySimon so capazes de buscar um determinado item que voc queira coma e prar, em centenas de sites de mercadores on-line, e volta com os preos. No Brasil j existe a srie de mineradores automticos de c a e a dadosna UOL. Tem o PeopleMiner, o BookMiner, o DoctorMiner, o CDMiner, e muitos outros. A tendncia de personalizar os e sites tambm vai utilizar muitos recursos de Inteligncia Articial, e e 43

assim como os sites de monitorao ativa dos hbitos de navegao ca a ca e de consumo. O cu o limite quando se trata de fazer convergir e e vrias tecnologias de Informtica, tais como multim a a dia, hipertexto, Inteligncia Articial, bancos de dados, etc. e

4.2

A Arquitetura do Cache Plugins

Cache Plugins so programas normalmente executados de maneira a distribu em micros interligados com conexes de alta velocidade da o a um servidor cache.A implementao da arquitetura de cache pluca gins utiliza conceitos de Inteligncia Articial Distribu e da, onde SE so implementados para resoluo distribu de problemas a ca da (RDP) visando obteno de resultados mais ecientes e de melhor ca qualidade. Uma vez operacional, os plugins so capazes de realizar vrias das a a tarefas do servidor, com gerao de pginas seguindo um padro ca a a especicado ou a contabilizao de acessos.Desta forma, o uso de ca plugins faz com que a computao necessria para responder a ca a uma requisio seja distribu ca da, diminuindo a carga do servidor de busca, e dos canais de comunicao que chegam a ele, ja que o ca custao da operao minimizado com a distribuio do problema. ca e ca Quando chega uma requisio, o plugins a analisa e determina ca todos os objetos estticos (como baners, applets e outros dados) a necessrios para se gerar a resposta. Estes objetos so ento requia a a sitados ao servidor cache, que os trata com uma requisio normal: ca com aplicao de conceitos de Inteligncia Articial ele procura ca e uma cpia local, se esta for encontrada no cache, ela retornada; o e seno, o objeto esttico buscado do servidor remoto, enviana a e do ao plugin e armazenado localmente para atender a requisies co futuras. Aps receber todos os objetos estticos necessrios, o o a a plugin os combina de acordo as caracter sticas da busca sendo realizada, gerando a pgina que ser enviada como resposta ao a a servidor cache, que a repassa ao cliente. O plugin tambm pode ter outras funcionalidades, como coletas e e manter informaes sobre usurios e contabilizar o nmero de co a u acessos realizados a uma pgina ou o nmero de cliquesefetuados a u em um anncio, reportando esses dados ao servidor de busca peu riodicamente. Este processo totalmente transparente ao cliente, e e pode ser visualizado de maneira resumida na FiguraX . Os 44

nmeros mostrados na gura se referem `s seguintes atividades: u a i. O cliente requisita uma pgina dinmica ao servidor cache; a a ii. O servidor cache redireciona a requisio ao cache plugin; ca iii. O cache analisa a requisio e busca todos os objetos estticos ca a do servidor cache; iv. Caso ainda no estejam armazenados localmente, os objetos a estticos so buscados do servidor original; a a v. O plugin monta e envia ao servidor cache a resposta ` requia sio; ca vi. O servidor cache retorna essa pgina ao cliente; a vii. O cache plugin informa ao servidor o acesso e pode criar um canal de comunicao para buscar novas diretrizes de gerao ca ca de pginas. a Uma premissa importante para o funcionamento da arquitetura proposta que pginas dinmicas podem ser constru e a a das a partir de um certo conjunto de objetos estticos. Note que o plugin que a representa um determinado servidor deve ser fornecido pelos responsveis pelo mesmo servidor, de forma que o plugin implemente a os mecanismos de recuperao de objetos estticos necessrios e de ca a a combinao desses objetos. Todo o controle de consistncia da inca e formao presente nos objetos a partir dos quais o plugin compe ca o sua resposta pode ser feito pelo servidor de contedo, que deteru mina qual o tempo de expirao de cada um. Esta informao ca ca utilizada na determinao da validade de objetos presentes no e ca cache, que requisita cpias atualizadas ao servidor caso necessrio. o a O uso de cache plugins traz benef cios tanto para os provedores de contedo e de acesso, que tero reduzidas as suas cargas de prou a cessamento e nos canais de comunicao, quanto para os clientes, ca cujo tempo de resposta ser menor. Obviamente, o ganho obtido a com o uso de plugins depende da localidade de referncia existente e nas requisies submetidas. co A utilizao de caches plugins uma estratgia que objetiva melca e e horar a qualidade de servio de requisies a objetos gerados dic co namicamente na World Wide Web. Essa estratgia ilustrada e e pela integrao de mquinas de busca, servidores cache, conceitos ca a de IAD e processamento distribu do. Usando a arquitetura proposta, os resultados das buscas e o contedo de pginas dinmicas u a a podem ser efetivamente armazenados por servidores cache, o que no poss usando tecnologia atual. a e vel 45

Essa estratgia reduz tanto o tempo de resposta para o cliente e quanto a carga no servidor e na rede. A implementao de cache ca plugins possibilita tambm a contabilizao de nmeros de visitas e ca u a pginas e nmeros de acessos a pginas de anunciantes, at a u a e ento uma das maiores restries para resplicao de pginas de a co ca a contedo dinmico. u a

46

Cronograma

Atividade Data de concluso a Escrever as regras do dom nio de conhecimento conhecimento para a base do S.E. julho proposto e implement-la no a Expert SINTA e realizar os Agosto testes necessrios a Ser tambm constru um help para a base a e do de conhecimento atravs de uma e ferramenta de ajuda a ser denida Descrever sobre o seguinte tema em IAD: Melhorando a Qualidade de Servios de Busca na Internet c Editar o projeto atravs do e uso do editor LATEX. Elaborar a apresentao ca do projeto ` banca a Entrega do Projeto de Graduao ca

Setembro

Outubro Novembro 24 Nov 03 Dez

Tabela 5.1: Cronograma da monograa

47

Referncias Bibliogrcas e a
[BL76] K. S. Booth e G. S. Lueker. Testing for the consecutive ones property, interval graphs, and graph planarity using PQ-tree algorithms. Journal of Computer and System Sciences, 13:335379, 1976. [Gt98] S. M. Gtz. Communication-Ecient Parallel Algoo o rithms for Minimum Spanning Tree Computations. Tese de Doutoramento, Department of Mathematics and Computer Science - University of Paderborn - Alemanha, Maio 1998. [JaJ92] J. JaJa. An Introduction to Parallel Algorithms. AddisonWesley, 1992. [Ste97] M. A. Stefanes. Algoritmos e Implementaes Paralelas co para Florestas Geradoras Mnimas. Tese de Mestrado, In stituto de Matemtica e Estat a stica - USP - So Paulo/SP a - Brasil, Dezembro 1997. [Ste00] M. A. Stefanes. Algoritmos paralelos para modelo real sticos, Maro 2000. Qualicao de Doutorado - Instic ca tuto de Matemtica e Estat a stica - USP - So Paulo/SP a Brasil.

48

Você também pode gostar