Taller Internacional de Software Educativo

TISE97

Trabajo:

Aplicações de Sistemas Multiagentes a Sistemas de Hipermídia Adaptativa - Uma Extensão ã Ferramenta Gutemberg

 MESTRADO EM INFORMÁTICA
INSTITUTO DE INFORMÁTICA
PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO GRANDE DO SUL
Av. Ipiranga, 6681
CEP 90619-900 - Porto Alegre- RS - Brasil

Autores :

Letícia Silva Garcia, Flávio Moreira de Oliveira - orientador
letsouza@music.pucrs.br, flávio@andros.inf.pucrs.br

 

RESUMO

Este trabalho situa-se na área interdisciplinar entre os Sistemas de Hiperdocumentos e a Inteligência Artificial Distribuída. Através da aplicação de conceitos de Inteligência Artificial Distribuída, tais como agentes, sociedades e protocolos de comunicação, têm-se como objetivo facilitar a busca de informações em hiperdocumentos instrucionais. Criando agentes de contexto e de usuário, pretende-se que a localização de informações úteis em hiperdocumentos se torne um processo mais fácil e mais dinâmico para o usuário.

Estendendo a ferramenta Gutemberg [GAR 94] pretende-se criar um Sistema de Hiperdocumentos que, apoiado em uma estrutura de Sistemas de Multiagentes propicie a criação, pelo autor, de contextos bem definidos e posterior utilização destes pelos leitores na busca de informações.

APLICAÇÕES DE SISTEMAS MULTIAGENTES A SISTEMAS DE HIPERMÍDIA ADAPTATIVA - UMA EXTENSÃO À FERRAMENTA GUTEMBERG

Será definido o contexto no qual este trabalho esta inserido através da exposição dos principais conceitos referentes a Sistemas de Hiperdocumentos e Sistemas Multiagentes. A seguir, será apresentada a descrição da solução proposta e os resultados esperados.

SISTEMAS DE HIPERDOCUMENTOS

Ao buscarmos as origens dos hiperdocumentos, remontaremos a Aristóteles (384 - 322 A.C.), filósofo grego e ao Talmud, um dos livros sagrados do Judaísmo. Ambos apresentam pesadas citações a outros documentos, próprios ou não, criando uma rede de referências tal que, caso o leitor deseje seguí-la exaustivamente, acaba descontextualizando-se. Os artigos de Aristóteles e o Talmud representam, então, o que pode se chamar de a primeira estrutura de hipertexto.

Segundo [NIE 90] a forma mais simples de se definir um hipertexto é contrapondo seu conceito com o conceito tradicional de documento. Nos documentos tradicionais as informações são apresentadas sob forma seqüencial criando, portanto, uma estrutura de acesso linear. Entende-se por estrutura de acesso linear o processo de consulta do documento segundo apenas um contexto. Este contexto é definido explicitamente pelo autor, caso a consulta seja efetuada de forma diferente da originalmente definida, pode ocorrer de perder-se de toda a contextualização, é esta estrutura de acesso que define como o documento será consultado e qual contextualização que será adquirida.

Em um documento apresentado sob a forma de hipertexto a informação deixa de ser acessada de forma unicamente seqüencial. Um mesmo documento pode ser contextualizado de diferentes formas, dependendo dos caminhos que o leitor percorrer. De acordo com as relações estabelecidas entre os textos, teremos as diferentes contextualizações, cada uma adequada à realidade de um leitor.

Define-se por hipertexto [NIE 90] a técnica de estruturação de documentos onde as informações são agrupadas em nodos e a ligação entre elas dá-se através do acionamento de palavras-chave, denominadas âncoras.

Para [BUS 93] um hipertexto é um texto não linear, com uma estrutura complexa, conhecida por hiperestrutura, que consiste em um grafo direcionado, onde os nodos são trechos de informação e os arcos são elos que ligam estes trechos entre si.

