A aplicação
da informática na educação tem mostrado importantes
resultados, sendo muito importante no processo de ensino-aprendizagem,
favorecendo alunos e professores. O software educacional oferece um ótimo
recurso como ambiente de aprendizagem. Este traba-lho apresenta um Sistema
Tutor Inteligente para auxiliar à aprendizagem de "Conceitos de
Orientação à Objetos", construído utilizando-se
agentes inteligentes e arquitetura multi-agente.
The application of the Informatics in education has shown important results, in the teaching-learning process, helping students and teachers. The educational software shows a great resource how a teaching-learning environment. This work proposes an Intelligent Tutoring System to help in the learning of object oriented concepts, builded using intelligent agents and multi-agent architecture.
1. Introdução
A utilização
do computador na educação vem demonstrando ser um grande
auxílio no processo de ensino-aprendizagem. Uma das formas desta
utilização é através de software educacional,
um software para auxiliar um estudante no aprendizado de um determinado
conteúdo.
Um software
educacional possui o objetivo de auxiliar o professor no processo de ensino-
aprendizagem [Azevedo97], fazendo com que o mesmo tenha a seu dispor valiosos
recursos para ajudá-lo com seus alunos.
Existem diversos
tipos de software educacional, sendo que um dos mais importantes é
o sistema tutor inteligente. Um sistema tutor inteligente é um software
capaz de tutorar uma pessoa em um determinado domínio. Um sistema
tutor inteligente sabe o que ensinar, como ensinar, e aprende informações
relevantes sobre o aprendiz que está sendo tutorado, proporcionando
um aprendizado individualizado.
Os sistemas
tutores inteligentes utilizam técnicas de inteligência artificial
e teorias pedagógicas para conduzir o estudante, proporcionando
um ótimo ambiente de aprendizagem.
A utilização
de agentes inteligentes para construção de sistemas tutores
inteligentes possibilita o desenvolvimento de diferentes raciocínios,
e a integração de várias ações para
alcançar um determinado objetivo. Além disso, a utilização
de agentes inteligentes é uma boa opção para reduzir
o custo dos sistemas tutores inteligentes, devido à reusabilidade
dos softwares baseados em agentes. Com a utilização de agentes
inteligentes, os tutores podem se tornar modulares, e podem permitir evolução.
Com a grande
disseminação do uso da World Wide Web, e com o seu poder
de alcançar pessoas nos mais diversos lugares do mundo, a WWW tornou-se
um grande recurso para distribuição de informação,
e para vários outros fins. Dentro destas perspectivas, pode-se utilizar
a WWW com fins educacionais [Costa96] [Schneider94] [Schneider95], de diversas
formas, sendo uma delas a utilização de softwares educacionais.
2. Os Sistemas Tutores Inteligentes (STI)
Os sistemas
tutores inteligentes são um ótimo recurso para auxiliar um
professor em uma disciplina, para ajudar os alunos em seu aprendizado,
e para realizar treinamentos em uma determinada área.
Um tutor inteligente
é composto de quatro modelos: Interface, Domínio, Aprendiz
e Tutoramento. Através da interação desses modelos,
o STI é capaz de fazer julgamentos sobre o que o aprendiz sabe,
e como ele está progredindo.
O modelo da
Interface refere-se à interface utilizada pelo STI para efetuar
a comunicação com o aprendiz. O modelo do Domínio
representa o conhecimento que o STI possui sobre o assunto que ele está
tutorando. O modelo do Aprendiz identifica as concepções
e o desempenho do aprendiz. O modelo do Tutoramento exerce o controle sobre
a seleção e a seqüência de informação
que é passada ao aprendiz, e determina quando o aprendiz precisa
de ajuda e que tipo de ajuda é necessária. O STI identifica
as características do estudante e adapta o tutoramento de acordo
com elas.
Os sistemas
tutores inteligentes representam uma ótima ferramenta como ambientes
de aprendizagem. Porém, estes sistemas são pouco utilizados
devido ao seu alto custo financeiro e ao elevado tempo de desenvolvimento.
Muitas propostas têm sido feitas para reduzir estes fatores, e têm
convergido para um ponto em comum - permitir o reuso do software. Isto
pode ser obtido, se os sistemas tutores inteligentes forem construídos
de forma modular, permitindo evoluções.
Os agentes inteligentes
[Hendler96] têm sido utilizados para construir sistemas tutores inteligentes,
pois possibilitam o desenvolvimento de diferentes raciocínios, e
a integração de várias ações para alcançar
um determinado objetivo [Marietto97]. Além disso, a utilização
de agentes inteligentes é uma boa opção para reduzir
o custo destes sistemas, pois eles favorecem a modularização
e a evolução. Uma proposta para utilização
de agentes inteligentes em sistemas tutores inteligentes foi descrita por
Brant A. Cheikes [Cheikes95].
A abordagem
de agentes inteligentes pode ser observada em muitos trabalhos, como em:
"SEI - Sistema de Ensino Inteligente" - [Tedesco97], "Multi-Ecológico:
Ambiente de Ensino Inteligente para suporte ao ensino de Educação
Ambiental" - [Giraffa97], e "Um Sistema Tutor Inteligente Multi-Agente
em Harmonia Musical" - [Teixeira97].
Os agentes inteligentes
também estão sendo utilizados para outros fins, relacionados
à informática educativa, tal como facilitar a comunicação
entre alunos, professores e monitores ou facilitar o acesso a material
bibliográfico disponível na Web [Pessoa96].
3. O Tutor
Neste trabalho,
é apresentado um sistema tutor inteligente baseado em uma arquitetura
multi-agente, isto é, há uma sociedade de agentes inteligentes,
onde cada agente possui as suas tarefas, e se comunica com os demais agentes.
Esse tutor propõe-se
a trabalhar sozinho em um único computador, ou através da
WWW. Na primeira abordagem, o tutor estará localizado em um único
computador, podendo ser utilizado por vários usuários, alternadamente.
Na segunda abordagem, o tutor poderá ser utilizado por vários
usuários simultaneamente, onde cada usuário estará
em um computador interligado à WWW. Neste caso, o tutor possuirá
uma parte que estará sendo executada no computador do usuário,
e uma parte que estará sendo executada em um servidor WWW, ou então,
sendo executada de forma distribuída através da WWW.
O tutor possui uma arquitetura multi-agente, composta de seis agentes
inteligentes. Esses agentes são:
a.Aprendiz: agente que tem a função de determinar o perfil
do aprendiz que está utilizando o sistema tutor inteligente.
b.Companheiro: agente que atua junto com o usuário, ajudando-o
no processo de aprendizagem, fornecendo dicas para orientar o mesmo.
c.Especialista: agente que manipula as informações sobre
o domínio para o qual foi construído o sistema tutor inteligente.
d.Tutor: agente que determina qual conteúdo será abordado,
como será esse processo, e quando ele será realizado. Também
é responsável pela avaliação do desempenho
do aprendiz (usuário).
e.Apresentador: agente responsável pela interface com o usuário.
f.Gerenciador: agente que tem a função de gerenciar a
troca de informações entre os agentes.
No caso do tutor estar localizado em um único computador, todos
os agentes estarão localizados neste computador. No caso do tutor
ser utilizado através da WWW, o agente apresentador estará
localizado no computador do usuário, e os outros agentes estarão
localizados em um servidor WWW, ou em vários computadores distribuídos
pela WWW.
Os agentes se
comunicam através de troca de mensagens KQML (Knowledge Query and
Manipulation Language) [Finin94]. Todas as mensagens passam pelo agente
gerenciador, que tem a função de gerenciar a troca das mensagens
entre os agentes. Todos os agentes informam, ao gerenciador, quais são
os serviços oferecidos por cada um deles, e também quais
os interesses de cada um. Quando um agente envia uma mensagem ao gerenciador,
este analisa a mensagem, e verifica para qual dos agentes do sistema a
mensagem deverá ser enviada.
O tutor trata
vários "níveis de usuários", onde cada nível
representa o conhecimento que o usuário possui sobre o assunto tutorado.
Para utilizar o tutor, o aprendiz deve se identificar através de
um "nome de usuário". O tutor identifica o usuário e descobre
em qual nível ele está. O tutor pode, gradualmente, passar
o usuário de um nível para outro, de acordo com o seu desempenho.
O método
pedagógico adotado por este sistema tutor inteligente, implementado
no agente "tutor", é o construtivismo proposto por Piaget. O construtivismo
propõe que o aluno participe ativamente do próprio aprendizado,
isto é, o construtivismo enfatiza que uma pessoa aprende melhor
quando toma parte de forma direta na construção do conhecimento
que adquire. O construtivismo enfatiza a importância do erro não
como um tropeço, mas como um trampolim na rota da aprendizagem [Grossi95].
De acordo com
Piaget, o conhecimento, em qualquer nível, é gerado através
de uma interação radical do sujeito com seu meio, a partir
de estruturas previamente existentes no sujeito. Assim sendo, a aquisição
de conhecimentos depende tanto de certas estruturas cognitivas inerentes
ao próprio sujeito - S, como de sua relação com o
objeto - O, não priorizando ou prescindindo de nenhuma delas. Piaget,
afirma que todo e qualquer desenvolvimento cognitivo só será
efetivo se for baseado em uma interação muito forte entre
o sujeito e o objeto. É imprescindível que se compreenda
que é necessário uma atitude do objeto que perturbe as estruturas
mentais do sujeito, para forçá-lo a se acomodar à
nova situação, criando uma futura assimilação
do objeto, dando origem às sucessivas adaptações do
sujeito ao meio, com o constante desenvolvimento de seu cognitivismo [Ruthschillng98].
Para utilizar
a teoria construtivista no sistema tutor inteligente proposto, é
apresentado ao aprendiz um ambiente no qual o mesmo possa "construir" o
seu conhecimento. Esse ambiente utiliza a metáfora da sala de aula,
isto é, o aprendiz está em uma sala de aula, onde realiza
diversas atividades como: identificação dos objetos da sala
de aula, agrupamento dos objetos similares, identificação
das características comuns à vários objetos, etc.
Neste ambiente, o aprendiz pode assimilar os conceitos da orientação
à objetos.
Segundo Gomes
[Gomes94], um ambiente de aprendizagem construtivista deve possuir as seguintes
características: permitir que o aprendiz "controle" a aplicação;
ser flexível para se adaptar à diversos tipos de aprendizes;
as interfaces devem motivar o uso da aplicação; e deve haver
avaliação do desempenho do aprendiz.
O tema "Conceitos
de Orientação à Objetos" foi escolhido para ser o
domínio do tutor, devido à sua grande importância em
cursos de graduação na área de informática.
3.1 Implementação
Para implementar
os agentes inteligentes, foram pesquisadas várias linguagens e ferramentas,
através de diversos critérios, tendo sido escolhida a linguagem
JAVA em conjunto com o JESS.
A linguagem
JAVA foi escolhida por possuir: orientação à objetos,
multithreading, portabilidade, e suporte à rede.
O JESS é
um interpretador de sistemas de produção escrito em Java
por Ernest Friedman-Hill, do Sandia National Laboratories.
3.1 Um Exemplo de Interação entre os Agentes
Os agentes do sistema tutor inteligente interagem entre si, trocando mensagens, cooperando entre si, para que o tutor possa auxiliar o aprendiz (usuário).
A arquitetura
usada pelo sistema tutor inteligente, apresentado aqui, é semelhante
à do sistema descrito por Tedesco [Tedesco97], diferenciando-se
por possuir o agente "companheiro", e por possuir um único agente
para realizar a interface com o usuário - o agente "apresentador".
O agente "companheiro"
possui a função de atuar junto com o aprendiz (usuário)
no processo de aprendizagem. O seu objetivo é tentar oferecer um
ambiente de aprendizado em grupo, atuando como um companheiro de estudo
do aprendiz.
5. Considerações Finais
O trabalho aqui
relatado procura mostrar que a utilização de sistemas tutores
inteligentes na educação é uma ferramenta poderosa
que pode ser utilizada por professores e alunos.
Um sistema tutor
inteligente usado na WWW, oferece como grande vantagem a possibilidade
dele poder ser utilizado por diversos usuários, em diversos lugares.
O custo financeiro
e o tempo para desenvolvimento de sistemas tutores inteligentes são
grandes, o que torna esses sistemas pouco utilizados. Uma das maneiras
possíveis de diminuir o custo deles é através da utilização
de agentes inteligentes, o que os torna modulares e extensíveis,
favorecendo o reuso do software, diminuindo o seu custo e o tempo de desenvolvimento.
A arquitetura
utilizada neste sistema tutor inteligente pode ser utilizada para construir
outros tutores nas mais diversas áreas. Esta arquitetura, em conjunto
com a teoria construtivista de aprendizado, utilizando a metáfora
da sala de aula (ou outra mais adequada de acordo com o domínio
abordado), oferece um ambiente valioso para auxiliar em processos de aprendizagem.
Ainda há
uma grande dificuldade, para realizar escolhas sobre metodologias e ambientes
para desenvolvimento de sistemas multi-agentes, pois essa tecnologia ainda
é muito recente.
6. Referências bibliográficas
[Azevedo97] Azevedo, B. F. T., "Tópicos em Construção
de Software Educacional", Estudo Dirigido, Mestrado em Informática,
Centro Tecnológico, Universidade Federal do Espírito Santo,
1997.
[Costa96] Costa, R. M. E. M. da, Xexéo, G. B., "A Internet nas
escolas: uma proposta de ação", Anais do VII SBIE, Belo Horizonte,
p.105-118, 1996.
[Cheikes95] Cheikes, B. A., "GIA: An Agent Based Architecture for Intelligent
Tutoring Systems", Proceedings of the CIKM Workshop on Intelligent Information
Agents, 1995.
[Finin94] Finin, T., Fritzson, R., McKay, D., McEntire, R., "KQML as
na Agent Communication Language", Proceedings of the Third International
Conference on Information and Knowledge Management, 1994.
[Giraffa97] Giraffa, L. M. M., Nunes, M. A. S. N., Viccari, R. M.,
"Multi-Ecológico: Ambiente de Ensino Inteligente para suporte ao
ensino de Educação Ambiental", VIII Simpósio Brasileiro
de Informática na Educação, p.181-199, 1997.
[Gomes94] Gomes, M. C. A., Duarte, M. J., "Os modelos educativos e
a concepção de programas educativos", II Congresso Ibero-Americano
de Informática na Educação, 1994.
[Grossi95] Grossi, E. P. et al., "O tira-teima do construtivismo: 50
grandes e pequenas dúvidas esclarecidas", Revista Nova Escola, p.8-13,
1995.
[Hendler96] Hendler, J. A., "Intelligent Agents – Where AI meets Information
Technology", IEEE Expert, 1996.
[Marietto97] Marietto, M. G. B., Omar N., Fernandes, C. T., "Tendências
nas Áreas de Sistemas de Tutoria Inteligente e Modelagem do Aprendiz",
VIII Simpósio Brasileiro de Informática na Educação,
1997.
[Pessoa96] Pessoa, J. M., Tavares, O. L., Menezes, C. S., "QSabe –
Trocando Experiências sobre Informática Educativa em uma Rede
de Educadores", VIII Simpósio Brasileiro de Informática na
Educação, p.563-578, 1996.
[Ruthschillng98] Ruthschillng, E. A., Ferreira, J., Nitzke, J. A.,
Zeni, L. C., Ferreira, L. F., Carneiro, M. L. F., Becker, M. A., Lima,
M. F. W. P., Santos, S. C., "A evolução dos ambientes de
aprendizagem construtivistas", Universidade Federal do Rio Grande do Sul,
1998. http://penta.ufrgs.br/~luis/Ativ1/Construt.html
[Schneider94] Schneider, D., "Teaching & Learning with Internet
Tools", 1994. http://tecfa.unige.ch/edu-ws94/contrib/schneider/schneide.fm.html
[Schneider95] Schneider, D., Block K., "The World Wide Web in Education",
1995. http://tecfa.unige.ch/tecfa/tecfa-research/CMC/andrea95/andrea.txt.
[Tedesco97] Tedesco, P., Barros, F., Souza, F., "SEI - Sistema de Ensino
Inteligente", VIII Simpósio Brasileiro de Informática na
Educação, p.49-59, 1997.
[Teixeira97] Teixeira, L. M., Costa, E. B., "Um Sistema Tutor Inteligente
Multi-Agente em Harmonia Musical", VIII Simpósio Brasileiro de Informática
na Educação, p.219-236, 1997.