Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Niteri
2013
Ficha Catalogrfica Esta pgina deve ser removida na verso a ser entregue para a banca,
mas deve ser reinserida na verso final, com a ficha catalogrfica fornecida pela biblioteca.
Informaes sobre este processo devem ser obtidas na secretaria da ps-graduao.
BANCA EXAMINADORA
_____________________________________________________________
Prof. Dr. Viviane Torres da Silva Orientadora
UFF - Universidade Federal Fluminense
_____________________________________________________________
Prof. Dr. Anselmo Antunes Montenegro
UFF - Universidade Federal Fluminense
_____________________________________________________________
Prof. Dr. Ricardo Choren Noya
IME - Instituto Militar de Engenharia
Niteri
2013
Agradecimentos
Ao meu pai e meu irmo por me acompanharem neste perodo. Aos colegas que fiz na
ps-graduao, minha orientadora Viviane Torres Silva, aos professores e funcionrios da
UFF que me ajudaram no decorrer deste trabalho. A Jomi Hbner, coautor do Jason, pelo
suporte a ferramenta. Ao CNPq, pelo apoio financeiro dado atravs do processo n
146846/2010-9.
Muito Obrigado
Resumo
Agentes Emocionais BDI so uma classe de agentes que estende a arquitetura BDI
para resolver os problemas de capturar, expressar e simular o fenmeno emocional em
sistemas computacionais. Algumas abordagens de Agentes Emocionais BDI simulam a
emoo de forma explcita, construindo uma base de emoes que influencia as outras
instncias da arquitetura e funes que revisam o estado emocional sobre a arquitetura BDI.
Visto que no existe abordagem prvia que tenha realizado todas as possveis
influncias usando um embasamento terico vlido, esta Dissertao de Mestrado prope uma
arquitetura abstrata para lidar com a influncia emocional sobre todas as outras instncias da
arquitetura. Alm disto, esta proposta foi mapeada e implementada sobra a Plataforma de
Agentes Jason e uam srie de experimentos foram feitos para valid-la.
Palavra chave: Agentes emocionais, Agentes BDI, Arquitetura de Agente, Agentes
Emocionais BDI.
Abstract
Emotional BDI Agents are a class of agents that extend BDI architecture to solve
problems of capturing, expressing and simulating emotional phenomena on computational
systems. Some approaches of Emotional BDI Agents simulate emotion in an explicit way,
building an emotional base that influences other architectures instances and functions to
review the emotional state over the BDI architecture.
Since no previous approach has fulfilled all possible influences using a valid theorical
basis, this Masters Thesis proposes an abstract architecture to deal with emotional influence
on every other architectures instance. Furthermore, the proposed approach was mapped and
implemented using Jason Agent Platform and a serie of experiments has been performed to
validate it.
Keywords: Emotional Agents, BDI Agents, Agent Architecture, Emotional BDI Agents.
Lista de Figuras
Figura 1: Agent Function .............................................................................................. 21
Figura 2: Arquitetura BDI............................................................................................. 25
Figura 3: Estrutura geral do Jason ................................................................................ 26
Figura 4: Fluxo de execuo Jason ............................................................................... 27
Figura 5: Tpicos da Computao Afetiva ................................................................... 35
Figura 6: Arquitetura UEBDI internamente ................................................................. 70
Figura 7: Perception Function ...................................................................................... 72
Figura 8: Perception Function (internamente).............................................................. 73
Figura 9: Funes de Reviso Emocional..................................................................... 78
Figura 10: First Emotion Review Function................................................................... 80
Figura 11: First Emotion Review Function internamente ............................................. 81
Figura 12: Second Emotion Review Function ............................................................... 83
Figura 13: Second Emotion Review Function internamente ......................................... 83
Figura 1: Belief Review Function.................................................................................. 84
Figura 15: Belief Review Function (internamente) ....................................................... 84
Figura 16: Option Function .......................................................................................... 87
Figura 17. Option Function (internamente) .................................................................. 89
Figura 18: Filter Function ............................................................................................ 91
Figura 19: Filter Function internamente....................................................................... 91
Figura 20: Execute Function ......................................................................................... 94
Figura 21: Execute Function Internamente ................................................................... 95
Figura 22: Mapeamento Perception Function .............................................................. 99
Figura 23: Mapeamento Belief Review Function ........................................................ 101
Figura 24: Mapeamento Option Function................................................................... 102
Figura 25: Mapeamento Filter Function..................................................................... 104
Figura 26: Mapeamento Execute Function ................................................................. 105
Lista de Tabelas
Tabela 1: Estados emocionais adotados nas arquiteturas ............................................. 38
Tabela 2: Comparao Funo x Base .......................................................................... 68
Tabela 3: Resumo das bases e funes da arquitetura UEBDI ..................................... 97
Tabela 4: Resumo do mapeamento da UEBDI para o Jason ...................................... 109
Tabela 5: Mdia de sobreviventes e tempo de simulao ........................................... 115
Tabela 6: Notas por valor de decValue ....................................................................... 121
Tabela 7: Notas por valor de decEmoValue................................................................ 122
Tabela 8: Contra-Desempenho para assaultTax=0.1.................................................. 126
Tabela 9: Contra-Desempenho para assaultTax=0.3 .................................................. 126
Tabela 10: Contra-Desempenho para assaultTax=0.5................................................ 127
Tabela 11: Matriz de Pontos Individuais da Rodada .................................................. 131
Tabela 12: Matriz de Pontos de Cooperao da Rodada ............................................ 131
Tabela 13: Agentes/estratgias adotados .................................................................... 132
Tabela 14: Estratgia adotada em dado estado emocional.......................................... 133
Tabela 15: Resultado de cada combate do experimento IPD.A.................................. 136
Tabela 16: Resultado geral do experimento IPD.A .................................................... 136
Tabela 17: Incremento/Decremento da funo de mudana....................................... 139
Tabela 18: Configurao dos Servidores .................................................................... 141
Tabela 19: Intensidade Emocional dos Clientes pelos Servidores.............................. 142
Tabela 20: Figuras usadas no diagrama ...................................................................... 154
Sumrio
1
Introduo ................................................................................................................14
1.1
Motivao.................................................................................................................16
1.2
1.3
Contribuies ............................................................................................................18
1.3.1
1.3.2
1.3.3
1.4
2.1
Agentes ....................................................................................................................20
2.1.1
Agente Racional..................................................................................................... 21
2.1.2
2.1.3
2.1.4
2.2
2.3
Jason ........................................................................................................................25
2.4
2.4.1
2.4.2
2.4.3
2.5
2.6
2.6.1
2.6.2
3.1
3.1.1
3.1.2
3.1.3
3.1.4
3.2
3.2.1
3.2.2
3.2.3
3.2.4
3.3
3.3.1
3.3.2
3.3.3
3.3.4
3.4
3.4.1
3.4.2
3.5
3.5.1
3.6
3.6.1
3.6.2
3.6.3
3.7
3.7.1
3.7.2
3.8
3.8.1
3.8.2
3.8.3
3.9
3.9.1
3.9.2
3.10
3.11
3.11.1
3.12
Comparao..............................................................................................................67
4.1
4.2
4.2.1
Nossa Proposta....................................................................................................... 76
4.3
4.4
4.5
4.6
5.1
5.2
5.2.1
5.2.2
5.2.3
5.2.4
5.2.5
5.2.6
5.2.7
5.2.8
5.3
6.1
6.1.1
6.1.2
6.1.3
Experimento......................................................................................................... 114
6.2
6.2.1
6.2.2
6.3
6.3.1
6.3.2
6.3.3
Experimento......................................................................................................... 125
6.4
6.4.1
Definio.............................................................................................................. 130
6.4.2
6.4.3
6.4.4
6.4.5
Experimento......................................................................................................... 134
6.5
6.5.1
6.5.2
6.5.3
Experimento......................................................................................................... 140
7.1
7.2
14
1 Introduo
15
observado que existe uma srie de trabalhos que adotam agentes que implementam
algoritmicamente o fenmeno emocional para tratar os problemas da computao afetiva. A
Computao Afetiva busca simular o fenmeno emocional em sistemas computacionais,
sendo o uso da teoria de agentes natural neste contexto, visto que preciso representar a
causa, a responsabilidade dos fenmenos emocionais como uma entidade externa ao sistema
que a contempla (Marsella and Gratch 2009 p. 75). Uma lista exaustiva destes trabalhos pode
ser encontrada em (Picard 1997) e uma verso mais atualizada em (Picard 2003). Os trabalhos
(Silva et al. 2006), (Moridis and Economides 2008) e (Rumbell et al. 2011) tambm
apresentam outras propostas focadas em problemas especficos.
Ainda so poucos os trabalhos que se dedicam exclusivamente a estudar a influncia
da emoo sobre os processos cognitivos do agente de software (Neto and Da Silva 2010 p.
103, Neto 2010 p. 9). Este problema difcil de se lidar, visto que o embasamento da teoria da
emoo ainda excipiente e impreciso (Picard 2003).
Especificadamente, para o problema de modelagem e simulao do fenmeno
emocional encontramos trabalhos sobre interao com o usurio, visando: (i) o entretenimento
(Bates et al. 1994), (ii) a simulao de emoes robs (Breazeal 1998, Hernndez et al. 2004,
Velsquez 1996), (iii) a criao de um sistema computacional para interao musical com o
usurio (Camurri and Coglio 1998), (iv) a otimizao e adaptao do agente ao ambiente
(Oliveira and Sarmento 2003, Signoretti 2012, Signoretti et al. 2010) e (v) a tomada de
deciso (Jiang and Vidal 2006, Neto and Da Silva 2010, Oliveira and Sarmento 2003, Pereira
et al. 2005, Velsquez 1998b), seja para otimizao de desempenho (Morgado 2006,
Signoretti et al. 2010) ou para simulao de comportamento humano (Neto 2010).
Convencionou-se a chamar os agentes que implementam os fenmenos emocionais de
Agentes Emocionais. No existe uma definio formal aceita (Scheutz 2002), mas elas
convergem para a seguinte: Agentes Emocionais so agentes que buscam solucionar os
problemas da computao afetiva (Camurri and Coglio 1998) de perceber, expressar, simular
internamente emoes (Meyer 2004, Oliveira and Sarmento 2003, Steunebrink 2010) e para
tomar decises que sejam teis ao agente (Pereira et al. 2005). Inclusive, algumas propostas
de agentes emocionais vm adotando como base a arquitetura BDI, chamados de Agentes
Emocionais BDI (Hernndez et al. 2004, Jiang and Vidal 2006, Meyer 2004, Neto and Da
Silva 2010, Padgham and Taylor 1997, Pereira et al. 2005, Signoretti 2012, Steunebrink
2010), conforme discutiremos mais afundo a seguir.
16
1.1 Motivao
Embora estes trabalhos de agentes emocionais BDI tenham obtido xito em
desenvolver solues baseadas na arquitetura BDI, eles isoladamente satisfazem apenas
alguns aspectos do fenmeno emocional, e principalmente lidam somente com algumas das
possveis influncias do fenmeno emocional sobre mdulos da arquitetura BDI. Por
exemplo, uma dada proposta trabalha bem com modelos emocionais de confiana entre
agentes (Jiang and Vidal 2006), porm a arquitetura no lida com algoritmos de foco de
ateno influenciados pelas emoes (Morgado 2006, Oliveira and Sarmento 2003, Signoretti
2012), pois no implementa a influncia da emoo sobre o mdulo de percepo do agente.
A seguir mencionamos brevemente alguns destes trabalhos e suas limitaes.
O trabalho de (Hernndez et al. 2004) apenas contempla a influncia do estado
emocional sobre crenas e desejos, e as abordagens de (Jiang and Vidal 2006, O liveira and
Sarmento 2003) focam seus modelos na influncia das emoes sobre as intenes. J (Neto
2010) cria uma arquitetura concreta sobre a plataforma Jason (Bordini et al. 2007) onde
contempla influncia das emoes na seleo de percepes, crenas e intenes, mas no
define uma arquitetura abstrata que possa ser implementada em outra plataforma.
(Steunebrink 2010) define uma fomalizao lgica BDI extendida com um modelo bem
definido, porm apenas considera a influncia das emoes sobre as intenes do agente.
(Signoretti 2012) define um framework que s usa emoes para filtrar as emoes existentes
e implementa tal framework utilizando Jason. O autor tambm preferiu criar um conjunto de
bibliotecas ao invs de estender o Jason. Por fim, (Pereira et al. 2005) cria uma arquitetura
onde muitos mdulos BDI so influenciados pela emoo, mas os autores no justificam as
motivaes para tais influncias.
Como vemos, utilizando apenas uma proposta no possvel desenvolver um agente
emocional onde as emoes sejam consideradas em todo processo de raciocnio dado que
cada proposta contempla apenas a influncia das emoes em um subconjunto dos mdulos
BDI. Alm disto, como todos os estudos so parciais quanto a influncia emocional sobre as
instncias BDI, a literatura carece de um estudo e proposta de um agente emocional BDI que
possibilite todas as influncias possveis do fenmeno emocional sobre o resto da arquitetura.
17
presente trabalho a desenvolver uma proposta unificada que contemple estas influncias do
fenmeno emocional sobre todos os mdulos BDI.
O objetivo com esta nova proposta permitir modelar e implementar fenmenos
emocionais e as diversas influncias das emoes nos mdulos BDI atravs de uma nica
abordagem. Um desenvolvedor de agentes emocionais poder programar agentes que utilizem
diferentes influncias do fenmeno emocional lidando com cenrios emocionais diversos e
utilizando para isto uma nica arquitetura abstrata e um nico framework de implementao.
Para desenvolver a nossa abordagem, adotamos a seguinte metodologia: (i) levantar o
estado da arte das propostas que implementam agentes emocionais se baseando na arquitetura
BDI; (ii) propor uma arquitetura para agentes emocionais BDI chamada UEBDI que unifique
as caractersticas apresentadas nas propostas estudadas, de tal forma que o resultado seja
consistente e compatvel com a arquitetura BDI e com a teoria emocional; (iii) mapear a
UEBDI sobre uma implementao de agente BDI a escolhida foi o Jason; e (iv) demonstrar,
via cenrios de uso, que possvel utilizar as caractersticas adotadas pela arquitetura em
diferentes contextos explorando as diferentes influncias das emoes nos mdulos BDI.
Adotou-se a arquitetura BDI como base principalmente porque (i) a arquitetura BDI
um padro de fato nas comunidades de IA e ES para desenvolver agentes de software (Jiang
and Vidal 2006 p. 2, Neto and Da Silva 2010 p. 34, Pereira et al. 2005 p. 1, Signoretti 2012);
(ii) ela foi construda para lidar com o s problemas de reconsiderao e planejamento,
problemas clssicos de IA (Bordini et al. 2007, Wooldridge 2009) e (iii) ela baseada em
psicologia informal (Pereira et al. 2005), instncias intencionais (Wooldridge 2009) e simula a
tomada de deciso humana (Hernndez et al. 2004), o que facilita relacionar conceitos do
fenmeno emocional arquitetura.
J a plataforma Jason foi adotada porque (i) ela um interpretador da linguagem
formal AgentSpeak(L) (Rao 1996) que preserva os conceitos formais de BDI; (ii) ela opensource, o que nos ajudou na economia de custos do projeto e no acesso ao cdigo fonte,
possibilitando compreender melhor como ele funciona internamente; e (iii) Jason possui
razovel documentao de apoio.
Para desenvolver a arquitetura unificada focou-se, principalmente, nas propostas de
agentes emocionais explicitamente desenvolvidas sobre BDI (Hernndez et al. 2004, Jiang
and Vidal 2006, Neto and Da Silva 2010, Pereira et al. 2005, Signoretti 2012) e nas propostas
que usam os conceitos BDI e que adicionavam algum algoritmo importante de influncia
emocional sobre a arquitetura, embora algumas no tenham seguido o fluxo de execuo BDI
explicitamente (Breazeal 1998, Lino 2006, Morgado 2006, Oliveira and Sarmento 2003,
18
1.3 Contribuies
Como principais contribuies deste trabalho, podemos citar:
1.3.1
emocionais estendendo a arquitetura BDI. A extenso se deu de tal forma (i) que as
implementaes feitas em UEBDI possam usar conceitos e ferramentas conceituais j
desenvolvidas para BDI; (ii) que a nova arquitetura unifique os conceitos propostos pelas
abordagens anteriores para o desenvolvimento de agentes emocionais com o mesmo
propsito, permitindo desenvolver diferentes fenmenos emocionais em uma s abordagem;
(iii) que a arquitetura abstrata fosse independente do fenmeno emocional; e (iv) que a nossa
abordagem focasse em explicitar a influncia da emoo sobre os diversos mdulos da
arquitetura, e no na implementao do estado e da dinmica emocional.
1.3.2
implementada sobre esta plataforma. Como resultado, foi criado um framework para a
implementao dos agentes emocionais definidos de acordo com a arquitetura abstrata. O
19
framework deixa explcitos os pontos que podem e devem ser estendidos para a
implementao de um agente emocional.
1.3.3
Conjunto de experimentos
Foi criado um conjunto de experimentos para verificar a viabilidade da utilizao da
Captulo 3
Captulo 4
Captulo 5
Captulo 6
Captulo 7
20
2 Referencial Terico
Neste captulo ser abordado um conjunto de temas que servem de apoio terico para
esta dissertao. O tpico 2.1 apresenta o que so agentes de software, servindo de teoria base
para nossa pesquisa. O tpico 2.2 aborda uma classe especial de agentes chamada de Agentes
BDI, que se preocupa em representar o raciocnio simblico com instncias de crenas,
desejos e intenes. O uso desta representao torna simples a modelagem de problemas de
deliberao e planejamento, por exemplo, que so problemas clssicos de IA. O tpico 2.3
discute a implementao BDI Jason. O tpico 2.4 discutir as teorias da emoo, apontoando
conceitos importantes adotados em nossa dissertao, como eliciao, emoes multicamadas,
entre outros. O tpico 2.5 discute sobre a computao afetiva, rea de pesquisa interessada em
relacionar emoes e computao. Por fim, no tpico 2.6 apresentamos o que so agentes
emocionais, agentes capazes de simular, expressar e perceber emoes, e uma subclasse deste,
que estende a arquitetura BDI para que seja capaz de representar emoes, chamados de
agentes emocionais BDI.
2.1 Agentes
Em computao, podemos dizer que agentes so uma classe de sistemas que exigem
certo grau de autonomia, sendo capazes de atingir uma tarefa por si mesmos (Bordini et al.
2007 p. 2, Wooldridge 2009 p. 15). Em Inteligncia Artificial, este conceito junto com o de
ambiente servem de arcabouo conceitual para estudar como desenvolver sistemas com
desempenho timo (Russel and Norvig 2004 p. 7).
Considera-se um agente de software como um sistema computacional autnomo
inserido em um ambiente, que recebe pe rcepes deste e capaz de realizar aes.
Considera-se que as qualidades desejveis para este sistema so: autonomia, proatividade,
reatividade e capacidade de sociabilizao (Bordini et al. 2007 p. 3). Nota-se que incomum
e muitas vezes irreal existir um nico agente em um ambiente. Neste caso, um ambiente
21
usualmente repleto de agentes que podem interagir, trocando mensagens e recursos. Neste
caso, considera-se o conjunto ambiente e os seus agentes um Sistema Multi-Agente.
Segundo os autores (Russel and Norvig 2004, Wooldridge 2009) uma arquitetura
genrica de agente pode ser definida por trs funes, como exibido na Figura 5: (i) o
comportamento de um agente implementado por uma funo de agente (Agent Function),
(ii) a percepo do ambiente por sensores (Sensor) e (iii) sua atuao por atuadores
(Actuator). O agente trabalha em ciclos, de tal forma que para operar ele executa as funes
Sensor, Agent Function e Actuator, nesta ordem. A reas de IA e Engenharia de Software se
preocupam principalmente em descrever a Agent Function, visto que nela reside o raciocnio
propriamente dito. A Agent Function dada pela (Eq. 1), onde S o conjunto de sensaes
que atingem os sensores e A a ao (ou conjunto de aes) tomada pelo agente.
Agf: S A
(Eq. 1)
Agente Racional
Agentes racionais so agentes que fazem tudo certo (Russel and Norvig 2004). Agente
22
no cho a mtrica de desempenho do problema. Os agentes podem solucionar este
problema de vrias maneiras, mas aquele(s) que ao final obtiverem menor valor da medida
(menos objetos no cho) um agente racional.
Nota-se que agente racional meramente uma definio que serve de ferramenta de
anlise de um problema. As outras definies de agente abaixo iro discutir a constituio do
agente, e no seu desempenho em um problema. Por isto, um agente dos tipos discutidos
abaixo podem ser racionais ou no, isto depende se o algoritmo que eles implementam obtm
melhor desempenho ou no.
2.1.2
Agente Reativo
Agentes reativos reagem diretamente aos estmulos do ambiente, sem raciocinar sobre
isto (Wooldridge 2009 p. 85). Funcionalmente, um agente reativo aquele que age de acordo
com suas percepes atuais, ignorando as percepes anteriores e no armazenando qualquer
informao (Russel and Norvig 2004 p. 36). Um agente reativo pode ser representado como
uma funo que mapeia diretamente uma configurao das percepes do agente na ao
adequada a ser realizada. Uma viso mais geral prope que um agente reativo aquele que
no raciocina simbolicamente, no transforma suas percepes em smbolos de uma
linguagem, e como no tem smbolos no consegue aplicar operaes sobre estes
smbolos (Morgado 2006 p. 15). Normalmente estes tipos de agentes so usados quando o
problema no exige solues complexas ou quando se espera que o comportamento timo no
venha de um nico agente, mas sim da interao de vrios agentes simples (Bordini et al.
2007 p. 86, Morgado 2006 p. 15).
2.1.3
Agente Deliberativo
Agentes deliberativos processam e armazenam informaes obtidas do ambiente
usando smbolos e raciocinam sobre os smbolos com regras lgicas (Wooldridge 2009 p.
50). Ao contrrio do agente reativo, um agente deliberativo representa explicitamente seu
ambiente, as percepes, as aes e toda a tomada de deciso por smbolos e os opera atravs
de regras lgicas pr-estabelecidas (Morgado 2006 p. 14). Alm disto, devemos considerar
literalmente que um agente deliberativo delibera utilizando seus smbolos e operaes,
capaz de analisar o ambiente e gerar uma resposta adequada. Tambm se utiliza o termo
agentes cognitivos para designar este tipo de agente (Signoretti 2012).
23
Normalmente, para que estes agentes consigam ser racionais, eles internalizam a
medida de desempenho, podendo assim medir quo bom ser agir de tal forma para que
maximize a medida. Por estas propriedades, duas caractersticas so possveis e desejveis em
agentes deliberativos: (i) a primeira que tenha memria e armazene seu passado, permitindo
que consiga aperfeioar sua tomada de deciso de acordo com esta informao e (ii) como
podem conter a medida de desempenho, sejam capazes de prever o resultado de suas aes e
com isto aperfeioem seu comportamento, procurando a racionalidade (maximizar a medida
de desempenho).
2.1.4
Agente BDI
So agentes deliberativos que seguem um estilo de modelagem baseada nos conceitos
de crenas, desejos e intenes (Bordini et al. 2007 p. 16, Morgado 2006 p. 14). No iremos
entrar em detalhes aqui, pois o tpico 2.2 abaixo ser dedicado a sua anlise.
A traduo literal seria psicologia popular. Mas este termo mu ito usado na literatura co m o sentido
de psicologia informal. Sendo aceito pela co munidade cientfica para representar certas teorias, mas que sem no
tem embasamento terico.
24
25
a planos, permitindo ao agente atingir suas intenes com a Filter Function (Ff). Por fim, o
agente executa as aes dos planos com a Execute Function (Ef). Isto modifica o ambiente e
refletir nas percepes do agente no prximo fluxo de execuo.
influenciou vrias outras propostas que vieram a seguir (Braubach et al. 2005 p. 46). Entre
elas, iremos discutir a implementao Jason a seguir.
2.3 Jason
Existem vrias implementaes de agentes BDI, entretanto, julgamos mais adequado
adotar a plataforma Jason, pois (i) ela um interpretador da linguagem formal AgentSpeak(L)
(Rao 1996) que preserva os conceitos formais de BDI; (ii) ela open-source, o que nos
ajudou na economia de custos do projeto e no acesso ao cdigo fonte, possibilitando
compreender melhor como ele funcionava internamente; e (iii) Jason possui razovel
documentao de apoio. Outros autores chegaram a concluso similar (Neto 2010, Signoretti
2012). Um resumo de vrias outras propostas pode tambm ser encontrado em (Bordini et al.
2006, Neto 2010).
26
O modelo descrito foi simplificado e anterior a verso 1.3.6. A partir desta verso a arquitetura de
agente representada por u ma imp lementao do padro chain of responsability onde o ltimo item a
infraestrutura propriamente dita.
27
28
opera sobre um conjunto de percepes. A funo BRF no faz parte do fluxo principal,
sendo chamada apenas pelas funes BUF e Execute Intention.
4. Check Mail: Obtm uma coleo de mensagens do ambiente para que o agente possa
interpret- las. As mensagens trocadas entre os agentes no so recebidas atravs de
Perceive, mas atravs desta.
5. Select Message: Dada as mensagens que o agente recebeu, seleciona uma para ser
interpretada.
6. SocAcc: Dada a mensagem selecionada pela Select Message, verifica se ela deve ser
aceita ou rejeitada. Aps a confirmao, o Jason automaticamente torna a mensagem
recebida uma espcie de meta que deve ser interpretada por um plano. Por padro, o
Jason interpreta todas as mensagens atravs de planos pr-especificados que manipulam a
mensagem de acordo com seu contedo, tornando-a uma crena, uma meta ou ainda um
plano, dependendo de seu contedo.
7. Unify Event: Esta funo seleciona todos os planos que tratam o evento selecionado pela
Select Event.
8. Check Context: Esta funo verifica dentre o conjunto de planos selecionados pela Unify
Event quais so vlidos de acordo com a base de crenas (indicando que os pr-requisitos
foram atendidos). Esta verificao gerar um subconjunto de planos que tratam o evento
e possuem pr-requisitos vlidos de acordo com as crenas do agente.
9. Select Option: Com os planos j selecionados, esta funo seleciona qual dos planos deve
ser adotado para aquele evento. Por padro, o Jason seleciona o primeiro que chegar
lista de opes. Depois de selecionado, o par composto pelo evento e plano se torna uma
inteno que adicionada base de intenes.
10. Select Intention: Como a base de intenes pode possuir vrias intenes ao mesmo
tempo, em cada ciclo de execuo o Jason usa esta funo para selecionar apenas uma
inteno para ser processada. Por padro, o Jason utiliza a poltica Round Robin (Bordini
et al. 2007 p. 80) e faz um rodzio da execuo da intenes, tentando fazer com que
todas sejam executadas uniformemente.
11. Execute Intention: Dada a inteno selecionada, o agente tentar executar um passo do
plano. Este plano composto por aes internas, que atualizam o estado mental do agente
ou realizam operaes elementares, ou por aes externas, que modificam o ambiente.
Vale lembrar que o envio de mensagens (SendMsg) realizado por uma ao interna. J
as aes externas deixam o plano inativo at que seja concluda e sua execuo ocorre na
classe Environment.
29
Teorias apreciativas
O princpio central das teorias apreciativas (ou teorias de avaliao, do ingls
30
al. 1994, Bazzan et al. 2002, Steunebrink 2010) ou em conjunto com outros modelos para
complementar partes que ele no lida, como dinmica emocional, temperamento e
personalidade (Breazeal 1998, Hernndez et al. 2004, Neto 2010, Signoretti 2012, Velsquez
1998b). Deve-se destacar que este modelo no foi feito para gerao (simulao) de emoes,
mas sim apenas a sua descrio (Neto 2010, Picard 2000 p. 196), o que fora os autores que
os usam a adicionarem novos conceitos ao modelo, como regras para decaimento da
intensidade emocional e da sua influncia sobre o comportamento do agente. O trabalho de
(Steunebrink 2010 chap. 2) apresenta uma releitura deste modelo sobra a tica da
computao, observando o modelo proposicio nalmente, e no mais agrupado por eventos
eliciadores como o original, o que facilita a compreenso por pesquisadores de IA e ES.
J o modelo proposto por (Mehrabian 1996) estende o modelo OCC adicionando um
modelo para modelar humor chamado PAD (pleasure arousal dominance) e um modelo
para representar a personalidade chamado OCEAN. Comumente este modelo chamado de
modelo afetivo, pois representa outras instncias alm da emoo. Alguns autores de
computao tem preferido este modelo em relao ao OCC puro, devido a sua maior
representabilidade (Neto 2010, Signoretti 2012).
2.4.2
Teorias multicamadas
Existe um problema nas teorias da emoo que decidir se um determinado fenmeno
31
Teorias neurolgicas
Por ltimo, as teorias neurolgicas propem uma viso
multicamadas do
Da fo rma co mo (Damsio 2004) define emoo, o termo tipo mal emp regado pela literatura. Um
nome melhor seria estado emocional primrio (reat ivo) e secundrio (deliberat ivo). J que no so duas
emoes primria e secundria que so desencadeadas por um evento, mas sim u ma mesma emoo que
evolui no processo emocional.
32
lmbico, ento o responsvel pelas emoes secundrias (Morgado 2006 p. 54, Tomaz and
Giugliano 1997 p. 410). Muitos autores de agentes emocionais usam esta teoria para dar
suporte a sua proposta de emoo multicamadas (Hernndez et al. 2004, Jiang and Vidal 2006
p. 1, Velsquez 1998b) ou como substrato conceitual para memria emocional (Morgado
2006, Neto 2010).
J Joseph Ledoux realiza investigaes sobre a emoo medo e descreve quais so os
possveis percursos desta emoo dentro do crebro. O primeiro caminho inferior
descreve como um estmulo de medo passa diretamente do tlamo sensorial e vai direto a
amgdala, gerando respostas rpidas e simplistas no comportamento e alteraes fisiolgicas
autnomas 4 e hormonais. J o segundo o caminho superior leva a informao para o
crtex sensorial que tem a capacidade de gerar uma resposta mais elaborada e precisa
(Teasdale 1999 p. 677), porm de forma mais lenta. E s depois esta informao levada para
a amgdala (LeDoux and Rogan 1999, Morgado 2006 p. 56).
Um exemplo prtico disto realizar uma experincia de condicionamento utilizando
um estmulo e um choque. Se este estmulo condicionado for simples (por exemplo, uma
campainha) o indivduo em teste ir usar o caminho inferior. Caso seja um estmulo mais
complexo que requeira categorizao, ele realizado pelo caminho superior (LeDoux and
Rogan 1999). O segundo caminho tambm est relacionado com a parada da elicitao de
estado emocional, promovendo o autocontrole do indivduo, de tal forma que o processo de
decaimento da intensidade de uma emoo seja condicionado pelo segundo caminho
(Teasdale 1999 p. 677).
Algumas crticas cabveis as teorias neurofisio lgicas so devidas a sua abordagem
bottom-up (partem de explicaes neurolgicas para explicar fenmenos cognitivos
complexos), o que as limitam a cenrios particulares. O prprio Ledoux (LeDoux and Rogan
1999) reconhece a limitao do seu trabalho vendo que seus estudos sobre o medo no
podem, sem a devida elucidao, serem generalizados para todas as emoes. O trabalho de
(Damsio 2004) embora de grande influncia, faz devidas propostas sobre relao entre
emoo e tomada de deciso com argumentos em relao topologia cerebral e aos
experimentos realizados, mas no diz explicitamente que emoes ou quais processos
emocionais so requeridos para a inteligncia (Sloman 2004).
p269 - autonomic
33
2.
3.
4.
Possuir experincia emocional isto , o sistema capaz de perceber que est no meio
de um fenmeno emocional atravs da percepo cognitiva, fisiolgica e subjetiva;
5.
34
Por fim, ter inteligncia emocional, como usado pela autora refere-se, ao mesmo
conceito homnimo de inteligncia emocional em humanos: Um ser humano adulto
inteligente emocionalmente se ele souber lidar com suas emoes, seja (i) atravs da
capacidade de perceber e expressar suas emoes (ele capaz de perceber que outro indivduo
esta triste ou feliz e capaz de expressar suas prprias emoes de forma nem exagerada e
nem contida), (ii) regulando-as para que no sejam nocivas a si mesmo ou ao prximo (por
exemplo, caso o indivduo sofra uma agresso, ele ser capaz de conter a raiva, no
explodindo); ou ainda (iii) utilizando-as como um motivador (por exemplo, o indivduo
frente a um fracasso em um jogo de futebol, no ver isto como o fim do mundo e ir
treinar mais para que no prximo jogo tenha melhor desempenho).
Logo, segundo (Picard 2000), inteligncia emocional em um computador a
capacidade deste sistema de reconhecer e expressar emoes de forma coerente e no
exagerada/contida em relao ao usurio. E, principalmente, sua simulao de emoes deve
ser usada para aperfeioar o sistema. Por exemplo: caso o computador falhe em uma tarefa, as
emoes geradas por exemplo, tristeza devem ser usadas para que ele melhore seu
desempenho alocando, por exemplo, mais recursos para conseguir realizar a tarefa que falhou.
E no para que ele piore seu desempenho por exemplo, o computador desistir da tarefa e
considerar-se inapto para realiz-la.
Vamos apresentar a seguir os tpicos da computao afetiva sobre o enfoque da
computao. Na Figura 5 vamos considerar quatro subreas da computao afetiva em um
grfico ilustrativo usando o conceito de agentes. As reas so (i) percepo do fenmeno
emocional; (ii) expresso do fenmeno emocional; (iii) simulao do fenmeno emocional; e
(iv) estudo do fenmeno emocional real. Neste trabalho, consideraremos que computao
afetiva a rea de pesquisa interessada na investigao da interao de um sistema
computacional em um ser humano ou com outro sistema que lide com o conceito de emoes
sobre pelo menos uma das subreas.
Veja que consideramos o item (iii) como simulao da emoo ao invs de ter
emoes. Consideramos simular mais adequado que ter, pois notamos que, na prtica, os
autores pesquisados estavam mais preocupados com a simulao (implementar um algoritmo
que simule o fenmeno emocional) do que seguir os postulados dados pela autora. A prpria
autora, em trabalho posterior (Picard 2003), comenta que a modelagem de afeto um
problema em aberto, de tal forma que nenhuma definio de ter emoes aceita pelos
pesquisadores de Computao Afetiva.
35
36
37
(Picard 1997 p. 24) define estado emocional como sendo o estado interno e dinmico do
agente que inclui o estado mental e fsico. Tambm o trabalho (Morgado 2006) considera que
existe uma classe de agentes emocionais, chamada de modelos arquitetnicos, cujo fenmeno
emocional no explicitamente definido, mas sim uma consequncia da forma que a
arquitetura foi definida. Assim, o fenmeno emocional aplicado nestas arquiteturas pela
dinmica destes componentes, mas no h uma representao explcita do estado emocional.
Quando se adota esta perspectiva de fenmeno emociona l, dizemos que o estado emocional
implcito.
Entretanto, os prprios autores que prope o estado emocional implcito reconhecem
que, em alguns momentos, necessrio saber qual este estado emocional e propem
tcnicas para obteno deste estado derivado.
Por ltimo, algumas propostas de agente BDI (Jiang and Vidal 2006, Oliveira and
Sarmento 2003, Pereira et al. 2005) concordam na existncia de um estado emocional
explcito, entretanto no definem qual o seu formato, isto , qual a natureza do espao
emocional, deixando esta tarefa a cargo do projetista. Notoriamente, como visto na Tabela 1 e
levantado por (Picard 2000 p. 196) e (Signoretti 2012 p. 80), normalmente se adota o modelo
OCC (Ortony et al. 1990) da emoo sozinho, com modificaes informais ou em conjunto
com algum outro modelo. Isso ocorre pois ele no define o aspecto dinmico da emoo
(Bazzan et al. 2002) e no representa outras entidades importantes no processo afetivo, como
a personalidade (Silva et al. 2006). E mais recentemente, vm se adotando um modelo misto
feito por (Mehrabian 1996), que concatena um modelo de emoes (OCC), um modelo de
humor (PAD) e um modelo de personalidade (OCEAN) (Neto and Da Silva 2010, Neto 2010,
Signoretti 2012, Signoretti et al. 2010), a qual chamam de modelo afetivo.
Arquitetura
Autor
Espao Emocional
Teoria Base
Discreto, definio
informal
Sem nome
Kismet
(Breazeal 1998,
2000)
Agent Flow
Model
(Morgado 2006,
Morgado and
Discreto (Felicidade,
Ressentimento,
Compaixo e Raiva)
com limiar de ativao
Trs dimenses
Emoes discretas de Ekman e
(Valncia, Excitao, espao de emoes (Ekman and
Postura) com regies
Davidson 1994, Izard 1993)
rotuladas
Duas dimenses e
Modelo emocional de Scherer
quatro rtulos
(Reekum and Scherer 1997)
38
Gaspar 2005)
Sem nome
Cathexis
(Steunebrink 2010,
Steunebrink et al.
2009)
(Velsquez 1998a,
1996, 1998b)
BDIE
(Hernndez et al.
2004)
Emotional BDI
Sem nome
Sem nome
Emotional BDI
ALEC
(Gadanho and
Hallam 2001)
Sem nome
AAFA
(Signoretti 2012,
Signoretti et al.
2010)
Discreto (OCC)
No definido
(Tarefa do projetista)
No definido
(Tarefa do projetista)
(Dyer 1987)
No Definido
(Tarefa do projetista)
(Wilson 1991)
(Mehrabian 1996)
(Mehrabian 1996)
39
agente e altera seu estado emocional. Arquiteturas com estado emocional explcito tendem a
possuir uma ou mais funes que avaliam certos aspectos do estado mental e atualizam o
estado emocional (Scheutz 2004 p. 2). J nas arquiteturas com estado emocional implcito, a
dinmica emocional realizada por aspectos essenciais da arquitetura, como mecanismos de
interrupo (Sloman 1999), mtricas derivadas da capacidade do agente em alcanar suas
metas (Morgado 2006) ou atender s normas impostas (Staller and Petta 2000). As funes
que modificam o estado emocional so compostas por um conjunto de sub-funes, regras de
produo ou funes reativas chamadas de eliciadores (elicits) ou lanadores (releasers). Elas
monitoram o estado mental e as percepes enquanto modificam a base de emoes quando
determinada alterao ocorre.
Alguns autores definem tambm um comportamento emocional chamado de
decaimento e mocional. Este comportamento faz com que uma emoo, depois de eliciada,
decaia sua intensidade com o tempo (Bazzan et al. 2002, Breazeal 1998, Hernndez et al.
2004, Neto 2010 p. 106, Oliveira and Sarmento 2003, Padgham and Taylor 1997, Signoretti
2012, Velsquez 1998b). Entretanto, nem todas as abordagens considerem isto (Jiang and
Vidal 2006, Morgado and Gaspar 2005).
O terceiro aspecto do fenmeno emocional a influncia emocional, que a
influncia do estado emocional em outras cognies do agente. Em particular, em alguns
agentes BDI (Jiang and Vidal 2006, Neto 2010, Oliveira and Sarmento 2003, Pereira et al.
2005, Signoretti 2012) esta influncia acontece pela parametrizao das funes que o
compe por uma base de dados que armazena o estado emocional.
Acredita-se que estes trs aspectos sejam suficientes para caracterizar e estudar o
fenmeno emocional em agentes emocionais. Alm disto, consideraremos que o conjunto dos
trs chamado de modelo emocional computacional. A tarefa de modelar um agente
emocional consiste em obter uma teoria que explique o fenmeno emocional, desenvolver um
modelo emocional computacional em cima desta e posteriormente mapear este modelo em
uma arquitetura de agente.
Usaremos estes aspectos daqui por diante para analisar os trabalhos relacionados
(captulo 3) e na definio da arquitetura (captulo 4).
2.6.2
40
arquiteturas focando na incorporao de um mdulo emocional na arquitetura BDI que se
relaciona com os outros mdulos a fim de simular o fenmeno emocional.
Eles apontam uma srie de vantagens em modelar agentes emocionais baseados na
arquitetura BDI, tais como:
propostas uma faceta do fenmeno emocional. Por exemplo, o trabalho de (Hernndez et al.
2004) somente contempla a influncia do estado emocional do agente sobre as crenas e os
desejos, enquanto as abordagens de (Jiang and Vidal 2006, Oliveira and Sarmento 2003)
focam seus modelos na influncia das emoes do agente sobre as intenes. O proposto em
41
(Pereira et al. 2005) chega a criar um modelo de influncia das emoes sobre os outros
componentes da arquitetura BDI, todavia no deixa explcitas as razes para tal feito. Por
ltimo, o trabalho de (Neto 2010) bastante completo e apresenta bons resultados no uso de
um mdulo emocional na arquitetura de agentes Jason, entretanto apresenta uma srie de
limitaes devido a ser uma proposta menos generalista.
Esta parcialidade das propostas indica a necessidade de uma arquitetura unificada e
genrica, que abarque todas as possveis influencias que um mdulo emocional possa realizar
sobre o resto da arquitetura BDI.
42
3 Trabalhos Relacionados
Iremos analisar as abordagens de agentes emocionais relacionadas com nossa
proposta. A maioria destas abordagens so arquiteturas Emocionais BDI (Hernndez et al.
2004, Jiang and Vidal 2006, Neto 2010, Padgham and Taylor 1997, Signoretti et al. 2010,
Steunebrink 2010), enquanto outras so apenas arquiteturas emocionais, mas que contribuem
efetivamente para nossa com algoritmos ou modelos que sero mapeados no modelo BDI
(Breazeal 1998, Morgado 2006, Oliveira and Sarmento 2003, Sloman 1999, Velsquez 1996).
Outras propostas no foram exaustivamente utilizadas, pois algumas foca vam na
simulao de um modelo emocional especfico (Bazzan and Bordini 2001, Steunebrink 2010),
o que difere da escolha que fizemos de deixar esta tarefa a projetista de agente. Outras no se
preocupavam com a influncia da emoo no resto da arquitetura (Marsella and Gratch 2009),
que justamente a meta principal desta dissertao. E ainda algumas se preocupavam com a
formalizao lgica do fenmeno emocional (Meyer 2004, Steunebrink 2010), o que colide
com nosso objetivo de deixar o modelo emocional em aberto na arquitetura.
Nossa anlise ser orientada a discutir cada mdulo da arquitetura BDI e cada tpico
abaixo discutir uma abordagem e seus subtpicos discutiro um componente BDI ou
possveis mdulos de percepo e atuao, alm do mdulo emocional. Quando esta
arquitetura no for BDI, ser feita a mesma organizao e ser apontado como esta proposta
trata do respectivo mdulo em discusso. Quando um subtpico de um mdulo no for
especificado, indica que a abordagem no trata deste mdulo.
Aps apresentar os trabalhos, no tpico 3.11, iremos fazer uma comparao destas
abordagens.
43
emoes correntes do agente contribuem com a reviso destas emoes. Todavia, esta
arquitetura no se preocupa com a influncia das emoes sobre a Filter Function, como
outros autores fizeram (Jiang and Vidal 2006, Pereira et al. 2005, Steunebrink 2010).
Um ponto importante nesta proposta que eles deliberadamente no criaram uma
influncia da emoo sobre as intenes e as aes, pois consideraram que mesmo que seja
pertinente ter esta influncia para obter uma resposta rpida do sistema, isto iria prejudicar a
modularidade do sistema e seria teoricamente incompatvel com a teoria emocional adotada.
3.1.1
Mdulo de percepes
Os autores consideram que o estado emocional interfere no processo perceptivo. Por
exemplo, dado o estado emocional raiva, o sensor de viso deve funcionar limitadamente
(focando somente no objeto que causou raiva). Entretanto, os autores no definem
explicitamente uma funo e base de percepes, no do maiores detalhes de como
realizada esta influncia e a influncia no demonstrada em seu exemplo.
Inversamente, consideram que a percepo influencia o estado emocional, mas para
isto ele insere esta percepo na base de crenas. De tal forma que s possvel influenciar as
emoes se esta percepo for envelopada em uma crena.
3.1.2
Mdulo de crenas
Este mdulo foi alterado para suportar a teoria emocional multicamadas. Na sua
44
Mdulo de desejos
Quanto aos desejos do agente, eles so suas metas (goals) e suas variveis
homeostticas (homeostatic variables). Uma varivel homeosttica um valor que varia com
o decorrer do tempo. A ela esto associados limiares inferiores e superiores, que indicam um
estado indesejvel do agente, promovendo algum tipo de resposta. O caso clssico de
varivel homeosttica a fome. Que aumenta com o tempo e quando extrapola certo limiar,
promove um conjunto de fenmenos e comportamentos para que o indivduo se alimente,
diminuindo a fome e a fazendo voltar a valores entre os limiares (estado de homeostase).
Os desejos so classificados por suas prioridades e importncias 5 . O agente sempre
selecionar os desejos com maior prioridade e depois selecionar os com maior importncia.
Isto , se um desejo A mais prioritrio que um desejo B, ele ser selecionado, mesmo que B
seja mais importante que A. Alm disto, quando um desejo no consegue ser satisfeito, todos
os desejos que possuem prioridade igual ou menor a dele sero desativados. Segundo o autor,
isto permite que o sistema atenda aos desejos que realmente se relacionam com o atual
contexto. Os nveis de prioridade so dinmicos e podem variar no decorrer da execuo do
agente.
Quanto funo de gerao de desejos desta arquitetura, ela definida tal como a BDI
original e os autores aludem que as emoes primrias ativam certos desejos para gerar
resposta rpida na arquitetura e que todas as emoes so potenciais fontes de desejos. Os
desejos tambm influenciam as emoes, principalmente durante sua satisfao e insatisfao
(promovendo alegria ou tristeza, respectivamente).
Este esquema do mdulo de desejos inovador, pois unifica o conceito de motivaes
ou drives, segundo (Velsquez 1996, 1998b) e (Breazeal 1998) e o conceito tradicional de
desejos da arquitetura BDI. Entretanto, podemos enumerar as seguintes problemticas desta
5
A diferena semntica entre importncia e prioridade no est clara em (Hernndez et al. 2004).
45
proposta: (i) o uso de prioridades confuso, (ii) no explicada qual a diferena entre
prioridade e importncia e (iii) no h indcio que esta abordagem melhore a capacidade do
agente de ateno em determinado problema ocorrendo no mundo.
3.1.4
Mdulo emocional
Esta proposta define um modelo emocional constitudo por trs classes de emoes.
46
47
Mdulo de percepes
Os autores consideram que a funo de reviso de crenas deva ser dividida em trs:
brf-see, que lida com as percepes do agente; a brf-msg, que lida com as mensagens trocadas
entre agentes e a brf-in, que realiza a reviso das crenas do agente, considerando o estado
emocional e as intenes para isto. Neste caso, ele explicita uma funo reviso de percepes
e mensagens, mas no h influncia de nenhuma base influencia estas funes.
3.2.2
Mdulo de crenas
Como comentado em 3.2.1, funo de reviso de crenas segmentada em trs e
somente a brf-in influenciada pela base de crenas, de intenes e de emoes para realizar
o seu trabalho. E o comportamento desta funo um hot-spot a ser definido pelo projetista.
48
3.2.3
Mdulo de intenes
Quanto ao mdulo de intenes, ele mantm as influncias da arquitetura BDI e
Mdulo de emoes
O mdulo emocional inspirado na teoria de emoes primrias e secundrias de
49
50
facilitar seu acesso pelo resto do sistema). O uso das emoes, embora validado, no foi
comparado com o desempenho de agentes no-emocionais.
Mdulo de percepes
As percepes iro eliciar um conjunto de emoes e sero rotuladas por elas. Estas
percepes, aps rotuladas, sero filtradas de acordo com este rtulo e sua similaridade com o
estado emocional corrente. Logo, o filtro de percepes influenciado pelas emoes e as
percepes, somente.
Esta proposta de influncia emocional sobre as percepes clara e funcional. Alm
de ser embasada em teorias que explicam a percepo e m seres humanos, diferente do
realizado por (Lino 2006), que faz uma abordagem informal desta influncia, e de (Signoretti
2012) que apenas usa a intensidade emocional na influncia. No h detalhes se outras
instncias cognitivas influenciam a percepo, como a inteno ou as crenas.
3.3.2
Mdulo de crenas
A base de crenas a mesma do Jason. Os autores no definem uma influncia das
crenas sobre as emoes e as emoes no participam na criao de crenas. Por outro lado,
51
ele tem uma viso similar a de (Oliveira and Sarmento 2003) de que as crenas possuem
rtulos contendo informao sobre o estado emocional. Porm, da mesma forma que as
percepes, so filtradas de acordo com a similaridade deste rtulo com a base de emoes.
Devido a isto, podemos considerar que a base de emoes influncia a reviso de crenas.
Esta interpretao do rtulo de crenas inovadora em relao ao trabalho que
(Oliveira and Sarmento 2003) j que o usa como mecanismo de seleo de crenas e no
como um algoritmo de clusterizao e indexao das crenas para futuro resgate. O exemplo
que prope usa o filtro de crenas para que o agente tenha comportamento mais prximo que
um ser humano e no diz nada se tal filtro ajudaria na tomada de deciso ou outro quesito de
otimizao.
3.3.3
Mdulo de intenes
Quanto ao mdulo de intenes, foi criado um filtro na seleo de planos baseado,
segundo o autor, na teoria do marcador somtico de (Damsio 2004). Assim um plano possui
um marcador representando um valor positivo ou negativo, indicando a qualidade do estado
emocional atingido aps as vrias execues deste plano (Neto and Da Silva 2010 p. 50).
Na proposta terica deste filtro os autores propem a seleo dos planos com
marcao mais positiva (Neto 2010 p. 68) e na implementao se seleciona o plano com
marcao mais afim com o estado emocional (Neto 2010 p. 83). Esta relao de afinidade
entre marcador somtico e estado emocional dependente do domnio j que reflete relaes
definidas no modelo emocional adotado. No exemplo oferecido pelo autor em (Neto 2010 p.
74), caso o estado emocional do agente seja arrogante, o agente ir selecionar um plano entre
testemunhar e no testemunhar com maior nmero de marcaes positivas, entretanto
multiplicar o nmero de marcaes do plano testemunhar por trs, dando mais chances
deste ser selecionado.
Com isto podemos dizer que a Funo de Execuo influenciada pela base de
intenes e pela base de emoes.
Este filtro de planos uma proposta concreta e operacional. Os seus experimentos
verificaram a efetividade desta no ambiente do Dilema do Prisioneiro Iterado em alterar o
comportamento do agente. Entrementes, existem dois problemas na sua abordagem:
O primeiro que no ficou claro em qual momento do ciclo de execuo um marcador
somtico de um plano atualizado e como detectado. Na definio da arquitetura ele diz que
no filtro de planos so selecionados os planos com marcao mais positiva. Entretanto na
52
implementao, em vez disto, ele seleciona um plano com marcao positiva ou negativa
dependendo do estado emocional corrente.
A segunda a fuga do conceito de emoo. O marcador somtico foi mal definido e a
forma como foi utilizada se entende apenas como uma mtrica indicando qual plano foi mais
eficiente que outro em alcanar suas metas (Neto 2010 p. 68). A prpria implementao
realiza simplificaes em relao ao modelo proposto: no h associao exata do marcador
ao plano, mas sim um marcador somtico geral que indica a desempenho do agente no
problema atacado. Alm disto, se a seleo do plano utilizar apenas a mtrica de sucesso,
nada garante que s porque um plano no foi bem sucedido at agora, no o ser no prximo
cenrio.
3.3.4
Mdulo de emoes
Foi adicionado um mdulo afetivo baseado no modelo afetivo de (Mehrabian 1996),
53
momentneo (alegre), mas seu humor permanea entediado (valores de prazer, excitao e
dominncia baixos).
Mdulo de percepes
Esta abordagem considera que preciso interpretar um estmulo vindo do ambiente
para construir conceitos que faam sentido ao raciocnio do agente ao invs de trabalhar
diretamente com estes estmulos. Ento eles decidem criar um mdulo de sensao e
percepo (Sensing and Perception Module). Este mdulo composto por uma funo de
percepo (Perception Filter) responsvel por atribuir rtulos semnticos a uma sensao e
uma funo de sensao (Sensing Filter) responsvel por transformar as sensaes obtidas em
outras mais coerentes ao raciocnio do agente.
Este mdulo de percepes influenciado pelas crenas, emoes, capacidades e
recursos do agente. As crenas so importantes para a interpretao semntica da informao
recebida pela Perception Filter e os recursos e capacidades so usadas pela Sensing Filter
54
para realizar filtro de percepes de acordo com os recursos disponveis e capacidades que o
agente possui no momento.
Com esta funo explicitamente definida, o projetista do agente possuir melhores
bases para especificar o processo perceptivo do agente. Todavia tal modelo no possui um
embasamento terico e sua escalabilidade limitada. Como ele centraliza a funo de
percepo em dois componentes, que tratam de todos os sensores do agente (aquele que
realiza a seleo e aquele que atribui informao semntica), isto tornar tal mdulo
sobrecarregado, tendo de lidar com sensaes de naturezas diferentes.
3.4.2
Mdulo de Emoes
O mdulo emocional uma caixa preta que deve ser definida pelo projetista, no
55
3.5.1
Mdulo de percepes
Este mdulo foi desenvolvido pelos autores baseado na proposta de (Morgado 2006).
Eles tambm adotam o Jason como arquitetura base e o modelo emocional (Mehrabian 1996),
como (Neto 2010) realizou. Entretanto, os autores ao invs de focarem na seleo por
pertinncia do estado emocional eliciado em as percepes do agente, eles usam uma mtrica
derivada do estado do humor do agente simbolizando quanto o agente est angustiado ou
relaxado com o ambiente para determinar quantos elementos percebidos iro para a base de
crenas. Quanto mais prximo o valor desta mtrica estiver de zero, maior ser esta parcela
das percepes a serem consideradas (Signoretti 2012 p. 177). Alm disto, eles definem que o
agente rotule suas percepes com o que eles chamam de behavior conjunto de aes que o
agente executa em dado momento e seus relacionamentos de dependncia (Signoretti 2012 p.
64). E consideram tambm que um behavior pode influenciar a percepo do agente,
procurando selecionar quais so mais pertinentes para o behavior atual. Se considerarmos um
behavior uma espcie de plano orientado a metas em conjunto com informao semntica
sobre as percepes do ambiente, podemos dizer que em sua proposta a percepo
influenciada pelas intenes, crenas e emoes do agente.
Esta proposta obteve bons resultados na otimizao do tempo gasto pelos agentes em
uma situao estressante, onde a poda das percepes usadas permitiu que o raciocnio fosse
mais rpido, sem perda drstica de desempenho dos agentes. Entretanto, deve ser lembrado
que no modelo proposto pelos autores no s a emoo que realiza a poda das percepes,
h anteriormente todo um processo de priorizao das percepes utilizando como critrio de
priorizao tanto a relevncia da percepo para o agente quanto a taxa de mudana da
percepo em relao ao instante anterior. Ambas as priorizaes so importante no processo
de seleo e no sofrem influncia da emoo.
56
3.6.1
Mdulo de crenas
No proposto um mdulo de crenas em si, mas sim o uso de duas otimizaes para
Mdulo de intenes
Esta proposta considera o conceito de planejamento para que o agente realize suas
57
planos; (iii) deve usar heursticas conservativas, visto que o agente deve ser pessimista diante
das suas aes; e (iv) deve aumentar o tempo permitido ao planejamento, permitindo melhor
refinamento dos planos.
No mesmo trabalho tambm proposto que os algoritmos adotados por um agente
para solucionar um problema podem ser classificados pela sua complexidade e seu nvel de
influncia pela emoo. Por exemplo, um algoritmo heurstico possui baixa complexidade
computacional, mas pode ter grande influncia da emoo. De acordo com os autores,
dependendo do estado emocional um agente poder preferir um dado tipo de algoritmo (se em
pnico, ele preferir algoritmos reativos).
No exemplo de (Oliveira and Sarmento 2003) adotado tanto o uso de calibragem do
algoritmo de planejamento quanto a seleo dos algoritmos de acordo com sua classe atravs
do estado emocional. Estas duas tcnicas, embora bem explicadas, so postas muito
abstratamente em relao ao estado emocional. Isto , utiliza quatro estados emocionais
distintos e define qual a influncia de cada um sobre o algoritmo de planejamento e o de
seleo de classe de algoritmos, entretanto no h indicao de literatura que possa ser usada
pelo projetista para relacionar as emoes com as tcnicas adotadas. Alm disto, a tcnica de
calibragem de planejamento informal. Tambm no provado se tal tcnica promove
alterao do comportamento ou melhor desempenho do agente.
3.6.3
Mdulo de emoes
Sua proposta para o mdulo emocional foca em dois pilares bsicos: (i) a emoo tem
58
isto, se mapearmos sua proposta para a BDI, consideramos que as crenas, metas e percepes
influenciam a emoo.
Tambm no definido o estado/estado emocional, uma generalizao da proposta
de (Velsquez 1996, 1998b), pois os autores consideram que o estado emocional em si como
algo flexvel, devido ao fato de existirem vrias propostas para eliciao das emoes,
similarmente ao concludo por (Jiang and Vidal 2006, Pereira et al. 2005). Entretanto, o
decaimento emocional fixo e implementado como um fator numrico que decrementar a
intensidade da emoo eliciada, sendo fixo e definido pelo projetista do agente. Importante
notar que os autores consideram que um fenmeno afetivo pode ser uma emoo, um humor
ou um temperamento, dependendo da sua intensidade emocional e do tempo gasto para a
intensidade decair.
Esta proposta apresenta um avano em relao as anteriores, visto que generaliza o
estado emocional. Entretanto, quanto a dinmica emocional, no est claro se as regras de
eliciao so literalmente parametrizada pelas metas ou se somente as regras devem ser
definidas de acordo com as metas. Alm disto, o prprio uso da meta como fator chave para a
eliciao da emoo limita a arquitetura para casos que no necessariamente exijam uma meta
explcita.
Considere por exemplo que estamos fazendo uma simulao onde um agente deseja ir
a um teatro assistir a uma pea. Ele possui a meta Assistir pea e est executando o plano
Ir ao Teatro; Comprar Bilhete; Entrar na sala. Quando vai executar a ao Entrar na sala,
ele notificado pelo recepcionista (outro agente) que proibido o uso das suas vestimentas
por exemplo, short e no poder entrar na sala. O agente, devido a esta restrio, sentir a
emoo vergonha. Veja que a emoo vergonha no est relacionada com a falha em concluir
o plano nem de alcanar a meta Ver pea, mas sim com a restrio que lhe foi atribuda. Em
uma arquitetura de agente, a recepo desta restrio poderia gerar diretamente uma emoo,
sem que haja relao com as metas que estavam sendo realizadas nem a necessidade de criar
uma meta artificial, que nosso exemplo poderia ser a meta de No sofrer restries ou
punies.
Outro detalhe que os autores deixam fixo o decaimento da intensidade emocional
usando um valor que subtrado do valor da emoo por instante de tempo. Embora a maioria
dos trabalhos considerem isto (Hernndez et al. 2004, Neto 2010, Padgham and Taylor 1997,
Signoretti 2012, Steunebrink 2010, Velsquez 1998b), no h bases tericas para corroborar
com o uso desta abordagem para todos os domnios. Os trabalhos (Jiang and Vidal 2006, Lino
2006, Morgado 2006) so exemplos que no adotam este comportamento.
59
Alm disto, os autores propem uma taxonomia que possui importante va lor para a
rea de agentes j que permite uma melhor anlise do problema, em especial no momento em
que o projetista deve especificar as emoes do agente. Por outro lado, a definio desta
taxonomia no tem embasamento terico e existem outras propostas mais concretas e gerais,
como a de (Scherer 2005).
Por ltimo, a rotulao de crenas e o agrupamento por humor no so bem definidos
e possuem uma srie de problemas quando so implementados. Detalhes so explicados no
tpico (4.3).
60
3.7.1
Mdulo de intenes
Os autores consideram que as emoes influenciam primordialmente a manipulao de
aes e intenes, e por isto podemos considerar que na sua proposta as emoes influenciam
a Execute Function e a Filter Function. Eles se baseiam no conceito de regulao emocional
de e tendncia de ao de (Frijda 1987). Sua proposta realiza duas coisas: a primeira cria uma
relao entre as classes de emoes e as aes, e definindo quanto uma ao capaz reduzir a
intensidade de uma emoo, para voltar a um valor homeosttico. A segunda propor que o
estado emocional, mais precisamente a emoo esperana ativa a gerao de planos, a emoo
medo ativa a anlise dos planos correntes para prever falhas de aes, afim de eliminar o
plano, a emoo alegria promove a execuo de planos e a emoo angstia promove a
reconsiderao de planos, interrompendo a execuo do plano atual para permitir o agente
ter ateno a outro plano ou substituir ou interromper o plano atual.
Embora estas propostas sejam importantes, a primeira puramente terica e no
possvel implement- la diretamente devido ao seu indeterminismo. J a segunda pode-se
implementar, porm lida apenas com a influncia de quatro tipos de emoes sobre o mdulo
de intenes. E, segundo os prprios autores, se poderia explorar outras influncias.
3.7.2
Mdulo de emoes
Quanto ao estado emocional, ele adota o modelo emocional OCC, que, segundo o
autor, possui as qualidades de (i) possuir uma classificao clara dos tipos de emoo; (ii)
uma descrio concisa dos eliciadores emocionais e (iii) so adotados conceitos similares ao
do modelo BDI, o que tornaria mais simples seu uso. Entretanto, como a lgica adotada no
seu trabalho proposicional, o trabalho prefere redefinir todo o modelo focando sua descrio
das emoes em termos proposicionais, ao invs de focar-se em quais eventos as eliciam.
Quanto a dinmica emocional, elas so eliciadas pelas percepes do agente e pelas
motivaes (cocerns). Devemos lembrar que as percepes para este trabalho so as
percepes do modelo OCC, que podem ser consequncias de eventos aes de agentes ou
atributos destes objetos/agentes. E as motivaes sobre sua tica no so metas, mas sim
so literalmente o raciocnio sobre estas percepes em relao aos desejos do agente. Por
exemplo, se determina que uma percepo positiva ou negativa se esta percepo
desejvel (est na base de desejos). Por isto, podemos cons iderar que as emoes so
influenciadas pelas percepes e desejos.
61
Mdulo de desejos
A proposta de (Velsquez 1996) possui o conceito de Drives que representam o desejo
que impulsiona o agente a realizar uma ao (Velsquez 1998b p. 2). Embora seja um desejo,
um drive tem a semntica diferenciada. Por exemplo, se um agente tem o drive fome ele
possui a necessidade de comida. A fome de tempos e tempos ser ativada e este momento
depender de vrios fatores, como as aes que o agente tomou o agente gastou muita
energia em suas tarefas ou as informaes que recebeu do ambiente ele pode ter visto um
bife saboroso, o que aumentaria sua fome. O conceito de drive aqui tem uma semntica
genrica, que vai desde as necessidades inatas da espcie, aos moldes da etologia,
necessidades fisiolgicas, necessidades sociolgicas ou psquicas.
Desta forma, os autores propem que um drive seja influenciado pelas percepes do
agente e quando ativo influencie os comportamentos que satisfazem este drive. Um drive
tambm pode influenciar as emoes, visto que a urgncia de uma necessidade pode
promover emoes, como medo e raiva. J o trabalho apresentado em (Breazeal 1998)
propem uma abordagem similar, porm neste caso o drive possui um fator de incremento,
fazendo-o aumentar com o decorrer do tempo, mesmo que no haja percepes que
promovam isto.
62
Tal proposta de uso de drives tem duas importncias. A primeira que tal conceito
relevante em agentes emocionais, principalmente para os que implementam a funo de
expresso facial, visto que o uso de valores associados s necessidades do agente e a ativao
de comportamentos quando eles extrapolam um limiar uma alternativa simples e mais
flexvel do quer usar meras regras de produo e mquinas de estados. A segunda relevncia
do uso de drives o fato de contemplar um aspecto no contemplado diretamente pelos
desejos da arquitetura BDI. Um drive possui uma dinmica homeosttica que o associa a um
valor e permanente ao longo da execuo do agente, enquanto que os desejos da arquitetura
BDI no podem representar esta dinmica diretamente. Representar um drive na arquitetura
BDI original algo complexo, j que preciso modelar este comportamento com crenas
(para armazenar o valor do drive) e aes do agente (para alterar este valor).
3.8.2
Mdulo de aes
Estes trabalhos representam as aes do agente pelas entidades comportamento 6 . No
arquiteturas. Isto , o co mportamento a ao mnima e indiv isvel que u m agente pode representar, raciocinar e
executar.
63
3.8.3
Mdulo de emoes
Velsquez em (Velsquez 1996) considera o estado emocional composto por um
64
3.9.1
Mdulo de crenas
A base de crenas armazena as emoes do agente. J a funo de reviso de cren as
possui regras que geraro crenas de acordo com o estado emocional para ativar os desejos,
seguindo as teorias de (Frijda 1987). Logo, o estado emocional influencia os desejos
encapsulados em crenas que os representam.
3.9.2
Mdulo de emoes
Os autores prope um modelo simples de emoo que considera o estado emocional
composto por pares de emoes, como os pares vergonha e orgulho, felicidade e tristeza ou
amor e dio. Estes pares possuem um valor associado que funciona como um medidor 7 das
duas emoes a cada instante de tempo. Uma emoo associada ao lado negativo do
medidor est ativa quando o valor do medidor extrapola um limiar negativo. J a sua
antagonista positiva ativada quando o medidor extrapola um limiar positivo. Ass im, o
estado emocional o conjunto das emoes derivadas destes medidores. Estes pares so
implementados como crenas e regras de produo dentro da base de crenas.
A dinmica e mocional define como os valores dos pares de emoo decaem ou
incrementam com o tempo, voltando para o valor neutro (zero). A eliciao das emoes se d
7
Do ingls Gauge.
65
pelo tratamento de trs tipos de eventos. O primeiro tipo agrupa eventos que ocorrem com o
agente que desencadeiam uma emoo, como a morte de um ente querido, por exemplo. J o
segundo tipo so eventos de sucesso ou falha na obteno de uma meta, podendo causar, por
exemplo, felicidade ou tristeza. O terceiro tipo so eventos que so reconhecidos como
oportunidades ou empecilhos para o agente atingir suas metas. Como exemplo deste tipo de
evento podemos citar a quebra do carro quando o agente est indo (ou est com a meta de ir)
ao trabalho. Vendo esta classificao, podemos concluir que as percepes (eventos) e desejos
eliciam as emoes.
Todavia, esta proposta de modelo emocional possui um problema conceitual
importante: o uso de polaridade entre emoes positivas e negativas restritivo, porque
impede que emoes ditas antagnicas coexistam e permutem sua ativao. Em muitas
situaes importante que o agente seja capaz de representar emoes antagnicas ao mesmo
tempo, normalmente relacionadas a contextos diferentes. Por exemplo, na dualidade
felicidade-tristeza, um agente pode estar feliz dado a ocorrncia de um evento e triste dado
a ocorrncia de outro evento. Utilizando a abordagem de (Padgham and Taylor 1997), o
segundo evento anularia a felicidade anterior ou a diminuiria, mas no seria possvel
armazenar a informao sobre a emoo de felicidade relacionada a um evento e a de tristeza
relacionada a outro evento. Alm do mais, pelo fato do seu modelo possuir emoes discretas
e valores associados, sofre dos mesmos problemas dos modelos de emoes fisiolgicas,
como comentado por (Morgado 2006), onde o aumento da complexidade do modelo
emocional acarreta em uma dificuldade na implementao devido a calibrao dos pesos das
influncias das emoes sobre outras instncias da arquitetura.
66
O autor utiliza um modelo emocional implcito. Isto , ele no define uma base e
funes de reviso emocional, mas sim considera que o estado emocional derivado do
estado mental do agente. Mais precisamente, a emoo derivada da afinidade dos
componentes mentais com as metas do agente.
A vantagem desta proposta se encontra no seu carter implcito e genrico: este
algoritmo de seleo no dependente de domnio devido ao fato de que o estado emocional
associado a dada sensao determinado pela distncia da sensao em relao s metas do
agente (apenas exigindo que exista uma funo de comparao entre uma motivao e o outro
elemento). As desvantagens so as seguintes. A proposta, por ser puramente matemtica, (i)
trs complexidade a implementao, pois necessita mapear os conceitos psicolgicos neste
modelo matemtico exige maior conhecimento do projetista ou desenvolvedor, (ii) a definio
desta funo de distncia pode no ser trivial e (iii) apenas se considera o carter positivonegativo da emoo em relao as metas. O que no permite lidar, por exemplo, com a
priorizao de percepes relacionadas a uma meta crtica.
Os autores de (Signoretti et al. 2010) tambm questionam que a proposta de (Morgado
2006) apenas lidam com modelos fisiolgicos e apreciativos, e menosprezam modelos que
lidam com humores (mood) e personalidade. indevido afirmar isto, visto que podemos
desenvolver humores e personalidade usando modelos emocionais, j que, como vrios
autores j citam (Morgado 2006, Neto 2010, Oliveira and Sarmento 2003), humores e
personalidades podem ser interpretados como espcies de emoes com maior perodo de
pertinncia.
67
Marcador Somtico de Damsio (veja tpico 2.4.3). Na perspectiva de ES, ela pouco ajuda,
visto que uma proposta terica e no voltada para uma formalizao explcita.
Entretanto, vamos comentar a viso deste autor sobre o processo perceptivo do agente.
3.11.1 Mdulo de Percepo
Para o autor, em agentes muito simples, as percepes podem ser realizadas por
algoritmos rudimentares, pertencentes ao que o autor chama de camada reativa da percepo.
Percepes mais complexas ou ricas devem ser tratadas por algoritmos mais elaborados, como
processamento simblico, sendo estes pertencentes a camada deliberativa da percepo. Por
ltimo, em caso de percepes muito complexas, preciso adotar algoritmos mais ricos como
aprendizagem ou sistemas especialistas para transformar a percepo. Estes ltimos so
pertencentes a camada meta-gerencial da percepo.
Embora o autor considere que estes algoritmos e processos no so isolados, mas sim
um aglomerado de operaes interconectadas, ele tambm considera que se pode isolar fluxos
de dados para fins de modelagem. Estes fluxos esto relacionados a natureza e origem da
percepo e, muitas vezes, podem atravessar uma ou mais camadas da percepo, de tal forma
que parcelas diferentes da percepo sejam tratadas por camadas diferentes, dependendo da
complexidade desta parcela.
lembrado em (Sloman 1999 p. 6) que este processo perceptivo desempenha
principalmente a funo de filtro de ateno existente entre a camada reativa e deliberativa, de
forma que a camada reativa apenas passaria informao para a deliberativa, com o objetivo
principal de poupar recursos limitados da camada deliberativa (Sloman 1999 p. 19). Autores
como (Morgado 2006, Neto 2010, Signoretti 2012) adotaram esta perspectiva em suas
arquiteturas.
3.12 Comparao
A Tabela 2 destaca resumidamente como cada um dos trabalhos relacionados
apresentados acima aborda as influncias das bases de dados nas funes da arquitetura BDI,
e nas funes de reviso de emoes e percepes. So elas: Brf Belief Review Function. Of
Option Function, Ff Filter Function, Pf Perception Function, 1 Emof e 2 Emof 1 e 2
Emotional Function. Foram definidas duas funes emocionais, como proposto por (Jiang and
Vidal 2006) para podermos representar influncia sobre a segunda funo emocional. As
outras abordagens que possuem influncia sobre o mdulo emocional apenas consideram que
68
BASIC
Crenas
3.4 3.5
Desejos
-
Intenes
3.5
Emoes
3.4 3.3 3.5
3.6 3.10
3.2
BASIC
1 Emof
2 Emof
3.2
3.2
BASIC
Brf
BDI
BDI
BDI
Of
3.8
BDI
BDI
BDI
3.1
BDI
BDI
BDI
Ff
Ef
3.7 3.10
-
BDI
3.7 3.8
69
70
um mdulo a parte responsvel por esta tarefa. Embora a arq uitetura original BDI proponha
uma funo de execuo de aes oriundas de planos, ela no trata da representao explcita
da operacionalizao dos planos e nem da influncia da emoo sobre a execuo das aes e
planos. Alm disto, foi adicionada a base Resource Base para auxiliar o processo de
percepo e atuao discutidos a seguir.
Nos tpicos a seguir iremos explicar cada uma das entidades envolvidas nesta
arquitetura e seus relacionamentos.
71
and Vidal 2006, Pereira et al. 2005, Signoretti 2012) determinam explicitamente um mdulo
que realiza o processamento da percepo promovido principalmente pela influencia do
estado emocional no aparato perceptivo do agente, como abordado em (Hernndez et al. 2004,
Oliveira and Sarmento 2003, Velsquez 1996). Desenvolveremos tambm um mdulo de
percepo a parte, visto que esta separao vantajosa, pois muito do processamento
semntico que no modelo original BDI deveria ser feito na Belief Review Function, pode
agora ser realizado neste (Pereira et al. 2005). Alm disto, as intenes (Morgado 2006, Neto
2010) e emoes (Lino 2006, Morgado 2006, Signoretti 2012) desempenham um importante
papel na ateno do agente promovida principalmente pela seleo de percepes, e estes
processamentos so de natureza perceptiva, o que torna inconveniente coloca- los na funo de
reviso de crenas.
Alm disto, os autores (Jiang and Vidal 2006, Sloman 1999) propem que o
tratamento da percepo do agente deve ser feito de forma segmentada. Os autores (Jiang and
Vidal 2006) consideram que percepes de origens diferentes devem ser tratadas por funes
diferentes e (Sloman 1999) considera percepes que exigem tratamentos mais complexos
deveriam ser tratadas por funes especficas que adotam algoritmos mais complexos.
Com estes argumentos, julgamos vantajoso definir explicita mente uma funo de
percepo para atingir os seguintes ganhos: (i) diminuir a complexidade da Funo de
Reviso de Crenas e (ii) criar um projeto de sistema perceptivo explcito e segmentado,
descrevendo como ser realizada a seleo das sensaes, como sero atribudos os rtulos
semnticos e como sero realizadas as transformaes semnticas atravs de uma srie de
funes, agrupadas pela origem da percepo e pela complexidade de seus algoritmos.
Em nossa arquitetura, a gerao de percepes do agente ser realizada por uma
funo composta chamada Perception Function (Eq. 2), apresentada na Figura 7. Ele recebe
influncia da base de emoes (E), das crenas (B) e das intenes (I) do agente. Recebe as
sensaes obtidas do ambiente (S) e retorna as percepes geradas para a base de percepes
(P). Observe que esta base de percepes foi criada como mero artifcio de facilitar o
entendimento do modelo, visto que no precisamos dela para fazer nada alm da comunicao
do contedo gerado por esta funo Perception Function com a First Emotion Review
Function e a Belief Review Function.
Pf : S x B x E x I P
(Eq. 2)
72
Os trs principais papis deste mdulo so: (i) selecionar as percepes desejveis
dado o estado mental do agente (por exemplo, um agente selecionar percepes que tenham
relao com suas intenes e eliminar as outras); (ii) atribuir informao semntica
percepo (o agente pode rotular as percepes com informao do estado emocional, como
por exemplo rotular as memrias de um acidente traumtico com as emoes de medo que
ocorreram no momento de sua percepo) ; e (iii) transformar as percepes em uma estrutura
de informao mais til ao resto do sistema (como por exemplo, modificar as percepes
visuais imagens em caracteres via OCR).
Seguindo a proposta de (Sloman 1999) que v que a percepo pode ser tratada em
camadas de acordo com sua complexidade, a considerao de (Jiang and Vidal 2006) sobre o
uso de vrias funes para tratar percepes de acordo com sua origem e de funes de filtro e
atribuio semntica de (Pereira et al. 2005), consideraremos que a Perception Function
possuir vrios fluxos e vrias etapas. Cada fluxo deve estar associado a um sensor do
agente. Se o agente possui os sensores humanos (viso, audio, tato, paladar e olfato) ele
possuir cinco fluxos na funo de percepo. Na Figura 8 os crculos numerados indicam os
fluxos para cada sensor, podendo haver quantos forem necessrios. Esta segmentao lgica
feita para que seja sugestivo ao projetista que tais operaes podem ser realizadas
potencialmente por mdulos independentes e remotos, permitindo processamento paralelo e
especializado para cada tipo de informao proveniente de cada sensor.
73
Cada fluxo dividido em etapas, cada uma responsvel por um tipo de operao e que
desempenha um ou mais dos trs papis citados. Estas etapas so: (i) Sensor Filter, (ii)
Resource Filter, (iii) Rules Filter, (iv) Emotional Filter e (v) Intentional Filter. Tal como uma
linha de produo, cada funo gera a entrada da sua subseqente e a informao gerada no
decorrer do processo por cada funo chamaremos de pr-percepo, sendo representada por
Pfuno , onde funo a funo que deu origem a esta pr-percepo. Por exemplo, Psf
representa a pr-percepo depois de passar pela Sensor Filter.
A Sensor Filter, que representa os sensores em si, desempenha o papel de seleo das
sensaes, captando somente as sensaes possveis de serem captadas pelo sensor associado,
assim representando o sensor fsico propriamente dito. Por exemplo, a Sensor Filter que
representa o sensor da audio capta apenas sons e no imagens e nem odores. Estes devem
captados, respectivamente, pelos sensores da viso e do olfato. Alm disso, a Sensor Filter
ainda filtra a percepo de acordo com as limitaes do sensor. Por exemplo, o sensor de
audio de um ser humano no capaz de perceber sons em frequncias to baixas quanto o
sensor de audio de um cachorro. Sendo assim, qualquer som fora de uma determinada faixa
definida nas caractersticas do sensor deve ser eliminado.
Esta funo representada matematicamente pela equao Eq. 3, onde S representa as
sensaes recebidas do ambiente e Psf as sensaes j selecionadas de acordo com o tipo de
sensor e suas limitaes.
Sf: S Psf
(Eq. 3)
74
prximas etapas (por exemplo, o agente ir eliminar percepes caso seu processador esteja
sobrecarregado). Sua frmula dada pela funo Eq. 4, onde Psf a pr-percepo gerada
pela Sensor Filter, R a Resource Base e Pref a pr-percepo gerada pela Resource Filter.
A Resource Filter parametrizada por uma base de informao chamada Resource Filter, que
contm informao sobre os recursos do agente.
Ref: Psf x RPref
(Eq. 4)
J a Rules Filter utiliza uma base de regras para realizar selees, atribuies de
semnticas e transformaes nas percepes que esto sendo geradas. Seu papel de seleo
equivalente ao desempenhado pela funo Sensing Filter da arquitetura (Pereira et al. 2005),
utilizando as crenas sobre o mundo para saber se uma percepo necessria. Por exemplo,
uma pessoa comum ficar incomodada com os barulhos de uma fbrica, enquanto que um
operrio que trabalhe a anos no local ir ignor-los. O papel de atribuio de semntica
similar ao desempenhado pela funo Semantic Association Rules definida em (Pereira et al.
2005) e usa as crenas para determinar quais qualidades o objeto observado possui. Por
exemplo, ao perceber um agente o observador pode reconhecer este agente e lhe atribuir um
nome e um conjunto de informaes associadas relao que possui com o agente observado.
E, por ltimo, o papel de transformao transforma o dado percebido em outro mais til ao
agente. Por exemplo, transforma um som obtido pelo agente observador em uma sequncia de
palavras que o representa.
Neste contexto, a base Resource Base armazena as informaes sobre os recursos do
agente. No representada a atualizao de suas informaes, pois considera-se que estas
informaes sejam fornecidas para a arquitetura abstrata pelo resto do sistema que embarca o
agente e no possvel ao projetista manipul- las.
A representao matemtica da Ruf dada pela funo Eq. 5, onde Pref so as prpercepes da Resource Filter, B a base de crenas e Pruf o conjunto das pr-percepes
geradas aps a aplicao da Rules Filter.
Ruf: Pref x B Pruf
(Eq. 5)
75
eliminar percepes suprfluas e focar no objeto que lhe causa raiva. Alm disto, os
algoritmos (i) de filtragem de percepo relacionadas ao estado emocional corrente (Neto and
Da Silva 2010 p. 201) uma percepo pode ser eliminada caso no seja emocionalmente
relevante naquele momento, como ignorar um erro de outro agente quando este outro agente
querido e (ii) de filtragem de percepes de acordo com a intensidade emocional corrente
(Signoretti et al. 2010) uma percepo eliminada caso a intensidade emocional corrente
seja muito baixa ou alta, como por exemplo eliminar a sensao de dor quando se est com
raiva alta.
Assim, a frmula da funo Ef dada pela equao Eq. 6, onde Pruf o conjunto das
pr-percepes geradas pela Rules Function, E o conjunto dos estados emocionais e Pef o
conjunto de pr-percepes geradas.
Ef: Pruf x E Pef
(Eq. 6)
Por ltimo, o mdulo perceptivo faz uma ltima seleo das percepes utilizando as
intenes do agente com a funo Intentional Filter. Utilizando esta funo, o agente tem sua
percepo orientada s intenes que possui no momento, tal como sugerido por (Jiang and
Vidal 2006). Em outras palavras, se o agente possui a inteno de realizar uma tarefa, ir
selecionar as percepes que auxiliem a realizao de sua inteno. Por exemplo, um agente
que representa uma loja virtual que tem a inteno de recomendar livros a um usurio, ir
atentar para outros livros em seu ambiente (o estoque), ao invs de sapatos ou
eletrodomsticos. De acordo com a equao Eq. 7, a Intentional Filter recebe o conjunto Pef e
as intenes contidas na base de intenes (I) como parmetros e retorna um conjunto de
percepes finais P.
If: Pef x I P
(Eq. 7)
Nossa meta com esta proposta de funo de percepo foi permitir a influncia da
emoo sobre a percepo como proposto por (Lino 2006, Neto and Da Silva 2010, Signoretti
et al. 2010), em especial quanto a seleo de percepes, e segmentar o processamento em
fluxos e etapas, como proposto pelos autores (Jiang and Vidal 2006, Sloman 1999). Alm
disto, nos preocupamos em adicionar a influncia das crenas, que algo j implicitamente
explorado pela prpria arquitetura BDI original (Wooldridge 2009), visto que as percepes
eram diretamente processadas pela funo de reviso de crenas. E tambm nos preocupamos
em adicionar a influncia das intenes, permitindo o agente selecionar percepes mais afins
com seu estado intencional, permitindo simular o fenmeno de ateno no agente. (Signoretti
2012, Signoretti et al. 2010) propem algo similar em sua arquitetura, mas ele considera que
76
as percepes so selecionadas de acordo com seus behaviors, que a nosso ver so uma
espcie de aes possveis do agente que constituem os seus planos em execuo, em vez de
utilizar as intenes diretamente.
Nota-se que a base de desejos no influencia nossa Perception Function. Os dois
principais motivos foram: (i) no haver na literatura de agentes emocionais uma proposta que
adotasse isto com embasamento terico; e (ii) julgarmos que a influncia das intenes
suficiente para promover a ateno do agente s percepes mais adequadas a estas intenes.
Em nossa arquitetura, se for preciso realizar alguma forma de raciocnio utilizando os desejos
sobre as percepes, ele deve ser feito na reviso de crenas, aps a anlise das percepes.
Outra possibilidade seria realizar o raciocnio utilizando os desejos indiretamente via
emoes, de tal forma que um desejo gere uma emoo e esta emoo venha a modificar a
percepo do agente pela Emotional Filter.
A ordem das etapas da Perception Filter representada na Figura 8 no aleatria.
preciso considerar a Sensor Filter como primeira, visto que ela representa as limitaes e
ajustes do sensor fsico. A Resource Filter tambm est intimamente relacionada com o
sensor fsico, visto que a falta de recursos poder interferir fisicamente no sensor,
eliminando percepes que estejam imprecisas ou de baixa confiana. J Rules Filter e a
Emotion Filter devem ser executadas anteriormente a Intention Filter, pois regras semnticas
e emoes tentem a ter uma estrutura mais simples que a estrutura de intenes, desta forma,
espera-se que estas primeiras funes executem mais rpido e eliminem informao a ser
processada pela Intention Filter, que tende a ser mais custosa pela natureza da informao das
intenes.
Nossa Proposta
Em nosso trabalho seguiremos a proposta de (Jiang and Vidal 2006, Oliveira and
Sarmento 2003, Pereira et al. 2005) em adotar um estado emocional explcito a ser definido
77
78
79
80
(Eq. 8)
Esta funo ser composta pela First Emotional Elicitors (Eq. 9), que representa um
conjunto de eliciadores que devem disparar as emoes em seu estgio primrio, e pela First
Emotional Update (Eq. 10), que representa a atualizao do estado emocional. Note que esta
abordagem contraditria aos indcios tericos propostos por (LeDoux 2002), que afirmam
que o controle da dinmica emocional, diminuindo sua intensidade, se d por estruturas
deliberativas e mais complexas que as que eliciaram (caracterizando uma dinmica de emoo
secundria). Entretanto precisamos definir esta funo de atualizao primria, pois, se s
existisse atualizao do estado emocional na Second Emotion Review Function, esta
atualizao poderia nunca ser realizada, j que a execuo da Second Emotion Review
Function ocorre s quando a funo Critical Context avalia que h recursos disponveis.
81
FERFFee: P x E x D x I EE
(Eq. 9)
FERFFeu: P x E x D x I EU
(Eq. 10)
Como visto pelas barras de bifurcao, a First Emotional Elicitors e a First Emotional
Update podem ser executadas sem uma ordem especfica. Embora em todas as arquiteturas
consultadas o processo de eliciao ocorra antes do processo de atualizao, no nosso caso
particular no h nenhuma justificativa, seja terica ou de implementao, para que haja tal
precedncia.
4.2.1.4 Critical Context
Como visto na Figura 9 o sistema s executar a Second Emotion Review Function se
houverem recursos suficientes para isto ou o estado emocional sugerir que o contexto atual
apropriado para realizar as computaes de dinmica emocional secundrias. Por exemplo,
um agente de recomendao de livros recebeu uma solicitao para sugerir um livro a um
novo usurio e s lhe dado uma janela de tempo pequena para isto. Outro exemplo seria um
cenrio onde o agente presa surpreendido por um predador e deve gerar uma resposta
rpida (como por exemplo, fuga).
Ento, para lidar com esta questo, define-se uma funo chamada Critical Context
(representada na Figura 9 por um losango e descrita na Eq. 11) que recebe influncia da base
de emoes e da base de recursos que deve responder verdadeiro ou falso a pergunta: Estou
em uma situao crtica?.
CC: E x R {true, false}
(Eq. 11)
Veja que as arquiteturas de (Hernndez et al. 2004, Jiang and Vidal 2006) adotaram
emoes multicamadas e adotaram uma poltica diferente para evitar a reviso das emoes
secundrias. No trabalho (Hernndez et al. 2004) sempre que ocorre a eliciao de uma
emoo primria no se realiza a eliciao das emoes secundrias. Tal poltica melhora a
82
resposta do agente a situaes emergenciais, mas no evita que o sistema entre em um cenrio
onde as emoes secundrias nunca sero eliciadas.
J (Jiang and Vidal 2006) prope que existe uma funo similar a Critical Context,
porm lidando somente com o recurso tempo. Ele sempre calcula as emoes secundrias,
realizando os passos de gerao de objetivos (Option Function) e de escolha das intenes
(Filter Function) propostos em sua arquitetura. Em seguida, caso haja tempo disponvel e o
estado emocional gerado pela funo secundria for diferente do gerado pela funo primria,
ele executa novamente os passos de Option e Filter Function com o novo estado emocional.
Existem dois problemas com esta proposta: primeiro ele sempre calcula o novo estado
emocional e no considera que a eliciao de um estado emocional possui um custo e este
custo pode ser demasiado; segundo, no deveria ser preciso realizar duas deliberaes s por
que foi alterado o estado emocional.
A forma que propomos similar a de (Jiang and Vidal 2006), mas verificamos antes
da deliberao se o agente tem recurso suficiente para achar este novo estado emocional,
utilizando a Critical Context. Se sim, chama-se a Second Emotion Review Function. Caso no
possua, continua-se a deliberao.
4.2.1.5 Second Emotion Review Function
Conforme discutido, nesta funo que ocorrer eliciao das emoes secundrias,
sendo mais complexas (Hernndez et al. 2004, Jiang and Vidal 2006) e podendo fazer
relaes a outras entidades do ambiente (Velsquez 1998b).
Ela, diferentemente da anterior, sofrer influncia da base de crenas, permitindo que
o agente use informaes das crenas para eliciar emoes. Por exemplo, um agente A passa a
acreditar que um agente B est muito doente. Isto far o agente A eliciar a emoo pena.
A funo tambm recebe influncia de toda a base de desejos, e no somente dos
drives. Isto permite que esta funo note se as metas esto muito tempo na base ou se elas
foram excludas, gerando emoes relacionadas. Por exemplo, um agente deseja viajar para o
Japo. Entretanto esta meta nunca se torna uma inteno, pois ele sempre prioriza outras
metas. Isto pode causar a emoo desapontamento ou tristeza. J a base de intenes
influenciar este funo similarmente como influencia a First Emotion Review Function.
Tal como ilustrado na Figura 12, esta funo (Eq. 12) influenciada por todas as bases
da arquitetura BDI mais a base de emoes. Veja que com acesso s crenas, ela conseguir
fazer associaes entre emoes e crenas do agente, em especial com outras entidades do
ambiente, caracterizando um estilo de emoo secundria proposto por (Velsquez 1998b).
83
Serf: B x D x I x E E
(Eq. 12)
Esta funo de reviso ser composta internamente tambm por duas funes, como
ilustrado na Figura 13: uma funo representando os eliciadores secundrios chamada Second
Emotional Eliciators (Eq. 13) e a outra a funo responsvel pelo processo de atualizao
das emoes com o tempo chamada Second Emotional Update (Eq. 14).
SERFSee: B x D x I x E E E
(Eq. 13)
SERFSeu: B x D x I x E E U
(Eq. 14)
84
ltima percepo do agente (Georgeff et al. 1998 p. 3) e sobre si mesmo (Signoretti 2012 p.
66), de forma subjetiva. Em outras palavras, o agente obtm/gera esta informao, mas ela
no necessariamente correta em relao a realidade do ambiente.
Existem dois elementos relacionados com a manipulao de crenas: a base de crenas
(Belief Base), que armazena as crenas adotando alguma forma de indexao e estruturao
que permita manipul- las e resgat- las no futuro. E a funo de reviso de crenas (Belief
Review Function), que possui basicamente o papel de atualizar a base de crenas,
adicionando, removendo e transformando suas instncias.
A partir da literatura levantada iremos definir a Funo de Reviso de Crenas ( Belief
Review Function - Brf). Esta funo influenciada pelas percepes do agente, pelas crenas
atuais do agente como j descrito na arquitetura BDI original , por suas emoes (Jiang
and Vidal 2006, Neto 2010, Oliveira and Sarmento 2003, Pereira et al. 2005) e por suas
intenes (Bordini et al. 2007, Bordini and Hbner 2007, Jiang 2007), tal como definido na
Eq. 15 na Figura 14. Esta funo foi subdividida em trs sub-funes tal como descreve a
Figura 15 e que sero detalhadas a seguir.
Brf : B x I x E x P B
(Eq. 15)
85
(Eq. 16)
(Eq. 17)
(Eq. 18)
86
do agente.
87
Of : B x D x I x E D
(Eq. 19)
88
valor de um drive dependendo do estado mental e deve incrementar este valor no decorrer do
tempo, para simular sua intensidade, como ocorre com a fome e sede em seres humanos.
Um exemplo prtico e simples de drive a fome: a fome possui uma intensidade que
pode ser representada por um valor numrico. A fome possui um limiar superior. Quando a
sua intensidade ultrapassa o limiar superior, o agente toma conscincia que tem fome,
passa a ter uma srie de fenmenos fisiolgicos e psicolgicos (exemplo a dor na barriga).
Para lidar com estes fenmenos ele deve comer. Quando este agente se alimentar, a
intensidade do drive fome diminuir e no mais ultrapassar o limiar superior, ento o agente
no sentir mais fome.
A terceira diz respeito a priorizao dos desejos de acordo com o estado mental do
agente, incluindo as emoes, permitindo que ele selecione os desejos mais prioritrios
durante o processo de seleo ocorrido na Filter Function. Por exemplo, se o agente gostar de
outro agente, poder priorizar os desejos que favoream este outro agente.
Assim, nossa funo de gerao de opes ser composta por trs funes, uma para
cada forma de influncia emocional discutida, como mostrado na Figura 17. A primeira,
Update Desires (Eq. 20) trata da insero, remoo e transformao de desejos, levando em
conta as crenas (B), os prprios desejos (D), as intenes (I) e as emoes (E). Este ltimo
utilizado para contemplar a capacidade de incluir ou excluir desejos caso o estado emocional
exija isto, como discutido anteriormente. A funo retorna ento um conjunto com o novo
contedo da Desire Base, DUDe. Tambm se deve lembrar que drives, embora seja incomum,
podem ser includos ou excludos em tempo de execuo, e este procedimento seria de
responsabilidade desta funo.
UDef : B x D x I x E DUDe
(Eq. 20)
A segunda funo, a Update Drives (Eq. 21) atualiza o valor de intensidade dos drives
contidos no conjunto DUDe , ativando-os quando extrapolarem seu limiar ou desativando-os.
Isto de acordo com as crenas (B), desejos (D), intenes (I) e emoes (E) do agente gerando
assim o conjunto DUDr.
UDrf : B x DUDe x I x E DUDr
(Eq. 21)
A terceira, Prioritize Desires (Eq. 22) lhes atribui um valor de prioridade aos desejos
j tratados pelas equaes anteriores (contidos no conjunto DDUr). Este valor ser usado nas
etapas seguintes, utilizando as crenas, desejos, intenes e emoes gerando assim o
conjunto DP. Os drives tambm so priorizados por esta funo. S que eles possuem
prioridade insignificante quando esto inativos (por exemplo, o menor valor possvel de
89
prioridade), ou possuem uma prioridade tambm dependente do seu valor atual quando esto
ativos.
PDf : B x DUDr x E x I DP
(Eq. 22)
90
pode literalmente construir um plano do zero ou pode ser a busca de planos em uma base de
planos (Wooldridge 2009 p. 74).
Entretanto, pelas questes de (i) compatibilidade com sistemas com capacidade de
gerar planos (Meneguzzi et al. 2004), (ii) a ausncia de planejamento trazer restries aos
agentes autnomos quanto a sua capacidade de lidar com situaes no previstas em tempo de
projeto (Meneguzzi et al. 2004) e (iii) a existncia de propostas que levam em conta a relao
entre emoo e capacidade de planejamento (Gratch 1999, Oliveira and Sarmento 2003), no
podemos desconsiderar o planejamento dentro de nossa arquitetura. Especificaremos, portanto
uma funo geradora de planos, que chamaremos de Generate Plans9 . Esta funo exige uma
base de aes (Action Base) que iro compor o plano. Esta base pertence ao mdulo de
atuao, que ser discutida no tpico 4.6. Porm, como no foco deste trabalho, no iremos
tratar do planejamento em si e nem como a emoo poderia influenci- lo.
As modificaes no modelo BDI encontradas nos modelos emocionais BDI quanto ao
mdulo de inteno so (i) a prpria influncia do estado emocional sobre a seleo das
intenes (Bazzan et al. 2002, Jiang and Vidal 2006, Neto 2010, Pereira et al. 2005) ; (ii) a
configurao do algoritmo de planejamento (Oliveira and Sarmento 2003); (iii) a seleo do
estilo de algoritmo de acordo com o estado emocional (Oliveira and Sarmento 2003); e (iv) a
rotulao dos planos com marcador somtico para selecionar planos cujo marcao somtica
mais afim com o estado emocional atual (Neto 2010).
Ns abstrairemos os detalhes tericos dos processos de influncia propostos, devido ao
fato deles serem dependentes de domnio e alguns como os de (Oliveira and Sarmento 2003)
no possurem experimentos comprovando sua eficincia. Consideraremos ainda que a
emoo influencia principalmente na prpria atualizao de intenes e no processo de
gerao e seleo de planos.
Desta forma, definiremos nossa Filter Function (Eq. 23) apresentada na Figura 18 da
seguinte forma: ela sofre influncia da Intention Base, da Desire Base e da Belief Base, tal
como no BDI original e postulamos a influncia da Action Base porque supomos que nossa
arquitetura abstrata poder ser munida de um sistema de planejamento que potencialmente
usar esta base. Por ltimo, a Emotion Base tambm a influenciar, seguindo o proposto por
(Jiang and Vidal 2006, Neto 2010, Oliveira and Sarmento 2003, Pereira et al. 2005).
Ff : B x D x I x E x A I
9
(Eq. 23)
Entretanto, faremos co mo a arquitetura BDI e tentaremos exp licar co mo se realiza este processo e
como a emoo pode promove-lo e influenci-lo, pois foge do escopo deste trabalho.
91
FUIf : B x D x I x E Io
(Eq. 24)
A prxima funo chamada Find Plans (Eq. 25) tem o objetivo de associar planos s
intenes do conjunto Io buscando-os em uma base de planos chamada Plan Base os planos
definidos em tempo de projeto ou gerados pela funo Generate Plans. O resultado desta
92
(Eq. 25)
Caso exista alguma inteno ainda sem plano aps a execuo de Find Plans, a
Generate Plans (Eq. 26) tentar gerar um ou mais planos para estas intenes. Para isto ela
utiliza a base de crenas, para saber qual o contexto atual e para gerar planos com prrequisitos de acordo com este contexto. A base de emoes, alm de servir para gerar planos
com pr-requisitos adequados com o estado emocional, influenciar o planejamento tal como
(Oliveira and Sarmento 2003) sugere. Por exemplo, quando o agente est no estado emocional
com medo, ele pode forar o seu algoritmo de planejamento a gerar planos curtos para
tentar lidar rapidamente com a fonte do medo e limitar o tempo que o algoritmo ter para
operar. Por ltimo, a base de aes exigida para que o algoritmo de planejamento tenha as
informaes das aes que podem constituir para gerar os planos.
No final, a Generate Plans ir tentar associar novos planos para cada inteno que
continuou sem planos contida na IP, obtendo a nova coleo IG. Esta funo tambm
adicionar todos os novos planos gerados (Pnew) base de planos, permitindo que eles sejam
reutilizados em ciclos posteriores.
FGPf : B x E x A x IP IG, Pnew
(Eq. 26)
Quanto ordem adotada para as funes, observa-se que existem duas tarefas bsicas
representadas: (i) a seleo e reconsiderao de intenes e (ii) a gerao/associao de
planos. Adotou-se esta ordem (primeiro seleciona/reconsidera intenes), pois como
selecionamos primeiro as intenes antes de associar/criar planos, a segunda tarefa se torna
mais rpida, visto que teremos menos metas exigindo planos para satisfaz- las. Esta escolha
93
tambm a mais adotada pelas abordagens BDI e Emocionais BDI (Bordini et al. 2007, Jiang
and Vidal 2006, Neto 2010), o que nos indica sua efetividade. Entretanto existem trabalhos
que prope a ordem inversa, onde primeiro se seleciona/cria planos para metas e s depois
realiza a seleo/reconsiderao de intenes (Meneguzzi et al. 2004). Esta ordem inversa
desejvel quando preciso gerar planos para avaliar a necessidade de manter metas na base
ou utiliz- los para selecionar as futuras intenes, com o custo de ter de planejar/buscar metas
que ainda no se sabe se tornaro intenes.
94
informao se est indisponvel por algum motivo; e (iv) equivalncia entre aes, i.e., se uma
ao diferente possui os mesmos pr-requisitos e gera os mesmos ps-requisitos, permitindo
sua troca. As alteraes desta base no so realizadas diretamente pela arquitetura, mas sim
pelo processo de atuao em si, que dependente de domnio.
J a Execute Function ser definida tal como Eq. 27 e executada aps a Filter
Function, como visto na Figura 20. Esta funo influenciada pela base de intenes,
crenas, emoes e recursos. Consideramos que a base de crenas influencia esta funo, pois
os planos podem utilizar informaes das crenas do agente para realizar clculos e
parametrizar aes. Tambm consideraremos que a base de aes influencia este mdulo para
que ele possa observar o estado de uma ao (sua disponibilidade, por exemplo).
Ef : A x B x E x I x R Act
(Eq. 27)
Consideraremos que nossa arquitetura tentar realizar uma inteno qualquer por um
ciclo de execuo, adotando algum critrio de seleo desta inteno e tentar obter seu
objetivo executando todos os planos associados, um de cada vez at obter xito ou acabarem
os planos possveis. Nossa motivao para adotar esta poltica a sua simplicidade,
facilitando o estudo do problema e a implementao da proposta.
Visando esta poltica, a Execute Function ser composta por duas outras funes,
como visto na Figura 21. A primeira a Select Intention (Eq. 28) que, dada a coleo de
intenes, seleciona qual ser a inteno executada no respectivo ciclo, levando em conta a
base de emoes para saber qual inteno mais adequada para um dado estado emocional,
tal como (Pereira et al. 2005) sugere. importante existir esta influncia para que se possa
representar situaes similares a de comportamentos influenciados por emoes como visto
nas propostas de (Breazeal 1998, Velsquez 1996).
Um exemplo de como a emoo influencia na seleo da inteno o seguinte: um
agente tem a inteno de fazer um relatrio antes de limpar sua mesa de trabalho. Outro
95
agente observa a baguna em sua mesa. Isto faz o agente ter vergonha e ele passa a preferir
realizar a inteno de limpar a mesa.
ESIf : I x E Io
(Eq. 28)
A segunda funo, a Achieve Intention (Eq. 29) deve receber a inteno selecionada
(Io ) e executar os planos associados at satisfazer a inteno. Os planos so executados com
uma ordem de prioridade que pode ser obtida tambm pela informao do estado emocional e
aes. Caso um plano mais prioritrio falhe, a funo ir tentar o prximo mais pr ioritrio, at
que satisfaa a inteno ou todos os planos falhem. Veja que neste processo pode ser utilizada
uma srie de algoritmos para priorizao de planos propostos em (Neto 2010, Oliveira and
Sarmento 2003, Pimentel and Cravo 2009) usando as mtricas do marcador somtico e
similaridade com o estado emocional, respectivamente (veja tpicos 2.4.3 e 3.3.3 para mais
detalhes). Inclusive, devemos levar em conta que o prprio plano pode querer informaes
sobre as emoes no decorrer de sua execuo, e tambm para isto necessrio que a Execute
Function tenha acesso a base de emoes.
EAIf : Io x B x E x R x A I
(Eq. 29)
96
Descrio
Resource Base
Action Base
Perception Base
Perception Function
Sensor Filter
Resource Filter
Emotional Filter
Intentional Filter
Belief Base
Base de crenas
Revisa as crenas
Update Beliefs
97
Tag Beliefs
Forget Beliefs
Desire Base
Base de desejos
Option Function
Update Desires
Update Drives
Prioritize Desires
Intention Base
Base de Intenes
Filter Function
Update Intention
Find Plans
Generate Plan
Execute Function
Select Intention
Seleciona a inteno
Achieve Intention
Emotion Base
Base de Emoes
Critical Context
Second Emotion Review
Function
98
planejamos alterar a estrutura do Jason e nos limitamos a alterar somente seus pontos
flexveis (ou fronzen-spots).
Iremos realizar esta tarefa por mdulos. Isto , o mapeamento ser realizado a cada
mdulo da arquitetura. Com exceo do mapeamento de bases de recursos, aes, emoes e
intenes, que ser realizado previamente. No final elaboraremos uma tabela resumindo o
resultado final do mapeamento. Pode-se obter informaes mais detalhadas sobre a
arquitetura do Jason no tpico 2.3.
5.2.1
Base responsvel por armazenar informaes sobre os atuadores do agente, assim como seu
estado em dado instante; (ii) a Resource Base armazena informaes referentes a recursos
necessrios para o funcionamento do agente, como por exemplo, o nvel de bateria,
quantidade de projteis, quantidade de material para construir seu objeto de trabalho, entre
outros; e (iii) a Emotion Base utilizada para armazenas as emoes do agente. Tanto a Action
Base quanto a Resource Base podem ser representadas como crenas sem muitos problemas.
J a Emotion Base ser mapeada na base de crenas adotando-se algumas convenes
(explicadas no tpico 5.2.8 abaixo). Logo, todas estas bases sero mapeadas na base de
crenas do Jason.
5.2.2
Base de Intenes
A base de intenes no tem acesso trivial no Jason, pois as intenes so
99
e pela Perception Base. A Perception Base foi introduzida como artifcio para representar a
ligao entre a etapa de percepo e a de reviso de crenas. Esta base no essencial visto
que os dados de percepo no precisam ser persistidos entre dois ciclos de execuo. Ento
no preciso mape-la no Jason.
J a Perception Function dividida em vrios fluxos, um para cada sensor do agente.
No Jason, percepes do ambiente so filtradas e inseridas no fluxo padro da arquitetura
BDI, o que torna quase direto o mapeamento da Perception Function do UEBDI na funo
Perceive Jason. J as mensagens do Jason so interpretadas por funes separadas e inseridas
diretamente como metas no agente na base de eventos. Isto faz com que a mensagem no Jason
no siga o fluxo esperado de uma percepo da UEBDI, que de insero na base de
percepes para depois passar pelas Perception Function, e por fim a Belief Review Function.
Em tese, possvel tratar estas mensagens que caem na Event Base, entretanto faz- lo ir
inverter a ordem de execuo original da UEBDI e no ser poss vel acessar a base de
percepes pela Select Event. Por isto, no iremos considerar as mensagens e consideraremos
o mapeamento das mensagens impossvel.
De qualquer forma, ainda podemos tratar as mensagens se a considerarmos uma meta
a ser tratada na Select Event do Jason (ou a Update Desires da UEBDI). E quanto as
percepes normais, iremos mape-las abaixo.
Na Figura 22 representamos o mapeamento. A Sensor Filter da arquitetura faz a
seleo de sensaes pertinentes quele fluxo de percepo e representa o sensor
propriamente dito. Sendo assim, esta funo deve ser mapeada a funo Perceive em Jason
que possui objetivo similar.
100
Base. A Belief Base pode naturalmente ser mapeada na base de crenas do Jason diretamente.
A Belief Review Function da nossa arquitetura visa realizar a incluso, excluso e
transformao/reviso da base de crenas (feito pela Update Beliefs) e dar suporte ao sistema
de rotulao e esquecimento (chamadas na nossa arquitetura de Tag Beliefs e Forget Beliefs).
No Jason, as tarefas de incluso e excluso pertencem funo BUF e aos planos do agente.
J a tarefa de transformao/reviso de crenas realizada pela BRF. Porm existe uma
diferena, a BRF realiza somente a reviso de crenas individuais e no de um conjunto de
crenas medida que cada crena includa ou excluda da base de dados.
Dadas similaridades funcionais, podemos mapear a Update Beliefs na BUF e na BRF
do Jason, respeitando a ordem de execuo original. Tambm possvel mape- la nos planos,
pois estes podem atualizar a base de crenas. Entretanto, neste caso a ordem de execuo
diferente da UEBDI, pois os planos iro executar a atualizao na Execute Function do Jason.
Alm disto, nos planos e na BUF, pode-se acessar a Belief Base, a Emotion Base (contida na
Belief Base) e a Intention Base, permitindo acessar todas as bases necessrias por esta funo.
Devido a isto, consideraremos que este mapeamento completo se implementarmos agentes
estendendo a BUF/BRF do Jason. Caso usemos os planos para atualizar as crenas, o
mapeamento ser incompleto.
A Tag Beliefs pode ser mapeada na BRF do Jason, pois as duas funes operam
durante a incluso de crenas e a BRF j pressupes acesso base de crenas, o que tambm
uma necessidade da Tag Beliefs que precisa acessar o estado emocional do agente. A
informao de rotulao feita para Tag Beliefs pode ser inserida como outras crenas na
101
prpria base de crenas ou como anotaes sobre a crena rotulada, um recurso existente no
Jason. Neste caso, o mapeamento completo.
Por ltimo, a Forget Beliefs no pode ser mapeada para a funo BRF do Jason, pois
ela deve ser executada a cada ciclo de execuo, forando com que crenas no estejam mais
disponveis logo aps o seu tempo de vida expirar. Tampouco pode ser mapeada para a
funo BUF, pois podem existir crenas oriundas das percepes que no foram rotuladas
pela Tag Beliefs.
O local mais indicado para incluir a funcionalidade de Forget Beliefs no incio da
funo Select Event, pois ela executada logo em seguida a BUF. Mesmo Select Event no
tendo a funo de tratamento de crenas, o incio desta funo o local ideal para o
procedimento de esquecimento de crenas, que deve ser executado logo no final de todo o
processo de reviso de crenas. A funo s precisa saber qual a crena deve esquecer, assim
como as informaes que a rotulam, ambas contidas na base de crenas e acessveis pela
Select Event. Logo, o mapeamento da Forget Beliefs na Select Event completo.
5.2.5
eventos para notificar ao sistema que ele deseja alcanar dada sentena. Posteriormente este
evento selecionado pela funo Select Event.
Na nossa arquitetura existe o mdulo de desejos que composto pela Desire Base e
pela Option Function. A base pode ser mapeada como subconjunto da base de eventos do
Jason contendo os eventos relativos a metas. Como j discutido no tpico 2.3, o Jason possui
seu sistema de metas limitado, no permitindo implementar metas persistentes diretamente
sem o uso de artifcios. Entretanto iremos considerar que atravs dos padres de projeto
(Hbner et al. 2006) possvel implementar metas persistentes em Jason. Os drives, que at
ento estvamos considerando como parte das metas do agente, so mapeados para a base de
crenas, como discutiremos a seguir.
A Figura 24 demonstra como poder ocorrer o mapeamento. A funo Update Desires
realiza a tarefa de insero e a remoo de metas influenciada pelas crenas, emoes,
102
desejos e intenes. Podemos considerar que esta funo pode ser mapeada nos planos do
agente, onde as emoes e crenas so acessveis pela Belief Base do Jason e desejos e
intenes so acessveis pelas aes internas .desire(x) e .intend(x) do Jason. Veja que
este mapeamento incompleto, pois apesar de conseguirmos acessar as bases de crenas
emoes e intenes pelos planos esta funo ser executada na funo Execute Intention
do Jason junto com os planos, e no logo depois da reviso de crenas e reviso e emoes
pela Second Review Emotion Function (discutida em 5.2.8). Isto inverte a ordem de execuo
original da UEBDI.
Posteriormente temos a funo Update Drives. Veja que ela desempenha trs papis:
dado um conjunto de drives, (i) atualizar o valor dos drives e (ii) verificar quais drives
extrapolaram seus limites de ativao e os ativar, assim como verificar se o seu va lor voltou a
estar contido entre seus limites de ativao e o desativar; e (iii) atualizar o valor dos drives
caso ocorra certo evento (como por exemplo, diminuir a cede caso o agente tenha ingerido
gua).
Para implementar a Update Drives no Jason, vamos definir a descrio dos drives
como crenas na forma drive(nome, valor, limiteSup, limiteInf, incremento), onde nome o
nome do drive que ser usado para identific- lo no sistema, limiteSup o valor limiar superior
do drive (quando o valor do drive for maior que este, o drive considerado ativo
superiormente), limiteInf o limiar inferior do drive (quando o valor do drive for menor que
este, ele considerado ativo inferiormente) e incremento um valor usado para incrementar o
valor do drive a cada ciclo de raciocnio.
Alm disto, para atualizar o valor dos drives podemos adotar duas abordagens. A
primeira mapear a atualizao para a funo Select Event do Jason, monitorando o estado
mental do agente e alterando as crenas relativas ao drive. A base de crenas acessvel,
assim como a base de desejos (mapeada como base de eventos) e a base de emoes (contida
na base de crenas). Veja que neste cenrio nenhum critrio de mapeamento ferido, pois a
ordem de execuo pode ser mantida e a Update Drives ter acesso a todas as bases
necessrias.
103
104
5.2.6
Function. A Intention Base pode ser mapeada na base de intenes do Jason, adicionando-se
as devidas extenses j discutidas no tpico 5.2.2.
No Jason a seleo e reconsiderao de intenes no ocorrem em uma funo
discriminada, mas sim separadamente. A incluso de intenes ocorre implicitamente na
Select Event, pois o sistema sempre tentar associar um plano ao evento selecionado para
torn- lo uma inteno. A reconsiderao se d pelo pro cesso de excluso de uma inteno por
aes internas do Jason a serem executadas em um plano.
Devido a isto, observa-se na Figura 25 o possvel mapeamento da Filter Function da
UEBDI sobre o Jason. Vamos considerar que a funo Update Intention da arquitetura
UEBDI, que possui o papel de atualizao das intenes, pode ser mapeada na funo de
Select Event (incluso) e nos planos do Jason (excluso), e ser possvel ter as influncias dos
desejos, das crenas e do estado emocional (que est na base de crenas). A Select Event tem
acesso a todas as bases exigidas pela Update Intention. Entretanto, quando houver excluso de
intenes pelos planos, a ordem de execuo ser mudada em relao a UEBDI, o que torna o
mapeamento incompleto.
Quanto a prxima sub- funo do UEBDI, a Find Plans, ela representa exatamente as
funes Check Context e Unify Event do Jason. Consideramos este mapeamento completo,
pois a ordem de execuo da UEBDI foi respeitada e a Find Plans s exige as bases de
crenas e planos, ambas acessveis pela Check Context e Unify Context do Jason.
A Generate Plans naturalmente no poder ser mapeada em nenhuma funo do Jason
visto que o Jason no lida com planejamento. Consideramos que, caso se queira esta
propriedade, deve-se anexar um terceiro mdulo de gerao de planos na Select Option do
Jason. Este mapeamento completo, pois a ordem de execuo mantida e a Belief Base, a
Emotion Base e a Action Base so acessveis pela Select Option.
Outra questo importante que a UEBDI ao trmino da Filter Function especifica um
conjunto novo de intenes onde cada uma contm uma coleo de planos, enquanto que o
105
Jason ao trmino da Select Option especifica uma nova inteno, sempre associada a um
nico plano. Isto faz com que o Jason no tente executar vrios planos para uma inteno at
satisfaz- la. Isto contornvel a partir do momento que existem padres de projeto (Hbner et
al. 2006) e diretrizes de execuo (Bordini et al. 2007 chap. 8) que implementam estas
propriedades s intenes. No consideraremos este fato um problema neste mdulo. Mas isto
se tornar um inconveniente no mdulo de atuao.
5.2.7
106
UEBDI no Jason atravs de padres de projeto (Hbner et al. 2006). O nico problema disto
que a ordem da responsabilidade de selecionar os planos invertida.
Outra diferena no mdulo UEBDI em relao ao Jason a forma de executar um
plano: A UEBDI executa atomicamente os planos associados a uma inteno, enquanto que o
Jason executa, para dada inteno, apenas partes do plano a cada ciclo de execuo.
Novamente, no consideraremos isto um problema maior, pois possvel forar a execuo de
um plano por vrios ciclos atravs da seleo da inteno que o interessa pela Select Intention
ou de diretivas dadas a um plano no cdigo asl do agente.
Posteriormente, a Archieve Intention (UEBDI) executa os planos associados a inteno
em uma ordem de prioridade. No Jason quem faz a seleo de planos a Option Function e
quem executa propriamente um plano associado a Execute Intention.
Assim, a Archieve Intention ser mapeada na Execute Intention e na Select Option,
considerando que possvel simular os mltiplos planos no Jason. Ela exige as Emotion,
Resource e Action Base e todas elas esto contidas na Belief Base e so acessveis. Porm a
ordem de execuo invertida, conforme discutido. Por isto consideramos o mapeamento da
Archieve Intention incompleto.
5.2.8
Consideramos que este mdulo composto pela Emotion Base, pela First Emotion Review
Function, pela Second Emotion Review Function e pela Critical Context. Como discutido,
podemos mapear a Emotion Base para dentro da Belief Base. De tal forma que uma emoo
seja uma crena da forma emotion(componente 1 , componente 2 , ..., componente n ) onde a
natureza dos componentes e o nmero de componentes (n) dependem da aplicao que est
sendo desenvolvida. O acesso s emoes pode ser feito diretamente pela base de crenas ou
atravs de uma classe envelope (wrapper) que transformar as crenas em objetos relativos ao
domnio da emoo e mais fceis de manipular durante a dinmica emocional (as funes de
reviso).
Quanto s funes de reviso, v-se seu mapeamento na Figura 27. Iremos adotar a
seguinte estratgia para mape- las: adicionaremos estas funes dentro das funes do Jason
de tal forma que preserve a ordem de execuo definida na UEBDI, mantendo as mesmas
funes predecessoras e sucessoras. Desta forma, a First Emotion Review Function
adicionada na Belief Update Function logo aps a Emotional Filter da Perception Function.
Nesta posio, ela ter acesso s percepes geradas pelas sub- funes da Perception
107
Function, acesso s emoes (atravs da Belief Base), aos drives (que esto contidos na Belief
Base tambm) e s intenes. Como a ordem foi mantida possvel acessar todas as bases
exigidas, consideramos o mapeamento completo.
A First Emotion Review Function constituda por duas sub- funes: a First
Emotional Elicitors e a First Emotional Update. Sero implementadas tambm na Buf. Como
vimos, a ordem de execuo destas no importa, ento no nos preocuparemos com isto no
nosso mapeamento e na nossa implementao. O mesmo se aplica a Second Emotional
Review Function.
Posteriormente existe a funo Critical Context e a funo Second Emotion Review
Function. Ambas podem ser colocadas nesta ordem na Select Event do Jason, aps a funo
Forget Beliefs mapeada do UEBDI. A Critical Context ter acesso as suas duas bases
exigidas, a Emotion Base e a Resource Base, contidas na Belief Base do Jason. J a Second
Emotion Review Function ter acesso a Belief Base, a Emotion Base (contida na Belief Base),
a Desire Base (contida na Event Base metas e na Belief Base drives do Jason) e a
Intention Base. Em ambas as funes, a ordem foi mantida e possvel acessar todas as bases
exigidas. Logo, o mapeamento completo.
108
Resource Base
Belief Base
Action Base
Belief Base
Emotion Base
Belief Base
Mdulo de Percepo
Perception Base
(no necessrio)
Perception Function
Sensor Filter
Perceive
Resource Filter
BUF
Rules Filter
BUF
Emotional Filter
BUF
Intentional Filter
BUF
Mdulo de Crena
Belief Base
Belief Base
Tag Beliefs
BRF
Forget Beliefs
Select Event
Mdulo de Desejos
Desire Base
Option Function
Update Desires
Planos(2)
109
Update Drives
Prioritize Desires
Select Event
Mdulo de Intenes
Intention Base
Intention Base
Filter Function
Update Intention
Find Plans
Generate Plans
Select Option
Mdulo de Execuo
Execute Function
(fluxo compatvel)
Select Intention
Select Intention
Achieve Intention
Execute Intention(4)
Mdulo de Emoes
Emotion Base
First Emotion
Function
Critical Context
Belief Base
Review BUF
Select Event
110
6 Experimentos
Para validarmos nossa proposta, iremos neste captulo apresentar uma srie de
experimentos que exercitam as influncias do mdulo emocional sobre um dos outros
mdulos da arquitetura BDI. Cada experimento focar a influncia sobre um mdulo em
especfico e ter um sub-tpico chamado mapeamento e implementao que mostra como o
problema foi solucionado com a arquitetura UEBDI e como esta soluo foi mapeada e
implementada no Jason.
Sero ao todo cinco experimentos: (6.1) Incndio, que tratar da influncia da emoo
sobre o mdulo de percepo; (6.2) Professor-Aluno, que tratar da influncia da emoo
sobre o mdulo de crenas; (6.3) Diverso, que tratar da influncia da emoo sobre o
mdulo de desejos; (6.4) Dilema do Prisioneiro Iterado (IPD), que tratar da influncia da
emoo sobre o mdulo de seleo de intenes e (6.5) Alocao de Tarefas, que tratar da
influncia da emoo sobre o mdulo de atuao.
Iremos utilizar um modelo emocional simples para cada experime nto. Ns somos
encorajados a fazer isto visto que (i) nosso foco no o modelo emocional, mas a influncia e
(ii) um modelo simples facilitar a compreenso dos exemplos. Julgamos este conjunto de
experimentos suficiente, pois ele demonstra que as cinco influncias do mdulo emocional
sobre o resto da arquitetura BDI podem ser efetuadas e causaro alterao significativa dentro
do comportamento do agente.
111
o cenrio de forma radial 10 . Uma clula pode estar com fogo (em chamas) com uma
intensidade de 0 at 100. Um agente morre quando est em uma clula onde o fogo atinge
intensidade acima de 50. O ambiente tambm possui quatro sadas nas clulas (0,0), (29,29),
(29,0) e (0, 29). O objetivo dos agentes chegar a uma destas sadas, onde podero escapar da
sala e serem salvos do fogo. Um agente pode se mover para as clulas adjacentes a que reside
e um agente no colide com o outro (podendo uma clula conter dois agentes).
Quanto as suas percepes, todos os agentes so onisc ientes, isto , eles recebem do
ambiente percepes de todas as clulas do ambiente da forma: cell(x, y, deltaFire, exit), onde
x e y so a posio da clula, deltaFire indica qual foi a variao de fogo nesta clula e exit
igual true caso exista uma sada nesta clula ou false caso contrrio. Observe que nesta
configurao, um agente ir perceber 30x30 = 900 percepes do ambiente.
Um agente ir utilizar uma verso do algoritmo A* proposta por (Lester 2004) e
implementada para o Jason (como ao interna) para criar o caminho de sua posio atual at
a sada mais prxima utilizando todas as percepes, permitindo a ele fugir dos focos de
incndio e se salvar quando chegar sada.
6.1.1
Agente Emocional
O agente emocional proposto por (Signoretti 2012) tinha como princpio usar um
conjunto de emoes para derivar uma mtrica que representasse o quanto o ambiente est
crtico para o agente. Com esta mtrica o agente diminui o nmero de percepes a serem
passadas para o seu processo de deliberao, acelerando ento a execuo deste processo.
Nosso modelo emocional simplificado constitudo por estado emocional com uma
dimenso emocional chamada de Relaxado-Ansioso, que varia no raio [-1, +1]. O valor zero
considerado o seu valor neutro. O valor negativo -1 indica que o agente est totalmente
ansioso por causas que lhe causaram danos ou por apreenso devido a previso de um evento
prejudicial e o valor +1 indica que o agente est totalmente relaxado por causas que lhe
causaram ganhos ou devido a previso de um evento benfico. A cada ciclo de raciocnio a
emoo Relaxado-Ansioso decrementada (caso sua intensidade seja positiva) ou
incrementada (caso sua intensidade seja negativa) de 0,002, at que volte ao valor neutro 0.
Quanto a eliciao emocional, ns definimos duas regras:
10
Utilizamos um modelo informal para simular o fogo. Resumidamente cada clula tem certa
quantidade de combustvel e quando ela est adjacente a outra que possui fogo, pega fogo tambm at acabar o
combustvel, quando o fogo ser extinto.
112
| (
(Eq. 30)
113
A primeira coisa a ser feita ordenar de forma crescente as percepes sobre clulas
utilizando a equao importance. Aps isto, deve-se calcular o valor L que indicar a
quantidade de elementos que devem permanecer na lista e serem enviados para o processo de
raciocnio.
Para o clculo de L, os autores de (Signoretti 2012, Signoretti et al. 2010)
consideraram que L deve ter uma relao com a intensidade do estado emocional (intensidade
de Relaxado-Ansioso). Porm deve ser definida de tal forma que quando a intensidade da
emoo Relaxado-Ansioso for neutra (zero) o valor de L deve ser mximo, fazendo o agente
considerar todas as percepes possveis, sobre a conjectura que quando o agente se encontra
neste estado pode gastar recursos processando todos estes elementos. Quando a intensidade de
Relaxado-Ansioso variar para valores positivos ou negativos, o valor de L deve diminuir,
formando uma curva U invertida (gaussiana) em relao ao valor a intensidade de
Relaxado-Ansioso. O princpio terico de utilizar esta curva que existem evidncias que
indivduos com humor moderado tendem a ter maior desempenho nas capacidades cognitivas,
incluindo a percepo. Enquanto que indivduos muito relaxados ou ansiosos tentem a
diminuir o desempenho (Signoretti 2012 p. 92).
Isto far o agente considerar menos percepes no processo de raciocnio, seja porque
o ambiente est inspito, pois o fogo est aumentando (deltaFire positivo) ou seja porque o
ambiente est prspero, pois o fogo est diminuindo (deltaFire negativo). A funo que d o
valor de L definida na Eq. 31. N o tamanho da lista de percepes que ser podada por L e
Int a intensidade do Relaxado-Ansioso. A Figura 28 exibe um exemplo de comportamento
de L com N = 100.
100
80
L
60
40
20
0
-3
-2
-1
Int 3
(Eq. 31)
Na prtica, dado como nosso ambiente foi definido, o agente ter valores de deltaFire
positivos, fazendo aumentar a intensidade da emoo Relaxado-Ansioso dos agentes aumentar
e, consequentemente, fazendo L diminuir.
114
6.1.2
Mapeamento e Implementao
As regras de eliciao da emoo que incrementam/decrementam a intensidade da
Experimento
A hiptese que trataremos para este problema a seguinte: um grupo de agentes
2)
115
3)
ao final da simulao. A (2) ser usada para indicar a rapidez com que os agentes
conseguiram tomas as suas decises. A (3) indica a mdia de percepes consideradas pelo
agente aps a filtragem das percepes. Deve-se lembrar que o agente no emocional no ir
filtrar as percepes e por isto sabemos previamente que este valor ser igual ao nmero de
clulas (30x30 = 900).
Observe tambm que a interpretao de (2) carece de um detalhe: O sistema ter seu
tempo de simulao diminudo se os agentes demorarem menos para interagir OU se eles
morrerem mais rpido. Ento esta mtrica s indica uma melhora no desempenho para ns se
ela for acompanhada por um maior nmero de agentes sobreviventes, e no o contrrio.
Sero colocados 10 agentes dentro do ambiente j especificado para se realizar uma
instncia do experimento. Sero executadas 30 instncias deste experimento e obtidas as
mdias das medidas (1) e (2) para o agente no emocional (onisciente) e emocional (com
filtro de percepo) e a mdia da medida (3) para o agente emocional. A Tabela mostra os
resultados:
Emocional
Agentes sobreviventes
Tempo de simulao (ms)
Nmero de percepes consideradas (L)
No Emocional
9,77
8041
330,46
7,40
9479
900
Como podemos observar, o uso do mdulo emocional com filtro das percepes
conseguiu fazer as instncias com agentes emocionais terem maior nmero de sobreviventes
(9,77 contra 7,4 do no emocional) e que a simulao durasse menos tempo na mdia (8041
milissegundos contra 9479 milissegundos do no emocional). Inclusive, o agente emocional
demorou menos tempo e teve maior nmero de sobreviventes, como ns indicamos desejvel
para o bom desempenho de acordo com a medida (2). Alm disto, foi constatado que o valor
de L mdio usado em toda a simulao dos agentes emocionais foi igual a 330,46 percepes
(onde o total gerado pelo ambiente 900), demonstrando que houve uma queda significativa
das percepes a serem tratadas. Com isto, reafirmando os resultados dos trabalhos (Signoretti
2012, Signoretti et al. 2010), h indcios que devido a queda do nmero de elementos
processados durante a simulao (baixo valor de L), o agente emocional conseguiu melhorar o
nmero de agentes salvos (medida (1)) e o tempo de simulao (medida (2)).
116
Aps enviar a nota ao aluno e o aluno confirmar o recebimento com ack(i), o professor ir
fazer a prxima pergunta x i+1 . Por fim, o professor acumula a soma destas notas em uma
crena chamada totalNotas.
11
)]
(Eq. 32)
Na imp lementao, operaes falsas e sem resultado durante a soma para garantir esta caracterstica
do problema.
117
1
0,8
0,6
0,4
0,2
0
-0,2
0,2
0,6
1
Nota
1,4
1,8
2,2
)]). Note que o valor de L nunca ser menor do que 1 e dever ser no mximo igual a N.
A cada turno que passar, o agente calcular L de acordo com a emoo corrente e reconstruir
a lista. Como a reconstruo ocorre aps o professor dizer se o aluno respondeu a tempo e
118
antes do aluno responder ao professor com ack(i), isto no atrasar o aluno nas prximas
perguntas.
Observe tambm que quando o aluno atrasar a resposta, ele ir decrementar seu
estresse, e, proporcionalmente, diminuir o valor de L. Nos prximos turnos, se ele obter
sucesso na resposta, ir decrementar seu estresse e, proporcionalmente, aumentar o valor de L.
6.2.1
Mapeamento e Implementao
A emoo Estresse incrementada e decrementada a partir das crenas do agente
recebidas como mensagens do Professor. Logo, para realizar a eliciao emocional preciso
acessar a base de crenas e, por isto, implementamos este processo na Second Emotion
Review Function. Como s definimos o processo de eliciao e no de decremento, s ser
preciso modificar a sub- funo Second Emotion Elicitors. Conforme o mapeamento, esta
funo implementada na funo Select Event do Jason.
J a influncia emocional ocorre justamente na construo da lista de maiores valores
baseado na Intensidade de Estresse, de tal forma que a emoo influencia a atualizao das
crenas. Na nossa arquitetura isto feito pela Belief Review Function e pela sub- funo
Update Beliefs. Esta foi mapeada e implementada como um plano no Jason.
6.2.2
Experimentos
Nossa hiptese que o agente emocional consiga obter melhor nota que o agente no-
emocional, visto que ele alm de decrementar seu valor de falha como o agente noemocional tambm ir ajustar o valor de L para um valor que lhe d maior nota, visto que
sua emoo ir decrementar com o tempo, aumentando o valor de L.
Vamos para isso realizar dois experimentos: O primeiro (6.2.2.1) ir achar um valor
ideal de decValue para o agente no-emocional que maximize sua nota final. J o segundo
(6.2.2.2) ir determinar o valor de decEmoValue ideal para um agente emocional que use um
valor de incEmoValue igual ao valor ideal achado para decValue.
Os experimentos foram realizados em um computador AMD Athlon X2 4800 com 2
Gigas de RAM e Java 1.7.
6.2.2.1 Agente no-emocional (decValue)
Quanto ao primeiro experimento, ser realizado da seguinte forma: um professor ir
fazer perguntas ao aluno com um wait 0 = 100 milissegundos e ir decrementando de 1 a cada
119
turno e o professor s realizar perguntas sobre a sentena a ( ). O agente ter um total de
100 crenas onde da forma: {a(100), a(99), a(98), ...}.
Sero realizadas 30 instncias desta configurao para um dado valor de decValue,
para que possamos obter a mdia de totalNotas nas 30 execues. Isto ir eliminar possveis
interferncias nos valores. Sero testados os valores de decValue variando entre [0, 99], de tal
forma que no final sero realizadas 30*100 = 3000 instncias do experimento.
Os resultados so vistos na Tabela 6 e na Figura 30. Observa-se que os melhores
valores de nota obtidos ocorrem com decValue entre [10, 25]. Logo, valores dentro desta
maximizam a nota do aluno.
6.2.2.2 Agente Emocional (decEmoValue)
J o segundo experimento ir executar um agente emocional variando o valor de
decEmoValue entre os valores [0, 15] e com valor de incEmoValue igual a 15, que o valor
mediano entre os valores que otimizaram a nota do aluno no experimento 1. Veja que no faz
sentido usarmos valores de decEmoValue iguais ou maiores que 15, pois isto faria o agente
no ter estresse (visto que nosso incEmoValue 15) e logo no diminuir seu valor L quando
no consegue responder a tempo. Uma instncia deste experimento ser executada 30 vezes
para cada valor de decEmoValue e obteremos a mdia de totalNotas com dado decEmoValue.
Estes valores so exibidos na Tabela 7 e na Figura .
Como podemos ver, o algoritmo do agente emocional no conseguiu otimizar o seu
desempenho, para nenhum valor de decEmoValue, o que nega nossa hiptese inicial.
Inclusive, v-se que a nota foi inversamente proporcional que o valor de decEmoValue, assim
se pode considerar que quanto maior o decEmoValue, pior ser o desempenho do agente.
Vamos proceder com a anlise dos resultados para tentar compreender por que o agente
emocional no conseguiu otimizar o resultado.
Comecemos pelo valor de decEmoValue igual a 0. Em tese, se o Estresse no vai
diminuir, o valor de L nunca ir aumentar novamente, o que torna nosso agente emocional
similar ao agente no emocional. Entretanto, seu desempenho foi inferior. Consideramos que
isto ocorreu pelo prprio custo da arquitetura UEBDI, que fez o agente agir mais lentamente e
a no responder to rpido quanto o no emocional, que no estendido pelo framework.
Antes de analisar valores de decEmoValue no nulos, vamos considerar o seguinte:
neste cenrio decEmoValue equivale a um incValue, que incrementa o valor de L a cada
turno, desta forma podemos desconsiderar a relao entre a emoo Estresse e L.
120
121
decValue
mdia
totalNotas
decValue
mdia
totalNotas
mdia
totalNotas
decValue
decValue
mdia
totalNotas
-1,00
25
51,20
50
41,17
75
41,83
-1,00
26
51,17
51
42,38
76
40,88
-1,00
27
50,40
52
43,14
77
40,15
-0,97
28
49,72
53
43,22
78
39,20
29,49
29
49,68
54
45,36
79
37,97
37,79
30
47,98
55
45,07
80
37,36
41,79
31
46,57
56
45,28
81
36,17
45,80
32
44,18
57
43,79
82
35,03
48,38
33
44,11
58
44,74
83
33,37
50,87
34
43,97
59
46,08
84
32,76
10
52,86
35
44,41
60
46,06
85
31,32
11
52,08
36
44,62
61
46,05
86
30,16
12
53,32
37
46,89
62
46,26
87
28,93
13
53,23
38
46,26
63
47,32
88
27,45
14
53,44
39
46,86
64
46,84
89
25,95
15
53,30
40
46,84
65
45,14
90
24,21
16
52,48
41
46,42
66
45,93
91
22,87
17
52,81
42
45,31
67
45,50
92
21,43
18
52,80
43
44,82
68
45,03
93
19,51
19
52,31
44
43,52
69
43,91
94
17,99
20
52,62
45
44,04
70
44,53
95
16,05
21
53,33
46
41,90
71
43,68
96
14,50
22
53,17
47
40,85
72
43,62
97
12,71
23
52,24
48
42,24
73
43,09
98
11,86
24
50,88
49
41,05
74
42,62
99
9,87
20
10
0
0
10
20
30
40
50
60
70
80
mdia(nota)
90
122
mdia
totalNotas
decEmoValue
52,03
5,20
46,43
1,30
38,80
10
-0,54
30,94
11
-0,40
24,84
12
-0,29
5
6
7
19,29
14,15
9,17
13
14
15
-0,30
-0,58
-0,10
decEmoValue
mdia
totalNotas
15
5
-5
10
12
14
16
18
mdia(nota)
Figura 31: Nota por valor de decEmoValue
No entraremos em detalhes sobre o conceito drive imp lementado na arquitetura para simp lificar
nossa discusso. Para maiores detalhes veja os tpicos 4.4, 3.1.3 e 3.8 desta dissertao.
123
completamente, i.e, o seu drive Diverso decai de 1 ponto. J quando ele vai ao cinema ele
satisfaz o seu desejo parcialmente, i.e., o seu drive Diverso decai somente satCinema.
Porm, quando o agente vai ao parque ele pode ser assaltado, o que no ocorre quando
ele vai ao cinema. Quando ocorre um assalto, o drive Diverso do agente no decrementado
e ele ainda recebe o custo de 1 ponto (representando as perdas ocorridas no assalto, como por
exemplo, a perda de dinheiro). Durante o processo de MParque, existe a chance assaultTax
do agente sofrer um assalto, valor especificado no momento do experimento. Note que nesta
configurao em MCinema nunca ocorrer um assalto e sempre satisfar o drive Diverso
com satCinema pontos.
Os objetivos dos agentes no experimento so: (i) minimizar a intensidade registrada no
drive Diverso e (ii) minimizar o Custo. Isto , ele deseja satisfazer completamente sua
Diverso evitando ao mximo suas perdas com o assalto, representadas pelo Custo.
Consideremos neste experimento que os agentes desejam minimizar os dois valores com igual
importncia. Isto nos permite definir uma mtrica de desempenho que chamaremos de
Contra-Desempenho igual a Custo + Diverso. Esta mtrica representa igualmente a
importncia das duas medidas para o agente e minimiz- la indica que o agente est
otimizando igualmente as duas medidas.
Observe que um agente que leve em conta somente a satisfao do drive diverso ir
preferir sempre ir ao parque. Contudo, como h assaltos, isto pode no ser vantajoso quando
esta taxa de assalto (assaultTax) muito alta e quando a satisfao de ir ao cinema
(satCinema) no to baixa.
6.3.1
Agente Emocional
Para tentar lidar com esta situao, iremos definir um agente emocional simples
baseado na emoo medo. O estado emocional constitudo pela emoo medo(x, i), onde x
indica uma meta e i a intensidade do medo em relao a esta meta que reside entre [0, ]. Esta
emoo indica que O agente tem medo de tentar realizar a meta x com intensidade i.
De acordo com este estado emocional, podemos definir a seguinte regra de eliciao e
decremento: Quando este agente for assaltado na realizao da meta MParque, ele ir
incrementar seu medo em relao a esta meta em 1 ponto. A cada dia o agente ir decrementar
este medo usando um fator decMedo que deve ser especificado no momento da simulao.
A emoo influencia a seleo de metas da seguinte forma: O agente ir preferir gerar
a submeta que tenha menor valor de medo. Em caso de empate, ele ir selecionar a meta que
lhe traga maior decrscimo do drive Diverso. No nosso caso, um agente preferir MParque
124
sempre que no tiver medo dele (devido a um assalto), e preferir MCinema caso contrrio,
j que a intensidade do medo em relao a meta MCinema sempre 0.
Note que existem trs variveis no definidas no problema: a satisfao de ir ao
cinema (satCinema), o decrscimo do medo (decFear) e a taxa de assalto (assaultTax).
Chamaremos estes valores de configurao do experimento.
No caso de satCinema, caso este valor seja 1, ir ao cinema to vantajoso quanto ir ao
parque, ento um comportamento racional seria ir s ao cinema, j que ir ao parque pode
causar prejuzo. O inverso, satCinema igual a 0, ir ao cinema no trs nenhuma satisfao o
que tornar ir ao cinema desvantajoso. Neste caso sempre melhor ir ao parque, mesmo que
haja alta chance de assalto, pois existe uma chance real de satisfazer o drive Diverso.
Quanto a varivel assaultTax, quando ela mnima (0), a chance de ser assaltado no
parque zero, ento para o agente melhor ir ao local onde haja maior satisfao, que ir ao
parque (a no ser que satCinema seja 1, o que torna ir ao cinema to bom quanto ir ao
parque). Por outro lado, assaultTax igual a 1 faz com que o agente sempre seja assaltado ao ir
ao parque. Logo ele no ter satisfao alguma realizar esta submeta. O que torna mais
vantajoso ir ao cinema, visto que existir pelo menos algum decrscimo do drive Diverso (a
no ser que satCinema seja igual a 0, neste caso tanto faz ir ao parque ou ao cinema, visto que
ir ao parque nunca satisfaz o drive devido aos assaltos e ir ao cinema nunca satisfaz o drive
devido a satCinema ser zero).
Por fim, decMedo ir influenciar a memria do agente quanto aos assaltos que ele
sofrer. Quando o agente assaltado, sua emoo medo de ir ao parque aumenta em 1 ponto.
Isto o far preferir ir ao cinema enquanto o medo no passar (i.e., voltar a intensidade zero). O
valor decMedo decrementar um dado valor a cada dia que passar. Logo, quanto mais alto for
decMedo, mais rpido o agente deixar de ter medo e mais rpido ele voltar a ir ao parque.
Neste contexto, se decMedo for igual a 1, ele nunca ir ao cinema, pois logo aps dele sofrer
um assalto, o agente ir revisar o medo e decrement- lo de 1, o que o far no ter mais medo
logo no dia seguinte. Este tambm o caso de um agente que no se importa com os assaltos
que sofre (i.e., que no tem medo) e que sempre prefere ir ao parque. O contrrio, decMedo
igual a 0, far o agente nunca ir ao parque aps o primeiro assalto, pois ele nunca deixar de
ter medo de ir ao parque, visto que o valor de decremento nulo.
125
6.3.2
Mapeamento e Implementao
A eliciao causada por um assalto ir ocorrer na First Emotion Review Function e na
sub- funo First Emotional Elicitors, pois ela exige processar a percepo do assalto.
Conforme o mapeamento, esta regra foi implementada na Belief Update Function do Jason.
J a regra de decremento emocional do medo tem carter cognitivo, visto que
representa o agente lidando com o trauma do assalto. Consideramos mais coerente coloc- la
na Second Emotion Review Function (na sub-funo Emotional Update) visto que esta
responsvel pelo carter cognitivo da emoo.
O desejo de se divertir foi implementado como um drive que tem limiar inferior -113 e
superior +1. Possui valor inicial igual a 0 e ele possui valor de incremento igual a 1. Sendo
que este valor incrementado a cada dia (informao dada pelo ambiente) e no a cada ciclo.
Por fim, quando o drive extrapolar o limiar superior, ele se tornar ativo e o agente tentar
criar uma inteno para trata- lo. Os drives so implementados de forma hbrida, como
proposto no mapeamento, sub-tpico 5.2.5.
Por fim, quando o agente deseja se divertir, ele ir selecionar entre a sub- meta
MParque e MCine ma atravs da avaliao da intensidade da emoo medo em um plano
executado para o drive Diverso. A insero de uma submeta por deciso tomada sobre
influncia de uma emoo implementada na funo Option Function e na sub- funo
Update Desires da UEBDI. E isto foi mapeado nos planos do Jason, conforme discutido no
mapeamento.
6.3.3
Experimento
Nosso objetivo neste experimento ressaltar quais so as melhores configuraes de
13
Observe que neste exemp lo s importante o limiar superior, pois no tratado o estado do drive
126
satCinema
assaultTax
0.1
0,0
0,0
994,77
0,2
462,30
decMedo
0,4
0,6
327,87
269,33
0,8
276,87
1,0
206,93
0,2
795,95
401,85
291,21
253,13
254,72
197,55
0,4
595,16
328,81
260,01
238,35
239,92
202,55
0,6
397,20
265,55
239,11
222,65
224,67
197,56
0,8
199,70
202,58
200,67
199,82
199,49
199,21
1,0
2,00
134,00
166,80
185,87
183,07
197,80
satCinema
assaultTax
0.3
0,0
0,0
998,47
0,2
841,00
decMedo
0,4
0,6
744,37
684,30
0,8
690,07
1,0
615,20
0,2
799,41
720,68
672,83
650,61
642,49
608,16
0,4
599,66
603,99
601,06
606,89
601,27
599,86
0,6
400,53
480,51
519,75
547,76
560,57
582,17
0,8
201,37
359,08
453,01
511,91
507,66
607,33
1,0
2,00
240,27
370,00
461,73
463,73
602,13
127
assaultTax
0.5
0,2
0,4
0,6
0,8
1,0
1004,27
1005,27
1009,00
1003,97
996,17
0,2
1000,27
800,27
854,76
898,37
936,37
930,41
998,33
0,4
600,60
712,23
797,94
867,23
873,21
1000,81
0,6
401,29
570,68
695,29
795,60
796,44
1000,36
0,8
201,66
424,67
596,93
729,20
731,43
1006,66
1,0
2,00
286,20
500,07
663,67
665,73
1005,60
0,0
satCinema
decMedo
0,0
128
Consideraremos que co mpetir equivale a no cooperar. Achamos este termo mais adequado a ser
usado aqui. Embora no seja usado nos trabalhos de (Wooldridge 2009) e (Neto 2010).
129
modelado de tal forma que um agente racional 15 deveria sempre no cooperar (confessar),
visto que o pior caso obtido com esta escolha ficar preso por no mximo 2 anos, enquanto
que no caso de cooperar (no confessar) poder faz- lo ficar detido mais tempo (3 anos)
(Wooldridge 2009 p. 237). Logo, pior cooperar/confessar do que competir/no confessar; e
por fim (iii) a ao de cooperar embora no seja tima para o indivduo, tima quando se
deseja minimizar a pena de ambos os participantes.
Embora simplrio este dilema representa dilemas reais e importantes na vida real,
como por exemplo, tratados de no construo de armas de destruio em massa. Neste
exemplo, no construir armas (cooperar) implica em estar vulnervel a uma possvel no
cooperao da outra parte (Wooldridge 2009 p. 237). Entretanto, no cooperar indica uma
situao perigosa em termos coletivos, j que traz maiores perdas para todas as naes em
caso de guerra.
Outro exemplo, mais corriqueiro, a negociao entre duas pessoas por uma troca.
Uma primeira pessoa quer trocar uma mercadoria por dinheiro com uma se gunda pessoa. E
esta troca realizada de tal forma que tanto a mercadoria quanto o dinheiro estaro ocultos
por um envelope e s possvel saber se o outro colocou o objeto desejado
(mercadoria/dinheiro) no envelope aps a negociao. Nesta situao, uma pessoa pode
cooperar (colocar o dinheiro/mercadoria no envelope) concretizando a negociao ou pode
competir (deixar o envelope vazio), traindo a outra pessoa (Colman 2003 p. 146).
A aplicao deste dilema a agentes emocionais ocorreu no trabalho (Neto 2010) para
demonstrar as vantagens da arquitetura proposta no desenvolvimento de agentes emocionais,
pois, segundo os autores, este dilema permite avaliar a influncia de um mdulo afetivo no
desempenho do comportamento de agentes. Por isto, adotaremos o mesmo problema usando
uma proposta similar a dele para validar a influncia sobre o mdulo de intenes. Como ser
visto, a principal diferena que usamos um modelo emocional mais simples (que chamamos
de modelo emocional de Jiang (Jiang and Vidal 2006)) do que o proposto pelos autores em
(Neto 2010) (baseado no modelo afetivo de (Mehrabian 1996)). Nosso foco tambm ser
diferente: os autores de (Neto 2010) se preocuparam unicamente em analisar a capacidade do
modelo emocional de alterar o comportamento do agente. Ns, por outro lado, iremos discutir
mais afundo o problema IPD e demonstrar que, conforme discutido em (Wooldridge 2009 pp.
238240), o comportamento unicamente competitivo racional quando apenas consideramos
15
Entendemos que racional neste trecho significa racional quanto a mtrica de obter menos anos de
cadeia individualmente.
130
Definio
Neste trabalho usaremos como referncia a proposta do IPD contida em (Neto 2010) e
131
Agente A
Agente B
PIR
Compete
Coopera
Compete
A recebe 2 pontos
B recebe 2 pontos
A recebe 0 pontos
B recebe 5 pontos
Coopera
A recebe 5 pontos
B recebe 0 pontos
A recebe 3 pontos
B recebe 3 pontos
Veja que ao final do interrogatrio o agente ter acesso a duas informaes: (i) quem
foi seu oponente e (ii) qual foi sua punio. Pela pontuao e pela resposta obtida possvel
saber qual foi a resposta dada pelo oponente traando estas informaes com a Tabela 11.
Ao final dos n interrogatrios, os agentes tero uma pontuao total equivalente a
soma dos PIR obtido em cada interrogatrio que chamaremos de Pontos Individuais (PI).
Observe que, de acordo com estas definies, um agente ter desempenho melhor ou igual a
qualquer outro agente se ele sempre no cooperar (confessar), seguindo exatamente o que
prev a teoria dos jogos, (a verificao disto simples e exposta em (Wooldridge 2009 pp.
236240) e (Colman 2003)). Contudo, esta situao tima se apenas quisemos obter agentes
individualmente racionais, pois no privilegia a cooperao entre os agentes, minimizando a
pena de todos.
Como comentado, iremos definir outra mtrica para poder medir uma taxa de
cooperao dentro do sistema multi-agente definido. A cada rodada/interrogatrio ser
gerada uma segunda pontuao data pela Tabela 12 que reflete o quo cooperativos os agentes
foram em uma rodada 16 . Chamaremos esta pontuao de Pontos de Coope rao da Rodada
(PCR). Ao final das n rodadas, podemos obter uma medida de cooperao do experimento
igual ao somatrio de PCR, que chamaremos de Pontos de Cooperao (PC). Veja que esta
pontuao no dada a um agente individualmente, mas a todo o sistema de acordo com as
aes tomadas pelos agentes. Se ambos cooperarem, o sistema ganhar 2 pontos. Se apenas
um cooperar, ganhar 1 ponto. Se nenhum cooperar, ganhar 0 pontos.
Agente A
Agente
B
PCR
Compete
Coopera
Compete
Coopera
16
A tabela foi defin ida de tal forma que o valor de pontos de um interrogatrio seja igual a soma de
132
6.4.1.1 Mtrica de desempenho
Com nossas medidas definidas iremos propor uma mtrica de desempenho que nos
indique quanto um agente foi apto em maximizar o nvel de cooperao do sistema (PC), mas
sem perder pontos quanto ao seu desempenho individual (PI). Chamaremos esta mtrica de
Pontos Gerais PG, sendo proporcional a multiplicao de PI por PC (Eq. 1), de tal forma
que esta pontuao PG seja mxima quando PI e PG forem mximas e decaia quando alguma
delas for menor que a outra ou as duas forem baixas.
PG PI x PC
6.4.2
(Eq. 1)
Estratgias
Na literatura consultada, j existem vrios algoritmos definidos para o comportamento
Sigla
Estratgia
TFT
Pavlov
PAVLOV
Nunca cooperar
ALLD
Sempre no coopera
Sempre cooperar
ALLC
Sempre coopera
Aleatrio
RANDOM
Motivao
Melhor estratgia no
experimento emprico
original
Algoritmo guloso que tenta
otimizar o desempenho do
agente
Maximiza PG / Melhor
estratgia
Minimiza PG / Pior
estratgia
Utilizado para simular uma
situao no determinstica
6.4.3
proposto por Jiang. A principal motivao para escolha deste modelo que ele o modelo
mais simples que lida com avaliao de outras entidades adotado na literatura consultada. A
forma como ele ser adaptado far o agente emocional cooperar quando o outro agente
cooperar e a no cooperar quando o outro agente tambm no cooperar.
133
Estratgia
adotada
Explicao
Love
ALLC
Like
ALLC
Happy
TFT
Unhappy
TFT
Dislike
PAVLOV
No confia no outro agente, mas se a ltima poltica com ele foi boa
(pontuao >=3), ento a mantm, seno a troca
Hate
ALLD
134
6.4.4
Mapeamento e Implementao
Observe que a emoo em relao a um agente se altera quando o agente emocional
recebe informao sobre qual foi o resultado de uma iterao. Isto , a emoo atualizada
quando o agente trata a informao sobre o resultado de uma interao. Na implementao do
problema em Jason, o agente trata esta informao como se fosse uma meta chamada
!take_records. Por isto, para eliciarmos a emoo neste contexto, precisamos considerar que
esta meta !take_records influencia a emoo. Vamos tratar ento esta regra de eliciao na
Second Emotion Review Function, pois uma meta e no um drive (se fosse um drive, ela
poderia ser tratada na First Emotion Review Function). E ser implementada na sub- funo
Second Emotional Update, visto que o que ocorrer uma alterao da intensidade e no
propriamente uma eliciao da emoo. Esta sub-funo mapeada na funo Select Event do
Jason, conforme tratado no mapeamento (tpico 5.2.5).
A influncia emocional foi considerada da seguinte forma: o agente emocional tem a
meta de responder ao rbitro se ir confessar ou no o crime (competir ou cooperar) e deve
selecionar entre cinco planos (um para cada uma das 5 estratgias). Para decidir isto, ele
utiliza a emoo em relao ao outro agente que interage com ele neste turno, como discutido
anteriormente.
Logo, esta influncia trata-se de uma seleo de plano e foi mapeada na funo Filter
Function e na sub- funo Find Plans da UEBDI. Esta ltima foi mapeada nas funes Check
Context e Unify Context do Jason.
6.4.5
Experimento
Nosso experimento foi especificado da seguinte forma: executou-se uma instncia do
experimento IPD somente com dois agentes em 100 rodadas, de tal forma que m igual a 2 e
n igual a 100. O valor 100 foi adotado devido ao seu uso j em trabalhos passados (Neto
2010, Wooldridge 2009) e o fato de que mais do que o suficiente para verificar uma
tendncia dos agentes na seleo de suas estratgias.
Com o uso do nmero de agentes igual a 2, fora-se o rbitro a selecionar apenas os
mesmos dois agentes em todas as rodadas. Com o objetivo de testar todas as estratgias,
utilizamos cinco agentes implementando as cinco diferentes estratgias descritas na Tabela 7
(ALLC, ALLD, RANDOM, PAVLOV e TFT) e um agente emocional utilizando a estratgia
JIANG apresentada na Tabela 14. Executamos instncias do experimento IPD para todos os
135
pares possveis destes agentes, inclusive entre agentes com a mesma estratgia, totalizando 21
execues.
O equipamento adotado para o experimento foi um computador com processador
Athon 2X 4800, com 2,8 Gb de RAM, Windows XP SP3. Usando a JVM 6 e rodando via
linha de comando um pacote JAR.
A Tabela 15 mostra o resultado dos experimentos ilustrando as estratgias utilizadas
por cada um dos agentes e PI e PC obtidos. Os valores de PI dos agentes que ganharam os
combates esto em negrito e os empates esto em itlico.
J a Tabela 16 exibe para cada agente qual foi a soma dos PIs em todos os
experimentos (PI) daquele agente, a soma dos PCs em todos os experimentos daquele
agente (PC) e o somatrio dos PGs obtidos por aq uele agente em seus experimentos
(PG10-3 ). Por convenincia o valor de PG foi multiplicado por 10 -, visto que o que nos
interessa proporo dos PGs entre os agentes e no sua ordem de grandeza. Alm disto, a
tabela exibe os somatrios de PI e PC sem os experimentos realizados com RANDOM (PIPI(RANDOM) e PC-PC(RANDOM) ), para evidenciar a diferena de desempenho dos
agentes com ou sem o fator no-determinstico.
As figuras a seguir: Figura 32, Figura 33 e Figura 34 exibem os dados das tabelas
Tabela 15 e Tabela 16 de forma visual.
2500
2000
PI
1500
1000
PIPI(RANDOM)
500
0
PAVLOV
ALLC
JIANG
TFT
RANDOM
ALLD
1500
1000
PC
500
PCPC(RANDOM)
PAVLOV
ALLC
JIANG
TFT
RANDOM
ALLD
136
2000
10-3
1500
PG
1000
PGPG(RANDOM)
500
0
PAVLOV
ALLC
JIANG
TFT
RANDOM
ALLD
PI(B)
PC
PI(B)
PC
JIANG
JIANG
300
300
200
TFT
PAVLOV
300
300
200
JIANG
PAVLOV
300
300
200
ALLC
TFT
300
300
200
PAVLOV
PAVLOV
300
300
200
TFT
ALLD
198
203
JIANG
ALLC
300
300
200
TFT
TFT
300
300
200
PAVLOV
ALLC
300
300
200
JIANG
RANDOM
221
306
127
ALLC
ALLC
300
300
200
RANDOM
PAVLOV
114
424
138
ALLC
ALLD
500
100
RANDOM
ALLC
410
135
145
JIANG
ALLD
196
206
RANDOM
ALLD
100
350
50
PAVLOV
ALLD
500
100
RANDOM
TFT
252
257
109
ALLD
ALLD
200
200
RANDOM
RANDOM
241
261
102
JIANG
TFT
300
300
200
PI
PC
PG10 -3
PIPI(RANDOM)
PCPC(RANDOM)
PGPG(RANDOM)
10 -3
PAVLOV
1314
1038
1363,93
890
900
801,00
ALLC
1335
1045
1395,07
1200
900
1080,00
JIANG
1617
929
1502,19
1396
802
1119,59
TFT
1655
910
1506,05
1398
801
1119,80
RANDOM
1733
671
1162,84
1492
569
848,95
ALLD
1959
253
495,63
1609
203
326,63
6.4.5.1 Discusso
Iremos primeiro comear comparando o Ponto Individual (PI) de JIANG em relao
aos outros agentes. Como esperado, vemos na Tabela 16 e a Figura 32 que ALLD obteve
maior valor desta mtrica, pois ele sempre no coopera, obtendo pontuaes iguais ou
maiores que a do seu adversrio. O agente emocional Jiang ficou co m pontuao
intermediria (1617) entre os adversrios e prximo ao valor de TFT (1655). Vemos tambm
que os valores de PI sem os combates de RANDOM no alteram significativamente o valor
geral.
137
138
agente JIANG equivalente ao TFT, a diferena que como ele demora mais para no
gostar e gostar de um adversrio, ele demora mais a alterar seu comportamento.
))
(Eq. 33)
139
considerar ambas opinies do prprio cliente quando a de seus colegas sobre a probabilidade
de falha do servidor server em questo. Assim, mrfail(server) a media das reputaes do
servidor mais o valor mfail(server). Os agentes que usam a reputao dos servidores so
chamados de cliente reputao.
(
6.5.1
))
(34)
Cliente Emocional
Como modelo emocional, consideremos que um agente pode gostar ou desgostar
(modelo like/dislike) de outro agente, dependendo de suas interaes passadas (que equivale
ao modelo JIANG apresentado no tpico 6.4.3. Devemos ressaltar que existe uma diferena
entre emoes like/dislike e a informao de reputao: embora a dinmica emocional tenha
semntica similar ao valor de reputao (ambos qualificam o que um agente acha de outro
agente), ela no idntica, tendo o agente emocional um comportamento no linear quanto a
sua avaliao dos outros agentes. Alm disto, a forma como o agente emocional influencia
sua seleo diferente da do agente reputao. O segundo ir ranquear simbolicamente seus
servidores, o segundo tentar escolher numericamente o servidor.
Um cliente possui uma Base Emocional que composta por sentenas da forma
like(x,i), onde x um servidor e i a intensidade do sentimento de gostar (like) em relao a
este agente. Podemos classificar a relao entre o cliente e dado servidor x em trs classes: Se
i estiver entre [7, 10], o cliente likes (gosta) do servidor x. Se i estiver entre [4, 6], ento o
cliente neutral (indiferente) em relao ao servidor x. E se i estiver entre [0, 3] o cliente
dislike (desgosta) do servidor x.
Quando o cliente recebe a informao sobre o sucesso ou falha na execuo de uma
tarefa pelo servidor x, ele muda a intensidade de i na sentena like(x, i) relacionada a x. A
funo de mudana dada pela Tabela 17, onde a coluna like, neutral e dislike representa a
classificao prvia para a sentena like(x, i), as linhas success e fail indicam o sucesso ou a
falha na respostada pelo servidor x e as clulas indicam o valor de incremento ou decremento
usado para alterar a intensidade i. Como mostrado pelos incrementos e decrementos, a funo
de mudana prioriza as emoes do agente e no a informao sobre o sucesso e a falha do
servidor.
success
fail
like
+2
-1
if client server
neutral
dislike
+1
+1
-1
-2
140
Mapeamento e Implementao
A dinmica emocional ocorre da seguinte forma: o agente emocional ir esperar a
Experimento
Agora iremos realizar um experimento para comparar o comportamento de trs tipos
de clientes: racional, reputao e emocional. Ns iremos definir uma medida chamada score,
dada pela Eq. 35, que retorna to ruim um servidor com respeito a sua probabilidade de
falha pfail(server) e seu custo. Desta forma, o servidor com menor score o melhor
servidor, e o servidor com maior score o pior servidor. A Eq. 36 normaliza o valor das
141
)
(
(
)
)
(
(
(
)
(
)
)
(Eq. 35)
(Eq. 36)
server
cost
pfail
score
nscore
serv1
1.00
1.00
0.00
serv2
0.75
0.75
0.25
serv3
0.50
0.50
0.50
serv4
0.25
0.25
0.75
serv5
0.00
0.00
1.00
142
Emotional
client
serv1
serv2
serv3
serv4
serv5
neutral
favorable
10
unfavorable
10
143
outros para encontrar os melhores servidores, pois (i) no incio ele desgosta de todos os
melhores servidores e gosta dos piores, e (ii) o algoritmo para seleo do servidor prioriza o
que o cliente sente pelo servidor ao invs do seu desempenho.
1,0
average nscore
0,8
rational
reputation
0,6
e. neutral
e. favorable
0,4
e. unfavorable
e. random
0,2
0,0
1
5 task 6
10
144
7 Concluso
Este trabalho apresentou a arquitetura de Agentes Emocionais UEBDI. Esta nova
abordagem procura unificar as caractersticas de propostas anteriores e construir uma
arquitetura genrica que contemple todas as possveis influncias do fenmeno emocional
sobre o resto da arquitetura.
O Captulo 2 procurou investigar os temas de computao afetiva, agentes inteligentes
e agentes emocionais, levantando quais tpicos so necessrios para a construo de uma
arquitetura de agente emocional.
o Captulo 3 analisou trabalhos que construram um agente emocional BDI ou que
tenham contribudo com modelos ou algoritmos que podem ser mapeados na arquitetura BDI,
levantando-se quais seus pontos fortes e fracos e obtendo-se o que existe de estado da arte em
agentes emocionais BDI, permitindo a posterior construo da nossa proposta.
O Captulo 4 prope a arquitetura abstrata propriamente dita. A metodologia adotada
foi top-down, propondo uma arquitetura de agente a nvel macro, observando os componentes
de percepo, atuao e raciocnio, e descendo para o nvel intermedirio, que a releitura
das funes clssicas BDI (por exemplo, Belief Review Function) e a adio de novas funes
para apoiar as funes emocionais (Perception Function, First Emotion Review Emotion,
etc...), tal como j feito por alguns autores (Hernndez et al. 2004, Jiang and Vidal 2006, Neto
and Da Silva 2010, Pereira et al. 2005, Signoretti 2012). Por fim, desceu-se mais um nvel,
observando as funes do nvel anterior internamente pelas suas sub- funes, determinando
qual o papel de cada uma, de qual autor/trabalho foi trazida a proposta e qual sua relao com
as outras funes e bases.
Observa-se que a proposta UEBDI no tem preocupao em explicar o fenmeno
emocional ou em implementar uma teoria emocional em especfico, mas sim em construir
uma arquitetura abstrata que operacionalize a lgica do agente BDI e emocional em seus
fronzenspots e ceda hotspots para que o projetista de agentes emocionais ou de modelos
emocionais possam desenvolver seus trabalhos.
145
7.1 Contribuies
A principal contribuio deste trabalho foi propor uma arquitetura de Agente
Emocional BDI abstrata que unifica as arquiteturas j pospostas anteriormente e permite
definir influncias do fenmeno emocional sobre todas as outras instncias da arquitetura
justificando estas propostas,
7.2 Limitaes
Como todo trabalho, nossa proposta apresenta limitaes que devem ser levadas em
conta por outros pesquisadores e por projetistas de agentes quem queira adot-la. Elas so:
Reconsiderao: A arquitetura BDI original (Wooldridge 2009) prev reconsiderao de
intenes e planos durante a atuao do agente. Por simplicidade, no consideramos a
reconsiderao dentro da nossa arquitetura abstrata. O trabalho (Jiang and Vidal 2006)
tenta atacar este problema timidamente, mas sem experiment- lo. Acreditamos que
emoes sirvam tambm para auxiliar este problema, visto que ajudariam ao agente
ponderar se devem manter uma inteno ou elimin- la ou replanej-la.
Formalismo Lgico: Existem trabalhos que se preocupam em criar uma lgica formal para
representar agentes emocionais BDI, como os (Meyer 2004, Pereira et al. 2006) e, em
especial, a srie de trabalhos de Steunebrink (Steunebrink 2010, Steunebrink et al. 2008,
146
2009). No procuramos definir um formalismo prprio, pois: (i) no era objetivo central do
trabalho; (ii) a implementao Jason implementa a AgentSpeak(L), que uma linguagem
criada embasada em um formalismo lgico. A partir do momento que mapeamos nossa
proposta no Jason, ela foi mapeada para a AgentSpeak(L) e para este formalismo lgico;
147
Referncias
Bates, J. and Loyall, A. B. and Reilly, W. S., (1994), "An Architecture for Action, Emotion,
and Social Behavior"
Bazzan, A. and Adamatti, D. and Bordini, R., (2002), "Extending the computational study of
social norms with a systematic model of emotions", Advances in Artificial Intelligence, p.
119.
Bazzan, A. L. C. and Bordini, R., (2001), "A framework for the simulation of agents with
emotions". In: Proceedings of the fifth international conference on Autonomous agents, p.
292299
Bordini, R. and Braubach, L. and Dastani, M. and Seghrouchni, A. and Gomez-Sanz, J. and
Leite, J. and OHare, G. and Pokahr, A. and Ricci, A., (2006), "A Survey of Programming
Languages and Platforms for Multi-Agent Systems", Informatica, v. 30, p. 3344.
Bordini, R. H. and Hbner, J. F. and Wooldridge, M., (2007), Programming Multi-Agent
Systems in AgentSpeak using Jason. 1 ed. West Sussex, England, John Wiley & Sons.
Bordini, R. and Hbner, J., (2007), Jason Tutorial.
Bratman, M. E., (1987), Intention, Plans, and Practical Reason. Cambridge, MA, Harvard
University Press.
Braubach, L. and Pokahr, A., (2010), Jadex: BDI Agent System. Jadex (Overview).
Disponvel
em:
<"http://jadex-agents.informatik.unihamburg.de/xwiki/bin/view/About/Overview">. Acesso em: 26 Apr 2010.
Braubach, L. and Pokahr, A. and Moldt, D. and Lamersdorf, W., (2005), "Goal representation
for BDI agent systems", Programming Multi-Agent Systems, p. 4465.
Breazeal, C. F., (1998), "A motivational system for regulating human-robot interaction". In:
Proc. of the fifteenth national/tenth conference on AI/Innovative applications of AI, p. 54
61, Madison, Wisconsin, United States.
Breazeal, C. L., (2000), Sociable machines: Expressive social exchange between humans and
robots, MIT
Camurri, A. and Coglio, A., (1998), "An Architecture for Emotional Agents", IEEE
MultiMedia, v. 5, n. 4 (Oct.), p. 2433.
Colman, A. M., (2003), "Cooperation, psychological game theory, and limitations of
rationality in social interaction", Behavioral and Brain Sciences, v. 26, n. 02, p. 139153.
Damsio, A., (2004), Erro de Descartes, O. So Paulo, Brazil, Companhia das Letras.
Dyer, M. G., (1987), "Emotions and their computations: Three computer models", Cognition
& Emotion, v. 1, n. 3, p. 323347.
148
Ekman, P. E. and Davidson, R. J., (1994), The nature of emotion: Fundamental questions.
Oxford University Press.
Fix, J. and Scheve, C. von and Moldt, D., (2006), "Emotion-based norm enforcement and
maintenance in multi-agent systems: foundations and petri net modeling". In:
Proceedings of the fifth international joint conference on Autonomous agents and
multiagent systems, p. 105107, Hakodate, Japan.
Frijda, N. H., (1987), The Emotions. Cambridge, United Kingdom, Cambridge University
Press.
Gadanho, S. and Hallam, J., (2001), "Robot learning driven by emotions", Adaptative
Behavior, v. 9, n. 1, p. 42.
Georgeff, M. and Pell, B. and Pollack, M. and Tambe, M. and Wooldridge, M., (1998), "The
belief-desire- intention model of agency". In: Proceedings of Intelligent Agents V. Agent
Theories, Architectures, and Languages: 5th International Workshop, ATAL98, p. 630
630, Paris, France.
Gratch, J., (1999), "Why you should buy an emotional planner". In: Proceedings of the
AgentsProceedings of the Agents99 Workshop on Emotion-based Agent Architectures
(EBAA99), p. 99465
Hernndez, D. J. and Dniz, O. and Lorenzo, J. and Hernndez, M., (2004), "BDIE: a BDI
like Architecture with Emotional Capabilities", American Association for Articial
Intelligence, n. 2004, p. 8.
Hbner, J. and Bordini, R. and Wooldridge, M., (2006), "Programming declarative goals using
plan patterns", Declarative Agent Languages and Technologies IV, p. 123140.
Hbner, J. F. and Bordini, R. H., (2009), Jason: a Java-based interpreter for an extended
version
of
AgentSpeak.
Jason
Home.
Disponvel
em:
<"http://jason.sourceforge.net/JasonWebSite/Jason%20Home.php">. Acesso em: 26 Apr
2010.
Izard, C. E., (1993), "Four systems for emotion activation: Cognitive and noncognitive
processes", Psychological Review, v. 100, n. 1 (Jan.), p. 6890.
Jiang, H., (2007), From Rational to Emotional Agents, University of South Carolina
Jiang, H. and Vidal, J. M., (2006), "From rational to emotional agents". In: Proceeding of the
AAAI Workshop on Cognitive Modeling and Agentbased Social Simulation
LeDoux, J., (2002), "Emotion, memory and the brain", Special Editions
LeDoux, J. and Rogan, M., (1999), "Emotion and the Animal Brain", The MIT Encyclopedia
of Cognitive Sciences, p. 269270.
Lester, P., (2004), A * Pathfinding para Iniciantes. A * Pathfinding para Iniciantes. Disponvel
em: <"http://www.policyalmanac.org/games/aStarTutorial_port.htm">. Acesso em: 31
Oct 2012.
Leventhal, H. and Scherer, K. R., (1987), "The relationship of emotion to cognition: A
functional approach to a semantic controversy", Cognition & Emotion, v. 1, n. 1, p. 328.
Lino, N. de L., (2006), Modelo de Percepo de Agentes Inteligentes baseados em Emoes,
Universidade Federal de Pernambuco
Marsella, S. C. and Gratch, J., (2009), "EMA: A process model of appraisal dynamics", Cogn.
Syst. Res., v. 10, n. 1 (Mar.), p. 7090.
149
McCrae, R. R. and John, O. P., (1992), "An Introduction to the Five-Factor Model and Its
Applications", Journal of Personality, v. 60, n. 2, p. 175215.
Mehrabian, A., (1996), "Pleasure-arousal-dominance: A general framework for describing and
measuring individual differences in temperament", Current Psychology, v. 14, n. 4, p.
261292.
Meneguzzi, F. R. and Zorzo, A. F. B. and Mra, M. D. A. C. and Luck, M., (2004),
"Incorporating Planning into BDI Systems", SCPE, v. 2006, p. 20072010.
Meyer, J. J. C., (2004), "Reasoning about emotional agents". Proceedings of 16th Eureopean
Conference on Artificial Intelligence, p. 2227, Valenca Spain.
Minsky, M., (1988), The Society of Mind. Pages Bent ed. Simon & Schuster.
Morgado, L. F. G., (2006), Integrao de emoo e raciocnio em agentes inteligentes. Thesis,
Universidade de Lisboa Disponvel em: <http://docs.di.fc.ul.pt/handle/10455/3314>.
Morgado, L. and Gaspar, G., (2005), "Emotion based adaptive rea soning for resource bounded
agents". In: Proceedings of the fourth international joint conference on Autonomous
agents and multiagent systems, p. 921928, New York, NY, USA.
Moridis, C. N. and Economides, A. A., (2008), "Toward Computer-Aided Affective Learning
Systems: A Literature Review", Journal of Educational Computing Research, v. 39, n. 4
(Jan.), p. 313337.
Neto, A. F. . and Da Silva, F. S. ., (2010), "On the Construction of Synthetic Characters with
Personality and Emotion". In: Advances in Artificial IntelligenceSBIA 2010SBIA2010, p.
102, So Bernado do Campo, Brazil.
Neto, A. F. B., (2010), Uma arquitetura para agentes inteligentes com personalidade e
emoo, USP Disponvel em: <www.ime.usp.br/~fcs/LIDET/bressane.pdf>.
Norling, E., (2004), "Folk Psychology for Human Modelling: Extending the BDI Paradigm".
In: Proceedings of the Third International Joint Conference on Autonomous Agents and
Multiagent Systems - Volume 1, p. 202209, New York, New York.
Oliveira, E. and Sarmento, L., (2003), "Emotio nal advantage for adaptability and autonomy".
In: Proc. of the Second International Joint conference on Autonomous Agents and
Multiagent Systems, p. 305312, Melbourne, Australia.
Ortony, A. and Clore, G. L. and Collins, A., (1990), The cognitive structure of emotions.
Cambridge, USA, Cambridge University Press.
Padgham, L. and Taylor, G., (1997), "A System for Modelling Agents having Emotion and
Personality", PRICAI Workshop on intelligent agent systems, p. 5971.
Pereira, D. and Oliveira, E. and Moreira, N., (2006), "Modelling emotional BDI agents". In:
Workshop on Formal Approaches to Multi-Agent Systems (FAMAS 2006), Riva Del
Garda, Italy (August 2006)
Pereira, D. and Oliveira, E. and Moreira, N. and Sarmento, L., (2005), "Towards an
architecture for emotional BDI agents". In: Proc. of the Twelfth Portuguese Conference
on AI, p. 4047
Picard, R. W., (1997), Affective Computing, Technical 321, MIT.
Picard, R. W., (2000), Affective Computing. 1 ed. Cambridge, USA, The MIT Press.
150
Picard, R. W., (2003), "Affective computing: challenges", International Journal of HumanComputer Studies, v. 59, n. 1, p. 5564.
Pimentel, C. F. and Cravo, M. R., (2009), "Dont think too much! - Artificial somatic
markers for action selection". 3rd International Conference on Affective Computing and
Intelligent Interaction and Workshops, 2009. ACII 2009, p. 1 8
Ramchurn, S. D. and Mezzetti, C. and Giovannucci, A. and Rodriguez-Aguilar, J. A. and
Dash, R. K. and Jennings, N. R., (2009), "Trust-based mechanisms for robust and
efficient task allocation in the presence of execution uncertainty", Journal of Artificial
Intelligence Research, v. 35, n. 1, p. 119.
Rao, A., (1996), "AgentSpeak (L): BDI agents speak out in a logical computable language",
Agents Breaking Away, p. 4255.
Rao, A. and Georgeff. M., (1995), "BDI agents: From theory to practice", Proceedings of the
first international conference on multi-agent systems (ICMAS-95), p. 312319.
Reekum, C. M. and Scherer, K. R., (1997), "Levels of processing in emotion-antecedent
appraisal", In: Matthews, G. [ed.] (eds), Advances in Psychology, , chapter 124, NorthHolland, p. 259300.
Van Reekum, C. M. and Scherer, K. R., (1997), "Levels of processing in emotion-antecedent
appraisal", Advances in Psychology, v. 124, p. 259300.
Rodrigues, P. S. L., (2007), Um Sistema de Gerao de Expresses Faciais Dinmicas em
Animaes Faciais 3D com Processamento de Fala, PUC-Rio
Rumbell, T. and Barnden, J. and Denham, S. and Wennekers, T., (2011), "Emotions in
autonomous agents: comparative analysis of mechanisms and functions", Autonomous
Agents and Multi-Agent Systems, p. 145.
Russel, S. J. and Norvig, P., (2004), Inteligncia Artificial: traduo da segunda edio. 2 ed.
Rio de Janeiro, Brazil, Elsevier.
Sarmento, L. M., (2004), An emotion-based agent architecture, Universidade do Porto
Scherer, K. R., (1999), "Appraisal theory", Handbook of cognition and emotion, , p. 637663.
Scherer, K. R., (2000), "Emotions as episodes of subsystem synchro nization driven by
nonlinear appraisal processes", Emotion, development, and self-organization: Dynamic
systems approaches to emotional development, p. 7099.
Scherer, K. R., (2005), "What are emotions? And how can they be measured?", Social Science
Information, v. 44, n. 4, p. 695 729.
Scheutz, M., (2002), "Agents with or without emotions". In: Proceedings FLAIRS, p. 8994
Scheutz, M., (2004), "How to determine the utility of emotions", IN PROC. OF AAAI
SPRING SYMPOSIUM
Scheve, C. von and Moldt, D. and Julia Fix and R. von Luede, (2006), "My agents love to
conform: Norms and emotion in the micro- macro link", Computational & Mathematical
Organization Theory, 2 ed, chapter 12, Springer
Signoretti, A., (2012), Agentes Inteligentes com Foco de Ateno Afetiv o em Simulaes
Baseadas em Agentes, UFRN
Signoretti, A. and Feitosa, A. and Campos, A. M. and Canuto, A. M. and Fialho, S. V., (2010),
"Increasing the Eciency of NPCs Using a Focus of Attention Based on Emotions and
151
Personality". In: Proceedings of the 2010 Brazilian Symposium on Games and Digital
Entertainment, p. 171181, Washington, DC, USA.
Silva, D. R. D. and Tedesco, P. R. and Ramalho, G. L., (2006), "Usando Atores Sintticos em
Jogos Srios: O Case SmartSim". In: V Brazilian Symposium of Games and Digital
Entertainment (SBGAMES 2006)SBGames, Pernambuco, Brazil.
Sloman, A., (1999), "How many separately evolved emotional beasties live within us?". In:
Presented at workshop on Emotions in Humans and Artifacts Vienna
Sloman, A., (2004), "What are theories of emotion about". In: Proceedings of the AAAI Spring
Symposium: Architectures for Modeling Emotion: cross-disciplinary foundations. AAAI
Technical report SS-04-02. AAAI Press
Staller, A. and Petta, P., (2000), "Introducing emotions into the computationa l study of social
norms". In: In Proceedings of the 2000 Convention of the Society for the Study of
Artificial Intelligence and the Simulation of Behaviour (AISB00), p. 1720, Birmingham,
UK.
Staller, A. and Petta, P., (2001), "Introducing emotions into the computational study of social
norms", Journal of Artificial Societies and Social Simulation, v. 4, n. 1
Steunebrink, B. R., (2010), The Logical Structure of Emotions, Utrecht University
Steunebrink, B. R. and Dastani, M. and Meyer, J. J. ., (2009), "A Formal Model of EmotionBased Action Tendency for Intelligent Agents". In: Proc. of the 14th Portuguese
Conference on Artificial Intelligence: Progress in AI, p. 174186
Steunebrink, B. R. and Dastani, M. and Meyer, J. J. C., (2008), "A Formal Model of
Emotions: Integrating Qualitative and Quantitative Aspects"
Teasdale, J., (1999), "Multi- level theories of emotion", Handbook of cognition and emotion,
Chichester: Wiley
Tomaz, C. and Giugliano, L. G., (1997), "A razo das emoes: um ensaio sobre O erro de
Descartes", Estudos de Psicologia (Natal), v. 2, p. 407411.
Velsquez, J., (1998a), "Modeling emotion-based decision-making", Emotional and
Intelligent: The Tangled Knot of Cognition, p. 164169.
Velsquez, J. D., (1996), Cathexis: a computational model for the generation of emotions and
their influence in the behavior of autonomous agents, MIT Disponvel em:
<http://dspace.mit.edu/handle/1721.1/10651>.
Velsquez, J. D., (1998b), "When robots weep: emotional memories and decision- making".
In: Proceedings Of The National Conference On Artificial Intelligence, p. 7075
De Weerdt, M. and Zhang, Y. and Klos, T., (2007), "Distributed task allocation in social
networks". In: Proceedings of the 6th international joint conference on Autonomous
agents and multiagent systems, p. 76:176:8, New York, NY, USA.
Wilson, R. A. and Keil, F. C., (1999), The MIT Encyclopedia of Cognitive Sciences.
Cambridge, Massachusetts, USA, MIT Press.
Wilson, S. W., (1991), "The Animat Path to AI". In: From animals to animatsProcedings of
the First Conference on Simulation of Adaptive Behavior, p. 1521, Cambridge,
Massachusetts, USA.
Wooldridge, M., (2009), An Introduction to MultiAgent Systems. 2nd ed. West Sussex,
England, John Wiley & Sons.
152
153
primeira, ser executada a segunda. No pode existir uma seta que parta de uma base e v
para outra base.
Existem duas entidades especiais chamadas de ponto inicial e ponto final. O ponto
inicial indica onde comea o fluxo de execuo e o final onde termina. Elas so representadas
por um ponto preto preenchido e por um ponto preto preenchido com um crculo preto em
volta, respectivamente.
Os relacionamentos entre funes e entre os pontos iniciais e finais podem ter como
descrio o nome de um tipo de dado por exemplo P que indica um tipo de dado que
passado de uma funo a outra. Isto equivalente a dizer que existe uma base de dados
oculta que armazena os dados temporariamente de uma funo a outra. Quando esta descrio
est em um relacionamento partindo de um ponto inicial, indica que antes do incio o fluxo
recebeu dados de algum que o chamou externamente. E em um relacionamento indo para um
ponto final indica que a ltima funo gerou dados que devem ser oferecidos a quem chamou
este fluxo.
Existe uma funo especial chamada ponto de deciso que indica que naquele local o
sistema deve decidir, em tempo de execuo, qua l outra funo ser a prxima. Esta funo
pode receber parmetros como as outras, mas no pode alterar as bases. Nos diagramas podese no indicar quais bases influenciam esta funo, para simplificar a descrio. Tambm, nos
relacionamentos para as funes posteriores, pode-se adicionar um texto descrevendo a
condio para que aquele caminho seja seguido. Entretanto, obrigatrio que se siga por um e
somente um caminho.
Quando for preciso bifurcar o fluxo de execuo em dois independentes usa-se a
barra de sincronizao, cuja semntica similar a do diagrama de atividades: uma seta
direcionada parte de uma funo em direo a um dos lados da barra. Do outro lado partiro
outras duas ou mais setas representando os fluxos independentes. Quando for preciso juntlos novamente, as setas do final do fluxo incidiro sobre um lado de outra barra, e no outro
lado desta barra partir uma nica seta, unificando os fluxos anteriores.
Uma funo composta uma funo composta por outras sub- funes ou sub-bases.
Para representar isto usaremos um retngulo representando a funo composta em si que
conter em seu interior os retngulos de suas sub-funes e/ou os cilindros de suas sub-bases.
O incio e o fim do fluxo dentro desta funo sero representados por pontos inic iais e finais,
respectivamente.
Outra forma de representar uma funo composta por outra usar uma seta-losango
(similar ao relacionamento de composio da UML), onde a funo do lado do losango
154
composta pela outra do outro lado. A diferena desta representao em relao a anterior
que ela perde a ordem de execuo das funes que compe a funo composta.
s vezes preciso dizer que uma funo equivale a outra (ou outras). Quando isto
ocorre dizemos que estamos mapeando uma funo em outra(s) e existe uma funo
mapeada que mapeada em outra funo alvo.
Para representar isto graficamente, desenhamos a funo mapeada como uma funo
qualquer (retngulo arredondado) e desenhamos em volta dela outro retngulo tracejado que
representa a funo alvo. Pode-se mapear uma funo em uma ou mais outras, desde que parte
do retngulo da funo mapeada esteja dentro das outras funes alvo.
Quando, semanticamente, conseguimos mapear todas as responsabilidades de uma
funo em outra, dizemos que este mapeamento um mapeamento completo, caso contrrio,
o mapeamento incompleto. Para representarmos isto, devemos desenhar uma faixa diagonal
no canto superior esquerdo do retngulo da funo alvo.
Nome
Imagem
Retngulo arredondado
Cilindro
Descrio
Funo f
Base de dados do tipo Data (D)
Relacionamento f para D
Relacionamento D para f
Relacionamento f para f
Ponto inicial
Ponto final
Ponto de deciso
Barra de sincronizao
Funo composta
Seta-losango de
g para f
Base de Dados oculta
Retngulo tracejado
Faixa diagonal