Um hipertexto consiste, portanto, no acesso não seqüencial ao texto de um documento através do interligamento (links) de porções de texto (nodos). A contextualização da informação é dada pelos caminhamentos efetuados através dos nodos. Um nodo, segundo Fichman, "é a unidade de informação utilizada em sistemas de hipertexto cujo conteúdo geralmente pode ser exibido em uma única tela de vídeo e que possui um nome ou título que o identifica. Os nodos, idealmente, devem ser preenchidos com um único conceito ou idéia, de forma constituírem-se unidades discretas semântica e sintaticamente" [FIC 91].

Uma ligação constitui o meio de conexão física entre os nodos. Logicamente, são os nodos que provêem a organização da informação em hiperdocumentos, definindo o relacionamento entre dois nodos existentes na base de dados e conferindo-lhes caráter não-linear. Segundo Fichman, são funções das ligações: "associar dois nodos cujas informações sucedem logicamente; associar uma referência feita em um documento à informação referenciada; conectar uma informação ou comentário ao texto ao qual se refere; clarear o conteúdo de mapas, gráficos ou tabelas, conectando-os a descrições e explicações e conectar uma entrada em um índice ao assunto relacionado" [FIC 91].

À referência de uma ligação dá-se o nome de âncora. Uma âncora é uma área de tela sensível ao "click" do mouse, ou palavra referenciada com caracteres especiais que, quando acionada, dá origem a um caminhamento, chegando a um nodo destino. Ao criarmos uma âncora, no momento da autoria do hiperdocumento, estamos descrevendo a ligação entre um nodo e outro. Ao acessarmos uma âncora, no momento da leitura do hiperdocumento, estamos percorrendo o caminhamento descrito anteriormente.

Entende-se Sistema de Hipertexto, segundo [BUS 93], como sendo o conjunto de ferramentas que possibilitam a criação, armazenamento e recuperação de redes de informações, fornecendo facilidades para que o usuário possa visitar os nodos de forma rápida e com um alto grau de liberdade.

Hipermídia é o termo utilizado quando, além de textos, temos no conteúdo dos nodos diferentes meios de apresentar a informação, tais como sons, imagens, vídeo, animações, entreoutros.

Uma desvantagem apresentada pela grande liberdade de contextualização provida pelos hipermeios é que esta pode gerar problemas relativos a desorientação, desestruturação do raciocínio e até mesmo descontextualização total do usuário.

Apesar deste ser um problema relativamente freqüente, pouco se encontrou a nível de formalização deste ou de alternativa de soluções. O uso de listas e "browser" [BER 93] [MAE 92], assim como o desenvolvimento de modelos de dados que tolham um pouco esta liberdade [CON 87] [BAL 94] [NEM 93] têm sido tentados, porém, soluções realmente satisfatórias ainda não foram encontradas.

A necessidade de manipulação de grande quantidade de informação, aliada a diferentes formas com que esta pode estar representada pode gerar no usuário uma sobrecarga cognitiva. Ao se deparar com tamanha diversidade de informações, o usuário tende a ficar descontextualizado.

Segundo [BUS 93] descontextualização é o problema gerado quando da perda do senso de localização e orientação do usuário dentro de um conjunto de documentos. Caracteriza-se, segundo [CON 87] pelo estado em que o usuário se encontra quando não sabe em que contexto do hiperdocumento se encontra e não têm como saber como ir para outros pontos desta.

A estes fatores, pode-se acrescentar, segundo [RIV 94] o fato do usuário não saber que processo originou seu estado atual (ou seja, não sabe de onde veio) e o fato de não saber quais são as alternativas de navegação a partir do ponto em que se encontra.

Para [CON 87] à medida que um hiperdocumento cresce e fica mais complexo, aumenta a probabilidade de que o usuário fique desorientado ou perdido.

A complexidade da estrutura também pode ser um fator que contribua significativamente para a desorientação do usuário, uma vez que, mesmo em um hiperdocumento que não seja grande, caso o grafo que representa as interconexões entre os nodos seja muito complexo, a tendência à desorientação também será grande.

