You are on page 1of 27

PUC

Monografias em Engenharia de Software


Agente de reputao
para
ART-Testbed
Andrew Diniz da Costa
Carlos Jos Pereira de Lucena
Viiane Torres da !i"a
Departamento de Informtica
P#$T"%&C"A '$"V(R!"DAD( CAT)L"CA D# R"# D( JA$("R#
R'A *AR+',! D( !-# V"C($T(. //0 - C(P //102-344
R"# D( JA$("R# - 5RA!"L
Monografias em Engenharia de Software
Editor: Prof. Carlos Jos Pereira de Lcena De!em"ro# $%%&
Agente de Reputao para ART-Testbed
'ndrew Dini! da Costa# Carlos Jos Pereira de Lcena
(i)iane *orres da Sil)a

andrew+les.inf.pc,rio."r# lcena+inf.pc,rio."r# )i)iane+fdi.cm.es


Abstract. This project contemplates the creation of an appraiser agent of
paintings for a reputations competition ART-Tetstbed. The agent adapts
some concepts of the Governance Framework created in the oftware
!ngineer "aborator# of the $%&-R'() besides some strategies that
di*erentiates it from the competitor agents of the last version reali+ed at
,--..
Keywords/ 0ulti-Agents #stems) Reputation) ART-Testbed and Governace
Framework.
Resumo. !ste projeto contempla a cria12o de um agente avaliador de
pinturas para a competi12o de reputa12o ART-Testbed. ( agente possui a
adapta12o de alguns conceitos do Governance Framework criado no
"aborat3rio de !ngenharia de oftware da $%&-R'() al4m de algumas
estrat4gias 5ue o diferencia dos agentes competidores da 6ltima vers2o
reali+ada em ,--..
Palavras-chave/ istemas 0ulti-Agentes) Reputa12o) ART-Testbed e
Governance Framework.
!u67rio
- Introd./o
-.- Proposta
'-.- -.-.- 'gente com 0o)ernance 1ramewor2
'-.$ -.-.$ Estratgias
-.$ Principais contri"i.3es
-.4 5rgani!a./o do tra"alho
$ 1ndamentos *e6ricos
$.- Sistemas Mlti,'gentes7SM's8
$.$ 'gent9 Societ9 1ramewor27'S18
$.4 0o)ernance 1ramewor2
$.: 'gent ;eptation and *rst *est"ed 7';*,*est"ed8
4 'gente ')aliador
4.- Intera./o de opini/o
Processo de <lgamento:
4.-.- Clclo da ;epta./o:
4.$ Intera./o de repta./o
4.4 Dificldades
4.4.- 0o)ernance 1ramewor2
4.4.$ Dom=nio ';*,*est"ed
: Concls/o e tra"alhos ftros
;efer>ncias ?i"liogrficas
'-.4
'-.:
ii
iii
Lista de 8iguras
1igra - @ Modelo do 'S1..............................................................................................:
1igre $ @ Mecanismo de go)ernan.a...........................................................................&
1igre 4 @ *ipos de repta./o do 0o)ernance 1ramewor2...........................................&
1igre : @ (is/o geral do dom=nio de artes da competi./o ';*,*est"ed......................A
1igre B @ Protocolo de transa./o da repta./o...........................................................C
1igre & @ Protocolo de transa./o de opini/o................................................................D
1igre A, Intera./o por opini/o eEemplo -...................................................................--
1igre C, Intera./o por opini/o eEemplo $...................................................................--
1igre D @ ;epta.3es de papel para cada era de cada agente competidor...............-$
1igre -% @ EEemplo de ma intera./o por repta./o.................................................-&
i)
9 "ntroduo
istemas multi-agentes 70As8 9:) ;<= s2o sociedades em 5ue entidades
aut>nomas e heterog?neas podem trabalhar de forma conjunta para @ns
similares ou totalmente distintos. Aevido o escopo da heterogeneidade)
autonomia e diversidade de interesses entre diferentes membros) sistemas
de governan1a 9;B= foram de@nidos. !stes sistemas refor1am o
comportamento dos agentes a partir da de@ni12o de um conjunto de
normas 5ue descrevem as a1Ces aos 5uais os agentes est2o proibidos)
permitidos e obrigados a fa+er. A partir disso) pode-se veri@car 5uais
agentes violam as normas presentes nos sistemas) para 5ue assim sejam
calculadas suas respectivas reputa1Ces.
eguindo esta linha de pes5uisa) a competi12o ART-Testbed 9;) <) .) D) ;-)
;;) ;B= foi criada para estabili+ar um teste para agentes de reputa12o.
Aevido a ela) estE sendo possFvel visuali+ar de forma mais fEcil diversas
t4cnicas 5ue permitem mensurar a reputa12o de agentes) al4m de permitir
uma s4rie de compara1Ces e trocas de id4ias sobre o assunto.
9:9 Proposta
( objetivo do projeto 4 a cria12o de um agente para a competi12o ART-
Testbed. $ara tornar o agente um forte competidor) houve a adapta12o de
algumas id4ias propostas pelo Governance framework 9B) G=) al4m de
estrat4gias 5ue ajudam a medir a reputa12o dos agentes concorrentes.
Assim) a primeira vers2o do agente comprova 5ue o uso de especF@cas
estrat4gias somadas com conceitos adotados pelo Governance Framework
permite a cria12o de um forte concorrente.
9:9:9 Agente co6 ;oernance %ra6ewor<
( Governance Framework 9B) G= 4 um mecanismo de governan1a 9;B=
baseado em testemunhos providos por testemunhas a partir de fatos e
eventos conhecidos por eles e 5ue est2o relacionados com viola1Ces de
normas. A partir do momento 5ue agentes conhecem as normas da
aplica12o) eles podem prover testemunhos sobre a1Ces ou mensagens 5ue
est2o violando alguma norma. !stes testemunhos s2o julgados e os
agentes culpados 7por violar uma norma ou prover um falso testemunho8
s2o punidos com altera12o das suas reputa1Ces.
( agente implementado neste trabalho usa conceitos adotados pelo
Governance Framework. As principais id4ias adaptadas foram/ a forma como
mensurar reputa1Ces) e de 5ue forma reali+ar o julgamento. Ho entanto) os
detalhes da abordagem ser2o descritos na se12o I.
9:9:/ (stratgias
( domFnio da competi12o ART-Testbed 4 de obra de artes. &lientes
re5uisitam a avalia12o de pinturas aos agentes competidores) 5ue s2o os
avaliadores. &omo certos avaliadores n2o s2o peritos em Ereas em 5ue
certas pinturas se en5uadram) hE a necessidade de interagir com outros
para 5ue seja possFvel chegar na melhor avalia12o. !ntretanto) as
informa1Ces transmitidas de um agente ao outro nem sempre s2o
verdadeiras. (s agentes devem saber distinguir 5uem di+ a verdade e a
-
mentira) e de 5ue forma uma informa12o pode inJuenciar na sua avalia12o
@nal.
&omo o domFnio trata em avaliar pinturas) um conjunto de estrat4gias
focadas para o problema p>de ser aplicado) como por eKemplo) o uso de
estatFsticas. Aessa forma) o agente usa t4cnicas 5ue ajudam a avaliar as
pinturas da melhor forma possFvel.
9:/ Principais contribui=es
'mplementa12o de um estudo de caso para o Governance Framework)
visando comprovar 5ue para domFnios 5ue envolvam reputa12o de
agentes) as id4ias aplicadas no framework mostram-se aplicEveis
tanto para medir a reputa12o de um ou mais agente) como tamb4m
para julgE-los.
'mplementa12o de um agente) nomeado temporariamente como
agente "!) para o domFnio ART-Testbed) eKplorando as
caracterFsticas do domFnio. Hada melhor como uma competu12o para
veri@car se as polFticas adotadas pelo agente s2o boas ou ruins.
Avalia12o do Governance Framework atrav4s da compara12o dos
resultados obtidos entre agentes 5ue n2o utili+am o framework e
agentes 5ue utili+am. "ogo) a inten12o 4 de@nir 5uais tipos de
informa1Ces do framework realmente foram 6teis para avaliar
agentes de reputa12o) e a5uelas 5ue n2o foram. Al4m disso) veri@car
por5ue alguns agentes foram melhor sucedidos 5ue o nosso durante
a fase de testes.
9:2 #rganizao do trabal>o
$rimeiramente 7e12o ,8 s2o de@nidos alguns conceitos te3ricos de suma
importLncia para a compreens2o do projeto) pois todos eles s2o
constantemente citados durante a documenta12o. !m seguida) na se12o I)
4 de@nida a adapta12o do Governance Framework juntamente com a
descri12o das t4cnicas usadas para tornar o agente um forte competidor. ME
na se12o B 4 feita uma conclus2o e uma descri12o dos trabalhos futuros.
$
/ %unda6entos Te?ricos
Alguns conceitos envolvidos no projeto devem estar bem esclarecidos antes
de apresentarmos as contribui1Ces deste trabalho. $ortanto) visando
esclarec?-los) esta se12o apresenta os seguintes conceitos/ 0As 9:) ;<=)
framework AF 9,=) Governance Framework 9B) G= e a competi12o ART-
Testbed 9;) <) .) D) ;-) ;;) ;B=.
/:9 !iste6as *ulti-Agentes@!*AsA
NE algum tempo) tecnologias de sistemas baseados em agente t?m gerado
uma grande eKcita12o) devido ao surgimento deste novo paradigma 5ue
inJuencia na conceitua12o) no design) e na implementa12o de sistemas de
software. Realmente tornou-se bem atrativo a eKist?ncia de softwares 5ue
operam em ambientes 5ue s2o distribuFdos e abertos) como a 'nternet.
%ma grande 5uantidade de sistemas baseados em agente consistia em
apenas um 6nico agente) 5ue nada mais 4 5ue um componente de software
aut>nomo) orientado a objetivos e 5ue interage com outros componentes
adaptando o seu comportamento. !ntretanto) com o amadurecimento da
tecnologia e das aplica1Ces) percebeu-se 5ue certos sistemas de software
precisariam ser compostos por um conjunto de agentes 5ue interagiriam em
um conteKto especF@co de uma aplica12o e 5ue fossem independentes.
Heste momento surge o conceito de sistemas 0ulti-Agentes 9:) ;<=.
( conceito de sociedade de agentes surgiu com o intuito de desenvolver
0As onde agentes fossem capa+es de desempenhar diversos pap4is em
diferentes organi+a1Ces. $ara compreender bem esse conceito) a de@ni12o
de organi+a12o e papel deve ser esclarecida.
(rgani+a1Ces s2o usadas para representar parti1Ces e grupos de
departamentos) comunidades e sociedades responsEveis por agrupar
agentes. %ma organi+a12o pode de@nir sub-organi+a1Ces 7Ferber et al.)
,--I8 9;= e um conjunto de aKiomas 7regras) princFpios ou leis8 5ue agentes
e sub-organi+a1Ces devem respeitar. %ma organi+a12o pode ser passiva ou
ativa) isto 4) ela pode n2o interferir nas transa1Ces reali+adas na sua
aplica12o) ou pode ser atuante atrav4s da eKecu12o de planos e a1Ces 5ue
a possibilite alcan1ar seus objetivos.
ME os pap4is s2o usados para restringir e guiar o comportamento de
agentes. $or interm4dio deles s2o descritos os objetivos 5ue o agente deve
atingir en5uanto desempenha o papel e as a1Ces 5ue os agentes devem ou
podem eKecutar 7Ou et al.) ;:::8. (s pap4is devem fa+er parte do conteKto
de uma organi+a12o) como no mundo real. 'magine uma pessoa 5ue 4
estudante de um curso de ingl?s e 5ue 4 pes5uisadora de um laborat3rio.
Hessa caso) ela possui dois pap4is 7estudante e pes5uisadora8) e cada um
desses pap4is estE associado com uma organi+a12o 7curso de ingl?s e
laborat3rio de pes5uisa respectivamente8.
Aessa forma) um agente sempre terE 5ue desempenhar ao menos um
papel 5ue fa+ parte do conteKto de uma certa organi+a12o. Aependendo da
situa12o) um agente pode estar associado a uma s4rie de pap4is de uma
mesma ou de diferentes organi+a1Ces.
4
/:/ AgentB !ocietB %ra6ewor<@A!%A
AF 9,= 4 um framework orientado a objetos para implementar sociedades
de agentes. %tili+ando-o 4 possFvel implementar vErios agentes
desempenhando in6meros pap4is em diferentes organi+a1Ces. Aesta forma
o framework lida com agentes) pap4is) organi+a1Ces e ambientes como
entidades de primeira ordem. $ara cada entidade) um detalhado ciclo de
vida 4 de@nido descrevendo os estados de eKecu12o e eventos 5ue causam
as transi1Ces de uma entidade a partir de um estado para outro. Paseada
em representa1Ces grE@cas dos modelos de ciclo de vida) os modelos
computacionais de cada entidade podem ser eKplorados. !les de@nem os
comportamentos das entidades associadas a cada estado descrito nos ciclos
de vida.
Ha @gura ; 4 apresentada a vis2o geral de como as principais entidades
presentes no AF s2o implementadas. Qeri@ca-se a representa12o de
conceitos 5ue jE foram citados) como/ organi+a12o) papel e agente.
%igura 9 C *odelo do A!%:
&ada agente 7Agent8 desempenha um ou mais pap4is 7AgentRole8.
Ruando 4 de@nida uma rela12o desse tipo) o agente poderE ter objetivos
7Goal8 5ue ser2o alcan1ados pelo interm4dio de planos 7$lan8 responsEveis
por eKecutar um conjunto de a1Ces 7Action8 5ue podem ter pr4 ou p3s
:
condi1Ces 7&ondition8. Ao eKecutar os planos e a1Ces) os agentes atuali+am
o conjunto de cren1as 7Pelief8 5ue possuem. !Kistem dois tipos de objetivos/
composto7&ompositeGoal8 e simples7"eafGoal8. ( simples nada mais 4 do
5ue a pr3pria representa12o de um objetivo 5ual5uer. ME o composto) indica
5ue ele s3 serE alcan1ado) caso os objetivos 5ue o compCem tamb4m
sejam. Aa mesma maneira) eKistem dois tipos de cren1as/ simples e
composta. &omo no caso dos objetivos) a primeira representa a pr3pria
cren1a) jE a outra de@ne 5ue uma delas 4 composta por vErias.
Associados aos pap4is) podem estar objetivos) cren1as e ainda podem
eKistir a1Ces caracteri+adas como obriga1Ces 7Aut#8 ou direitos 7Right8. (s
objetivos de um papel s2o a5ueles 5ue o agente deve tentar atingir
en5uanto desempenha o papel. !n5uanto as cren1as de um papel s2o
passadas para o agente assim 5ue este se dispCem a desempenhar o papel.
As a1Ces caracteri+adas como obriga1Ces s2o a1Ces 5ue um agente T!0
5ue eKecutar) e as de direito identi@cam 5uais a1Ces um agente $(A!
eKecutar.
&ada papel deverE fa+er parte de um conteKto de uma organi+a12o
principal 70ain(rgani+ation8 5ue poderE determinar aKiomas 7AKiom8 5ue
tanto seus agentes como suas sub-organi+a1Ces 7(rgani+ation8 dever2o
respeitar. Al4m dos agentes poderem desempenhar pap4is) uma sub-
organi+a12o tamb4m poderE . Al4m de de@nir aKiomas) uma organi+a12o
5ue atua ativamente em transa1Ces da aplica12o poderE ter objetivos)
planos) a1Ces e cren1as.
%ma parte bem interessante do framework 4 a comunica12o por
mensagens. $ara a sua reali+a12o) tr?s tipos de rela1Ces s2o possFveis/
agentes com organi+a1Ces) agente com agentes e organi+a1Ces com
organi+a1Ces. Assim) 5uando uma dessas 4 usada) s2o utili+adas
mensagens 70essage8 5ue s2o tratadas por protocolos 7$rotocol8 5ue s2o
associados com pap4is de agentes eSou de organi+a1Ces.
"ogo) as principais entidades do modelo s2o a5uelas 5ue representam os
agentes e as organi+a1Ces. !las s2o hospedadas em algum ambiente
7!nvironment8 responsEvel por guardar objetos 7(bject8 utili+ados por elas
durante suas transa1Ces.
/:2 ;oernance %ra6ewor<
( framework representa um mecanismo de governan1a 9;B= baseado em
testemunhos fornecidos por agentes 5ue testemunham fatos) ou seja)
normas violadas. ( framework de@ne tr?s sub-sistemas como ilustrado na
@gura ,. ( m3dulo de julgamento 7Mudgement #stem8 4 responsEvel por
receber testemunhos e prover uma decis2o ou veredicto para o m3dulo
puni12o 7$unishment #stem8. ( sistema pode usar diferentes estrat4gias
para julgar a viola12o de diferentes normas especi@cadas pela aplica12o.
&ada estrat4gia pode usar a reputa12o de agentes) calculadas a partir do
sub-sistema reputa12o 7Reputation #stem8) para 5ue encontre sua decis2o
@nal. Assim) o m3dulo de reputa12o calcula a reputa12o de agentes para
5ue depois elas sejam informadas para o m3dulo julgamento e para
aplica1Ces de agente 7Application8. As reputa1Ces s2o atuali+adas a partir
de decisCes providas pelo m3dulo julgamento sobre as viola1Ces de normas.
B
Reputation
$or6Reputation ;lobalReputation RoleReputation
Aiferentes normas podem inJuenciar a reputa12o de agentes em diferentes
momentos. ME o m3dulo puni12o seleciona as penalidades especi@cadas em
normas para 5ue os agentes considerados culpados possam receb?-las.
%igure /%igura 9 C *odelo do A!%: C *ecanis6o de goernana:
( framework de@ne no sub-sistema reputa12o tr?s tipos de reputa12o
7@gura I8/ reputa12o global) por papel e por norma. A primeira representa a
m4dia de todas as reputa1Ces parciais de algum agente) en5uanto 5ue a
segunda representa a m4dia das reputa1Ces parciais de um agente
desempenhando um mesmo papel. ME a 6ltima indica a m4dia das
reputa1Ces parciais de uma mesma norma. $ara 5ue essas reputa1Ces
possam ser calculadas) uma s4rie de variEveis s2o usadas) como/ poder da
norma 7grau de importLncia da norma8) controle de ve+es 5ue um agente
violou alguma norma) a informa12o se um agente confessou alguma
viola12o feita por ele e o grau de certe+a 5ue o sistema possui sobre os
dados obtidos para calcular a reputa12o.
&
%igure 2 C Tipos de reputao do ;oernance %ra6ewor<:
A
( mecanismo de governan1a foi implementado usando o framework AF
7Agent ociet# Framework8) para 5ue pudesse prover suporte para agentes)
organi+a1Ces e pap4is. Qisando manter tais conceitos presentes) os tr?s sub-
sistemas de governan1a supracitados foram implementados como
organi+a1Ces separadas responsEveis por interagir com a 5uarta
organi+a12o 7Application8 onde as aplica1Ces de agente est2o situadas.
/:1 Agent Reputation and Trust Testbed @ART-TestbedA
A competi12o ART-Testbed 9;) <) .) D) ;-) ;;) ;B= foi criada com o intuito de
estabili+ar um teste para agentes de reputa12o e tecnologias relacionadas.
!la simula um jogo como um ambiente de neg3cio onde clientes compram
opiniCes sobre pinturas. &ada agente participante do jogo 4 um provedor do
servi1o 7avaliador de pintura8 responsEvel por vender suas opiniCes 5uando
re5uisitado 7@gura B8.
&ada pintura possui uma TeraU especi@ca) isto 4) uma categoria na
5ual ela se en5uadra para avalia12o. Assim) no inicio de cada jogo) os
avaliadores recebem de forma rand>mica os graus de conhecimento para
cada era do jogo 7no total ;- eras8) atrav4s de um simulador oferecido pela
competi12o. &omo em certas situa1Ces um avaliador pode receber pinturas
pertencentes a certas eras Vs 5uais ele n2o possui um grau de
conhecimento muito grande) ele pode procurar interagir com os outros
avaliadores presentes no jogo para chegar na avalia12o mais correta
possFvel.
%igure 1 C Viso geral do do6Dnio de artes da co6petio ART-Testbed:
C
!Kistem duas maneiras de intera1Ces entre agentes avaliadores/
re5uisi12o de reputa12o e de opini2o. A primeira permite 5ue um agente A
solicite a reputa12o de um agente & segundo o ponto de vista do agente P.
A informa12o provida pelo agente P ao agente A 4 um valor de - at4 ;.
Ruanto menor o valor) menor a reputa12o do agente & em rela12o ao
agente P) e 5uanto maior) maior a reputa12o. A informa12o fornecida pelo
agente P pode ser tanto uma verdade como uma mentira. ( agente A
deverE tratar da melhor maneira possFvel V informa12o obtida) al4m de
desembolsar um dinheiro para pagar o dado transmitido 7valor do
pagamento estipulado pelo simulado da competi12o8 pelo agente P. ME a
intera12o por opini2o 4 5uando um avaliador solicita a opini2o de uma
pintura para algum outro. ( agente 5ue recebe a solicita12o pode tanto
rejeitar como aceitar informar sua opini2o. &aso aceite ele informa seu grau
de conhecimento da era 7certaint# assessment8 para 5ue o agente re5uisitor
possa decidir se realmente desejarE obter a sua opini2o. Ap3s sua decis2o)
o agente informa se aceita ou rejeita obter a opini2o do outro avaliador.
Aceitando) ele reali+a o pagamento da informa12o 5ue deseja obter 7como
na reputa12o o valor a ser pago 4 determinado pelo simulador da
competi12o.8. Ap3s o agente re5uisitor pagar o agente provedor) este
informa sua opini2o. !ntretanto) as informa1Ces transmitidas 7certaint#
assessment e a avalia12o do provedor8 podem ser tanto verdadeiras como
mentirosas. As @guras < e . apresentam respectivamente o protocolo de
transa12o da intera12o de reputa12o e de opini2o.
( jogo possui um conjunto de ;: sessCes. Ho t4rmino de cada sess2o
hE a veri@ca12o de 5ual avaliador chegou mais pr3Kimo do valor verdadeiro
da pintura. A5uele 5ue mais se aproKimar dos valores verdadeiros) ganham
mais clientes e conse5Wentemente mais dinheiro. Ho @nal do jogo) o agente
avaliador 5ue obtiver a maior soma em dinheiro 4 o vencedor.
%igure 0 C Protocolo de transao da reputao:
D
%igure E C Protocolo de transao de opinio:
$ara desenvolver um avaliador basta estender uma classe Agent
oferecida pelo ART-Testbed. Ha classe hE nove m4todos abstratos 5ue
devem ser implementados pela classe 5ue a estender. Hesses m4todos estE
toda a intelig?ncia de cada agente competidor. Qeja a seguir uma breve
descri12o de cada.
prepareReputationRe5uests78/ Re5uisitar a opini2o de algum
avaliador.
prepareReputationAcceptsAndAeclines/ Aceita12o ou rejei12o das
reputa1Ces re5uisitadas.
prepareReputationReplies/ Fornecimento das reputa1Ces re5uisitadas.
prepare(pinionRe5uests/ olicitar opini2o das pinturas avaliadas pelo
agente.
prepare(pinion&ertainties/ Agente provedor fornece seu nFvel de
perFcia da pintura.
prepare(pinionRe5uest&on@rmations/ Aceite ou rejei12o da opini2o
re5uisitada.
prepare(pinion&reation(rders/ Fornecedor gasta dinheiro para gerar
opini2o e recebe pagamento do re5uisitor.
prepare(pinion$roviderXeights/ $onto de vista do agente avaliador
em rela12o ao peso 7- at4 ;8 de cada era dos agentes presentes no
jogo. ( peso indica o grau de inJu?ncia 5ue alguma informa12o
fornecida por algum avaliador terE na avalia12o @nal do agente.
prepare(pinionReplies/ !nvio das opiniCes re5uisitadas. ( agente
avaliador funciona como provedor de opiniCes.
-%
2 Agente Aaliador
Ho sub-t3pico ,.B foram eKplicados os dois tipos de intera12o 5ue eKistem
entre agentes avaliadores/ opini2o e reputa12o. A seguir s2o eKplicadas de
5ue forma cada intera12o foi utili+ada no algoritmo desenvolvido) as
adapta1Ces usadas para aplicar algumas id4ias do Governance Framework
9B) G=) e 5uais foram as maiores di@culdades encontradas durante a cria12o
do agente.
2:9 "nterao de opinio
&omo jE havia dito no sub-t3pico ,.B) os agentes avaliadores possuem um
grau de conhecimento 7de - at4 ;8 atribuFdo randomicamente no inFcio de
cada jogo para as ;- eras presentes. &onse5Wentemente) em algumas eras
o nosso agente n2o possui um grau de perFcia elevado) tendo a necessidade
de interagir com outros agentes para conseguir uma melhor avalia12o das
pinturas re5uisitadas nestas eras. Ho entanto) hE a necessidade de
distinguir 5uais opiniCes s2o mais ben4@cas para o agente 5ue as
re5uisitou.
'nicialmente pensamos em atribuir a polFtica de re5uisitar opiniCes
apenas para os agentes 5ue menos mentiam tanto para a informa12o do
seu conhecimento da era 7certaint# assessment8 como para o valor da
opini2o. Apesar dessa id4ia aparentar ser bem l3gica) percebeu-se 5ue
algumas das ve+es uma mentira sobre certaint# assessment do agente
provedor) pode n2o ser ruim. $ara facilitar o entendimento) suponhamos
7@gura D8 5ue nosso agente "! solicita uma opini2o de alguma pintura
pertencente a era< para um agente competidor. Ho primeiro caso) o agente
competidor sempre informa 5ue sua perFcia na era< 4 de -);) e 5ue sua
avalia12o sempre 4 referente ao grau de conhecimento informado. ME no
segundo caso 7@gura G8) um outro agente competidor 5ue tamb4m recebeu
uma solicita12o do nosso agente) sempre di+ 5ue seu grau de perFcia na
era< 4 -);) assim como o outro. Ho entanto) ele sempre informa valores 5ue
s2o aproKimados da avalia12o correta. &omparando os dois casos) torna-se
mais interessante usar as informa1Ces do 6ltimo agente do 5ue o do
primeiro caso. "ogo) a informa12o sobre o grau de conhecimento fornecido
por um agente provedor concorrente) em uma intera12o de opini2o) n2o
deve ser sempre considerada a mais importante.
( simulador feito pela competi12o) disponFvel no seu site o@cial 9;=) 4 o
responsEvel por criar o ambiente dos jogos) tanto 4 5ue ele foi utili+ado para
os testes do agente desenvolvido. 'nternamente ele utili+a a seguinte
f3rmula para calcular a avalia12o @nal de cada avaliador em rela12o a uma
pintura/
pYZ[
i
7w
i
. p
i
8 )
[
i
7w
i
8
--
onde w
i
e p
i
s2o respectivamente o peso do avaliador i segundo o ponto de
vista de um agente) e o valor de uma opini2o do mesmo agente avaliado.
%igure F- "nterao por opinio eGe6plo 9:
-$
%igure H- "nterao por opinio eGe6plo /:
&omo hE a necessidade de representar a reputa12o das eras para cada
agente) foram de@nidas reputa1Ces de papel 7role reputation8. Aessa
maneira) podemos veri@car se toda a informa12o transmitida por um
determinado avaliador) referente a alguma era) pode ou n2o ser usada de
forma positiva para a avalia12o @nal de alguma pintura. "ogo) as reputa1Ces
de papel s2o os pesos de cada avaliador referente a alguma era. Ha @gura :
hE a representa12o dessa id4ia.
%igure 3 C Reputa=es de papel para cada era de cada agente co6petidor:
$ara 5ue as reputa1Ces de papel pudessem ser calculadas) houve a
necessidade de hist3rico de conhecimento. &omo cada jogo 4 dividido em
;: sessCes) somente na primeira sess2o consideramos 5ue todos os
agentes informam meias verdades 7w
i
Z-)<8 para as perFcias 5ue o agente
"! t?m grau de conhecimento inferior a -.<) caso contrErio) considera o
peso dos agentes igual a +ero) jE 5ue nosso agente n2o possui nenhuma
informa12o passada dos adversErios. Ap3s a primeira sess2o) nosso agente
come1a a conhecer cada ve+ mais as caracterFsticas dos avaliadores
presentes no jogo. Antes das reputa1Ces serem atuali+adas) hE a veri@ca12o
se ocorreu viola12o de norma. %ma viola12o acontece 5uando a opini2o do
agente provedor sobre uma pintura solicitada n2o ajuda de forma alguma a
Agente L(!
:::
Role
Reputations
Agente
co6petidor 9
Role
Reputations
Agente
co6petidor /
Role
Reputations
Agente
co6petidor n
era9 era/ ::: era3 era94
-4
avalia12o @nal do nosso agente. omente ap3s essa anElise 5ue 4 permitida
a atuali+a12o da reputa12o.
$ercebe-se acima a eKist?ncia de dois conceitos presentes no
Governance Framework/ julgamento e o cElculo das reputa1Ces. $ara
facilitar o entendimento de como eles foram aplicado no agente
desenvolvido) cada um deles 4 eKplicado em um sub-t3pico a seguir.
Processo de Iulga6entoJ
Qisando seguir a id4ia do Governance Framework 9B) G=) o julgamento 4
reali+ado a partir de informa1Ces baseadas em testemunhos. Ho nosso caso)
a testemunha 4 o sistema 5ue fornece o valor correto da pintura) para 5ue a
partir daF possa ser reali+ado o julgamento de algum outro agente avaliador.
Assim) nosso agente desempenharE a fun12o de jui+ para 5ue o veredicto
@nal dos concorrentes possa ser reali+ado.
Ho julgamento) nosso avaliador veri@ca cada opini2o fornecida na
6ltima rodada) e calcula para cada uma delas o acerto percentual
7blame$ercentage8 em rela12o ao valor verdadeiro na pintura 7testemunho
fornecido pelo sistema8. A f3rmula usada 4 a seguinte/
blame$ercentage Z AppraisedQalue S TrueQalue)
onde AppraisedQalue representa o pre1o avaliado segundo algum agente
5ue recebeu uma re5uisi12o de opini2o para uma certa pintura. ME o
TrueQalue 4 o valor real da pintura) 5ue 4 revelado no @nal da sess2o. $ara
reali+ar tais cElculos a sess2o corrente sempre usa as opiniCes da sess2o
anterior) pois esses s2o os dados disponFveis pelo jogo.
Assim) ap3s obter o valor blame$ercentage 4 feita a veri@ca12o se o
erro relacionado a opini2o foi superior a ;--\) tanto para mais como para
menos) ou seja) -\ e ,--\ signi@cam a mesma coisa jE 5ue a diferen1a 4
de ;--. &aso isso tenha ocorrido) blame$ercentage recebe o valor T-)-U) jE
5ue a opini2o n2o nos ajuda na avalia12o. !ntretanto) caso o erro seja
inferior a ;--\) o valor da variEvel blame$ercentage 4 mantido. Aessa
forma) podemos veri@car se ocorreu viola12o de norma atrav4s de uma
compara12o entre a percentagem de acerto da opini2o e o grau de
conhecimento do nosso avaliador em rela12o V era da pintura opinada. e
blame$ercentage for maior ou igual V perFcia do nosso agente) n2o hE
viola12o de norma) caso contrErio hE o registro de tal viola12o.
2:9:9 C7lculo da ReputaoJ
&omo o agente desenvolvido pode solicitar opiniCes de vErias pinturas de
uma mesma era para um avaliador especF@co durante uma mesma sess2o)
4 reali+ada a m4dia das blame$ercentages encontradas
-:
7averagePlame$ercentages8) para 5ue assim possa ser reali+ada a
atuali+a12o da reputa12o de papel correspondente) pelo interm4dio da
seguinte f3rmula/
newRoleReputation Z 9 7, Y oldRoleReputation8 ] 7averagePlame$ercentages8 = S I)
onde oldRoleReputation representa a reputa12o de papel de uma certa era
na sess2o anterior) averagePlame$ercentages a m4dia das porcentagens de
acerto das opiniCes providas de uma mesma era) e newRoleReputation a
reputa12o de papel atuali+ada.
Apesar de agora conseguirmos encontrar os valores das reputa1Ces
de papel atuali+ados) e eles representarem os pesos 7w
i
8 das eras de cada
agente avaliador) deve-se tamb4m veri@car se 4 interessante aumentar ou
diminuir o peso do nosso agente ou o peso de algum concorrente especi@co
em algum caso. Pom) para sermos mais claros) imagine a situa12o em 5ue
para numa mesma era o nosso agente possuFsse a perFcia -.:) en5uanto
5ue todos os outros agentes ap3s diversas anElises possuFssem perFcia 7role
reputation8 de grau -.;. Hosso resultado @nal torna-se mais vantajoso caso
o grau do nosso agente "! suba para ;.- en5uanto 5ue os outros recebam
valor -.-) pois isso permitirE 5ue tenhamos mais con@an1a em rela12o a
avalia12o @nal do nosso agente) devido o seu alto grau de perFcia e o baiKo
grau dos outros agentes segundo as anElises reali+adas por ele. Qeja a
seguir dois casos referentes ao eKemplo acima) e lembre-se 5ue os valores
s2o aplicados V f3rmula/
pYZ[
i
7w
i
. p
i
8 )
[
i
7w
i
8
de@nida no simulador oferecido pela competi12o.
!Kemplo/
!m um jogo com tr?s agentes) o nosso agente estE avaliando uma
pintura 5ue custa na realidade R^ ;-.---. $ara tentar chegar o mais
pr3Kimo possFvel desse valor) ele interage com outros agentes. 0esmo o
agente "! tendo uma alta perFcia sobre a era correspondente 7-):8) ele
procura complementar sua informa12o com as opiniCes dos avaliadores
concorrentes. (s dois agentes 5ue fornecem opiniCes para o agente "!
informam 5ue seus graus de conhecimento sobre a era especF@ca 4 -);. Ho
primeiro caso s2o usados os pesos 7role reputations8 sem altera1Ces) jE no
segundo eles jE sofrem mudan1as.
-B
Resumo:
Grau dos agentes fornecedores da opinio: -);.
Valor opinado pelos agentes: R^ ;.---
Grau do agente LES: -):
Valor fornecido pelo sistema a partir do conhecimento do
agente LES: R^ :.---
Caso 1: 7-); Y ;.---8 ] 7-); Y ;.---8 ] 7-): Y :.---8 Z 7.545, 45
-); ] -); ] -):
Caso 2: 7-)- Y ;.---8 ] 7-)- Y ;.---8 ] 7;)- Y :.---8 Z 9.000
-)- ] -)- ] ;)-
Assim) se sempre eKistir um agente especF@co com um grau bem
superior em rela12o aos outros) alterar os pesos pode ser interessante)
como no segundo caso apresentado no eKemplo acima. !ntretanto) caso os
graus de perFcia entre os agentes sejam muito parecidos) torna-se perigoso
aumentar o grau de algum deles) jE 5ue a diferen1a entre um e outro 4
mFnima) e sem contar 5ue tais dados s2o baseados segundo os estudos
feitos pelo nosso agente 5ue n2o garantem com ;--\ de certe+a se tais
avaliadores continuar2o informando opiniCes em torno das m4dias de peso
encontradas) jE 5ue um agente pode mudar repentinamente de
comportamento. %ma maneira para auKiliar o aumento ou a diminui12o do
grau de um agente) 4 a partir do n6mero de viola1Ces e uma s4rie de
compara1Ces do peso de um agente em rela12o a todos os outros. A seguir)
hE a eKplica12o dos possFveis incrementos e decrementos dos pesos de
cada avaliador durante as sessCes do jogo.
'ncrementos/
Ruando algum agente possui um grau muito superior
referente a todos os outros avaliadores) segundo a anElise do
agente "!.
Ruando a menor parte dos agentes possuem perFcia
muito superior em rela12o V maioria dos avaliadores.
Aecrementos/
Algum agente possui perFcia muito inferior em rela12o V todos
os outros agentes.
Ruando a menor parte dos agentes possuem perFcia muito
inferior em rela12o V maioria dos avaliadores.
(s valores escolhidos para os possFveis decrementos e incrementos
foram selecionados a partir de uma s4rie de testes) e da anElise do
comportamento de alguns agentes competidores da 6ltima vers2o do ART-
Testbed. %ma informa12o importante a ser frisada 4 5ue dependendo da
diferen1a entre as perFcias 7reputa1Ces de papel8 dos avaliadores envolvidos
7segundo o agente "!8) um incremento ou decremento maior ou menor
pode ocorrer.
-&
Rui
6
*el>o
r
2:/ "nterao de reputao
A outra intera12o entre avaliadores 4 a de reputa12o 7sub-t3pico ,.B8) onde
um agente A pode solicitar a reputa12o de um agente & a partir do ponto de
vista do agente P 7eK/ @gura ;-8. Assim) a intera12o acontece entre os
agentes A e P) sendo o primeiro o solicitador da informa12o en5uanto o
segundo o provedor.
Hessa vers2o do agente "!) n2o houve um desenvolvimento 5ue
usasse tal intera12o) no entanto) algumas reJeKCes sobre o assunto foram
feitas) sendo grande parte delas referente ao uso da intera12o por opini2o.
%igure 94 C (Ge6plo de u6a interao por reputao:
A intera12o por reputa12o permite 5ue conhe1amos a reputa12o de
um agente em rela12o a outro) ou veri@camos 5ue a reputa12o informada
na realidade 4 uma grande mentira. $ara poder veri@car se 4 verdade ou
mentira) hE a necessidade de usar a intera12o de opini2o) pois ela garante
uma informa12o mais Ts3lidaU em rela12o aos competidores.
Assim como as trocas de opini2o) as de reputa12o geram gastos
estipulados pelo simulador da competi12o) no entanto) as informa1Ces de
reputa12o) diferentemente das de opini2o n2o geram informa1Ces
su@cientes para 5ue possa obter com um certo grau de certe+a sobre 5uem
di+ mais a verdade e a mentira.
Ap3s anElises em um conjunto de agentes participantes da 6ltima
vers2o do ART-Testebed 7,--.8) foi constatado 5ue a grande maioria n2o
usava intera12o por reputa12o. 'sso nos leva a acreditar 5ue tal intera12o
n2o nos d? um ganho signi@cativo assim como a por opini2o. &laro 5ue n2o
podemos garantir 5ue em nenhuma situa12o tal intera12o seja 6til) no
entanto) haverE a necessidade de um estudo 5ue veri@5ue se eKiste algum
meio de usE-lo para nosso benefFcio.
%ma das metas da pr3Kima vers2o do agente ART-Testbed 4 procurar
encaiKar alguma t4cnica 5ue permita usar a intera12o de reputa12o e o
torne mais inteligente em rela12o aos outros.
2:2 Di8iculdades
-A
As di@culdades encontradas durante o desenvolvimento do nosso agente
est2o intimamente relacionadas ao Governance Framework) e o domFnio da
aplica12o. A seguir) hE dois sub-t3picos 5ue detalham cada situa12o.
2:2:9 ;oernance %ra6ewor<
A primeira di@culdade encontrada para adaptar o Governance Framework)
foi decidir 5ual ou 5uais das reputa1Ces oferecidas 7norm reputation) role
reputation) e global reputation8 por ela poderiam ser utili+adas para o
domFnio em 5ue o agente seria aplicado 7sub-t3pico ,.I8. Ap3s algumas
anElises) percebeu-se 5ue o mais interessante seria usar a reputa12o por
papel para 5ue cada era de um agente tivesse a sua e assim possibilitar a
veri@ca12o de cada caso de forma independente) como apresentado na
@gura :.
Ap3s decidir o uso da reputa12o por papel) o pr3Kimo passo era
de@nir como reali+ar o cElculo da reputa12o. $ensamos em reutili+ar a
f3rmula proposta pelo Governance Framework) no entanto) percebeu-se 5ue
um conjunto de variEveis utili+adas por ela n2o seria 6til para o agente)
como por eKemplo/ witnessRoleReputation e defendantRoleReputation. A
primeira representa a reputa12o de papel de uma testemunha. Ho nosso
caso sempre serE ;.-) pois a testemunha 4 o simulador da competi12o 5ue
informa no @nal de cada sess2o o valor verdadeiro das sessCes. &omo
temos a garantia 5ue tais informa1Ces sempre ser2o corretas) ent2o n2o hE
necessidade de representar essa variEvel. ME a defendantRoleReputation
representa a reputa12o de papel de um r4u. Ho domFnio da competi12o) tal
informa12o 4 desnecessEria.
%m ponto 5ue chamou aten12o e 5ue n2o foi tratado pelo framework
foi V id4ia de incrementar a reputa12o de alguns agentes a partir de um
certo instante ou situa12o. Ha vers2o atual) acontece apenas decremento
na reputa12o. e em algum instante o agente receber a atribui12o +ero) ele
@carE com a5uele valor pelo resto da vida. !sse ponto torna-se crFtico) jE
5ue em algumas situa1Ces poderemos decidir interagir com o menos pior
dos agentes envolvidos em um domFnio.
Apesar disso) o framework ajudou bastante em medir as reputa1Ces
dos agentes. &laro 5ue adapta1Ces foram reali+adas devido o domFnio do
problema) no entanto) a id4ia de como estruturar nosso agente competidor
veio a partir do Governance Framework.
2:2:/ Do6Dnio ART-Testbed
Aistinguir informa1Ces verdadeiras de mentirosas em um domFnio de
aplica12o no geral 4 uma situa12o complicada) sendo 5ue dependendo dos
envolvidos) uma certa t4cnica pode ser melhor utili+ada do 5ue outra. !sse
foi um dos pontos veri@cados durante a fase de testes do agente
desenvolvido) pois em certos jogos em 5ue um competidor era o mesmo)
dependendo dos outros avaliadores do jogo) nosso agente conseguia ganhar
ou perder.
-C
_ improvEvel construir um agente 5ue possa superar todas as
t4cnicas possFveis para reputa12o) pois certas delas ajudam algumas outras)
assim como atrapalham. imula1Ces de diferentes jogos com grupos de
participantes distintos foram feitos para comprovar esse fato. A 5uest2o 4
construir um algoritmo 5ue primeiro se saia bem em todos os jogos) mesmo
5ue n2o os ven1a. e conseguirmos criar um agente 5ue consiga @car
sempre entre os primeiros) teremos a certe+a 5ue ele 4 um forte
competidor.
-D
1 Concluso e trabal>os 8uturos
!sse projeto visou implementar um agente para o domFnio ART-Testbed 5ue
aplicasse t4cnicas do Governance Framework. Aessa maneira) mais um
estudo de caso para o framework foi criado) permitindo avaliar e constatar
5ue os conceitos aplicados nele s2o realmente 6teis para medir reputa1Ces.
( agente desenvolvido precisa sofrer ainda algumas altera1Ces para
tornE-lo t2o forte 5uanto os primeiros colocados da 6ltima vers2o do ART-
Testbed. Qisando esse crescimento) pretendemos seguir os seguintes
passos/
Finali+a12o dos estudos dos agentes competidores da 6ltima vers2o
do ART-Testbed.
!studo de novas t4cnicas de reputa12o para 5ue possam bene@ciar a
forma como as avalia1Ces s2o feitas atualmente. $rincipalmente a
situa12o 5uando um agente passa de uma hora para outra a ser
honesto para desonesto e vice-versa`
$rocurar aplicar intera12o de reputa12o no agente`
$ara maiores informa1Ces da competi12o e dos seus participantes visite
o site 9a= correspondente listado no t3pico TRefer?ncias PibliogrE@casU. %m
conjunto de artigos e eKplica1Ces 4 oferecido para estimular a participa12o
de novos membros.
$%
Re8erKncias 5ibliogr78icas
9;= ART Testbed Team. Agent Reputation and Trust Testbed.
http/SSwww.lips.uteKas.eduSbkfullamScompetitionS) ,--..
9,= Agent ociet# Framework - AF.
http/SSwww.les.inf.puc-rio.brSframeworkasfS
9I= &(TA) Andrew Aini+` '"QA) Qiviane Torres` "%&!HA) Mos4 &arlos $.)
Remodelando e Estendendo o Agent oc!ety "ramewor#) $%&-Rio 'nf.
0&& ;D S-.) Munho ,--..
9B= Fernanda Auran) Qiviane Torres da ilva) and &arlos M. $. de "ucena
7,--.8 T%sing Testimonies to !nforce the Pehavior of AgentsU.
9<= Fullam) c.) T. clos) G. 0uller) M. abater) A. chlosser) d. Topol) c. .
Parber) M. Rosenschein) ". Qercouter) and 0. Qoss. 7,--<8 eA peci@cation of
the Agent Reputation and Trust 7ART8 Testbed/ !Kperimentation and
&ompetition for Trust in Agent ocieties)e The Fourth 'nternational Moint
&onference on Autonomous Agents and 0ultiagent #stems 7AA0A-,--<8)
%trecht) Mul# ,<-,:) pp. <;,-<;G
9.= Fullam) c.) T. clos) G. 0uller) M. abater) d. Topol) c. . Parber) M.
Rosenschein) and ". Qercouter. 7,--<8 eA Aemonstration of The Agent
Reputation and Trust 7ART8 Testbed/ !Kperimentation and &ompetition for
Trust in Agent ocieties)e The Fourth 'nternational Moint &onference on
Autonomous Agents and 0ultiagent #stems 7AA0A-,--<8 Aemonstration
Track) %trecht) Mul# ,<-,:) pp. ;<;-;<,.
9D= Fullam) c. and c.. Parber. 7,--.8 e"earning Trust trategies in
Reputation !Kchange Hetworks)e The Fifth 'nternational Moint &onference on
Autonomous Agents and 0ultiagent #stems 7AA0A-,--.8) Nakodate)
Mapan) 0a# G-;,) pp. ;,B;-;,BG.
9G= Mos4 de . $. Guedes Qiviane Torres da ilva) and &arlos M. $. de "ucena
7,--.8 TA Reputation 0odel Pased on TestimoniesU.
9:= Mennings) H. R. and Xooldridge) $. Agent-or!ented so%tware
eng!neer!ng. 'n Pradshaw) M. 7!d.8 Nandbook of Agent Technolog#) AAA'S0'T
$ress) ,---.
$-
9;-= cafali) (. and $. Oolum. 7,--.8 eTrust trategies for ART Testbed)e The
Xorkshop on Trust in Agent ocieties at The Fifth 'nternational Moint
&onference on Autonomous Agents and 0ultiagent #stems 7AA0A-,--.8)
Nakodate) Mapan) 0a# :) pp. BI-B:.
9;;= en) .) '. Goswami) and . Airiau. 7,--.8 e!Kpertise and Trust-Pased
Formation of !*ective &oalitions/ An !valuation of the ART Testbed)e The
Xorkshop on Trust in Agent ocieties at The Fifth 'nternational Moint
&onference on Autonomous Agents and 0ultiagent #stems 7AA0A-,--.8)
Nakodate) Mapan) 0a# :) pp. D;-DG .

9;,= '"QA) Qiviane Torres. "rom a Conce&tual "ramewor# %or Agents
and 'b(ects to a $ult!-Agent ystem $odel!ng )anguage. ,--B.
Aisserta12o 7Aoutorado8 - $ontifFcia %niversidade &at3lica do Rio de Maneiro)
Aepartamento de 'nformEtica) Rio de Maneiro) ,--B.
9;I= '"QA) Q.` &(RT_) 0.` "%&!HA) &. ) An 'b(ect-'r!ented "ramewor#
%or *m&lement!ng Agent oc!et!es) $%&-Rio 'nf. 0&& I, S-B) etembro
,--B.
9;B= tranders) R. 7,--.8 Argumentation Pased Aecision 0aking for Trust in
0ulti-Agent #stems. 0asterfs Thesis) Aelft %niversit# of Technolog#.
9;<= Xooldridge) 0. and Mennings) +. R. P!t%alls o% agent-or!ented
develo&ment. $roceedings of the econd 'nternational &onference on
Autonomous Agents 7Agentsf:G8) A&0 $ress) pp. IG<-I:;) ;::G.
$$

You might also like