Tese Da Lucia Giraffa
Tese Da Lucia Giraffa
Tese Da Lucia Giraffa
INITSTUTO DE INFORMÁTICA
PROGRAMA DE PÓS-GRADUAÇÃO EM COMPUTAÇÃO
por
Agradecimentos
Aos meus amigos da PUCRS e da UFRGS pelo carinho, apoio e amizade ao longo
desta caminhada.
Aos colegas e funcionários do CBLU de Leeds e em especial para John Self, por toda
sua atenção e contribuições.
Ao professor Dr. Milton Madeira da Faculdade de Psicologia da PUCRS, pela sua
ajuda na elaboração dos instrumentos de avaliação e organização dos resultados.
À PUCRS pela licença parcial remunerada que viabilizou o meu doutorado.
À CAPES pelo auxílio parcial para realização do período de doutorado sanduíche na
Universidade de Leeds, Inglaterra.
A todas as coordenadoras das escolas que participaram dos experimentos e me
abriram as portas e facilitaram o meu trabalho junto aos professores.
Ao André Raabe por toda sua colaboração, disponibilidade e parceria desde o início
do programa de doutorado.
Ao Michael Móra por todo seu apoio e parceria ao longo dos últimos dois anos de
tese. Valeu amigo!
Aos meus amigos de fora do ambiente universitário que acompanharam toda a longa
trajetória deste trabalho e sempre me deram muito apoio e compreensão.
Aos meus familiares que tanto me incentivaram e torceram por mim ao longo destes
anos e souberam pacientemente entender o motivo pelos quais eu não fui a muitos
almoços, jantares, churrascos e festinhas da família sempre com a famosa frase: “..não
dá para ir, eu tenho que trabalhar na tese.”
À minha orientadora e amiga muito querida, Rosa, pelo seu exemplo, dedicação e
profissionalismo. Um mundo com mais “Rosas” certamente seria melhor.
Ao meu filho Pedro pela inspiração que sempre foi na minha vida.
Aos meus queridos pais, Helcio e Gelsa, que sempre estiveram comigo me apoiando
e incentivando em todas as horas. Vocês são muito especiais e pais maravilhosos.
Finalmente, mas não com menos importância, um agradecimento muitíssimo especial
ao meu marido André que sempre acreditou em mim e me brindou com seu carinho,
amor e compreensão em todas as horas.
5
Sumário
Lista de abreviaturas.............................................................................7
Lista de figuras......................................................................................8
Lista de tabelas......................................................................................8
Resumo................................................................................................10
Abstract...............................................................................................12
1 Introdução.......................................................................................14
1.1 O CONTEXTO DESTE TRABALHO .......................................................14
1.2 MOTIVAÇÃO ....................................................................................19
1.3 OBJETIVO .......................................................................................20
1.4 CONTRIBUIÇÕES..............................................................................21
1.5 ORGANIZAÇÃO ................................................................................23
Lista de Abreviaturas
Lista de Figuras
Lista de Tabelas
Resumo
Esta tese situa-se na área de IA (Inteligência Artificial) aplicada à educação
incluindo características interdisciplinares tanto da própria IA como de IE (informática
na Educação). Faz-se também necessário constarem, aspectos referentes à Ciência da
Computação e Educação a fim de melhor situar a complexidade e a dimensão do
trabalho desenvolvido.
A utilização de técnicas de IA na elaboração e no desenvolvimento de ambientes de
ensino-aprendizagem computadorizados tem se constituído em objeto de investigação
por parte dos pesquisadores da área de Informática aplicada à Educação, devido as suas
potencialidades. A utilização de agentes na modelagem e no projeto de STI permite-nos
resgatar antigos problemas em aberto, como por exemplo a melhoria da interação entre
tutor e aluno e a possibilidade de investigação dos processos mentais em nível mais
estratificado.
A arquitetura descrita nesta tese utiliza a metodologia que vem sendo aplicada ao
projeto de STI, onde são contempladas diferentes formas de se trabalhar com um
determinado conhecimento (estratégias de ensino e táticas associadas), levando-se em
consideração o tipo de usuário que está interagindo com o sistema. A arquitetura,
elaborada segundo uma abordagem construtivista, prevê que o tutor seja menos
diretivo e menos controlador das ações do aluno. O controle é feito na forma de
monitoração para que o tutor funcione como um parceiro, ou seja, como facilitador do
trabalho do aluno. Contudo, devido às características da modalidade escolhida para
construção do protótipo (jogo educacional), precisamos ter algumas atitudes no tutor
que garantam que o sistema não entre em colapso. O que inviabilizaria o trabalho do
aluno. Nestas situações críticas, o tutor vai se comportar de maneira mais diretiva. Cabe
salientar que a abordagem construtivista não significa dar liberdade total ao aluno nem
privá-lo de qualquer tipo de assistência. Portanto, o que deve ser destacado é o grau de
interferência do tutor, i.e., o quanto ele interfere no trabalho do aluno e se ele permite ou
não que o aluno siga um caminho alternativo àquele que ele tem como o ideal para
resolver o problema (heurísticas do tutor sobre o problema e forma de solução).
Além destes aspectos educacionais inerentes a todo o projeto de software
educacional (necessários num trabalho desta natureza), esta tese está inserida no
contexto da pesquisa em agentes cognitivos modelados através de seus estados mentais.
É importante salientar que os estados mentais utilizados neste trabalho (crenças,
desejos, intenções e expectativas) funcionam como uma metáfora dos estudos mentais
humanos. Por exemplo, quando se coloca a crença de um aluno a respeito de “lago”, na
realidade está se colocando a crença que temos a respeito da crença que o aluno possui a
respeito de “lago”. O mesmo acontece com os outros estados mentais aqui utilizados.
Os diálogos reais foram registrados através de observação direta e posteriormente
analisados a fim de se identificar os estados mentais relacionados. Perguntas adicionais
foram feitas no sentido de obterem-se mais elementos para auxiliar na inferência do
conjunto de estados mentais que o aluno possui naquele momento em que estava
jogando. Após a observação de vários alunos jogando, identificou-se um certo padrão
nas suas atitudes quando executavam uma ação. Observações sucessivas permitiram
delinear o conjunto de estados mentais associados à ação do aluno. Tal conjunto foi
11
utilizado como base para elaboração da coreografia. Estes dados servem de entrada para
a construção do modelo do aluno mediante a interação com o tutor.
No presente trabalho, nós apresentamos a modelagem de um STI através do uso da
tecnologia de agentes utilizando a arquitetura de SMA (Sistemas Multiagentes). O STI é
concebido como um SMA híbrido composto por um ambiente reativo (SMAR - Sistema
Multiagente Reativo) e um “kernel” cognitivo (SMAC - Sistema Multiagente
Cognitivo). O SMAR e o SMAC interagem entre si de para ampliar as informações
quantitativas e qualitativas oferecidas aos alunos que utilizam o sistema. Estas
informações disponíveis é que irão permitir ao tutor selecionar estratégias de ensino
mais adequadas a um determinado tipo de aluno. A principal contribuição desta tese está
centrada no “kernel” cognitivo. Nós propomos uma arquitetura para o tutor que
permitirá a monitoração de dois alunos trabalhando conjuntamente. Além disso,
propomos uma forma de selecionar o comportamento do tutor para oferecer auxílio
personalizado aos alunos considerando o perfil de cada um.
Esta arquitetura pretende ser uma alternativa de solução para uma questão importante
na área de STI:
Abstract
The present thesis has been elaborated within the AI (Artificial Intelligence) applied
to Education realm, and it brings specific contributions to the STI (Intelligent Tutoring
System) area.
The use of AI techniques has been investigated by researchers of Computer Science
applied to Education, due to its potentialities to improve educational systems. The
agents' techniques used in the design of STI allow us to solve old problems opened in
the area. For instance, the improvement of the interaction between tutor and student,
and the possibility of tracing the mental processes in a more stratified way.
The architecture described in this thesis uses the methodology applied to the modern
STI projects: multiple strategies for the tutor (i.e., teaching strategies and associated
tactics). This approach considers different forms of working with a certain piece of
knowledge, and is taken into consideration to create the user profile, as well as to
monitor the student interaction with the system.
The architecture, designed according to a constructivist approach, expects the tutor to
be less directive, and less controller of the student's actions. The control is made by an
observation of students’ actions by the tutor.
The tutor works either as a student's partner or as a facilitator. However, due to the
characteristics of the modality chosen for construction of the prototype (educational
game), we needed to take some attitudes in the tutor in order to avoid the system to
collapse. What would make unfeasible the student's work. In these critical situations, the
tutor will behave in more directive way. It fits to point out that the construtivist
approach does not mean to give total freedom to the student or to deprive it of any kind
of attendance. Therefore, what should be note here is the degree of the tutor’s
interference, i.e., how it interferes with the student's work using its own set of
heuristics.
Besides these educational aspects, inherent to a project of Educational software, this
thesis is inserted in the context of the research in cognitive agents modelled through
their mental states (Believe, Desire, Intention, and Expectation).
It is important to point out that the mental states used in this work are as a metaphor
of the human mental states. For example, when the student's has a believe regarding "
lake ", in fact we area talking about belief that we have regarding the belief that the
student possesses regarding about " lake ". The same happens here with the other mental
states used.
The real dialogues were registered through direct observation in real situation
(students playing with the game). They were analysed in order to identify the mental
states connected with the student’s actions. Additional questions were asked to obtain
more elements to aid us to inference the group of mental states possessed by the student
when he/she was playing. Successive observations allowed us to delineate the group of
mental states associated to the student's action. Such group was used as a base for the
choreography. These data were used as input for the construction to the student's model
during the interaction with the tutor.
13
In this work, we have presented the design of an STI with the use of architecture of
MAS (Multi-agent System Architecture). The ITS is conceived as a hybrid MAS
composed by a RMAS (Reactive Multi-agent System) and a "cognitive kernel " using
the CMAS (Cognitive Multi-agent System). The RMAS and the CMAS interact with
each other to enlarge the quantitative and qualitative information offered to the students
that uses the system. These available information allow the tutor to select teaching
strategies more adapted to a certain student type.
The main contribution of this thesis is centred in the " cognitive kernel ". We propose
an architecture for the tutor that will allow the two students to work together. Besides,
we propose a way to select the tutor behaviour in order to aid the students considering
their personal profile. This architecture intends to be an alternative solution for an
important question in ITS research:
How can the tutor select, among several teaching strategies, the one that is more
suitable for each student profile?
1 Introdução
1
Os programas da modalidade CAI englobam os tutorias, exercício e prática, demonstrações,
simulações e jogos. Todos concebidos
2
ICAI e STI são utilizados como sinônimos por uma grande maioria de autores de IE. Nesta tese
estamos utilizando num sentido mais amplo como será apresentado adiante.
16
assim, podemos ter agentes com diferentes graus de autonomia. O grau de autonomia e
a inteligência que o agente possui permitem distinguí-lo de um simples componente de
hardware ou software usual.
O agente também pode ser uma entidade à qual se atribuem estados, denominados de
estados mentais, tais como crenças, decisões, capacidades, objetivos, intenções,
compromissos e expectativas (conceitos análogos ou similares aos humanos) [SHO93].
Logo, a questão “o que é um agente” é substituída pela questão “que entidades podem
ser vistas como tendo estado mental”. Isto leva à distinção entre a legitimidade de
atribuir qualidades mentais para as máquinas e a sua utilidade. Atribuir certas crenças,
intenções, conhecimentos, habilidades ou desejos para uma máquina ou programa de
computador é legítimo quando a mesma informação expressa sobre a máquina é
também expressa sobre uma pessoa usuária do sistema. Esta relação estabelece-se no
uso do mesmo mecanismo de inferência pela máquina e pelo agente humano. Atribuir
estados mentais para a máquina é útil quando ajuda a compreender a estrutura da
máquina, o seu comportamento, o seu passado e futuro e como melhorá-la. Estes itens
foram pesquisados e desenvolvidos por Daniel Dennett, John McCarthy, conforme
citado em Shoham [SHO93].
Segundo essa abordagem, o agente é uma entidade, cujo estado consiste de
componentes mentais como crenças, capacidades, escolhas e compromissos; por essa
razão o estado de um agente é chamado de estado mental3 . Esses componentes mentais
devem ser definidos de uma forma precisa e ter uma correspondência direta com o seu
uso no senso comum. Nessa visão, o que faz qualquer componente de hardware ou
software ser um agente é precisamente o fato dele poder ser analisado e controlado em
termos destes componentes mentais. A questão “o que é um agente” fica substituída;
portanto, pela questão de quais entidades podem ser vistas como tendo estados mentais.
neste sentido, a caracterização de agente constitui o que chamamos de abordagem
mentalística [GIR98; GIR98e; GIR98f; GIR98f].
É importante salientar que os estados mentais utilizados neste trabalho funcionam
como uma metáfora dos estados mentais humanos. Por exemplo, quando se coloca a
crença de um aluno a respeito de “lago”, na realidade está se colocando a crença que
temos a respeito da crença que o aluno possui a respeito de “lago”. O mesmo acontece
com os outros estados mentais aqui utilizados.
Os diálogos reais foram registrados através de observação direta e posteriormente
analisados a fim de se identificar os estados mentais relacionados. Perguntas adicionais
foram feitas no sentido de obterem-se mais elementos para auxiliar na inferência do
conjunto de estados mentais que o aluno possui naquele momento em que estava
jogando. Após a observação de vários alunos jogando, identificou-se um certo padrão
nas suas atitudes quando executavam uma ação. Observações sucessivas permitiram
delinear o conjunto de estados mentais associados à ação do aluno. Tal conjunto foi
utilizado como base para elaboração da coreografia. Estes dados servem de entrada para
a construção do modelo do aluno mediante a interação com o tutor.
3
A modelagem de agentes utilizando estados mentais, juntamente com os detalhes da arquitetura
BDI, são abordados em detalhes no capítulo 3.
19
1.2 Motivação
4
A pesquisa na área de afetividade em máquina e afetividade de máquina ainda se encontra em
estágio inicial no sentido de aplicação. O trabalho de Bercht [BER99] apresenta uma visão geral dos
esforços despendidos neste sentido e os resultados preliminares. Segundo Bercht, os computadores não
podem se relacionar afetivamente de uma forma natural e a pesquisa na área neste momento, trazem
aspectos de funcionalidade que as emoções podem trazer.
20
Isto é o que observamos no caso das estratégias de ensino utilizadas nos modelos de
STI. Tais estratégias são pensadas ad hoc devido a falta de uma compreensão e
representação suficiente das teorias de aprendizagem humana. O realmente possuímos
são os paradigmas de aprendizagem e não propriamente as teorias de aprendizagem, que
deveriam ser aplicadas na construção de STI. Ou seja, não possuímos teorias de
aprendizagem que possam ser descritas através de um processo formal.
[BOY92] salienta que é necessário que a Ciência da Computação realmente
contribua para melhoria da Educação com a assistência de máquinas quase-inteligentes
para o desenvolvimento de aprendizados cooperativos e conversações de ensino, não
automáticas e estáticas, mas sim inteligentes. Maddux(in [WAX93, p.21]) no seu artigo
Past and Future stages in Educational Computing Research, salienta que "...a pesquisa
computacional está apenas começando e, deve continuar, enfatizando o tratamento das
interações de aprendizagem".
Logo, o campo de pesquisa dos STI na abordagem de agentes, utilizando uma
arquitetura SMA, implicou num trabalho de cunho interdisciplinar e no
desenvolvimento de uma metodologia para o projeto, implementação e validação
pedagógica de um STI, construído a partir da teoria construtivista/conceitual de se fazer
educação.
Os resultados do presente trabalho juntamente com as possibilidades apresentadas
pelas pesquisas interdisciplinares são fontes de motivação constante para o
desenvolvimento de pesquisas. A crença de que os avanços na abordagem mentalística
para agentes cognitivos melhorarão a qualidade dos ambientes de ensino-aprendizagem
também se constituem motivação forte para s investigações.
1.3 Objetivo
1.4 Contribuições
O grupo de pesquisa no qual este trabalho está inserido (GIA/UFRGS, sob orientação
da Profa. Rosa Maria Viccari) tem realizado algumas avaliações experimentais, usando
STI tradicionais e STI projetados e modelados através de sistemas multiagentes
utilizando redes locais e a WEB (Silveira e Viccari, 1997). Estas experiências permitem
identificar as vantagens e restrições de utilizarmos novas tecnologias para construir os
STI. Os resultados sugerem que a simples mudança do paradigma convencional para
uma arquitetura cliente-servidor e o uso de uma interface gráfica não são suficientes
para obterem-se resultados significativos. O uso de recursos de multimídia não garante
por si só mais eficiência no processo [SIL97]. Por outro lado, as restrições destes
sistemas podem ser minimizadas ao integrarmos a noção de cooperação no processo de
ensino-aprendizagem através do enfoque de multiagentes. Estas técnicas e métodos nos
permitem projetar um ambiente mais complexo, levando em conta agentes humanos
externos e agentes internos modelados na máquina (computador).
Portanto, as contribuições principais desta tese são as seguintes:
• a utilização de um “kernel” cognitivo (baseado na arquitetura BDI) que processa
as informações dos alunos sem a necessidade de usar as modelagens
tradicionalmente utilizadas em STI (estereótipos, overlay, buggy). Desta forma,
estende-se o modelo cognitivo do aluno constituído apenas de crenças agregando-
se outros estados mentais (desejos, intenções e expectativas, estas tratadas como
crenças futuras). Esta arquitetura trabalha com a construção de um modelo do
aluno dinâmico e forte à medida que ele vai interagindo com o sistema. Isto
permite ao tutor melhor identificar qual a maneira mais adequada de auxiliar o
aluno considerando suas características pessoais;
• modelo do aluno baseado em estados mentais permite uma descrição qualitativa
do aluno. Temos uma descrição do aluno e não uma mera classificação baseadas
em regras pré-definidas. Podemos falar a respeito do aluno evitando de apenas
quantificá-lo sob o ponto de vista de valores ou percentagens. Se comparamos este
modelo aos modelos utilizados na construção dos STI já desenvolvidos por
5
As expectativas não fazem parte da arquitetura BDI e, como estão sendo tratadas como crenças
futuras, foram incorporadas ao conjunto de estados mentais. O uso da expectativa é importante em
qualquer sistema de ensino-aprendizagem pois a expectativa está associada a execução dos planos e seu
resultado [COR98].
22
1.5 Organização
“Todo o programa pode ser considerado um programa educacional desde que utilize
uma metodologia que o contextualize no processo de ensino-aprendizagem ”. Esta é uma
conceituação cada vez mais consensual na comunidade de IE. Além disso, permite que
uma série de programas desenvolvidos para outras aplicações venham a ser utilizados
como programas educacionais. Esta flexibilidade em conceituar os programas
educacionais, ao mesmo tempo que amplia o conjunto de programas que podem ser
utilizados por educadores, faz com que aumente a necessidade de revisarmos as
taxonomias tradicionalmente utilizadas na literatura.
Outra questão que surge é por que precisamos classificar os programas educacionais.
A idéia de classificar e rotular um programa através de suas características estruturais e
funcionais é válida no sentido de organizar os programas para facilitar o seu acesso em
uma biblioteca de programas escolares. Outra vantagem desta classificação é favorecer
sua análise sob o ponto de vista de projeto e/ou pedagógico.
Uma taxonomia deve ser útil para auxiliar os projetistas a determinarem as
características básicas que irão predominar no sistema e para determinar o processo de
modelagem e implementação do ambiente através de uma metodologia adequada. Com
a evolução dos recursos de H&S, estamos diante de ambientes educacionais mais
complexos, tanto no aspecto de projeto do programa, como na forma de sua utilização.
26
Programas Educacionais
1. Aprendizagem de habilidades
2. Aprendizagem de habilidades
específicas cognitivas amplas
• CAI
Tutoriais • MICROMUNDOS
Exercício-prática • SISTEMAS DE AUTORIA
Demonstração
• JOGOS EDUCACIONAIS
Jogos e Simulação
• ICAI
6
Este termo virador de páginas eletrônico aparece com freqüência na literatura da área, como por
exemplo em [OLI94]. É utilizado como uma crítica aos programas CAI que apenas usam o meio
eletrônico para fazer o mesmo que era realizado no papel, sem nenhum ganho significativo em nível de
29
Dentro dos ICAI encontramos a modalidade STI. Nos STI existe um modelo de
aluno que objetiva personalizar o trabalho conforme as diferenças individuais de cada
usuário. Os modelos de aluno (forte e fraco) determinam se o STI é um Tutor ou um
Assistente. Os tipos de modelo do aluno pretendem reproduzir o tipo de aluno que está
interagindo com o sistema (ambiente) através da utilização de diversas técnicas de
modelagem. Estas técnicas consideram desde modelos estereotipados simples até
modelos sofisticados envolvendo estados mentais.
As estratégias de ensino contêm a forma de comportamento que o sistema vai utilizar
para auxiliar o aluno na utilização do conhecimento. Este comportamento está
intrinsecamente conectado ao paradigma educacional que suporta as idéias do projetista
do sistema. A maneira de se comportar do tutor pode ser mais ou menos diretiva
dependendo dos objetivos educacionais do programa.
A base do domínio armazena o conteúdo a ser trabalhado com o aluno. Atualmente, a
base do domínio pode apresentar um grau de sofisticação bastante complexo e
diferenciado. Os sistemas mais modernos utilizam recursos de hipermídia e simulação
para que o aluno aceda e manipule os conteúdos. As interfaces estão cada vez mais
sofisticadas, a ponto de algumas utilizarem os recursos de realidade virtual.
O módulo de controle funciona como um articulador e coordenador dos demais
módulos a fim de garantir um sincronismo adequado entre todas as partes. Nos
ambientes mais modernos, esta função fica transparente para o usuário. Em sistemas
que utilizam uma arquitetura multiagentes, o controle fica distribuído entre os vários
agentes. A figura 1.2 apresenta a arquitetura clássica utilizada nos STI.
7
Stand alone: o microcomputador trabalha de forma isolada.
31
8
Cooperação é diferente de colaboração. Colaboração é compartilhar informação sem modificar a
informação recebida. Cooperação é compartilhar informação e poder interferir e modificar a informação
recebida, e atuar de forma conjunta para construir algo em comum. Toda a cooperação envolve
colaboração.
33
(computadores) que dispomos nos dias de hoje precisam dispor deste modelo mais
formal de processos mentais.
9
Encrenqueiro
40
Este capítulo tratou dos aspectos ligados à Informática na Educação necessários para
melhor contextualizar o trabalho da tese e oferecer uma visão geral do estado da arte da
área de STI. O capítulo a seguir trata dos STI modelados com agentes, onde serão
abordados os aspectos referentes à IAD e à SMA.
42
10
Avatar é um ícone gráfico que representa uma pessoa real num sistema do espaço virtual.
11
Goal-driven : guiados por objetivos
12
Utility-driven: guiados pela sua utilidade no ambiente
13
Inicialmente conhecidos como Multi User Dungeon, os MUDs são ambientes virtuais acessíveis via
rede de computadores, onde pessoas e objetos interagem por meio de uma interface baseada em textos
conectada a uma base de dados compartilhada que lhes permitem executar jogos. Os MOOs são uma
evolução dos MUDs. Utilizam a orientação a objetos associada a uma poderosa linguagem interna de
programação como forma de criação de objetos e ações mais sofisticadas entre os seus usuários. Os
participantes de um MOO são conhecidos como jogadores. Eles devem conectar-se ao ambiente através
de Telnet ou algum outro software cliente especializado. [DIL97].
45
Motivador
Externo
Sociedade de
Especialistas artificiais
Agente de
Humanos Manutenção
disponibilidade em interagir com o Aprendiz. Além disso, caso julgue necessário, SEH
realiza uma operação de manutenção em SATA.
A componente SATA é constituída por um conjunto de agentes (micro-agentes) que
podem cooperar entre si através de um protocolo, a fim de promover a aprendizagem de
uma dado estudante, numa dada situação de resolução de problemas. Esta sociedade é
definida em função de um domínio de conhecimento, que por sua vez é organizado em
uma série de subdomínios. A cada subdomínio está associado um micro-agente. Para
trabalhar essa visão, foram feitas algumas reflexões e considerações sobre o domínio de
conhecimento.
• tutor está certo e o aprendiz está errado. Essa situação ocorre no momento em
que o aprendiz apresenta sua argumentação referente à solução do problema e o
tutor detecta algum erro ou falsa concepção no processo de solução;
• aprendiz está certo e o tutor está errado. Essa situação pode ocorrer, mas apenas
será percebida e resolvida pela SEH;
• ambos estão certos. Essa situação ocorre quando o tutor reconhece que a
solução do aprendiz está correta, mas não se trata de uma solução conhecida pelo
tutor;
• ambos estão errados. Essa situação pode ocorrer, mas apenas será percebida e
resolvida pela SEH;
O modelo do agente inclui uma organização social. Segundo o modelo proposto por
SCHIMAN et al. [SIC92], uma organização social é caraterizada por meio de suas
interações. Um agente tutor é constituído por duas camadas principiais, a saber: camada
do sistema de ensino e camada de cooperação.
A Camada do Sistema de Ensino é responsável pelas atividades de ensino adaptativo,
tomando por base uma aprendizagem calcada em resolução de problemas nos termos já
discutidos. É através dela que ocorrem as interações entre o Aprendiz e o Agente Tutor.
O Aprendiz é colocado numa situação de resolução de problemas em interação com o
Tutor. Nesse processo, o Agente Tutor acompanha o Aprendiz durante a interação,
monitorando suas ações e provendo-lhe um feedback adequado. Os tipos de interações
entre o Aprendiz e o Tutor, incluem aspectos didáticos em uma situação de troca de
mensagens. O tutor envia ao Aprendiz uma mensagem com conteúdo X e este retorna
uma outra com conteúdo Y.
A Camada de Cooperação é composta por conhecimentos e mecanismos necessários
para a viabilização do trabalho cooperativo na sociedade de tutores. Para isso, cada tutor
possui nesta camada seis módulos, são eles:
• Autoconhecimento (AC) - é uma estrutura de conhecimento representando as
capacidades do agente.
• Conhecimento Social (CS) - é uma estrutura de conhecimento representando as
capacidades dos outros agentes tutores na sociedade. Esse conhecimento é usado
para identificar agentes tutores especializados em uma dada tarefa. Isso é
necessário quando as capacidades de um agente são insuficientes para lidar com
um dado problema e o agente necessita da cooperação de um outro.
• Encaminhamento - é um módulo responsável pela seleção de agentes para iniciar
uma cooperação. Esta seleção é feita baseada no conhecimento social, descrito
acima. Algumas estratégias e regras de resolução de conflitos são utilizadas por
este módulo para solucionar possíveis impasses que possam surgir durante o
processo de eleição do(s) agente(s).
• Protocolos - são coleções de possíveis protocolos que podem ser usadas no
processo de cooperação entre os agentes. Um protocolo é um conjunto de regras
que visa restringir o diálogo entre os agentes com o intuito de possibilitar o
processo de construção/interpretação das mensagens trocadas entre eles. Estes
protocolos podem ser acestados a partir de uma biblioteca de protocolos, para
atenderem certas exigência da camada de ensino.
50
Aluno
Kernel
SMAR
Aluno
Ambiente
Aluno 1 Ecologista
Elementos
Agente personagem 1 do
Aluno 2
Agente personagem 2 cenário
peixe
água
plantas
fundo
arquitetura BDI 14 que forma outra sociedade de agentes. O capítulo 4 apresenta estas
considerações em detalhe.
Sob o ponto de vista organizacional, os agentes da arquitetura proposta possuem um
modelo descendente apresentado na classificação de Conte e Castelfranchi [CON92].
Os agentes têm a priori um problema a resolver. Isto é típico de uma aplicação
educacional e também intrínseco num STI. A cooperação é preestabelecida como uma
hipótese de partida, que pode ou não se confirmar. As interações sociais dos agentes são
limitadas por uma organização preexistente, que orienta os agentes para atingir o
objetivo para o qual o sistema foi concebido. Segundo [ALV97] esta tipo de modelo se
adequa às estruturas em que a fase de organização é preestabelecida no sistema. No caso
da arquitetura proposta para os STI, a organização é uma condição para o
estabelecimento das relações entre os agentes.
O modelo do aluno apresentado na figura 2.4, é expresso através dos seguintes
conjuntos:
14
Manteremos o termo BDI apesar deste texto estar escrito em português a fim de facilitar a
compreensão das considerações apresentadas, uma vez que a sigla BDI é amplamente utilizada pelos
pesquisadores da área de IAD.
59
do ambiente com o qual interage. Estes estados seriam correspondentes aos estados
mentais humanos, que apresentam um vínculo com o mundo em termos da sua
existência e significância..
As idéias subjacentes à abordagem social introduzem conceitos promissores para a
compreensão de como construir agentes com habilidades especiais, tais como, aprender
e ensinar. A aquisição do conhecimento pelos agentes numa sociedade multiagente
emerge de suas interações em que cada agente se comporta como um tutor e como um
aluno. De fato não existe um tutor e um aluno, mas apenas atitudes de tutor e atitudes de
aluno, conforme Corrêa, Coelho e Viccari [COR98].
O cérebro humano tem um sofisticado sistema neuronal que pode armazenar,
interpretar e processar informação em diferentes graus. O filósofo Daniel Dennett
[DEN78; DAN87] denominou este sistema interno de noções intencionais. Segundo
Dennett, este sistema intencional pode ser simulado usando um método de atribuição de
crenças, desejos e perspicácia de raciocínio. Assim, o sistema tem níveis diferentes de
intenção: um sistema de primeira-ordem com crenças e desejos (mas nenhuma crenças e
desejos sobre eles) e um sistema de segunda-ordem mais sofisticado (com crenças e
desejos sobre crenças e desejos), i.e., um sistema que trabalha como um meta-nível
sobre as crenças e desejos.
O antropomorfismo para construir os agentes artificiais é útil para a descrição da
instância intencional, desde que nós entendamos suficientemente o mecanismo essencial
a fim de termos uma descrição mais simples da mecânica de seu comportamento
[SHO90].
Este capítulo analisa as questões relativas à abordagem mentalística utilizada neste
trabalho e os conceitos a ela relacionados. Além disso, serão descritas as características
do ambiente lógico utilizado para a modelagem dos agentes cognitivos e apresentados
exemplos de sua aplicação no protótipo construído para esta tese.
• Crenças:
• Desejos:
• Intenções:
15
Postulado por diversos autores, dentre eles R. Audi, M Beardsley e P. Churchland [Apud BRA 84, p.
375].
16
B. Aune e J. Searle [Apud BRA 84, p.377] são filósofos que advogam a visão simplista.
65
opções conflitantes, e o raciocínio a partir de uma intenção prévia para derivar intenções
concernentes aos meios e formas para a execução do plano. As intenções prévias são
vistas como elementos de planos parciais que provêem uma estrutura de fundo para a
ponderação das razões oriundas de desejo-crença. É essa estrutura que coloca problemas
para deliberação posterior e restringe suas possíveis soluções.
O raciocínio prático possui dois níveis:
• os planos parciais colocam problemas e providenciam um filtro de
admissibilidade nas opções que são suas soluções potenciais; e
• as razões oriundas de desejo-crença entram como considerações a serem
ponderadas na deliberação entre opções relevantes e admissíveis.
As crenças possuem grau de confiança (probabilidade subjetiva) variando entre 0 e 1.
Aquelas com grau de confiança muito elevado (próximos a 1) são chamadas de crenças
flat-out. Essas crenças, combinadas com os planos do agente, tornam certas opções
inadmissíveis. A estrutura de fundo para o raciocínio prático inclui crenças flat-out,
intenções prévias e planos.
As intenções prévias e planos devem ter uma relativa estabilidade, resistindo a
reconsiderações. Se constantemente o agente reconsidera méritos, intenções prévias e
planos, a utilidade na coordenação e no auxílio na sua luta contra os recursos limitados
será de pouca utilidade. Entretanto, é irracional tratar os planos prévios como
irrevogáveis se não há expectativas de que eles serão realizados. Essas considerações
sugerem que os agentes racionais necessitam políticas gerais e hábitos que governem a
reconsideração de intenções prévias e planos. A não reconsideração de intenções prévias
e planos devem ser tomadas como default, mas um default a ser alterado diante de
certos tipos especiais de problemas não previstos.
Bratman [BRA89] afirma que o modelo sobre o papel das intenções direcionadas
para o futuro como entrada para raciocínio posterior é dependente da idéia de que as
intenções do agente sejam consistentes com suas crenças. É esta demanda de
consistência que dirige a operação do filtro de admissibilidade de opções. Por outro
lado, existe uma segunda idéia implícita no modelo baseada na assunção de que
intenções prévias possuem estabilidade relativa e, junto com planos, desempenham
papel crucial de coordenação: toda vez que o agente tiver a intenção de executar A no
futuro, ele necessariamente deve ter a crença que irá executar A.
Intenções, desejos e valoração são exemplos de pró-atitudes, já crenças não são pró-
atitudes. Pró-atitudes determinam um papel motivacional. Na conjunção com crenças,
elas podem levar o agente a agir. A maioria delas são apenas influenciadoras potenciais
de conduta, mas a intenção é uma pró-atitude controladora. O agente pode esperar para
executar suas intenções em momento que considerar apropriado. Isso é possível, devido
às intenções serem controladoras de conduta. As intenções podem ser executadas pelo
agente enquanto persistirem. Como elas são relativamente estáveis, o agente pode
contar com que elas persistam até o momento exato de agir.
Essas são as características que permitem explicar como as intenções dirigidas para o
futuro normalmente auxiliam a coordenação dando suporte às expectativas de sucesso
associadas às suas execuções. As intenções dirigidas para o futuro deverão ser
consistentes internamente. Além disso, elas deverão considerar as crenças do agente e
oferecer suporte às crenças para serem executadas com sucesso. Em casos normais,
quando o agente tem a intenção de A, ele também acredita que ele A.
68
• Expectativa:
Expectativa é o quarto estado mental associado aos agentes cognitivos que é tratado
como uma crença futura do agente.
Schegloff e Sacks [Apud COR 94] analisaram registros de conversas naturais e
observaram que a estrutura das conversas consistem, em grande parte, de pares
adjacentes que ocorrem seqüencialmente no diálogo. Esses pares adjacentes s~`ao pares
de frases proferidas por diferentes interlocutores.
Tais situações ocorrem em troca de cumprimentos, pergunta-resposta, oferta-aceite,
oferta-recusa, etc. Normalmente as frases da segunda parte estão restritas às condições
impostas pela primeira. Não é necessário que os pares de frases da primeira e da
segunda parte sejam contíguos. O fundamental é que uma parte seja resposta da outra.
Schegloff e Sacks observam ser possível resolver os seguintes problemas:
• como podemos dizer que dois itens num diálogo fazem parte de um par
adjacente ou de duas unidades separadas, cada uma podendo ocorrer depois da
outra?
• como podemos detectar a ausência de um item relevante?
Schegloff e Sacks observaram que ao controlar as conversas através da aplicação do
princípio da relevância condicional obtém-se respostas às questões levantadas:
“Por relevância condicional de um item acerca de outro queremos dizer: dado o
primeiro, o segundo é esperado; e no caso deste ocorrer, este pode ser visto como o
segundo item do primeiro; no caso de não ocorrer ele é considerado como oficialmente
ausente. Tudo isto é providenciado pela ocorrência do primeiro item que cria uma
expectativa à respeito do que deveria vir a seguir.” [Apud COR 94, p.105]:
69
Segundo Corrêa [COR94], o fenômeno dos pares adjacentes é mais geral e ocorre em
qualquer outro tipo de interação dos agentes. O princípio de relevância condicional pode
ser estendido a qualquer seqüência de ações realizadas pelo agente: a realização de uma
ação pode causar um conjunto de expectativas a respeito das possíveis situações que
vão ocorrer no futuro. Esse autor considera expectativa como um estado mental
intencional e motivador, que pode ser representado pela Teoria de Situações da seguinte
forma:
satisfazer uma expectativa quando ela é frustada, evita a necessidade imediata de rever
a estratégia traçada inicialmente, mesmo quando ela é parcial.
O problema com a representação dos estados mentais está no seu contexto, i.e., os
estados mentais observados são colecionados de experiências baseadas em situações
reais. O conjunto de dados destes estados mentais pode variar e pode depender muito do
ponto de vista do investigador.
17
Lógica Modal pode ser descrita resumidamente como a lógica da necessidade e possibilidade do que “deve ser”
e do que “pode ser” [HUG 68, Apud COS 92].
Uma assertiva que é forçada a ser verdadeira em todas as situações em que pudermos verificar a sua condição de
validade é dita necessariamente verdadeira, ou simplesmente necessária. Assim uma verdade necessária é aquela que
não poderia ser falsa em nenhuma circunstância.
Se pudermos verificar que para todas as situações uma assertiva é falsa, dizemos que ela é necessariamente falsa,
ou simplesmente impossível. Se uma assertiva não é nem impossível e nem necessária, dizemos que ela é
Contingência. Assim uma verdade contingente é aquela que poderia ser falsa em circunstâncias específicas.
Admitindo a noção de mundos possíveis onde a lógica é aplicada, podemos afirmar que uma verdade necessária é
verdade em todos os mundos possíveis e uma verdade contingente é verdade no mundo atual, mas não se mantém
verdade em todos os mundos possíveis.
Se uma assertiva não é impossível, dizemos que ela é possível. Essas quatro noções ( necessidade,
impossibilidade, contingência e possibilidade ) definem os modos básicos nos quais uma assertiva pode ser falsa ou
verdadeira e são os principais objetos de estudo da lógica modal.
São usados os operadores lógicos L para representar necessidade e M para representar possibilidade; os quais,
combinados com a negação, expressam as modalidades básicas de impossibilidade e contingência.
71
Eventualidade:
Mp ∃ e (HAPPENS e;p?)
M p é verdadeiro se existe uma ação que acontece (inclusive a ação nula) após p se
realizar.
Depois:
(LATER p) ~p ∧L p
Sempre:
L ~ M ~p
p é verdadeiro através da ocorrência de todos os eventos desde agora até o futuro.
Antes:
Conhece:
(KNOW x p) p ∧ (BEL x p)
Competência:
(COMPETENT x p) (BEL x p) ⊃ p
Agentes que são competentes em relação a alguma proposição têm somente crenças
corretas sobre elas. É razoável assumir que os agentes são competentes com respeito às
suas próprias crenças, objetivos e realização de objetivos iniciais (eventos primitivos).
Os autores também apresentam a semântica dessa linguagem baseados no modelo de
mundos possíveis 18 para crenças, metas (objetivos) e eventos.
A lógica utilizada em [COH87] foi usada para a análise de conflito e cooperação em
diálogo multiagente e vários estudos nas fundações teóricas do problema de cooperação
encontradas no trabalhos de Galliers [GAL88], Castelfranchi [CAS95] e Jennings
[JEN95]. No trabalho de Cohen e Levesque [COH89] são apenas considerados as
crenças e objetivos.
Rao e Georgeff [RAO95] desenvolveram uma teoria baseada em três modalidades
primitivas: crenças, desejos, e intenções (BDI). Esse trabalho baseia-se na noção de
realismo que deduz a pergunta como através de uma crença de um agente sobre o
futuro. Além disso, essa noção afeta os desejos e intenções do agente. No entanto, Rao e
Georgeff consideraram a possibilidade de agregar planos ao seu formalismo. A
descrição das crenças, desejos e intenções são feitas através dos operadores modais, da
definição da semântica dos mundos possíveis para estes operadores e, de uma
axiomatização definindo o inter-relacionamento e propriedades dos operadores BDI. Em
contraste com a maioria das teorias filosóficas, Rao e Georgeff trataram intenções como
um conceito com o mesmo estatuto de crenças e desejos. Isso permitiu a representação
de diversos tipos de comprometimento racional baseados em diferentes propriedades
sobre a persistência das crenças, objetivos e intenções. O mundo é modelado usando
uma estrutura temporal com ramificações futuras e passadas denominadas de árvore do
tempo. As situações são definidas como pontos de tempo particular num mundo
particular. Pontos de tempo são transformados em outros pontos de tempo, através de
eventos. Existem eventos primitivos e não-primitivos. Os planos são subdividos numa
estrutura hierárquica de subplanos e estes subdivididos, por sua vez, de forma mais
refinada até alcançar as ações primitivas. Existe uma distinção entre escolha (a
habilidade e uma agente deliberadamente selecionar uma ação de um conjunto de
alternativas) e chance (incerteza associada a ocorrência das ações). A determinação do
que ocorrerá é feita pelo ambiente. A linguagem formal utilizada para a descrição das
estruturas é uma variação da “árvore Lógica Computacional” proposta por Emerson
[EME89, Apud in MUL97].
18
Os mundos possíveis são representados por uma cadeia de eventos temporários que se estende de
forma infinita (o passado e no futuro), caracterizando um possível caminho do mundo que pode ter sido
ou será.
73
• é uma teoria que possui baixa complexidade para descrição dos agentes. Se
define formalmente um agente apenas em termos dos seus estados mentais
(crença, desejos e intenções). Além disso, se verifica se as propriedades que se
deseja que o agente possua acontecem de fato.
Este segundo aspecto facilita a construção de outras aplicações utilizando a
arquitetura proposta na nossa investigação, necessitando do projetista apenas o
conhecimento da sintaxe dos comandos da linguagem do ambiente X-BDI.
Segundo Móra [MOR99], sua proposta disponibiliza um sistema formal cuja
linguagem seja adequada para a representação de conhecimento. Esse sistema deve
prover suporte para diversos tipos de raciocínios, tratados de forma computacional,
além de fornecer as ferramentas necessárias para se modelar os vários estados mentais.
O ambiente base utilizado para a construção do X-BDI usa programação em lógica
estendida com negação explícita– ELP (Extended Logic Programming with explicit
negation) e com a semântica bem fundada estendida – WFSX (Well-Founded
Semantics eXtended for explicit negation). Para este formalismo lógico, existe um
procedimento de derivação descendente, o SLX (Selected Linear resolution for
eXtended programs), que é completo e correto em relação a WFSX. Segundo [MOR99],
esse procedimento permite provar que determinado literal pertence ou não ao modelo do
programa, sem exigir o cálculo do modelo completo desse programa. Existe um
algoritmo bem definido para o procedimento de revisão do mesmo, sobre o qual se
baseiam os diversos tipos de raciocínio.
O requisito básico para a lógica selecionada é que ela possa ser utilizada tanto para a
especificação como para implementação do sistema. E, de fato, esta é a maneira usual
como a linguagem é vista na programação em lógica. A programação lógica estendida
acrescenta uma segunda negação, a negação explícita à programação em lógica normal
(utilizando as cláusulas de Horn aumentadas pelo operador not) O ELP estende a lógica
tradicional do programa, obtida da negação habitual (chamada de negação implícita no
contexto de ELP), a esta segunda negação denominada de explícita.
Essa extensão nos permite representar a informação negativa explicitamente (como
uma convicção que uma propriedade que P não suporta, ou uma intenção que uma
propriedade P não deveria suportar) e aumenta o poder expressivo da linguagem.
Quando nós introduzimos a informação negativa, nós podemos lidar com os programas
contraditórios [ALF96]. O X-BDI favorece que se lide com essas contradições de forma
genérica. Assim, quando as contradições surgem, o ambiente fornece mecanismos para
removê-las alterando o valor verdade de um subconjunto predefinido de literais. Tal
mecanismo de remoção de contradições é obtido através de uma variante da SLX que
computa as combinações possíveis de alterações de valores verdade que garantem a
remoção. Através desse mecanismo de remoção é possível realizar diferentes tipos de
raciocínio não-monotônicos.
A estrutura da ELP, além de prover procedimentos computacionais a prova de teorias
que se expressam em sua linguagem, também provê um mecanismo para determinar
como minimizar a remoção de contradições. Os benefícios da utilização de um modelo
com estas características são providas pelo formalismo. Então, inicialmente são
definidos esses três estados mentais e as relações estáticas entre eles, isto é
constrangimento em consistência entre esses estados mentais. Depois, avança-se com a
definição de aspectos dinâmicos de estados mentais, ou seja, como o agente escolhe
suas intenções, e quando e como revisa suas intenções.
75
onde H, B1 ,…,Bn ,C1 ,…,Cm são literais objetivos. Um literal objetivo é também um
átomo A ou sua negação explícita ¬A. O símbolo not significa a negação por omissão
ou negação por falha, e not L é uma literal por omissão. Literais podem ser literais
objetivos ou literais omissão, sendo que e ¬¬L ≡ L.
A linguagem também permite tratar da consistência das restrições através de
A ⇐ B1, K Bn, not C 1, K , not C m (m, n ≥ 0) onde A, B1, K , Bn, C 1, K , C n são literais
objetivos, instanciando que A pode suportar se o seu corpo B1, K , Bn, C 1, K , C n suporta
também. Particularmente, quando A = ⊥ , onde ⊥ instancia por contradição , isso
significa uma contradição aparece quando o corpo da contradição é válida.
Quando raciocinamos sobre pró-atitudes, tais como desejos e intenções, necessitamos
lidar com propriedades que possam ser suportadas em um certo instante de tempo e com
ações que devem ser executadas num determinado tempo.
Entretanto, para representá-las e raciocinarmos a seu respeito, necessitamos de um
formalismo lógico que lide com ações e tempo. Móra utiliza uma versão modificada do
Event Calculus (EC) proposto por [MOR 95]. O predicado holds_at(P,T), define que a
propriedade P é verdadeira no tempo T . O predicado happens(E,T) significa que o
evento E ocorreu num tempo T; initiates(E,P) significa que o evento E inicia a
propriedade P no tempo que o evento E ocorre; terminates(E,P) significa que o evento P
terminou; persists(Te,P,T) significa que P persiste desde Te até T (pelo menos).
Existe uma variável especial denominada de Now que representa o tempo presente.
Observe que a propriedade P é verdadeira num tempo T (holds_at(P,T)) se tiver um
evento prévio que inicia em P e se P persiste até T. P persiste até T se não pode ser
provado por omissão a existência de outro evento que termina P antes do tempo T.
Essas são as providências originais de EC pelo predicado holds_at(P,T) que nos
permite argumentar sobre o futuro, assumindo uma sucessão de ações representada
hipoteticamente pelos predicados happens(E,T) e act(E,A) e pela verificação das
propriedades que os assegurariam. Também nos permite argumentar sobre o passado.
Para saber se uma determinada propriedade P no momento T, o EC confere que
propriedades permanecem válidas depois da execução das ações que aconteceram antes
de T. o EC assume que as propriedades só mudam como conseqüência das ações
executadas pelo agente. Essa não é uma suposição razoável, uma vez que nós
gostaríamos de permitir a ação de outros agentes, bem como também permitir ações que
não são notadas pelo agente. O papel de sense(P,T) significa que a propriedade de P é
percebida pelo agente no momento T.
A figura 8, apresenta alguns aspectos da linguagem do X-BDI. Maiores detalhes
podem ser obtidos em [MOR97; MOR98; MOR99].
76
Segundo Móra [MOR99], ELP com o EC provê os elementos que são precisos para
se modelar estados mentais. Não obstante, o uso de linguagem de mais alto nível
permitiria ter uma descrição mais simples e mais clara de ações e seus efeitos. Assim
sendo, Móra et al. lançam a linguagem de ELP e as primitivas de EC em uma sintaxe
mais simples que é semelhante a linguagem ONE proposta por Gelfond e Lifschitz
[GEL92, Apud in QUA97]. Nesse idioma são traduzidas as orações ELP e as primitives
de EC, durante a argumentação segundo [QUA97]. As orações são as seguintes:
• A causa F if P1 ,...,Pn – ação A causa propriedade F se suporta a proposição P;
• F after A if P1 ,...,Pn – suporta a propriedade F após a ação A se suporta a
proposição P;
• A occurs_in E – ação A ocorre quando o evento E ocorre;
• E preceeds E’ – o evento E ocorre antes do evento E’.
A linguagem ainda provê meios para referência de crenças que deveriam conter o
futuro ou que deveriam ter dentro de si. Isso é feito através do operador next(P)
declarando que a propriedade P deveria ser suportada no próximo momento de tempo.
Uma vez tendo o formalismo lógico fixado, pode-se definir o modelo de BDI.
Construída a base formal necessária, passa-se à definição dos estados mentais.
Inicialmente são definidos os aspectos estáticos do modelo, ou seja, quais são os três
estados mentais básicos, seu conteúdo propocisional, e as condições e restrições que tais
estados devem satisfazer. Um exemplo disso, é considerar que o conjunto de crenças e
intenções devam ser consistentes e as respectivas crenças também.
Após definir-se os aspectos estáticos, definem-se os aspectos dinâmicos dos estados
mentais, como por exemplo, como são criadas as intenções, como são produzidas as
ações a partir das intenções (no caso do tutor do MCOE as ações estão restritas à
execução de um plano), como são resolvidos os conflitos nos desejos, etc.
77
suas crenças para refletir mudanças que detecta no ambiente e que, sempre quando uma
nova crença é somada ao conjunto de crenças, a consistência é mantida.
Intenções são caracterizadas por uma escolha de um estado de eventos a alcançar.
Assim, as intenções são vistas como um compromisso que o agente assume com um
específico futuro possível. Isso significa que, diferentemente dos desejos, uma intenção
não pode ser contraditória com outras intenções. Além disso, significa que não seria
racional para um agente agir para alcançar estados incompatíveis. Intenções deveriam
ser apoiadas pelas convicções do agente, i.e., não seria racional para um agente
pretender algo que não acredita ser possível. Uma vez que uma intenção é adotada, o
agente procurará satisfazer aquela intenção e planejará ações para realizá-la. O
replanejamento de ações ocorre sempre quando um fracasso acontece. Essas ações
também devem ser adotadas como intenções por parte dos agentes.
A definição de intenções obriga criarmos restrições para a racionalidade: um agente
não deveria pretender algo num tempo passado; um agente não deveria pretender algo
que acredita já estar satisfeito ou que será satisfeito sem esforços por parte do agente; e
um agente só pretende algo que acredita ser possível de ser alcançado. Nesse último
caso, pode haver um curso de ações que conduzem ao estado intencional associado ao
evento. Quando projetamos um agente, nós especificamos as suas crenças e os seus
desejos. O agente é que vai escolher apropriadamente suas intenções a partir de seus
desejos. Essas restrições de racionalidade também devem ser garantidas durante esse
processo de seleção [MOR98].
Agentes escolhem as intenções de duas fontes diferentes: de seus desejos e de um
refinamento de outras intenções. Por definição, não há nenhuma restrição nos desejos do
agente. Então, um agente pode ter desejos contraditórios (conforme já explicado
anteriormente). Por outro lado, intenções são restringidas através de restrições de
racionalidade. Assim, os agentes têm que selecionar só os desejos relacionados com
aquelas restrições. Primeiro, é necessário determinar esse subconjunto dos desejos que
são pertinentes de acordo com as convicções atuais do agente. Depois, é necessário
determinar desejos que são conjuntamente realizáveis. Em geral, pode haver mais de um
subconjunto de desejos pertinentes. Nós deveríamos indicar de alguma maneira os
subconjuntos preferidos e adotá-los como intenções através de uma relação de
preferência definida nos atributos dos desejos. De acordo com a teoria definida em
[MOR97, MOR98], o agente deveria preferir satisfazer os desejos mais importantes
primeiro. Para que isso ocorra, o agente adota a maior quantidade de desejos que puder.
A seleção que combina as diferentes formas de raciocínio não-motônico são providas
pelo formalismo lógico.
Assim que o agente adotar suas intenções, ele começará a planejar como realizá-las.
Durante o planejamento, o agente formará as intenções que são relativas ou
preexistentes, significando que as intenções existentes são refinadas. Esse refinamento
pode ser feito de vários modos, como por exemplo, um plano que inclui uma ação que
não é diretamente executável envolve um conjunto de ações com uma ordem temporal
[KON93, Apud in MOR99]. Comoue o agente se compromete com as intenções
adotadas, as intenções prévias constrangem a adoção de novas. Ou seja, durante a
elaboração de planos, é adotada só uma nova intenção potencial não contraditória com
as intenções e com crenças existentes .
O próximo passo é definir quando o agente deve executar o raciocínio sobre as
intenções. Não é suficiente declarar que um agente deve revisar suas intenções quando
acredita que acontece uma certa condição, assim como acreditar que uma intenção foi
79
satisfeita ou que não é possível satisfazê-la. O que o agente precisa fazer é verificar
constantemente suas crenças. Ao invés de instanciar as intenções, é necessário definir
um mecanismo que ative o processo de raciocínio sem impor um fardo adicional ao
agente. A aproximação disponibilizada por Móra et al. permite definir as condições que
fazem o agente começar a raciocinar sobre as intenções como restrições em cima de
suas crenças. Sempre que fatos novos são incorporados , o agente tem que manter
constantemente suas crenças consistentes. Da mesma forma, sempre que uma
contradição aparece, o agente revisa suas crenças. O processo de revisão de intenções é
ativado quando uma das restrições é violada.
DES(tutor,ajudar_alunos).
BEL(tutor,ajudar_alunos) if
BEL(tutor, envia_mensagem).
Uma vez que esse é o único desejo do tutor, ele torna-se o único candidato à
intenção. No entanto, será adotado como intenção, se o tutor acreditar que há uma
sucessão de ações que possam ser executadas para que essa intenção se realize. Neste
momento, o tutor dependerá do conhecimento sobre os estados mentais dos alunos para
decidir o que fazer. Como ainda ele não dispõem dos conhecimentos estes estados
mentais, ele aguarda. Enquanto isso, ele insere em seus gatilhos (triggers) de crenças
suas opções que farão com que seja reconsiderado quando a interação acontecer. Por
exemplo, o tutor tem a seguinte crença:
BEL(tutor, envia_mensagem) if
BEL (tutor,next(BEL (aluno, receber_ajuda))),
BEL(energia_nivel_ecometro >= 70),
Mensagem (16).
(1)
Acredita-se que o estudante espera um pouco de ajuda e que o nível de energia está
sobre 70. A única ajuda que pode oferecer é aconselhar o estudante a prestar atenção no
nível de energia. Essa crença colocaria o gatilho seguinte:
⊥← BEL(tutor,next(BEL(aluno,rceber-ajuda)))
BEL(energia_ecometro (Ee)),
Ee >= 70.
(2)
Quando as pré-condições para a ação de enviar uma mensagem 16 forem satisfeitas,
o tutor estará em condições de ajudar o aluno. O modelo do agente transforma o desejo
em uma intenção e a satisfaz enviando a mensagem 16.
Uma vez que o tutor tem essa intenção, ele usa suas crenças sobre o ambiente
(ferramenta, energia dos elementos do cenário, poluidores), sobre como lutar contra a
poluição (estratégias diferentes no uso das ferramentas para eliminar poluição), sobre
como aconselhar os alunos para ajudá-los a controlar o ambiente e assim por diante.
Vamos analisar agora a coreografia tomada em tempos diferentes. Observe que o
tempo utilizado no X-BDI é o tempo em que ocorre uma ação, aquele em que acontece
algo novo enviado ao “kernel”. Não é utilizado um sistema de tempo de horas, minutos,
segundos, etc.
(Tempo Ponto 1)
81
Tutor: Verifica que os alunos não mudaram suas crenças e o nível de energia
aumentou. Fica observando e não envia nenhuma mensagem.
Nenhum dos gatilhos fixados pelo tutor é ativado por esta interação. Então, ele não
adota qualquer intenção e espera.
(Tempo Ponto 2)
O nível de energia aumentou mas não é 100%.
Aluno 1: Olhar isto! Tudo vai bem!
Tutor: Espera.
Nesse momento, os alunos não fazem nenhuma ação, pois o ecômetro está no nível
de energia que não indica perigo ou necessidade de intervenção por parte do tutor. O
tutor acredita que quando os alunos não fazem nenhuma ação e o nível do ecômetro esta
acima de 70, ele deve aguardar.
(Tempo Ponto 3)
Então aparecem os poluidores: a draga, a lancha e o lixo industrial. O nível de
energia dos elementos do cenário decresce na seguinte proporção: plantas -40%,
microorganismo -40%, fundo -50%, peixe -30%, água -20%. Os alunos observam a
mudança imediata na cor do ecômetro e o comportamento dos elementos do cenário.
Tutor: Verifica que o nível de energia aumentou e os alunos não estão usando a regra
para controlar o número de vezes que uma ferramenta pode ser usada.
Os estados mentais dos alunos não apresentam a crença " número de ferramentas
deveria ser controlado ". Esse estado mental é associado a cada ação do aluno em
verificar a quantidade de ferramentas restantes para cada personagem. O tutor, então,
emite uma mensagem de alerta para os dois alunos nessa situação.
O Tutor executará essa ação quando a quantia restante de alguma das ferramentas é
igual ao valor 1. No conjunto de crenças do tutor aparece a crença " número de
ferramentas deve ser controlado " e isso ativa o desejo " controlar as ferramentas".
(Tempo Ponto 4)
Nesse momento, mais poluidores aparecem: 1 posto de gasolina e 1 esgoto industrial.
O nível de energia decresce na seguinte proporção: Plantas -65%, microorganismos -
35%, Fundo -65%, Peixes -25%, Água -80%.
Aluno 1: O lago está morrendo. Eu não tenho a ferramenta mais intensa e mais forte,
eu tenho a ferramenta acelerar. Eu vou jogar com esta. E tu deves jogar com a tua mais
poderosa.
O conjunto de crenças apresenta: " ferramentas fortes devem ser usadas para o nível
de energia crescer rápido", "se o número de uma ferramenta é igual a zero então a
ferramenta está indisponível ", “devo controlar o número de vezes que posso usar uma
ferramenta " e, "devo controlar o tempo do jogo ".
O desejo " aluno 2 cooperar com aluno 1 " se torna uma intenção. Existem as
seguintes expectativas: " aluno 2 vai cooperar " e " a energia do ecômetro vai subir”.
83
Tutor: Verifica que os dois alunos estão cooperando. Verifica o tempo restante do
jogo e os níveis de energia. Quando a cooperação existe, o Tutor tende a reforçar o
comportamento dos alunos. De fato, o tutor tem uma crença sobre a cooperação
existente entre os alunos:
BEL(tutor,aluno_cooperando) if BEL(tutor,envia_mensagem).
BEL(envia_mensagem) se BEL(tutor, before(BEL(tutor,suspende(aluno)))),
Nesse momento, o gatilho (2) conectou-se com crença (1) e esta é ativada. Então, o
tutor adota uma intenção (ajudar os alunos) que será satisfeita enviando uma mensagem,
nesse caso uma mensagem de reforço.
O diálogo procede desse modo até a partida terminar. Ao final do tempo previsto,
os alunos controlam a poluição com o auxílio do tutor.
O capítulo a seguir, trata dos aspectos relativos ao agente cognitivo tutor sendo
abordados os aspecto de IE e IA da sua arquitetura e detalhando como estão expressos
os estados mentais do tutor. Serão utilizados como exemplos, alguns dos estados
mentais citados na coreografia acima.
84
Estratégia Tática
Mensagens
Guia
Avisos sonoros
Reativo
Elementos Gráficos
Assistente
Exemplos
bel(tutor, e_um_personagem(prefeito)).
bel(tutor, e_um_personagem(maenatureza)).
bel(tutor, e_um_elementocenario(Peixe)) if
bel(tutor, peixe(Peixe)).
bel(tutor, e_um_elementocenario(Planta)) if
bel(tutor, planta(Planta)).
bel(tutor, e_um_elementocenario(micro)).
bel(tutor, e_um_elementocenario(fundo)).
bel(tutor, e_um_elementocenario(agua)).
bel(tutor, e_um_elementocenario(ecometro)).
bel(tutor, retira_energia(draga)).
bel(tutor, retira_energia(lixourbano)).
bel(tutor, retira_energia(lancha)).
bel(tutor, retira_energia (esgotoindustrial)).
bel(tutor, retira_energia (produtostoxicos)).
bel(tutor, prefeito(lixeiras)).
bel(tutor, prefeito(proibicao)).
bel(tutor, prefeito(multa)).
bel(tutor, prefeito(licenca)).
bel(tutor, maenatureza(acelera)).
bel(tutor, maenatureza(intensifica)).
bel(tutor, maenatureza(trocafundo)).
90
bel(tutor, maenatureza(adicionaplanta)).
bel(tutor, energia(ecometro,Ee)) if
bel(tutor, energia(peixeA, PA)),
bel(tutor, energia(peixeB, PB)),
bel(tutor, energia(peixeC, PC)),
bel(tutor, energia(plantaA, Pa)),
bel(tutor, energia(plantaB, Pb)),
bel(tutor, energia(micro,M)),
bel(tutor, energia(fundo,F)),
bel(tutor, energia(agua, A)),
Ee is (PA+PB+PC+Pa+Pb+M+F+A)/8.
bel(tutor,energia(plantaA,N)) if
before(bel(tutor,multa)),
N is N+(N * 0.15).
bel(tutor,energia(plantaA,N)) if
before(bel(tutor,licenca)),
N is N+(N * 0.15).
bel(tutor,energia(plantaA,N)) if
before(bel(tutor,acelera)),
N is N+(N * 0.2).
bel(tutor,energia(plantaA,N)) if
before(bel(tutor,intensifica)),
N is N+(N * 0.15).
bel(tutor,energia(peixeA,N)) if
before(bel(tutor,gasolina)),
N is N-(N * 0.2).
91
bel(tutor,energia(peixeB,N)) if
before(bel(tutor, draga)),
N is N-(N * 0).
des(tutor, controlar_energia(X)).
bel(tutor, controlar_energia(Peixe)) if
bel(tutor, peixe(Peixe)),
bel(tutor,energia(peixeA, PA)),
PA<100.
bel(tutor, controlar_energia(Peixe)) if
bel(tutor, peixe(Peixe)),
bel(tutor,energia(peixeB, PB)),
PB<100.
bel(tutor, controlar_energia(Peixe)) if
bel(tutor, peixe(Peixe)),
bel(tutor,energia(peixeC, PC)),
PC<100.
bel(tutor, controlar_energia(Planta)) if
bel(tutor, planta(Planta)),
bel(tutor,energia(plantaA, Pa)),
Pa<100.
bel(tutor, controlar_energia(Planta)) if
bel(tutor, planta(Planta)),
bel(tutor,energia(plantaB, Pb)),
Pb<100.
bel(tutor, controlar_energia(agua)) if
bel(tutor,energia(agua, A)),
92
A<100.
bel(tutor, controlar_energia(micro)) if
bel(tutor,energia(micro, M)),
M<100.
bel(tutor, controlar_energia(fundo)) if
bel(tutor,energia(fundo,F)),
F<100.
O tutor guia o seu comportamento baseado nas informações que ele recebe do
ambiente (valores relativos à energia dos elementos do cenário, do tempo e dos estados
mentais associados às ações dos alunos). Enquanto essas informações são verificadas, o
conjunto de crenças que suporta os desejos candidatos torna-se o conjunto de intenções.
No caso do tutor do MCOE, o conjunto de planos (ações) associados a uma intenção se
restringe a um. Ou seja, o tutor vai escolher uma ação a realizar ao tomar uma decisão.
Um agente cognitivo que apresenta atitudes de tutor, conforme Corrêa, Coelho e
Viccari [COR98], possui um conjunto de estados mentais básicos que o caracteriza. Por
exemplo, no caso do tutor do MCOE, ele possui desejos de corrigir o aluno, de cooperar
com ele, de verificar o seu conhecimento, desejos esses típicos de um agente dessa
natureza. Isto é exemplificado a seguir:
des(tutor,cooperar(Aluno)).
bel(tutor, cooperar(Aluno)) if
bel (tutor,INT_THAT(Aluno, receber_auxilio).
bel(tutor, cooperar(Aluno)) if
bel(tutor, tempo(T)),
T> 0.
des(tutor,verificar_conhe(Aluno)) if
bel(tutor,energia(ecometro,Ee)),
Ee<100.
des(tutor,corrigir_conhe(Aluno)) if
bel(tutor,energia(ecometro,Ee)),
Ee<70.
93
O agente tutor deve ser preparado a enfrentar as situações típicas que ocorrem no
processo de ensino-aprendizagem que devem ser previstas pelo projetista da aplicação.
No contexto do MCOE podemos citar como exemplo a situação em que o aluno não
realiza nenhuma ação. Determinar o que significa no contexto do trabalho “o aluno não
fazer nenhuma ação” envolve uma análise mais complexa dessa atitude. A heurística a
ser utilizada para compor o conjunto de ações possíveis do tutor nesse contexto está
diretamente ligada à natureza da aplicação. Como objetivo do jogo é manter o equilíbrio
ecológico do sistema, o aluno vai constantemente monitorar os níveis de energia que
serão os indicadores do que está acontecendo no ambiente. Essa monitoração pode levar
o aluno a uma atitude de espera para verificar as conseqüências de suas ações (e do seu
colega), representada por:
bel(tutor, nao_faz_nada) if
bel(tutor, aluno_suspende.
Momentaneamente o aluno acredita que está tudo bem e sua intenção é esperar para
ver o que acontece. Uma vez que o sistema está equilibrado, ele e não necessita fazer
qualquer tipo de intervenção. Este comportamento do aluno é representado no tutor por:
bel(tutor, aluno_sem_acao) if
bel (tutor,INT_THAT(Aluno,espera).
Outra possibilidade que o tutor considera quando o aluno está sem ação é a
impotência de realizar qualquer intervenção por ele não possui mais ferramentas
disponíveis para jogar. Esta possibilidade é representada por:
bel(tutor, aluno_sem_acao) if
bel(tutor, aluno_e_um_personagem(Aluno, P1)),
P1= "prefeito",
before(bel(tutor, numero_ferramenta(lixeira, Nan))),
bel(tutor, numero_ferramenta(lixeira, Nat)),
94
Nan=Nat,
before(bel(tutor, numero_ferramenta(proibicao, Nan))),
bel(tutor, numero_ferramenta(proibicao, Nat)),
Nan=Nat,
before(bel(tutor, numero_ferramenta(multa, Nan))),
bel(tutor, numero_ferramenta(multa, Nat)),
Nan=Nat,
before( bel(tutor, numero_ferramenta(licenca, Nan))),
bel(tutor, numero_ferramenta(licenca, Nat)),
Nan=Nat.
bel(tutor, numero_ferramenta_zerada_prefeito(No)) if
bel(tutor, zerada(lixeira, L)),
bel(tutor, zerada(proibicao, P)),
bel(tutor, zerada(multa, Mu)),
bel(tutor, zerada(licenca, Li)),
No is L+ P + Mu + Li.
bel(tutor, numero_ferramenta_zerada_maenatureza(No)) if
bel(tutor, zerada(acelera, Ac)),
bel(tutor, zerada(intensifica, In)),
bel(tutor, zerada(trocafundo, Tf)),
bel(tutor, zerada(adicionaplanta, Ap)),
No is Ac+ In + Tf + Ap.
bel(tutor, envia_mensagem(16)) if
95
bel(tutor, tempo_restante(Tr)) if
bel(tutor, tempo_jogo(Tj)),
bel(tutor, tempo (T),
Tr is Tj-T.
bel(tutor, tempo_restante(Tr)) if
bel(tutor, tempo_partida(Tp),
bel(tutor, tempo(T),
Tr is Tp-T.
bel(tutor, tempo_folga_1(Tx1))if
bel(tutor, tempo_partida(Tp),
Tx1 is Tp*0.8.
bel(tutor, tempo_folga_2(Tx2))if
bel(tutor, tempo_partida(Tp),
Tx2 is Tp*0.2.
bel(tutor, tempo_folga_3(Tx3))if
bel(tutor, tempo_partida(Tp),
Tx3 is Tp*0.5.
96
des(tutor, alertar_tempo) if
bel(tutor, tempo_restante(Tr)),
Tr <= Tx2.
O “kernel” cognitivo produz uma descrição das interações do estudante com o tutor,
a evolução dos estados mentais favorecendo ao professor verificar como os alunos
perceberam e trabalharam o contexto. A escolha de ferramentas inadequadas ou de
baixo poder de combate em uma situação crítica indica que o estudante ainda entende
mal o problema e necessita de uma orientação adicional.
Importante salientar que o tutor tem um modelo pessoal de cada aluno, mas ainda
não possui um modelo coletivo. O aspecto da modelagem coletiva está em aberto tanto
em Ciência da Computação como na Psicologia. Os trabalhos de Paiva [PAI96;PAI97] e
Hoppe [HOP95] apresentam alguns resultados obtidos até o momento e parecem ser
promissores para se modelar grupos em ambientes computacionais. Investigações em
andamento no CBLU, sob a supervisão do Dr. John Self, ainda estão em fase inicial e
não possuem resultados finais publicados [TED98].
97
19
A autora desta tese participou como orientadora deste projeto.
98
20
Toolbook é marca registrada da empresa Assimetrix.
104
se modifica à cada vez que eles jogam. O jogo nunca se apresenta da mesma forma. O
número de peixes no lago, plantas e outros elementos do cenário variam, bem como os
desafios que o aluno deve enfrentar. Isto ocorre mesmo que o personagem escolhido
seja o igual ao da partida anterior.
Considerando-se os agentes cognitivos, a autonomia garante as condições dos alunos
atingirem seus objetivos pessoais. Num ambiente educacional o agente tem de analisar
suas próprias ações e seus reflexo no ambiente (propriedade pró-ativa), antes de fazer
uma determinada ação. A habilidade social está implícita nas ações executadas no
teclado quando o aluno pressiona determinado botão associado a uma ferramenta de
combate da poluição e, também, codificada no conjunto de crenças ligadas ás ações do
aluno.
107
forma implícita algo que é considerado muito importante num ambiente educacional: o
pensamento reflexivo. O aluno pensar sobre a sua ação e as conseqüências que advirão
desta ação. A habilidade social dos agentes está implícita nas ações de teclado quando o
aluno pressiona uma ferramenta selecionada do seu personagem.
O uso de múltiplas estratégias para modelar o comportamento do tutor implicou na
sofisticação da interface. A interface tem de permitir um ambiente interativo, rico em
possibilidades para o aluno e com alternativas para se poder expressar as múltiplas
táticas associadas às estratégias do tutor. O uso das técnicas de agente possibitou-nos
alcançar esse grau de sofisticação necessário para projeto de um STI com essas
características. Um dos resultados mais importantes obtidos com o experimento
realizado junto aos professores, foi os 100% alcançados em conteúdos significativos. O
domínio é o mesmo, e as regras de funcionamento são iguais. No entanto, todos os
professores tiveram a percepção que MCOE tem conteúdos mais significativos que o
outro jogo. Um explicação para esse resultado reside no fato de que o Eco-Lógico só
usa a estratégia criada pelos especialistas que auxiliaram a modelar o sistema, logo a
interface apresenta uma maneira do aluno perceber o que está acontecendo no sistema e
interagir.
Os agentes reativos utilizados aumentaram a qualidade da representação do domínio
e ampliaram as possibilidades do aluno observar o resultado de suas ações no ambiente.
O resultado final é um ambiente rico e que permite um feedback 21 instantâneo do que
está acontecendo no sistema, fazendo com que o aluno possa ter mais elementos para
poder montar sua estratégia de ação. É importante lembrar que o jogo (MCOE) é um
ambiente de resolução de problemas em que os estudantes têm desafios múltiplos
durante a mesma sessão. A possibilidade de exibir o ambiente do lago com aspecto
diferente a cada vez que o aluno inicia uma nova partida, cria a sensação de um novo
desafio. Fica muito difícil o aluno conseguir saber de forma antecipada o que vai
acontecer. O número de peixes que irá compor o cenário, qual a situação do sistema
após a execução de um determinado conjunto de ações, permitem criar um ambiente que
não têm uma configuração fixa e exibe uma situação diferenciada a cada vez que é
inicializado.
Este trabalho, além das contribuições científicas, favoreceu a combinação e a
exploração de várias tecnologias que vinham sendo utilizadas de forma separada em
muitos projetos existentes no II/CPGCC. É um trabalho que mostrou sua adequação ao
solucionar os problemas decorrentes da arquitetura proposta ao garantir a interação dos
aspectos pedagógicos, de qualidade da interface e de performance do sistema (SMAR).
A arquitetura multiagente apresentada nesta tese também será utilizada como base
para o desenvolvimento de uma arquitetura geral para STI na área de saúde. Maiores
detalhes vide item 7.2 deste capítulo).
Os resultados acima apresentados e as diversas publicações obtidas com essa tese
(vide anexo 7), constituem-se num indicador importante das possibilidades dessa
arquitetura.
21
Feedback : retroalimentação. O aluno recebe um conjunto de informações significativas que o
permitem refletir a cerca da conseqüência de suas ações.
109
7.1 Limitações
O sistema proposto para teste das idéias dessa tese (MCOE) recebeu uma ótima
aceitação por parte dos professores entrevistados que manifestaram seu interesse em
utilizá-lo como recurso complementar de suas atividades com os alunos. Devido ao
potencial do ambiente e sua aceitação, decidiu-se continuar implementando as sugestões
colhidas ao longo dos experimentos da seguinte forma:
• colocar mais ferramentas para cada personagem e permitir que o usuário
escolha as ferramentas que deseja utilizar;
• colocar mais personagens disponíveis para o usuário;
112
MANUAL DO USUÁRIO
Elaborado por
Orientação
DRA. ROSA MARIA VICCARI
PORTO ALEGRE
1999
117
Agradecimentos
Edson Lindner, pela idéia do lago, e pelo interesse e prontidão sempre que foi
preciso.
Sumário
Um lago pode ser considerado como sendo um ecossistema de pequeno porte, pois os
seres vivos ali inseridos convivem teoricamente em equilíbrio entre si e com o meio.
122
4. Os Personagens do jogo
Podemos afirmar que num âmbito geral as ações dos personagem possuem dois
objetivos pedagógicos básicos:
• Chamar atenção para os poluentes mais comuns a nossa realidade, e possíveis
soluções para eles.
• Permitir que o usuário identifique as ações que são positivas ou negativas para o
equilíbrio do ambiente.
O usuário escolhe qual o seu personagem no início do jogo. Conforme ilustra a figura
1. Cada personagem possui ferramentas com objetivos específicos que explicamos a
partir de agora.
Mãe Natureza
• Acelerar degradação: Mostrar que o processo de degradação é a única maneira
de o meio ambiente se recompor de certos poluentes e que este é um processo
natural, porém lento.
• Colocar Aguapés: Mostrar que os aguapés são algas que colaboram
positivamente no estancamento da poluição de um lago ou rio.
• Trocar o Fundo do lago: Mostrar que a poluição fica mais concentrada na areia
do fundo do lago.
• Abrir Sol: Mostrar que o sol aumenta a fotossíntese e consequentemente a
quantidade de oxigênio no lago.
Prefeito
• Colocar Lixeiras: Mostrar que um governante pode colocar lixeiras diminuindo
a quantidade de lixo que vai para o lago induzindo as pessoas a terem um hábito
de procurar guardar o lixo em local adequado.
124
• Proibição: Mostrar que um governante pode proibir algumas atividades que são
poluentes. Tais como a navegação motorizada (lanchas e Jet-Ski) e a utilização da
draga.
• Multar: Mostrar que o governante pode multar uma ação danosa ao meio
ambiente e isto pode fazer com que as pessoas parem para pensar no que estão
fazendo;
• Retirar licença: Mostrar que o governante pode obrigar uma empresa a instalar
tratamento de fluídos, através da retirada de sua licença e que essa é a uma saída
para o problema do desequilíbrio causado pelas industrias que não se preocupam
com o meio ambiente sejam elas de que tamanho forem);
Pescador
• Pesca predatória: Mostrar que a pesca de arrastão é uma prática predatória e que
prejudica o ambiente.
• Pescar em Área protegida: Mostrar que as áreas protegidas possuem espécies
em extinção e consequentemente não devem ser pescadas.
• Pescar para se alimentar: Mostrar que o pescador que pesca para se alimentar
não afeta o equilíbrio do meio ambiente.
• Pescar em época permitida: Mostrar que existem épocas para pesca definidas
por especialistas e que devem ser respeitadas.
Turista
• Não Jogar Lixo: Identificar o lixo, por menor que seja, como um elemento
poluente, e mostrar que não se deve jogar lixo em lugar inadequado. Não jogar
lixo é uma ação boa para manutenção do equilíbrio do lago;
• Não Levar Lembrança do Lago: Mostrar que a prática, comum de muitos os que
estão praticando o turismo, de levar pedras, conchas, plantas, animais, enfim
qualquer coisa que faça parte do ecossistema do lugar é prejudicial ao mesmo pois
afeta o seu equilíbrio.
• Nadar no lago: Mostrar que nadar no lago não prejudica o ecossistema, e que a
pratica de um esporte é sempre positiva a menos que sejam utilizados
equipamentos poluidores (tanto sonoros como químicos). Ex.: Jet-Ski.
• Tirar fotografia: Mostrar que documentar as paisagens através da máquina
fotográfica não oferece perigo nenhum ao meio ambiente, e inclusive pode levar
ao conhecimento de outras as pessoas as belezas de um local.
5. Os Poluentes
• Draga - Mostrar que remexer a areia do fundo do lago traz prejuízos aos peixes
que habitam as proximidades.
• Lixo - Mostrar que qualquer lixo, mesmo um insignificante papel de bala que se
joga no chão acabará chegando no lago e ocasionando desequilíbrio.
• Clube Náutico - O Jet-Ski e a lancha tem o mesmo objetivo de mostrar que
trazem leves prejuízos ao ambiente já que deixam combustível na superfície do
126
PEIXE
Nível de ação PLANTAS ação
energia % Nível de energia %
80-100 reproduz, alimenta, 70-100 reproduz, movimenta
movimenta
60-79 alimenta, movimenta 50-69 movimenta
40-59 alimenta 10-49 muda de cor e imóvel
10-30 muda de cor menos de 10 Morre
menos de 10 morre
MICROORGANISMOS
ação
Nível de energia %
reproduz, movimenta
70-100
movimenta
50-69
morre
0-49
Obs.:
Para a planta continuar a viver ela depende das condições da água e do fundo do
lago.
Para o peixe B viver ele depende dos microorganismos. E estes dependem das
condições da água.
Para o peixe A viver ele depende do peixe C, que depende das plantas.
Ferramentas
Acelerar +10 +10 +10 +20 +10 +20 +10 +10
degradação
Intensificar a +15 +15 +15 +15 +15 +15 +15 +15
luz do sol
Adicionar mais +5 +5 +5 +10 +5 +15 +15 +5
plantas
Trocar fundo +5 +5 +5 +10 +5 +15 +15 +5
Colocar lixeiras +5 +5 +5 +5 +10 +5 +15 +10
Proibição +5 +10 +10 +10 +10 +10 +10 +10
(genérica)
Multar +10 +20 +20 +15 +20 +10 +10 +10
Retirar licença +15 +20 +20 +15 +20 +20 +10 +10
Pescar em área +10 +10 +10 +5 +5 +5 +5 +5
permitida
Utilizar equipa. +20 +20 +15 +5 +5 +5 +5 +5
adequado
Retirar lixo da +15 +20 +15 +10 +5 +10 +20 +10
água
Devolver peixes +20 +20 +15 +5 +5 +5 +5 +5
em reprodução
Não jogar lixo +5 +5 +5 +15 +5 +15 +20 +15
no chão
Não levar +5 +5 +5 +10 +5 +15 +10 +10
recordações do lago
Nadar no lago +10 +10 +10 +5 +10 +10 +10 +5
Tirar fotografias +10 +10 +10 +5 +10 +10 +10 +5
129
Termi
Iniciar o jogo
Pau Configurar
apresentação e ativar
arquivos do jogo
Ativar editor
de arquivos do jogo
Sair do Jogo
Nome do
Tamanho
A opção EDITOR permite que o usuário crie o arquivo que será usado no jogo. A
figura 6 apresenta a janela do EDITOR.
Janela do ABRIR
A seguir, o segundo jogador escolhe entre os três personagens restantes o que vai
jogar (figura12).
9. O ambiente do jogo
O jogo inicia com a ativação do arquivo selecionado pelo usuário
(nome_de_arquivo.mco), a inicialização do lago com todos os seus elementos, o
Ecômetro apresentando cor relativa ao estado atual da energia do ecossistema, os
bitmaps que representam os personagens escolhidos pelos dois jogadores, os botões das
ferramentas associadas a cada personagem, os botões de ajuda e informações sobre o
kernel (núcleo) cognitivo do sistema onde são processados os estados mentais. A figura
13 apresenta a tela do jogo no início de uma partida, onde foram selecionados os
personagens Mãe natureza e Prefeito.
Poluidor
Kernel
Cogniti
Ecômet Ajud
ro Ferramenta a
Personagens s
Cada imagem que aparece na janela do sistema de ajuda é um botão que ativa outra
janela onde o usuário acessa informação a respeito do jogo e do seu conteúdo (domínio
da aplicação). A figura 15 apresenta um exemplo de conteúdo que pode ser encontrado
na ajuda.
No início do jogo aparece uma janela com a opção de jogar com ou sem o auxilio do
tutor.
Quando o tutor é ativado os jogadores passam a ter suas ações monitoradas pelo tutor
que fará intervenções de acordo com as ações realizadas por cada aluno.
As mensagens do tutor aparecem em janelas disponibilizadas apenas na versão 2.0.
O tutor utiliza os estados mentais associados à cada ação dos alunos para fazer um
perfil individualizado do aluno e poder tomar a decisão de como ele deve se comportar
face às necessidades de cada aluno. O tutor pode ser mais diretivo ou menos diretivo
dependendo do tipo de aluno e a situação em que se encontra o ambiente.
Os estados mentais associados ás ações dos alunos podem ser vistos pressionando
apresentado na FIGURA 16.
CPGCC/UFRGS
rosa@inf.ufrgs.br
Programa de Pós-Graduação em Computação – UFRGS
Av. Bento Gonçalves 9500 – Bloco IV – Porto Alegre – RS – Brasil
[MOR97] Móra, M.C.; Lopes, J.G.; Coelho, J.G.; Viccari, R. Modelling dynamic aspects of
intentions. In E.Costa, editor, 8th Portuguese Conference on Artificial Intelligence.
Springer-Verlag, Proceedings..., 1997.
[MOR98a] Móra, M.C.; Lopes, J.G.; Coelho, J.G.; Viccari, R. Modelling agents with extended
logic programa. In International Workshop on Engineering of Intelligent Systems .
ICSC co., 1998.
[RAA96] Raabe, A.L.A; Javimczik, A .M.; Giraffa, L.M.M. Eco-Lógico: Ambiente interativo
para suporte ao ensino de educação ambiental. In: VII Simpósio Brasileiro de
Informática na Educação, 7., 1996. Anais ... Belo Horizonte: DCC/UFMG, 1996.
140
Anexo 3 – Questionário
DADOS DE IDENTIFICAÇÃO
QUESTIONÁRIO
Que tipo de exercícios você utiliza para introduzir o estudo de poluição com seus
alunos?
( ) vídeos
( ) trabalho com colagem e desenhos feitos pelos alunos
( ) passeios a lugares poluídos e locais sadios
( ) programas de computador
( ) outros (favor especificar)
Que tipo de exercícios você utiliza para complementar o estudo de poluição com seus
alunos?
( ) vídeos
( ) trabalho com colagem e desenhos feitos pelos alunos
( ) passeios a lugares poluídos e locais sadios
( ) programas de computador
( ) outros (favor especificar)
141
2. Os programas de computador selecionados por você para seu ensino junto aos seus
alunos, estão escritos em português?
( ) sim/todos estão escritos em português
( ) geralmente/ a maioria das vezes estão escritos em português
( ) às vezes estão escritos em português
( ) quase nunca estão escritos em português
( ) não/nenhum/nunca estão escritos em português
3. Os programas de computador selecionados por você para seu ensino junto aos seus
alunos, possuem características semelhantes a jogos?
( ) sim, todos possuem
( ) geralmente/a maioria das vezes possuem
( ) às vezes possuem
( ) quase nunca possuem
( ) não, não possuem
4. Os programas de computador selecionados por você para seu ensino junto aos seus
alunos, usam recursos sonoros?
( ) sim, todos usam
( ) geralmente/ a maioria das vezes usam
( ) às vezes usam
( ) quase nunca usam
( ) não, nunca usam
142
5. Os programas de computador selecionados por você para seu ensino junto aos seus
alunos, usam imagens em movimento (animações) ?
( ) sim, todos usam
( ) geralmente/ a maioria das vezes usam
( ) às vezes usam
( ) quase nunca usam
( ) não, nunca usam
6. Os programas de computador selecionados por você para seu ensino junto aos seus
alunos, possibilitam aos seus alunos interagirem com o programa?
( ) sim, todos possibilitam
( ) geralmente/ a maioria das vezes possibilitam
( ) às vezes possibilitam
( ) quase nunca possibilitam
( ) não, nunca possibilitam
7. Os programas de computador selecionados por você para seu ensino junto aos seus
alunos, registram o trabalho dos seus alunos durante sua utilização ?
( ) sim, todos registram
( ) geralmente/maioria das vezes registram
( ) às vezes registram
( ) quase nunca registram
( ) não, nunca registram
8. Os programas de computador selecionados por você para seu ensino junto aos seus
alunos, permitem ao professor poder adequar o tempo do programa aos seus
objetivos ?
( ) sim, todos permitem
143
9. Os programas de computador selecionados por você para seu ensino junto aos seus
alunos, funcionam de maneira diferente a cada vez que os seus alunos os utilizam?
( ) sim, todos funcionam
( ) geralmente/a maioria das vezes funcionam
( ) às vezes funcionam
( ) quase nunca funcionam
( ) não, nunca funcionam
10. Os programas de computador selecionados por você para seu ensino junto aos seus
alunos, possuem um sistema de ajuda para entender como funciona o programa?
( ) sim, todos possuem
( ) geralmente/a maioria das vezes possuem
( ) às vezes possuem
( ) quase nunca possuem
( ) não, nunca possuem
11. Os programas de computador selecionados por você para seu ensino junto aos seus
alunos, possuem um sistema de ajuda para auxiliar o aluno a entender o conteúdo
trabalhado pelo programa?
( ) sim, todos possuem
( ) geralmente/a maioria das vezes possuem
( ) às vezes possuem
( ) quase nunca possuem
( ) não, nunca possuem
144
12. Os programas de computador selecionados por você para seu ensino junto aos seus
alunos, devem possuir um sistema de ajuda para auxiliar o aluno a entender o
conteúdo trabalhado pelo programa?
( ) sim, todos devem possuir
( ) geralmente/ a maioria das vezes devem possuir
( ) às vezes devem possuir
( ) quase nunca devem possuir
( ) não, nunca devem possuir
( ) isto não é importante/significativo
21. Qual dos dois ambientes possui mais conteúdo relevante para ser explorado por
parte do professor numa atividade de ensino junto aos seus alunos?
( ) O ambiente do Eco-Lógico
( ) O ambiente do MCOE
( ) ambos possuem conteúdos equivalentes
( ) nenhum possui conteúdo relevante a ser explorado
22. Qual dos ambientes na sua opinião é mais dinâmico em termos de movimento dos
elementos do jogo?
( ) O ambiente do Eco-Lógico
( ) O ambiente do MCOE
( ) ambos são igualmente dinâmicos
( ) nenhum dos dois é dinâmico
146
23. Dos dois programas que você analisou qual o mais fácil de ser entendido num
primeiro momento?
( ) O ambiente do Eco-Lógico
( ) O ambiente do MCOE
( ) ambos são igualmente fáceis de serem entendidos
( ) ambos são igualmente difíceis de serem entendidos
24. Qual dos dois programas é mais adequado ao tipo de trabalho que você desenvolve?
( ) O programa Eco-Lógico
( ) O programa MCOE
( ) ambos são igualmente adequados
( ) nenhum dos dois é adequado
Se você quiser fazer um comentário, use este espaço para alguma consideração que
acha importante ou coloque sugestões que você julga importantes para melhoria do
programa Eco-Lógico(utilize o verso da folha se necessário).
Se você quiser fazer um comentário, use este espaço para alguma consideração que
acha importante ou coloque sugestões que você julga importantes para melhoria do
programa MCOE (utilize o verso da folha se necessário).
147
bel(tutor, tempo_restante(Tr)) if
bel(tutor, tempo_partida(Tp),
bel(tutor, tempo(T),
Tr is Tp-T.
bel(tutor, tempo_folga_1(Tx1))if
bel(tutor, tempo_partida(Tp),
Tx1 is Tp*0.8.
bel(tutor, tempo_folga_2(Tx2))if
bel(tutor, tempo_partida(Tp),
Tx2 is Tp*0.2.
bel(tutor, tempo_folga_3(Tx3))if
bel(tutor, tempo_partida(Tp),
Tx3 is Tp*0.5.
/* alerta do tempo */
des(tutor, alertar_tempo) if
bel(tutor, tempo_restante(Tr)),
Tr <= Tx2.
des(tutor, enviar_mensagem(X)).
bel(tutor, enviar_mensagem(1)) if
bel(tutor,INT_THAT(Aluno, receber_auxilio),
bel(tutor, energia(ecometro, Ee)),
Ee < 70,
bel(tutor, tempo_folga_1(Tx1)).
bel(tutor, enviar_mensagem(2))if
bel(tutor, energia(peixeA, PA)),
PA < 80,
149
bel(tutor, tempo_folga_3(Tx3)).
bel(tutor, enviar_mensagem(2)) if
bel(tutor, energia(peixeB, PB)),
PB < 80,
bel(tutor, tempo_folga_1(Tx3)).
bel(tutor, enviar_mensagem(2)) if
bel(tutor, energia(peixeC, PC)),
PC < 80,
bel(tutor, tempo_folga_3(Tx3)).
bel(tutor, enviar_mensagem(3) if
bel(tutor, energia(plantaA, Pa)),
Pa < 70,
bel(tutor, tempo_folga_3(Tx3)).
bel(tutor, enviar_mensagem(3))if
bel(tutor, energia(plantaB, Pb)),
Pb < 70,
bel(tutor, tempo_folga_3(Tx3)).
bel(tutor, enviar_mensagem(4)) if
bel(tutor, energia(micro, M)),
M < 70,
bel(tutor, tempo_folga_3(Tx3)).
bel(tutor, enviar_mensagem(5)) if
bel(tutor, energia(fundo, F)),
F < 80,
bel(tutor, tempo_folga_3(Tx3)).
bel(tutor, enviar_mensagem(6)) if
bel(tutor, energia(agua, A)),
A < 80,
bel(tutor, tempo_folga_3(Tx3)).
bel(tutor, enviar_mensagem(7)) if
bel(tutor, e_um_personagem(prefeito)),
150
bel(tutor, enviar_mensagem(7)) if
bel(tutor, e_um_personagem(prefeito)),
bel(tutor, numero_ferramenta(proibicao, N)),
N <=2,
bel(tutor, tempo_folga_2(Tx2)).
bel(tutor, enviar_mensagem(7)) if
bel(tutor, e_um_personagem(prefeito)),
bel(tutor, numero_ferramenta(multa, N)),
N <= 1,
bel(tutor, tempo_folga_2(Tx2)).
bel(tutor, enviar_mensagem(7)) if
bel(tutor, e_um_personagem(prefeito)),
bel(tutor, numero_ferramenta(licenca, N)),
N<= 1,
bel(tutor, tempo_folga_2(Tx2)).
bel(tutor, enviar_mensagem(7)) if
bel(tutor, e_um_personagem(maenatureza)),
bel(tutor, numero_ferramenta(acelera, N)),
N <= 1,
bel(tutor, tempo_folga_2(Tx2)).
bel(tutor, enviar_mensagem(7)) if
bel(tutor, e_um_personagem(maenatureza)),
bel(tutor, numero_ferramenta(intensifica, N)),
N <= 1,
bel(tutor, tempo_folga_2(Tx2)).
bel(tutor, enviar_mensagem(7)) if
bel(tutor, e_um_personagem(maenatureza)),
bel(tutor, numero_ferramenta(trocafundo, N)),
N <= 1,
bel(tutor, tempo_folga_2(Tx2)).
151
bel(tutor, enviar_mensagem(7)) if
bel(tutor, e_um_personagem(maenatureza)),
bel(tutor, numero_ferramenta(adicionaplanta, N)),
N <= 2,
bel(tutor, tempo_folga_2(Tx2)).
bel(tutor, aluno_sem_acao) if
bel(tutor, aluno_e_um_personagem(Aluno, P1)),
P1= "prefeito",
before(bel(tutor, numero_ferramenta(lixeira, Nan))),
bel(tutor, numero_ferramenta(lixeira, Nat)),
Nan=Nat,
before(bel(tutor, numero_ferramenta(proibicao, Nan))),
bel(tutor, numero_ferramenta(proibicao, Nat)),
Nan=Nat,
before(bel(tutor, numero_ferramenta(multa, Nan))),
bel(tutor, numero_ferramenta(multa, Nat)),
Nan=Nat,
before( bel(tutor, numero_ferramenta(licenca, Nan))),
bel(tutor, numero_ferramenta(licenca, Nat)),
Nan=Nat.
/* envio de exemplos */
des(tutor, enviar_exemplo(X)).
bel(tutor, enviar_exemplo(1)) if
des(Aluno, receber_auxilio),
bel(tutor, energia(ecometro, Ee)),
Ee >=50,
Ee < 70,
bel(tutor, aluno_sem_acao).
bel(tutor, enviar_exemplo(2)) if
des(Aluno, receber_auxilio),
bel(tutor, energia(ecometro, Ee)),
Ee < 50,
Ee >= 40,
152
bel(tutor, aluno_sem_acao).
bel(tutor, enviar_exemplo(3)) if
des(Aluno, receber_auxilio),
bel(tutor, energia(ecometro, Ee)),
Ee < 40,
Ee >= 35,
bel(tutor, aluno_sem_acao).
bel(tutor, enviar_exemplo(4)) if
des(Aluno, receber_auxilio),
bel(tutor, energia(ecometro, Ee)),
Ee < 35,
Ee >= 30,
bel(tutor, aluno_sem_acao).
bel(tutor, enviar_exemplo(5)) if
des(Aluno, receber_auxilio),
bel(tutor, energia(ecometro, Ee)),
Ee < 30,
Ee >= 25,
bel(tutor, aluno_sem_acao).
bel(tutor, enviar_exemplo(6)) if
des(Aluno, receber_auxilio),
bel(tutor, energia(ecometro, Ee)),
Ee < 25,
bel(tutor, aluno_sem_acao).
/* envio de alerta */
des(tutor,enviar_alerta(X)).
bel(tutor, energia_cenario_menor(Z)) if
bel(tutor, menor(peixeA, Za)),
bel(tutor, menor(peixeB, Zb)),
bel(tutor, menor(peixeC, Zc)),
bel(tutor, menor(plantaA, Zd)),
bel(tutor, menor(plantaB, Ze)),
bel(tutor, menor(micro, Zf)),
bel(tutor, menor(fundo, Zg)),
bel(tutor, menor(agua, Zh)),
Z is Za + Zb + Zc + Zd + Ze + Zf + Zg + Zh.
bel(tutor, enviar_alerta(3)) if
bel(tutor, elem_cenario_sumiu) if
bel(tutor, peixe(Peixe)),
bel(tutor, peixe(peixeA),
bel(tutor, energia(peixeA, PA),
PA= 0.
bel(tutor, enviar_alerta(3)) if
bel(tutor, elem_cenario_sumiu) if
bel(tutor, peixe(Peixe)),
bel(tutor, peixe(peixeB),
bel(tutor, energia(peixeB, PB),
PB= 0.
bel(tutor, enviar_alerta(3)) if
bel(tutor, elem_cenario_sumiu) if
bel(tutor, peixe(Peixe)),
bel(tutor, peixe(peixeC),
bel(tutor, energia(peixeC, PC),
PC= 0.
154
bel(tutor, enviar_alerta(3)) if
bel(tutor, elem_cenario_sumiu) if
bel(tutor, planta(Planta)),
bel(tutor, planta(plantaA),
bel(tutor, energia(plantaA, Pa),
Pa= 0.
bel(tutor, enviar_alerta(3)) if
bel(tutor, elem_cenario_sumiu) if
bel(tutor, planta(Planta)),
bel(tutor, planta(plantaB),
bel(tutor, energia(plantaB, Pb),
Pb= 0.
bel(tutor, enviar_alerta(3)) if
bel(tutor, elem_cenario_sumiu) if
bel(tutor, energia(micro, M),
M= 0.
bel(tutor, enviar_alerta(3)) if
bel(tutor, elem_cenario_sumiu) if
bel(tutor, energia(fundo, F),
F= 0.
bel(tutor, enviar_alerta(3)) if
bel(tutor, elem_cenario_sumiu) if
bel(tutor, energia(agua, A),
A= 0.
155
bel(aluno, e_um_personagem(prefeito)).
bel(aluno, prefeito(lixeiras)).
bel(aluno, prefeito(proibicao)).
bel(aluno, prefeito(multa)).
bel(aluno, prefeito(licenca)).
bel(aluno, e_um_elementocenario(Peixe)) if
bel(aluno, peixe(Peixe)).
bel(aluno, e_um_elementocenario(Planta)) if
bel(aluno, planta(Planta)).
bel(aluno, e_um_elementocenario(micro)).
bel(aluno, e_um_elementocenario(fundo)).
bel(aluno, e_um_elementocenario(agua)).
bel(aluno, e_um_elementocenario(ecometro)).
bel(aluno, reproduz(Peixe)) if
bel(aluno, peixe(Peixe)).
bel(aluno, alimenta(Peixe)) if
bel(aluno, peixe(Peixe)).
bel(aluno, movimenta(Peixe)) if
bel(aluno, peixe(Peixe)).
bel(aluno, reproduz(Planta)) if
bel(aluno, planta(Planta)).
bel(aluno, alimenta(Planta)) if
bel(aluno, planta(Planta)).
bel(aluno, reproduz(micro)).
bel(aluno, movimenta(micro)).
bel(aluno, alimenta(fundoLago)).
bel(aluno, alimenta(agua)).
156
bel(aluno, peixe(peixeA)).
bel(aluno, peixe(peixeB)).
bel(aluno, peixe(peixeC)).
bel(aluno, planta(plantaA)).
bel(aluno, planta(plantaB)).
bel(aluno, retira_energia(draga)).
bel(aluno, retira_energia(lixourbano)).
bel(aluno, retira_energia(jetski)).
bel(aluno, retira_energia(pescapredatoria)).
bel(aluno, retira_energia (esgotoindustrial)).
bel(aluno, retira_energia (esgotodomestico)).
bel(aluno, retira_energia (produtostoxicos)).
bel(aluno, retira_energia (postogasolina)).
bel(aluno, coloca_energia(lixeiras)).
bel(aluno, coloca_energia(proibicao)).
bel(aluno, coloca_energia(multa)).
bel(aluno, coloca_energia(licenca)).
bel(aluno, coloca_energia(acelera)).
bel(aluno, coloca_energia(intensifica)).
bel(aluno, coloca_energia(trocafundo)).
bel(aluno, coloca_energia(adicionaplanta)).
bel(aluno, coloca_energia(pescapermitida)).
bel(aluno, coloca_energia(equipamento)).
bel(aluno, coloca_energia(retiralixo)).
bel(aluno, coloca_energia(devolvepeixe)).
bel(aluno, combate(lixeiras,lixourbano)).
157
bel(aluno, energia(ecometro,Ee)) if
bel(aluno, energia(peixeA, PA)),
bel(aluno, energia(peixeB, PB)),
bel(aluno, energia(peixeC, PC)),
bel(aluno, energia(plantaA, Pa)),
bel(aluno, energia(plantaB, Pb)),
bel(aluno, energia(micro,M)),
bel(aluno, energia(fundo,F)),
bel(aluno, energia(agua, A)),
Ee= (PA+PB+PC+Pa+Pb+M+F+A)/8.
bel(aluno, ~reproduz(peixeA)) if
bel(aluno, energia(peixeA, PA)),
PA < 80.
158
bel(aluno, ~movimenta(peixeA)) if
bel(aluno, energia(peixeA, PA)),
PA < 60.
bel(aluno, ~alimenta(peixeA)) if
bel(aluno, energia(peixeA, PA)),
PA < 40.
bel(aluno, morre(peixeA)) if
bel(aluno, energia(peixeA, PA)),
PA < 10.
bel(aluno, ~reproduz(peixeB)) if
bel(aluno, energia(peixeB, PB)),
PB < 80.
bel(aluno, ~movimenta(peixeB)) if
bel(aluno, energia(peixeB, PB)),
PB < 60.
bel(aluno, ~alimenta(peixeB)) if
bel(aluno, energia(peixeB, PB)),
PB < 40.
bel(aluno, morre(peixeB)) if
bel(aluno, energia(peixeB, PB)),
PB < 10,
bel(aluno, ~reproduz(peixeC)) if
bel(aluno, energia(peixeC, PC)),
PC < 80.
bel(aluno, ~movimenta(peixeC)) if
bel(aluno, energia(peixeC, PC)),
PC < 60.
bel(aluno, ~alimenta(peixeC)) if
bel(aluno, energia(peixeC, PC)),
PC < 40.
bel(aluno, morre(peixeC)) if
bel(aluno, energia(peixeC, PC)),
PC < 10.
bel(aluno, ~reproduz(plantaA)) if
bel(aluno, energia(plantaA, Pa)),
Pa < 70.
bel(aluno, ~movimenta(plantaA)) if
bel(aluno, energia(plantaA, Pa)),
159
Pa < 50.
bel(aluno, morre(plantaA)) if
bel(aluno, energia(plantaA, Pa)),
Pa < 10.
bel(aluno, ~reproduz(plantaB)) if
bel(aluno, energia(plantaB, Pb)),
Pb < 70.
bel(aluno, ~movimenta(plantaB)) if
bel(aluno, energia(plantaB, Pb)),
Pb < 50.
bel(aluno, morre(plantaB)) if
bel(aluno, energia(plantaB, Pb)),
Pb < 10.
bel(aluno, ~reproduz(micro)) if
bel(aluno, energia(micro, M)),
M < 70.
bel(aluno, ~movimenta(micro)) if
bel(aluno, energia(micro, M)),
M < 50.
bel(aluno, morre(micro)) if
bel(aluno, energia(micro, M)),
M < 40.
des(aluno, observar_cenario) if
bel(aluno, energia_ecometro(Ee),
Ee>70.
des(aluno,verificar_ecom) if
bel(aluno,energia(ecometro,Ee)),
Ee<100.
des(aluno, receber_auxilio)if
bel(aluno, energia(ecometro, Ee)),
Ee < 50.
des(aluno, parar_jogar)if
bel(aluno, zerada(F, 0)) if
bel(aluno, numero_ferramenta (F, No)),
160
No= 0.
bel(aluno, numero_ferramenta_zerada_prefeito(No)) if
bel(aluno, zerada(lixeira, L)),
bel(aluno, zerada(proibicao, P)),
bel(aluno, zerada(multa, Mu)),
bel(aluno, zerada(licenca, Li)),
No is L+ P + Mu + Li.
des(aluno, suspender_partida)if
bel(aluno,energia_ecometro(Ee),
Ee <30,
bel(aluno, numero_ferramenta(lixeira, L)),
L=0.
des(aluno, suspender_partida)if
bel(aluno,energia_ecometro(Ee),
Ee <30,
bel(aluno, numero_ferramenta(proibicao, P)),
P=0.
des(aluno, suspender_partida)if
bel(aluno,energia_ecometro(Ee),
Ee <30,
bel(aluno, numero_ferramenta(multa, Mu)),
Mu=0.
des(aluno, suspender_partida)if
bel(aluno,energia_ecometro(Ee),
Ee <30,
bel(aluno, numero_ferramenta(licenca, Li)),
Li=0.
des(aluno, não_jogar)if
bel(aluno, nao_tem_ferramenta_adequada).
des(aluno, aumentar_energia) if
161
bel(aluno, prefeito(lixeiras)).
des(aluno, aumentar_energia) if
bel(aluno, prefeito(proibicao)).
des(aluno, aumentar_energia) if
bel(aluno, prefeito(multa)).
des(aluno, aumentar_energia) if
bel(aluno, prefeito(licenca)).
bel(aluno, energia_ecometro_baixa) if
bel(tutor, reproduz(Planta)).
bel(aluno, energia_ecometro_baixa) if
bel(tutor, reproduz(Micro)).
162
• Relatórios técnicos:
• Comunicações e posters:
Giraffa, L.M.M; Viccari, R.M.; Self, J. Improving tutoring activities using Multi-
Agents system Architecture. Twenty-ninth SIGCSE Technical Symposium on
Computer Science Education, 29,1998. Proceedings... Atlanta: Georgia, 1998. (PhD
Students Contest)
Este trabalho foi enviado para o concurso de teses em andamento da ACM, onde foi
classificado entre os dez finalistas. No resultado final recebeu o quarto lugar. O texto
mostrava a proposta da arquitetura geral do sistema e a arquitetura do tutor modelado
na abordagem mentalística.
163
Giraffa, L.M.M; Móra, M.; Viccari, R.M. Towards a New a Computational Model to
build a Tutor. IX International Conference on Artificial Intelligence in Education –
AIED’99. Proceedings ... France, Le Mans, July 1999.
Este artigo apresenta a descrição geral de todo o trabalho de tese, a descrição da
implementação do kernel cognitivo, os avanços obtidos no ambiente de Móra et al. em
função do trabalho conjunto desenvolvido nas duas teses de doutorado com a
supervisão da mesma orientadora.
Giraffa, L.M.M; Viccari, R.M. Tutor behaviour in multi-agent ITS guided through
mental states activities. Workshop: Pedagogical Agents. In: ITS’98- Fourth
International Conference on Intelligent Tutoring Systems. Proceedings… San Antonio,
Texas, 1998.
Este artigo descreve em detalhes a arquitetura do tutor e como é tratado o modelo
do aluno.
Devido às suas contribuições no aspecto pedagógico ele foi selecionado para o
Workshop sobre estratégias de ensino, que foi realizado simultaneamente ao Workshop
de agentes.
Giraffa, L.M.M; Móra, M.; Viccari, R.M Modelling the MCOE Tutor using
Computational Model. In: Lectures Notes on Artificial Intelligence - SBIA’98.
Oliveira, F. (Ed.). Berlin: Springer Verlag, 1998.
Este artigo descreve em detalhes o kernel cognitivo. Apresenta a arquitetura do tutor
e a coreografia dos estados mentais utilizando o modelo computacional dos agentes
utilizando o formalismo de Móra et al.
Giraffa, L.M.M; Móra, M.; Viccari, R.M. Pedagogical game using ITS architecture.
Workshop Multi-Agents Architectures -IBERAMIA’98. Proceedings...Toledo: Spain,
1998.
Este artigo descreve a forma como a arquitetura do sistema e do tutor foram
utilizadas no protótipo. São exploradas os aspectos de construção de sistema
multiagentes.
Giraffa, L.M.M.; Viccari, R.M. The Use of Agents Techniques on Intelligent Tutoring
Systems. 18th International Conference of the Chilean Computer Science Society
(SCCC'98), 18, 1998. Proceedings... Antofagasta, Chile: IEEE, 1998.
Este artigo apresenta a revisão bibliográfica realizada sobre agentes pedagógicos e
a proposta por Viccari e Giraffa para uma taxinomia de agentes pedagógicos,
indicando as propriedades básicas de um agente pedagógico.
Giraffa, L.M.M; Móra, M.; Viccari, R.M. Modelling an interactive ITS using a MAS
approach: from design to pedagogical evaluation. 3rd International Conference on
165
Tutorial:
Artigo em revista:
•
Giraffa, L.M.M.; Móra, M.; Viccari, R. M. Towards a New Perspective for ITS:
Using a Mentalistic Approach to Model Cognitive Pedagogical Agents. Special Issue on
Intelligent Systems/Tools in Training and Life-Long Learning of the International
Journal of Continuing Engineering Education and Life-Long Learning, Osaka,
Japão, 1999.
• Este artigo foi selecionado para compor a edição especial da revista que tratou
apenas de sistemas que tragam abordagens novas e visões diferenciadas de
sistemas educacionais
166
Bibliografia
[CLA89] CLANCEY, W.J. Situated Cognition and Intelligent Tutoring Systems. In:
MAUER, H (Ed.). INTERNATIONAL CONFERENCE ON
COMPUTER-ASSISTED LEARNING,2.,1989, Dallas. Proceedings…
Berlin: Springer-Verlag, 1989.
[CLA90] CLANCEY, W.J ; SOLOWAY, E. Artificial Intelligence and Learning
Environments. Artificial Intelligence, Amsterdam, v.42, n.1,p.1-6, 1990.
[COH87] COHEN, P. R., LEVESQUE, H. J. Intention = Choice + Commitment. In:
NATIONAL CONFERENCE ON AI, 6.,1987. Proceedings… Berlin:
Springer-Verlag, 1987.
[COH89] COHEN, P. et al. Trial by Fire: Understanding the Design Requirements for
Agents In Complex Environment. AI Magazine, [S.l.], Fall, 1989.
[COL97] COLAZZO, L.; SILVESTRI, L. The pragmatics of the Tutor: A proposal of
modelling. In:: AIED: WORLD CONFERENCE ON ARTIFICIAL
INTELLIGENCE IN EDUCATION, 8.,1997. Proceedings... Kobe,
Japan: [s.n.],1997.
[CON92] CONTE,R; CASTELFRANCHI, C. Mins is not enough: precognitive bases
of social interactions. In: SYMPOSIUM ON SIMULATING
SOCIETIES, 1., 1992. Proceedings…. UK: Guilford, 1992.
[COO97] COOK J. An Empirically Based mentoring Agent for Supporting Music
Composition Learning. In: AIED: WORLD CONFERENCE ON
ARTIFICIAL INTELLIGENCE IN EDUCATION, 8.,1997.
Proceedings... Kobe, Japan: [s.n.], 1997.
[COR94] CORRÊA,M. A Arquitetura de Diálogos entre Agentes Cognitivos
Distribuídos. Rio de Janeiro: UFRJ, 1994.
[COR95] CORRÊA, M.; MENDES, S. A Computational Approach to Situation
Theory Based on Logic Programming to design Cognitive Agents. In:
BRASILIAN SYMPOSIUM ON ARTIFICIAL INTELLIGENCE, 12.,
1995, Campinas. Proceedings... Campinas: Springer-Verlag, 1995.
[COR98] CORRÊA, M.; VICCARI, R.M.; COELHO, H. Dynamics In Transition
Mental Activity. In: ICMAS –INTERNATIONAL CONFERENCE ON
MULTI-AGENT SYSTEMS, 1., 1998, Paris. Proceedings… Paris:
ICMAS,1998.
[COR98a] CORBETT, A.T. et al. A Formative Evaluation of the PACT Algebra II
Tutor: Support for Simple Hierraquical Reasoning. In: INTELLIGENT
TUTORING SYSTEMS-ITS’98, 4., 1998, San Antonio. Proceedings…
Berlin: Springer-Verlag, 1998. (Lecture Notes In Computer Science,
v.1452)
[COS92] COSTA, E. GASPAR, G. COELHO, H. A formal approach to ILES: a first
tentative. ADVANCED WORKSHOP ON STUDENT MODELLING,
1992. Proceedings...Montreal: Springer-Verlag, 1992.
[COS96] COSTA, E. B. Um modelo de Ambiente Interativo de Ensino-
Aprendizagem baseado numa Arquitetura Multi-Agentes. Campina
Grande: CPGEE/UFPA, 1996.
[COS97] COSTA, E.B.; PERKUSICH, A. A Multi-Agent Interactive Learning
Environment Model. In: AIED: WORLD CONFERENCE ON
169
[FUC94] FUCHS, D. et al. The nature of student interactions during peer tutoring
with and without peer training experience. American Educational
Research Journal, [S.l.], v.31, n.1, p.75-103, 1994.
[GAG96] GAGNÉ, D.; TRUDEL, A . A Highly Flexible Student Driven Architecture
for Computer Based Instruction. In: INTERNATIONAL CONFERENCE
ON INTELLIGENT TUTORING SYSTEMS-ITS, 3.,1996, Montreal.
Proceedings...Berlin: Springer-Verlag, 1996.
[GAL88] GALLIERS, J.R. A Theoretical Framework for Computer Models of
Co-operative Dialogue, Acknowledging Multi-Agent Conflict. UK:
Open University, 1988.
[GEN77] GENTNER, D.R. The FLOW tutor: a schema-based tutorial system. In:
INTERNATIONAL JOINT CONFERENCE ON ARTIFICIAL
INTELLIGENCE, 5., 1977. Proceedings… Los Altos: Morgan
Kaufmann, 1977.
[GIR93] GIRAFFA, L.M.M. Abracadabra- Ambiente de ensino-aprendizagem
computadorizado. SBIE - SIMPÓSIO BRASILEIRO DE
INFORMÁTICA NA EDUCAÇÃO, 4., 1993, Recife, PE. Anais
...Recife: UFPE,1993.
[GIR96] GIRAFFA,L.M.M;OLIVEIRA, J.; BORGES,L. Túnel do Tempo -
Ferramenta de auxílio ao ensino de História. In: CONGRESSO IBERO-
AMERICANO DE INFORMÁTICA NA EDUCAÇÃO,3.,1996,
Barranquilla. Anais... Barranquilla: RIBIE,1996.
[GIR97] GIRAFFA, L.M.M.; NUNES,M.A; VICCARI,R.M. Multi-Ecological:
proposta de Ambiente de Ensino Inteligente utilizando arquitetura de
Sistemas Multiagentes. In: ENIA: ENCONTRO NACIONAL DE
INTELIGÊNCIA ARTIFICIAL, 1. , 1997, Brasília. Anais...
Brasilia:UnB,1997.
[GIR97] GIRAFFA, L.M.M.; NUNES, M.A.; VICCARI, R.M. Multi-Ecological: an
Intelligent Learning Environment using Multi-Agent architecture. In:
MASTA:MULTI-AGENT SYSTEM: THEORY AND APPLICATIONS,
1.,1997, Coimbra. Proceedings... Coimbra: DE-Universidade de
Coimbra, 1997.
[GIR97] GIRAFFA, L.M.M.; NUNES, M.A; VICCARI, R.M. Multi-Ecologico: um
Ambiente de Ensino Inteligente para suporte ao ensino de Educação
Ambiental. In: SBIE: SIMPOSIO BRASILEIRO DE INFORMATICA
NA EDUCACAO,8.,1997, São José dos Campos, SP. Anais...São José
dos Campos: ITA,1997.
[GIR98a] GIRAFFA, L.M.M. Selecting teaching strategies using pedagogical
agents. Porto Alegre: CPGCC/UFRGS, 1998.
[GIR98b] GIRAFFA, L.M.M; VICCARI, R.M.; SELF, J. Improving tutoring activities
using a Multi-Agents system Architecture. In: SIGCSE TECHNICAL
SYMPOSIUM ON COMPUTER SCIENCE EDUCATION, 29.,1998,
Atlanta. Proceedings... Atlanta: Georgia, 1998.
[GIR98c] GIRAFFA, L.M.M; VICCARI, R.M.; SELF, J. Multi-Agent based
pedagogical games. In: ITS - INTERNATIONAL CONFERENCE ON
171