Buscando uma alternativa a solução do problema exposto, chega-se a Hipermídia Adaptativa. A hipermídia adaptativa utiliza-se da informação a respeito de um determinado usuário, representada em um modelo, utilizado para adaptar as informações e ligações que devem ser apresentadas a estes. Tem por objetivo minimizar o problema da desorientação do usuário através de mecanismos de prevenção, uma vez que somente são apresentados ao usuário caminhos que sejam potencialmente de seu interesse. [BRU 97]

O uso de hipermídia adaptativa é aconselhável quando o hiperdocumento é razoavelmente grande e tende a ser utilizada por muitos usuários de perfis distintos. [BRU 97].

Uma das necessidades decorrentes do uso da hipermídia adaptativa é a modelagem do usuário. É necessário que se conheça o mais detalhadamente possível o perfil do usuário a fim de que as sugestões apresentadas sejam pertinentes. [ROS 97]

Ao modelar-se o usuário obtêm-se um conjunto de características relevantes a respeito deste. Estas características podem ser representadas por regras, com o intuito de se eliminar contradição e redundâncias, para que estas sejam o mais úteis possíveis no momento de se selecionar as informações que serão apresentadas. A modelagem do usuário é o centro nervoso da hipermídia adaptativa, com base nesta é que serão obtidos os resultados e estes serão quão melhores quanto mais precisa fora modelagem [ROS 97].

Obtêm-se o modelo do usuário através da interpretação das ações do usuário e da reconstrução do conhecimento que o teria levado a estas. A representação pode dar-se de duas formas: por primitivas que representem o conhecimento correto e incorreto do usuário ou selecionando apenas um destes para ser representado.

Segundo [FRA 93] "se o propósito de um Tutor Inteligente é proporcionar uma instrução adaptativa, então ele deve conhecer algo sobre o estado cognitivo do usuário, por exemplo, o que ele sabe, como ele pensa e, de preferência, como ele aprende." Podemos estender este conceito para a hipermídia adaptativa, afirmando que a instrução adaptativa também é um de seus propósitos.

Para suportar este aprender do modelo cognitivo do usuário, as técnicas de hipermídia adaptativa devem estar fortemente baseadas em métodos de modelagem que geram representações do estado cognitivo do usuário.

SISTEMA MULTIAGENTES

Segundo [CRA 95], Sistemas Multiagentes constituem uma ferramenta poderosa quando se tem o objetivo de analisar aspectos cognitivos de uma sociedade. Uma sociedade humana é composta de indivíduos se comunicando com os outros e direcionando suas ações de acordo com o resultado desta comunicação. O mesmo autor define um Sistema Multiagente como uma sociedade de agentes efetuando ações no sentido de estabelecer comunicação e reestruturando formas de atuação de acordo com o resultado desta comunicação.

Uma agente pode ser definido como uma entidade persistente dedicada a um propósito especifico [SMI 94 apud LUC 95], como um programa de computador que simula o relacionamento humano, mas o faz apenas quando outra pessoa interage com ele. [SEL 94 apud LUC 95].

Um agente normalmente não é capaz de perceber totalmente o meio, ele baseia suas ações no subconjunto do meio que é conhecido como a percepção atual do agente.

Um Agente racional, segundo [LUC 95], em uma noção ideal, é aquele que tem seus objetivos, escolhe suas ações em função de seus objetivos, relaciona ações a objetivos e é capaz de lidar com teorias inconsistentes. Agentes racionais, segundo [LUC 95], em uma noção prática, possuem uma racionalidade limitada em termos de memória e tempo de processamento. Por isso não esgota as possibilidades de efeito de uma ação, o que, a determinado momento, pode gerar atitudes inconseqüentes. Se o raciocínio fosse ilimitado, o agente teria onisciência lógica, ou seja, o agente teria acesso a todas as conseqüências de suas teorias. Em função dos limites, podem ser geradas contradições, sendo que aí pode entrar em atuação alguma política de revisão de crenças do agente. Política de revisão de crenças são critérios que decidem em qual das crenças tem que se deixar de acreditar com o objetivo de eliminar uma contradição.

