SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
1



DESENVOLVIMENTO DE UM CHATTERBOT BASEADO EM AIML PARA O SITE
                      DE UMA INSTITUIÇÃO DE ENSINO SUPERIOR

                                                                              Lucas Pereira dos Santos1
                                                                              Renata de Souza França 2

    RESUMO

O objetivo deste trabalho é apresentar uma proposta para o desenvolvimento de um
chatterbot, também conhecido como chatbot, enfatizando a importância da tecnologia e os
preceitos da linguagem AIML (Artificial Intelligence Markup Language).                       Através dos
estudos deste trabalho, serão demonstrados passos para a criação de um robô de conversação
baseado no padrão aberto de inteligência artificial AIML, propondo sua aplicação em uma
instituição de ensino superior. A metodologia utilizada baseou-se em referências
bibliográficas e em um estudo de caso para aplicação do tema proposto.


Palavras-chave: Chatterbot, Ensino, Artificial, Aiml, Motor de Busca.


    ABSTRACT

The aim of this paper is to present a proposal for the development of a chatterbot, also known
as chatbot, emphasizing the importance of technology and the precepts of language AIML
(Artificial Intelligence Markup Language). Through studies of this work will be shown steps
to create a chat robot based on open standard AI AIML, suggesting its application in a higher
education institution. The methodology used was based on references and a case study for
application of the proposed topic.


Keywords: Chatterbot, Education, Artificial, AIML, Search Engine.


1. INTRODUÇÃO

             Nos dias atuais, a informática tem proporcionado grande influência à sociedade,
principalmente na educação, em que a forma de se aprender tornou-se mais dinâmica, além de
influenciar na maneira como as pessoas vivem.

1
  Graduando do curso de Ciência da Computação da Faculdade Pitágoras Betim. Contato eletrônico:
lucaspprof@gmail.com
2
  Orientadora do trabalho de conclusão de curso, Renata de Souza França. Contato eletrônico:
profrenatafranca@gmail.com
2



              Devido à diversidade nos meios de utilização da internet, diversos
questionamentos são apontados, em relação aos impactos, tanto positivos, quanto negativos,
que        sua        utilização         pode         gerar.        Segundo          Seabra         (2004),
a tecnologia em si não é boa ou ruim, mas amplifica e potencializa a ação humana, tal como
um megafone pode fazer o bom cantor alegrar multidões e o desafinado incomodar muito
mais gente.
              Para que a sociedade consiga acompanhar a dinamicidade do mundo, é necessário
que as pessoas tenham acesso à informática e a tecnologia. Para que esse acesso seja
equivalente a todos os seres, necessita-se de meio de Inclusão digital, que segundo Becker
(2009), é o nome dado ao processo de democratização do acesso às tecnologias da
informação, de forma a permitir a inserção de todos na sociedade da informação.
              Um incluído digitalmente não é aquele que apenas utiliza o mundo digital para
trocar e-mails, mas aquele que usufrui desse suporte para melhorar as suas condições de vida.
Não é suficiente que o cidadão possua um simples computador conectado à internet para se
dizer que está incluído digitalmente.
              Segundo o IBGE no Censo 2010, apenas 38,3% dos domicílios possuem
computador em um contexto em que menos de 40 % deles possuem tanto telefone fixo quanto
celular. De acordo com um levantamento feito pela Network Wizards 3 (2011), o Brasil possui
o maior número de hosts4 de Internet da America do Sul, sendo o 4º do mundo, o que reafirma
a ideia de que novos métodos devem ser desenvolvidos para se interagir com a tecnologia,
métodos esses que proporcionem uma inserção maior das pessoas no universo tecnológico.
              A AIML (Artificial Intelligence Markup Language) é uma linguagem que desafia
os paradigmas da ciência da computação, pois possibilita que humanos conversem com
sistemas computacionais usando linguagem natural (linguagem utilizada no dialogo entre
duas pessoas).      Enquanto pensa-se ser complexo para uma máquina conversar com um
humano sobre assuntos diversos, o Dr. Richard S. Wallace, criador da linguagem AIML
demonstra que não é bem assim.
              Técnicas que facilitem a interação entre homem e máquina aumentam,
exponencialmente, o alcance de uma tecnologia. Desta forma, novos métodos para interação
surgem não sendo bastante desenvolver uma ferramenta sem pensar nos usuários.


3
  Organização sem fins lucrativos dedicada a apoiar a infraestrutura da Internet universal. A Network Wizards
calcula o número de usuários de um determinado país tomando o número de hosts e multiplicando-o por dez, que
é o número estimado de usuários por host.
4
  Em informática, host é qualquer dispositivo ou computador conectado a uma rede.
3



            Um chatterbot, ou chatbot, é um programa de computador que assume o lugar de
um interlocutor, dialogando com pessoas comuns através de textos pré-programados. Em
inglês bot é a abreviação de robot, significando robô enquanto chatter significa conversador
(AIRES, 2008, p.2). Chatterbots podem ser utilizados de diversas maneiras, e os teóricos de
Inteligência Artificial definem em súmula que uma das funções mais importantes de um ser
artificial seria a capacidade de o mesmo se comunicar de maneira independente, o que
aumenta significativamente a interatividade de qualquer sistema.
            Desta forma, este trabalho tem como objetivo desenvolver a temática da inclusão
digital, através de uma proposta de um chatterbot que atenda os usuários do site de uma
instituição de ensino superior, tirando dúvidas simples através do portal, demonstrando a
forma de construí-lo. Este trabalho está dividido em 4 partes. A primeira parte relatou uma
breve introdução sobre o assunto, assim como o objetivo do trabalho. A parte 2 abordará os
conceitos e fundamentos da inteligência artificial. Seguindo para a parte 3, descrevesse e
explorasse o universo dos chatterbots, demonstrando os passos necessários para o seu
desenvolvimento. A parte 4 será o fim do desenvolvimento e a personalização do chatterbot
para que ele se adapte ao sistema. Enfatiza-se que o trabalho tem por objetivo personalizar um
chatterbot para o SAC (Serviço de atendimento ao Cliente) de uma instituição de ensino. Ao
final, será feita uma análise sobre a proposta.


2. INTELIGÊNCIA ARTIFICIAL (IA)

            Inteligência Artificial (IA) é um ramo da ciência da computação que se propõe a
elaborar dispositivos que simulem a capacidade humana. Segundo Rich (1994, p.3) a IA
“permite que objetos tecnológicos tenham ações humanas como de raciocinar, perceber, tomar
decisões e resolver problemas, enfim, a capacidade de ser inteligente”.


                         “[...] a palavra “inteligência” vem do latim inter (entre) e legere (escolher).
                        [...] A palavra “artificial” vem do latim artificiale, significa algo não natural,
                        isto é, produzido pelo homem [...]”
                        Portanto, pode-se definir Inteligência Artificial como “[...] um tipo de
                        inteligência produzida pelo homem para dotar as máquinas de algum tipo de
                        habilidade que simula a inteligência do homem.”(FERNANDES, 2005,
                        p.160)

            O desenvolvimento da área começou logo após a Segunda Guerra Mundial, com o
artigo "Computing Machinery and Intelligence" do matemático inglês Alan Turing, e o
próprio nome foi cunhado em 1956. Seus principais idealizadores foram os cientistas Herbert
4



Simon, Allen Newell, John McCarthy, Warren McCulloch, Walter Pitts e Marvin Minsky,
entre outros.
             A construção de máquinas inteligentes interessa à humanidade há muito tempo,
havendo na história um registro significante de seres mecânicos (reais) e personagens
místicos, como o Golem5 e o Frankenstein6, que demonstram um sentimento ambíguo do
homem, composto de fascínio e de medo, em relação à Inteligência Artificial.
             Com o surgimento do computador moderno, é que a inteligência artificial ganhou
meios e massa crítica para se estabelecer como ciência integral, com problemáticas e
metodologias próprias. Desde então, seu desenvolvimento tem extrapolado os clássicos
programas de xadrez ou de conversão e envolvido áreas como visão computacional, análise e
síntese da voz, lógica difusa, redes neurais artificiais e muitas outras.
             De acordo com Helder Coelho (1994), há uma discussão em que se consideram
duas propostas básicas para a IA: uma conhecida como "forte" e outra conhecida como
"fraca".
     Inteligência artificial forte: Aborda a criação da forma de inteligência baseada em
        computador que consiga raciocinar e resolver problemas; uma forma de IA forte é
        classificada      como      autoconsciente.        É    um      tema      bastante     controverso.
        Segundo John Pollock (1989) a tese da IA forte é a de que podemos construir uma
        pessoa (uma coisa que literalmente pensa, sente e é consciente) por meio da
        construção de um sistema físico dotado de “inteligência artificial” apropriada.
     Inteligência artificial fraca: Trata-se da noção de como lidar com problemas não
        determinísticos. Centra a sua investigação na criação de inteligência artificial que não
        é capaz de, verdadeiramente, raciocinar e resolver problemas. Uma tal máquina com
        esta característica de inteligência agiria como se fosse inteligente, mas não tem
        autoconsciência ou noção de si. Segundo Searle, (1986, p.112) “... ainda que uma
        máquina possa parecer falar chinês por meio de recursos de exame comparativo com
        mostras e tabelas de referência, binárias, isso não implica que tal máquina fale e
        entenda efetivamente a língua”.
             O teste clássico para aferição da inteligência em máquinas é o Teste de Turing
(TT). O teste consiste em se fazer perguntas a uma pessoa e a um computador que não se pode

5
  Ser animado artificial mítico, associado à tradição do judaísmo, que pode ser trazido à vida através de um
processo mágico. É muitas vezes visto como um gigante de pedra.
6
  Personagem criado por Mary Shelley no filme Frankenstein em 1994. No filme um cientista costura partes de
diversos cadáveres para criá-lo.
5



ver. Um computador e seus programas passam no TT se, pelas respostas, for impossível a
alguém distinguir qual interlocutor é a máquina e qual é a pessoa.
           Enquanto o progresso direcionado ao objetivo final de uma inteligência similar à
humana tem sido lento, muitas derivações surgiram no processo. Muitos outros sistemas úteis
têm sido construídos usando tecnologias que ao menos uma vez eram áreas ativas em
pesquisa de IA. Alguns exemplos incluem:
      Lógica incerta, uma técnica para raciocinar dentro de incertezas, tem sido amplamente
       usada em sistemas de controles industriais.
      Sistemas tradutores.
      Redes Neurais vêm sendo usadas em uma larga variedade de tarefas, de sistemas de
       detecção de intrusos a jogos de computadores.
      Reconhecimento de voz está disponível comercialmente e é amplamente usado.
      Sistemas de álgebra computacional, tais como Matemática e Macsyma, são bons
       exemplos de aplicações de IA na solução de problemas algébricos.
      Aplicações utilizando Vida Artificial são utilizadas na indústria de entretenimento e no
       desenvolvimento da Computação Gráfica.
      Chatterbots (robôs de software para conversação), personagens virtuais que
       conversam em linguagem natural como se fossem humanos de verdade, são cada vez
       mais comuns na internet.
           A visão da Inteligência Artificial, substituindo julgamento humano profissional,
tem surgido muitas vezes na história, em Ficção Científica e, hoje em dia, em algumas áreas
especializadas em que "Sistemas Especialistas" são usados para melhorar ou para substituir o
julgamento humano. Autores, como Wittgenstein (citado por Shanker, 1987,p.28) e Piaget
(1968, pp. 121-152), sustentam que mesmo nesses termos não seria possível afirmar que as
máquinas pensam, pois o pensamento seria uma característica humana, não se tratando de um
processo mecânico estruturado por regras lógicas. Caracterizá-lo dessa forma seria transgredir
sua própria natureza. Todavia, deve ser lembrando a definição de pensamento proposta por
Turing (1950, p.59), “pensamento é o processo pelo qual se resolve problemas manipulando-
se informações”.
           Assim, algo que pensa é algo que resolve problemas, não importando se o
processo pelo qual se chega às respostas seja lógico-formal e mecanicista ou baseado em
modelos mentais e estratégias. Dessa forma, há tanto homens quanto máquinas plenamente
capazes de resolver problemas.
6



3. INTERATIVIDADE

                Vive-se em um tempo que nada acontece fora do universo tecnológico e a cada
momento as pessoas encontram-se diante da interação homem-máquina. A cada momento
experimentam-se formas de interação técnica e social. Em uma era das mídias digitais e das
tecnologias em rede, percebe-se a utilização constante do termo interatividade. (PRIMO,1999,
p.165)
                             “Características como bidirecionalidade, resposta imediata, controle do
                             usuário, quantidade de ações do usuário, respostas (feedback), transparência,
                             entre outras, se consideradas isoladamente não garantem o caráter interativo
                             da comunicação. Refere-se à habilidade do usuário de perceber a experiência
                             como uma simulação da comunicação interpessoal,alem é claro de permitir
                             que o usuário exerça influência sobre o conteúdo ou a forma da comunicação
                             mediada.” (RAFAELI, 1988, p.16)

                Já segundo Andrew Lippman (BRAND, 1988, p.5), pode-se definir interatividade
como uma “atividade mútua e simultânea da parte dos dois participantes, normalmente
trabalhando em direção de um mesmo objetivo”. Sendo assim, a interatividade seria um tipo
de relação tecno-social, como um diálogo, uma conversação entre homens e máquinas, em
tempo real. A relação deixaria de ser passiva ou representativa, passando a ser ativa e
permitindo inclusive a relação inteligente entre máquinas inteligentes sem a mediação
humana. (PRIMO,1999, p.165)


4. CHATTERBOTS

                Chatterbot (ou chatbot) é um programa de computador que tenta simular um ser
humano na conversação com as pessoas. O objetivo é responder as perguntas de tal forma que
as pessoas tenham a impressão de estar conversando com outra pessoa e não com um
programa de computador. (SGANDERLA, 2008).
                Após o envio de perguntas em linguagem natural, o programa consulta uma base
