dissertação jacob jr

116
Pós-Graduação em Ciência da Computação Buti: um Companheiro Virtual baseado em Computação Afetiva para Auxiliar na Manutenção da Saúde Cardiovascular” Por Antonio Fernando Lavareda Jacob Junior Dissertação de Mestrado Universidade Federal de Pernambuco [email protected] www.cin.ufpe.br/~posgraduacao RECIFE, MARÇO/2008

Upload: antonio-jacob-jr

Post on 03-Oct-2015

14 views

Category:

Documents


2 download

DESCRIPTION

Dissertação Jacob Jr

TRANSCRIPT

  • Ps-Graduao em Cincia da Computao

    Buti: um Companheiro Virtual baseado em

    Computao Afetiva para Auxiliar na

    Manuteno da Sade Cardiovascular

    Por

    Antonio Fernando Lavareda Jacob Junior

    Dissertao de Mestrado

    Universidade Federal de Pernambuco [email protected]

    www.cin.ufpe.br/~posgraduacao

    RECIFE, MARO/2008

  • Jacob Junior, Antonio Fernando Lavareda

    Buti: um companheiro virtual baseado em computao afetiva para auxiliar na manuteno da sade cardiovascular / Antonio Fernando Lavareda Jacob Junior. Recife : O Autor, 2008.

    xi, 103 p : il., fig., quadro

    Dissertao (mestrado) - Universidade Federal de Pernambuco. CIn. Cincia da computao, 2008.

    Inclui bibliografia e apndices.

    1. Inteligncia artificial. 2. Processamento de linguagem natural. I. Ttulo.

    006.3 CDD (22.ed.) MEI2008-16

  • Universidade Federal de Pernambuco

    Centro de Informtica - CIn

    Antonio Fernando Lavareda Jacob Junior

    Buti: um Companheiro Virtual baseado em ComputaoAfetiva para Auxiliar na Manuteno da Sade

    Cardiovascular

    Trabalho apresentado ao Programa de Ps-Graduao em

    Cincia da Computao do Centro de Informtica - CIn da

    Universidade Federal de Pernambuco como requisito par-

    cial para obteno do grau de Mestre em Cincia da Com-

    putao.

    Orientadora: Flvia de Almeida Barros

    Recife

    06 de Maro de 2008

  • Agradecimentos

    Primeiramente a Deus, por ter me dado a vida e todos os dons que proporcionaram a realizar

    todas as atividades at hoje concludas.

    A minha enorme famlia, em especial aos meu Pais (Fernando e Graa) e minha irm Ce-

    lidia, por sempre me incentivar e dar foras para evoluir no campo pessoal e profissional.

    A minha namorada e companheira, Yara Carolina, por seu apoio e amor incondicional em

    todos os momentos difceis e felizes que passei.

    A minha querida orientadora, Flvia Barros, por, alm de ter me orientado no projeto de

    mestrado, me orientou em vrios aspectos da minha vida.

    Aos demais professores, em especial a Patricia Tedesco, e a todos os integrantes do Projeto

    do Clube do Corao que ajudaram diretamente em etapas do projeto.

    Ao meu amigo, Bruno Monteiro, por ter me dado uma grande ajuda com o Design do

    projeto e em outros inmeros momentos que solicitei sua ajuda.

    Ao querido amigo, Jos Dihego (Cebola), por ter "emprestado"a sua voz para uma atividade

    do projeto.

    A todos os amigos que fiz durante o mestrado, especialmente os integrantes dos grupos

    PET de Pernambuco (principalmente, Allan Diego, Hozana Dantas, Raiana Lira e todos os

    integrantes do PET/Informtica e Biologia) e, tambm, os amigos Patrcia Endo, Rosana Cav-

    alcante, Patricia Vanessa, Rafaella Matos e tantos outros.

    Agradeo, tambm, aos meus amigos de Belm que mesmo com a distncia me deram

    muito apoio durante o trabalho, em especial Jadielly Oliveira e Fabricio Brasil.

    iii

  • Pensamos demasiadamente e sentimos muito pouco. Mais do que

    mquinas, necessitamos de humanidade. Mais de bondade e ternura, que

    de inteligncia. Sem isso, a vida se tornar violenta e tudo se perder.

    We think too much and feel too little. More than machinery, we need

    humanity. More than cleverness, we need kindness and gentleness.

    Without these qualities, life will be violent and all will be lost.

    CHARLES CHAPLIN (The Great Dictator, 1940)

  • Resumo

    Este trabalho teve como objetivo principal construir um Chatterbot Companheiro Virtual com

    Emoo e traos de Personalidade para acompanhar o tratamento de crianas e adolescentes na

    preveno de problemas cardiovasculares. Com o uso de personalidade e sentimentos, a con-

    versao com o Chatterbot, denominado de Buti, se torna mais realstica e fluente, melhorando

    a interao entre o sistema e os usurios. O trabalho foi desenvolvido no contexto do projeto

    de pesquisa "Construo de um Companheiro Virtual de Aprendizado para um Programa de

    Promoo da Sade Cardiovascular na Infncia e Adolescncia"(CVA-PSCV), financiado pela

    CNPq, em execuo na Unidade de Cardiologia Materno-Fetal (UCMF), no Hospital Portugus

    em Recife, Pernambuco.

    A construo do Buti baseou-se em duas tecnologias: (1) a linguagem de marcao iAIML,

    criada especialmente para dar suporte a implementaes de Chatterbot com intenes associ-

    adas aos dilogos; e (2) o modelo computacional de emoo OCC em conjunto com o modelo

    Big Five de personalidade para Atores Sintticos. A modelagem das emoes e da personal-

    idade foi assistida por duas psiclogas que fazem parte da equipe do projeto maior. Os testes

    realizados com seis crianas que participam do programa revelaram uma boa aceitao do Buti

    baseado em Computao Afetiva como companheiro virtual.

    Por fim, ressaltamos que no foi encontrada na literatura disponvel nenhuma referncia de

    sistema de acompanhamento de pacientes utilizando a tecnologia e os modelos que so usados

    aqui, o que aponta um dos aspectos inovadores deste trabalho.

    Palavras-chave: Chatterbots; Computao Afetiva; Emoo; Personalidade.

    v

  • Abstract

    This study aimed to build a Chatterbot Virtual Companion with Emotion and traces of Person-

    ality to monitor the treatment of children and adolescents for the prevention of cardiovascu-

    lars problems. Using of personality and feelings, the conversation with the Chatterbot, called

    Buti, becomes more realistic and fluent, improving the interaction between the system and

    users. The work was developed in the context of the research project "Construction of a Virtual

    Companion of Learning for a Program of Cardiovascular Health Promotion in Children and

    Adolescents"(VCL-CVHP), financed by CNPq, running at Cardiology Unit of Maternal-Fetal

    (CUMF), at Portuguese Hospital in Recife, Pernambuco.

    The construction of Buti was based on two technologies: (1) the markup language iAIML,

    created especially to support the implementations of Chatterbot with Intentionality associated

    with the dialogues, and (2) the OCC computational model of emotion together with the Big

    Five personality model for Synthetic Actors. The modelling of emotions and personality was

    assisted by two psychologists who are part of the larger project. Tests conducted with six

    children who participate in the program showed a good acceptance of Buti based in Affective

    Computer as virtual companion.

    Finally, we would like to remark that was not found in the literature available none reference

    of system for monitoring of patients using the technology and the models that are used here,

    which appoint one of the innovative aspects of this work.

    Keywords: Intelligent Agents; Chatterbots with Emotion; Affective Computer; Virtual Com-

    panions.

    vi

  • Sumrio

    1 Introduo 1

    2 Chatterbots 5

    2.1 Tcnicas de Desenvolvimento de Chatterbots 6

    2.1.1 Casamento de Padro 7

    2.1.2 Outras tcnicas de implementao de Chatterbots 14

    2.2 Estudo Comparativo 20

    2.3 Agentes Conversacionais Incorporados 21

    2.4 Aplicaes de Chatterbots 23

    2.5 Consideraes Finais 28

    3 Computao Afetiva 30

    3.1 Teorias Psicolgicas 30

    3.1.1 Personalidade e Emoo 31

    3.1.2 Modelos de Personalidade 32

    3.1.3 Modelo de Emoo OCC 35

    3.2 Aplicaes de Modelos de Personalidade e Emoo em Chatterbots 38

    3.2.1 Personalidade 38

    3.2.2 Emoo 39

    3.3 Consideraes Finais 41

    4 Um Modelo de Computao Afetiva para Chatterbots 42

    4.1 A Linguagem AIML 43

    4.1.1 iAIML - AIML com Inteno 44

    4.2 Um Modelo de Emoo para Chatterbots em iAIML 46

    vii

  • SUMRIO viii

    4.2.1 Modelagem do Sistema 47

    4.2.2 Detalhes de Implementao 54

    4.2.3 Arquitetura 57

    4.3 Consideraes Finais 59

    5 Prottipo e Testes 60

    5.1 O Projeto do Clube do Corao 60

    5.2 Estruturao do Buti 62

    5.2.1 Emoes do Buti 62

    5.2.2 Design do Buti 64

    5.2.3 Emoes no Contexto do Buti 65

    5.2.4 Personalidade e Emoo no Buti 66

    5.2.5 Etapas especficas do escopo do Buti 67

    5.3 Testes do Sistema 69

    5.3.1 Anlise dos Resultados 70

    5.4 Consideraes Finais 71

    6 Concluso 72

    Referncias Bibliogrficas 74

    Apndices 84

    A Banco de Dados do Projeto 85

    B Mapeamento das intees propostas por [NB05] com as emoes 87

    C Parte da Ontologia de Vida Saudvel - Contexto Nutrio 96

    D Termo de Consentimento Livre e Esclarecido 98

    E Questionrio de testes realizado pelas Psiclogas do Projeto 101

  • Lista de Figuras

    2.1 Conversa sobre cime com o chatbot ELIZA 8

    2.2 Exemplo de fluxo de processamento em ELIZA [O+05]. 9

    2.3 Trecho de conversa com PARRY 11

    2.4 Interface do rob de conversao A.L.I.C.E. 12

    2.5 Trecho de um dilogo com ALICE 13

    2.6 Trecho da conversa com JULIA sobre Pets 15

    2.7 Conversa com MegaHAL 16

    2.8 Conversa com chatbot Barry que utiliza a tecnologia JFRED. 17

    2.9 Ultra HAL funcionando como agenda de compromissos. 18

    2.10 Chatterbot com a tecnologia Jabberwacky 19

    2.11 Exemplo de Agente Conversacional Incorporado 22

    2.12 Sanelma: Chatterbot que auxilia na venda de obras de arte. 24

    2.13 Close-up Se7e Zoom - chatbot que conserva sobre assuntos diversos. 25

    2.14 Ambiente inteligente de aprendizado com auxilio do VICTOR. 27

    2.15 Rob Ed conversando sobre modificaes no meio ambiente. 28

    3.1 Modelo OCC adaptado. 36

    3.2 Arquitetura Persona-AIML [G+04]. 39

    3.3 Apresentao normal e com a utilizao de MPML. 40

    4.1 Exemplo TAGs bsicas de AIML. 43

    4.2 Casamento de entrada do usurio por meio de caracteres especiais. 44

    4.3 Emoes com tipos de variao de intensidade Refinada (Orgulho) e Bruta

    (Tristeza). 49

    ix

  • LISTA DE FIGURAS x

    4.4 TAG , responsvel por fornecer as informaes para o processa-

    mento da emoo. 56

    4.5 Arquitetura para Chatterbots com Computao Afetiva. 57

    5.1 Expresses de algumas emoes do Buti. 64

  • Lista de Quadros

    2.1 Avaliao das diferentes tecnologias para implementao de chatbots. 21

    3.1 Lista dos traos do modelo Big Five, adaptada de [JOH90]. 34

    4.1 Mapeamento intenes do dilogo com emoo. 51

    4.2 Influncia nas emoes dos traos fortes da dimenso Extroverso (indivduo

    extrovertido). 52

    5.1 Seleo das emoes para utilizao na implementao do projeto. 63

    5.2 Mapeamento do grupo de intenes do contexto especfico com as emoes. 65

    5.3 Mapeamento do grupo de intenes do contexto especfico com as emoes. 67

    xi

  • CAPTULO 1

    Introduo

    A publicao do artigo "Computing Machinery and Intelligence"[TUR50] incentivou estudos

    sobre a natureza e a estrutura da comunicao realizada por humanos dentro da rea de In-

    teligncia Artificial. Nesse artigo, [TUR50] discute se uma mquina pode pensar e, para isso,

    determina que um programa deve ser considerado inteligente se um entrevistador no con-

    seguir distinguir se uma mquina que esta sendo entrevistada ou um ser humano ("Teste de

    Turing"ou "Imitation Game"). Apesar de vrias crticas ao teste proposto por Turing, houve

    um grande desenvolvimento de sistemas de processamento de linguagem natural na busca da

    resoluo do problema.

    O primeiro sistema de sucesso que simulava uma conversa em linguagem natural foi ELIZA

    [WEI66]. Esse sistema abriu caminho para o desenvolvimento de "mquinas de dilogos"ou

    "Chatterbots"com diversos objetivos em vrias reas de aplicao. Tais sistemas ganharam

    fora com a disseminao da Internet. Na Web, podemos encontrar Chatterbots em salas de

    bate-papo (como IRCBots, utilizados no software IRC Internet Relay Chat), em lojas on-line

    para auxiliar os consumidores, tutores em sistemas de ensino a distncia, FAQs (Frequentely

    Asqued Questions - perguntas mais freqentes), busca na WEB, etc. [L+03]

    A WEB 2.0, apesar de ser um apanhado de tecnologias que j eram utilizadas mundialmente

    na rede h cerca de 10 anos [PER07], vem modificando a maneira de interao e proporcio-

    nando uma maior liberdade para os usurios criarem e obterem informao de maneira mais

    dinmica e cmoda [NEP07]. Neste contexto, os Chatterbots podem ser vistos como um meio

    de obteno de informao que complementa ou substitui outras formas de acesso [INS07].

    Apesar dos Chatterbots j serem apontados como uma alternativa aos sistemas computa-

    cionais convencionais[SBG03], pode-se observar a necessidade de aprimorar as tcnicas de

    interao entre os usurios e o sistema. Uma vez que a interao entre o usurio e o Chatterbot

    realizada por meio de dilogos (escritos, em sua maioria), as melhorias vislumbradas devem

    1

  • CAPTULO 1 INTRODUO 2

    levar em considerao a experincia humana em tal atividade.

    Segundo [AZE06], um melhor desempenho nesse tipo de comunicao alcanado a partir

    do contato com pensamentos e sentimentos dos debatedores, os quais, se bem gerenciados,

    proporcionam maior harmonia e compreenso do dilogo. Assim, um aumento significativo de

    realismo nos dilogos pode ser alcanado quando o chatterbot capaz de demonstrar traos de

    personalidade e/ou emoes durante a interao e proporcionar um maior engajamento com o

    usurio.

    Nesse contexto, a realizao de um estudo na rea de Computao Afetiva de modelos

    computacionais de personalidade e emoo para aplicao em sistemas de conversao

    inteligentes o primeiro passo para se obter uma melhor relao entre o sistema e o usurio,

    tornando a interao mais fluente e prazerosa. Essas caractersticas so essenciais em apli-

    caes de Chatterbots Companheiros Virtuais de Aprendizado, uma vez que a qualidade do

    dilogo causa um forte impacto no aprendizado guiado pelo agente.

    Trabalho Realizado

    Este trabalho de mestrado teve por objetivo principal desenvolver um modelo de Com-

    putao Afetiva para ser utilizado em Chatterbots, a fim de tornar mais natural e fluente a sua

    comunicao com o usurio. A criao do modelo proposto foi precedida por um estudo de-

    talhado sobre tecnologias para construo de Chatterbots na Web, bem como de modelos de

    personalidade e emoo da Psicologia, e suas adaptaes Computao Afetiva, que trabalha

    com modelos mais restritos.

    Utilizamos a linguagem AIML[WAL07d] como base para construo do nosso modelo1,

    por ser de fcil uso e extensvel, possibilitando a insero de modelos de personalidade

    e emoo. De fato, utilizamos uma extenso da linguagem padro, a iAIML (intentional

    AIML)[NEV05], que mantm todas as qualidades da AIML original, e ainda capaz de lidar

    com caractersticas lingsticas do dilogo, como a "inteno"do falante, controlando a partir

    da a coeso local e coerncia global do dilogo.

    1AIML a linguagem mais utilizada atualmente na construo de chatterbots.

  • CAPTULO 1 INTRODUO 3

    No que tange os modelos computacionais de personalidade e emoo, nossa investigao

    identificou o modelo de emoo OCC[OCC88] e o modelo de personalidade Big Five[SG98]

    como consenso para a construo de agentes inteligentes, j tendo sido utilizados em sistemas

    de conversao. Assim, nosso modelo de Computao Afetiva integrou iAIML traos de

    personalidade usando o modelo Big Five, e emoo com base no modelo OCC. Nosso objetivo

    foi favorecer ao mximo a possibilidade de dilogos naturais e fluentes com Chatterbots.

    O estudo de caso foi desenvolvido dentro do contexto de um projeto colaborativo de

    pesquisa entre o CIn-UFPE e a Unidade de Cardiologia Materno-Fetal (UCMF) do Centro

    Mdico Real Portugus (Recife)2. Esse projeto visa dar suporte na preveno e no tratamento

    de problemas cardiovasculares em crianas e adolescentes. Como parte desse projeto, surgiu o

    Clube do Corao3, em cujo site se encontra o Buti, nosso Chatterbot Companheiro Virtual de

    Acompanhamento (CVA) para acompanhar o tratamento de crianas e adolescentes atendidas

    pela Clnica. Salientamos que a equipe de mdicos e psiclogos ligados ao projeto participou

    ativamente da escolha das emoes e dos comportamentos do Buti. Tambm auxiliaram na

    criao dos dilogos profissionais de nutrio e educao fsica participantes do projeto.

    Testes qualitativos realizados com 6 usurios (entre 6 e 12 anos de idade) apontaram que

    o Buti teve uma boa aceitao como CVA. Os usurios tambm foram capazes de identificar

    mudanas de emoo do chatterbot durante os dilogos e afirmaram que o mesmo transmitiu

    vrios conhecimentos sobre assuntos como sade, esportes, alimentao, entre outros.

    Como principais contribuies deste trabalho, podemos citar: a adaptao de modelos

    psicolgicos de personalidade e emoo para modelos computacionais com auxlio de

    profissionais da rea de psicologia; a criao de um modelo de Computao Afetiva para

    Chatterbots com emoo e personalidade agregadas a um tratamento lingstico de inteno

    (para proporcionar melhor desempenho durante o dilogo); a implementao de um prottipo

    utilizando o modelo proposto; a criao de estratgias para manter dilogos com Chatterbots

    tendo como pblico-alvo crianas sob tratamento mdico.

    2CVA-PSCV: "Construo de um Companheiro Virtual de Aprendizado para um Programa de Promoo da

    Sade Cardiovascular na Infncia e Adolescncia"financiado pelo RHAE-CNPq, e coordenado pela Dra. Sandra

    Mattos3http://www.clubedocoracao.net

  • CAPTULO 1 INTRODUO 4

    Estrutura da Dissertao

    Este trabalho foi organizado para conduzir o leitor desde a contextualizao do problema

    at um estudo mais aprofundado sobre o tema de Chatterbots e modelos Psicolgicos. Com

    esse objetivo, a dissertao encontra-se organizada nos seguintes captulos:

    Captulo 2 - apresenta um levantamento sobre a origem dos sistemas de conversao, suas

    caractersticas, os paradigmas de construo e aplicaes. Por meio deste levantamento,

    foram escolhidas as tcnicas utilizadas neste projeto.

    Captulo 3 - so apresentadas teorias de Psicologia que fornecem suporte para criao de

    modelos computacionais de personalidade e emoo, bem como os modelos computa-

    cionais em si. Discute-se tambm o papel que esses modelos computacionais desempen-

    ham nos sistemas em que so utilizados. So ainda expostos exemplos de sistemas que

    utilizam os modelos discutidos para uso neste trabalho.

    Captulo 4 - apresenta, em detalhes, todo processo de desenvolvimento do modelo pro-

    posto, com foco no processo de estruturao dos modelos de emoo e personalidade

    para uso no sistema. So mostrados detalhes da implementao do prottipo, incluindo

    a arquitetura utilizada no seu desenvolvimento.

    Captulo 5 - apresenta o estudo de caso com o Chatterbot BUTI, ressaltando as adaptaes

    realizadas no modelo geral para a implementao desse prottipo. E, por meio de testes

    com o prottipo, so apresentados os resultados para validao do sistema.

    Captulo 6 - so apresentadas as contribuies e concluses das atividades desenvolvidas

    durante o projeto, bem como a previso de trabalhos futuros.

  • CAPTULO 2

    Chatterbots

    Alan Turing [TUR50], no artigo "Computing Machinery and Intelligence", discute a possibil-

    idade de uma mquina pensar. Como forma de avaliar a "inteligncia"da mquina, o autor

    prope um teste simples: caso um entrevistador humano no consiga distinguir se est dialo-

    gando com uma mquina ou uma pessoa, ento a mquina deve ser considerada inteligente.

    Esta forma de avaliao denominada de "Teste de Turing"(no original, "Imitation Game").

    Apesar das vrias crticas ao teste proposto por Turing (e.g., [SEA80] por meio da teoria da

    "Sala Chinesa"), inmeros sistemas de dilogo foram desenvolvidos tendo por objetivo "passar

    no Teste de Turing". Tais sistemas so atualmente conhecidos como Chatterbots (ou Chatbots

    - robots de dilogo), utilizam tcnicas variadas de Processamento de Linguagem Natural e

    Inteligncia Artificial na sua construo.

    O primeiro Chatterbot registrado na literatura foi ELIZA [WEI66]. Com ele, Weizenbaum

    demonstrou como um simples programa de computador poderia jogar o "Imitation Game" com

    sucesso apenas recorrendo a alguns "truques", como responder a uma pergunta com outra per-

    gunta ELIZA considerado o primeiro passo para a grande difuso de sistemas de robs de

    conversao [NB05, ZDR00].

    At o momento, nenhum sistema conseguiu passar irrestritamente no teste de Turing. As-

    sim sendo, o foco atual desses sistemas simular um dilogo com um objetivo de enganar

    temporariamente um humano, levando-o a pensar que est conversando com outra pessoa e no

    com uma mquina [AJC01]. Periodicamente, ocorrem competies para testar o desempenho

    dos robs (e.g., Loebner Prize1 e ChatterBox Challenge2). O Chatterbot que conseguir enganar

    os juzes por mais tempo leva o prmio.

    Com a difuso da Web, esses sistemas passaram a ser utilizados em diversas aplicaes,

    1http://www.loebner.net/Prizef/loebner-prize.html2http://www.chatterboxchallenge.com/

    5

  • 2.1 TCNICAS DE DESENVOLVIMENTO DE CHATTERBOTS 6

    tais como suporte ao consumidor (comrcio eletrnico), ensino a distncia, marketing, etc. Isso

    modificou o conceito original desses robs de conversao, que passaram a oferecer uma difer-

    ente forma de comunicao com sistemas de informao, podendo complementar ou substituir

    outras formas de acesso informao [INS07].

    Neste captulo, apresentamos algumas aplicaes de Chatterbots (seo 2.4), assim como

    tcnicas utilizadas na sua construo.

    2.1 Tcnicas de Desenvolvimento de Chatterbots

    Historicamente, os estudos na rea de Inteligncia Artificial (IA) so divididos em dois ramos

    principais distintos[WHI03]: a IA "forte", que lida com a criao de tcnicas e mtodos bus-

    cando a verdadeira resoluo de problemas; e a IA "fraca", cujo objetivo a mera simulao

    do processo de soluo.

    Para alguns autores, e.g., [WHI03, LTK05], Chatterbots so um dos mais proeminentes

    exemplos de IA "fraca", por apenas simularem a conversao com um humano, por meio de

    um banco de respostas para as vrias entradas inseridas pelo interlocutor. Esta uma das

    maiores crticas feitas a algumas tcnicas utilizadas para implementao de Chatterbots. Est

    no foco deste trabalho aprofundar-se nesta discusso, uma vez que vrios autores possuem

    idias divergentes.

    Nesta seo, sero apresentadas tcnicas utilizadas no desenvolvimento de chatterbots que

    obtiveram boas contribuies para o avano dos estudos na rea. [NEV05] prope uma classifi-

    cao das tcnicas utilizadas para implementao de chatterbots em trs "geraes": a primeira

    baseada em tcnicas simples de casamento de padro (e.g., ELIZA) [WEI66]; a segunda in-

    clui tcnicas de Inteligncia Artificial [MAU94]; e a terceira gerao emprega tcnicas mais

    complexas de casamento de padro utilizando linguagens de marcao de texto, como o AIML

    (Artificial Intelligence Markup Language) [WAL07d].

    Neste trabalho, contudo, no utilizaremos tal classificao, uma vez que entendemos que as

    linguagens de marcao tambm podem ser vistas como uma tcnica de casamento de padres.

  • 2.1 TCNICAS DE DESENVOLVIMENTO DE CHATTERBOTS 7

    Assim, veremos inicialmente o Casamento de padro, na seo 2.1.1, e as outras tcnicas na

    seo 2.1.2. Para direcionar este estudo, tomamos por base os sistemas que obtiveram bons

    resultados no concurso Loebner Prize, por tratar-se de uma das principais competies de de-

    sempenho na rea de robs de conversao.

    2.1.1 Casamento de Padro

    A tcnica de casamento de padres pode ser definida como uma relao (casamento) entre

    um conjunto de palavras-chaves pr-selecionadas e um grupo de respostas (padres) ligadas

    quelas palavras-chaves, sendo respeitada a ordem das palavras-chaves e uma prioridade entre

    as respostas [CW02].

    Podemos identificar duas vertentes de utilizao dessa tcnica em chatterbots. A primeira

    vertente utiliza algoritmos simples de casamento de padres, tendo como principais represen-

    tantes os chatbots ELIZA [WEI66] e PARRY [COL75]. A segunda vertente, apesar de ser

    simples como a anterior, utiliza uma linguagem prpria de marcao de texto, o AIML, sendo

    ALICE [WAL07c] sua principal representante.

    Casamento de Padro Simples (ELIZA e PARRY)

    Turing previu que 50 anos depois do lanamento do seu artigo de maior repercusso

    [TUR50], i.e., por volta do ano 2000, um computador com inteligncia seria capaz de ter um

    desempenho to bom no Imitation Game que um entrevistador teria somente 70% de chance de

    identificar se ou no uma mquina que est sendo entrevistada. Aproximadamente 16 anos

    aps a publicao do artigo, uma parte desta previso foi confirmada com a criao do primeiro

    sistema que simulava uma conversa em linguagem natural, ELIZA [WEI66]. Contudo, at a

    finalizao deste trabalho de mestrado, no conseguimos identificar nenhum sistema que tenha

    conseguido atingir as expectativas previstas por Turing.

    ELIZA [WEI66], como foi denominado pelo seu criador Joseph Weinzenbaum, um dos

    mais antigos e populares sistemas de inteligncia artificial do mundo, representando o marco

  • 2.1 TCNICAS DE DESENVOLVIMENTO DE CHATTERBOTS 8

    inicial no desenvolvimento de mquinas de conversao [AJC01]. Alm disso, este um dos

    sistemas mais estudados da histria, com tradues para vrias lnguas, e que mesmo 40 anos

    aps seu lanamento ainda encontra-se disponvel para conversao.

    Este chatbot foi criado para simular um psicanalista que utiliza o princpio Rogeri-

    ano[ROG51]. Esse mtodo centraliza a terapia no paciente, estimulando-o a falar sobre si a

    maior parte do tratamento. Aqui, o terapeuta responde as perguntas do paciente com outras

    perguntas, por vezes utilizando partes das frases dita pelo paciente anteriormente. A pergunta

    em forma de resumo do que foi falado faz com que o paciente seja estimulado a continuar con-

    versando e expondo mais os sentimentos. Neste caso, o terapeuta desenvolve um trabalho de

    "direcionador"da conversa, no fazendo ponderaes ou apresentando explicaes ao paciente.

    Esse mtodo de simples implementao, uma vez que o chatterbot no precisa responder aos

    questionamentos do usurio, no precisando ter conhecimento sobre relacionamento entre pes-

    soas ou demais assuntos que poderiam ser citados pelo paciente. Por exemplo, ao escrevermos

    para ELIZA "Eu quero ser uma pessoa melhor", ela poder responder algo como "Por qu voc

    quer ser uma pessoa melhor?".

    A Figura 2.1 apresenta um trecho de dilogo realizado com ELIZA3.

    Figura 2.1 Conversa sobre cime com o chatbot ELIZA

    3http://www-ai.ijs.si/eliza

  • 2.1 TCNICAS DE DESENVOLVIMENTO DE CHATTERBOTS 9

    [MOU03] observa que ELIZA, com apenas 204 linhas de cdigo, consegue realizar a sim-

    ulao de dilogos coerentes.

    Este chatterbot possui um mdulo de casamento de padres e outro de regras gramaticais.

    Ao receber uma sentena digitada pelo usurio, o sistema identifica as palavras mais impor-

    tantes e, depois, aplica uma regra de modificao na sentena classificando a importncia das

    palavras de acordo com um mini-contexto (sujeito, verbo, etc.). Em seguida, compara a sen-

    tena modificada com uma lista de padres (decomposio). Ao encontrar o padro que mais se

    adqua quela sentena, realiza uma anlise com base em regras gramaticais de decomposio

    e monta as respostas a partir de uma lista de templates (modelos de respostas), com regras de

    reconstruo de frases associadas s regras de decomposio.

    A Figura 2.2 apresenta um exemplo do funcionamento do algoritmo [O+05]. Neste exem-

    plo, o usurio digitou (a sentena "I remeber you") a sentena "I remember you"que continha

    a palavra "remember"(verbo "lembrar"). Depois, foi selecionado o padro de decomposio "*

    i remember *"("* eu lembro *"). Este padro possui vrias respostas para essa entrada, como

    pode ser visto na figura.

    Figura 2.2 Exemplo de fluxo de processamento em ELIZA [O+05].

  • 2.1 TCNICAS DE DESENVOLVIMENTO DE CHATTERBOTS 10

    As respostas podem utilizar palavras que aparecem na sentena digitada pelo usurio para

    preencher espaos (slots) representados aqui como "(2)". Neste exemplo, seria a palavra que

    aparece depois da palavra "remember"(possivelmente, um pronome ou nome prprio), podendo

    formar uma resposta como "Why do you recollect me just now?" ("Por qu voc recorda-se de

    mim justo agora?").

    A Figura 2.2 apresenta um exemplo do funcionamento do algoritmo [O+05]. Neste exem-

    plo, o usurio digitou uma frase que continha a palavra "remember"(verbo "lembrar") o qual

    foi colocada com prioridade 5. Depois foi selecionado o padro de decomposio "* i remem-

    ber *"("* eu lembro *"). Este padro possui vrias respostas para essa entrada. As respostas

    podem fazer o uso de uma palavra que foi digitada pelo usurio (2), neste caso a palavra que

    se encontra depois da palavra "remember"(possivelmente, um pronome), podendo forma uma

    resposta como "Why do you recollect me just now?" ("Por qu voc recorda-se de mim justo

    agora?").

    Em contrapartida, a simplicidade do sistema ELIZA possui algumas limitaes. Por no

    possuir memria, ela no consegue lembrar o que foi discutido anteriormente, portanto, no

    possui controle global da conversa. Isto significa que, a qualquer momento, o usurio pode

    repetir um trecho de dilogo j realizado, ou fazer um cumprimento, como "Ol", e obter

    resposta sem nenhum questionamento do porqu de se estar realizando um cumprimento no

    meio da conversa.

    Outra limitao dessa abordagem que algumas respostas construdas podem desanimar o

    usurio, uma vez que a modificao da entrada pode gerar dilogos um tanto confusos. Por

    exemplo, ao enviar a entrada "Im just fine thanks"("Eu estou bem obrigado"), o sistema pode

    retornar algo como: "How long have you been just fine thanks?"("H quanto tempo voc esteve

    bem obrigado?").

    Contudo, mesmo com essas limitaes, os chatterbots THE PC THERAPIST [SCA00] e

    HEX [DON00] baseados na arquitetura de ELIZA, no perodo de 1991 a 1996, ganharam cinco

    dos seis prmios Loebner aos quais concorreram.

    Outro sistema de sucesso que utiliza casamento de padro com tcnicas parecidas com as

    utilizadas por ELIZA o PARRY [COL75]. Com um contexto diferente do seu antecessor,

  • 2.1 TCNICAS DE DESENVOLVIMENTO DE CHATTERBOTS 11

    PARRY tem o objetivo de simular o comportamento de uma pessoa paranica, isto , uma pes-

    soa que possui uma psicose caracterizada por idias de perseguio, reivindicao e grandeza,

    as quais se desenvolvem progressivamente. A essncia de PARRY torna as respostas plausveis

    de forma a aparentar ter sempre algo a dizer e sempre deixando um ar de mistrio e parania,

    isto , trechos de conversa confusos podem ser interpretados como um distrbio.

    O algoritmo de PARRY no muito diferente do utilizado por ELIZA. Ele no sabe muito

    sobre o mundo, no apresenta algoritmos para anlise sinttica e trabalha com um conjunto de

    padres. A evoluo apresentada por este trabalho com a utilizao de um modelo emocional

    que simula emoes como medo, raiva e desconfiana. Essas emoes so identificadas por

    valores numricos em que a intensidade vria de acordo com o que PARRY "pensa"a respeito

    do assunto que esta sendo discutido [GAL03].

    Outra diferena entre PARRY e ELIZA que, nos casos em que o casamento de padres

    no retorna nenhum resultado, o sistema utiliza respostas com temas especficos de uma base

    de conhecimento, como por exemplo, falar sobre "mfia", como visto na Figura 2.3 extrado

    do artigo original do sistema [COL75].

    Figura 2.3 Trecho de conversa com PARRY

    Para validar o sistema, Colby criou a sua prpria verso do "Imitation Game", convidando

    psiquiatras para conversar com pessoas paranicas e com PARRY a fim de descobrir quem

    era o rob. O resultado do teste comprovou o bom desempenho de PARRY, uma vez que os

  • 2.1 TCNICAS DE DESENVOLVIMENTO DE CHATTERBOTS 12

    psiquiatras no conseguiram distinguir quais eram os humanos e qual era o sistema.

    Casamento de Padro com Linguagem de Marcao (ALICE)

    A.L.I.C.E. (Artificial Linguistic Internet Computer Entity) [WAL95] um dos Chatterbots

    mais populares da atualidade. Esse sucesso devido ao sistema ser um dos primeiros a apre-

    sentar uma boa interface grfica e por possuir uma vasta base de dilogos, contando com um

    bom poder de comunicao (Figura 2.4 obtida no site http://www.alicebot.org). Diferente de

    ELIZA e PARRY, esse sistema fornece vrias informaes pessoais, alm de atuar como uma

    secretria que lembra as pessoas dos seus compromissos.

    Figura 2.4 Interface do rob de conversao A.L.I.C.E.

    O sistema utiliza para a especificao da base de dilogos a linguagem de marcao AIML

    (Artificial Intelligence Markup Language) [WAL07a], a qual considerada uma extenso de

    XML (eXtensible Markup Language), herdando toda a padronizao da linguagem pai, que

    formada por TAGs [B+06]. Na Figura 2.5 pode-se verificar um trecho do log de um dilogo

  • 2.1 TCNICAS DE DESENVOLVIMENTO DE CHATTERBOTS 13

    com ALICE durante os teste do Prmio Loebner de 20014, ano em que o sistema foi o vencedor

    da competio.

    Figura 2.5 Trecho de um dilogo com ALICE

    Alm das caractersticas j citadas, o sucesso de ALICE em parte conseguido pela popu-

    laridade da linguagem AIML, que possuir uma sintaxe bem simples, e tambm pela variedade

    de interpretadores que podem ser encontrados para essa linguagem [WAL07b]. Na pgina da

    ALICE Foundation5 encontram-se exemplos de interpretadores em LISP, JAVA, PHP, PERL,

    .NET, dentre outros.

    As caractersticas do AIML favoreceram a escolha desta linguagem para utilizao neste

    projeto de mestrado. [AJC01] cita o AIML e o interpretador de ALICE como uma interessante

    ferramenta para investigar a dinmica social que envolve as relaes humano-computador, e

    so utilizadas para diversos projetos na Internet, sendo alguns disponibilizados no servidor

    4http://www.loebner.net/Prizef/2001_Contest/Richard_Wallace.txt5http://www.alicebot.org

  • 2.1 TCNICAS DE DESENVOLVIMENTO DE CHATTERBOTS 14

    para hospedagens de chatbots PandoraBots6.

    2.1.2 Outras tcnicas de implementao de Chatterbots

    Apesar dos bons resultados apresentados pelas tcnicas de casamento de padro, alguns

    pesquisadores se mostraram insatisfeitos com os resultados obtidos. Movidos pela grande

    demanda de robs de conversao, impulsionada pelo crescimento da Web, comearam a

    buscar outras tcnicas para essa aplicao. Veremos aqui alguns chatterbots que obtiveram

    destaque, juntamente com as tcnicas inovadoras utilizadas em suas implementaes.

    Redes de Ativao e Modelos de Markov (JULIA e MegaHAL)

    Um dos sistemas a utilizar uma tcnica diferente das discutidas que obteve bons resultados

    foi JULIA [MAU94]. Ela foi criada por Michael Mauldin para atuar como um personagem em

    um TinyMUD (Multi-User Dimension ou Multi-User Dungeons)[CUR92]7, com o objetivo de

    auxiliar outros jogadores, fornecendo dicas e mensagens do banco de dados do mundo virtual.

    Diferente dos outros chatbots, JULIA possui bastante conhecimento sobre o mundo onde atua,

    uma vez que este tem um escopo reduzido, fornecendo um nvel de conversao aceitvel sobre

    o assunto. O fato de todas as aes no jogo serem realizadas por meio de texto escrito facilita

    a obteno de conhecimento pelo sistema, podendo auxiliar os jogadores na tomada de deciso

    [FON97].

    Outra caracterstica interessante encontrada em JULIA a incorporao na sua base de

    conhecimento de uma personalidade feminina, fazendo com que, em determinados perodos do

    ms, o bot reclame que esteja sofrendo de tenso pr-menstrual (TPM), o que pode alterar o

    seu humor.

    Julia possui duas verses distintas. A verso original baseada em um conjunto de regras

    6http://www.pandorabots.com7TinyMUD um mundo virtual de um jogo em que vrios usurios jogando em rede controlam personagens

    em ambientes de interfaces de texto. Este mundo formado por salas, passagens por onde os usurios podem

    trafegar, e por objetos (armas, dinheiro, comida, etc.) com as mais diversas finalidades

  • 2.1 TCNICAS DE DESENVOLVIMENTO DE CHATTERBOTS 15

    de casamento de padres simples controladas por ativao baseadas em respostas, tcnica de-

    nominada por Mauldin de Redes Conversacionais. Em uma Rede Conversacional, cada n

    representado por um conjunto de padres, uma resposta simples, uma lista de ns estimulados e

    outros inibidos. Ao receber uma entrada do usurio, o sistema avalia qual padro ser acionado

    e os ns que contm este padro sero estimulados, sendo o de maior nvel de excitao sele-

    cionado, retornando a resposta ao usurio.

    Para concorrer ao Prmio Loebner de 1992 e 1993, o sistema sofreu algumas modificaes.

    Uma das mudanas foi a incluso de contexto, que no primeiro ano teve como foco o esporte

    hockey e, no segundo ano, teve como foco animais de estimao (Pets). A Figura 2.6 traz um

    trecho da participao da JULIA na competio de 1993, retirada de [CHE96].

    Figura 2.6 Trecho da conversa com JULIA sobre Pets

    Alm da incluso de contexto para a participao na competio, a estrutura do sistema foi

    modificada com a insero de um mtodo que utiliza um modelo de Markov para simular o

    atraso no intervalo de digitao de sentenas. Esse atraso tem o objetivo de aparentar que um

    humano que esta "digitando"a resposta e no que ela j est pronta na base de dilogos de um

    Chatterbot.

  • 2.1 TCNICAS DE DESENVOLVIMENTO DE CHATTERBOTS 16

    Com uma utilizao diferenciada de cadeias de Markov, [HUT98] criou MegaHAL. Esse

    sistema constri um modelo de linguagem baseado nas informaes obtidas durante a conversa

    com um usurio, e por meio deste modelo escolhe a melhor resposta. A Figura 2.7 apresenta

    um trecho de dilogo retirado do artigo original do sistema [HUT98].

    Figura 2.7 Conversa com MegaHAL

    Apesar de terem utilizado uma tcnica inovadora na sua rea, JULIA e MegaHAL no

    ganharam o prmio Loebner quando concorreram, ficando com o terceiro lugar.

    Lgica Difusa (JFRED - Barry e Alfred)

    Outra tecnologia nesse ramo que pode ser citada a FRED (Functional Response Emulation

    Devices) [CGN97]. Essa tecnologia foi utilizada para a criao da ferramenta JFRED, que

    uma API para construo de chatterbots para Web utilizando a linguagem Java. A base

    de conhecimento dos sistemas criados com o JFRED utiliza a linguagem JRL (Java Ruleset

    Language), a qual baseada em lgica difusa (fuzzy logic) [KOS97] para construo de um

    conjunto de regras para mapear palavras-chave e expresses regulares, a serem utilizadas no

    casamento de padro das sentenas do usurio.

  • 2.1 TCNICAS DE DESENVOLVIMENTO DE CHATTERBOTS 17

    Figura 2.8 Conversa com chatbot Barry que utiliza a tecnologia JFRED.

    Com essa tecnologia foram criados dois chatterbots que concorreram ao Prmio Loebner,

    Barry DeFacto e Alfred. Barry DeFacto conseguiu somente a quarta colocao no ano de

    1997. O chatbot Albert teve um melhor desempenho ganhando o prmio nos anos de 1998 e

    1999. A Figura 2.8 mostra um trecho da conversa de Barry DeFacto durante o concurso de

    1997 [CGN97].

    Aprendizagem Automtica (Ultra HAL e Joan)

    Os ltimos ganhadores do Prmio Loebner at a publicao deste trabalho foram o Joan8

    (2005 e 2006) e Ultra HAL9 (2007). Contudo, nenhum deles deixa o cdigo disponvel para

    que possa ser realizada uma boa avaliao da tecnologia utilizada. Vale salientar que o Ultra

    HAL no tem nenhuma ligao com o chatterbot MegaHAL, que foi discutido anteriormente10.

    [GIL07] aponta que a tecnologia utilizada pela empresa Zabaware no Ultra HAL baseada

    em auto-aprendizagem a partir da interao com o usurio, isto , caso o usurio converse com

    o sistema sobre informaes relevantes e teis, o chatbot fica com mais "entendido"sobre o

    8http://www.icogno.com/joan.html9http://www.zabaware.com/Webhal

    10O nome HAL que ambos utilizam faz referncia o rob "HAL 9000"do filme 2001: Uma Odissia no Espao

  • 2.1 TCNICAS DE DESENVOLVIMENTO DE CHATTERBOTS 18

    Figura 2.9 Ultra HAL funcionando como agenda de compromissos.

    assunto, tornando-se mais til ao usurio. A Figura 2.9, retirada do site da Zabaware11 ilustra

    a utilizao de Ultra HAL como uma agenda de compromissos.

    Joan utiliza a tecnologia Jabberwacky12, que tem a mesma idia de auto-aprendizagem do

    Ultra HAL. A principal diferena que esta tecnologia utiliza uma base de dados com todas

    as conversas que j teve via Web como "experincia"para lanar a prxima resposta [JOH06].

    Na Figura 2.10 apresentada uma conversa com um dos bots que utilizam a tecnologia Jab-

    11http://www.zabaware.com12http://www.jabberwacky.com

  • 2.1 TCNICAS DE DESENVOLVIMENTO DE CHATTERBOTS 19

    berwacky.

    Figura 2.10 Chatterbot com a tecnologia Jabberwacky

    Uma caracterstica interessante no Jabberwacky que o usurio pode escolher que emoo

    est sentindo no momento como reao a algo que est sendo discutido. Por exemplo, o bot

    pode comear o dilogo afirmando que voc est atrasado, e como resposta o usurio pode

    enviar a emoo de "estar surpreso"ou que "desaprova"o comentrio do bot.

    Raciocnio Baseado em Casos (RBC)

    A empresa Inference (Califrnia, EUA) criou um chatterbot cuja base de conhecimento

    interagia como uma ajuda a central de atendimento ao consumidor [KEO99]. Esse sistema faz

    uso da tcnica de Raciocnio Baseado em Casos (RBC) [KOL93]. Ao receber uma pergunta de

    um consumidor, o sistema realiza uma busca em uma base que contm um conjunto de casos

    passados procura de uma soluo. A resposta baseada nos casos anteriores e possivelmente

  • 2.2 ESTUDO COMPARATIVO 20

    adaptada ao caso atual, na busca para solucionar o problema do consumidor.

    2.2 Estudo Comparativo

    Para melhor avaliar as tecnologias utilizadas para implementao de chatbots citadas nas sees

    anteriores, [GAL03] construiu um quadro comparativo com critrios relevantes para a anlise

    do desempenho desses sistemas. Os critrios utilizados pelo autor foram:

    1. Memria: possibilidade de o sistema armazenar informaes do usurio e do dilogo;

    2. Contexto: capacidade de contextualizao;

    3. Personalidade: utilizao de um modelo de personalidade para a construo da personal-

    idade do sistema;

    4. Portabilidade: possibilidade de utilizao de diferentes linguagens de programao em

    ambientes multi-plataforma;

    5. Propriedade: indica se o cdigo do sistema proprietrio ou livre (em caso de cdigo

    proprietrio, as caractersticas dos sistemas/tecnologias que no puderam ser avaliadas

    esto indicadas pelo sinal "?").

    O Quadro 2.1 foi adaptado do levantamento realizado por [GAL03]. Foram utilizados os

    critrios citados acima, com exceo de Portabilidade (uma vez que somente a tecnologia

    AIML portvel). Alm disso, ao invs de avaliar o modelo de personalidade utilizado, foi

    observado o uso de personalidade ou emoo pelo chatterbot, sendo este critrio denominado

    de Computao Afetiva (C.A.), conceito que ser discutido no captulo 3 deste documento.

    Por meio dessa anlise, pode-se verificar a existncia de implementaes com uso de per-

    sonalidade, sendo que cada uma utiliza um modelo diferente e mais voltado para o contexto

    em que est inserido o chatbot. Contudo, isso demonstra que h possibilidade de adaptao de

    modelos de personalidade e emoo para utilizao nesses sistemas.

  • 2.3 AGENTES CONVERSACIONAIS INCORPORADOS 21

    Quadro 2.1 Avaliao das diferentes tecnologias para implementao de chatbots.

    Chatbot Memria Contexto C.A. Propriedade

    ELIZA No No No Livre

    JULIA No ? Personalidade Proprietrio

    AIML Sim Sim Personalidade Livre

    JFRED Sim Sim No Livre

    Jabberwacky Sim Sim ? Proprietria

    Ultra HAL Sim Sim Personalidade Proprietria

    A tecnologia AIML foi apontada como a melhor ferramenta para desenvolvimento deste

    projeto de mestrado, por possuir caractersticas como memria, possibilidade de contextual-

    izao e por ser de cdigo livre podendo ser utilizada e modificada. Apesar da diversidade de

    tecnologias para construo de chatterbots (citadas na seo 2.1.2), sendo algumas bem mais

    complexas do que o AIML , este obteve resultados expressivos no Prmio Loebner (vencendo

    os anos de 2000, 2001 e 2004), e tem tima aceitao pelos desenvolvedores de chatterbots,

    apresentando no PandoraBots13 mais de 95.000 botmasters14 e 116.000 bots cadastrados no

    servidor, sendo este mais um motivo para utilizao desta tecnologia neste projeto.

    Nas sees seguintes, so detalhadas mais caractersticas de chatterbots que sero utilizados

    neste projeto.

    2.3 Agentes Conversacionais Incorporados

    Quando um dilogo realizado somente pelo meio textual, podem-se perder aspectos impor-

    tantes do discurso, fazendo com que o significado da mensagem seja mal interpretado [JS07].

    Esta afirmao exprime a necessidade da utilizao de mecanismo que auxiliem na interao

    entre o chatterbot e o usurio.

    Para suprir essa necessidade, surge o conceito de Agentes Conversacionais Incorporados

    13Dados retirados do site www.pandorabots.com em: OUT/200714mestres/ projetistas de chatterbots

  • 2.3 AGENTES CONVERSACIONAIS INCORPORADOS 22

    (do ingls, Embodied Conversational Agents). Estes so agentes animados (neste caso, chat-

    bots) que realizam o dilogo por meio de fala, olhar, gestos, entonao e outras modalidades

    no verbais para simular a experincia da conversao face-a-face entre humanos, fazendo com

    que se possa estabelecer uma relao de confiana entre ambas as partes [BC01].

    Figura 2.11 Exemplo de Agente Conversacional Incorporado

    Um exemplo de sistema que utiliza essa tecnologia GRETA [P+05]. Respeitando os

    gestos e expresses faciais, esse sistema foi implementado com detalhes como contraes dos

    msculos da face sendo esses sincronizados com a fala, e outras modalidades de comunicao

    [R+03].

    A SitePal, empresa conveniada ao servidor PandoraBots, oferece mais de 50 modelos per-

    sonalizados de agentes incorporados que utilizam a tecnologia de design para Web Adobe Flash

    e AIML para compor a base de conhecimento. A Figura 2.15 apresenta um exemplo de chatbot

  • 2.4 APLICAES DE CHATTERBOTS 23

    criado no SitePal 15.

    Como o servio prestado pelo SitePal pago, para este projeto ser feito um design uti-

    lizando a mesma tecnologia empregada pela empresa (Adobe Flash) em conjunto com a lin-

    guagem AIML. Mais detalhes sero discutidos posteriormente.

    2.4 Aplicaes de Chatterbots

    A World Wide Web, ou simplesmente Web, teve um papel central no aumento de aplicaes

    com Chatterbots. Esse interesse foi inicialmente impulsionado pelo Comrcio Eletrnico (E-

    Commerce), que apresentava uma demanda significativa por estratgias inovadoras, com o ob-

    jetivo de aumentar as vendas e assegurar a lealdade dos consumidores [ALJ01].

    Com a utilizao comercial dos chatterbots, outras categorias de robs de conversao

    foram surgindo, tais como os bots para entretenimento, busca especializada, guias interativos,

    atendimento ao consumidor, Companheiros Virtuais de Acompanhamento (CVA), entre outros

    [L+03]. Nas sees a seguir so apresentadas algumas das aplicaes citadas.

    E-Commerce

    O comrcio eletrnico vem mudando o paradigma de compra e venda no mundo. O esforo

    feito pelo consumidor para se deslocar de um lugar para outro geograficamente separado

    encurtado para um simples "clique a distncia"de uma loja para a sua concorrente [AP02]. O

    crescimento das vendas on-line um bom incentivo para os consumidores que ainda tm receio

    de realizar esse tipo de negcio. No Brasil, junto com o aumento da quantidade de internautas,

    o nmero de consumidores on-line cresce em um bom ritmo, tanto que a mdia do crescimento

    do faturamento do varejo on-line de aproximadamente 160% por ano [EC07].

    Nesse contexto, as lojas virtuais precisam de interfaces com capacidade de humanizar o

    processo de venda e ganhar a ateno do consumidor, entendendo suas necessidades e dando

    15http://www.sitepal.com/portuguese

  • 2.4 APLICAES DE CHATTERBOTS 24

    suporte durante todo processo da transao. Essa personalizao muito comum na rea do

    comrcio eletrnico, tanto que o usurio explicitamente quer que o site guarde suas preferncias

    para poder servi-lo com mais eficincia no futuro [A+02, GF03]. Algumas dessas necessidades

    foram apontadas no projeto COGITO16 [COG07].

    Este cenrio expe a forma como robs de conversao podem ser utilizados. Sob a tica

    de personalizao, [TS00] criou uma arquitetura baseada no projeto COGITO que extrai in-

    formaes do consumidor por meio de um cadastro e de conversas anteriores (logs) com o

    Chatterbot. Essa arquitetura faz com que a solicitao de buscas por produtos seja mais dire-

    cionada s caractersticas pretendidas pelo cliente, como marca, faixa de preo, etc.

    Ainda na rea de E-commerce, outra aplicabilidade de robs de conversao o de Atendi-

    mento/Suporte ao consumidor. [GIA02] identifica que a maioria das perguntas feitas pelos

    consumidores aos Suportes de Atendimento ao Cliente poderiam ser facilmente respondidas

    por meio da utilizao de uma base de conhecimento. Assim, as empresas que trabalham on-

    line conseguem reduzir os custos e acelerar o processo de atendimento, e esta ao torna-se

    mais humanizada com a participao de Chatterbots.

    Figura 2.12 Sanelma: Chatterbot que auxilia na venda de obras de arte.

    16Projeto da Unio Europia fundado no 5th Framework Programme sob o contrato IST-1999-13347

  • 2.4 APLICAES DE CHATTERBOTS 25

    Um exemplo de aplicao de chatterbots no auxlio a vendas on-line Sanelma [MUM07].

    Sanelma (Figura 2.12) uma pessoa fictcia que fala sobre um museu, provendo informaes

    sobre certas peas de arte e suas caractersticas, tais como valor, procedncia, dvidas sobre o

    autor, etc.

    Entretenimento

    Uma das principais aplicaes de chatterbots tem por objetivo criar robs para diver-

    tir/entreter o usurio. Para realizar essa tarefa, o rob deve possuir vrios atributos que prendam

    a ateno do usurio, tais como traos de personalidade, intenes ou atitudes [AJC01].

    Figura 2.13 Close-up Se7e Zoom - chatbot que conserva sobre assuntos diversos.

    Um sistema que foi bastante difundido nacionalmente foi a Close-up Se7e Zoom17 (Figura

    2.13). Se7e Zoom uma modelo virtual que faz parte de uma campanha publicitria do grupo

    empresarial UNILEVER, cujo objetivo conversar com o usurio sobre moda, sexualidade e

    outros temas diversos.

    17Se7e Zoom recebeu o 5 Prmio de Mdia Estado na categoria "Case de Mdia Digital -

    http://www.inbot.com.br/imprensa/estadao/premio/".

  • 2.4 APLICAES DE CHATTERBOTS 26

    Companheiro Virtual de Acompanhamento

    Para atender a demanda por maior qualificao, acompanhando as exigncias do mercado

    mundial, o sistema capitalista exige que a educao e a difuso do conhecimento sejam real-

    izadas de maneira mais dinmica e eficiente [ALV07]. Como alternativa, indivduos e organiza-

    es esto fazendo uso do Ensino a Distncia (EAD) como ferramenta de educao continuada.

    [AN03] destaca que o EAD uma modalidade de ensino-aprendizagem por meio de suportes

    tecnolgicos digitais e de rede, denominados Ambientes Virtuais de Aprendizagem (AVAs),

    sendo essa empregada como complemento ao ensino presencial, para ensino misto ou comple-

    tamente realizado a distncia.

    Como toda nova tecnologia apresentada para educao, o EAD apresenta vantagens e

    desvantagens. Pode-se citar como vantagens a possibilidade de atingir uma maior audincia,

    possibilita ao aluno escolher as rotas de aprendizagem, compartilhamento de recursos, den-

    tre outras. Como desvantagens, podem ser citadas a impessoalidade do processo pela falta da

    interao educador-aluno, e a dificuldade em lidar com a tecnologia [ALV07].

    Para diminuir o sentimento de isolamento, e tornar o tratamento dados aos estudantes menos

    impessoal, [RN03, WEN87] apud Torreo [TOR05] aponta que o uso de agentes inteligentes,

    implementados por meio de tcnicas de Inteligncia Artificial em conjunto com a Psicolo-

    gia Cognitiva, favorece uma interao mais natural e prxima dos ambientes presenciais entre

    aprendizes e Ambientes Virtuais de Aprendizado.

    Os agentes inteligentes que fazem parte dos AVAs possuem vrias denominaes, como

    agentes pedaggicos, companheiros virtuais de aprendizado (Learning Companions ou guias

    virtuais animados (Guidebots) [DA02]. Neste trabalho ser adotado o termo Companheiro Vir-

    tual de Aprendizado (CVA). A utilizao de Chatterbots como CVAs tende a tornar o ambiente

    mais atraente e dinmico, o que passa a caracterizar esses ambientes como i-learning (do ingls,

    aprendizado inteligente).

    Alguns casos de sucesso do emprego de CVAs que podemos citar so o projeto VICTOR18 e

    18http://victor.cesar.org.br

  • 2.4 APLICAES DE CHATTERBOTS 27

    Figura 2.14 Ambiente inteligente de aprendizado com auxilio do VICTOR.

    o Rob Ed19. O VICTOR (Virtual Intelligent Companion for TutOring and Reflection) (Figura

    2.14) trabalha como um tutor inteligente em um ambiente inteligente de aprendizado para Edu-

    cao em Gerenciamento de Projetos (Project Management Knowledge Learning Environment

    - PMK).

    O Rob Ed (Figura 2.15 faz parte do Programa Nacional de Racionalizao do Uso dos

    Derivados do Petrleo e do Gs Natural (CONPET)20, com o apoio da Empresa de Petrleo

    Brasileiro SA (PETROBRAS). Este chatbot conversa sobre o meio ambiente e as modificaes

    que este sofre. Diferente do VICTOR, o Rob Ed no apresenta um ambiente centralizado de

    aprendizado, fazendo uso de direcionamento do usurio por links para leitura ou comentrios

    sobre algo lido durante a conversa.

    19http://www.inbot.com.br/ed/popup.htm20http://www.conpet.gov.br

  • 2.5 CONSIDERAES FINAIS 28

    Figura 2.15 Rob Ed conversando sobre modificaes no meio ambiente.

    2.5 Consideraes Finais

    Neste captulo foi apresentada a evoluo no desenvolvimento de Chatterbots. Esses sistemas

    passam a ser vistos como uma nova forma de acesso a informaes e no mais como um

    programa capaz de simular um dilogo para enganar temporariamente um humano.

    Mostrou-se que existem vrias tcnicas para construo de robs de conversao, tais como

    casamento de padro, lgica difusa, aprendizagem automtica, dentre outras. Apesar de exis-

    tirem tcnicas mais complexas e que apresentam um bom desempenho, a tcnica de casamento

    de padro, mais especificamente a que possui a linguagem de marcao AIML, oferece um bom

    desempenho e a mais utilizada no desenvolvimento desse tipo de sistema. Essa afirmao foi

    reforada por meio de um estudo comparativo do AIML com as demais tcnicas apresentando

    as melhores caractersticas para serem utilizadas nesse projeto.

    Observou-se a necessidade do uso da tcnica de Agentes Conversacionais Incorporados,

    os quais visam adicionar aspectos no verbais ao dilogo para aumentar o desempenho na

    interao entre o Chatterbot e o usurio. A principal necessidade da utilizao dessa tcnica

    proporcionar a estrutura necessria para expresso de emoes de forma no textual pelo

  • 2.5 CONSIDERAES FINAIS 29

    sistema.

    O prximo captulo apresenta alguns conceitos da rea de Psicologia que fornecem suporte

    para a criao dos modelos computacionais de emoo e personalidade que sero utilizados

    nesse projeto.

  • CAPTULO 3

    Computao Afetiva

    Uma das finalidades do estudo de Inteligncia Artificial prover tcnicas formais para o de-

    senvolvimento de sistemas computacionais que expressem comportamento inteligente ao ex-

    ercerem certas atividades [LEO07]. Os Agentes Conversacionais Incorporados (como visto no

    captulo 2) so um exemplo de sistema que tenta cumprir com esse objetivo.

    Para aumentar o grau de realismo dos dilogos com companheiros virtuais, os

    pesquisadores vm construindo modelos e simulando algumas qualidades humanas, como a

    personalidade e emoo [GEB06]. A rea da IA que estuda a modelagem computacional de

    influncias emocionais, ou outros tipos de fenmenos afetivos, conhecida como Computao

    Afetiva [PIC97].

    Neste captulo, sero apresentados os principais modelos psicolgicos adaptados para com-

    putao utilizados em Chatterbots (seo 3.1) e, em seguida, algumas aplicaes existentes

    desses modelos (seo 3.2).

    3.1 Teorias Psicolgicas

    A fim de criar um modelo coeso e coerente de emoo e personalidade em agentes compan-

    heiros virtuais, foi necessrio investigar os conceitos bsicos de algumas teorias psicolgicas

    utilizadas na Computao Afetiva. Assim, esta seo apresenta algumas teorias da psicologia,

    assim como os modelos computacionais que sero utilizados no desenvolvimento do projeto.

    30

  • 3.1 TEORIAS PSICOLGICAS 31

    3.1.1 Personalidade e Emoo

    O conceito de personalidade um dos mais discutidos na Psicologia, no havendo consenso

    sobre uma definio precisa do seu significado. Isso abre espao para que praticamente cada

    pesquisador tenha uma interpretao diferente para esse conceito, tanto que, ainda por volta

    dos anos 1930, o autor [ALL37] catalogou 50 definies diferentes do termo.

    [PAS00] define personalidade como sendo diferenas individuais no comportamento dos

    seres humanos. Contudo, seguindo esta linha de pensamento, alguns autores (e.g., [CT86,

    EYS70]) apontam que o termo personalidade torna-se sinnimo de temperamento. [JUN74]

    apud [PAS00] explica que temperamento mais comumente entendido pela psicologia "quando

    ligado ao aspecto da personalidade que diz respeito s disposies e reaes emocionais", sendo

    avaliados a rapidez e intensidade desses aspectos.

    Atualmente, a Psicologia d maior nfase s reaes emocionais, com isso o que passam

    a ser realmente avaliados so os aspectos emocionais da personalidade. Essa afirmativa re-

    forada, uma vez que as emoes tambm so responsveis por modularem quase todas as

    formas de comunicao dos humanos, como postura, respirao, expresso facial, gestos e

    temperatura da pele [PIC97].

    [SCH00] define emoo como uma ocorrncia relativamente breve de mudanas coorde-

    nadas para avaliao de eventos internos ou externos. Para melhor detalhar como ocorrem

    essas mudanas, [SCH00] apud [JAQ04] separa os estados afetivos que afetam as emoes em:

    Atitudes - crenas, preferncias e predisposies em relao a pessoas ou objetos (e.g.,

    amar, desejar);

    Traos de Personalidade - disposies estveis da personalidade ou tendncias tempera-

    mentais tpicas de uma pessoa (e.g., ansiedade, nervosismo);

    Humor - estado afetivo difuso que consiste na mudana de pequena intensidade e de

    longa durao do sentimento, o qual o reflexo de todas as mudanas no sistema nervoso

    central durante uma ocorrncia (e.g., irritvel, depressivo);

    Posio com relao aos outros (Interpessoal) - uma reao afetiva tirada da relao com

  • 3.1 TEORIAS PSICOLGICAS 32

    outra pessoa de acordo com uma interao especfica (e.g., frieza, dar apoio).

    Estes conceitos do suporte aos modelos computacionais de personalidade e de emoo que

    sero apresentados a seguir.

    3.1.2 Modelos de Personalidade

    Como exposto anteriormente, encontramos no campo da psicologia vrias interpretaes de

    um mesmo conceito. Com relao a modelos psicolgicos de personalidade, pesquisadores

    como Rogers (citado no captulo anterior), Freud, Jung, dentre outros, construram teorias para

    modelar personalidade, sendo que cada uma dessas tem uma fundamentao diferente para

    explicar o padro de comportamento de cada indivduo [PJ99].

    [REV07] destaca que a abordagem taxonmica a mais utilizada, com uma vasta literatura

    e dados disponveis para interpretao do comportamento humano. Essa abordagem classifica

    as diferentes caractersticas dos indivduos por meio de classes, por exemplo, caractersticas

    como "quieto", "tmido"e "reservado"classificam um individuo introvertido.

    Na literatura, duas teorias criadas dentro dessa abordagem tm destaque: (1) a teo-

    ria de [EYS70], baseada em teorias do fundamento biolgico da introverso-extroverso,

    neuroticismo-estabilidade e socializao-psicoticismo; e (2) a Teoria dos Traos [ALL98], a

    qual determina que traos (fatores) podem caracterizar o comportamento de um indivduo.

    A partir da Teoria dos Traos, foram criados modelos reduzidos que podem ser utilizados

    na modelagem computacional para a Computao Afetiva. Contudo, antes de apresentarmos

    os modelos computacionais, necessrio introduzir conceitos bsicos dessa teoria geral.

    A Teoria dos Traos de Allport define um trao de personalidade por meio de oito asseres.

    Segundo o autor, um trao [ALL98]:

    1. Tem mais do que uma existncia nominal, isto , possui utilidade, no s nome;

    2. mais amplo que um hbito;

    3. determinante com relao ao comportamento;

    4. Pode ser estabelecido empiricamente;

  • 3.1 TEORIAS PSICOLGICAS 33

    5. independente com relao a outros traos;

    6. No sinnimo de juzo moral ou social;

    7. Deve ser visto tanto em funo da personalidade que ele contm quanto em funo da

    sua distribuio na populao em geral;

    8. Atos, e at mesmo hbitos, que so incompatveis com um trao no so prova da inex-

    istncia do trao.

    Esta conceituao, junto com a identificao de cerca de 4.500 termos na lngua inglesa que

    poderiam designar o comportamento de um indivduo allport:1936, abriram a possibilidade

    para a criao de diversos modelos de personalidade. Daremos destaque aqui ao Modelo Big

    Five, apresentado a seguir.

    Modelo Big Five

    Dentre os modelos de personalidade criados com base na Teoria dos Traos, os que possuem

    maior destaque, por j estarem virando consenso como taxonomia genrica de personalidade

    [PJ99], so o Big Five [SG98] e o Five Factor [MJ92]. A esses modelos atribui-se o mrito de

    terem transformado o emaranhado de conceitos e teorias existentes em um modelo que permite

    aos pesquisadores estudarem fatores especficos da personalidade humana [S+03].

    Embora apresentem diferenas, na literatura os dois modelos so conhecidos pelo termo

    Big Five, sem distino. Ambos trabalham com a distribuio e reduo dos traos catalogados

    por Allport em cinco fatores/dimenses. Essas cinco dimenses so conhecidas pelo acrnimo

    OCEAN, que representa os seguintes fatores [MCJ98, H+98]:

    Openness (Abertura a Experincia/Intelecto);

    Conscientiousness (Escrupulosidade);

    Extraversion (Extroverso);

    Agreeableness (Nvel de Socializao);

  • 3.1 TEORIAS PSICOLGICAS 34

    Neuroticism (Neuroticismo);

    O Quadro 3.1, adaptado de [JOH90], apresenta as cinco dimenses juntamente com 112

    caractersticas que formam o modelo. Essas caractersticas foram levantadas a partir da analise

    de 140 homens e 140 mulheres por 10 psiclogos. Esse quadro forneceu fundamento para uma

    etapa da implementao desse projeto de mestrado.

    Quadro 3.1 Lista dos traos do modelo Big Five, adaptada de [JOH90].Extraversion Agreeableness Conscientiousness Neuroticism Oppenness

    Low High Low High Low High Low High Low High

    Quiet Talkative Fault-finding Sympathetic Careless Organized Stable Tense Commonplace Wide interests

    Reserved Assertive Cold Kind Disorderly Thorough Calm Anxious Narrow interests Imaginative

    Shy Active Unfriendly Appreciative Frivolous Planful Contented Nervous Simple Intelligent

    Silent Energetic Quarrelsome Affectionate Irresponsible Efficient Unemotional Moody Shallow Original

    Withdrawn Outgoing Hard-hearted Soft-hearted Slipshot Responsible Worrying Unintelligent Insightful

    Retiring Outspoken Unkind Warm Undependable Reliable Touchy Curious

    Dominant Cruel Generous Forgetful Dependable Fearful Sophisticated

    Forceful Stern Trusting Conscientious High-strung Artistic

    Enthusiastic Thankless Helpful Precise Self-pitying Clever

    Show-off Stingy Forgiving Practical Temperamental Inventive

    Sociable Pleasant Deliberate Unstable Sharp-witted

    Spunky Good-natured Painstaking Self-punishing Ingenious

    Adventurous Friendly Cautious Despondent Witty

    Noisy Cooperative Emotional Resourceful

    Bossy Gentle Wise

    Unselfish Logical

    Praising Civilized

    Sensitive Foresighted

    Polished

    Dignified

    Conforme observado no Quadro 3.1, as cinco dimenses (tipos de personalidades) possuem

    traos fortes (High) e fracos Low que melhor delimitam a classificao da personalidade. No

    caso dimenso "Extroverso", os indivduos que so sociveis e interativos se enquadram nos

    traos fortes; em contrapartida, as pessoas que so quietas e reservadas possuem traos fracos

    dessa personalidade.

    Por sua vez, dimenso "Amabilidade"tende a englobar indivduos com tendncias a ter uma

    vida social centrada nos outros, sendo generoso, amigvel e prestativo (traos fortes) e, tam-

    bm, indivduos egocntricos com caractersticas como inveja, crueldade e mesquinha (traos

    fracos).

    A dimenso de "Escrupulosidade"tem por base vontade/desejo de realizao do indivduo.

    Pessoas que possuem essa personalidade tendem a ser responsveis, persistentes e de confiana

  • 3.1 TEORIAS PSICOLGICAS 35

    e, no outro extremo, pessoas preguiosas, desordenadas e irresponsveis.

    As pessoas com traos de "Neuroticismo"so avaliadas pela sua ansiedade, estabilidade

    emocional e afeto (positivo e negativo). Essa personalidade encontrada de forma mais acen-

    tuada em sujeitos nervosos, emocionalmente inseguros e com idias fora do real. J sujeitos

    com caractersticas fracas dessa personalidade tendem a ser calmos, seguros e de humor con-

    stante.

    Por fim, os sujeitos que possuem a caracterstica de auto-avaliao do prprio nvel de

    inteligncia ou capacidade so da dimenso "Abertura a Experincia/Intelecto". Por um lado,

    estas pessoas possuem traos como originalidade, honra e forte criatividade e, pelo outro lado,

    podem ser conservadores, superficiais e com viso limitada do mundo.

    Todas essas estruturas formam um modelo coeso e de boa aplicabilidade na modelagem

    computacional. Posteriormente, ser exposto um exemplo de um sistema que utilizou este

    modelo (seo 3.2).

    A seguir, veremos o modelo de Emoo OCC, bastante usado na Computao Afetiva. Os

    modelos de Personalidade e de Emoo podem ser vistos como complementares, no sendo de

    modo algum excludentes.

    3.1.3 Modelo de Emoo OCC

    [N+81] identifica emoo como sendo um dos doze maiores desafios da Cincia Cognitiva.

    Ento, assim como se pode encontrar na literatura uma diversidade de modelos para person-

    alidade, existem disponveis vrios modelos com a funo de determinar uma estrutura para

    emoes (e.g., [RAL96], [SLO99], [OCC88], dentre outros).

    O modelo proposto por [RAL96] cataloga 17 emoes diferentes, que foram resultado da

    anlise das emoes amplamente discutidas na literatura por meio da avaliao de eventos

    como: situao do estado atual, estado motivacional, imprevistos, probabilidade, problema

    fonte, dentre outros.

    [SLO99] realizou uma anlise convergindo estudos de reas como filosofia, psicologia,

    cincia da computao e neuro-cincia, propondo a criao de alguns tipos de arquiteturas que

  • 3.1 TEORIAS PSICOLGICAS 36

    analisam o estado do mundo e geram a emoo que deve ser expressa. Este modelo foi adaptado

    da teoria de [OCC88].

    Apesar de estes modelos possurem uma boa fundamentao e estrutura, o modelo OCC

    (denominao formada pelo acrnimo dos nomes dos autores Ortony, Clore e Collins) vem se

    destacando como um modelo padro para representao computacional de emoes. Alguns

    exemplos de aplicaes baseadas neste modelo so [BAT94, B+02, BAR02], dentre outros.

    O modelo OCC formado por 22 categorias emocionais, e.g. raiva, satisfao, amor, ver-

    gonha, admirao, esperana, etc. A Figura 3.1 apresenta uma adaptao do modelo original

    com todas as categorias.

    Figura 3.1 Modelo OCC adaptado.

  • 3.1 TEORIAS PSICOLGICAS 37

    Os autores do modelo especificam que emoo, sob a perspectiva da psicologia emprica

    e da cincia cognitiva, surge como o resultado da maneira como a situao que a iniciou

    construda pela pessoa que a vivencia. Assim, o modelo tem por objetivo principal especificar a

    estrutura psicolgica das emoes por meio da descrio das situaes pessoais e interpessoais

    como meio de inferncia das emoes, com isso no entrando em detalhes sobre o conceito de

    uma determinada emoo.

    Para estruturao do modelo, parte-se da hiptese de que existem trs aspectos principais no

    mundo que fazem o indivduo refletir para inferir a emoo: eventos, agentes (o prprio sujeito

    e outros indivduos), e objetos. Quando o aspecto est centrado nos eventos, o indivduo tende

    a ter interesse pelas conseqncias que eles possam vir a gerar. Quando o foco est direcionado

    ao agente, o sujeito analisa as aes que podem ser executadas pelo agente. Por fim, quando o

    foco reside sobre o objeto, o indivduo passa a se interessar por caractersticas especficas que

    o objeto possui ou pode oferecer.

    Um exemplo de inferncia de emoo quando um indivduo, por ter acompanhado alguns

    acidentes areos (prospecto relevante), passa a ter medo de que uma tragdia (evento) acontea

    com ele. Apesar do medo, o sujeito tem que realizar uma viagem de avio. Para sua surpresa,

    nenhum acidente ocorre durante a viagem, deixando o indivduo aliviado.

    Para tornar mais simples o processo de seleo e interao entre as diferentes categorias

    emocionais, [BAR02] divide este processo em cinco fases:

    1. Classificao: feita a avaliao de um evento, ao ou objeto que resulta na informao

    de qual categoria emocional deve ser afetada;

    2. Quantificao: calculada a intensidade com que a categoria emocional afetada;

    3. Interao: nas fases anteriores, definido um valor emocional para certo evento, ao

    ou objeto em questo. Esse valor interage com o estado emocional corrente, podendo ou

    no fazer com que este sofra uma modificao significativa;

    4. Mapeamento: oferece a possibilidade de mapear apenas as categorias que so mais

    utilizadas ou que esto disponveis (caso no sejam utilizadas as 22 categorias);

  • 3.2 APLICAES DE MODELOS DE PERSONALIDADE E EMOO EM CHATTERBOTS 38

    5. Expresso: o modo como o estado emocional atual expresso e pode influenciar no

    comportamento do sujeito.

    Uma das facilidades da implementao computacional do modelo OCC, como citado no

    processo de classificao acima, a possibilidade da no utilizao de todas as 22 categorias

    de emoo, quando necessrio [BAR02]. Outra facilidade que pode ser citada que o modelo

    no deixa explcito como realizada a influncia de outros elementos de personalidade com

    relao a emoes, deixando liberdade para adaptao de modelos diferentes.

    Como dito na seo anterior, os modelos de Personalidade e de Emoo no se excluem,

    podendo ser usados de maneira complementar na modelagem de indivduos ou agentes arti-

    ficiais. Veremos a seguir aplicaes que fazem uso de alguns dos modelos computacionais

    apresentados.

    3.2 Aplicaes de Modelos de Personalidade e Emoo em Chatterbots

    Esta seo apresenta aplicaes dos modelos computacionais discutidos acima na Computao

    Afetiva. Daremos destaque construo de agentes chatterbots com emoo/personalidade.

    3.2.1 Personalidade

    Com relao aplicao de modelos de personalidade na criao de agentes inteligentes,

    [GAL03] destaca o sistema The Woogles, baseado no projeto Oz de criao de atores sintticos

    [R+96], e o jogo de aventura Enigmas no Campus [S+00].

    No que tange a utilizao do modelo Big Five em Chatterbots, destacamos o trabalho re-

    alizado por [G+04]. Um dos principais objetivos desse trabalho foi criao da arquitetura

    Persona-AIML que possibilita a utilizao de diversos modelos de personalidade para Chatter-

    bots.

    A arquitetura Persona-AIML (Figura 3.2) sem dvida a maior contribuio do seu trabalho

    para implementao deste projeto de mestrado.

  • 3.2 APLICAES DE MODELOS DE PERSONALIDADE E EMOO EM CHATTERBOTS 39

    Figura 3.2 Arquitetura Persona-AIML [G+04].

    Para gerar a interao do Chatterbot com influncia de traos de personalidade, o sistema,

    por meio do componente de raciocnio, interage com a base de categorias, (formada por ar-

    quivos que utilizam a linguagem AIML) para identificar a sentena de entrada fornecida pelo

    usurio. Para gerao da resposta, este componente executa regras definidas no componente

    de personalidade, responsvel por definir as crenas, os elementos de personalidade e as regras

    que determinam o comportamento do bot.

    A arquitetura Persona-AIML prov uma flexibilidade que possibilita a criao de modelos

    de personalidade diferentes e coerentes. Assim, ela foi utilizada nesse projeto de mestrado com

    adaptao do modelo de Personalidade Big Five e do modelo de emoo OCC.

    Para validar o trabalho, [G+04] criou um Chatterbot utilizando a arquitetura e uma adap-

    tao do Modelo Big Five como mecanismo de personalidade. O prottipo foi testado por

    usurios de salas de IRC (Internet Relay Chat) e, por meio de uma anlise qualitativa,

    constatou-se que reagiu de forma coerente ao demonstrar personalidade.

    3.2.2 Emoo

    Alm dos sistemas que utilizam modelos de emoo citados na seo anterior, o chatterbot

    criado por [Z+00] apresenta ser um bom exemplo de utilizao do modelo OCC em sistemas

    de conversao.

    Esse sistema utiliza uma linguagem derivada do XML denominada Multimodal Presenta-

    tion Markup Language (MPMP) [TSI+00]. A linguagem MPML tem por objetivo auxiliar na

  • 3.2 APLICAES DE MODELOS DE PERSONALIDADE E EMOO EM CHATTERBOTS 40

    apresentao dos mais diversificados projetos com o uso de agentes inteligentes, no caso do

    sistema criado por [Z+00], um chatterbot.

    Nesse projeto, o chatbot busca prover ao usurio a informao desejada, e expressa uma

    das 22 emoes do modelo OCC. A forma pela qual o sistema expressa a emoo por meio

    da performance de diferentes aes (gestos faciais e corporais), e modificando parmetros do

    discurso, como volume, velocidade e nfase em certas palavras. A Figura 3.3 contrape apre-

    sentaes normais com uma utilizando o chatbot baseado em MPML.

    Figura 3.3 Apresentao normal e com a utilizao de MPML.

    Como exemplo de expresso de emoo, o autor cita o uso da emoo de orgulho. Neste

    caso, o personagem tende a agitar as mos e, ento, falar em voz alta com nfase no incio das

    sentenas.

    A presena de emoo no Chatterbot que atua como apresentador de projetos traz maior

    realismo a essa tarefa conseguindo chamar maior ateno dos expectadores.

  • 3.3 CONSIDERAES FINAIS 41

    3.3 Consideraes Finais

    Neste captulo foram apresentadas teorias de Psicologia que fornecem suporte para criao de

    modelos computacionais de personalidade e emoo. Pode-se observar que personalidade e

    emoo no possuem um conceito nico, sendo que cada autor apresenta um diferente. Por

    outro lado, os modelos computacionais de personalidade (Big Five) e emoo (OCC) so con-

    siderados padres pelos desenvolvedores de sistemas inteligentes, sendo estes escolhidos para

    utilizao neste projeto.

    Como aplicao do modelo Big Five em Chatterbots foi apresentado o projeto de [GAL03]

    que utilizou uma adaptao do modelo de personalidade na arquitetura Persona-AIML criada

    pelo mesmo. No caso de Chatterbot com uso do modelo OCC foi apresentado tecnologia

    MPML que cria sistemas para apresentaes de projetos. Tanto o Persona-AIML quanto o

    MPML utilizam tecnologias baseadas em XML sendo possvel considerar vivel a utilizao

    da linguagem AIML para implementao de uma arquitetura que utilizar os dois modelos.

  • CAPTULO 4

    Um Modelo de Computao Afetiva para

    Chatterbots

    No captulo 2, foi exposta a importncia dos Chatterbots como uma forma de comunicao com

    sistemas na Web, podendo complementar, ou at mesmo substituir outras formas de interao

    humano-computador. Alm disso, ressaltamos que um aumento significativo de realismo nos

    dilogos pode ser alcanado quando o chatterbot capaz de demonstrar traos de personalidade,

    e/ou emoes, durante a interao.

    Neste contexto, este trabalho de mestrado teve por objetivo investigar a construo de chat-

    terbots com personalidade e/ou emoo para um sistema de dilogo na Web. O estudo realizado

    durante nossa pesquisa apontou AIML como a tecnologia mais adequada para dar suporte

    construo desse projeto. Atualmente, AIML a linguagem mais utilizada na construo de

    chatterbots, por ser de fcil uso e extensvel, possibilitando a insero de modelos de personal-

    idade e emoo.

    No que tange os modelos computacionais de personalidade e emoo (Captulo 3), nossa

    investigao identificou o modelo de emoo OCC e o modelo de personalidade Big Five como

    consenso para a construo de agentes inteligentes, j tendo sido utilizados em sistemas de

    conversao. Segunda a pesquisa realizada, a insero dessas caractersticas torna o processo de

    dilogo com o CVA mais humano e com maior probabilidade de um desempenho satisfatrio.

    Este captulo apresenta um modelo de Computao Afetiva para construo de chatterbots

    com emoo. Utilizamos a linguagem AIML como base do trabalho, com integrao de per-

    sonalidade usando o modelo Big Five (seo 3.1.2), e emoo com o modelo OCC (seo

    3.1.3). Buscamos aqui demonstrar a viabilidade de construo de um modelo simplificado para

    aplicao de Computao Afetiva em Chatterbots. Como estudo de caso, foi criado um Com-

    panheiro Virtual de Acompanhamento - CVA (seo 2.1) para dialogar com crianas de 7 a

    42

  • 4.1 A LINGUAGEM AIML 43

    10 anos de idade para auxiliar na preveno de problemas cardiovasculares (Captulo 5). A

    seo 4.1 apresenta a tecnologia AIML, e em seguida a iAIML, uma extenso da linguagem

    original que oferece um mecanismo para tratamento de intenes em dilogos com Chatterbots

    [NB05]. A seo 4.2 apresenta a proposta deste trabalho com a integrao das tecnologias

    expostas anteriormente.

    4.1 A Linguagem AIML

    Por ser uma extenso de XML, a linguagem AIML composta por TAGs delimitadoras. Uma

    das principais TAGs de AIML a categoria () a qual composta por uma sentena

    enviada pelo usurio para o chatterbot, padro de entrada (), a qual est associada a

    uma ou mais sentenas de resposta/rplica ()[NEV05]. No exemplo da Figura 4.11,

    temos a categoria formada pela entrada "OLA"e cuja resposta realizada pelo Bot ser "Falae...".

    Figura 4.1 Exemplo TAGs bsicas de AIML.

    Weizenbaum[WEI66] props que os padres de entrada utilizassem caracteres especiais

    (e.g., *) para auxiliar na realizao de respostas gerais. Estas respostas so formadas pelo o

    casamento da entrada fornecida pelo usurio e da sada da base por meio da substituio do

    caractere especial. Na Figura 4.2, pode-se observar um exemplo da utilizao desta tcnica.

    Neste exemplo, a rplica randomicamente escolhida () entre as delimitadas pela

    TAG . Na sentea de resposta, o elemento substitudo pelo trecho da entrada

    do usurio, por exemplo, caso o usurio fornea a entrada "Voc conhece a Yara?", o sistema

    1Utilizou-se para criao das figuras de TAGs o programa de edio de arquivos AIML GaitoBot -

    http://www.gaito.de/content/aiml

  • 4.1 A LINGUAGEM AIML 44

    responder "Desculpe, eu no conheo a Yara", ou "Eu no conheo a Yara. O que voc tem

    para me contar sobre a Yara".

    Figura 4.2 Casamento de entrada do usurio por meio de caracteres especiais.

    Outras TAGs importantes que possibilitam um melhor desempenho na realizao de casa-

    mento de padres pela linguagem AIML so:

    e responsveis, respectivamente, por recuperar e armazenar variveis na

    memria do sistema;

    realizar o processamento de informaes sem exibir nas respostas do dilogo;

    complementa o uso da TAG . Alm da necessidade da entrada ser com-

    patvel com a TAG , a ltima resposta fornecida pelo sistema deve ser igual ao

    contedo da TAG .

    Foram apresentadas algumas TAGs que sero utilizadas nesse projeto. Maiores detalhes

    sobre a sintaxe da linguagem podem ser obtidos em [WAL07d].

    4.1.1 iAIML - AIML com Inteno

    iAIML (intentional AIML) uma extenso da linguagem AIML que incorpora um mecanismo

    para tratamento de intenes em dilogos com Chatterbots [NB05]. O modelo conceitual ado-

    tado para o desenvolvimento do iAIML a Teoria da Anlise da Conversao (TAC) [MAR94].

  • 4.1 A LINGUAGEM AIML 45

    Essa uma teoria lingstica que avalia a conversao de forma ampla, tratando tanto dos as-

    pectos organizacionais quanto dos aspectos comunicativos da conversao.2

    No que concerne os aspectos organizacionais, o modelo de anlise de conversao proposto

    por [MAR86] observa duas estruturas nos dilogos:

    1. a estrutura local, que estuda a coerncia do dilogo em "pares adjacentes"de sentenas

    que incluem uma interveno (ou turno) do falando e uma interveno do ouvinte (i.e.,

    pares de "estmulo-resposta"). A TAC considera a inteno em pares adjacentes, e no

    apenas em cada sentenas isolada do falante (como ocorre na Teoria dos Atos da Fala

    [SEA76]).

    2. a estrutura global, que estuda o desenrolar do dilogo como um todo. Segundo

    Marcuschi[MAR86], uma conversao considerada "padro"ocorre em trs fases dis-

    tintas: abertura, desenvolvimento e fechamento. Assim, no aceitvel, por exemplo,

    fazer-se um cumprimento (como "ol") na fase de desenvolvimento do dilogo.

    Dentro do contexto de Chatterbots, uma das maiores contribuies de iAIML o controle da

    estrutura global dos dilogos, oferecendo dilogos mais prximos dos naturais (a maioria dos

    bots existentes no trata desse aspecto da conversao[NEV05]). Outra grande contribuio

    no tratamento de sentenas desconhecidas, possvel via o controle da estrutura local dos

    dilogos. Aqui, o iAIML garante a coerncia na formao dos pares adjacentes (respostas do

    chatterbot aos estmulos dos usurios). Com esses controles, possvel conduzir dilogos mais

    coerentes e fluentes entre bots e usurios.

    A implementao desses controles na iAIML foi realizada por meio de insero de trs var-

    iveis em arquivos AIML que constituem a base de dilogos de um Chatterbot. Essas variveis

    e suas atribuies so:

    session: identificar a fase atual da conversao (abertura, desenvolvimento ou

    fechamento);

    user_intention: determinar qual a inteno do usurio no ponto atual do dilogo;

    2Ver maiores detalhes em [MAR86, MAR94, NB05].

  • 4.2 UM MODELO DE EMOO PARA CHATTERBOTS EM IAIML 46

    bot_intention: tambm faz uso de inteno, porm com o objetivo de inferir a inteno

    do usurio em turnos tratados como desconhecidos.

    [NB05], por meio de experimentos e com base no modelo de [MAR86], criou um conjunto

    contendo 54 diferentes intenes, como saudar, xingar, elogiar, agradecer, dentre outras. Tendo

    por base as fases da conversao, essas intenes foram divididas da seguinte maneira: 7 na

    fase de abertura, 43 na fase de desenvolvimento e 4 na fase de fechamento. Segundo [NB05] o

    conjunto de intenes criado pode ser adaptado de acordo com o contexto da aplicao em que

    ser utilizado.

    Ao adotar iAIML para desenvolvimento deste projeto de mestrado, nossa inteno foi de

    aproveitar os controles oferecidos por ela para, junto com personalidade e emoo, construir

    dilogos ainda mais prximos dos naturais. As adaptaes da iAIML realizadas neste trabalho

    sero discutidas posteriormente.

    4.2 Um Modelo de Emoo para Chatterbots em iAIML

    Esta seo apresenta detalhes sobre o modelo de Computao Afetiva (CA) proposto para chat-

    terbots CVAs. Conceitualmente, tal modelo capaz de lidar com Emoo e traos de Person-

    alidade. Contudo, o modelo atual teve como foco a modelagem da Emoo. Esta deciso foi

    tomada em conjunto com as psiclogas do projeto CVA-PSCV, pelas razes a seguir.

    A partir dos conceitos discutidos no Captulo 3, pode-se concluir que a Emoo respon-

    svel por modificar as expresses corporais e/ou verbais dos agentes (humanos ou artificiais),

    tornando-as mais ou menos intensas, de acordo com a emoo sendo vivenciada durante uma

    ao (e.g., um dilogo). Alm disso, a emoo corrente tambm sofre influncia de vrios fa-

    tores, como por exemplos os traos de personalidade dos agentes envolvidos na interao. A

    partir do exposto acima, pode-se constatar que esta faceta influencia todas as etapas de con-

    struo de um dilogo (este ponto ser detalhado na prxima seo), sendo indispensvel

    construo de dilogos fluentes e naturais.

    No que concerne Personalidade, [ALL98] afirma que um psiclogo, ou qualquer indivduo

  • 4.2 UM MODELO DE EMOO PARA CHATTERBOTS EM IAIML 47

    que conhea bem uma pessoa, pode predizer um ato desta considerando seus traos de person-

    alidade. Contudo, as psiclogas do projeto alertaram que o conceito de personalidade muito

    confuso, ainda no havendo consenso sobre isso entre os estudiosos na rea. Isso dificulta a

    sua caracterizao, principalmente por pessoas com pouco conhecimento na rea de psicolo-

    gia. Assim, se a caracterizao precisa de traos de personalidade de uma pessoa j difcil em

    uma relao face-a-face, ao fazer uso de sistemas de conversao atravs de texto, essa identi-

    ficao torna-se muito mais limitada, dificuldade esta citada por [GAL03] depois da realizao

    de testes com esse tipo de tecnologia.

    Inicialmente, veremos as etapas de construo do modelo base de emoo. Os passos para

    construo do modelo de CA aqui proposto foram assistidos/supervisionados por duas psiclo-

    gas que participaram do projeto CVA-PSCV3. Ao final, veremos alguns detalhes de implemen-

    tao desse modelo usando a linguagem iAIML.

    4.2.1 Modelagem do Sistema

    Esta etapa de trabalho foi baseada no modelo de processo de seleo da emoo proposto por

    [BAR02] (seo 3.1.3), o qual dividido em Classificao, Quantificao, Interao, Mapea-

    mento e Expresso. Para a realizao desse processo, detalhes sobre como deviam ser adapta-

    dos os modelos de personalidade e emoo foram discutidos com as psiclogas do CVA-PSCV.

    Como resultado dessa interao, o modelo de [BAR02] foi revisto, e a modelagem do nosso

    sistema foi dividida basicamente em 4 etapas:

    1. Escolha das emoes que so aplicveis ao contexto em questo;

    2. Meios de expressar a emoo (texto, gesto e expresses faciais);

    3. Seleo da emoo a ser expressada com base na inteno do u