3 Sistemas Multi-Agente
3.3.1 Protocolos de Negociac¸ ˜ao
A plataforma JADE oferece uma s ´erie de protocolos padr ˜oes FIPA que s ˜ao im- portantes para automatizar a comunicac¸ ˜ao entre os agentes. Existem tr ˆes protocolos
dentre os demais que merecem destaque. O primeiro protocolo, conforme a figura 3.5, ´e a de requisic¸ ˜ao de participantes no processo de comunicac¸ ˜ao.
Como pode ser visto, tem-se o Iniciador (Initiator ) que inicia o processo de comunicac¸ ˜ao chamando todos os participantes que desejam integrar o processo de negociac¸ ˜ao, ou seja, esse protocolo permite que o primeiro agente requisita ao participante um ato performativo. Dentre as repostas temos a recusa ou a aceitac¸ ˜ao de participac¸ ˜ao que s ˜ao determinadas ap ´os a an ´alise do participantes.2
Figura 3.5: Request Protocol
Se as condic¸ ˜oes de participac¸ ˜ao deixam expl´ıcito que ´e necess ´ario uma notificac¸ ˜ao de participac¸ ˜ao, ent ˜ao o participante comunica que aceita (agree). A aceitac¸ ˜ao ´e op-
cional dependendo da situac¸ ˜ao, mas depois que h ´a aceitac¸ ˜ao, o participante deve comunicar as seguintes repostas:
• Falha (failure), se n ˜ao conseguir preencher a requisic¸ ˜ao;
• Informar completude (inform-done), se ele completar com sucesso a requisic¸ ˜ao e somente quer indicar que completou a ac¸ ˜ao;
• Informar resultado, se ele pretende indicar que completou a ac¸ ˜ao e/ou notificar o Iniciador dos resultados.
Como toda comunicac¸ ˜ao acontece via troca de mensagens ACL, qualquer interac¸ ˜ao que acontec¸a atrav ´es do FIPA-Request-Protocol deve ser identificada pelo par ˆametro conversation-id da mensagem ACL. Portanto, para conversarem, todos os agentes en- volvidos devem etiquetar as mensagens ACL atrav ´es desse id de conversac¸ ˜ao. Isso possibilita que cada agente possa gerenciar suas estrat ´egias de comunicac¸ ˜ao e ativi- dades, uma vez que pode identificar nos registros conversas anteriores ou at ´e mesmo elaborar estrat ´egias de comunicac¸ ˜ao baseadas no passado.
Em qualquer momento da interac¸ ˜ao desse protocolo o agente pode informar, atrav ´es da mensagem ACL not-understood, que n ˜ao entendeu a mensagem. Isso implica dizer que se houve qualquer ru´ıdo na comunicac¸ ˜ao, tudo que aconteceu durante a interac¸ ˜ao ser ´a considerado nulo, uma vez que todo o processo de comunicac¸ ˜ao ´e terminado nesse momento.
Pode haver tamb ´em durante o processo o cancelamento da proposta, atrav ´es de outro protocolo chamado de FIPA-Cancel-Meta-Protocol como pode ser visto na figura 3.6
O id da conversac¸ ˜ao ser ´a o mesmo do protocolo de interac¸ ˜ao que o Iniciador de- seja cancelar. A l ´ogica por tr ´as desse protocolo deve ser entendida da seguinte forma: ”o Iniciador n ˜ao deseja mais continuar a interac¸ ˜ao e que o processo pode ser cance- lado de acordo com a aceitac¸ ˜ao de ambas as partes”. O participante, consequente- mente, informa o cancelamento (atrav ´es do inform-done) ou a falha no cancelamento (atrav ´es do failure).
Uma dos protocolos mais importantes do padr ˜ao FIPA ´e o Contract Net Interaction Protocol. Esse protocolo ´e mais complexo do que os anteriores e descreve o caso em que o agente Iniciador deseja executar algumas ac¸ ˜oes com um ou mais Participantes
Figura 3.6: Cancel-Meta-Protocolo
e al ´em disso deseja otimizar a func¸ ˜ao que caracteriza a tarefa. Atrav ´es desse pro- tocolo o agente pode solicitar ao demais tanto o custo da tarefa como a distribuic¸ ˜ao de tarefas. Para uma tarefa espec´ıfica os Participantes podem responder com uma proposta ou podem recusar (refuse).
Ent ˜ao o Iniciador solicita m propostas de outros agentes atrav ´es de uma cfp (call for proposals - chamada para propostas) que especifica a tarefa e as condic¸ ˜oes que o Iniciador imp ˜oe para executar a tarefa. Os Participantes que recebem uma cfp s ˜ao vistos como potenciais contratantes e enviam n repostas. Destas, j s ˜ao propostas para executar a tarefa.
As propostas dos Participantes incluem as pr ´e-condic¸ ˜oes (prec¸o, tempo em que a tarefa estar ´a completa e etc.) de que o Participante est ´a pronto para a tarefa. Entre- tanto, os i = n − j podem rejeitar a proposta. Depois do per´ıodo limite, o Iniciador ava- lia as j propostas recebidas e determina que os agentes executem a tarefa. Nenhum ou mais agentes podem ser selecionados. Os l (quantidade) agentes da proposta selecionada receber ˜ao a accept-proposal (proposta aceita) e os restantes k agentes receber ˜ao a reject-proposal. S ´o ent ˜ao o Participante executa a tarefa que depois de complet ´a-la manda a mensagem de tarefa completa (inform-done) para o Iniciador.
Figura 3.7: Contract Net-Protocol
3.4
Negociac¸ ˜ao e Bolsa de Valores
De acordo com Macedo (2001), ”a negociac¸ ˜ao ´e uma forma de tomada de de- cis ˜ao onde duas ou mais partes pesquisam em conjunto (possivelmente competic¸ ˜ao) um espac¸o de soluc¸ ˜ao poss´ıveis com o objetivo de atingir uma soluc¸ ˜ao comum e aceit ´avel por todas as partes interessadas”. Esse conceito ´e abrangente o suficiente para n ˜ao limitar as negociac¸ ˜oes apenas `as transac¸ ˜oes comerciais, mas a qualquer tipo de decis ˜ao que necessite do consenso de duas ou mais partes.
Ainda de acordo com a mesma autora, as duas partes importantes que envol- vem uma negociac¸ ˜ao em um sistema de negociac¸ ˜ao autom ´atica: o protocolo de
negociac¸ ˜ao e as estrat ´egias de negociac¸ ˜ao.
Os protocolos definem as regras envolvendo as partes, as normas que devem ser seguidas para que os participantes consigam se comunicar e determinar a melhor soluc¸ ˜ao para o que est ´a sendo transacionado.
J ´a as estrat ´egias de negociac¸ ˜ao de uma agente dizem respeito a um ”plano de ac¸ ˜ao usado por este agente com o intuito de atingir o seu objetivo, geralmente tra- duzida na maximizac¸ ˜ao da sua func¸ ˜ao de utilidade”(MACEDO, 2001). Na abordagem proposta, a func¸ ˜ao de utilidade ´e calculada de acordo com o algoritmo de aprendiza- gem, j ´a que as estrat ´egias de negociac¸ ˜ao dos agentes investidores est ˜ao limitadas `a previs ˜ao que os agentes fazem de como o valor dos t´ıtulos se comportar ˜ao no futuro.
No caso dos protocolos de negociac¸ ˜ao, ser ´a determinada a forma de interac¸ ˜ao estre os agentes evolvidos no sistema como forma de facilitar a comunicac¸ ˜ao entre os agentes e as regras de neg ´ocio envolvidas durantes o processo de interac¸ ˜ao.
Em sistemas de com ´ercio eletr ˆonico envolvendo muitos agentes, as negociac¸ ˜oes autom ´aticas se fazem necess ´arias em virtude da grande quantidade de negociantes e informac¸ ˜oes que permeiam esses ambientes. A dinamicidade desse mercado exige um sistema facilitador, uma vez que a procura e fechamento de neg ´ocios est ´a se tornando um processo custoso em virtude de um mundo em que todas as transac¸ ˜oes devem acontecer de forma mais r ´apida.
Para participac¸ ˜ao em um mercado eletr ˆonico (no nosso caso se refere a bolsa) os agentes participantes devem atender a alguns requisitos para poderem participar das negociac¸ ˜oes (PEREIRA, 2004):
• Como formular as prefer ˆencias na negociac¸ ˜ao: a an ´alise do perfil do usu ´ario ´e assunto de extensas pesquisas na ´area de recuperac¸ ˜ao e filtragem de informac¸ ˜ao. A traduc¸ ˜ao das prefer ˆencias do usu ´ario para uma linguagem computacional leg´ıvel
´e muitas vezes dificultada pela car ˆencia de mecanismos capazes de medir a uti- lidade de certos atributos. Nesta pesquisa, a contribuic¸ ˜ao dada a tal tarefa diz respeito ao perfil agressivo, moderado e conservador de cada agente investidor envolvido na negociac¸ ˜ao, como forma de associar aos mecanismos de an ´alise t ´ecnica uma probabilidade maior ou menor de investimento em determinados t´ıtulos acion ´arios. Matos (2003) ainda determina uma forma mais precisa de utilizar os perfis do usu ´ario, dividindo-o em dois elementos distintos, perfil do usu ´ario e perfil de compra, pois dessa forma se torna mais f ´acil associar pares
(vendedor e comprador) de acordo com perfis similares;
• Como descrever o que ser ´a negociado: o ´unico bem negociado em primeira inst ˆancia em neste trabalho s ˜ao os t´ıtulos acion ´arios da bolsa de valores, por- tanto a descric¸ ˜ao do bem est ´a embutida em caracter´ısticas mais simples que n ˜ao fazem com que seja necess ´arios a utilizac¸ ˜ao de mecanismos mais apurados como, por exemplo, uma ontologia. Nesse caso, as descric¸ ˜oes dizem respeito ao que cada ac¸ ˜ao representa para o sistema.
A negociac¸ ˜ao pode acontecer desde sua forma mais b ´asica at ´e a forma mais ela- boradas como leil ˜ao, preg ˜ao e etc. Como envolvem a tomada de decis ˜ao, protocolos e estrat ´egias de negociac¸ ˜ao os mesmos podem ser efetuados atrav ´es de tecnologias baseadas em agentes.
Antes de pormenorizar os tipos de mecanismo de negociac¸ ˜ao, ser ´a detalhada melhor a caracterizac¸ ˜ao da negociac¸ ˜ao que pode ocorrer de duas formas: competitiva e cooperativa (PEREIRA, 2004):
• Negociac¸ ˜ao Competitiva: tamb ´em denominada de negociac¸ ˜ao ganha-perde (win- lose), ´e o processo caracter´ıstico de situac¸ ˜oes no qual o preju´ızo de um ´e o benef´ıcio de outro;
• Negociac¸ ˜ao Cooperativa: nesses casos a negociac¸ ˜ao tamb ´em ´e denominada ganha-ganha (win-win) e pode ser descrita como uma forma de fazer com que todos ganhem de alguma forma com o processo.
A Bolsa de Valores possui essa caracter´ıstica competitiva, uma vez que nem sem- pre as duas partes conseguem alcanc¸ar o objetivo final (ganho), no entanto, como h ´a um intervalo entre a compra e venda, a perda ou lucro s ´o s ˜ao notados quando o ciclo
´e completo.
H ´a ainda outras caracter´ısticas que dizem respeito ao espac¸o da negociac¸ ˜ao: o n ´umero de participantes, o dom´ınio e o objeto da negociac¸ ˜ao que poder ser descritos como a seguir.
• Espac¸o da Negociac¸ ˜ao: todo e qualquer tipo de negociac¸ ˜ao possui regras defi- nidas protocolos que s ˜ao adequados a qualquer tipo de negociac¸ ˜ao que podem mudar de acordo com os par ˆametros abaixo:
– N ´umero de Participantes: dependendo do n ´umero de participantes, pode ser um-para-um (o agente negocia diretamente com um ´unico outro); um- para-muitos (v ´arios agentes negociam apenas um ´unico agente); e muitos- para-muitos (m ´ultiplos agentes negociando entre si);
– Dom´ınio da Negociac¸ ˜ao: diz respeito aos atributos negoci ´aveis que po- dem ser ´unico (um ´unico atributo como, por exemplo, prec¸o) e m ´ultiplos atributos (qualidade, garantia, prazo, etc.);
– Objeto da Negociac¸ ˜ao: produto, tarefa ou servic¸o negociado que pode variar de acordo com a quantidade podendo ser ´unico (apenas um item); m ´ultiplos itens (mais de um) e a combinac¸ ˜ao de itens (distintos e in ´umeros itens).
Figura 3.8: Espac¸o da Negociac¸ ˜ao
3.5
Mecanismos de Negociac¸ ˜ao
A forma como a negociac¸ ˜ao ocorre varia de acordo com as caracter´ısticas da mesma e os protocolos utilizados durante o processo. Algumas formas comumente utilizadas s ˜ao leil ˜ao, preg ˜ao, etc. Sendo assim, os mesmos ser ˜ao descritos nas sec¸ ˜oes a seguir.