Trabalho Conclusão E-comercio

80
! " # $ % &’())) ()))’*+,*

description

e-comerce

Transcript of Trabalho Conclusão E-comercio

UNIVERSIDADE REGIONAL DE BLUMENAUCENTRO DE CINCIAS EXATAS E NATURAISCURSO DE CINCIAS DA COMPUTAO(Bacharelado)PROTTIPO DE SISTEMA DE COMRCIO ELETRNICO PARA LIVRARIA VIRTUAL UTILIZANDO AGENTESINTELIGENTESTRABALHO DE CONCLUSO DE CURSO SUBMETDO UNVERSDADE REGONAL DE BLUMENAU PARA A OBTENO DOS CRDTOS NA DSCPLNA COM NOME EQUVALENTE NO CURSO DE CNCAS DA COMPUTAO BACHARELADOMARCELLO RIBEIRO TROVO FRAIZBLUMENAU, JUNHO/20002000/1-41- ii -PROTTIPO DE SISTEMA DE COMRCIO ELETRNICO PARA LIVRARIA VIRTUAL UTILIZANDO AGENTESINTELIGENTESMARCELLO RIBEIRO TROVO FRAIZESTE TRABALHO DE CONCLUSO DE CURSO, FO JULGADO ADEQUADO PARA OBTENO DOS CRDTOS NA DSCPLNA DE TRABALHO DE CONCLUSO DE CURSO OBRGATRA PARA OBTENO DO TTULO DE:BACHAREL EM CINCIAS DA COMPUTAOProf. Oscar Dalfovo Orientador na FURBProf.JosRoqueVoltolinidaSilvaCoordenadordo TCCBANCA EXAMINADORAProf. Oscar DalfovoProf. Roberto HeinzleProf. Maurcio Capobianco Lopes- iii -DEDICATRIA A minha esposa Soraya e ao meu Iilho Caio.- iv -AGRADECIMENTOSAos meus pais, Jose Fraiz e Sara Ribeiro Trovo Fraiz, que sempre me apoiaram e incentivaramnosmomentosmaisimportantesdaminhavida,mostrando-meexemplosde Iora e dedicao, e especialmente demostrando-me a importncia do saber.Aomeuorientador,proIessorOscarDalIovo,peloapoio,empenhoededicao dispensados, pois sem esta ajuda, no seria possivel concluir este trabalho.Aos proIessores do curso de Cincias da Computao da Universidade Regional de Blumenau, pelos ensinamentos e apoio na busca pelo conhecimento.Atodososmeusamigos,quecompreenderamminhaausncianesteperiodoto importante da minha vida.A Deus, que e o motivo maior de todas as realizaes.E, em especial, a Soraya Amora Fraiz por quem tenho admirao, e que tem estado ao meu lado em todos os momentos, sempre se mostrando companheira. E, especialmente, ao meu Iilho Caio, por quem tenho muito orgulho, e que com certeza soube compreender os momentos que privei de sua companhia em prol deste trabalho.- v -SUMRIODedicatoria............................................................................................................................ iiiAgradecimentos.................................................................................................................... ivLista de Iiguras .................................................................................................................... viiLista de Quadros................................................................................................................. viiiResumo................................................................................................................................. ixAbstract.................................................................................................................................. x1 Introduo........................................................................................................................... 11.1 Objetivo ........................................................................................................................... 31.2 Organizao do trabalho.................................................................................................. 32 Comercio eletrnico ........................................................................................................... 42.1 Comercio ......................................................................................................................... 42.2 DeIinio de comercio eletrnico.................................................................................... 52.3 InIra-estrutura necessaria para o comercio eletrnico..................................................... 62.3.1 Internet.......................................................................................................................... 82.3.2 Word Wide Web........................................................................................................... 82.4 O Comercio eletrnico no contexto atual ........................................................................ 92.5 Comercio eletrnico na Internet .................................................................................... 112.5.1 O que e uma loja virtual ............................................................................................. 122.5.2 Como Iunciona uma loja virtual ................................................................................. 122.5.3 Para que ramos de atividade as lojas virtuais so adequadas ..................................... 132.5.4 Como trabalham as livrarias virtuais.......................................................................... 132.6 A segurana e a privacidade no comercio eletrnico .................................................... 142.7 Tecnologias de segurana.............................................................................................. 153 Agentes Inteligentes ......................................................................................................... 173.1 Cenario de atuao dos agentes ..................................................................................... 193.2 Caracteristicas dos Agentes Inteligentes ....................................................................... 213.2.1 Agncia...................................................................................................................... 233.2.2 Inteligncia ................................................................................................................. 233.3 Aplicaes de Agentes Inteligentes............................................................................... 24- vi -3.4 Funcionamento dos agentes .......................................................................................... 273.4.1 Sistemas multiagentes ................................................................................................ 273.4.2 Comunicao .............................................................................................................. 283.5 Agentes e comercio eletrnico..................................................................................... 303.6 Mercados eletrnicos baseados em agentes .................................................................. 303.6.1 Auctionbot .................................................................................................................. 313.6.2 Kasbah ........................................................................................................................ 323.6.3 Tete-a-Tete ................................................................................................................. 343.6.4 Jango........................................................................................................................... 354 Desenvolvimento do prototipo ......................................................................................... 364.1 Tecnologias utilizadas no desenvolvimento................................................................. 364.1.1 Analise orientada a objetos......................................................................................... 364.1.2 Ferramentas de modelagem....................................................................................... 364.1.3 UMLUniIied Modeling Language ......................................................................... 384.1.4 Banco de dados........................................................................................................... 414.1.5 SQL Server................................................................................................................ 424.1.6 Ferramentas utilizadas............................................................................................... 444.1.6.1 Frontpage................................................................................................................. 444.1.6.2 ASP Active Server Pages..................................................................................... 444.1.6.3 Java.......................................................................................................................... 465 EspeciIicao do prototipo.............................................................................................. 485.2 Narrativa do problema.................................................................................................. 485.2.1 Casos de Uso............................................................................................................. 495.2.2 Diagrama de classes ................................................................................................... 515.2.3 Diagrama de interao............................................................................................... 525.3 Implementao do prototipo ......................................................................................... 535.4 Telas do prototipo......................................................................................................... 536 Concluso e extenso ....................................................................................................... 586.1 Concluso..................................................................................................................... 586.2 Limitao....................................................................................................................... 596.3 Extenso....................................................................................................................... 59ReIerncias BibliograIicas................................................................................................. 60Anexo I .............................................................................................................................. 63- vii -LISTA DE FIGURASFigura 1 - Modelo Integrado de comercio eletrnico composto de cinco camada.............. ..7Figura 2 - Categorias de agentesinteligentes ..................................................................... 17Figura 3 - Arquitetura basica de um agente......................................................................... 27Figura 4 - Comunicao entre agentes ................................................................................ 28Figura 5 - Ferramenta de modelagem Rational Rose .......................................................... 37Figura 6Diagrama de classe............................................................................................. 38Figura 7 - Diagrama de caso de uso .................................................................................... 39Figura 8 - Diagrama de seqncia ....................................................................................... 39Figura 9 - Ator ..................................................................................................................... 40Figura 10Classe.................................................................................................... 40Figura 11 - Caso de uso ............................................................................................ 40Figura 12 - Mensagem sincrona .......................................................................................... 40Figura 13Linha de vida.................................................................................................... 41Figura 14 - Modelo dos objetos ASP................................................................................... 45Figura 15 - Casos de uso ..................................................................................................... 49Figura 16 - Diagrama de classes.......................................................................................... 51Figura 17 - Diagrama de interao ...................................................................................... 52Figura 18Pagina de entrada ................................................................................... 53Figura 19 - Pagina de categorias ................................................................................ 54Figura 20 - Pagina de produtos............................................................................................ 54Figura 21Pagina do carrinho de compras ........................................................................ 55Figura 22 - Pagina de cadastro ............................................................................................ 55Figura 23 - Pagina de conIirmao...................................................................................... 56Figura 24Pagina de Iinal.................................................................................................. 57Figura 25 - Pagina de categorias (retorno) .......................................................................... 57- viii -LISTA DE QUADROSQuadro 1Categorias dos agentes inteligentes .................................................................. 20Quadro 2Arquivo Global.asa........................................................................................... 46Quadro 3 - Descrio dos casos de uso ............................................................................... 50- ix -RESUMOEstetrabalhotemporobjetivoutilizaratecnicadeAgentesInteligentesemum prototipodeumSistemadeComercioEletrnicoparaLivrariaVirtual,tornando-ocapaz dearmazenaraspreIernciasdocliente,oIerecendoaeleosprodutoseserviosque preIere,oudequeprecisa,avisandooclientedenovidadesquepossamlheinteressar.A aplicaopretendeajudarousuarioaselecionarlivros,combaseemsuaspreIerncias pessoais.OsagentesencontradosnestesistemautilizamIiltragem.Naanalisedomodelo IoramutilizadasalgumasetapasdametodologiaorientadaaobjetosUML,eparaa implementaoutilizou-seaIerramentadeprogramaoActiveServerPages -ASPea linguagem de programao Java. - x -ABSTRACTThis work has Ior objective to use the technique oI Intelligent Agents in a prototype oIaSystemoIElectronicTradeIorVirtualBookstore,turningitcapabletostorethe customer's preIerences, oIIering to him the products and services that users preIers, or that he needs, inIorming the customer oI innovations that you can interest him. The application intends to help the user to select books, with your personal preIerences. The agents Iound in thissystemtheyuseIiltration.IntheanalysisoIthemodelsomewereusedstagesoIthe methodologyguidedtoobjects-UML,andIortheimplementationtheprogrammingtool Active Server Pages was used - ASP and the programming language Java.- xi -1 INTRODUOAevoluoaceleradaqueaInternetagregaacadadiaquepassa,estacausando alteraesnocostumedaspessoas.Hojejaeumarealidadeastransaescomerciasna Internet. Muitos negocios esto sendo conduzidos eletronicamente e esteIenmeno ja esta sendochamadodeRevoluoDigitalouRevoluodaInIormao,Iatoestequeesta causando impacto comparavel com a Revoluo Industrial no seculo 19 (|CHE1998|).|CAM1997|deIinequecomercioeletrnicoincluiqualquernegociotransacionado eletronicamente, em que essas transaes ocorrem entre dois parceiros de negocio ou entre um negocio e seus clientes.Para |ALB1999| o comercio eletrnico e a realizao de toda a cadeia de valor dos processosdenegocionumambienteeletrnico,pormeiodaaplicaointensadas tecnologiasdecomunicaoedeinIormao,atendendoaosobjetivosdenegocio.Os processospodemserrealizadosdeIormacompletaouparcial,incluindoastransaes negocio-a-negocio,negocio-a-consumidoreintra-organizacional,numainIra-estrutura predominantemente publica de Iacil e livre acesso e baixo custo.ConIorme|BRE1998|atecnicadosAgentesInteligenteseumanovacategoriade IerramentasnasociedadeinIormatizada.ComoumaprimeiradeIinio,entende-seque Agentes Inteligentes podem ser programas que, de Iorma independente, executam partes de umatareIadentrodeumprocesso.Umagentedeveinteragircomomeioambientepara atingir seus objetivos. Ele deve ser capaz de coletar inIormaes e tomar decises baseadas nestas inIormaes.UmAgenterequerumaquantidadedeintelignciaparaexecutarsuastareIas.Um agentenointeligentepodeserconsideradoumprogramatradicional,porquesempre executaumatareIaespeciIicaemumdeterminadotempo.Apenasaintelignciapermite queumagenteexecuteumagrandetareIaautomaticamenteerequeiraaintervenodo usuarioapenasemdecisesimportantes.Umagentequenoecapazdeprocessar independentementeedeusolimitadoparaoseuusuario.Consequentemente,processos - xii -autnomos Iormam um importante criterio para Agentes Inteligentes, e e um dos principais diIerenciais entre Agentes Inteligentes e programas tradicionais (|BRE1998|). O comercio eletrnico pode ser auxiliado pelos Agentes Inteligentes. A operao de agentesemelhorexplicadausandoumexemploespeciIico.SeumaempresadecideIazer compras de seus materiais de escritorio pela Internet existe a capacidade de utilizar Agentes InteligentesparaexecutarestatareIa.Primeiro,ocompradordaempresapodeIazeruma pesquisaatravesdesitesdebusca,aIimdeencontrarempresasquecomercializemestes produtos. Numa segunda Iase ele deve visitar cada site parapesquisar o material e o preo. Umagenteinteligentepodeajudarareduzirsubstancialmenteotempogastoneste processo.Umagenteeiniciadoindependentementeecomeaapesquisaatravesdos requisitossolicitados,inIormandoaousuario,ainIormaoporelesolicitadadeIorma direta e objetiva (|HUH1997|).O presente trabalho de concluso de curso descreve um estudo sobre a utilizao da tecnicadeAgentesInteligentesqueculminoucomodesenvolvimentodeumprototipode um sistema de comercio eletrnico para livraria virtual, tornando-ocapaz de armazenar as preIernciasdocliente,oIerecendoaeleosprodutoseserviosquepreIere,oudeque precisa,eagirdemodopro-ativo,avisandooclientedenovidadesquelheinteresseme convidando-o a visitar a pagina. Aaplicaopretendeajudarousuarioaselecionarlivros,combaseemsuas preIerncias pessoais. Os agentes encontrados nestes sistemas utilizam Iiltragem, ou seja, o usuario possui agentes que memorizam quais livros ele possui e quanto o usuario gosta de cadaum.Entooagentecompara-oscomoutrosagentes.Umagenteencontraoutros agentesquesocorrelatos,istoe,agentesquetemvaloresparaitenssimilaresecujos valoressocorrelatosaosvaloresdesteagente.Osagentesaceitamrecomendaesde outros agentes.O sistema ira monitorar ereportar o comportamento do usuario, implementando um loopderealimentao,deIormaareceberumretornoquepermitiraaosistemaajustar-se dinmicaeautomaticamente.AIilosoIiabasicadosistemaecaptarasmudanasde comportamento do usuario e adaptar-se a elas.- xiii -1.1 OBJETIVOO objetivo principal do trabalho proposto e o desenvolvimento de um prototipo de Sistema de Comercio Eletrnico para Livraria Virtual utilizando Agentes Inteligentes. 1.2 ORGANIZAO DO TRABALHOO trabalho esta organizado em cinco capitulos. O primeiro Iornece uma introduo ao trabalho desenvolvido, bem como seus objetivos e sua organizao.OsegundocapituloIazumabreveintroduoaocomercioeletrnico,contendo,o conceito de comercio na sua Iorma tradicional, e as deIinies de comercio eletrnico, uma descriosobreainIraestruturanecessariaparaocomercioeletrnico,umrelatosobreo comercioeletrniconocontextoatualeocomercioeletrniconaInternet.Contemainda uma deIinio do que e uma loja virtual, aonde encontrar, como Iunciona, para que ramos deatividadesoadequadasecomotrabalhamaslivrariasvirtuais.Nocapitulodoisainda temumadeIiniosobreseguranaeprivacidadenocomercioeletrnicoeastecnologias de segurana.O capitulo trs Iaz uma breve exposio sobre adeIinio de AgentesInteligentes, abordandooscenariosdeatuaodosagentes,suascaracteristicaseumcomentariosobre aspossiveisaplicaesdosagentes,oIuncionamentodosagentes,sistemasmultiagentes, comunicaoentreagentes,umrelatosobreagentesecomercioeletrnicoeporIimuma demonstrao de mercados baseados em agentes.Aanalisedosistemaencontra-senocapituloquatroecinco,comumadescrio mais completa do objetivo do prototipo com a descrio da implementao do prototipo. Nosextocapituloestaaconclusodotrabalhoondehaumcomentariosobreos objetivosatingidos,autilizaodeAgentesInteligentesnocomercioeletrnicoeuma reIlexo para trabalhos Iuturos.- xiv -2. COMRCIO ELETRNICO2.1 COMRCIONaidademediaastransaescomerciaiseramIeitasatravesdatrocade mercadoriasdentrodosIeudos.AIaltademoedasdecirculaogeraldiIicultavamo comercio entre os Ieudos vizinhos. Basicamente havia a troca de um produto por outro de valor equivalente. Porem este sistema no se mostrou eIiciente, pois havia a diIiculdade de encontrar produtos equivalentes em seu valor.ComaevoluodosnegocioseranecessarioencontraroutraIormaderealizara troca das mercadorias sem que houvesse diIiculdade de mantera equivalncia dos valores agregadosaosprodutos.NoiniciodaRevoluoComercial,porvoltade1400,Ioram introduzidasmoedascomooducadovenezianoeoIlorimtoscano.Aevoluonos negociosocorreuapartirdaRevoluoComercial.EstaRevoluodeslocouasbasesdo comercio do plano local e regional da Idade Media para a escala mundial que desde ento o tem caracterizado (|BUR1983|).|DRU1995|declaraqueocomerciodemercadoriasnoemaisaquiloquetodos supem,inclusiveoseconomistas.Eleestadeixandodeseruma'transao,queeuma venda ou compra de bens, para ser um 'relacionamento. O comercio e mais do que apenas atrocadeumprodutoouserviopordinheiro.Eleincluipesquisa,desenvolvimento, marketing,propaganda,negociao,vendasesuporte,ouseja,aprenderaconheceras necessidades dos clientes e adaptar-se a elas. HojejaeumarealidadeastransaescomerciaspelaInternet.Muitosnegocios estosendoconduzidoseletronicamenteeesteIenmenojaestasendochamadode RevoluoDigitalouRevoluodaInIormao,Iatoestequeestacausandoimpacto comparavel com a Revoluo Industrial no seculo 19 (|CHE1998|).AntesdoadventodaInternet,osnegocioseramIeitosatravesdetrsdiIerentes canais:pessoalmente,naqualapessoavaiateumalojaIisicanaqualescolheoproduto, eIetuaopagamentoenamaioriadasvezespodelevaroprodutocompradonahora;pelo - xv -correio, onde o comprador escolhe o produto atraves de um catalogo enviado pela empresa, remete o pedido pelocorreioe recebe o produtoatraves deste canal; e pelo teleIone, mais conhecidotradicionalmentecomotelemarketingquereIere-seaoprocessodeseIazer chamadasteleInicasaIimdedivulgarevenderprodutos.Atualmente,umquartocanal esta emergindo: a propria Internet atuando mais especiIicamente no comercio eletrnico. 2.2 DEFINIO DE COMRCIO ELETRNICOSegundo|CAM1997|comercioeletrnicoincluiqualquernegociotransacionado eletronicamente, em que essas transaes ocorrem entre dois parceiros de negocio ou entre umnegocioeseusclientes.OsnegociospodemocorrerentreumaempresaIornecedorae umaempresacliente,deIormaeletrnica,oudiretamentedaempresaIornecedoraao consumidor Iinal.De acordo com |ALB1999| o comercio eletrnico e a realizao de toda a cadeia de valor dos processos de negocio num ambiente eletrnico, por meio da aplicao intensa das tecnologiasdecomunicaoedeinIormao,atendendoaosobjetivosdenegocio.Os processopodemserrealizadosdeIormacompletaouparcial,incluindoastransaes (business-to-business)negocio-a-negocio,intra-organizacionale(business-to-consumer) negocio-a-consumidor,numainIra-estruturapredominantementepublicadeIacilelivre acesso e baixo custo.a) negocio-a-negocio:noambienteentreorganizaes.Asempresaspodem melhorarasrelaesinterorganizacionais,estabelecendoparceriasbaseadasem EDI- EletronicDataInterchange-(trocaeletrnicadedados)comseus clienteseIornecedores,permitindoqueasempresasdesempenhemtransaes com seus parceiros mais eIetivamente, notadamente pela reduo do volume de papelnecessarioemcadaetapadastransaescomopedidos,Iaturase pagamentos.b) intra-organizacional: noambienteinternodasorganizaes.AIinalidadedas aplicaesintra-organizacionaiseajudarumaempresaamanter relacionamentos que so criticos para entrega de valor ao cliente. Isto e possivel pormeiodaintegraodevariasIunesnumaorganizao.Naperspectiva - xvi -intra-organizacionalocomercioeletrnicopretendeIacilitarasaplicaesde negociotaiscomo,comunicaesdegrupodetrabalhoepublicaoeletrnica entre outras.c) negocio-a-consumidor: Noambienteentreorganizaeseconsumidores.O clienteIinalouconsumidorequemcompraosprodutosouosserviosda empresa.IssoreIere-seprincipalmenteaocomerciodevarejo.Astransaes negocio-a-consumidoreletronicamenteexecutadaspretendeminIormaros consumidoressobreprodutos,oIerecer-lhesapossibilidadedecomprae pagamentoon-lineedeIormasegura,etambemoIerecerinIormaesde mercadoriasentreguesdeIormaeletrnica.Estetrabalhovisaexplorar especiIicamente as transaes realizadas negocio-a-consumidor. 2.3 INFRA-ESTRUTURA NECESSRIA PARA O COMRCIO ELETRNICO|ALB1999| prope um modelo integrado de comercio eletrnico composto de cinco camadas, so elas:a) politicaseregraspublicas:aspoliticaseasregraspublicasestorelacionadas comaspectoslegais,regulamentaodossetoresemercados,dasnormas oIiciais, etc.b) politicas e padres tecnicos: politicas e padres tecnicos esto relacionados com aspectos de padronizao para a compatibilizao dos componentes do ambiente tecnico, politicas de tratamento e comunicao de inIormaes, interIaces, etc.c) inIoviapublica:ainIoviapublicaearedeIormadatantopelaredemundial Internet como pelos servios on-line que tenham ligaes com esta, sendo que a nIaseenoacessolivreedebaixocusto,enaintegraoentreosvarios ambientes sem nenhuma restrio, incluindo desde os terminais mais simples de acesso,atemeiosdecomunicaomaissoIisticadosparagrandesvolumesde inIormaes.d) aplicaeseserviosgenericos:asaplicaeseosserviosgenericosso aqueles oIerecidos pelo ambiente, por meio de seus provedores, servios on-line - xvii -eIornecedores,disponiveisatodos,taiscomocorreioeletrnico,transIerncia de arquivos, salas virtuais, algoritmos e softwares de criptograIia etc.e) aplicaesdecomercioeletrnico:asaplicaesdecomercioeletrnicosoas desenvolvidas com base nas camadas anteriores que atendam as necessidades de uma organizao ou grupo delas, tais como home banking, video sob demanda, lojas virtuais etc.Figura 1. Modelo Integrado de comrcio eletrnico composto de cinco camadasFonte: Adaptado de ALB1999]Asetadeduasdirees,queuneascamadas,conIormeIigura1,determinaa inIlunciaque cada camada exerce sobre as demais, bem como a inIluncia recebida. Essa inIlunciaincluiqueumacamada,porumlado,estalimitadapelasrestriesimpostas pelasoutras,assimcomolimitaasdemais.Poroutrolado,umacamadagarantequeas outraspossamexistireIorneceabaseeosrecursosparaqueasdemaispossam desenvolver-se.Finalmente,cadacamadatendeaexigiraadequaoeevoluodas demais,deacordocomsuapropriaevoluo,necessidadeseoportunidadesoIerecidasao ambienteexterno.AsquatroprimeirascamadaspodemserconsideradascomoainIra-estrutura do comercio eletrnico.- xviii -2.3.1 NTERNETAInternetnasceucomoumprojetodoDepartamentodeDeIesanorte-americano desenvolvidopelaAdvancedResearchProjectsAgency(ARPA)e,porisso,recebeuo nome de ARPANET. A arquitetura da ARPANET Ioi desenvolvida de 1959 a 1969 e tinha comoobjetivoprincipalIornecerumsistemadecomunicaesdecomputadordistribuido quepoderiasobreviveraumataque,deIormaque,mesmoseumapartedosistemaIosse perdida, o resto da rede poderia continuar Iuncionando. Nos anos 1970, as universidades e outrasinstituiesqueIaziamtrabalhosrelativosadeIesativerampermissoparase conectar a ARPANET. Em 1975 existiam aproximadamente 100 sites.OmodeloInternetconsistedevarioselementostaiscomo,WAIS(widearea informatonservice)umsistemacliente/servidorquepermiteusuariospesquisarembase dedadosviaumasimplesinterIace;GOPHERumbrowser(navegador)epacotede pesquisa que ajuda usuarios a localizar e recuperar textos; e FTP e TELNET sites, os quais gerenciama transIerncia de arquivos e capacidade de conexo remota, respectivamente. A maioriadessesrecursossobaseadosemtextos,emboraaWEB,umdoselementosda Internet, suportar conteudos multimidia(|CAS1999|). 2.3.2 WORLD WDE WEBA WWW (WorldWide Web) tambem chamada deWeb e considerada uma coleo dedocumentosdistribuidos,reIeridoscomopaginas,localizadosemcomputadores (denomindadosdeservidores)emtodoomundo.Osservidoresarmazenamarquivosem HTML(hvpertextmarkuplanguage)erespondemasolicitaes.AWebeaparteda Internetquetemcrescidomaisrapidamente.AsoutrasduaspartesdaarquiteturaWWW so: HTTP (hvpertext transfer protocol) o protocolo de comunicao entre os servidores e browser da WWW; e o CGI (common gatewav interface), interIace para invocar programas dosservidoresdaWWW.CabemencionarquealinguagemJavaestasetornandomuito popular no desenvolvimento de aplicaes da WWW (|CAS1999|). - xix -2.4 O COMRCIO ELETRNICO NO CONTEXTO ATUAL ApopularidadedaInternetedaWWWaumentouIortementeaimportnciaea necessidadedoComercioEletrnico.Contudo,esteaindanodesenvolveutodooseu potencialnaredeIiniodomercadonoqualprodutoseserviossotransacionados. Algumasdasrazesqueestonaorigemdesteatrasosooshabitosdecomprados consumidores,aconIianaeseguranadastransaeseoIatodeestar-senapresenade modelos de mercado novos e portanto incertos. Apesar de alguns destes problemas estarem sendoabordadosporgovernos,pelaindustriaeporinstituiesdepesquisa,haainda poucos procedimentos padres adotados, o que diIiculta a sua resoluo. OprocessotradicionaldecomprarequerdoconsumidorumgrandeesIoro, incluindoaprocuradevendedoresparaoprodutopretendido(porexemplo,pelaconsulta decatalogos),acomparaodepreoseoutrascaracteristicasdoprodutoentreos vendedores disponiveis e, depois da deciso estar tomada, a troca de dinheiro pelo produto,atraves de um canal acordado e idealmente seguro (|MAE1998|).HacadavezmaisempresascomsitesnaWeb,possibilitandoaosconsumidores comprar via Internet. No entanto, a maioria destes sites no alterou radicalmente a Iorma de comprar,consistindomuitasvezesemverseson-linedeamostrasoucatalogosde produtos,comcapacidadesdesenvolvidasdepesquisa.Algunsdelespossibilitama pesquisadeprodutosatravesdaprocuradepalavras,outrosorganizamosprodutospor categorias,outrospossuemaindamecanismosmaisavanadosdepesquisa.Tambem reIeridoscomositesdeanunciosclassiIicados,elesajudamosusuariosaencontrar anunciosdeprodutosdoseuinteresse,oqueconstituiapenasumpassodoprocessode compra. Tem-secontudoveriIicadoumaumentosigniIicativodovolumedetransaes concretizadas via Internet, atraves de um numero crescente de sites que permitem a compra direta por pagamento eletrnicos. Ocomercioeletrnicoenvolvemaisdoqueasimplespesquisadeprodutos expostosemamostrasoucatalogosvirtuaiseacomparaodepreos.Englobaa - xx -automatizaodanegociaoentrecompradoresevendedores,comvistaaencontrarum acordoquantoaopreoeoutrostermosdatransao.Tratatambemdaencomendade produtos e do pagamento eletrnico. Aglobalizaodomercadoestaquestionandoaposturatradicionaldosvarejistas Irenteaosclientes.Estesultimostmatualmenteaoseualcance,umgrandenumerode canais,Iisicamenteremotos.AdescobertadecanaiscomoaInternetaIetatodosos varejistas,independentementedasuaimagemdemarcaoudasuadimenso.Comvistaa exploraraomaximoopotencialdomercadonaInternet,osvendedoreson-linedevem reorganizarradicalmenteasuapoliticademarketing.Oenvolvimentomaisativodo consumidor no processo de compra deve ser utilizado para criar novos produtos, bem como para desenvolver novas estrategias de marketing. Muitos varejistas criaram ja o seu site na Web, disponibilizando aos usuarios inIormao sobre a localizao de lojas, promoes de venda, oportunidades de emprego e amostras de produtos. No entanto, o problema principal e que, muitas vezes, torna-se diIicil encontrar a inIormao especiIica que e necessaria num determinado momento, para um determinado usuario. Os varejistas na Internet enIrentam outro tipo de problemas no comercio eletrnico, dadoqueaInternetaindanodesenvolveutodooseupotencial.Osprincipaisobstaculos so a segurana das transaes, a abundncia de inIormao no estruturada e muitas vezes irrelevanteeaIaltadeinIormaohierarquizada.HaalgunsesIorosnosentidode estabelecerprocessospadresnaIormacomodecorremastransaes,visandoaomesmo tempoaumentaraseguranadasmesmas.AIaltadeinIormaoestruturadanaInternet aIastapossiveisconsumidores.Emborahajatecnologiasimplementadasquepermitem IiltrarainIormaorelevanteedisponibilizarrecomendaessobreprodutos,estasno IoramintegradasnumainIra-estruturadecomercioeletrnico,oquepoderiaabstrairo usuario de alguns problemas relacionados com o excesso de inIormao. Ovarejo,hoje,podeserdescritocomoumacompetioentrevendedorespela preIerncia do cliente. Portanto, a relao que um vendedor deseja manter com os clientes e cooperativaealongoprazo,procurandomaximizarasuasatisIao.Istoaumentaa probabilidadedenovascompraseaaquisiodenovosclientesatravesdeumaboa - xxi -reputao. As novas tecnologias iro alterar radicalmente o comercio varejista. Atualmente ja existem novos sistemas, baseados em agentes, que reduzem os custos de transao entre vendedoreseconsumidores,equeajudamosvendedoresaaumentarassuasvendas.O acesso a sites comerciais Iaz-se de uma Iorma cada vez mais rapida e automatica atraves de agentespesquisadores,oquetornaacompetioentrevendedoresmaiscritica.Contudo, algumas caracteristicas do comercio varejista no mudaro. Os consumidores iro continuar apreIerirosvendedoresquemelhorsatisIaamassuasnecessidades,eestescontinuaro desejar manter uma relao duradoura com os clientes.Tem-seespeculadosobreopapeldosintermediariosnosmercadoson-line.Ha quem acredite que tero tendncia a desaparecer, a medida que as tecnologias substituem o seu trabalho (reduzindo custos de transao) e que os produtores vendero diretamente aos consumidores(|MAE1998|).Noentanto,nocontextoatual,todosostradicionais interlocutorescomerciaistmpossibilidadedeestarpresentes,comvantagem,nonovo ambiente de negocio proporcionado pelo comercio eletrnico.2.5 COMRCIO ELETRNICO NA INTERNETOcomercioeletrnicotmsidodesenvolvidogradativamentenasultimasdecadas. OEletronic Data Interchange -EDI (troca eletrnica de dados) tem sido usado por grandes corporaeseseusIornecedoresporvariosanos.OsAutomaticTellerMachime-ATM(caixaseletrnicosdebancos)tambemsoumaIormadecomercioeletrnicoevarios outrosexemplospodemsercitados.Asantigasimplementaes,contudo,operavamem redes privadas. O tipo mais comum de comercio eletrnico atualmente e atraves da Internet, umaredeabertaepublica.AInternetestamudandoocaminhopeloqualosnegociosso conduzidos.Novasempresaspodemimediatamenteacessararedeedisponibilizarseus produtose/ouserviosaosconsumidoresempotencial,eaInternetestaIacilitandonovos tiposdetransaescomerciais.Umdossetoresnosquaisocomercioeletrnicopela Internet aplicam-se so as livrarias; que e o tema deste trabalho (|CAS1999|). Ocomercioeletrnicoestaprovocandoumaverdadeirarevoluonasrelaes varejistas, mas apenas 2 dos usuarios esto utilizando-o atualmente. A previso e que os - xxii -negocioscomcomercioeletrnicodevamatingirUS$8,3bilhesem2003somentena AmericaLatinaeaprevisoequeultrapasseosUS$184bilhesem2004nosEstados Unidos (|BEN2000|).2.5.1 O QUE UMA LOJA VRTUAL?Deacordocom|YES1999|lojavirtualeumavitrinenoespaocibernetico,um lugarondeosclientespodemIazercomprasutilizandoseuscomputadoresdomesticose ondeoscomerciantespodemoIerecermercadoriaseserviosporumaIraodo investimento necessario em uma vitrine Iisica.UmalojavirtualexistenaquelaporodaInternetconhecidaporWWW(World WideWeb).Ousuariopodeacessarumalojavirtualinserindoseuendereonaredechamado de URL (universal resource locator)em umbrowser (navegador) qualquer. 2.5.2 COMO FUNCONA UMA LOJA VRTUAL?Tendo entrado na loja virtual, que via de regra estara aberta as 24 horas do dia e 365 diasdoano,essaexibiradiversasinIormaessobreaempresaeseuIuncionamento. Sempre havera uma sesso contendo os produtos comercializados. E comum encontrar um IormularioaserpreenchidocontendoinIormaessobresuaIormadepagamentoaposa realizaodeumacompraqualquer.ParagarantiratransIernciadessasinIormaescom segurana uma loja virtual deve oIerecer proteo das transaes on-line.O comercio eletrnico eum Iato real e esta em processo de crescimento. Uma loja virtualdeveoIerecervantagensevidentesaosconsumidoresaIimdeobtersucessoe coexistircomoseucorrespondentenomundoreal.Portanto,todasaspremissasqueo comerciotradicionalexigedevemestarcontidasnocomercioeletrnico,taiscomo, produtosexclusivos,estoqueminimo,preocompetitivo,entregarapida,atendimentoao consumidor, processo de venda, etc, porem, o mais importante e reconhecer que o processo de vendas pelaInternetdeve ser motivador e deve, em ultima instncia,simpliIicar a vida do consumidor.- xxiii -Alguns problemas surgiram no mundo das transaes eletrnicas. A proteo legal e certamente uma delas, especialmente onde ocorrem transaes internacionais. Privacidade, segurana,epadronizaodosprotocolosqueaIetamosnegociossooutrasareasque requerem Iuturos aprimoramentos.2.5.3 PARA QUE ramos de atividade AS LOJAS VRTUAS SO ADEQUADAS?TrscategoriasdeatividadesjaestonaInternetcomexemplosreaisdelojas virtuais que obtiveram sucesso no comercio eletrnico. Na categoria de 'bens de consumo duraveis esto os setores de vestuario, equipamentos de inIormatica, pacotes de software, material eletrnico, livros e etc. Os bits entregues on-line Iormam a categoria dos 'bens de consumo volateis na qual esto a InIormao (banco de dados, publicidade, pesquisa, etc.) eSoftware(jogosdecomputador,aplicativosJava,softwaresdeaplicao,etc.).Epor ultimoacategoriados'Serviosondeseencontramosjogoson-line,consultoria, conselhos medicos e legais, que podem ser cobrados por hora; ou os setores de servios que podemsercobradosporassinaturacomoeocasodosserviosdeencontros;eaindana categoria dos servios enquadram-se as reservas de passagens aereas, hoteis e restaurantes e a compra de ingressos para espetaculos, eventos e etc.(|INF2000|).2.5.4 COMO TRABALHAM AS LVRARAS VRTUAS?Uma livraria virtual deve oIerecer servios editoriais que possibilitem aspessoas a procurarlivrossegundoumgneroespeciIico.UmavezqueaInternetsecaracterizapor um ambiente orientado a inIormao, e desejavel que uma livraria virtual esteja preparada para responder as perguntas e para Iornecer inIormaes adicionais aos seus clientes. Para encerrar o ciclo completo da transao, a livraria virtual deve implementar alguma Iorma de receber os pedidos e pagamentos de Iorma on-line. As entregas dos livros so Ieitas atraves dos meios tradicionais de deliverv (entrega) (|YES1999|).- xxiv -2.6 A SEGURANA E A PRIVACIDADE NO COMRCIO ELETRNICO OcomercioeletrnicopodeserobjetodevariasIormasdeIraude,roubo,ema conduta. Segurana e talvez a maior preocupao para quem gerencia ou utiliza um site de comercio eletrnico. As solues esto Iocadas nas tecnicas de criptograIia. CriptograIia e usadoparamensagens,transaes,numerosdecartesdecredito,protocolosde pagamentos,eassinaturasdigitais.OalgoritmoespeciIicoparacriptograIiaeusualmente baseado sobre um sistema de chave publica (|CAS1999|).Umoutroproblemagravecomocomercioeletrnico,segundo|ALB1999|e proteger a privacidade das inIormaes pessoais. Por exemplo, a segurana a um servidor, ondemetodosdevemserimplementadosparagarantirquesomenteusuarioseprogramas validos tenham autorizao de acesso a recursos de inIormaes, tais como bases de dados. Mecanismosdecontroledeacessoprecisamserestabelecidosparaassegurarqueos usuariosautenticadosapropriadamenteteroacessoasomenteaquelesrecursosaqueso autorizados.Taismecanismosincluemproteodesenha,cartesinteligentes criptograIados e firewall(barreira de segurana). AlgunstermosdeseguranaenvolvidosnocomercioeletrnicoconIorme |ALB1999| so:a) autenticao: eatecnicaquepermiteconhecereconIirmarasidentidadesdas partes que se comunicam.b) bloqueio: e o poder de bloquear inIormaes no desejadas ou acesso a pessoas no autorizadas.c) conIiabilidade: assegurar que os sistemas iro ter um desempenho consistente e um nivel aceitavel de qualidade.d) criptograIia: tornarainIormaoindeciIravel,excetoparaaquelesque conhecem o algoritmo e/ou a chave de decodiIicao.e) Iirewall: e um hardware/software que serve como Iiltro entre a rede corporativa eaInternetquemantemaredecorporativaseguracontraintrusosouacessos indevidos.I) integridade: assegurar que as inIormaes armazenadas e transmitidas no sero - xxv -alteradas ou destruidas, maliciosa ou acidentalmente.g) privacidade: e o poder de controlar quem v (ou no pode ver) as inIormaes e sob quais termos.Deacordocom|CAR2000|algunscuidadosdevemserseguidosnomomentoda transaocomercialpelaInternet.AntesdeeIetuaracompraousuariodevebuscar inIormaessobreaempresa,checarseamesmapossuiendereoIisico,analisarsea empresa utiliza metodos seguros para criptograIar inIormaes e, comoem toda transao comercial, utilizar bom senso nas primeiras compras para conhecer o Iornecedor.2.7 TECNOLOGIAS DE SEGURANA ConIorme|SEI2000|,notempodoimperadorJulioCesar,quandoerapreciso enviarumamensagemsecretaparatropasdistantes,ometododecriptograIiausadoeraa mensagemciIrada.Porexemplo,usando-sealetraGparaserachave,todasasletrasdo alIabetomudavamseiscasasdeposio,ouseja,AviravaG,BviravaHeassim sucessivamente,logoamensagem'ataquemaGaliaaposserciIradaIicaria'gzgwaksg mgrog, usando-se a letra G como chave e a transposio das letras como algoritmo.Atualmente,devidoaoavanodacomputao,umachavetosimplesassimno basta. Em vez disso, so usadas chaves com pelo menos 56 bits ou mais, e algoritmos mais complexosparacriptograIarmensagensbaseadasemIunesdehash.Paraqueessa tecnologia seja utilizada, tanto o transmissor da mensagem como o receptor deve conhecer a chave e o algoritmo de criptograIia. Isso cria um problema, pois essas duas inIormaes chaveealgoritmoprecisamsertransmitidasemaberto,podendocairemmoserradas. Alemdisso,nohamaneiradesabersequemenviouamensagemerealmenteo transmissororiginaloualgumimpostor.EssaIalhaeconhecidacomoproblemade autenticao.Pararesolveressesproblemas,asoluoencontradaeousodechavespublicase chavesprivadas,queutilizam-sedeumatecnicamatematicaquegera,aomesmotempo, uma chave privadae a correspondente chave publica. Achave publica pode ser divulgada - xxvi -paratodomundo,enquantoachaveprivadaesecreta.UmamensagemcriptograIada utilizando-se de chave publica so pode ser lida conhecendo-se a chave privada.Mesmoassim,aindarestaoproblemadaautenticao,quepodeserresolvido utilizando uma assinatura digital. Como a assinatura digital depende da mensagem que Ioi assinada,seamensagemIormodiIicada,aassinaturasetornarainvalida.Cadaassinatura corresponde a um unico texto e no pode ser anexada a outro texto.O sistema de chaves publicas so Iunciona se houver uma instituio conIiavel onde sepossamobteressaschaves.AtualmenteasinstituiesconIiaveisparaseobteruma chave publica so: JeriSign, GTE, U.S Postal Service e Deutsche Telekom (|SEI2000|). Para|YES1999|omodelodetransaeseletrnicassegurasSecureEletronic Transactions (SET) e um protocolo para transIerncia de pagamentos que mais crescem. O SETestabeleceumpadrotecnicounicoparaprotegerascomprascompagamentoem carto realizadas na Internet. O SET e baseado na tecnologia RSA Data Securitv. O RSA e umsistemadecriptograIiadechavepublicaparacriptograIiaeautenticaocriadoem 1977 por Ron Rivest, Adi Shamir eLeonardo Adleman. O sistema de RSA utiliza um par casadodechavesdecriptograIiaedecriptograIia,cadaumadesempenhandouma transIormaodeumadireodosdados.Osdetalhesmatematicosdoalgoritmousadona obtenodaschavespublicaseprivadaspodemserencontradosnositedaRSA (|RSA2000|).OutroprotocolomuitoutilizadoeoSecureSocketsLaver(SSL) queesto incorporadosnossoftwaresdenavegaodaWWW,quesoutilizadosparaestabelecer ligaesseguras.OSSLIoicriadopelaNetscapeparagerenciamentoeseguranade mensagens transmitidas pela Internet. Utiliza-se de chaves publicas e privadas e do sistema decriptograIiadaRSA.ANetscapetemoIerecidooSSLparasetornarumprotocolo padro para a WWW e para a Internet Engineering Task Force (IETF) como um padro de seguranaapropriadoparaWeb browsers(programasnavegadores)eservidores (|YES1999|).- xxvii -3. AGENTES INTELIGENTESSegundo |BRE1998| no e possivel ainda aceitar um conceito generico de Agentes Inteligentes.Istoestaevidenciadopelacaracteristicainterdisciplinardosagentes,noqual uma corrente esta sujeita aos eIeitos de diIerentes areas cientiIicas e, outra corrente reIlete a demandarequeridadasaplicaespraticas.Seexisteaproximaodaareadeagentes Iundamentalmente na direo da Inteligncia ArtiIicial, ha diIerentes criterios daqueles que vemainIormaoecomunicaodesistemas.Similarmente,ademandadecientistas sociais e diIerente daqueles mais orientados a observaes tecnicas Ieitaspor cientistas da computao.Porestemotivo,osdiIerentesobjetivosdetodasareascientiIicasdevemser analisadosecombinadoscomademandadeaplicaespraticasparaIormarumgrupo consistente e ento arquitetar uma deIinio apropriada de Agentes Inteligentes.Figura 2: Categorias de agentesinteligentesFonte: Adaptado de BRE1998]- xxviii -ConIormeaIigura2,numnivelmaisalto,trscategoriasdeagentespodemserdistinguidas: Agenteshumanos,AgentesdeHardwareeAgentesdeSoftwares.Todosostiposde agentestememcomumoIatodequeelespossuemgrandeindependnciaparaexecutar tareIas em nome de seus contratantes ou usuarios, pelo seu conhecimento especializado ou que consiste de trabalhos de intensa repetio. Detalhando estas categorias de agentes tem-se:a)agenteshumanos:encontra-seagenteshumanostodososdias.Se,porexemplo, vocquerumroteirodeviagem,vocsolicitaaumagentedeviagemparaIaz-lo porvoc.Vocesperaqueelerealize,independentementeerapidamentetodasas tareIasrelativasaviagem.IstoincluitodasasinIormaessobreaspossibilidades daviagem.Porexemplo,companhiasaereas,componentesdeviagem,a identiIicaodasmelhorescidadesaseremvisitadas,eIinalmenteaproduode um completo roteiro de viagem. O trabalho do agente no apenas requer a aquisio deconhecimentoespecializadosobreaviagem,mastambemconsomeum signiIicantetempo.SeesteconceitoetransIeridoparaocomputador,este imediatamente produz a principal tareIa do hardware e software agentes, que so os dois agentes seguintes, conIorme a Iigura 2.b)agentesdehardware:osagentesdehardwaresopopularmenteconhecidos comorobsealgunsconceitosqueaplicam-seaossoftwareagentespodemser igualmente aplicados a estes. c)agentesdesoftware:umagentedesoftwareediretamenteanalogoaoagente humano.ApenasumareaoparaainIormaoquecheganoenormalmente suIiciente para uma eIetiva interao com o ambiente. Uma comunicao direta com o usuario ou ainda a comunicao com outros objetos se Iaz necessario. Agentes de softwaresdevempossuircapacidadeapropriada,istoe,elesdevemteruma linguagemdecomunicaoesercapazdecooperarcomoutrosobjetos.Estee apenasumcaminhopararesolverproblemascomplexos.Seoaspectocentralda inteligncia e interao esto agora integrados nestas consideraes existentes, isto produzoseguinteentendimento:programasqueusamAgentesInteligentesso modelados como sendo um software que pode executar tareIas especiIicas para um - xxix -usuario e tambem pode adquirir inteligncia que permite a ele executar partes destas tareIas automaticamente e reagir com o ambiente de maneira util. Usando a analogia dosagenteshumanos,elesdevemexecutarastareIasparaseususuariosquepor IaltadetempooumesmoinsuIicinciadeconhecimentosobreotemanopossam executarsozinhos.Consequentemente,umareIernciaparaAgentesInteligentes. Umagentenointeligentepodeserconsideradoumprogramatradicional,porque sempreexecutaumatareIaespeciIicaemumdeterminadotempo.ApenasaintelignciapermitequeumagenteexecuteumagrandetareIaautomaticamentee requeiraaintervenodousuarioapenasemdecisesimportantes.Umagenteque noecapazdeprocessarindependentementeedeusolimitadoparaoseuusuario. Consequentemente,processosautnomosIormamumimportantecriteriopara Agentes Inteligentes, e e um dos principais diIerenciais entre Agentes Inteligentes e programas tradicionais |BRE1998|.Um agente deve interagir com o ambiente para alcanar seus objetivos. Ele deve ser capazdecapturarinIormaessobreesteambienteetomardecisesbaseadasnestas inIormaes, e ento iniciar processamento especiIico baseado nas decises.Determinaramultiplicidadedeposiesqueagentespodemassumir,equase impossivel e ate mesmo impraticavel, porem, uma analise dos possiveis cenarios de atuao dos agentes de software inteligente esta abaixo determinada. 3.1 CENRIOS DE ATUAO DOS AGENTESDeacordocom|BRE1998|trscenariosparaAgentesInteligentessodeIinidos. Dependendodaarea,pode-sediIerenciartrscategorias:AgentesdeInIormao,Agentes deCooperaoeAgentesInteligentesdeTransao.AprimeiratareIadeumagentede inIormao se concentra no suporte do seu usuario na procura por inIormaes em sistemas distribuidos ou em redes. O agente deve ser capaz de executar a seguintes tareIas: localizar aorigemdainIormao;extrairainIormaodaorigem;IiltrarasinIormaesmais relevantesdeacordocomoperIildousuario;preparareapresentaroresultadodeIorma adequada.- xxx -Um assistente e util para seu usuario apenas quando ele executa todos estes passos individualmente. Um agente de inIormao deve Iornecer todas as inIormaes disponiveis encontradas, devendo ser considerada a area de pesquisa e a semntica da inIormao.Agentesdecooperaotemoutraareaprincipal.SuaprincipaltareIaeresolver problemascomplexosusandocomunicaoecooperaocomoutrosobjetos,como agentes, pessoas ou recursos externos. Agentes de cooperao so usados apenas quando os problemas a serem resolvidos excedem a capacidade de um agente individual ou quando ja existem outros agentes com aqueles conhecimentos. A demanda por agentes de cooperao e maior que por puros agentes de inIormao, porque o desenvolvimento da estrategia parasoluo de problemas comuns e a cooperao com varios agentes e signiIicativamente mais complexa e menos prognosticaveis que tareIas de pura procura por inIormaes.Aterceiragrandeareadeaplicaodeagentesdesoftwaresencontra-seno ambiente de aplicaes orientadas a transaes. Na classica area de ambientes de banco de dadosenasareasdegerenciamentoderedeecomercioeletrnico,aprincipaltareIados AgentesInteligenteseoprocessamentoemonitoramentodastransaes.Agentesde transao so especialmente apropriados para estas tareIas. Segurana, proteo dos dados, conIianasoaspectosdecisivosnaconcepodeagentesdetransao.Cadaagente normalmenteoperaemmuitasareassensiveiserepresentamseuusuarioparatareIasde alto grau de responsabilidade, como por exemplo, em transaes usando cartes de credito. ComportamentoincorretoouperdadeinIormaesconIidenciaspodemtergraves conseqncias e isto no e aceitavel para agentes de transao (|BRE1998|).OcriteriodeclassiIicaodeumaareadeaplicaodentrodeumadastrs categoriasdeagentesdeinIormao,agentesdecooperaoeagentesdetransaoso baseadosnatareIacentral.Indica-sequeascaracteristicasdetodostrsagentesesto presentesemumaareadeaplicao.Contudo,seuprincipalusodeterminaaclassiIicao dentrodastrscategorias.AIigura3mostraareasdeaplicaoindividuaisesua classiIicao para as trs categorias.Quadro 1 - Categorias dos Agentes Inteligentes- xxxi -TareIa especiIica Area de aplicaoAgentes de inIormaoPesquisa de inIormao na WWWAtualizao automatica de noticias e softwares pela InternetAgentes de CooperaoGroupware (e-mail, sistemas de suporte a deciso e etc.)Gerenciamento de redes/TelecomunicaesAgentes de transaoComercio eletrnicoGerenciamento de processo de negociosFonte: Adaptado de BRE1998]3.2 CARACTERSTICAS DOS AGENTES INTELIGENTESEmvezdadeIinioIormal,haumalistadecaracteristicasgeraisdeagentes. Juntas,estascaracteristicasdoumaimpressoglobaldoqueeumagente(|PIE1997|), (|BRE1998|). a) autonomia:agentesoperamsemaintervenodiretadehumanosououtros,e tem algum tipo de controle em cima das suas aes e estado interno. Isto implica que um agente deve ter o acesso a rede e deve ter mobilidade para viajar por ela. AautonomiadeagentesestanahabilidadedeoperarnodominiodaInternet, enquanto o usuario Iinal esta desconectado ou longe da interao com a rede.b) habilidadedecomunicao:agentesinteragemcomoutrosagentese (possivelmente)oshumanosporalgumtipodeidiomadecomunicaode agentes; c) reatividade: agentes percebem o seu ambiente (que pode ser o mundo Iisico, um usuarioporumainterIacedeusuariograIica,umacoleodeoutrosagentes,aInternet,outalveztudoistocombinado),erespondeemummodooportunoa mudanasqueacontecem.Porexemplo,umagentequegasteamaiorpartede seu tempo em um tipo de Iase de espera (sleep) do qual se despertara atraves de mudanas em seu ambiente (como a chegada de e-mail novo); d) pro-atividade: agentes simplesmente no agem em resposta ao seu ambiente, eles podemexibircomportamentometa-dirigidotomandoainiciativasobre circunstncias especiIicas. Isto e chamado de comportamento pro-ativo;- xxxii -e) orientadores de meta: um agente e capaz de manipular tareIas complexas de alto-nivel. A deciso de como uma tareIa e melhor dividida em sub-tareIas menores, eemqualordemeemqualmodoestassub-tareIasdeveriamserexecutadas melhor, deveria ser Ieita pelo proprio agente; I) mobilidade:ahabilidadedeumagenteparamudardeumaredeeletrnicapara outra.Emcontraste,agentesestacionariosestolimitadosaumespeciIico computador.Emborasejacapazdeenviarmensagensusandoumaredeou contactar com outros agentes na rede, eles proprios no podem se deslocar sobre esta; g) colaborao: umaextensonaturaldoatributodecomunicaodosagentesea colaborao.AgentesInteligentesdevemterumespiritocolaborativopara existir.AvisoedequeAgentesInteligentestrabalhemjuntosparabeneIicio mutuo na resoluo de tareIas complexas; h) adaptabilidade:umagentedeveriapoderseajustarparaoshabitosedeveria trabalhar metodos e preIerncias de seu usuario. Agentes devem poder examinar o ambiente externo, por exemplo a WWW, e o sucesso das aes anteriormente executadassobcondiessemelhantes,eadaptarasaesparamelhorara probabilidade de alcanar as metas prosperamente; i) conIiabilidade:o usuario deve estar altamente conIiante que seus agentes agiro deacordocomasuavontade.Easuposioqueosagentesnotemmetas contraditorias, e que todo agente tentara sempre Iazer o que e requisitado;j) capacidade de raciocinar: a habilidade de raciocinar durante a execuo e um dos aspectoschavedaintelignciaquedistingueosAgentesInteligentesdeoutros agentes. Raciocinar implica que um agente pode possuir habilidade para deduzir e extrapolar, baseado em conhecimento atual e experincias anteriores. Existem 3 tipos basicos de cenarios de raciocinio: a) Baseadoemregras:ondeosagentesusamumconjuntodepre-condiesdo usuario para avaliar as condies no ambiente externo;b) Baseadoemconhecimento:ondesomandadasparaosagentesgrandes quantidades de dados sobre situaes anteriores e as aes resultantes, das quais eles deduzem os movimentos Iuturos;- xxxiii -c) BaseadonaevoluoartiIicial:utilizadealgoritmosgeneticosparasua evoluo. 3.2.1 Agncia O grau de autonomia e autoridade investido no agente, e chamado sua agncia. Pode ser medido qualitativamente, pelo menos pela natureza da interao, entre o agente e outras entidadesnosistemanoqualopera.Ograudeagnciaeaumentadoseumagente representa um usuario de algum modo. Este e um dos valores chaves de agentes. Um agente maisavanadopodeinteragircomoutrasentidadescomodados,aplicaes,ouservios. Mais adiante os agentes avanados colaboram e negociam com outros agentes (|BIG1998|). OqueexatamenteIazumagente'inteligenteealgoqueediIicildeIinir.Foio assunto de muitas discusses no campo de Inteligncia ArtiIicial, e uma resposta clara tem queaindaserachada.Ainda,umadeIinioaplicaveldoqueIazumagenteinteligentee determinada abaixo. 3.2.2 nteligncia ConIorme|BIG1998|intelignciaeograudocomportamentoracionale aprendizado, ou seja, a habilidade do agente para aceitar a declarao de metas do usuario e levar a cabo a tareIa delegada a ele.Nominimo,podehaveralgumadeclaraodepreIerncias,talveznaIormade regras,comumamaquinadeconclusooualgumoutromecanismoderazoparaagir nestas preIerncias.Niveismaisaltosdeintelignciaincluemummodelodeusuariooualgumaoutra Iorma de compreenso e argumentao sobre o que um usuario quer Iazer, e planejamento dos meios para alcanar esta meta.Na escala de inteligncia esto sistemas que aprendem e adaptam ao seu ambiente, ambos em termos dos objetivos do usuario, e em termos dos recursos disponiveis ao agente. Talsistemapode,comoumassistentehumano,descobrirrelaesnovas,conexes,ou - xxxiv -conceitosindependentementedousuariohumano,eexplorarestesseantecipandoe satisIazendo necessidades de usuario(|BIG1998|). 3.3 APLICAES DE AGENTES INTELIGENTESConIorme |BRE1998| so identiIicadas algumasareas de aplicao ondeagora, ou no Iuturo proximo, a tecnologia de agente podera ser usada:a) sistemas e administrao de redes: sistemas e administrao de redes e uma das maisnovasareasdeaplicaoaseraumentadasusandotecnologiadeagentes inteligentes.Aevoluodacomputaoparacliente/servidorintensiIicoua complexidadedesistemasquesoadministrados,especialmentenaareade LANs,ecomoredesdecomputaocentraisIicammaispredominantes,esta complexidadeaumentaprogressivamente.Usuariosnestaarea(principalmente osoperadoreseadministradoresdesistema)necessitamgrandiosamentede gerenciamentosimpliIicado,emIaceacomplexidadeascendente.Arquiteturas de agente existiram nos sistemas e area de administrao de rede durante algum tempo, mas estes agentes tinham, geralmente, uma Iuno mais 'Iixa do que os AgentesInteligentes.Porem,podemserusadososAgentesInteligentespara realar software de administrao de sistemas. Por exemplo, eles podem ajudar a Iiltrar e a executar aes automaticas a um nivel mais alto de abstrao, e podem ate mesmo serem usados para descobrir e reagir a padres de comportamento de sistema.Maisadiante,elespodemserusadosparaadministrarconIiguraes grandes dinamicamente ;b) acesso/administraomovel:comoacomputaosetornamaispenetranteeas redesdecomputadorescentraismudamoenIoquedodesktopparaarede,os usuariosqueremtermaismobilidade.Nosoelesqueremteracessoarecursos da rede de qualquer localizao, mas tambem querem ter acesso a esses recursos apesar de limitaes de bandwidth (tamanho da banda de rede) de mobilidade de tecnologiacomocomunicaosemIios,edesprezodavolatilidadedarede. AgentesInteligentesque(nestecaso)residemnaredeemlugardos computadorespessoaisdosusuarios,podemenviarestasnecessidadespor persistncia cumprindo os pedidos de usuario apesar de problemas da rede. Alem - xxxv -disso, agentes podem processar dados pela sua Ionte e enviar somente respostas compactadasparaousuario,emvezdesobrecarregararedecomquantias grandes de dados no processados; c) mailemessaging:softwaredemessaging(comoumsoftwareparae-mail),e umaareaondeaIunodeAgenteInteligenteestasendoatualmenteusada. Usuarioshojequeremahabilidadeparapriorizarautomaticamenteeorganizar seuse-mails,enoIuturo,elesgostariamdeIazeraindamaisautomaticamente, como enviar correio atraves de uma Iuno organizacional em vez de por pessoa. AgentesInteligentespodemIacilitartodasestasIunespermitindoqueregras demanuseiodecorreiosejamespeciIicadasdeantemo,edeixandoparaos Agentes Inteligentes operarem em nome do usuario de acordo com essas regras. Normalmentetambemepossivel(oupelomenossera)teragentesparadeduzir estasregrasobservandoocomportamentodeumusuarioetentandoachar padres nele; d) acessodeinIormaoeadministrao:acessodeinIormaoeadministraoe uma area de grande atividade, determinando a subida da popularidade da Internet eaexplosodedadosdisponivelausuarios.Aqui,osAgentesInteligentesno soestoajudandoosusuarioscomprocuraeIiltragem,mastambemcom categorizao,prioridade,disseminaoseletiva,anotao,e(colaboratividade) compartilhamento de inIormao e documentos;e) colaborao: colaborao e uma area de crescimento rapido na qual os usuarios trabalhamjuntoemdocumentoscompartilhadoseusamvideo-conIerncia pessoal,oucompartilhamrecursosadicionaispelarede.Umdenominador comumerecursoscompartilhados;umoutroetrabalhoemequipe.Ambosso dirigidos e apoiados pelo movimento da computao central da rede. No so os usuariosnestaareaprecisamdeumainIra-estruturaquepermitiraumIorte, compartilhamento de dados escalonavel e recursos computacionais, eles tambemprecisamdeoutrasIunesparalhesajudardeIatoaconstruireadministrar equipesdepessoascolaboradoras,eadministrarseusprodutosdetrabalho.Um do mais popular e a maioria dos exemplos ouvidos de tal aplicao e o pacote de groupware chamado Lotus Notes; - xxxvi -I) workflow(Iluxodetrabalho)egernciaadministrativa:gernciaadministrativa inclui administrao de workflow e areas como integrao computador/teleIonia ondesodeIinidosprocessoseentoautomatizado.Nestasareas,usuarios precisam no so Iazer processos mais eIiciente,mas tambem reduzir ocusto de agenteshumanos.Tantonaareademessaging,AgentesInteligentespodemser usados para averiguar, e ento automatizar o que o usuario deseja, ou processos empresariais;g) interIacesdeusuarioadaptaveis:emboraainterIacedeusuariotenhasido transIormadapeloadventodeinterIacesgraIicasaousuario(GraphicalUserInterfaces -GUIs),paramuitos,oscomputadorespermanecemdiIiceisde aprender e usar. Como a capacidade de aplicaesmelhores para computadores, as interIaces de usuarios precisam acomodar o aumento da complexidade. Como populaesdeusuarioscrescemediversiIicam-se,interIacesdecomputador precisamaprenderhabitosepreIernciasdosusuarioseadaptar-seaos individuos.AgentesInteligentes(chamadosagentesdeinterIace)podemajudar ambososproblemas.AtecnologiadeAgentesInteligentespermitemaos sistemas monitorar as aes do usuario, armazenar modos de habitos do usuario, eautomaticamenteajudamquandoosproblemassurgem.Quandocombinado com tecnologia da Iala, os Agentes Inteligentes possibilitam que as interIacesse tornemmaishumanasoumais'sociaisquandointeragindocomusuarios humanos;h) comercioeletrnico:Comercioeletrnicoeumaareacrescenteabastecidapela popularidadedaInternet.Compradoresprecisamacharosvendedoresde produtoseservios,elesprecisamacharinIormaodeproduto(incluindo especiIicaes tecnicas, conIiguraes viaveis, etc.) que resolva seu problema, e elesprecisamobterconselhoespecialista,anteriormenteparaacompraepara servio,eposteriormenteparasuporte.Vendedoresprecisamacharos compradores e eles precisam Iornecer conselho especialista sobre seu produto ou servio,comotambematendimentoaoconsumidoresuporte.Ambos compradores e vendedores precisam automatizar o manuseio dos seus 'negocios eletrnicos.AgentesInteligentespodemajudaremcomercioeletrnicode - xxxvii -variasmaneiras.Agentespodem'irascomprasparaumusuario,levar especiIicaesedevolvercomrecomendaesdecomprasaquelesque alcanarem essas especiIicaes. Eles podem agir como 'ajudantes de compras paravendedoresprovendoprodutoouserviodeconselhodevendas,eeles podem ajudar a localizar e reparar os problemas de clientes (|BRE1998|).3.4 FUNCIONAMENTO DOS AGENTESConIorme|HUH1997|aarquiteturatipicabasicadequalqueragentedivide-se,de Iorma mais ou menos evidente, em duas partes, conIorme Iigura 3: a) sistema inteligente: e a parte responsavel por resolver os problemas do dominio da sua especialidade;b) camadadecooperao:eapartequepermiteaoagentecomunicareinteragir com outros agentes do sistema multiagentes em que esta inserido. Figura 3. Arquitetura bsica de um agenteFonte: Adaptado de HUH1997]Osistemainteligenteeocomponentequedaaoagenteumacaracteristicade autonomianaresoluodeproblemas,capazdetomardecisesinteligentesnoquediz respeitoaexecuodassuastareIas.Acamadadecooperaopermitequeosagentes troquem mensagens entre si, de Iorma a interagirem. 3.4.1 Sistemas MultiAgentes Deacordocom|GON1997|aIntelignciaArtiIicialDistribuida (IAD)eumsub-campoda inteligncia artiIicial que se debrua sobre o estudo de entidades computacionais queinteragementresi,quernaperspectivadassuascapacidadesinternasquerna perspectiva da sua 'sociabilizao, incluindo a cooperao, levando a realizao conjunta - xxxviii -deobjetivospredeIinidos.NaIADpodem-sedistinguirduasareasprincipais,queesto intimamente relacionadas:a) ResoluoDistribuidadeproblemas(RDP):consideradacomoatareIade resolverumproblemaparticularpodeserdistribuidaporumconjuntode modulos,quecooperamnadivisoecompartilhamentodoconhecimentosobre o problema e sua soluo.b) SistemasMulti-Agente(SMA):preocupa-secomocomportamentodeuma coleodeagentesautnomosparaaresoluodeumdeterminadoproblema (|GON1997|).OtrabalhomaisrecenteemSMAsobremercados,comoporexemploosistema Kasbah(|MAE1998|),poroutrolado,assumeagentesegoistasecompetitivosdurante negociaes sobre recursos limitados. Tal no impede, no entanto, de considerar a interao necessaria entre tais agentes como uma Iorma de cooperao em que o objetivo principal do SMA e permitir as transaes comerciais. 3.4.2 Comunicao Emsistemasmultiagentessousadasduasestrategiasprincipaisparasuportara comunicao entre agentes (|JEN1996|): a) troca direta de mensagens entre os agentes; b) troca indireta de mensagens atraves de um repositorio de dados compartilhado e o chamado 'blackboard` (Iigura 4). Figura 4. Comunicao entre agentes- xxxix -Fonte: Adaptado de 1EN1996]Conceitualmente,oblackboardeumrepositorioondeosagentesescrevem mensagense buscam inIormao. Esta inIormao encontra-se muitas vezes hierarquizada porniveisnoblackboard.Aoniveldeimplementao,contudo,estelocalpodeIuncionar como um agente auxiliar, com o qual os agentes se comunicam de Iorma direta. Osdoissistemasdecomunicaopodemsercombinadosemsistemascomplexos. Por exemplo, cada agente pode ser composto de varios subsistemas, que trocam inIormao utilizando um blackboard local; os agentes comunicam uns com os outros atraves da troca direta de mensagens. Seja para cooperar na execuo de um determinado objetivo, seja para negociar de umaIormacompetitivasobreumdeterminadorecurso,osagentestmnecessidadede comunicar-seentresi.Paraqueessacomunicaosejapossivel,eimperiosoqueeles compreendam e utilizem uma linguagem comum (|JEN1996|). Segundo |HUH1997| um dos grandes desaIiosparaacompreenso entre agentes e queelespodemterdiIerentessistemasdecrenas.Porexemplo,osagentespodemusar diIerentestermosparaomesmoconceito.Autilizaodeumarepresentaocomume essencialparaqueacomunicaoecoordenaotenhamsucesso.Emagentes computacionais,istorepresentaumaontologia comumumarepresentaodo conhecimento de um dado dominio que e partilhada por todos os agentes.Esta partilha de ontologias permite uniIormizar o conteudo semntico do vocabulario utilizado. A soluo para o problema da interoperao entre agentes construidos por diIerentes entidadespassapeladeIiniodeumalinguagemcomum,normalmentereIeridacomo Agent Communication Language (ACL). Um dos trabalhos mais importantes nesta area e o desenvolvimentodeumalinguagemparaatrocadeinIormaoeconhecimento:a KnowledgeQuervManipulationLanguage(KQML),desenvolvidapeloconsorcioARPA Knowledge Sharing Effort. Conceitualmente, a linguagem KQML esta dividida em trs camadas (|FIN1996|): - xl -a) acamadadeconteudo:eoconteudodamensagempropriamentedita,na linguagemderepresentaopropriadosagentesoKQMLpodeincluir qualquerlinguagemderepresentao,sendooconteudoignoradonoquediz respeito a sua interpretao (esta tareIa cabe ao agente receptor); b) a camada de mensagem: encobre o conteudo da mensagem que um agente quer transmitir a outroeste nivel Iorma o nucleo da linguagem KQML e determina os tipos de interao que os agentes que Ialam KQML podem ter;c) camadadecomunicao: acrescentaalgunsparmetrosamensagem relacionadoscomacomunicaodebaixonivel,comoaidentidadedo remetente e do destinatario e um identiIicador unico associado a comunicao. KQMLeprojetadoparaserusadocomvariosmecanismos(atualmenteha implementaes que usam TCP/IP, SMTP(e-mail), HTTP e CORBA). O agente de KQML podeIalardiretamenteaoutroagenteoupodeenviarmensagensamultiplosagentesdo mesmo grupo (|FIN1996|).3.5 AGENTES E COMRCIO ELETRNICO De acordo com |BIG1998| agentes de software so programas de computador com algumgraudeintelignciaeautonomia,quetenderoasercadavezmaisutilizadosna execuodetareIasrepetitivasedemoradas.Paraqueosagentessejamrealmenteuma ajuda'inteligente,elesdevemaindaaprenderosinteressesdosusuarios,atravesde tecnicas de aprendizagem automatica. Autilizaodeagentesemcomercioeletrnicopermiteacriaodemercados virtuais,ondeosusuariosdelegamtareIasaosseusagentes,queseencarregamdeas executar.Emvezdecompradoresevendedores,pode-seteragentesdesoftwarecompradoreseagentesdesoftwarevendedoresquecomunicamenegociam automaticamente entre si (|BIG1998|). - xli -3.6 MERCADOS ELETRNICOS BASEADOS EM AGENTES ExistemjaalgunssistemasmultiagentesIuncionais,quepermitemautomatizar grandepartedoprocessodecompraevendadeprodutos.ParaIacilitaroestudode mecanismos de negociao entre os agentes que compem os sistemas multiagentes, alguns deles baseiam-se em leiles, espao privilegiado para a implementao da negociao. OssistemasmaissigniIicativos,quepodemserutilizadosparapesquisaoupara transaesnomundoreal,sooAuctionBot,oKasbah,oTete-a-TeteeoJango,osquais esto descritos abaixo. 3.6.1 AuctionBot ConIorme|WUR1998|osistemaAuctionBot,desenvolvidonaUniversidadede Michigan,eumservidordeleilesIlexivel,escalonavelerobusto,quesuportatanto agentesde'softwarecomoagenteshumanos.Osistemagernciamultiplosleilesque poderodecorrersimultaneamente,admitindovariostiposdeleiles.EstaIlexibilidadee alcanadadecompondooespaodosleilesnumconjuntodeparmetrosortogonais. Atraves destes parmetros, o AuctionBot consegue implementar muitos dos tipos de leiles classicos e mais alguns que nunca tinham sido estudados anteriormente. OsleilesativosnoAuctionBotsoorganizadosnumcatalogohierarquico, Iacilitando a pesquisa para os potenciais compradores que neles desejam licitar. Os usuarios quepretendamcriarnovosleilespodemposiciona-losemqualquerseodocatalogo existente,ouexpandirocatalogo,criandoumasubcategoriaapropriada.Tmtambema opo de no listar o leilo no catalogo publico, mantendo a sua visibilidade limitada a um grupoprivado.Paraparticiparemqualquerleilo,osusuariostmqueseregistar.Em qualquer momento, eles podem inspecionar as suas contas atraves de uma pagina Web, que apresenta uma viso organizada das suas licitaes, leiles que eles iniciaram e transaes anteriores. OAuctionBotdisponibilizaumaAplicationProgramInterface API(interIacede aplicaodeprograma)quepermiteaosusuariosacriaodeagentes,comestrategiasde - xlii -licitao por eles concebidas, que agem autonomamente. A interIace com estes agentes de softwareeasseguradaatravesdecomunicaoTCP/IP.Oshumanosinteragemcomo sistema via uma interIace Web. A interao entre os agentes externos (software e humanos) eosistemaAuctionBotconsistenautilizaodeumabasededados,ondeosagentes colocam as suas licitaes. Esta base de dadosemonitorizada pelo leiloeiro, que processa os eventos dos diversos leiles e veriIica as licitaes pendentes. Osuportedeumagrandevariedadedetiposdeleiles,combinadocomaAPI disponibilizada para a criao de agentes, Iaz do AuctionBot uma plataIorma util tanto para o comercio eletrnico como para pesquisa (|WUR1998|). 3.6.2 Kasbah OKasbaheummercadovirtual,criadonoMITMediaLaboratorv,noqualos usuarioscriamagentespredeIinidosenosquaisdelegamacompraevendadeprodutos (|MAE1998|).Oobjetivoprincipaldosistemaepermitiracriaodeagentesque negociemautonomamente,procurandoobteromelhornegociopossivelparaousuario.O Kasbaheumsistemadecomercioeletrnicobaseadoemmecanismosdotipocontinuous double auction (CDA). NoKasbah,osagentesvendedoressocomoanunciosclassiIicados.Quandoum usuariocriaumagentevendedor,da-lheumadescriodoprodutoquepretendevender. Estesagentessopro-ativos,ouseja,tentamvenderoprodutoentrandonomercado, contatandocomcompradoresinteressadosenegociandocomeles,deIormaaencontraro melhor negocio possivel. Os agentes vendedores so autnomos, pois uma vez largados no mercado eles negociam e tomam decises, sem requerer a interveno do usuario. Ao criar um agente vendedor, o usuario deIine alguns parmetros para guiar o agente enquanto tenta vender o produto:a) data limite para a venda do produto;b) preo desejado;c) preo mais baixo aceitavel. - xliii -EstesparmetrosdeIinemoobjetivodoagente:venderoprodutoemquestopelo valor mais alto possivelidealmente pelo preo desejado, mas podendo descer ate ao preo mais baixo aceitavel, tendo em conta a data limite especiIicada. A heuristica utilizada pelos agentesvendedoresaIimdeatingiroseuobjetivoemuitosimples.Oagentecomea pedindoopreodesejado.Enquantonohouvercompradores,oagentevaidescendo gradualmente o preo. Ao chegar a data limite para a venda do produto (se ainda no houve compradores), o preo pedido pelo agente deve ser o preo mais baixo aceitavel. O que vai determinarodesempenhodoagentenaexecuodoseuobjetivoeaIormacomoelevai baixando o preo pedido. O Kasbah disponibiliza trs Iunes de decrescimo que o agente podeutilizarparabaixaropreopedidoaolongodotempo,equenoIundosoas estrategias de negociao que ele pode adaptar: a) linear: corresponde a implementao de um agente 'ansioso no que diz respeito a venda do produto, baixando o preo ao longo do tempo linearmente; b) quadratica:pretende-serepresentarumagentede'cabeaIria,quenose precipita, usando uma Iuno intermedia para o decrescimo do preo pedido; c) cubica:aanalogianestecasoeadeumagente'ganancioso,quenoabdica Iacilmente de parte do preo para vender mais rapidamente o produto, apenas o baixando ja proximo da data limite de venda. Ousuariopodealterarosparmetrosestrategicosdosseusagentesemqualquer momento. Apos encontrar um comprador para o preo pedido, o agente vendedor contata o usuario, para que este conIirme a aprovao do negocio. OsagentescompradoresIuncionamdeIormaanalogaesimetricaaosagentes vendedores.Nasuacriao,ousuariodeIineadatalimiteparaacompradoproduto,o preodesejadoeopreomaisaltoaceitavel.Ousuariotemigualmenteasuadisposio trs Iunes para a subida do preo oIerecido ao longo do tempo: linear (correspondendo a umagente'ansiosoporcompraroproduto),quadratica(representandoumagentede 'cabea Iria) e cubica (um agente 'econmico). OmercadodoKasbahajudaosagentesaencontraremosseuspares(agentes interessadosemcomprar/venderaquiloquequeremvender/comprar).Osprodutos - xliv -compradosevendidosnoKasbahsodescritosatravesdevetoresdeatributos(pares atributo/valor). Esta Iorma de representar os produtos Iacilita a sua comparao, bem como oencontrodeagentescompradoresevendedorescominteressescomplementares.Depois de se encontrarem, os agentes comunicam diretamente uns com os outros. Assimqueagentescompradoresevendedoreschegamaumacordo,eaposa autorizaodosrespectivosusuarios,atransaoIisicapodeocorrer.Estepassotemque ser dado pelos humanos. A ultima verso do Kasbah incorpora um mecanismo distribuido deconIianaereputao,chamadoBetterBusinessBureau(|MAE1998|).Quandouma transao e Iinalizada, cada entidadeenvolvida pode avaliar a outra relativamente a Iorma como conduziu a sua parte do acordo. De Iorma a utilizar esta inIormao, os usuarios tm aindaapossibilidadedeindicarmaisumparmetronacriaodosseusagentes:onivel minimo de reputao do dono dos agentes com os quais podem negociar. ConIorme|MOU1998|noKasbah,omercadoeosagentessoobjetos(instncias declasses).AsuaexecuoemparaleloesimuladaatravesdeumalgoritmoqueIaz circularIatiasdetempodeexecuoportodososobjetosexistentes.Osagenteseo mercadocomunicamentresiinvocandometodosporelessuportados.Essesmetodos correspondem a um protocolo interno proprio, dado que todos os agentes esto predeIinidos nosistema(utilizandoasIunesestrategicasacimadescritas).Pretende-seevoluirpara protocolos que permitam a comunicao entre agentes distribuidos por diversas maquinas, incluindoapossibilidadedosusuarioscriaremosseuspropriosagentes,comassuas propriasestrategias,queinteragemcomomercadoKasbahutilizandoessesprotocolos (|MOU1998|).3.6.3 Tete-a-Tete ConIorme|MOU1998|oprojectoTete-a-Tete,desenvolvidonoMITMedia Laboratorv,englobatrsareasdeinvestigao:sistemasmultiagentes,desenhode interIaceshomem- computadorecomercioeletrnicoparavarejo.Oobjetivodoprojetoe disponibilizartecnologiasavanadaseIerramentasdevisualizao,paraauxiliarnas necessidades dos consumidores com as oIertas dos vendedores, em mercados varejistas on-line. - xlv -OTete-a-Tetepretendedaraosusuariosapossibilidadedenegociarsobrevarias dimensesdeumatransao.DaapossibilidadeaosvendedoresdesediIerenciaremem atributosdoprodutoedoservioalemdopreo,comotemposdeentrega,garantia,etc. (|MOU1998|).AnegociaonoutilizaIunessimplesdeacrescimoedecrescimodepreos comonoKasbah.Emvezdisso,osagentescompradoresdoTete-a-Tetenegociam argumentativamentecomosagentesvendedores,utilizandoasrestriesdeavaliao capturadasduranteasetapasdeSeleodoProdutoeSeleodoJendedordoModelo ConsumerBuvingBehaviour(CBB),comodimensesdeumaIunodeutilidademulti-atributo. Esta Iuno de utilidade e usada por um agente comprador para ordenar as oIertas dos vendedores, baseando-se em avaliar ate que ponto elas satisIazem as suas preIerncias. AnegociaotomaIormacooperativa,atravesdemultiplostermosdatransao (|MOU1998|). 3.6.4 JANGOSegundo|BRE1998|osistemaJangoIoidesenvolvidopelacompanhiaIntelligent AssistantTechnologvresearch divisionofNetbotInc.,emSeattle,USA.Oobjetivodesta aplicao e disponibilizar ao usuario um simples, poderoso e rapido acesso a um numero de Iornecedoreson-lineusandoumainterIacepadro.Mercadosvirtuais,conteudode provedores,emecanismosdepesquisaparaselecionarIornecedores.Ousuariopode selecionardezgruposdeprodutosdecadavez.Dependendodaseleodogrupode produtos a aplicao seleciona Iornecedores para aqueles produtos. Jangoeumaaplicaoclientebaseadaemumcomplexoagentedecomprae permiteespeciIicarIornecedores/inIormaessobreprodutosesuporteacompra.O processo de entrega para a inIormao requerida e executada simultaneamente e deve estar coordenada. A coordenao cobre o grupo de varias Iontes de inIormaes para permitir o suprimento de toda e qualquer inIormao.Osgrupossoanalisadosantesdeseremapresentadosaousuario.AsinIormaes redundanteseidnticassoreconhecidaseeliminadas.Osresultadossoorganizadosde - xlvi -acordocomograuderelevnciadapesquisadousuario.Osresultadosapresentados inIormamosIornecedoreseopreorelativoaoproduto.Epossiveltambemmostraros produtos de acordo com outros criterios.PeloIatodoJangosuportarosprocessosdecompraeleadotaopapelde intermediario na negociao, o usuario no precisa negociar diretamente com o Iornecedor Iinal.JangocombinavantagensdeumIornecedorcomosbeneIiciosdeumintermediario (|BRE1998|). Atualmente o Jango e distribuido gratuitamente . - xlvii -4. DESENVOLVIMENTO DO PROTTIPONeste trabalho pretendeu-se desenvolver um prototipo que seja capaz de armazenar as preIerncias do cliente, oIerecendo a ele os produtos e servios de busca, e agir de modo pro-ativo. 4.1 TECNOLOGIAS UTILIZADAS NO DESENVOLVIMENTOParaaconstruodoprototipodeSistemadeComercioEletrnicoparaLivraria Virtual utilizando AgentesInteligentes, utilizou-se a Ierramentacase Rational Rose com a metodologiadeanaliseorientadaaobjetosatravesdalinguagemdemodelagemUMLUnifiedModelingLanguage.Naimplementaoutilizou-seobancodedadosMSSQL Serververso7.0easpaginasdoprototipoIoramconstruidasnoambientevisualFront Page, nas quais Ioram incorporadas a tecnologia Active Server Pages -ASPe Javascript.4.1.1 Anlise orientada a objetosDeacordocom|FUR1998|aanaliseorientadaaobjetosderivadiretamentedos conceitosdaprogramaoedoprojeto.Atecnologiadeobjetosapresentacomponentes chavesqueIundamentamamudanadeenIoquenoprocessodemodelageme desenvolvimento de aplicaes, trazendo beneIicios intrinsecos a IilosoIia. A tecnologia de objetos oIerece modularidade de seus elementos podendo-se tomar um subconjunto existente e integra-lo de um maneira diIerente em outra parte do sistema.4.1.2 ferramentas de modelagemHavariasIerramentasdemodelagemnomercado,algumassuportandoaUML como e o caso do Rational Rose da Rational Corporation (Iigura5).- xlviii -Figura 5. Ferramenta de modelagem Rational RoseSegundo|FUR1998|aoavaliarIerramentasdemodelagemorientadasaobjeto, deve-seconsideraralgunsaspectosimportantesqueauxiliaronaimplementaode aplicaes orientadas a objeto:a) metodos suportados e ambiente tecnologico no qual operam e geram o codigo;b) suporteaosdiagramasdalinguagemdemodelagem,sendointeligenteo suIicienteparacompreenderseuspropositos,semnticaassociadaeregrasde maneira a no permitir uso incorreto de elementos do modelo;c) presena de um repositorio comum para armazenar dados acerca do modelo em um unico lugar;d) tratamento oIerecido a projetos de grande porte;e) navegao no modelo com rastreamento de um modelo de um diagrama a outro ou expanso da descrio desse elemento;I) leitura de codigo existente (engenharia reversa) para produo de novos modelos a partir dele;g) integraocomoutrasIerramentas,incluindoaspectosdeexportaoe - xlix -importaodedados,paraambientesdedesenvolvimento,gerenciamentode conIigurao e controle de verses;4.1.3 UML Unified Modeling LanguageSegundo|FUR1998|,aUMLeumalinguagemdemodelagem,nouma metodologia. Muitas metodologias consistem, pelo menos em principio, de uma linguagem demodelagemeumprocedimentodeusodessalinguagem.AUMLnoprescreve explicitamenteesseprocedimentodeutilizao.EmmuitasIormas,alinguagemde modelagem composta por sintaxe e semntica e a poro mais importante do metodo, sendo certamente a parte chave na comunicao.Em seu estado atual, a UML deIine uma notao e um metamodelo. A notao e o material graIico visto em modelos, isto e, e a sintaxe da linguagem de modelagem. O modo paradescreverosvariosaspectosdemodelagempelaUMLeatravesdanotaodeIinida pelos seus varios tipos de diagramas:a) Diagrama de classeGraIico bidimensional de elementos demodelagem que pode conter tipos, pacotes, relacionamentos, instncias, objetos e vinculos (conexo entre dois objetos).Um diagrama de classes denota a estrutura estatica de um sistema e as classes representam coisas que so manipuladas por esse sistema. O diagrama de classes e considerado estatico pois a estrutura descritaesemprevalidaemqualquerpontonociclodevidadosistema.Umexemplode diagrama de classe e mostrado na Iigura 6.Figura 6 - Diagrama de classepedido_itemcodigo_pedidocodigo_produtoquantidadeincluirtemPedido( )calcularTotalPedido( )1 1..* 1..*tem1Pedidocodigo_pedidodata_pedidonomecgccpfruacidadeestadoceppastelefoneemailsubtotaltaxa_enviototalforma_pagamentoinstruesatendidopagoincluirPedido( )mostrarPedido( )gravarPedido( )- l -b) Diagrama de caso de usoOscasosdeusodescrevemaIuncionalidadedosistemapercebidaporatores externos.Umatorinteragecomosistemapodendoserumusuario,dispositivo,ououtro sistema. Para mostrar o relacionamento entre atores e casos de uso dentro de um sistema a UML utiliza a notao conIorme mostrado na Iigura 7, abaixo:Figura 7. Diagrama de caso de usoc) Diagramadeinteraocompostopordiagramadeseqnciaediagramade colaborao.Odiagramadeseqnciaapresentaainteraodeseqnciadetempodosobjetos queparticipamnainterao.Asduasdimensesdeumdiagramadeseqnciaconsistem na dimenso vertical (tempo) e na dimenso horizontal (objetos diIerentes). O diagrama de seqnciamostraacolaboraodinmicaentreumnumerodeobjetoseoaspecto importantedessediagramaemostraraseqnciademensagensenviadasentreobjetos.O diagramadecolaboraomostraainteraodinmicadeumcasodeusoorganizadaem torno de objetos e seus vinculos mutuos, de maneira que so usados numeros de seqncia paraevidenciaraseqnciademensagens.NaIigura8emostradoumexemplodo diagrama de seqncia: Manter cadastroAdministrador da livraria- li -Figura 8. Diagrama de seqnciaDeacordocom|FUR1998|,algunselementosgraIicosutilizadosnosdiagramas representamoAtor,Classes,Casodeuso,MensagemeLinhadevida,eestodescritos abaixo:a) Ator: Um estereotipo predeIinido de tipo que denota um agente Iora do sistema que interage em casos de uso (Iigura 9).Figura 9. Atorb) Classe: Uma descrio de um conjunto de objetos que compartilham os mesmos atributos, operaes, relaes e semntica (Iigura 10).Figura 10. Classec) Caso de uso: Uma descrio de aes de um sistema mediante o recebimento de um tipo de requisio de usuario (Iigura 11).Atorprodutocodigo_produtocodigo_categorianome_produtodescrio_produtopreo_unitriourl_imagemdisponvelconsultaProduto( )- lii -Figura 11. Caso de usod) Mensagemsincrona:Umamensagemeacomunicaoentreobjetoscomuma expectativaderespostadoobjetodestinatarioaoobjetoremetente.O recebimentodeumamensagemenormalmenteconsideradoumevento.Uma mensagemsincronaeumamensagemondeoobjetoremetenteinterrompeseu processamento par esperar por resultados (Iigura 12). Figura 12. Mensagem sncronae) Linhadevidadoobjeto:Umalinhaemumdiagramadeseqnciaque representa a existncia de um objeto durante um certo tempo (Iigura 13).Figura 13. Linha de vidaModelar um sistema complexo e uma tareIa extensiva sendo necessaria a descrio de varios aspectos diIerentes incluindo o Iuncional (estrutura estatica e interao dinmica), noIuncional(tempodeprocessamento,conIiabilidade,produo)eorganizacional (organizao do trabalho, mapeamento e codigo). Cada viso e descrita em um numero de diagramasqueconteminIormaesenIatizandoumaspectoparticulardosistema. Analisando-seosistemaatravesdevisesdiIerentes,epossivelseconcentraremum aspectodecadavez.ParaainiciaonaUMLeaconselhavelpartirdasnotaesmais simples, particularmente as de diagrama de classe (|FUR1998|).- liii -4.1.4 Banco de DADOSDeacordocom|DAL2000|soasmaissimplesorganizaesnopossuemuma tecnologiadegerenciamentodainIormaoesuaprincipalIerramentaparaorganizaras inIormaes e oBanco de Dados.Inicialmente estes Ioram criados apenas para armazenar asatividadesoperacionaisdaempresa,masatualmentesoutilizadosparaarmazenar atividade como suporte gerencial.Segundo|DAT1990|,umbancodedadospodeserdeIinidocomoumsistemade manutenodedadosporcomputador,ouseja,umsistemacujo,objetivoglobalemanter as inIormaes e torna-las disponiveis quando solicitadas. Trata-se de qualquer inIormao considerada como signiIicativa a organizao ou individuo servido pelo sistema, ou seja, a inIormao que seja necessaria ao processo de tomada de deciso da organizao.- liv -4.1.5 SQL SERVERConIorme|MIC1998|oMicrosoItSQLServereumsistemadegerenciamentode bancodedadosrelacional(RDBMS)cliente/servidorqueusatransact-SQL(comandos SQL - Structured Querv Language)para enviar pedidos entre um cliente e o SQL Server.OSQLServerusaaarquiteturacliente/servidorparasepararacargadetrabalho dentrodetareIasqueexecutamnocomputadorservidordaquelasquesoexecutadasno computador cliente.Cliente e responsavel pela logica do negocio e a apresentao dos dados ao usuario. Oclientetipicamenteeexecutadosobreumoumaiscomputadoresclientes,masele tambem poder ser executado sobre um servidor com SQL Server.OSQLServergerenciadatabases(bancodedados)ealocaseusrecursos disponiveis,comomemoria,networkbandwidth(bandaderede),eoperaesdedisco, entre multiplas requisies.ORDBMS Relationaldatabasemanagementsvstemeresponsavelpela manutenoerelacionamentoentredadoseobancodedados,assegurandoqueosdados sejamarmazenadoscorretamenteequeadeIinioderegrasrelacionadasaosdadosno sejamvioladas.Arecuperaodetodososdadosateumpontoconhecido(consistente) quando um evento de Ialha no sistema ocorrer e responsabilidade do RDBMS. OSQLServerusaTransact-SQL,umaversodaStructuredQuervLanguage(SQL),comolinguagemdeprogramaonaconstruodequerv.SQLeumconjuntode comandosquepermitemaespeciIicaodeinIormaesquesedesejarecuperarou modiIicar do banco de dados. Com Transact-SQL e possivel acessar dados, realizar update(atualizao) e gerenciar o sistema de banco de dados relacional. OSQLServerexecutasobreosistemaoperacionalMicrosoItWindows95/NT. PreIerencialmente o sistema operacional MicrosoIt Windows NT oIerece muitas vantagens, devido a completa integrao. O SQL Server esta integrado com o sistema de segurana do - lv -WindowsNT,estaintegraopermiteumsimplesnomedeusuarioesenhaparaacessar ambos, Windows NT e SQL Server. Porem, o SQL Server prov ele proprio de um sistema de segurana, independente do sistema operacional.Diversos computadores clientes podem acessar o SQL Server. Ele usa a arquitetura de camadas de comunicao para isolar aplicaes, da rede e de protocolos. Esta arquiteturapermite o acesso de aplicaes clientes de diIerentes ambientes de rede. O componentes da arquitetura de comunicao so:a) Application(aplicao):umaaplicaoedesenvolvidausandoAPI(Aplication programming interface). Neste caso a aplicao no tem conhecimento sobre os protocolos de rede usados para comunicao com o SQL-Server.b) Databaseinterface(interIacedebancodedados):eumainterIaceusadapela aplicao para enviar requisies para o SQL Server e processar resultados que sero retornados ao SQL Server.c) Networklibrarv(bibliotecadarede):eumpacotedecomunicaopara requisieserespostasparaprotocolosdecomunicaoapropriados.Uma network librarv , tambem conhecida como net-librarv deve ser instalada sobre o servidoreocliente.Clienteseservidorespodemusarmaisdeumanet-library concorrentemente,maselesdevemusarumabibliotecacomumderedepara obter sucesso na comunicao. O SQL Server suporta protocolos de rede como TCP/IP, named pipes, novell IPX/SPX, Banyan VINES/IP e AppleTalk ADSP.d) Tabular Data Stream (tabela de Iluxo de dados) : Tabular Data Stream (TDS) e umprotocoloaniveldeaplicaousadoparacomunicaoentreoclienteeo SQLServer.PacotesTDSsoencapsuladosnospacotesderedeparaserem usadospelapilhadoprotocolousadapelonet-librarv.Porexemploseo windows socktes net-library e usado, ento o pacote TDS e encapsulado sobre o pacote TCP/IP sob o protocolo de rede. e) Opendataservices(Servioabertodedados):esteeumcomponentedoSQL Server que identiIica uma conexo de rede, passando requisies clientes para o SQL Server para processamento e retornando algum resultado replicando para o cliente.I) OOpendatabaseconnectivity(ODBC)eumainterIacedeconexo.OODBC - lvi -pode acessar diretamente o SQL Server .Ele e ativado atraves do protocolo de acessodoSQLServerTDSquesuportaaplicaesoucomponentesqueso escritosusandoODBCoudataobfectsinterfaces(interIacesdeobjetosde dados) que usam ODBC (|MIC1998|).4.1.6 ferramentas utilizadasAsIerramentasutilizadasparaodesenvolvimentodoprototipoIoramaIerramenta de criao e administrao para WebFrontpage, o ambiente para programao de paginas dinmicas e interativas - ASP e a linguagem de programao Java.4.1.6.1 FRONTPAGEO Microsoft FrontPage, e uma Ierramenta de criao e administrao para Web. O FrontPageinclui o Explorer FrontPage onde pode-se criar, projetar e administrar um site. Possui tambem o FrontPage Editor onde pode-se criar e editar paginas HTML.NoExplorerdoFrontPagepode-secriaraestruturadositedaWeb,epossivelorganizarosarquivosepastas,Iazeraimportaoeexportaodearquivos,testar hvperlinkseadministrarprivilegiosdeacesso.EoeditordoFrontPageeutilizadopara projetareeditarosconteudosdaspaginas.Quandooprojetoestivercompletousa-seo ExplorerdoFrontPageparapublicar,naintranetdeumaorganizao,ounaWorldWideWeb (|LEH1997|).4.1.6.2 ACTIVE SERVER PAGES - ASPASP e um ambiente para programao de paginas dinmicas e interativas que usam os recursos de (|MAR1999|):a) HvpertextMarkupLanguage -HTML(linguagensdemarcadoresde hipertextos),alinguagemcomaqualsoescritaspaginasquesero armazenadas nos servidores e que podero ser visualizadas pelos usuarios;b)linguagem de Script como Vbscript ou JavaScript que atuam no servidor;c) acesso a base de dados que suportam ODBC.- lvii -Segundo|MAR1999|ASPoIerecevantagensdeindependnciadenavegadoros scripts rodam no servidor e somente os resultados so enviados ao usuario; acesso a base de dadoscontemummecanismoIacilparavisualizar,atualizareadicionarinIormaesa basededadosquesuportamODBCeservidoresSQL;seguranadocodigoIonteo clientevisualizasomenteoresultadodoprocessamentonoIormatoHTML;administrao dosestadosatravesdeobjetosinternosdaASPpod