Introdução aos Agentes Autónomos Teorias de Agentes IST- 2003/2004 Ana Paiva.
Transcript of Introdução aos Agentes Autónomos Teorias de Agentes IST- 2003/2004 Ana Paiva.
Introdução aos Agentes Introdução aos Agentes AutónomosAutónomos
Teorias de Agentes Teorias de Agentes
IST- 2003/2004IST- 2003/2004Ana PaivaAna Paiva
A. Paiva
Seminários
A. Paiva
DefiniçõesDefinições "An agent is a computational system that inhabits a complex,
dynamic environment. An agent can sense, and act on, its environment, and has a set of goals or motivations that it tries to achieve through these actions" (P. Maes, 1994).
"An agent is a software based computer system that enjoys the
properties of: autonomy, social-ability, reactivity and pro-activeness" (Wooldridge e Jennings, 1995).
A. Paiva
Os agentes e o ambiente: como Os agentes e o ambiente: como abordar o estudo de agentesabordar o estudo de agentes
“um agente como uma entidade sistémica que observa e interpreta o ambiente que o cerca através de sensores e que intervém sobre o ambiente através de actuadores (Russell e Norvig, 1994)”.
SISTEMA
AMBIENTE
percepções
estados internosacções
A. Paiva
Tipos de Agentes
Agentes Reactivos Agentes Declarativos (intencionais) Agentes Híbridos Agentes emocionais
A. Paiva
Uma Arquitectura Abstracta de Agentes
Assume-se que o ambiente pode ser descrito como um conjunto finito discreto de estados instantâneos.
E = { e, e´, ….}
Considere-se que os agentes têm um reportório de acções possíveis que lhes permite transformar o estado do ambiente.
Ac = { a, a´, ….}
Considere-se run (r) de um agente num dado ambiente é uma sequência de alternadamente estados e acções, da seguinte forma:
r: a0 a1 a2 au-1e1 e2 e3 ….. eue0
A. Paiva
Uma Arquitectura Abstracta de Agentes (2)
Seja
• R o conjunto de todas as sequências possíveis (em E e r)
• RAc o subconjunto destas que terminam numa acção
• RE o subconjunto destas que terminam num estado do ambiente
A. Paiva
Função de Transformação de Estado
Uma função de transformação de estado representa o comportamento do ambiente, e é:
T : RAc -> p (RE)
Ou seja: a função de transformador de estado faz o mapeamento do run (que termina numa acção do agente) num conjunto possível de estados do ambiente – na realidade os que resultam da execução da acção.
os ambientes são:
- dependentes do historial
- não determinísticos
A. Paiva
Função de Transformação de Estado
Se T (r) = Ø, então não há sucessores possíveis para r, pelo que o sistema termina.
Diz-se que um AMBIENTE é o triplo Env = <E, e0, T >• Em que E é o conjunto dos estados do ambiente• e0 pertence a E e é o estado inicial do ambiente
• e T é a função de transformação.
A. Paiva
Agentes
Um agente, tendo em conta esta nomenclatura é a função que mapeia runs em acções:
Ag : RE -> Ac
Ou seja, um agente toma a decisão acerca da acção a executar baseando-se na história do sistema que ele presenciou até ao momento.
A. Paiva
Sistemas de Agentes
Um SISTEMA é um par contendo um Agente e um Ambiente
Qualquer sistema terá associado um conjunto possível de runs…
Um sistema multi-agente contém um ambiente e diversos agentes.
A. Paiva
Tipos de Agentes
Agentes Reactivos Agentes Declarativos (intencionais) Agentes Híbridos Agentes emocionais
A. Paiva
Agentes puramente reactivos
Alguns tipos de agentes decidem o que fazer sem qualquer referência ao seu historial. As suas decisões são situadas no ambiente e dependem simplesmente do presente.
- São chamados agentes “puramente reactivos”
Do ponto de vista formal um agente puramente reactivo pode ser visto como uma função:
Ag : E -> Ac
(ou seja em vez de RE o agente decide simplesmente baseando-se em E).
A. Paiva
Percepção/Acção
Ambiente
See Action
Agente
see : E -> Per Action : Per* -> Ac
A. Paiva
Agente Reactivo SimplesAgente Reactivo Simples
function Agente_Jardineiro(percepção) returns acção static regras % as regras de condição acção estado <- INTERPRET-INPUT(percepção) regra <- RULE-MATCH(estado,regras) acção <- RULE-ACTION(regra)return acção
Agente jardineiro reactivo simples (veja-se (Russell e Norvig, 1994)
Se flor-murchar ENTAO regar
Regra que relaciona as percepções com as acções:
A. Paiva
Agente Reactivo Com EstadoAgente Reactivo Com Estado
function Agente_Jardineiro(percepção) returns acção static regras % as regras de condição acção estado-mundo % estado do mundo estado-mundo <- UPDATE-STATE(estado-mundo,percepção) regra <- RULE-MATCH(estado-mundo,regras) acção <- RULE-ACTION(regra) estado-mundo <- UPDATE-STATE(estado-mundo,acção) return acção
Agente jardineiro reactivo com representação do estado (veja-se (Russell e Norvig, 1994)
A. Paiva
Percepção/Acção
Ambiente
See Actionsee : E -> Per Action : Per* -> Ac
Next State
A. Paiva
Agente Com ObjectivosAgente Com Objectivos
function Agente_Jardineiro(percepção) returns acção static regras % as regras de condição acção estado-mundo % estado do mundo objectivos % objectivos estado-mundo <- UPDATE-STATE(estado-mundo,percepção) regra <- RULE-MATCH(estado-mundo,regras,objectivos) acção <- RULE-ACTION(regra, objectivos) estado-mundo <- UPDATE-STATE(estado-mundo, acção) objectivos <- UPDATE-GOALS(objectivos, estado-mundo, acção) return acção
Agente jardineiro com objectivos (veja-se (Russell e Norvig, 1994)
A. Paiva
Atitudes Mentais e Teorias de Agentes
Atitudes mentais
FormalizaçãoProvar e descrever propriedades de agentes
Utilização para descrever o processamento interno do agente
Impacto nas linguagens de agentes
Arquitecturas
A. Paiva
Construção de Agentes:Teorias de Agentes
Teorias de Agentes: representam “as especificações dos agentes, nomeadamente as suas propriedades”
Perguntas que se vai tentar responder:• Como conceptualizar um agente no seu ambiente?• Que propriedades possui esse agente?• Como é que representamos formalmente estas
propriedades?• Que raciocínio e inferências são possíveis
executar tendo em conta essas propriedades?
A. Paiva
Teorias de Agentes
As teorias dos agentes são especificações formais, e visam responder a perguntas centrais, tais como: Como vamos conceptualizar os agentes, através do recurso à teoria da Decisão, da Filosofia, ou ainda da Ciência da Computação?
A. Paiva
Primeiro ponto de partida...
=> Um possível ponto de partida, é a noção de agente como entidade sujeita a crenças e a desejos (Dennett, 1987).
A. Paiva
Teorias de Agentes: Intencionalidade
Mais tarde, (Dennett, 1987) ao observar as descrições da actividade humana, através de frases, como a seguinte:
O Luis trabalhou muito porque queria obter um "canudo".
designou essas atitudes, como queria, de “sistemas intencionais”, caracterizando assim as entidades cujo comportamento pode ser previsto pelo método de atribuição de crenças, e de desejos.
De qualquer modo as noções intencionais não são mais do que “ferramentas abstractas” que permitem de forma conveniente descrever, explicar e prever o comportamento dos sistemas multi-agentes complexos.
A. Paiva
Graus de intencionalidade
Dennett identifica diferentes graus de sistemas intencionais:
- Sistemas intencionais de primeira ordem, é um sistema que tem crenças e desejos mas não crenças e desejos acerca de crenças e desejos.
- Sistemas intencionais de segunda ordem são mais sofisticados na medida que `têm crenças e desejos acerca de crenças e desejos…
A questão no entanto mantém-se:
- - É legítimo atribuir crenças e desejos a sistemas computacionais?
A. Paiva
Legitimidade de uma aproximação intencional…
McCarthy defendeu, em 1979, que por um lado é legítimo atribuir atitudes mentais às máquinas (agentes artificiais), tais com crenças, livre arbítrio, intenções, consciência, capacidades ou quereres, quando tal atribuição expressar a mesma informação sobre a máquina do que sobre uma pessoa, e numa certa situação.
A. Paiva
Legitimidade de uma aproximação intencional…(2)
Que objectos podem ser descritos como sistemas intencionais?
…. Segundo vários investigadores…. Quase tudo!
“It is perfectly coherent to treat a light switch as a (very cooperative!) agent with the capability of transmitting current at will, who invariably transmits current when it believes that we want it transmitted and not otherwise; flicking the switch is simply a way of communicating our desires (Shoham)”
Absurdo?Absurdo?
A. Paiva
Legitimidade de uma aproximação intencional…(3)
A descrição de um programa como sistema intencional é consistente, mas…
… it doesn’t buy us anything, since we essentialy understand the mechanism sufficiently to have a simpler, mechanistic description of its behaviour (Shoham).
- Quanto mais sabemos do sistema menos temos que lhe atribuir qualidades como crenças ou desejos.
- Os SISTEMAS INTENCIONAIS aparecem então como metáforas para explicar comportamentos complexos. Além disso, podem tornar-se também uma “ferramenta de abstracção” para a construção de sistemas complexos.
A. Paiva
Sistemas Intencionais surgem assim como
Ferramenta de Abstracção para a construção de sistemas complexos….
Caracterização de sistemas<Uso na representação interna e na representação de outros sistemas>
A. Paiva
Sistemas Post-Declarativos
Programação procedimental: dizemos exactamente o que queremos que o sistema faça…
Programação declarativa: damos informação (declaramos) sobre o que queremos que o sistema obtenha declarando os objectos e as suas relações. Usamos um sistema de control que está embebido no motor e que vai determinar o que o sistema vai fazer (tendo em conta as declarações feitas).
Com agentes damos uma especificação abstracta do sistema (usando uma abstracção) e o sistema deverá decidir o que fazer tendo em conta essa especificação e a teoria usada.
>>>>Esta especificação é normalmente baseada em ATITUDES do agente…
A. Paiva
Daí surgem os…Daí surgem os…Agentes DeliberativosAgentes Deliberativos
A. Paiva
Categorias de Atitudes de Agentes
Que categorias são então as mais apropriadas para representar os agentes? Não existe um consenso quanto à lista dessas categorias, mas (Wooldridge e Jennings, 1995) adoptaram a proposta de (Searle, 1984) que distingue dois tipos de categorias:
1) atitudes informativas: crença e conhecimento,
relacionadas com a informação que um agente tem sobre o mundo que ocupa,
2) pró-atitudes: desejo, intenção, expectativa, obrigação, empenhamento, e escolha,
as quais servem para guiar as acções do agente, determinando o seu comportamento.
Dada uma tão grande diversidade de atitudes possíveis, qual é então a Dada uma tão grande diversidade de atitudes possíveis, qual é então a combinação de atitudes que se torna mais conveniente para caracterizar combinação de atitudes que se torna mais conveniente para caracterizar um agente? um agente?
A. Paiva
Que Atitudes Mentais?
Davidson (1980) argumentou:
• que as crenças e as intenções são os estados básicos e que todos os outros se podem reduzir a estes.
Bratman (1987 e 1990) defendeu que:
• as intenções não podem ser reduzidas aos desejos e às crenças. Sendo agentes entidades com recursos limitados não podem avaliar continuadamente os seus desejos e as suas crenças de molde a actuarem racionalmente. Após algum raciocínio, os agentes devem empenhar-se em algumas acções e manter um tal empenhamento.
A. Paiva
Papel das Intenções
Bratman defendeu três papeis funcionais das intenções:
1) as intenções colocam problemas ao agente que precisa de achar formas de os resolver;
2) as intenções devem ser auto-consistentes (o agente não pode adoptar uma intenção que entre em conflito com as intenções anteriores); e,
3) o agente deve descobrir o êxito das suas intenções e persistir em caso de falhanço.
A. Paiva
Agentes Deliberativos:Teorias BDI
A teoria mais conhecida é designada de BDI e resultam do reconhecimento de que os agentes racionais são formalizados através de “crenças”, “desejos” e “intenções”.
O que faz o modelo BDI tão atractivo?
• É baseado em teorias de racionalidade reconhecidas (Dennett, Searle)
- Foram implementados com sucesso em diversas aplicações- Foi formalizada através de uma família de lógicas BDI
A. Paiva
Crenças e Desejos
Crenças: (conhecimento do agente). Expressão do estado do mundo visto pelo agente. Além disso as crenças podem dar a visão de como o agente considerar que o mundo se vai alterar se executar determinadas acções (conhecimento de como agir).
Desejos: a noção abstracta que especifica as preferências do agente sobre os estados futuros do mundo.
A. Paiva
Como formalizar?
Hipótese de formalização• bel (jardineiro, ladra(cao,jardim))
Esta formalização não funciona:
- Problema sintático (o segundo argumento é um predicado) logo bel não é uma forma em lógica de primeira ordem.
- Problema semântico- se as constantes “cao” e “tobi” são as mesmas deveria ser possível inferir:
- bel (jardineiro, ladra(tobi,jardim))
A. Paiva
Formalização através de uma lógica modal
Partindo da lógica modal e identificando os quatro axiomas fundamentais (conjunto TD45): T (o da relação de acessibilidade reflexiva), D (relação de acessibilidade serial), 4 (relação de acessibilidade transitiva) e 5 (relação de acessibilidade euclidiana):
• T: => D: => ◊ • 4: => 5: ◊ => ◊
Como é que podemos usar para formalizar os conceitos de crença e de intenção que queremos no nosso modelo dos agentes?
A. Paiva
Conhecimento
Substituindo por Ki (o agente i sabe ) e ◊ por Bi (o agente i acredita). Estes operadores são duais e ◊
O axioma D ( => Bi diz que as crenças de um agente são não contraditórias.
Pode ser re-escrito como: Ki => Ki , com a seguinte leitura: se i conhece , então i não conhece . Este axioma parece ser uma propriedade razoável do conhecimento/crença.
A. Paiva
Relação entre atitudes mentais
CRENÇAS DESEJOS INTENÇÕES
(caminhos (caminhos (melhores
possíveis) desejáveis) caminhos)
A. Paiva
Em termos práticos…
As crenças são representadas explicitamente e representam o conhecimento do agente sobre o mundo.
A representação sobre a forma a atingir um estado futuro do ambiente pode ser feita á custa de planos.
Cada intenção que o sistema forma pela adopção de um dado plano corresponde a uma “intenção” e pode ser usado um sistema convencional de pilhas de planos hierarquicamente relacionados. Podem existir várias pilhas de planos, cada uma correndo em paralelo.
A. Paiva
Arquitecturas Arquitecturas DeliberativasDeliberativas
A. Paiva
O que são arquitecturas de agentes?
Representam as estruturas computacionais e as funcionalidades associadas a um sistema que irá representar um agente.
A. Paiva
Trabalho de Rao e Georgeff
Foi proposta uma forma de ultrapassar os problemas associados com as teorias de agentes (e associadas com as suas formalizações) tendo estabelecido uma ligação entre teorias e arquitecturas.
Solução: simplificação….(que implica uma redução do poder expressivo do framework BDI)
A. Paiva
PRS (Procedural Reasoning System)
PRS é um sistema para raciocínio sobre a execução de tarefas em ambientes dinâmicos.
As atitudes mentais dos agentes são: crenças, desejos e intenções, todos representados explicitamente.
Database(beliefs)
KA library(Plans)
Interpreter(Reasoner)
Goals(desires)
Intentionstructure
Commandgenerator
Effectors
Sensors
Monitor
Environment
A. Paiva
PRS: A estrutura de intenções
A estrutura de intenções do PRS contém as tarefas que o agente se COMPROMETEU a executar (imediatamente ou num futuro próximo).
As intenções podem ter três estados possíveis:
• “activas”• “suspensas”: quando uma intenção foi adoptada mas ainda
não foi tomada a decisão da sua execução (será mais tarde no plano)
• “condicionalmente suspensas”: quando espera que certa condição seja verificada.
A. Paiva
OASIS: Aplicação da PRS
PRS foi usada num sistema de controlo de tráfego aéreo denominado OASIS (com financiamento da NASA)
O sistema tem os seguintes tipos de agentes:• Um agente de aviação para cada avião• Um sequenciador• Um modelador de vento• Um coordenador• Um verificador da trajectória
A cada instante o sistema tem cerca de setenta a oitenta agentes a correr em paralelo
Os agentes de aviação são os responsáveis pelo voo de cada avião.
A incerteza do ambiente surge da utilização de agente do ambiente como o modelador do vento.
A. Paiva
OASIS: Aplicação da PRS
Cada agente de aviação tem como opções possíveis voar a uma velocidade mínima ou máxima bem como alterar a altitude.
Os agentes sequenciador e coordenador têm uma perspectiva mais global (por exemplo, o agente sequenciador tem como objectivo aterrar todos os agentes de aviação de forma segura).
A. Paiva
IRMA: Bratman
IRMA: Intelligent Resource Bounded Machine Architecture
Percepção
ambiente
Mecanismo de filtragem
Processo de deliberação
Raciocinador de meios-fins
Estrutura de intenção
ACÇÃO
A. Paiva
Arquitectura funcional Müller-Demazeau
Comunicação Conhecimento (crenças)
Capacidades de raciocínio
Percepção
Objectivos
Soluções possíveis
Capacidades
de decisão
PLANOS
Escolhas (acções)
INTENÇÕES
saídas
A. Paiva
Will
Memória
DisposiçõesPerceptor
Executor
MUNDO
Previsor
Planeador
A. Paiva
GRATE
Camada de controle e cooperação
mecanismo de raciocínio conhecimento genérico + conhecimento específico
Modelos dos Agentes
Pré-criado
Criado pelo projectista Criado
pelo projectista
Controle Re-alimentação
INTERFACE
Camada da aplicação
Criado pelo projectista
Tarefa 1 Tarefa 2 Tarefa 3
Comunicação inter-agentes
A. Paiva
Finalmente: o Interpretador BDI
Algorithm Practical Reasoning Agent Control Loop
B <- Bo; /* Bo are initial beliefs */ I <- Io; /* Io are the initial intentions */ while true do
get next percept pp through see() function;B <- brf(N,pp);D <- options(B,I);I <- filter(B,D,I);P <- plan (B,I,Ac);while not (empty(P) or suceeded(I,B) or impossible(I,B)) do
alpha <- head(P);execute(alpha);P <- tail(P);get next percept pp through see() function;B <- brf(B,pp)if reconsider (I,B) then
D <- options(B,I);I <- filter(B,D,I);
end-ifif not sound(P,I,B) then
P <- plan (B,I,Ac)end-if
end-while end-while
A. Paiva
Descrição
brf: belief revision function (permite o update das crenças do agente tendo em conta nova informação sobre o mundo)
plan: função que, baseado nas crenças dos agentes na sua estrutura de intenções e na descrição das acções dos agente, determina um plano para atingir as intenções.
options: função que toma as crenças do agente e as suas intenções e determina os proximos desejos
filter: para seleccionar opcões (desejos) do agente, há que filtrar (excolher) as melhores opções às quais o agente se comprometerá. Basicamente toma um conjunto de crenças, de desejos e se intenções e determina o proximo conjunto de intenções.
A. Paiva
“Commitments”
O mecanismo que é usado pelo agente para determinar quando e como desistir de intenções é conhecido como
“a estratégia de compromisso”
Tipos de compromisso:
1. Compromisso cego: o agente tenta atingir as suas intenções até acreditar que as intenções foram atingidas;
2. Compromisso “single-minded”: o agente tenta atingir as suas intenções até acreditar que as intenções foram atingidas ou que não é mais possível atingir a intenção;
3. Compromisso “open minded”: o agente tenta atingir as suas intenções enquanto acreditar que são possíveis.
A. Paiva
Como criar agentes que seguem uma BDI
A. Paiva
JAM
1992
1993
1994
1995
1996
ACT
PRS
UMPRS
SCS
1991
1990
1989
1988
1997
1998
JAM
Figure 1. Ancestry of the JAM intelligent agent architecture.
Mobility Ideas
1999
A. Paiva
JAM (2)
A. Paiva
JAM- Ciclo do Interpretador
public int run() { // loop forever until agent completes all of its goals while (true) { // outer, infinite loop // execute the Observer procedure returnValue = intentionStructure.executePlan(observer); metaLevel = 0; while (true) { // metalevel loop // generate an Applicable Plan List (APL) if necessary apl = new APL(planLibrary, worldModel, intentionStructure, metaLevel); // If the new or previous APL is not empty then add // entry to the World Model to trigger the next level of // reasoning. if (apl.getSize() != 0) worldModel().assert("APL", metalevel, apl, aplSize); // If this APL is empty then no new level of reasoning if (apl.getSize() == 0) { if ((intentionStructure.allGoalsDone())) return 0; // If the previous APL was empty then execute // something in the intention structure, otherwise // select something from the previous APL, intend it, // and then run something in the intention structure. if (last_apl == null || last_apl.getSize() == 0) { intentionStructure.run(); break;}
else { selectedElement = last_apl.getHighestRandomUtility(); intentionStructure.intend(selectedElement); intentionStructure.run(); last_apl = null; break; } } else { last_apl = apl; metaLevel++; } } // Inner, metalevel loop // Clear the World Model of APL elements. getWorldModel().retract("APL"); } // Outer infinite loop }
A. Paiva
Jam- Objectivos
Os objectivos dos agentes são dados na seguinte forma:
goal_type goal_name parameter1 ... parameterN
<:UTILITY expression>;
The goal type is one of: ACHIEVE, PERFORM, and MAINTAIN.
Top Level Goals (ex) (persistentes):
GOALS:PERFORM wander_lobby;
ACHIEVE initialize :UTILITY 300; MAINTAIN charge_level “20%”; MAINTAIN safe_distance_from_obstacles 50.0;
A. Paiva
Jam- Planos
Os planos são “formas” de atingir os objectivos.
PLAN: { GOAL: [goal specification] or CONCLUDE: [world model relation] NAME: [string] BODY: [procedure] <DOCUMENTATION: [string]> <PRECONDITION: [expression]> <CONTEXT: [expression]> <UTILITY: [numeric expression]> <FAILURE: [non-subgoaling procedure]> <EFFECTS: [non-subgoaling procedure]> <ATTRIBUTES: [string]>}Figure 3. Anatomy of a JAM agent plan.
A. Paiva
Jam-Planos Exemplo
Exemplo:PLAN: { NAME: “Plan 1: Gather and process information" GOAL: ACHIEVE information_exploited $user_query $result $recursed; BODY: EXECUTE com.irs.jam.primitives.GetHostname.execute $hostname; EXECUTE print “Currently at “ $hostname “\n”; OR { // Check to see if we are done TEST (querySatisfiedp $user_query $solution); EXECUTE print “Done working on query.\n”; } { // We are not done, so figure out what to do next EXECUTE determineNextInfoSource $user_query $nextHostname $nextPort $result; EXECUTE agentGo $nextHostname $nextPort; EXECUTE gatherAndProcessInfo $query $result; ACHIEVE information_exploited $user_query $result “true”; }; WHEN : TEST (== $recursed “false”){agentGo $hostname $port;
A. Paiva
Jam- Modelo do Mundo
FACTS:
FACT ON "Block5" "Block4";
FACT ON "Block4" "Block3";
FACT ON "Block1" "Block2";
FACT ON "Block2" "Table";
FACT ON "Block3" "Table";
FACT CLEAR "Block1";
FACT CLEAR "Block5";
FACT CLEAR "Table";
FACT initialized "False";
Figure 6. Example World Model for a blocks-world domain.
A. Paiva
Jam
Mais informação:
http://www.marcush.net/IRS/index.html
http://member.shome.net/marcush/IRS/Jam/Jam-man.doc
A. Paiva
Bibliografia
-
A. Paiva
Mais informação
Página de Agentes
A. Paiva
SumárioSumário
Linguagens de formalização
Comportamento possível/ Teoria informal/ Conceptualização
Caracterização do ambiente
TEORIA DE AGENTES
ARQUITECTURAS DE AGENTES
(modelos)
CONSTRUÇÃO DE UM AGENTE i
SOCIEDADE DE AGENTES
Teorias de comunicação/ de cooperação/ de negociação
Bancadas Linguagens
APLICAÇÕES
A. Paiva
Combinação de propriedadesCombinação de propriedades
Segundo (Wooldridge, 1994), podemos encarar duas grandes classes de agentes: • “uma fraca”, onde se destacam as propriedades de autonomia,
sociabilidade, e pró-actividade, • “outra forte”, onde além destas propriedades é costume adoptar outros
conceitos apenas habituais quando se falam dos seres humanos, tais como o conhecimento, a crença, a intenção e a obrigação (Shoham, 1993).
Este desvio antropomórfico pode ainda ir mais além, como no caso dos agentes “emocionais” ou “credíveis” (Bates, 1994), dos ícones gráficos tipo desenhos animados, ou ainda das faces animadas (Maes, 1994)- personagens sintéticas.