de conhecimento e em seguida fornece uma resposta que tenta imitar o comportamento
humano. O termo Chatterbot surgiu da junção das palavras chatter (a pessoa que conversa) e
da palavra bot (abreviatura de robot), ou seja, um robô (em forma de software) que conversa
com as pessoas. (AIRES, 2008, p.2)
                A palavra foi inventada por Michael Mauldin (Criador do primeiro Verbot7, Julia)
em 1994, para descrever estes robôs de conversação na Twelfth National Conference on


7
    Verbot é um chatterbot, ou Chatbot, programa desenvolvido para tentar se passar por um humano.
7



Artificial Intelligence8. Embora os chatterbots existam desde a década de 60, há um aumento
no interesse destas tecnologias desde a generalização da Internet.                   A Internet fez os
chatterbots acessíveis ao público em geral e ao mesmo tempo criou para os Web sites a
necessidade de terem uma interface parecida com a humana para fornecer informações de
forma agradável a milhares de pessoas por dia.


4.1 Desafios

              De fato, mais e mais esforços estão sendo direcionados à pesquisa e
desenvolvimento de chatterbots. Embora adquirir inteligência humana ainda seja um sonho
distante, a tecnologia dos chatterbots só tende a crescer. (AGENTLAND, 2003).
             Os chatbots também apresentam algumas desvantagens, sendo a principal delas o
fato de que é um programa de computador e não é capaz de pensar e aprender da mesma
forma que um ser humano o faz. Como a quantidade de sentenças que um ser humano pode
produzir é praticamente infinita, dificilmente um software será capaz de lidar com todos os
tipos de entradas fornecidas pelos usuários.
             Segundo Primo (2000) como a linguagem humana é muito complexa, quanto mais
pessoas participarem das conversas, e da escrita do cérebro do chatterbot, melhor será o
desempenho do dialógico. Apesar das limitações, esse tipo de programa não pode ser
desprezado como ferramenta auxiliar. O potencial para o uso dessa tecnologia é enorme em
áreas como educação, atendimento ao cliente, suporte on-line ou para qualquer serviço que
necessite de consulta à base de dados. Pois proporciona um ambiente mais agradável e de
fácil interação, alem de ser uma tecnologia relativamente barata que pode ser usada por vários
usuários simultaneamente.


4.2 Vantagens e Características

     Um robô não precisa de salário, vale alimentação ou vale transporte;
     Vocabulário e respostas do robô totalmente personalizável;
     24 horas disponível;
     Todas as mensagens trocadas entre o robô e usuários são gravadas e podem ser
        visualizadas posteriormente;


8
 Fundada em 1979, a Associação para o Avanço da Inteligência Artificial (AAAI) é uma sociedade científica
sem fins lucrativos dedicada ao avanço do conhecimento científico dos mecanismos subjacentes de pensamento
e comportamento inteligente e a sua incorporação em máquinas.
8



    Custo de manutenção muito baixo.

              Antes de classificar-se os chatterbots é importante esclarecer a diferença entre
chatterbots e agentes. Segundo Primo (2000), nem todo agente é um agente de conversação.
Software agente é um sinônimo para software robot ou simplesmente “bot”. Existe agente que
busca por ofertas, sugere produtos, etc., mas não entende linguagem natural.
              Um chatterbot é um tipo específico de bot capaz de entender linguagem natural.
Talvez, o termo “entender” seja um tanto ambicioso, como diz Primo (2000), já que
reconhecer signos não quer dizer propriamente que haja uma verdadeira compreensão por
parte do robô.
              Enfim, deve-se entender que um robô de conversação não compreende a fala, mas
sim, reconhece a linguagem podendo reagir a ela. De forma geral, os chatterbots podem ser
analisados segundo uma série de características dentre as quais se destaca: (Franklin e
Graesser, 1996).
      Capacidade de aprender – capacidade do chatterbot de aprender durante o diálogo
       com o usuário. O chatterbot pode aprender sobre o domínio e sobre o usuário. Este
       tipo de chatterbot tem uma maior probabilidade de manter diálogo por mais tempo
       sem ser percebido o fato de ser um programa.
      Memória – capacidade de lembrar os diálogos passados e sentenças mencionadas
       previamente dentro de um mesmo diálogo.
      Domínio – possíveis temas para diálogo. Alguns chatterbots não fazem restrição de
       domínio, contudo podem ser especialistas em determinados assuntos. Em outros
       chatterbots existe a opção do usuário escolher qual o domínio da conversa.
      Robustez – capacidade do robô de responder a sentenças do usuário não reconhecidas.
      Autoconhecimento – capacidade de o robô falar sobre si mesmo.
              Os chatterbots podem ser classificados segundo sua área de aplicação como de
entretenimentos, de busca, acadêmicos, de comércio, dentre outros. Laven (2000) apresenta
uma classificação que considera os recursos utilizados. Nesta classificação os chatterbots
podem ser encontrados nas seguintes categorias: clássicos, complexos, amigáveis e
ensináveis.

      Clássicos: chatterbots criados com o objetivo inicial de estudar a complexidade na
       comunicação em linguagem natural entre homens e máquinas.
      Complexos: criados a partir de linguagens de programação mais sofisticadas, A idéia
       principal neste programa é avaliar a natureza da comunicação entre homem e
9



        computador. Seu funcionamento é baseado em padrões de mapeamentos das perguntas
        mais comuns de usuários nas respostas adequadas.
       Amigáveis: são capazes de reproduzir o comportamento de uma pessoa.
       Ensináveis: Chatterbots que possuem capacidade de aprendizagem.


4.3 Artificial intelligence markup language (AIML)

             Os Chatterbots são baseados em uma rotina de “estímulo – resposta”, ou seja,
você pergunta, e ele responde com base na sua pergunta. Para criar um chatterbot, pode-se
utilizar uma linguagem de marcação desenvolvida para esse propósito, como a Artificial
Intelligence Markup Language (AIML), que é virtualmente independente de linguagem de
programação, tudo que se precisa para AIML funcionar, é um processador de AIML escrito
na linguagem escolhida pelo desenvolvedor.
             Pode-se também usar Prolog9, ou outra linguagem de programação em lógica, e
criar um chatterbot a partir do zero, ou ainda adaptar uma versão existente de algum
programa desse tipo, o que requer conhecimentos elaborados de programação de
computadores e de programação em lógica.
             O AIML é baseado num padrão de entradas e saídas, assim, quando o usuário
digita algo, o bot já tem uma saída para aquela pergunta. O chatterbot é composto por tags
que irão definir todo o contexto necessário para se programar em AIML. (WALLACE, 2003)
             Existem inúmeros chatterbots na internet, porém, um deles ganha destaque neste
conceito, trata-se da A.L.I.C.E. (Artificial Linguistic Internet Computer Entity) escrita em
AIML, criada por Richard S. Wallace, e ganhadora de muitos prêmios por sua eficiência e
realismo (ALICE, 2003).
Ainda, segundo o autor, o AIML tem como principais tags:
     <aiml> inicia e terminar o bloco AIML.
     <category> indica uma categoria ou unidade de conhecimento.
     <pattern> Indica o padrão da mensagem que será digitada pelo usuário.
     <template> indica a resposta para o que foi digitado
     <random> proporciona respostas aleatórias
     <li> marca bloco de respostas aleatórias é usado dentro do bloco <random>
     <that> registra a ultima sentença, gerando uma sequencia no dialogo.


9
 Linguagem de programação puramente lógica, especialmente associada com a inteligência
artificial e linguística computacional.
10



    <srai> Redireciona para outra questão ou categoria.

           A base de conhecimento do chatterbot é formada pelas tags da linguagem AIML,
ou seja, todas as possíveis perguntas e respostas do usuário ficam armazenadas nessa base,
conforme observa-se na Figura 1:
  Exemplo 1                                    Exemplo 2
  <aiml>                                       <aiml>
     <category>                                 <category>
     <pattern> oi </pattern>                      <pattern>qual o seu nome?</pattern>
         <template>                                <template>
             Ola, tudo bem?                          <random>
         </template>                                   <li>Sou chamado de chatterbot</li>
     </category>                                       <li>Me chamo chatterbot</li>
  </aiml>                                              <li>Chatterbot</li>
                                                       <li>pode me chamar de chatterbot</li>
                                                     </random>
                                                   </template>
                                                </category>
                                               </aiml>
                                    Figura 1: Exemplo AIML
                                   Fonte: Elaborado pelo autor
           A Figura 1 possui exemplos de perguntas cadastradas na base de conhecimento do
chatterbot. Cada bloco pode possuir milhares de questões. No exemplo 1, sempre que o
usuário digitar “oi” o chatterbot responderá “ola, tudo bem?”. Já no exemplo 2, ao ser
digitado “qual o seu nome?” o chatterbot vai sortear uma das respostas que estão dentro do
bloco <random>.


4.4 Exemplos de chatterbots

           Segundo Alcione (2010) em pesquisas realizadas, descobriu-se que já existem
diversos chatterbots, os quais possuem como função atender clientes de empresas. Cada vez
mais as empresas investem nessa nova modalidade de atendimento. Os chatterbots estão
inclusos em diversas áreas, como: saúde, educação, comercial, governamental, entre outras. A
seguir, destacam-se os principais agentes de conversação disponíveis na internet.
       Eliza: Iniciando a primeira geração de chatterbot em 1966 e desenvolvido por Joseph
Weizenbaum, no Massachussets Institute of Technology (Instituto de Tecnologia de
Massachussets), nasceu o primeiro chatterbot, Eliza. Este tinha por objetivo fazer uma
psicanálise e diagnosticar, por meio de diálogos amigáveis, problemas psicológicos em
pacientes. Já naquela época obtinha-se êxito. Porém, Eliza não mantinha em base as conversas
realizadas anteriormente, com isso deixava um pouco a desejar (LEONHARDT, 2003).
11



       Cybelle (Nacional): Já no Brasil, o estudo de chatterbots é mais recente. Criado por
Alex Primo, em 2000, o primeiro chatterbot brasileiro é chamado de Cybelle. Com poder de
expressões emocionais, como tristeza, humor, entre outros, isso ajudou a quebrar as
limitações com o humano em relação à comunicação, além, é claro, de propiciar um bom
bate-papo para descontrair. Cybelle possui uma base de conhecimento composta por várias
respostas pré-programadas, possibilitando maior abrangência e flexibilidade com o humano
(LEONHARDT, 2003).
       Ed: Desenvolvido pela Insite e lançado pela Petrobrás em 20 de outubro de 2004,
surgiu para interagir com o meio social em um público-alvo infanto-juvenil, com a intenção
de conscientizar quanto ao consumo racional energético brasileiro. Integrado ao site da
Conpet (Programa Nacional de Racionalização do Uso dos Derivados do Petróleo e do Gás
Natural), fornece amplo material, como vídeos, apostilas e centenas de links para saciar as
dúvidas em questão (OLIVEIRA, 2004).
       Sete Zoom: Também desenvolvida pela Insite, para o site da Close Up, pela sua
personalidade atrevida, é considerada a modelo virtual mais famosa do Brasil. Vários
contextos e características de comunicação humana foram implementados; possui capacidade
de bolar idéias a partir de assuntos abordados durante a conversa. Suas respostas são baseadas
em uma personalidade forte por meio de uma base de conhecimento pré-alimentada pelos
programadores. Em sua implementação, destacam a habilidade de memorizar assuntos já
conversados, como seu nome, por exemplo. Tem capacidade de direcionamento de assunto
baseado na inserção do internauta, além de apresentar e elaborar ideias (FERREIRA, 2008).


5. ESTUDO DE CASO SOBRE O DESENVOLVIMENTO DE UM CHATTERBOT

           Esse estudo tem como objetivo desenvolver uma proposta de chatterbot a ser
inserido em um site de instituição de ensino superior, para apoiar a página de dúvidas
frequentes. O chatterbot poderá ser implantando tanto no site quanto em terminais espalhados
pela instituição, visto que a interatividade e a facilidade de interagir com páginas web são
fatores de bastante relevância para o usuário. Será desenvolvido um chatterbot a partir de um
motor de busca já existente.
           Para poder explicar melhor como se dará o desenvolvimento do chatterbot, o
trabalho será dividido em 3 partes, a primeira sobre o que é necessário para se desenvolver o
chatterbot, a segunda sobre como instalar o motor de busca e como é seu funcionamento e a
terceira vai demonstrar como personalizar o motor de busca e criar o chatterbot.
12



5.1 O desenvolvimento

             O chatterbot será criado baseando-se no projeto “PROGRAM-O v1.0.3”
desenvolvido por Elizabeth Perreau e lançado com o código-fonte aberto em janeiro 2009,
que desde então vem recebendo atualizações de uma grande comunidade de desenvolvedores
ao redor do mundo, o que justifica a escolha desse motor de busca para o desenvolvimento do
trabalho.
             Para instalar o motor de busca é necessário que o computador tenha um servidor
Web instalado. Nesse trabalho, adotou-se o programa WampServer2.1e-x32(Wamp)10, que é
um pacote de programas que instala automaticamente o Apache 1.331, PHP5, MySQL
database, PHPmyadmin e SQLitemanager. Sendo que cada um dos programas instalados tem
a sua função durante o desenvolvimento.
             Para que seja possível criar e editar as páginas web, trabalha-se com o software
PHP Editor 2.22, que é um editor gratuito e totalmente em português destinado a edição de
páginas PHP11 e HTML12.

5.2 Motor de busca

             Depois de baixado o motor de busca (PROGRAM-O, 2012), faz-se necessário
instalá-lo no servido web, para isso basta abrir a pasta “www directory” que pode ser
encontrada clicando no ícone do Wamp na área de notificação do Windows e colar os
arquivos(Figura 2)




                            Figura 2: Wamp (Área de notificação)
                               Fonte: Wamp Server 2.1 (2012)
10
   Pacote com os programas: Apache como servidor web, PHP5 que interpreta códigos na linguagem PHP,
PHPmyadmin para controlar a parte administrativa do PHP e o SQLitemanager responsável pelos códigos (SQL)
usados no banco de dados
11
   PHP ou Hypertext Preprocessor é uma linguagem de programação livre utilizada para gerar conteúdo