[SHO 93 apud LUC 95], define agente como sendo uma entidade que possui um estado mental, baseado em objetivos, crenças, compromissos, capacidades, intenções (que correspondem aos objetivos associados aos compromissos). Já [WOO 94 apud LUC 95] o faz como aquele que tem o poder de, através de suas ações, produzir um efeito.

Agentes, de acordo com suas capacidades e a abrangência de suas ações, podem ser classificados como autônomos e não autônomos. Agente autônomo, segundo [LUC 95], é aquele que tem suas ações baseadas em motivações a partir dos quais gera-se internamente objetivos, possuem a capacidade de selecionar, dentre os objetivos gerados externamente, quais lhe convêm ou não. Agente não autônomo é aquele que tem apenas objetivos, não possuindo motivações. Não têm capacidade de discernir ou selecionar objetivos externos de acordo com seus objetivos internos. Outro fator importante é que agentes autônomos são permanentes e agentes não autônomos são transientes, ou seja, somente existem enquanto seus objetivos existem.

Um agente, segundo [CRA 95], efetua comunicação com outros agentes, principalmente através dos seguintes atos comunicativos:

Informar: Agentes têm o compromisso de informar aos outros o que conhecem. Ao efetuar esta informação, o agente assume que seu conhecimento é único, e, por isso, deve ser público. Esta ação evita a duplicação de conhecimento na sociedade de agentes.

Requisitar: Agentes efetuam requisições de informações e serviços a outros agentes. estas podem ser públicas ou dirigidas a um determinado agente em específico.

Comandar: Agentes efetuam comandos a outros agentes para que estes realizem tarefas nas quais são especialistas. Um agente tem o papel social de executar tarefas nas quais é especialista, ou seja, não tem o poder de negar comandos.

Afirmar e Negar: Agentes confirmam ou negam, de acordo com seu conhecimento armazenado e sua estrutura de objetivos proposições efetuadas por outros agentes.

Buscando ainda a solução do problema da desorientação do usuário em hiperdocumentos, percebemos que uma das possíveis formas de se implementar a Hipermídia Adaptativa, apresentada anteriormente como a solução mais viável, é o uso de Sistemas Multiagentes.

ARQUITETURA PROPOSTA

A Ferramenta Gutemberg [GAR 94] tem sua arquitetura originalmente definida em dois módulos, o de Autoria e o de Consulta. No Módulo de Autoria, na versão original, o usuário-autor escreve suas Aplicações Educacionais - Hiperdocumentos utilizando recursos textuais, de som e imagens. O Módulo de Consulta, para o usuário-leitor funciona como um visualizador dos hiperdocumentos criados utilizando o Módulo de Autoria.

A linguagem de descrição de hiperdocumentos utilizada pelo Gutemberg é própria, sendo que aplicações geradas pelo Módulo de Autoria somente podem ser visualizadas no Módulo de Consulta.

Na extensão proposta, associa-se aos dois módulos uma Arquitetura Multiagente. No Módulo de Consulta, cada usuário-leitor, têm como seu "guia" um agente de usuário (anjo da guarda) e, para cada contexto criado dentro de um hiperdocumentos por um usuário-autor está associado um agente de contexto (anjo porteiro).

Por contexto, define-se qualquer conjunto fechado de nodos, enumerados pelo autor. Cada nodo pode pertencer, em um determinado momento, a apenas um contexto, desta forma, a interseção entre contextos é vazia.

Desta forma, buscou-se definir a arquitetura multiagente baseada nos conceitos apresentados por [DEM 95]. Demazeau diz que a arquitetura de um Sistema Multiagente é definida pelo conjunto formado por agentes, ambiente, interações e organização. Desta forma, a arquitetura proposta pode ser observada na figura a seguir:

