Um Sistema Tutor Inteligente para Suporte à Aprendizagem de "Conceitos de Orientação à Objetos"
 Breno F. T. Azevedo
Orivaldo L. Tavares
Universidade Federal do Espírito Santo
Centro Tecnológico - Mestrado em Informática
Av. Fernando Ferrari, s/n - Campus de Goiabeiras
CEP 29060-900 - Vitória - ES - Brasil
 
Resumo

          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.
 
 

Abstract

          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).



Retornar