dinâmico na Internet
12
   HTML ou HyperText Markup Language é uma linguagem de programação utilizada para produzir páginas
estáticas na Internet.
13



O motor de busca conta com o seguinte diretório:
    Pasta Admin: Onde se encontram todos os scripts para a parte administrativa do
       motor de busca.
    Pasta: Bot: Contém os arquivos necessários para o bot funcionar, como scripts para
       buscar a resposta no bando de dados.
    Arquivo Index.php: Página inicial do nosso motor de busca, onde de fato poderemos
       conversar com nosso personagem.
    Arquivo install_programo.php: Script para instalar o motor de busca no servidor
       web.


5.2.1 Instalação do motor de busca

           Para instalar o motor de busca primeiro é necessário criar um banco de dados para
armazenar as suas informações, para este estudo foi criado um banco de dados chamado
“banco” usando o aplicativo PhpMyAdmin.
           Depois de criado o banco de dados, configura-se o acesso a ele. Para isso abra a
pasta “bot” que se encontra na pasta “www directory”. Dentro da pasta há um arquivo
chamado “config.php” que contém as configurações de acesso ao banco de dados. O arquivo
possui 4 constantes que devem ser alteradas:
    $dbh: Localização do servidor
    $dbn: Nome do banco de dados
    $dbu: Nome de usuário do banco de dados
    $dbp: Senha do banco de dados
No wamp a localização padrão do servidor é “localhost”, o usuário padrão é “root” e não há
uma senha predefinida, Logo as constantes recebem os seguintes valores:
    $dbh = "localhost";
    $dbn = "banco";
    $dbu = "root";
    $dbp = "";
           Esse processo também deve ser feito no arquivo “config.php” da área
administrativa do motor de busca, em “www directoryadminfuncs” .
              Para iniciar a instalação do motor de busca tem-se que abrir o browser e digitar
na barra de endereço: localhost/install_programo.php       , depois clicar em “click here to
14



proceed” para que o script crie as tabelas necessárias para o motor de busca funcionar. As
tabelas são:
Tabela 1: Tabelas do banco de dados
                 TABELA                                  COMENTÁRIO
                                           Armazena os scripts AIML instalados com o
                   AIML
                                           motor de busca
                                           Armazena os scripts AIML instalados por
      AIML_USERUNDEFINED
                                           usuários desconhecidos
                                           Armazena informações sobre a personalidade
          BOTPERSONALITY
                                           do Chatterbot
                                           Armazena os diálogos realizados pelo
         CONVERSATION_LOG
                                           chatterbot
                                           Armazena palavras erradas e as suas
               SPELLCHECK                  correções. Mesmo que o usuário digite errado
                                           o chatterbot vai entender.
      UNDEFINED_DEFAULTS                   Armazena padrões definidos para o chatterbot
                                           Armazena entradas desconhecidas pelo
         UNKNOWN_INPUTS
                                           chatterbot
                                           Armazena dados referentes aos usuários da
                   USERS
                                           área administrativa
Fonte: PhpMyAdmin (2012) - Gerado pelo projeto Program-o

               Posteriormente, adicionam-se alguns scripts AIML no banco de dados para
simular uma inteligência básica ao chatterbot. Além disso, as tabelas: Undefined_defaults,
botpersonality e spellcheck são preenchidas com valores padrões do chatterbot. Tudo isso,
baseando-se na língua inglesa.
               A partir desse momento o motor de busca já está instalado e funcionando em seu
servidor web, agora torna-se necessário configurar a parte administrativa. Clicando em “To
install My Program-O admin área” abre-se a instalação da área administrativa, desta forma
segue-se as instruções para que seja criado um nome de usuário e uma senha para o
administrador do chatterbot. Nesse trabalho utilizou-se o nome de usuário “admin” e a senha
“123”.
               O processo de instalação do motor de busca está completo, acessando através da
abertura do browser e digitando na barra de endereço: Localhost, assim será redirecionado
para a página inicial do chatterbot. Já para acessar a área administrativa digita-se:
Localhostadmin na barra de endereço.
15



5.2.2 Funcionamento do motor de busca

              O motor de buscas funciona de acordo com a lógica da linguagem AIML, logo
   para se fazer o motor de busca e transformá-lo em um chatterbot adiciona-se as sentenças de
   acordo com a linguagem AIML na área administrativa do chatterbot.
              Com a área administrativa aberta tem-se uma serie de opções, tais como:
         Logs: Exibe o histórico das conversas do chatterbot;
         Bot Personality: Permite alterar informações relacionadas a personalidade do
          chatterbot, como religião, idade e filme favorito;
         Teach: Permite adicionar a “inteligência” do chatterbot, através de perguntas e
          respostas baseadas em AIML;
         Upload AIML: Permite adicionar arquivos AIML ao banco de dados. Isso feito
          através da linguagem SQL;
         Search Edit AIML: Permite pesquisar e editar as sentenças em AIML do banco de
          dados;
         Demo Chat: Para visualizar uma demonstração do chatterbot.;
              A partir daí é possível criar o chatterbot de acordo com um objetivo, adicionando
   palavras ou expressões comuns dentro de um cenário.


   5.3 Personalizando o chatterbot

              O Banco de dados encontra-se carregado com palavras e expressões em inglês,
   então, exclui-se as informações das tabelas: AIML e spellcheck. Para isso, abre-se o
   PhpMyAdmin e clique em SQL no canto superior esquerdo da tela (Figura 3):




                          Figura 3: PhpMyAdmin Página inicial
                              Fonte: PhpMyAdmin(2012)
16



               Digita-se: TRUNCATE aiml; TRUNCATE spellcheck e clica-se em executar.
Desta forma, as duas tabelas terão seus conteúdos apagados e para adicionar as novas
sentenças, clica-se no botão “teach” da área administrativa. A Figura 4 representa a tela que
será aberta.




                                  Figura 4: Ensinando o chatbot
                               Fonte: Área administrativa do chatbot

Onde:
    Topic: Indica a qual tópico ou categoria a pergunta pertence.
       Previous Bot Res: Ultima resposta do chatterbot.
       User Input: Pergunta digitada pelo usuário.
    Bot Response: Resposta do chatterbot.
               Os únicos campos obrigatórios são: User Input e Bot Response. Após o
preenchimento clica-se em “teach” e a pergunta e resposta serão adicionadas na tabela AIML
do banco de dados. Maiores exemplos serão mostrados na posposta no capítulo posterior.


6. PERSONALIZANDO UM CHATTERBOT PARA O SAC DE UMA INSTITUIÇÃO
   DE ENSINO SUPERIOR

               Com a popularização das telecomunicações, passou a ser comum as empresas
disponibilizarem a seus clientes centrais de atendimento, a fim de que eles pudessem,
oficialmente, regisrar suas reclamações, fazer solicitações e oferecer sugestões para o
aperfeiçoamento dos serviços existentes, alem de possibilitar o esclarecimento das duvidas
mais comuns. Essas centrais de atendimento passaram a ser chamadas de SAC- Serviço de
Atendimento ao Consumidor, que por sua vez vem recebendo investimentos para que os
consumidores sejam atendidos da melhor maneira possivel.
               Para que o chatterbot desenvolvido seja capaz de responder as principais dúvidas
de alunos e usuários do site da instituição de ensino é necessário inserí-las em sua base de
dados. Tudo isso usando uma linguagem não muito formal, a fim de deixar o chatterbot o
mais humano possivel.
17



           Após todos os passos seguidos de configuração do ambiente para funcionamento
do chatterbot, incluí-se as dúvidas mais comuns no banco de dados por meio do botão “teach”
da área administrativa do chatterbot. (Figura 5)




                                Figura 5: Botão Teach
                         Fonte: Área administrativa do Chatbot



           Após uma análise minuciosa do que se poderia disponiblizar no SAC, têm-se
exemplos de perguntas e respostas inseridas no Chatterbot Programa Científico, para atender
uma Instituição de ensino Superior.
1) User input: Qual * endereço da escola?
   Bot Response: Estamos na Av. Juscelino Kubitscheck, 229 – Centro – Betim




                               Figura 6: Ensinando o Chatbot 2
                             Fonte: Área administrativa do chatbot




                            Figura 7: Página inicial do chatbot (simples)
                                 Fonte: página inicial do ChatBot
18



2) User input: * psicologia
Bot Response: Dá uma olhada nessa página: http://www.faculdadepitagoras.com.br/ psicologia.aspx




                                Figura 8: Ensinando o Chatbot 4
                              Fonte: Área administrativa do chatbot

            Esse exemplo, em particular, oferece a possibilidade do usuário clicar em um link
e ser redirecionado a uma página que responda a sua dúvida. A pergunta poderia ser: “Como é
o curso de psicologia”, “Qual o foco do curso de psicologia”, “ Fale sobre o curso de
psicologia”, etc. isso porque foi feito o uso do curinga “*” .
3) User input: Quanto custa * ?
Bot Response: <Random><li> Vá a escola e tire todas as suas duvidas</li> <li>Entre em
contato com a escola através do telefone (31) 2101-9000 para obter essa informação
</li><li>Vá a escola e uma de nossas atendentes pode te mostrar nossa tabela de preços e
descontos</li>




                                    Figura 9: Ensinando o Chatbot 5
                                  Fonte: Área administrativa do chatbot

            A tag “Random” é usada para deixar a resposta mais interessante. A resposta pode
ser qualquer uma que esteja dentro das tags “<li> </li>”, usando um método aleatório de
escolha.
19



4) User input: Qual o preço *13 ?
Bot Response: <srai> Quanto custa * ?</srai>

              A tag “srai” permite que a resposta dessa pergunta seja a mesma de outra, ou seja,
a pergunta “Qual o preço * ?” terá a mesma resposta da pergunta “Quanto custa * ?”.




                          Figura 10: Página inicial do Chatbot(com foto)
                                 Fonte: Página inicial do chatbot



5) User input: *14
Bot Response: <Random><li> Não entendi muito bem o que você disse, pode repetir a
pergunta?</li> <li>Entre em contato com a escola através do telefone (31) 2101-9000 para
obter essa informação </li><li>Não tenho essa informação, entre em contato pelo email:
contato@escola.com.br e retornaremos assim que tivermos a resposta</li>
              Ao clicar no botão “teach” as perguntas são adicionadas na tabela “aiml” do
banco de dados de acordo com a imagem a seguir (Figura 11):




                                      Figura 11: PhpMyAdmin
                                        Fonte: Tabela AIML


13
   Em AIML o sinal “*” representa tudo ou qualquer coisa, ou seja, se o usuário digitar uma pergunta que
comece com “Qual” e termine com “nome” não importa o que tenha entre essas duas palavras, a resposta do
Chatbot será: “Meu nome é Personagem Cientifico”. Logo não há diferença entre se perguntar: “Qual seu nome”
de “Qual é seu nome”, para o chatbot serão as mesmas perguntas.
14
   O Sinal “*” sozinho representa uma resposta padrão que será retornada pelo chatbot caso a pergunta feita pelo
usuário não conste no banco de dados
20



7. Análise da proposta

           Empresas querem estar perto de seus clientes, saber o que eles pensam e assim
melhorar seus produtos. Em uma Instituição de Ensino não é diferente, pois ela pode perder
alunos caso seu site não seja de fácil acesso, fazendo-o procurar o site de outra instituição de
ensino que tire suas duvidas de maneira mais rápida. O chatterbot pode dar respostas em um
curto espaço de tempo e proporcionar um ambiente amigável ao usuário, já que é possível
sanar as duvidas usando perguntas em linguagem natural, criando assim um ambiente de fácil
acesso.
           Porém para que isso aconteça é necessária uma constante manutenção no
chatterbot e em seus equipamentos, visto que um grande número de usuários podem acessar o
sistema e não obterem a resposta desejada. Isso faz com que o desenvolvimento do chatterbot
para instituição de ensino superior seja constante e sem data prevista de termino, sempre que
uma pergunta nova for feita um administrador terá que adicioná-la a base de dados.
           Após a desmistificação do chatterbot, percebe-se que é muito importante se
pensar em uma lógica antes de adicionar as perguntas ao banco de dados, é preciso se pensar
nas perguntas frequentes e nas possíveis respostas que os usuários esperam. O Uso das tags
AIML é essencial para fazer com que o chatterbot ganhe realismo, alem disso um banco de
dados recheado de possíveis respostas também pode simular um chatterbot bastante
inteligente, sendo assim necessário se prever as prováveis perguntas que serão feitas ao
chatterbot. O que fica evidenciado é que o realismo e a qualidade do chatterbot estão
diretamente relacionados à base de dados disponíveis para o chatterbot consultar.
           Percebe-se então, que o Chatterbot para uma instituição de ensino pode ser muito
útil quando se trata de ajudar os usuários, pois fornece um serviço diferenciado em que as
dúvidas, críticas ou sugestões podem ser discutidas em um ambiente informal e bem natural.


8. CONCLUSÃO

           No mundo em que se vive sempre será necessário resolver problemas de maneira
rápida e pratica, tecnologias que envolvam um relacionamento mais natural com as máquinas
são uma tendência para o futuro, o que demonstra a importância de se desenvolver
ferramentas pensando no usuário.
              A técnica de criação de um chatterbot parte com o propósito principal de
manter uma comunicação natural com as pessoas, para que elas não percebam que estão
lidando com uma máquina, ou que pelo menos a comunicação seja feita de uma forma mais
21



agradável. As possibilidades de um chatterbot são imensas, ele pode ser aplicando em
qualquer situação em que um sistema computacional interaja com pessoas.
              O objetivo desse trabalho foi de apresentar como é possível desenvolver um
chatterbot usando a linguagem AIML como base, sendo feito um estudo de caso no site de
uma instituição de ensino para avaliar como um chatterbot poderia auxiliar usuários. O que
pelas analises é completamente possível de ser realizado com os softwares e hardwares
disponíveis atualmente.
            Deixando claro que há muitas aplicações para um chatterbot, permitindo seu uso