Baseando-se no conceito de Sistema Multiagente, o processo de realização de tarefas está ligado a determinado contexto em que o usuário se encontra.

A tarefa a ser realizada pela sociedade é fornecer informações ao usuário visando minimizar o problema da desorientação deste ao navegar no hiperdocumento.

Com o objetivo de distribuir esta tarefa e prestar uma assistência mais efetiva ao usuário em cada um dos contextos nos quais ele pode se encontrar, foram definidos dois tipos de agentes: Agente Assistente de Contexto e Agente Assistente de Usuário. A arquitetura dos agentes é definida de acordo com [DEM 95]

AGENTE ASSISTENTE DO USUÁRIO - ANJO DA GUARDA

O Agente Assistente do Usuário é responsável pelo diagnóstico e armazenamento das características do usuário.

conhecimento: Nome do usuário, contexto atual e a lista de interesses

nome do usuário: identificação única. Cada usuário possui o seu agente.

contexto atual: nome do contexto em que o usuário se encontra neste momento. Fornecido pelo agente de contexto quando da entrada do usuário em um determinado contexto.

lista de interesses: hiperdocumento, contexto, coeficiente de interesse

onde: hiperdocumento: localização do hiperdocumento referida.

contexto: identificação do contexto no qual o nodo está inserido.

coeficiente de interesse: valor a ser determinado pelo tempo que o usuário dedicou aquele nodo

objetivo: Determinar se o conteúdo do nodo atual é de interesse do usuário

comunicação: Se comunica com os agentes de contexto através de primitivas do tipo:

interesse (anjo_da_guarda_Un, anjo_porteiro_Cn, palavra-chave, contexto, características do usuário),

estou_aqui (anjo_da_guarda_Un, anjo_porteiro_Cn).

conhecimento social: percebe o agente de contexto que está disponível no contexto atual em quer o usuário se encontra e se comunica com este.

processos:

Ordenação da lista de interesses por ordem alfabética e de convergência.

Geração de perfis de usuários através de análise de lista de interesses

AGENTE ASSISTENTE DE CONTEXTO - ANJO PORTEIRO

O Agente Assistente de contexto é responsável pelas informações referentes às características e ao conteúdo de uma determinada região do hiperdocumento. Um contexto é formado por um conjunto finito de nodos, definido pelo autor.

conhecimento: Conteúdo, palavras-chave, contextos afins, tempo médio de leitura deste contexto, perfil de visitantes

objetivo: fornecer informações a respeito do contexto pelo qual é responsável, baseando-se no conteúdo deste e nas informações de usuários que já o visitaram.

comunicação: Se comunica com:

1. os agentes de usuário, através de primitivas do tipo:

eu_tenho (anjo_porteiro_Cn, anjo_da_guarda_Un, palavra-chave, contexto), sei_quem_tem (anjo_porteiro_Cn, anjo_da_guarda_Un, palavra-chave, contexto, contexto-afim),

não_achei (anjo_porteiro_Cn, anjo_da_guarda_Un, palavra_chave, contexto),

OK(anjo_porteiro_Cn, anjo_da_guarda_Un).

2. os agentes de outros contexto, através de primitivas do tipo:

eu_sou (anjo_porteiro_Cn, anjo_porteiro_Cn+1).

muito_prazer (anjo_porteiro_Cn+1, anjo_porteiro_Cn).

você_tem? (anjo_porteiro_Cn, anjo_porteiro_Cn+1, palavra_chave, contexto),

eu_tenho (anjo_porteiro_Cn+1, anjo_porteiro_Cn, palavra_chave, contexto),

eu_não_tenho (anjo_porteiro_Cn+1, anjo_porteiro_Cn, palavra_chave, contexto),

conhecimento social: percebe o agente de usuário que está em seu domínio e se comunica com este. Percebe também agentes de domínios afins e se comunica com estes.