em qualquer tipo de sistema uma vez que a linguagem de marcação AIML independe de
outras linguagens de programação, aumentando consideravelmente suas possibilidades.
            O chatterbot apresentado permite a criação de diálogos entre usuários e maquinas
por meio de escrita, porem a lógica da AIML permite que o chatterbot receba informações em
forma de texto, imagem, áudio, dentre outras. O que deixa espaço para os programadores
modificarem o código fonte do motor de busca utilizado, a fim de construir um chatterbot
totalmente funcional e compatível com as necessidades de cada tipo de serviço.
           Como     trabalho   futuro,   pretende-se   desenvolver   um    chatterbot   com
reconhecimento de voz para inclusão digital de deficientes visuais, visto que é um publico
carente de softwares específicos para atender suas necessidades.


9. REFERÊNCIAS BIBLIOGRÁFICAS

AGENTLAND (2003). Inteligent agents and bots. Disponível em <www.agentland.com>.
Acesso em 26 de fevereiro de 2012.

AIRES, João Clayton. Desenvolvimento de um Chatterbot para o Portal de Ensino da
Universidade do Oeste de Santa Catarina. Trabalho de Conclusão de Curso (Graduação em
Sistemas de Informação)−Universidade do Oeste de Santa Catarina, São Miguel do Oeste,
2008.

ALCIONE, Miguel Franz. Desenvolvimento de um Chatterbot para o Sicoob de São
Miguel do Oeste ,2010 p. 147

ALICE. Alicebot Org        (2003). Disponível em <www.alicebot.org>. Acesso em 26 de
fevereiro de 2012.

BRAND, Stewart. The media lab: inventing the future at M.I.T. Harmonsworth:
Penguin,1988.

BECKER, Maria, Inclusão digital e cidadania: as possibilidades e as ilusões da "solução"
Editora UEPG, 2009 - 200 páginas
22



COELHO, Helder. Inteligência Artificial em 25 Lições. Lisboa: Fundação Calouste
Gulbenkian, 1994. 532 p. p. 341

FERNANDES, Anita Maria da Rocha. Inteligência Artificial: noções gerais. Florianópolis:
Visualbooks, 2005.

FERREIRA, Leonardo. Trocas comunicativas em ambientes virtuais e inteligências
artificiais. 2008. Disponível em: http://www.intercom.org.br/papers/regionais/nor
deste2008/resumos/R12-0355-1. pdf>. Acesso em: 1 março 2012.

FRANKLIN, S.; GRAESSER, A. Is it an Agent, or just a program?: A taxonomy for
JENSEN, J. F. Interactivity: Tracing a new concept in media and communication
studies. vol. 19. Nordicom Review. 1998. pp. 185–204.

LAVEN, Simon. The Simon Lavel Homepage,                          2000.    Disponível    em:
http://www.simonlaven.com/Acesso em: 06 março 2012.

LEONHARDT, Michelle Denise et al. Elektra: Um Chatterbot para Uso em Ambiente
Educacional,       v.     1,     n.     2,    setembro,      2003.  Disponível  em:    <
http://penta3.ufrgs.br/~elektra/info/artigos/chatterbot-Elektra%5B1%5D.PDF >. Acesso em:
03 março 2012.

PIAGET, J. (1968). A explicação em psicologia e o paralelismo psicofísico. Em: Piaget, J.;
Fraisse, P. e Reuchlin, M. (Eds.), Tratado de Psicologia Experimental: Volume 1 (pp. 121-
152). Rio de Janeiro: Editora Forense.

POLLOCK, John. How to Build a Person: A prolegomenon, MIT Press, 1989.

PRIMO, Alex e CASSOL, Márcio. Explorando o Conceito de interatividade: definições e
taxonomias,                       1999.                     Disponível                  em:
http://seer.ufrgs.br/InfEducTeoriaPratica/article/view/6286/3756 . Acesso em: 15 de março de
2012.

PRIMO, Alex Fernando Teixeira; Coelho, Luciano Roth; Paim, Marcos Flávio Rodrigues
etal. O uso de chatterbots na educação à distância. Universidade Federal do Rio Grande do
Sul, Porto Alegre, 2000.

PROGRAM-O, Blog Program-o. Disponível em: http://blog.program-o.com . Acesso em :
07/07/2012

RAFAELI, S. (1988). Interactivity: From new media to communication. In R. P. Hawkins,
J. M. Wiemann, & S. Pingree (Eds.), Sage Annual Review of Communication Research:
Advancing Communication Science: Merging Mass and Interpersonal Processes, 16, 110-134.
Beverly Hills: Sage.

RICH, Elaine; Knight, Kevin. Inteligência Artificial. 2ª ed. Rio de Janeiro: McGraw-Hill,
1994. 722 p. p. 3. ISBN 85-346-0122-4

SEABRA, Carlos, Inclusão digital:Algumas promessas e muitos desafios. Disponível em:
www.cidec.futuro.usp.br/artigos/artigo12.html capturado em 16/03/2012
23




SEARLE, John L. Minds, Brains, and Programs. Cambridge, Massachusetts: Harvard
University Press, 1986. 112 p

SGANDERLA, Rachele Bianchi. Chatterbot para Interação com Usuários. 2008.
Disponível                                                                         em:
<http://tecnociencia.inf.br/comunidade/index.php?option=com_content&task=view&id=119
&Itemid=41>. Acesso em: 06 março 2012.

SHANKER, S.G. (1987). Wittgenstein versus Turing on the nature of Church's
thesis. Notre Dame J. Formal Logic, 28 (4), 615-649.

TURING, A. (1950). Computing machinery and intelligence. Mind, 59 (236), 423-460

WALLACE, Richard (2003). Artificial Intelligence Markup Language (AIML) Version
1.0.1. Disponível em <www.alicebot.org/TR/2001/WD-aiml>. Acesso em 7 de março de
2012.

Weitere ähnliche Inhalte

Was ist angesagt?

Inteligência artificial
Inteligência artificial Inteligência artificial
Inteligência artificial Ana Felizardo
 
Conhecimento com Fator de Produção e a Relação Universidade-Empresa
Conhecimento com Fator de Produção e a Relação Universidade-EmpresaConhecimento com Fator de Produção e a Relação Universidade-Empresa
Conhecimento com Fator de Produção e a Relação Universidade-EmpresaRoberto C. S. Pacheco
 
Interface e Usabilidade: Como levar o usuário onde queremos!
Interface e Usabilidade: Como levar o usuário onde queremos!Interface e Usabilidade: Como levar o usuário onde queremos!
Interface e Usabilidade: Como levar o usuário onde queremos!Marcelo Prudente
 
Pesquisa de tendências de design e experiência do usuário para o mercado Ed...
Pesquisa de tendências de design  e experiência do usuário para  o mercado Ed...Pesquisa de tendências de design  e experiência do usuário para  o mercado Ed...
Pesquisa de tendências de design e experiência do usuário para o mercado Ed...Ludmyla Gaudeda
 
Palestra "Usabilidade: conceito, aplicações e testes" de Renato Rosa
Palestra "Usabilidade: conceito, aplicações e testes" de Renato RosaPalestra "Usabilidade: conceito, aplicações e testes" de Renato Rosa
Palestra "Usabilidade: conceito, aplicações e testes" de Renato Rosawudrs
 
Inteligência artificial filosofia
Inteligência artificial   filosofiaInteligência artificial   filosofia
Inteligência artificial filosofiaguestbdb4ab6
 
Inteligência Artificial
Inteligência ArtificialInteligência Artificial
Inteligência ArtificialDaniela França
 
Apresentação pkm e criatividade hub share
Apresentação pkm e criatividade hub shareApresentação pkm e criatividade hub share
Apresentação pkm e criatividade hub shareDobra Inova
 
O que é Interação Humano-Computador?
O que é Interação Humano-Computador?O que é Interação Humano-Computador?
O que é Interação Humano-Computador?Sidney Roberto
 
Inteligencia artificial 1
Inteligencia artificial 1Inteligencia artificial 1
Inteligencia artificial 1Nauber Gois
 
Comunicação aumentativa
Comunicação aumentativaComunicação aumentativa
Comunicação aumentativacandidacruz
 
Inteligência Artificial e suas aplicações - A experiência do TECPAR
Inteligência Artificial e suas aplicações  - A experiência do TECPARInteligência Artificial e suas aplicações  - A experiência do TECPAR
Inteligência Artificial e suas aplicações - A experiência do TECPARBruno Campagnolo
 
Interação além da tela: design de aplicações para as próximas gerações (JATIC)
Interação além da tela: design de aplicações para as próximas gerações� (JATIC)Interação além da tela: design de aplicações para as próximas gerações� (JATIC)
Interação além da tela: design de aplicações para as próximas gerações (JATIC)Tatiana Tavares
 

Was ist angesagt? (15)

Técnicas de ia
Técnicas de iaTécnicas de ia
Técnicas de ia
 
Inteligência artificial
Inteligência artificial Inteligência artificial
Inteligência artificial
 
Conhecimento com Fator de Produção e a Relação Universidade-Empresa
Conhecimento com Fator de Produção e a Relação Universidade-EmpresaConhecimento com Fator de Produção e a Relação Universidade-Empresa
Conhecimento com Fator de Produção e a Relação Universidade-Empresa
 
Interface e Usabilidade: Como levar o usuário onde queremos!
Interface e Usabilidade: Como levar o usuário onde queremos!Interface e Usabilidade: Como levar o usuário onde queremos!
Interface e Usabilidade: Como levar o usuário onde queremos!
 
Aula 1
Aula 1Aula 1
Aula 1
 
Pesquisa de tendências de design e experiência do usuário para o mercado Ed...
Pesquisa de tendências de design  e experiência do usuário para  o mercado Ed...Pesquisa de tendências de design  e experiência do usuário para  o mercado Ed...
Pesquisa de tendências de design e experiência do usuário para o mercado Ed...
 
Palestra "Usabilidade: conceito, aplicações e testes" de Renato Rosa
Palestra "Usabilidade: conceito, aplicações e testes" de Renato RosaPalestra "Usabilidade: conceito, aplicações e testes" de Renato Rosa
Palestra "Usabilidade: conceito, aplicações e testes" de Renato Rosa
 
Inteligência artificial filosofia
Inteligência artificial   filosofiaInteligência artificial   filosofia
Inteligência artificial filosofia
 
Inteligência Artificial
Inteligência ArtificialInteligência Artificial
Inteligência Artificial
 
Apresentação pkm e criatividade hub share
Apresentação pkm e criatividade hub shareApresentação pkm e criatividade hub share
Apresentação pkm e criatividade hub share
 
O que é Interação Humano-Computador?
O que é Interação Humano-Computador?O que é Interação Humano-Computador?
O que é Interação Humano-Computador?
 
Inteligencia artificial 1
Inteligencia artificial 1Inteligencia artificial 1
Inteligencia artificial 1
 
Comunicação aumentativa
Comunicação aumentativaComunicação aumentativa
Comunicação aumentativa
 
Inteligência Artificial e suas aplicações - A experiência do TECPAR
Inteligência Artificial e suas aplicações  - A experiência do TECPARInteligência Artificial e suas aplicações  - A experiência do TECPAR
Inteligência Artificial e suas aplicações - A experiência do TECPAR
 
Interação além da tela: design de aplicações para as próximas gerações (JATIC)
Interação além da tela: design de aplicações para as próximas gerações� (JATIC)Interação além da tela: design de aplicações para as próximas gerações� (JATIC)
Interação além da tela: design de aplicações para as próximas gerações (JATIC)
 

Andere mochten auch

Introduction to Chatbots
Introduction to ChatbotsIntroduction to Chatbots
Introduction to ChatbotsDaden Limited
 
Oportunidades e tendencias de mercado para industria de jogos digitais.
Oportunidades e tendencias de mercado para industria de jogos digitais.Oportunidades e tendencias de mercado para industria de jogos digitais.
Oportunidades e tendencias de mercado para industria de jogos digitais.cictec
 
Aspectos leitura
Aspectos leituraAspectos leitura
Aspectos leituraEve Torres
 
Pasos para crear una base de datos
Pasos para crear una base de datosPasos para crear una base de datos
Pasos para crear una base de datosdanifanthon
 
The Power of LinkedIn Career Pages [Webcast]
The Power of LinkedIn Career Pages [Webcast]The Power of LinkedIn Career Pages [Webcast]
The Power of LinkedIn Career Pages [Webcast]LinkedIn Talent Solutions
 
pemberantasan korupsi di korea
pemberantasan korupsi di koreapemberantasan korupsi di korea
pemberantasan korupsi di koreaReza Yudhalaksana
 
Health benefits in science and technology
Health benefits in science and technologyHealth benefits in science and technology
Health benefits in science and technologyJane Gaspang
 
Discuss the similarities and differences between china and uk tv industries
Discuss the similarities and differences between china and uk tv industriesDiscuss the similarities and differences between china and uk tv industries
Discuss the similarities and differences between china and uk tv industriesChenoy Ceil
 
Consolidation strategies
Consolidation strategiesConsolidation strategies
Consolidation strategiesSerge Rivet
 
Novas Tecnologias no Ensino de Línguas Estrangeiras
Novas Tecnologias no Ensino de Línguas EstrangeirasNovas Tecnologias no Ensino de Línguas Estrangeiras
Novas Tecnologias no Ensino de Línguas EstrangeirasAdriana Ramos
 
CV colin Royse November 2014
CV colin Royse November 2014CV colin Royse November 2014
CV colin Royse November 2014Colin Royse
 
Computer Lab Rules
Computer Lab  RulesComputer Lab  Rules
Computer Lab Rulesguest5431f2
 
TDC2016POA | Trilha UX Design - Design antecipatório para projetos de "zero i...
TDC2016POA | Trilha UX Design - Design antecipatório para projetos de "zero i...TDC2016POA | Trilha UX Design - Design antecipatório para projetos de "zero i...
TDC2016POA | Trilha UX Design - Design antecipatório para projetos de "zero i...tdc-globalcode
 
TDC2016POA | Trilha UX Design - Teste de usabilidade na Sprint; Entrega contí...
TDC2016POA | Trilha UX Design - Teste de usabilidade na Sprint; Entrega contí...TDC2016POA | Trilha UX Design - Teste de usabilidade na Sprint; Entrega contí...
TDC2016POA | Trilha UX Design - Teste de usabilidade na Sprint; Entrega contí...tdc-globalcode
 
Apostila hidráulica
Apostila hidráulicaApostila hidráulica
Apostila hidráulicaOuatt Brasil
 

Andere mochten auch (20)

Chatbots
ChatbotsChatbots
Chatbots
 
Introduction to Chatbots
Introduction to ChatbotsIntroduction to Chatbots
Introduction to Chatbots
 
Chatbot interfaces
Chatbot interfacesChatbot interfaces
Chatbot interfaces
 
Oportunidades e tendencias de mercado para industria de jogos digitais.
Oportunidades e tendencias de mercado para industria de jogos digitais.Oportunidades e tendencias de mercado para industria de jogos digitais.
Oportunidades e tendencias de mercado para industria de jogos digitais.
 
Aspectos leitura
Aspectos leituraAspectos leitura
Aspectos leitura
 
Sikhismo at taoismo
Sikhismo at taoismoSikhismo at taoismo
Sikhismo at taoismo
 
Pasos para crear una base de datos
Pasos para crear una base de datosPasos para crear una base de datos
Pasos para crear una base de datos
 
The Power of LinkedIn Career Pages [Webcast]
The Power of LinkedIn Career Pages [Webcast]The Power of LinkedIn Career Pages [Webcast]
The Power of LinkedIn Career Pages [Webcast]
 
pemberantasan korupsi di korea
pemberantasan korupsi di koreapemberantasan korupsi di korea
pemberantasan korupsi di korea
 
Health benefits in science and technology
Health benefits in science and technologyHealth benefits in science and technology
Health benefits in science and technology
 
Discuss the similarities and differences between china and uk tv industries
Discuss the similarities and differences between china and uk tv industriesDiscuss the similarities and differences between china and uk tv industries
Discuss the similarities and differences between china and uk tv industries
 
Consolidation strategies
Consolidation strategiesConsolidation strategies
Consolidation strategies
 
Novas Tecnologias no Ensino de Línguas Estrangeiras
Novas Tecnologias no Ensino de Línguas EstrangeirasNovas Tecnologias no Ensino de Línguas Estrangeiras
Novas Tecnologias no Ensino de Línguas Estrangeiras
 
CV colin Royse November 2014
CV colin Royse November 2014CV colin Royse November 2014
CV colin Royse November 2014
 
Teori Kuantitas Uang
Teori Kuantitas UangTeori Kuantitas Uang
Teori Kuantitas Uang
 
Integrated Thinking and the Integrated Report
Integrated Thinking and the Integrated ReportIntegrated Thinking and the Integrated Report
Integrated Thinking and the Integrated Report
 
Computer Lab Rules
Computer Lab  RulesComputer Lab  Rules
Computer Lab Rules
 
TDC2016POA | Trilha UX Design - Design antecipatório para projetos de "zero i...
TDC2016POA | Trilha UX Design - Design antecipatório para projetos de "zero i...TDC2016POA | Trilha UX Design - Design antecipatório para projetos de "zero i...
TDC2016POA | Trilha UX Design - Design antecipatório para projetos de "zero i...
 
TDC2016POA | Trilha UX Design - Teste de usabilidade na Sprint; Entrega contí...
TDC2016POA | Trilha UX Design - Teste de usabilidade na Sprint; Entrega contí...TDC2016POA | Trilha UX Design - Teste de usabilidade na Sprint; Entrega contí...
TDC2016POA | Trilha UX Design - Teste de usabilidade na Sprint; Entrega contí...
 
Apostila hidráulica
Apostila hidráulicaApostila hidráulica
Apostila hidráulica
 

Ähnlich wie Desenvolvimento de um Chatterbot para Instituição de Ensino

Trabalho de fundamentos de informática.pptx
Trabalho de fundamentos de informática.pptxTrabalho de fundamentos de informática.pptx
Trabalho de fundamentos de informática.pptxsamuel62302
 
Comunicação e inteligência artificial: interagindo com a robô de conversação ...
Comunicação e inteligência artificial: interagindo com a robô de conversação ...Comunicação e inteligência artificial: interagindo com a robô de conversação ...
Comunicação e inteligência artificial: interagindo com a robô de conversação ...Alex Primo
 
o que é Inteligencia artificial (IA)
o que é Inteligencia artificial (IA)o que é Inteligencia artificial (IA)
o que é Inteligencia artificial (IA)kevinfodam
 
Chatbot Inteligente UNIFAFIBE
Chatbot Inteligente UNIFAFIBEChatbot Inteligente UNIFAFIBE
Chatbot Inteligente UNIFAFIBERenan Borba
 
[José Ahirton Lopes e Rafael Arevalo] Primeiros passos em IA e Plataformas Co...
[José Ahirton Lopes e Rafael Arevalo] Primeiros passos em IA e Plataformas Co...[José Ahirton Lopes e Rafael Arevalo] Primeiros passos em IA e Plataformas Co...
[José Ahirton Lopes e Rafael Arevalo] Primeiros passos em IA e Plataformas Co...Ahirton Lopes
 
Inteligência Artificial e Oportunidades.pptx
Inteligência Artificial e Oportunidades.pptxInteligência Artificial e Oportunidades.pptx
Inteligência Artificial e Oportunidades.pptxAlexandreDeOliveira64
 
A máquina está a serviço de quem?
A máquina está a serviço de quem?A máquina está a serviço de quem?
A máquina está a serviço de quem?Denise Vilardo
 
Apropriacoes tecnologias final
Apropriacoes tecnologias finalApropriacoes tecnologias final
Apropriacoes tecnologias finalhernani dimantas
 
Desafios na Interseção entre Direito e Tecnologia
Desafios na Interseção entre  Direito e TecnologiaDesafios na Interseção entre  Direito e Tecnologia
Desafios na Interseção entre Direito e TecnologiaRuy De Queiroz
 
A educação voltada para o futuro
A educação voltada para o futuroA educação voltada para o futuro
A educação voltada para o futuroFernando Alcoforado
 
Ai ad aula 1
Ai ad aula 1Ai ad aula 1
Ai ad aula 1aiadufmg
 
A comunicação e tecnologias na era digital
A comunicação  e tecnologias na era digitalA comunicação  e tecnologias na era digital
A comunicação e tecnologias na era digitalmarluiz31
 
Convergencia de tecnologias
Convergencia de tecnologiasConvergencia de tecnologias
Convergencia de tecnologiashetorivc
 
Convergencia de tecnologias
Convergencia de tecnologiasConvergencia de tecnologias
Convergencia de tecnologiashetorivc
 
Convergencia de tecnologias
Convergencia de tecnologias Convergencia de tecnologias
Convergencia de tecnologias hetorivc
 
QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...
QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...
QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...Azul Assessoria Acadêmica
 
QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...
QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...
QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...Azul Assessoria Acadêmica
 
IA em Saude- FAMEMA.pptx
IA em Saude- FAMEMA.pptxIA em Saude- FAMEMA.pptx
IA em Saude- FAMEMA.pptxNizam Omar
 

Ähnlich wie Desenvolvimento de um Chatterbot para Instituição de Ensino (20)

Trabalho de fundamentos de informática.pptx
Trabalho de fundamentos de informática.pptxTrabalho de fundamentos de informática.pptx
Trabalho de fundamentos de informática.pptx
 
Comunicação e inteligência artificial: interagindo com a robô de conversação ...
Comunicação e inteligência artificial: interagindo com a robô de conversação ...Comunicação e inteligência artificial: interagindo com a robô de conversação ...
Comunicação e inteligência artificial: interagindo com a robô de conversação ...
 
o que é Inteligencia artificial (IA)
o que é Inteligencia artificial (IA)o que é Inteligencia artificial (IA)
o que é Inteligencia artificial (IA)
 
Chatbot Inteligente UNIFAFIBE
Chatbot Inteligente UNIFAFIBEChatbot Inteligente UNIFAFIBE
Chatbot Inteligente UNIFAFIBE
 
[José Ahirton Lopes e Rafael Arevalo] Primeiros passos em IA e Plataformas Co...
[José Ahirton Lopes e Rafael Arevalo] Primeiros passos em IA e Plataformas Co...[José Ahirton Lopes e Rafael Arevalo] Primeiros passos em IA e Plataformas Co...
[José Ahirton Lopes e Rafael Arevalo] Primeiros passos em IA e Plataformas Co...
 
Inteligência Artificial e Oportunidades.pptx
Inteligência Artificial e Oportunidades.pptxInteligência Artificial e Oportunidades.pptx
Inteligência Artificial e Oportunidades.pptx
 
A máquina está a serviço de quem?
A máquina está a serviço de quem?A máquina está a serviço de quem?
A máquina está a serviço de quem?
 
Apropriacoes tecnologias final
Apropriacoes tecnologias finalApropriacoes tecnologias final
Apropriacoes tecnologias final
 
Desafios na Interseção entre Direito e Tecnologia
Desafios na Interseção entre  Direito e TecnologiaDesafios na Interseção entre  Direito e Tecnologia
Desafios na Interseção entre Direito e Tecnologia
 
A educação voltada para o futuro
A educação voltada para o futuroA educação voltada para o futuro
A educação voltada para o futuro
 
Ai ad aula 1
Ai ad aula 1Ai ad aula 1
Ai ad aula 1
 
A comunicação e tecnologias na era digital
A comunicação  e tecnologias na era digitalA comunicação  e tecnologias na era digital
A comunicação e tecnologias na era digital
 
Convergencia de tecnologias
Convergencia de tecnologiasConvergencia de tecnologias
Convergencia de tecnologias
 
Convergencia de tecnologias
Convergencia de tecnologiasConvergencia de tecnologias
Convergencia de tecnologias
 
Convergencia de tecnologias
Convergencia de tecnologias Convergencia de tecnologias
Convergencia de tecnologias
 
Chatbot
ChatbotChatbot
Chatbot
 
QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...
QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...
QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...
 
QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...
QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...
QUESTÃO 1 A Inteligência Artificial é uma das ciências mais recentes. Teve in...
 
IA em Saude- FAMEMA.pptx
IA em Saude- FAMEMA.pptxIA em Saude- FAMEMA.pptx
IA em Saude- FAMEMA.pptx
 
Internet e Educa
Internet e EducaInternet e Educa
Internet e Educa
 