processos: compara a solicitação recebida pelo agente do usuário com sua base de conhecimento, verificando se a expectativa do usuário pode ser atendida por sua região.

A caracterização do ambiente da sociedade mutiagente dá-se através da definição, no momento da autoria, de um agente para cada contexto definido pelo autor. Quando de leitura do hiperdocumento, será criado um agente de usuário para cada usuário. Neste momento não está sendo previsto que mais de um usuário atue no hiperdocumento em um determinado momento, desta forma. coexistirão um agente de usuário e um agente para cada contexto.

De acordo com [DEM 95] a interação é representada através do conjunto formado pela camada de comunicação e pela representação do conhecimento do agente. No contexto deste trabalho a interação da sociedade dar-se-á através das primitivas de comunicação definidas na arquitetura dos agentes e da troca de conhecimentos entre estes.

Quando do início da sociedade todos os agentes de contexto se apresentam aos seus vizinhos através de primitivas eu_sou. Estabelecida a organização da sociedade de agentes de contexto, esta fica a espera de uma solicitação do tipo interesse, vinda de um agente de usuário. Quando recebida, é identificado o usuário a qual pertence e disparados os processos com o objetivo de responder a solicitação do agente de usuário.

Tomando por base a arquitetura apresentada anteriormente, descreveremos a seguir um exemplo do processo de organização da sociedade e de interação entre os agentes interação entre os agentes.

ORGANIZAÇÃO:

eu_sou (anjo_porteiro_C1, anjo_porteiro_C2)

muito_prazer (anjo_porteiro_C2, anjo_porteiro_C1)

eu_sou (anjo_porteiro_C2, anjo_porteiro_C3)

estou_aqui (anjo_da_guarda_U1, anjo_porteiro_C1)

OK (anjo_porteiro_C1, anjo_da_guarda_U1)

Neste momento estabelece-se a organização da sociedade, que fica à espera de uma solicitação de U1.

INTERAÇÃO:

Interesse (anjo_da_guarda_U1, anjo_porteiro_C1, abacaxi, salada de frutas, visual)

eu_tenho (anjo_porteiro_C1, anjo_da_guarda_U1,abacaxi, salada de frutas)

interesse (anjo_da_guarda_U1, anjo_porteiro_C1, abacaxi, frutas no pé, visual)

você_tem (anjo_porteiro_C1, anjo_porteiro_C2, abacaxi, frutas no pé)

eu_tenho (anjo_porteiro_C2, anjo_porteiro_C1, abacaxi, frutas no pé),

sei_quem_tem (anjo_porteiro_C1, anjo_da_guarda_U1, abacaxi, frutas no pé, C2)

interesse (anjo_da_guarda_U1, anjo_porteiro_C1, banana, fruta no pé, visual)

você_tem (anjo_porteiro_C1, anjo_porteiro_C2, banana, frutas no pé)

eu_não_tenho (anjo_porteiro_C2, anjo_porteiro_C1, banana, frutas no pé)

não_achei (anjo_porteiro_C1, anjo_da_guarda_U1, banana, fruta no pé)

CONTRIBUIÇÕES ESPERADAS

No uso de Sistemas de Hiperdocumentos é comum que se tenham grandes hiperdocumentos, onde a informação está distribuída em diferentes contextos, normalmente bastante diversos. Nestes casos, o risco de descontextualização do usuário é bastante grande.

Ao se pensar em um sistema de apoio a navegação em hiperdocumentos, percebe-se que se faz necessário, para que isto seja viável, que se tenha informações a respeito dos diferentes contextos e dos diferentes usuários. Neste momento surgem duas dicotomias a serem analisadas:

Neste estudo, estamos abordando estas questões da seguinte forma:

Com o uso de sistemas multiagentes, pretendemos separar a informação a respeito do usuário da informação contida no hiperdocumento, possibilitando que cada usuário possua o seu agente de usuário, contendo conhecimentos e adaptando-se às características individuais de cada um destes. Pretendemos, ainda, separar os diferentes contextos do hiperdocumento, atribuindo, no momento da autoria, a cada um destes um agente de contexto, com conhecimentos específicos a respeito das características deste contexto. Com isto, visamos tornar os processos de ajuda mais eficientes, descentralizando-os e adaptando-os a cada contexto e a cada usuário do hiperdocumento. Teremos um método personalizado e certamente mais eficiente no auxílio ao usuário que os atuais.

ESTÁGIO ATUAL E TRABALHOS FUTUROS

A arquitetura proposta está sendo implementada como uma extensão ao sistema GUTEMBERG [GAR 94], uma ferramenta de autoria para hipermeios educacionais. O protótipo será testado através de um estudo de caso, aplicado a um hipermeio (já em fase de autoria) na área de Química para o 2o. Grau. Este experimento permitirá avaliar as funcionalidades da arquitetura, do ponto de vista do autor e dos leitores.

BIBLIOGRAFIA

[BRU 97] BRUSILOVSKY, Peter. Adaptative Hypermedia: an attempt to analyse and generalyse. Obtido em http://www.education.uts.edu.au/projects/ah/Brusilovsky.html, 26/02/97.

[BUS 93] BUSTAMANTE, Marco Eduardo Molina. Uma interface interativa e navigacional para hiperdocumentos. Dissertação de mestrado. Brasil. CPGCC-UFRGS. 1996.

[CON 87] CONKLIN, Jeff. Hypertext: An Introduction and Survey. Computer. P. 17. Estado Unidos. September 1987.

[CRA 95] CRAIG, Ian D. A Perspective on Multi-Agent Systems. Firs Bulgarian Summerschool on Cognitive Science. Bulgária. February,1995.

[DEM 95] DEMAZEAU, Yves, KONING, Jean-Luc. Collaborative Learning Using DAI. Interaction Protocols in a Telecomunication Setting. França. June, 1995.

[DEM 95i] DEMAZEAU, Yves. From Interactions to Colletive Behaviour in Agent-Based Systems. França. April,1995.

[FIC 91] FICHMAN, Vânia Regina. Hipertexto: uma Introdução. Revista de Informática Teórica e Aplicada. Vol. 1 Nr. 4 - p. 87. Brasil. 1991.

[FRA 93] FRANCO, Susana Maria Lopes. Representação e Diagnóstico de Falsas Concepções em um Tutor Inteligente: Dissertação de Mestrado. Porto Alegre. CPGCC/UFRGS. 1993.

[GAR 94] GARCIA, Luis Fernando Fortes. SILVA, Leticia Souza da. Gutemberg - Ferramenta de Hipermeios para Aplicações Educacionais. Vº Simposio Brasileiro de Informática Educativa .Porto Alegre. 1994

[LUC 95] LUCK, Michael. D’INVERNO, Mark. A Formal Framework for Agency and Autonomy. ICMAS-95. Inglaterra. 1995

[NEM 93] NEMETZ, Fábio. LIMA, José Valdeni de. Modelo de Dados para Hipermídia: Trabalho Individual. CPGCC/UFRGS. Brasil. 1993.

[NEM 95] NEMETZ, Fábio. HTM: Modelagem e projeto de Aplicações Hipermídia: Dissertação de Mestrado. CPGCC / UFRGS. Brasil. 1995.

[NIE 90] NIELSEN, Theodor H. Managing Immense Storage. Byte. P.225. Estados Unidos. Jan 1988.

[RIV 94] RIVA, Alberto. RAMONI, Marco. LispWeb: A specialized HTTP server for distributed AI applications. Computer Networks and ISDN Systems 28. Estados Unidos. 1994

[ROS 97] ROSIS, Fiorela de. CAROLIS, Berardina de. PIZZUTILO, Sebastiano. User Tailored Hypermedia Explanations. Obtido em http://www.education.uts.edu.au/projects/ah/deRosis.html em 26/02/97.