Desenvolvimento de um Chatterbot para Instituição de Ensino

  • 1. 1 DESENVOLVIMENTO DE UM CHATTERBOT BASEADO EM AIML PARA O SITE DE UMA INSTITUIÇÃO DE ENSINO SUPERIOR Lucas Pereira dos Santos1 Renata de Souza França 2 RESUMO O objetivo deste trabalho é apresentar uma proposta para o desenvolvimento de um chatterbot, também conhecido como chatbot, enfatizando a importância da tecnologia e os preceitos da linguagem AIML (Artificial Intelligence Markup Language). Através dos estudos deste trabalho, serão demonstrados passos para a criação de um robô de conversação baseado no padrão aberto de inteligência artificial AIML, propondo sua aplicação em uma instituição de ensino superior. A metodologia utilizada baseou-se em referências bibliográficas e em um estudo de caso para aplicação do tema proposto. Palavras-chave: Chatterbot, Ensino, Artificial, Aiml, Motor de Busca. ABSTRACT The aim of this paper is to present a proposal for the development of a chatterbot, also known as chatbot, emphasizing the importance of technology and the precepts of language AIML (Artificial Intelligence Markup Language). Through studies of this work will be shown steps to create a chat robot based on open standard AI AIML, suggesting its application in a higher education institution. The methodology used was based on references and a case study for application of the proposed topic. Keywords: Chatterbot, Education, Artificial, AIML, Search Engine. 1. INTRODUÇÃO Nos dias atuais, a informática tem proporcionado grande influência à sociedade, principalmente na educação, em que a forma de se aprender tornou-se mais dinâmica, além de influenciar na maneira como as pessoas vivem. 1 Graduando do curso de Ciência da Computação da Faculdade Pitágoras Betim. Contato eletrônico: lucaspprof@gmail.com 2 Orientadora do trabalho de conclusão de curso, Renata de Souza França. Contato eletrônico: profrenatafranca@gmail.com
  • 2. 2 Devido à diversidade nos meios de utilização da internet, diversos questionamentos são apontados, em relação aos impactos, tanto positivos, quanto negativos, que sua utilização pode gerar. Segundo Seabra (2004), a tecnologia em si não é boa ou ruim, mas amplifica e potencializa a ação humana, tal como um megafone pode fazer o bom cantor alegrar multidões e o desafinado incomodar muito mais gente. Para que a sociedade consiga acompanhar a dinamicidade do mundo, é necessário que as pessoas tenham acesso à informática e a tecnologia. Para que esse acesso seja equivalente a todos os seres, necessita-se de meio de Inclusão digital, que segundo Becker (2009), é o nome dado ao processo de democratização do acesso às tecnologias da informação, de forma a permitir a inserção de todos na sociedade da informação. Um incluído digitalmente não é aquele que apenas utiliza o mundo digital para trocar e-mails, mas aquele que usufrui desse suporte para melhorar as suas condições de vida. Não é suficiente que o cidadão possua um simples computador conectado à internet para se dizer que está incluído digitalmente. Segundo o IBGE no Censo 2010, apenas 38,3% dos domicílios possuem computador em um contexto em que menos de 40 % deles possuem tanto telefone fixo quanto celular. De acordo com um levantamento feito pela Network Wizards 3 (2011), o Brasil possui o maior número de hosts4 de Internet da America do Sul, sendo o 4º do mundo, o que reafirma a ideia de que novos métodos devem ser desenvolvidos para se interagir com a tecnologia, métodos esses que proporcionem uma inserção maior das pessoas no universo tecnológico. A AIML (Artificial Intelligence Markup Language) é uma linguagem que desafia os paradigmas da ciência da computação, pois possibilita que humanos conversem com sistemas computacionais usando linguagem natural (linguagem utilizada no dialogo entre duas pessoas). Enquanto pensa-se ser complexo para uma máquina conversar com um humano sobre assuntos diversos, o Dr. Richard S. Wallace, criador da linguagem AIML demonstra que não é bem assim. Técnicas que facilitem a interação entre homem e máquina aumentam, exponencialmente, o alcance de uma tecnologia. Desta forma, novos métodos para interação surgem não sendo bastante desenvolver uma ferramenta sem pensar nos usuários. 3 Organização sem fins lucrativos dedicada a apoiar a infraestrutura da Internet universal. A Network Wizards calcula o número de usuários de um determinado país tomando o número de hosts e multiplicando-o por dez, que é o número estimado de usuários por host. 4 Em informática, host é qualquer dispositivo ou computador conectado a uma rede.
  • 3. 3 Um chatterbot, ou chatbot, é um programa de computador que assume o lugar de um interlocutor, dialogando com pessoas comuns através de textos pré-programados. Em inglês bot é a abreviação de robot, significando robô enquanto chatter significa conversador (AIRES, 2008, p.2). Chatterbots podem ser utilizados de diversas maneiras, e os teóricos de Inteligência Artificial definem em súmula que uma das funções mais importantes de um ser artificial seria a capacidade de o mesmo se comunicar de maneira independente, o que aumenta significativamente a interatividade de qualquer sistema. Desta forma, este trabalho tem como objetivo desenvolver a temática da inclusão digital, através de uma proposta de um chatterbot que atenda os usuários do site de uma instituição de ensino superior, tirando dúvidas simples através do portal, demonstrando a forma de construí-lo. Este trabalho está dividido em 4 partes. A primeira parte relatou uma breve introdução sobre o assunto, assim como o objetivo do trabalho. A parte 2 abordará os conceitos e fundamentos da inteligência artificial. Seguindo para a parte 3, descrevesse e explorasse o universo dos chatterbots, demonstrando os passos necessários para o seu desenvolvimento. A parte 4 será o fim do desenvolvimento e a personalização do chatterbot para que ele se adapte ao sistema. Enfatiza-se que o trabalho tem por objetivo personalizar um chatterbot para o SAC (Serviço de atendimento ao Cliente) de uma instituição de ensino. Ao final, será feita uma análise sobre a proposta. 2. INTELIGÊNCIA ARTIFICIAL (IA) Inteligência Artificial (IA) é um ramo da ciência da computação que se propõe a elaborar dispositivos que simulem a capacidade humana. Segundo Rich (1994, p.3) a IA “permite que objetos tecnológicos tenham ações humanas como de raciocinar, perceber, tomar decisões e resolver problemas, enfim, a capacidade de ser inteligente”. “[...] a palavra “inteligência” vem do latim inter (entre) e legere (escolher). [...] A palavra “artificial” vem do latim artificiale, significa algo não natural, isto é, produzido pelo homem [...]” Portanto, pode-se definir Inteligência Artificial como “[...] um tipo de inteligência produzida pelo homem para dotar as máquinas de algum tipo de habilidade que simula a inteligência do homem.”(FERNANDES, 2005, p.160) O desenvolvimento da área começou logo após a Segunda Guerra Mundial, com o artigo "Computing Machinery and Intelligence" do matemático inglês Alan Turing, e o próprio nome foi cunhado em 1956. Seus principais idealizadores foram os cientistas Herbert
  • 4. 4 Simon, Allen Newell, John McCarthy, Warren McCulloch, Walter Pitts e Marvin Minsky, entre outros. A construção de máquinas inteligentes interessa à humanidade há muito tempo, havendo na história um registro significante de seres mecânicos (reais) e personagens místicos, como o Golem5 e o Frankenstein6, que demonstram um sentimento ambíguo do homem, composto de fascínio e de medo, em relação à Inteligência Artificial. Com o surgimento do computador moderno, é que a inteligência artificial ganhou meios e massa crítica para se estabelecer como ciência integral, com problemáticas e metodologias próprias. Desde então, seu desenvolvimento tem extrapolado os clássicos programas de xadrez ou de conversão e envolvido áreas como visão computacional, análise e síntese da voz, lógica difusa, redes neurais artificiais e muitas outras. De acordo com Helder Coelho (1994), há uma discussão em que se consideram duas propostas básicas para a IA: uma conhecida como "forte" e outra conhecida como "fraca".  Inteligência artificial forte: Aborda a criação da forma de inteligência baseada em computador que consiga raciocinar e resolver problemas; uma forma de IA forte é classificada como autoconsciente. É um tema bastante controverso. Segundo John Pollock (1989) a tese da IA forte é a de que podemos construir uma pessoa (uma coisa que literalmente pensa, sente e é consciente) por meio da construção de um sistema físico dotado de “inteligência artificial” apropriada.  Inteligência artificial fraca: Trata-se da noção de como lidar com problemas não determinísticos. Centra a sua investigação na criação de inteligência artificial que não é capaz de, verdadeiramente, raciocinar e resolver problemas. Uma tal máquina com esta característica de inteligência agiria como se fosse inteligente, mas não tem autoconsciência ou noção de si. Segundo Searle, (1986, p.112) “... ainda que uma máquina possa parecer falar chinês por meio de recursos de exame comparativo com mostras e tabelas de referência, binárias, isso não implica que tal máquina fale e entenda efetivamente a língua”. O teste clássico para aferição da inteligência em máquinas é o Teste de Turing (TT). O teste consiste em se fazer perguntas a uma pessoa e a um computador que não se pode 5 Ser animado artificial mítico, associado à tradição do judaísmo, que pode ser trazido à vida através de um processo mágico. É muitas vezes visto como um gigante de pedra. 6 Personagem criado por Mary Shelley no filme Frankenstein em 1994. No filme um cientista costura partes de diversos cadáveres para criá-lo.
  • 5. 5 ver. Um computador e seus programas passam no TT se, pelas respostas, for impossível a alguém distinguir qual interlocutor é a máquina e qual é a pessoa. Enquanto o progresso direcionado ao objetivo final de uma inteligência similar à humana tem sido lento, muitas derivações surgiram no processo. Muitos outros sistemas úteis têm sido construídos usando tecnologias que ao menos uma vez eram áreas ativas em pesquisa de IA. Alguns exemplos incluem:  Lógica incerta, uma técnica para raciocinar dentro de incertezas, tem sido amplamente usada em sistemas de controles industriais.  Sistemas tradutores.  Redes Neurais vêm sendo usadas em uma larga variedade de tarefas, de sistemas de detecção de intrusos a jogos de computadores.  Reconhecimento de voz está disponível comercialmente e é amplamente usado.  Sistemas de álgebra computacional, tais como Matemática e Macsyma, são bons exemplos de aplicações de IA na solução de problemas algébricos.  Aplicações utilizando Vida Artificial são utilizadas na indústria de entretenimento e no desenvolvimento da Computação Gráfica.  Chatterbots (robôs de software para conversação), personagens virtuais que conversam em linguagem natural como se fossem humanos de verdade, são cada vez mais comuns na internet. A visão da Inteligência Artificial, substituindo julgamento humano profissional, tem surgido muitas vezes na história, em Ficção Científica e, hoje em dia, em algumas áreas especializadas em que "Sistemas Especialistas" são usados para melhorar ou para substituir o julgamento humano. Autores, como Wittgenstein (citado por Shanker, 1987,p.28) e Piaget (1968, pp. 121-152), sustentam que mesmo nesses termos não seria possível afirmar que as máquinas pensam, pois o pensamento seria uma característica humana, não se tratando de um processo mecânico estruturado por regras lógicas. Caracterizá-lo dessa forma seria transgredir sua própria natureza. Todavia, deve ser lembrando a definição de pensamento proposta por Turing (1950, p.59), “pensamento é o processo pelo qual se resolve problemas manipulando- se informações”. Assim, algo que pensa é algo que resolve problemas, não importando se o processo pelo qual se chega às respostas seja lógico-formal e mecanicista ou baseado em modelos mentais e estratégias. Dessa forma, há tanto homens quanto máquinas plenamente capazes de resolver problemas.
  • 6. 6 3. INTERATIVIDADE Vive-se em um tempo que nada acontece fora do universo tecnológico e a cada momento as pessoas encontram-se diante da interação homem-máquina. A cada momento experimentam-se formas de interação técnica e social. Em uma era das mídias digitais e das tecnologias em rede, percebe-se a utilização constante do termo interatividade. (PRIMO,1999, p.165) “Características como bidirecionalidade, resposta imediata, controle do usuário, quantidade de ações do usuário, respostas (feedback), transparência, entre outras, se consideradas isoladamente não garantem o caráter interativo da comunicação. Refere-se à habilidade do usuário de perceber a experiência como uma simulação da comunicação interpessoal,alem é claro de permitir que o usuário exerça influência sobre o conteúdo ou a forma da comunicação mediada.” (RAFAELI, 1988, p.16) Já segundo Andrew Lippman (BRAND, 1988, p.5), pode-se definir interatividade como uma “atividade mútua e simultânea da parte dos dois participantes, normalmente trabalhando em direção de um mesmo objetivo”. Sendo assim, a interatividade seria um tipo de relação tecno-social, como um diálogo, uma conversação entre homens e máquinas, em tempo real. A relação deixaria de ser passiva ou representativa, passando a ser ativa e permitindo inclusive a relação inteligente entre máquinas inteligentes sem a mediação humana. (PRIMO,1999, p.165) 4. CHATTERBOTS Chatterbot (ou chatbot) é um programa de computador que tenta simular um ser humano na conversação com as pessoas. O objetivo é responder as perguntas de tal forma que as pessoas tenham a impressão de estar conversando com outra pessoa e não com um programa de computador. (SGANDERLA, 2008). Após o envio de perguntas em linguagem natural, o programa consulta uma base de conhecimento e em seguida fornece uma resposta que tenta imitar o comportamento humano. O termo Chatterbot surgiu da junção das palavras chatter (a pessoa que conversa) e da palavra bot (abreviatura de robot), ou seja, um robô (em forma de software) que conversa com as pessoas. (AIRES, 2008, p.2) A palavra foi inventada por Michael Mauldin (Criador do primeiro Verbot7, Julia) em 1994, para descrever estes robôs de conversação na Twelfth National Conference on 7 Verbot é um chatterbot, ou Chatbot, programa desenvolvido para tentar se passar por um humano.
  • 7. 7 Artificial Intelligence8. Embora os chatterbots existam desde a década de 60, há um aumento no interesse destas tecnologias desde a generalização da Internet. A Internet fez os chatterbots acessíveis ao público em geral e ao mesmo tempo criou para os Web sites a necessidade de terem uma interface parecida com a humana para fornecer informações de forma agradável a milhares de pessoas por dia. 4.1 Desafios De fato, mais e mais esforços estão sendo direcionados à pesquisa e desenvolvimento de chatterbots. Embora adquirir inteligência humana ainda seja um sonho distante, a tecnologia dos chatterbots só tende a crescer. (AGENTLAND, 2003). Os chatbots também apresentam algumas desvantagens, sendo a principal delas o fato de que é um programa de computador e não é capaz de pensar e aprender da mesma forma que um ser humano o faz. Como a quantidade de sentenças que um ser humano pode produzir é praticamente infinita, dificilmente um software será capaz de lidar com todos os tipos de entradas fornecidas pelos usuários. Segundo Primo (2000) como a linguagem humana é muito complexa, quanto mais pessoas participarem das conversas, e da escrita do cérebro do chatterbot, melhor será o desempenho do dialógico. Apesar das limitações, esse tipo de programa não pode ser desprezado como ferramenta auxiliar. O potencial para o uso dessa tecnologia é enorme em áreas como educação, atendimento ao cliente, suporte on-line ou para qualquer serviço que necessite de consulta à base de dados. Pois proporciona um ambiente mais agradável e de fácil interação, alem de ser uma tecnologia relativamente barata que pode ser usada por vários usuários simultaneamente. 4.2 Vantagens e Características  Um robô não precisa de salário, vale alimentação ou vale transporte;  Vocabulário e respostas do robô totalmente personalizável;  24 horas disponível;  Todas as mensagens trocadas entre o robô e usuários são gravadas e podem ser visualizadas posteriormente; 8 Fundada em 1979, a Associação para o Avanço da Inteligência Artificial (AAAI) é uma sociedade científica sem fins lucrativos dedicada ao avanço do conhecimento científico dos mecanismos subjacentes de pensamento e comportamento inteligente e a sua incorporação em máquinas.
  • 8. 8  Custo de manutenção muito baixo. Antes de classificar-se os chatterbots é importante esclarecer a diferença entre chatterbots e agentes. Segundo Primo (2000), nem todo agente é um agente de conversação. Software agente é um sinônimo para software robot ou simplesmente “bot”. Existe agente que busca por ofertas, sugere produtos, etc., mas não entende linguagem natural. Um chatterbot é um tipo específico de bot capaz de entender linguagem natural. Talvez, o termo “entender” seja um tanto ambicioso, como diz Primo (2000), já que reconhecer signos não quer dizer propriamente que haja uma verdadeira compreensão por parte do robô. Enfim, deve-se entender que um robô de conversação não compreende a fala, mas sim, reconhece a linguagem podendo reagir a ela. De forma geral, os chatterbots podem ser analisados segundo uma série de características dentre as quais se destaca: (Franklin e Graesser, 1996).  Capacidade de aprender – capacidade do chatterbot de aprender durante o diálogo com o usuário. O chatterbot pode aprender sobre o domínio e sobre o usuário. Este tipo de chatterbot tem uma maior probabilidade de manter diálogo por mais tempo sem ser percebido o fato de ser um programa.  Memória – capacidade de lembrar os diálogos passados e sentenças mencionadas previamente dentro de um mesmo diálogo.  Domínio – possíveis temas para diálogo. Alguns chatterbots não fazem restrição de domínio, contudo podem ser especialistas em determinados assuntos. Em outros chatterbots existe a opção do usuário escolher qual o domínio da conversa.  Robustez – capacidade do robô de responder a sentenças do usuário não reconhecidas.  Autoconhecimento – capacidade de o robô falar sobre si mesmo. Os chatterbots podem ser classificados segundo sua área de aplicação como de entretenimentos, de busca, acadêmicos, de comércio, dentre outros. Laven (2000) apresenta uma classificação que considera os recursos utilizados. Nesta classificação os chatterbots podem ser encontrados nas seguintes categorias: clássicos, complexos, amigáveis e ensináveis.  Clássicos: chatterbots criados com o objetivo inicial de estudar a complexidade na comunicação em linguagem natural entre homens e máquinas.  Complexos: criados a partir de linguagens de programação mais sofisticadas, A idéia principal neste programa é avaliar a natureza da comunicação entre homem e
  • 9. 9 computador. Seu funcionamento é baseado em padrões de mapeamentos das perguntas mais comuns de usuários nas respostas adequadas.  Amigáveis: são capazes de reproduzir o comportamento de uma pessoa.  Ensináveis: Chatterbots que possuem capacidade de aprendizagem. 4.3 Artificial intelligence markup language (AIML) Os Chatterbots são baseados em uma rotina de “estímulo – resposta”, ou seja, você pergunta, e ele responde com base na sua pergunta. Para criar um chatterbot, pode-se utilizar uma linguagem de marcação desenvolvida para esse propósito, como a Artificial Intelligence Markup Language (AIML), que é virtualmente independente de linguagem de programação, tudo que se precisa para AIML funcionar, é um processador de AIML escrito na linguagem escolhida pelo desenvolvedor. Pode-se também usar Prolog9, ou outra linguagem de programação em lógica, e criar um chatterbot a partir do zero, ou ainda adaptar uma versão existente de algum programa desse tipo, o que requer conhecimentos elaborados de programação de computadores e de programação em lógica. O AIML é baseado num padrão de entradas e saídas, assim, quando o usuário digita algo, o bot já tem uma saída para aquela pergunta. O chatterbot é composto por tags que irão definir todo o contexto necessário para se programar em AIML. (WALLACE, 2003) Existem inúmeros chatterbots na internet, porém, um deles ganha destaque neste conceito, trata-se da A.L.I.C.E. (Artificial Linguistic Internet Computer Entity) escrita em AIML, criada por Richard S. Wallace, e ganhadora de muitos prêmios por sua eficiência e realismo (ALICE, 2003). Ainda, segundo o autor, o AIML tem como principais tags:  <aiml> inicia e terminar o bloco AIML.  <category> indica uma categoria ou unidade de conhecimento.  <pattern> Indica o padrão da mensagem que será digitada pelo usuário.  <template> indica a resposta para o que foi digitado  <random> proporciona respostas aleatórias  <li> marca bloco de respostas aleatórias é usado dentro do bloco <random>  <that> registra a ultima sentença, gerando uma sequencia no dialogo. 9 Linguagem de programação puramente lógica, especialmente associada com a inteligência artificial e linguística computacional.
  • 10. 10  <srai> Redireciona para outra questão ou categoria. A base de conhecimento do chatterbot é formada pelas tags da linguagem AIML, ou seja, todas as possíveis perguntas e respostas do usuário ficam armazenadas nessa base, conforme observa-se na Figura 1: Exemplo 1 Exemplo 2 <aiml> <aiml> <category> <category> <pattern> oi </pattern> <pattern>qual o seu nome?</pattern> <template> <template> Ola, tudo bem? <random> </template> <li>Sou chamado de chatterbot</li> </category> <li>Me chamo chatterbot</li> </aiml> <li>Chatterbot</li> <li>pode me chamar de chatterbot</li> </random> </template> </category> </aiml> Figura 1: Exemplo AIML Fonte: Elaborado pelo autor A Figura 1 possui exemplos de perguntas cadastradas na base de conhecimento do chatterbot. Cada bloco pode possuir milhares de questões. No exemplo 1, sempre que o usuário digitar “oi” o chatterbot responderá “ola, tudo bem?”. Já no exemplo 2, ao ser digitado “qual o seu nome?” o chatterbot vai sortear uma das respostas que estão dentro do bloco <random>. 4.4 Exemplos de chatterbots Segundo Alcione (2010) em pesquisas realizadas, descobriu-se que já existem diversos chatterbots, os quais possuem como função atender clientes de empresas. Cada vez mais as empresas investem nessa nova modalidade de atendimento. Os chatterbots estão inclusos em diversas áreas, como: saúde, educação, comercial, governamental, entre outras. A seguir, destacam-se os principais agentes de conversação disponíveis na internet. Eliza: Iniciando a primeira geração de chatterbot em 1966 e desenvolvido por Joseph Weizenbaum, no Massachussets Institute of Technology (Instituto de Tecnologia de Massachussets), nasceu o primeiro chatterbot, Eliza. Este tinha por objetivo fazer uma psicanálise e diagnosticar, por meio de diálogos amigáveis, problemas psicológicos em pacientes. Já naquela época obtinha-se êxito. Porém, Eliza não mantinha em base as conversas realizadas anteriormente, com isso deixava um pouco a desejar (LEONHARDT, 2003).
  • 11. 11 Cybelle (Nacional): Já no Brasil, o estudo de chatterbots é mais recente. Criado por Alex Primo, em 2000, o primeiro chatterbot brasileiro é chamado de Cybelle. Com poder de expressões emocionais, como tristeza, humor, entre outros, isso ajudou a quebrar as limitações com o humano em relação à comunicação, além, é claro, de propiciar um bom bate-papo para descontrair. Cybelle possui uma base de conhecimento composta por várias respostas pré-programadas, possibilitando maior abrangência e flexibilidade com o humano (LEONHARDT, 2003). Ed: Desenvolvido pela Insite e lançado pela Petrobrás em 20 de outubro de 2004, surgiu para interagir com o meio social em um público-alvo infanto-juvenil, com a intenção de conscientizar quanto ao consumo racional energético brasileiro. Integrado ao site da Conpet (Programa Nacional de Racionalização do Uso dos Derivados do Petróleo e do Gás Natural), fornece amplo material, como vídeos, apostilas e centenas de links para saciar as dúvidas em questão (OLIVEIRA, 2004). Sete Zoom: Também desenvolvida pela Insite, para o site da Close Up, pela sua personalidade atrevida, é considerada a modelo virtual mais famosa do Brasil. Vários contextos e características de comunicação humana foram implementados; possui capacidade de bolar idéias a partir de assuntos abordados durante a conversa. Suas respostas são baseadas em uma personalidade forte por meio de uma base de conhecimento pré-alimentada pelos programadores. Em sua implementação, destacam a habilidade de memorizar assuntos já conversados, como seu nome, por exemplo. Tem capacidade de direcionamento de assunto baseado na inserção do internauta, além de apresentar e elaborar ideias (FERREIRA, 2008). 5. ESTUDO DE CASO SOBRE O DESENVOLVIMENTO DE UM CHATTERBOT Esse estudo tem como objetivo desenvolver uma proposta de chatterbot a ser inserido em um site de instituição de ensino superior, para apoiar a página de dúvidas frequentes. O chatterbot poderá ser implantando tanto no site quanto em terminais espalhados pela instituição, visto que a interatividade e a facilidade de interagir com páginas web são fatores de bastante relevância para o usuário. Será desenvolvido um chatterbot a partir de um motor de busca já existente. Para poder explicar melhor como se dará o desenvolvimento do chatterbot, o trabalho será dividido em 3 partes, a primeira sobre o que é necessário para se desenvolver o chatterbot, a segunda sobre como instalar o motor de busca e como é seu funcionamento e a terceira vai demonstrar como personalizar o motor de busca e criar o chatterbot.
  • 12. 12 5.1 O desenvolvimento O chatterbot será criado baseando-se no projeto “PROGRAM-O v1.0.3” desenvolvido por Elizabeth Perreau e lançado com o código-fonte aberto em janeiro 2009, que desde então vem recebendo atualizações de uma grande comunidade de desenvolvedores ao redor do mundo, o que justifica a escolha desse motor de busca para o desenvolvimento do trabalho. Para instalar o motor de busca é necessário que o computador tenha um servidor Web instalado. Nesse trabalho, adotou-se o programa WampServer2.1e-x32(Wamp)10, que é um pacote de programas que instala automaticamente o Apache 1.331, PHP5, MySQL database, PHPmyadmin e SQLitemanager. Sendo que cada um dos programas instalados tem a sua função durante o desenvolvimento. Para que seja possível criar e editar as páginas web, trabalha-se com o software PHP Editor 2.22, que é um editor gratuito e totalmente em português destinado a edição de páginas PHP11 e HTML12. 5.2 Motor de busca Depois de baixado o motor de busca (PROGRAM-O, 2012), faz-se necessário instalá-lo no servido web, para isso basta abrir a pasta “www directory” que pode ser encontrada clicando no ícone do Wamp na área de notificação do Windows e colar os arquivos(Figura 2) Figura 2: Wamp (Área de notificação) Fonte: Wamp Server 2.1 (2012) 10 Pacote com os programas: Apache como servidor web, PHP5 que interpreta códigos na linguagem PHP, PHPmyadmin para controlar a parte administrativa do PHP e o SQLitemanager responsável pelos códigos (SQL) usados no banco de dados 11 PHP ou Hypertext Preprocessor é uma linguagem de programação livre utilizada para gerar conteúdo dinâmico na Internet 12 HTML ou HyperText Markup Language é uma linguagem de programação utilizada para produzir páginas estáticas na Internet.
  • 13. 13 O motor de busca conta com o seguinte diretório:  Pasta Admin: Onde se encontram todos os scripts para a parte administrativa do motor de busca.  Pasta: Bot: Contém os arquivos necessários para o bot funcionar, como scripts para buscar a resposta no bando de dados.  Arquivo Index.php: Página inicial do nosso motor de busca, onde de fato poderemos conversar com nosso personagem.  Arquivo install_programo.php: Script para instalar o motor de busca no servidor web. 5.2.1 Instalação do motor de busca Para instalar o motor de busca primeiro é necessário criar um banco de dados para armazenar as suas informações, para este estudo foi criado um banco de dados chamado “banco” usando o aplicativo PhpMyAdmin. Depois de criado o banco de dados, configura-se o acesso a ele. Para isso abra a pasta “bot” que se encontra na pasta “www directory”. Dentro da pasta há um arquivo chamado “config.php” que contém as configurações de acesso ao banco de dados. O arquivo possui 4 constantes que devem ser alteradas:  $dbh: Localização do servidor  $dbn: Nome do banco de dados  $dbu: Nome de usuário do banco de dados  $dbp: Senha do banco de dados No wamp a localização padrão do servidor é “localhost”, o usuário padrão é “root” e não há uma senha predefinida, Logo as constantes recebem os seguintes valores:  $dbh = "localhost";  $dbn = "banco";  $dbu = "root";  $dbp = ""; Esse processo também deve ser feito no arquivo “config.php” da área administrativa do motor de busca, em “www directoryadminfuncs” . Para iniciar a instalação do motor de busca tem-se que abrir o browser e digitar na barra de endereço: localhost/install_programo.php , depois clicar em “click here to
  • 14. 14 proceed” para que o script crie as tabelas necessárias para o motor de busca funcionar. As tabelas são: Tabela 1: Tabelas do banco de dados TABELA COMENTÁRIO Armazena os scripts AIML instalados com o AIML motor de busca Armazena os scripts AIML instalados por AIML_USERUNDEFINED usuários desconhecidos Armazena informações sobre a personalidade BOTPERSONALITY do Chatterbot Armazena os diálogos realizados pelo CONVERSATION_LOG chatterbot Armazena palavras erradas e as suas SPELLCHECK correções. Mesmo que o usuário digite errado o chatterbot vai entender. UNDEFINED_DEFAULTS Armazena padrões definidos para o chatterbot Armazena entradas desconhecidas pelo UNKNOWN_INPUTS chatterbot Armazena dados referentes aos usuários da USERS área administrativa Fonte: PhpMyAdmin (2012) - Gerado pelo projeto Program-o Posteriormente, adicionam-se alguns scripts AIML no banco de dados para simular uma inteligência básica ao chatterbot. Além disso, as tabelas: Undefined_defaults, botpersonality e spellcheck são preenchidas com valores padrões do chatterbot. Tudo isso, baseando-se na língua inglesa. A partir desse momento o motor de busca já está instalado e funcionando em seu servidor web, agora torna-se necessário configurar a parte administrativa. Clicando em “To install My Program-O admin área” abre-se a instalação da área administrativa, desta forma segue-se as instruções para que seja criado um nome de usuário e uma senha para o administrador do chatterbot. Nesse trabalho utilizou-se o nome de usuário “admin” e a senha “123”. O processo de instalação do motor de busca está completo, acessando através da abertura do browser e digitando na barra de endereço: Localhost, assim será redirecionado para a página inicial do chatterbot. Já para acessar a área administrativa digita-se: Localhostadmin na barra de endereço.
  • 15. 15 5.2.2 Funcionamento do motor de busca O motor de buscas funciona de acordo com a lógica da linguagem AIML, logo para se fazer o motor de busca e transformá-lo em um chatterbot adiciona-se as sentenças de acordo com a linguagem AIML na área administrativa do chatterbot. Com a área administrativa aberta tem-se uma serie de opções, tais como:  Logs: Exibe o histórico das conversas do chatterbot;  Bot Personality: Permite alterar informações relacionadas a personalidade do chatterbot, como religião, idade e filme favorito;  Teach: Permite adicionar a “inteligência” do chatterbot, através de perguntas e respostas baseadas em AIML;  Upload AIML: Permite adicionar arquivos AIML ao banco de dados. Isso feito através da linguagem SQL;  Search Edit AIML: Permite pesquisar e editar as sentenças em AIML do banco de dados;  Demo Chat: Para visualizar uma demonstração do chatterbot.; A partir daí é possível criar o chatterbot de acordo com um objetivo, adicionando palavras ou expressões comuns dentro de um cenário. 5.3 Personalizando o chatterbot O Banco de dados encontra-se carregado com palavras e expressões em inglês, então, exclui-se as informações das tabelas: AIML e spellcheck. Para isso, abre-se o PhpMyAdmin e clique em SQL no canto superior esquerdo da tela (Figura 3): Figura 3: PhpMyAdmin Página inicial Fonte: PhpMyAdmin(2012)
  • 16. 16 Digita-se: TRUNCATE aiml; TRUNCATE spellcheck e clica-se em executar. Desta forma, as duas tabelas terão seus conteúdos apagados e para adicionar as novas sentenças, clica-se no botão “teach” da área administrativa. A Figura 4 representa a tela que será aberta. Figura 4: Ensinando o chatbot Fonte: Área administrativa do chatbot Onde:  Topic: Indica a qual tópico ou categoria a pergunta pertence.  Previous Bot Res: Ultima resposta do chatterbot.  User Input: Pergunta digitada pelo usuário.  Bot Response: Resposta do chatterbot. Os únicos campos obrigatórios são: User Input e Bot Response. Após o preenchimento clica-se em “teach” e a pergunta e resposta serão adicionadas na tabela AIML do banco de dados. Maiores exemplos serão mostrados na posposta no capítulo posterior. 6. PERSONALIZANDO UM CHATTERBOT PARA O SAC DE UMA INSTITUIÇÃO DE ENSINO SUPERIOR Com a popularização das telecomunicações, passou a ser comum as empresas disponibilizarem a seus clientes centrais de atendimento, a fim de que eles pudessem, oficialmente, regisrar suas reclamações, fazer solicitações e oferecer sugestões para o aperfeiçoamento dos serviços existentes, alem de possibilitar o esclarecimento das duvidas mais comuns. Essas centrais de atendimento passaram a ser chamadas de SAC- Serviço de Atendimento ao Consumidor, que por sua vez vem recebendo investimentos para que os consumidores sejam atendidos da melhor maneira possivel. Para que o chatterbot desenvolvido seja capaz de responder as principais dúvidas de alunos e usuários do site da instituição de ensino é necessário inserí-las em sua base de dados. Tudo isso usando uma linguagem não muito formal, a fim de deixar o chatterbot o mais humano possivel.
  • 17. 17 Após todos os passos seguidos de configuração do ambiente para funcionamento do chatterbot, incluí-se as dúvidas mais comuns no banco de dados por meio do botão “teach” da área administrativa do chatterbot. (Figura 5) Figura 5: Botão Teach Fonte: Área administrativa do Chatbot Após uma análise minuciosa do que se poderia disponiblizar no SAC, têm-se exemplos de perguntas e respostas inseridas no Chatterbot Programa Científico, para atender uma Instituição de ensino Superior. 1) User input: Qual * endereço da escola? Bot Response: Estamos na Av. Juscelino Kubitscheck, 229 – Centro – Betim Figura 6: Ensinando o Chatbot 2 Fonte: Área administrativa do chatbot Figura 7: Página inicial do chatbot (simples) Fonte: página inicial do ChatBot
  • 18. 18 2) User input: * psicologia Bot Response: Dá uma olhada nessa página: http://www.faculdadepitagoras.com.br/ psicologia.aspx Figura 8: Ensinando o Chatbot 4 Fonte: Área administrativa do chatbot Esse exemplo, em particular, oferece a possibilidade do usuário clicar em um link e ser redirecionado a uma página que responda a sua dúvida. A pergunta poderia ser: “Como é o curso de psicologia”, “Qual o foco do curso de psicologia”, “ Fale sobre o curso de psicologia”, etc. isso porque foi feito o uso do curinga “*” . 3) User input: Quanto custa * ? Bot Response: <Random><li> Vá a escola e tire todas as suas duvidas</li> <li>Entre em contato com a escola através do telefone (31) 2101-9000 para obter essa informação </li><li>Vá a escola e uma de nossas atendentes pode te mostrar nossa tabela de preços e descontos</li> Figura 9: Ensinando o Chatbot 5 Fonte: Área administrativa do chatbot A tag “Random” é usada para deixar a resposta mais interessante. A resposta pode ser qualquer uma que esteja dentro das tags “<li> </li>”, usando um método aleatório de escolha.
  • 19. 19 4) User input: Qual o preço *13 ? Bot Response: <srai> Quanto custa * ?</srai> A tag “srai” permite que a resposta dessa pergunta seja a mesma de outra, ou seja, a pergunta “Qual o preço * ?” terá a mesma resposta da pergunta “Quanto custa * ?”. Figura 10: Página inicial do Chatbot(com foto) Fonte: Página inicial do chatbot 5) User input: *14 Bot Response: <Random><li> Não entendi muito bem o que você disse, pode repetir a pergunta?</li> <li>Entre em contato com a escola através do telefone (31) 2101-9000 para obter essa informação </li><li>Não tenho essa informação, entre em contato pelo email: contato@escola.com.br e retornaremos assim que tivermos a resposta</li> Ao clicar no botão “teach” as perguntas são adicionadas na tabela “aiml” do banco de dados de acordo com a imagem a seguir (Figura 11): Figura 11: PhpMyAdmin Fonte: Tabela AIML 13 Em AIML o sinal “*” representa tudo ou qualquer coisa, ou seja, se o usuário digitar uma pergunta que comece com “Qual” e termine com “nome” não importa o que tenha entre essas duas palavras, a resposta do Chatbot será: “Meu nome é Personagem Cientifico”. Logo não há diferença entre se perguntar: “Qual seu nome” de “Qual é seu nome”, para o chatbot serão as mesmas perguntas. 14 O Sinal “*” sozinho representa uma resposta padrão que será retornada pelo chatbot caso a pergunta feita pelo usuário não conste no banco de dados
  • 20. 20 7. Análise da proposta Empresas querem estar perto de seus clientes, saber o que eles pensam e assim melhorar seus produtos. Em uma Instituição de Ensino não é diferente, pois ela pode perder alunos caso seu site não seja de fácil acesso, fazendo-o procurar o site de outra instituição de ensino que tire suas duvidas de maneira mais rápida. O chatterbot pode dar respostas em um curto espaço de tempo e proporcionar um ambiente amigável ao usuário, já que é possível sanar as duvidas usando perguntas em linguagem natural, criando assim um ambiente de fácil acesso. Porém para que isso aconteça é necessária uma constante manutenção no chatterbot e em seus equipamentos, visto que um grande número de usuários podem acessar o sistema e não obterem a resposta desejada. Isso faz com que o desenvolvimento do chatterbot para instituição de ensino superior seja constante e sem data prevista de termino, sempre que uma pergunta nova for feita um administrador terá que adicioná-la a base de dados. Após a desmistificação do chatterbot, percebe-se que é muito importante se pensar em uma lógica antes de adicionar as perguntas ao banco de dados, é preciso se pensar nas perguntas frequentes e nas possíveis respostas que os usuários esperam. O Uso das tags AIML é essencial para fazer com que o chatterbot ganhe realismo, alem disso um banco de dados recheado de possíveis respostas também pode simular um chatterbot bastante inteligente, sendo assim necessário se prever as prováveis perguntas que serão feitas ao chatterbot. O que fica evidenciado é que o realismo e a qualidade do chatterbot estão diretamente relacionados à base de dados disponíveis para o chatterbot consultar. Percebe-se então, que o Chatterbot para uma instituição de ensino pode ser muito útil quando se trata de ajudar os usuários, pois fornece um serviço diferenciado em que as dúvidas, críticas ou sugestões podem ser discutidas em um ambiente informal e bem natural. 8. CONCLUSÃO No mundo em que se vive sempre será necessário resolver problemas de maneira rápida e pratica, tecnologias que envolvam um relacionamento mais natural com as máquinas são uma tendência para o futuro, o que demonstra a importância de se desenvolver ferramentas pensando no usuário. A técnica de criação de um chatterbot parte com o propósito principal de manter uma comunicação natural com as pessoas, para que elas não percebam que estão lidando com uma máquina, ou que pelo menos a comunicação seja feita de uma forma mais
  • 21. 21 agradável. As possibilidades de um chatterbot são imensas, ele pode ser aplicando em qualquer situação em que um sistema computacional interaja com pessoas. O objetivo desse trabalho foi de apresentar como é possível desenvolver um chatterbot usando a linguagem AIML como base, sendo feito um estudo de caso no site de uma instituição de ensino para avaliar como um chatterbot poderia auxiliar usuários. O que pelas analises é completamente possível de ser realizado com os softwares e hardwares disponíveis atualmente. Deixando claro que há muitas aplicações para um chatterbot, permitindo seu uso em qualquer tipo de sistema uma vez que a linguagem de marcação AIML independe de outras linguagens de programação, aumentando consideravelmente suas possibilidades. O chatterbot apresentado permite a criação de diálogos entre usuários e maquinas por meio de escrita, porem a lógica da AIML permite que o chatterbot receba informações em forma de texto, imagem, áudio, dentre outras. O que deixa espaço para os programadores modificarem o código fonte do motor de busca utilizado, a fim de construir um chatterbot totalmente funcional e compatível com as necessidades de cada tipo de serviço. Como trabalho futuro, pretende-se desenvolver um chatterbot com reconhecimento de voz para inclusão digital de deficientes visuais, visto que é um publico carente de softwares específicos para atender suas necessidades. 9. REFERÊNCIAS BIBLIOGRÁFICAS AGENTLAND (2003). Inteligent agents and bots. Disponível em <www.agentland.com>. Acesso em 26 de fevereiro de 2012. AIRES, João Clayton. Desenvolvimento de um Chatterbot para o Portal de Ensino da Universidade do Oeste de Santa Catarina. Trabalho de Conclusão de Curso (Graduação em Sistemas de Informação)−Universidade do Oeste de Santa Catarina, São Miguel do Oeste, 2008. ALCIONE, Miguel Franz. Desenvolvimento de um Chatterbot para o Sicoob de São Miguel do Oeste ,2010 p. 147 ALICE. Alicebot Org (2003). Disponível em <www.alicebot.org>. Acesso em 26 de fevereiro de 2012. BRAND, Stewart. The media lab: inventing the future at M.I.T. Harmonsworth: Penguin,1988. BECKER, Maria, Inclusão digital e cidadania: as possibilidades e as ilusões da "solução" Editora UEPG, 2009 - 200 páginas
  • 22. 22 COELHO, Helder. Inteligência Artificial em 25 Lições. Lisboa: Fundação Calouste Gulbenkian, 1994. 532 p. p. 341 FERNANDES, Anita Maria da Rocha. Inteligência Artificial: noções gerais. Florianópolis: Visualbooks, 2005. FERREIRA, Leonardo. Trocas comunicativas em ambientes virtuais e inteligências artificiais. 2008. Disponível em: http://www.intercom.org.br/papers/regionais/nor deste2008/resumos/R12-0355-1. pdf>. Acesso em: 1 março 2012. FRANKLIN, S.; GRAESSER, A. Is it an Agent, or just a program?: A taxonomy for JENSEN, J. F. Interactivity: Tracing a new concept in media and communication studies. vol. 19. Nordicom Review. 1998. pp. 185–204. LAVEN, Simon. The Simon Lavel Homepage, 2000. Disponível em: http://www.simonlaven.com/Acesso em: 06 março 2012. LEONHARDT, Michelle Denise et al. Elektra: Um Chatterbot para Uso em Ambiente Educacional, v. 1, n. 2, setembro, 2003. Disponível em: < http://penta3.ufrgs.br/~elektra/info/artigos/chatterbot-Elektra%5B1%5D.PDF >. Acesso em: 03 março 2012. PIAGET, J. (1968). A explicação em psicologia e o paralelismo psicofísico. Em: Piaget, J.; Fraisse, P. e Reuchlin, M. (Eds.), Tratado de Psicologia Experimental: Volume 1 (pp. 121- 152). Rio de Janeiro: Editora Forense. POLLOCK, John. How to Build a Person: A prolegomenon, MIT Press, 1989. PRIMO, Alex e CASSOL, Márcio. Explorando o Conceito de interatividade: definições e taxonomias, 1999. Disponível em: http://seer.ufrgs.br/InfEducTeoriaPratica/article/view/6286/3756 . Acesso em: 15 de março de 2012. PRIMO, Alex Fernando Teixeira; Coelho, Luciano Roth; Paim, Marcos Flávio Rodrigues etal. O uso de chatterbots na educação à distância. Universidade Federal do Rio Grande do Sul, Porto Alegre, 2000. PROGRAM-O, Blog Program-o. Disponível em: http://blog.program-o.com . Acesso em : 07/07/2012 RAFAELI, S. (1988). Interactivity: From new media to communication. In R. P. Hawkins, J. M. Wiemann, & S. Pingree (Eds.), Sage Annual Review of Communication Research: Advancing Communication Science: Merging Mass and Interpersonal Processes, 16, 110-134. Beverly Hills: Sage. RICH, Elaine; Knight, Kevin. Inteligência Artificial. 2ª ed. Rio de Janeiro: McGraw-Hill, 1994. 722 p. p. 3. ISBN 85-346-0122-4 SEABRA, Carlos, Inclusão digital:Algumas promessas e muitos desafios. Disponível em: www.cidec.futuro.usp.br/artigos/artigo12.html capturado em 16/03/2012
  • 23. 23 SEARLE, John L. Minds, Brains, and Programs. Cambridge, Massachusetts: Harvard University Press, 1986. 112 p SGANDERLA, Rachele Bianchi. Chatterbot para Interação com Usuários. 2008. Disponível em: <http://tecnociencia.inf.br/comunidade/index.php?option=com_content&task=view&id=119 &Itemid=41>. Acesso em: 06 março 2012. SHANKER, S.G. (1987). Wittgenstein versus Turing on the nature of Church's thesis. Notre Dame J. Formal Logic, 28 (4), 615-649. TURING, A. (1950). Computing machinery and intelligence. Mind, 59 (236), 423-460 WALLACE, Richard (2003). Artificial Intelligence Markup Language (AIML) Version 1.0.1. Disponível em <www.alicebot.org/TR/2001/WD-aiml>. Acesso em 7 de março de 2012.