Upload
dothien
View
219
Download
0
Embed Size (px)
Citation preview
UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR
CURSO DE CIÊNCIA DA COMPUTAÇÃO
AMBIENTES INTELIGENTES DE APRENDIZAGEM: UMA PROPOSTA BASEADA EM HIPERMÍDIA ADAPTATIVA E REDES BAYESIANAS
Área de Inteligência Artificial
por
Tanara Nunes
Raimundo Celeste Ghizoni Teive, Dr. Orientador
São José (SC), dezembro de 2007
UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR
CURSO DE CIÊNCIA DA COMPUTAÇÃO
AMBIENTES INTELIGENTES DE APRENDIZAGEM: UMA PROPOSTA BASEADA EM HIPERMÍDIA ADAPTATIVA E REDES BAYESIANAS
Área de Inteligência Artificial
por
Tanara Nunes Relatório apresentado à Banca Examinadora do Trabalho de Conclusão do Curso de Ciência da Computação para análise e aprovação. Orientador: Raimundo Celeste Ghizoni Teive, Dr.
São José (SC), dezembro de 2007
DEDICATÓRIA
Aos meus pais, Luiz Meireles Soares Nunes e Salete Nunes,
pelo apoio incondicional, amor, carinho e dedicação.
A todos os meus amigos e colegas, por estarem ao meu lado nesta jornada.
AGRADECIMENTOS
Aos meus pais, Luiz Meireles Soares Nunes e Salete Nunes, que sempre acreditaram na
minha capacidade e torceram pelo meu sucesso, e que muito investiram na minha formação para
que eu me tornasse quem sou hoje, a quem expresso todo o meu amor e gratidão.
Ao professor Raimundo Celeste Ghizoni Teive pela orientação, compreensão e apoio no
decorrer deste projeto.
Ao professor Alessandro Mueller, do qual muito me orgulho em ter como integrante da
banca examinadora do meu trabalho, por todo o conhecimento passado ao longo desses anos e o
apoio concedido durante este projeto.
À professora Silvia Modesto Nassar pela amizade, pelos grandes ensinamentos a respeito de
Redes Bayesianas e pelo apoio incontestável ao meu projeto.
A todos os demais professores que de alguma forma contribuíram para o meu crescimento
pessoal e profissional.
A todos os meus amigos e colegas, que tive a felicidade de encontrar em minha vida, pelo
carinho, companheirismo, momentos alegres e por toda a força nos momentos de adversidade.
SUMÁRIO
LISTA DE ABREVIATURAS.................................................................. iv
LISTA DE FIGURAS................................................................................vi LISTA DE TABELAS............................................................................... ix
LISTA DE EQUAÇÕES ............................................................................x
RESUMO....................................................................................................xi ABSTRACT...............................................................................................xii 1 INTRODUÇÃO......................................................................................1
1.1 PROBLEMATIZAÇÃO ..................................................................................... 3 1.1.1 Formulação do Problema................................................................................. 3 1.1.2 Solução Proposta ............................................................................................... 4 1.2 OBJETIVOS ........................................................................................................ 5 1.2.1 Objetivo Geral ................................................................................................... 5 1.2.2 Objetivos Específicos ........................................................................................ 5 1.3 METODOLOGIA................................................................................................ 5 1.4 ESTRUTURA DO TRABALHO ....................................................................... 6
2 FUNDAMENTAÇÃO TEÓRICA........................................................7
2.1 EDUCAÇÃO À DISTÂNCIA............................................................................. 7 2.2 AMBIENTES VIRTUAIS DE APRENDIZAGEM ......................................... 8 2.2.1 Teorias de Aprendizagem............................................................................... 10 2.2.2 Exemplos de Ambientes Virtuais de Aprendizagem ................................... 12 2.3 AMBIENTES INTELIGENTES DE APRENDIZAGEM............................. 13 2.4 HIPERMÍDIA ADAPTATIVA........................................................................ 14 2.4.1 Modelo de Usuário .......................................................................................... 17 2.4.2 Modelo de Adaptação ..................................................................................... 21 2.5 APLICAÇÃO DE REDES BAYESIANAS ..................................................... 29 2.5.1 Teoria da Probabilidade................................................................................. 30 2.5.2 Teorema de Bayes ........................................................................................... 32 2.5.3 Redes Bayesianas............................................................................................. 33 2.6 TRABALHOS RELACIONADOS .................................................................. 39
3 DESENVOLVIMENTO......................................................................41
3.1 ANÁLISE DO SISTEMA ................................................................................. 41 3.1.1 Adaptação do Sistema..................................................................................... 43 3.1.2 Funcionalidades do Sistema........................................................................... 48 3.2 MODELAGEM.................................................................................................. 51 3.2.1 Ambiente Proposto.......................................................................................... 51 3.2.2 Banco de Dados ............................................................................................... 64 3.2.3 Rede Bayesiana................................................................................................ 65
iii
3.3 IMPLEMENTAÇÃO ........................................................................................ 76 3.3.1 Rede Bayesiana................................................................................................ 79 3.3.2 Mecanismo de Adaptação............................................................................... 86 3.3.3 Interface Gráfica ............................................................................................. 91 3.4 TESTES .............................................................................................................. 92 3.5 VALIDAÇÃO..................................................................................................... 93 3.5.1 Caso 1 ............................................................................................................... 94 3.5.2 Caso 2 ............................................................................................................. 116
4 CONCLUSÃO ....................................................................................137
4.1 TRABALHOS FUTUROS.............................................................................. 139
REFERÊNCIAS BIBLIOGRÁFICAS .................................................140
A DESCRIÇÃO DE CASO DE USO 001............................................147
B DESCRIÇÃO DE CASO DE USO 002............................................148
C DESCRIÇÃO DE CASO DE USO 003............................................149
D DICIONÁRIO DE DADOS...............................................................150
E TABELAS DE PROBABILIDADE .................................................155
LISTA DE ABREVIATURAS
AA Anotação Adaptativa AC Avaliação Curricular AHAM Adaptative Hypermedia Application Model AIA Ambientes Inteligentes de Aprendizagem Ajax Asynchronous JavaScript with XMLHttpRequest APC Algoritmos e Programação de Computadores AVA Ambientes Virtuais de Aprendizagem CA Classificação Adaptativa CF Classificação de Fragmentos CG Condução Global CL Condução Local DAO Data Access Object EA Explicação Adicional EaD Educação à Distância EC Explicação Comparativa EL Expression Language EM Expectation Maximization EV Explicação Variante ER Explicação Requerida FV Fragmento Variante GPL GNU Public Licence HA Hipermídia Adaptativa HTML HyperText Markup Language IA Inteligência Artificial IC Instituto de Computação JPA Java Persistence API JSF JavaServer Faces LE Learning Environment MA Mapas Adaptativos MPC Matriz de Probabilidade Conjunta MVC Model View Control NIED Núcleo de Informática Aplicada à Educação OA Ocultação Adaptativa OD Orientação Direta OG Orientação Global OL Orientação Local POJO Plain Old Java Object PV Página Variante RB Redes Bayesianas SCORM Sharable Content Object Reference Model SH Sistema Hipermídia SHA Sistema Hipermídia Adaptativo STI Sistemas de Tutoria Inteligente TC Texto Condicional TP Teoria da Probabilidade TPC Tabela de Probabilidade Condicional
TIC Tecnologias de Informação e Comunicação UML Unified Modeling Language UNICAMP Universidade Estadual de Campinas UNIVALI Universidade do Vale do Itajaí USP Universidade de São Paulo VP Verificação Parcial
LISTA DE FIGURAS
Figura 1. Sistemas que originaram os SHAs e seus principais tipos..................................................15 Figura 2. Arquitetura básica de um SHA ...........................................................................................16 Figura 3. Estruturas gerais de uma Rede Bayesiana ..........................................................................34 Figura 4. Modelagem do problema ....................................................................................................42 Figura 5. Padrão visual para o destaque de links no E-Adapt. ...........................................................44 Figura 6. Funcionamento geral do E-Adapt .......................................................................................45 Figura 7. Regras de adaptação do ambiente .......................................................................................46 Figura 8. Diagrama de caso de uso da autenticação de usuário .........................................................52 Figura 9. Diagrama de classe da autenticação de usuário ..................................................................53 Figura 10. Diagrama de seqüência da autenticação de usuário..........................................................55 Figura 11. Diagrama de caso de uso da resolução de testes online....................................................56 Figura 12. Diagrama de classe da resolução de testes online.............................................................56 Figura 13. Diagrama de seqüência da resolução de testes online ......................................................58 Figura 14. Diagrama de caso de uso da adaptação do sistema...........................................................59 Figura 15. Diagrama de classe da adaptação do sistema....................................................................59 Figura 16. Diagrama de seqüência da adaptação do sistema – desempenho Insatisfatório ...............61 Figura 17. Diagrama de seqüência da adaptação do sistema – desempenho Regular........................62 Figura 18. Diagrama de seqüência da adaptação do sistema – desempenho Satisfatório ..................63 Figura 19. Modelo do banco de dados do E-Adapt............................................................................64 Figura 20. Rede Bayesiana modelada para tratamento do problema .................................................65 Figura 21. Termo indicador do sentido dos arcos na RB...................................................................67 Figura 22. Exemplo de criação de um array de variáveis da RB .......................................................83 Figura 23. Exemplo de criação de um array de funções de probabilidade da RB..............................84 Figura 24. Ordem de inclusão dos valores no array de probabilidades .............................................84 Figura 25. Exemplo de construção de uma RB..................................................................................85 Figura 26. Código da página de testes................................................................................................88 Figura 27. Configuração inicial de adaptação da navegação do sistema ...........................................93 Figura 28. Teste online de nível fácil do conteúdo de Lista ..............................................................94 Figura 29. Caso 1 – reforço de Alocação Dinâmica no estudo de Lista ............................................95 Figura 30. Caso 1 – reforço de Vetor no estudo de Lista...................................................................96 Figura 31. Caso 1 – reforço de Lista e Alocação Dinâmica...............................................................97 Figura 32. Caso 1 – teste de nível médio do conteúdo Lista..............................................................97 Figura 33. Caso 1 – reforço de Lista e Vetor .....................................................................................98 Figura 34. Caso 1 – exibição do link do conteúdo de Fila .................................................................99 Figura 35. Caso 1 - teste de nível fácil do conteúdo Fila ...................................................................99 Figura 36. Caso 1 - reforço do conteúdo Fila...................................................................................100 Figura 37. Caso 1 - teste de nível médio do conteúdo Fila ..............................................................101 Figura 38. Caso 1 – reforço de Lista no estudo de Fila....................................................................101 Figura 39. Caso 1 – exibição do link do conteúdo de Pilha .............................................................102 Figura 40. Caso 1 - teste de nível difícil do conteúdo Fila...............................................................102 Figura 41. Caso 1 - teste de nível fácil do conteúdo Pilha ...............................................................103 Figura 42. Caso 1 – exibição do link do conteúdo de Árvore ..........................................................103 Figura 43. Caso 1 - teste de nível médio do conteúdo Pilha ............................................................104 Figura 44. Caso 1 - reforço do conteúdo Pilha.................................................................................105 Figura 45. Caso 1 - teste de nível difícil do conteúdo Pilha.............................................................105 Figura 46. Caso 1 - teste de nível fácil do conteúdo Árvore............................................................106
Figura 47. Caso 1 – reforço de Aloc. Dinâmica no estudo de Árvore .............................................107 Figura 48. Caso 1 – reforço de Vetor no estudo de Árvore .............................................................107 Figura 49. Caso 1 – reforço de Árvore e Vetor ................................................................................108 Figura 50. Caso 1 – teste de nível médio do conteúdo Árvore ........................................................109 Figura 51. Caso 1 – reforço de Árvore e Alocação Dinâmica .........................................................109 Figura 52. Caso 1 – exibição do link do conteúdo de Mét. de Pesquisa ..........................................110 Figura 53. Caso 1 – teste de nível difícil do conteúdo Árvore.........................................................110 Figura 54. Caso 1 – teste de nível fácil do conteúdo Mét. de Pesquisa ...........................................111 Figura 55. Caso 1 – reforço do conteúdo Métodos de Pesquisa ......................................................111 Figura 56. Caso 1 – teste de nível médio do conteúdo Mét. de Pesquisa ........................................112 Figura 57. Caso 1 – exibição do link do conteúdo de Mét. de Ordenação .......................................113 Figura 58. Caso 1 – teste de nível difícil do conteúdo Mét. de Pesquisa.........................................113 Figura 59. Caso 1 – teste de nível fácil do conteúdo Mét. de Ordenação ........................................114 Figura 60. Caso 1 – teste de nível médio do conteúdo Mét. de Ordenação .....................................114 Figura 61. Caso 1 – reforço do conteúdo Métodos de Ordenação ...................................................115 Figura 62. Caso 1 – teste de nível difícil do conteúdo Mét. de Ordenação......................................115 Figura 63. Caso 2 – reforço de Lista e Alocação Dinâmica.............................................................117 Figura 64. Caso 2 – reforço de Lista e Vetor ...................................................................................117 Figura 65. Caso 2 – reforço de Vetor no estudo de Lista.................................................................118 Figura 66. Caso 2 – exibição do link do conteúdo Fila ....................................................................119 Figura 67. Caso 2 – teste de nível fácil do conteúdo Fila ................................................................120 Figura 68. Caso 2 – exibição do link do conteúdo Pilha ..................................................................120 Figura 69. Caso 2 – reforço do conteúdo Fila ..................................................................................121 Figura 70. Caso 2 – teste de nível fácil do conteúdo Pilha ..............................................................122 Figura 71. Caso 2 – exibição do link do conteúdo Árvore ...............................................................122 Figura 72. Caso 2 – teste de nível médio do conteúdo Pilha ...........................................................123 Figura 73. Caso 2 – reforço do conteúdo Pilha ................................................................................123 Figura 74. Caso 2 – teste de nível difícil do conteúdo Pilha............................................................124 Figura 75. Caso 2 – teste de nível fácil do conteúdo Árvore ...........................................................125 Figura 76. Caso 2 – reforço de Árvore e Alocação Dinâmica .........................................................125 Figura 77. Caso 2 – teste de nível médio do conteúdo Árvore ........................................................126 Figura 78. Caso 2 – reforço de Vetor no estudo de Árvore .............................................................126 Figura 79. Caso 2 – reforço de Aloc. Dinâmica no estudo de Árvore .............................................127 Figura 80. Caso 2 – exibição do link de Métodos de Pesquisa ........................................................128 Figura 81. Caso 2 - teste de nível médio do conteúdo Árvore .........................................................128 Figura 82. Caso 2 – teste de nível difícil do conteúdo Árvore.........................................................129 Figura 83. Caso 2 – teste de nível fácil do conteúdo Mét. de Pesquisa ...........................................129 Figura 84. Caso 2 – reforço do conteúdo de Métodos de Pesquisa..................................................130 Figura 85. Caso 2 – reforço de Lista no estudo de Mét. de Pesquisa...............................................130 Figura 86. Caso 2 – reforço de Vetor no estudo de Mét. de Pesquisa..............................................131 Figura 87. Caso 2 – teste de nível médio do conteúdo Met. de Pesquisa ........................................132 Figura 88. Caso 2 – exibição do link do conteúdo Mét. de Ordenação............................................132 Figura 89. Caso 2 – teste de nível difícil do conteúdo Mét. de Pesquisa.........................................133 Figura 90. Caso 2 – teste de nível fácil do conteúdo Mét. de Ordenação ........................................133 Figura 91. Caso 2 – reforço de Recursividade no estudo de Mét. de Ordenação ............................134 Figura 92. Caso 2 – reforço de Vetor no estudo de Mét. de Ordenação ..........................................134 Figura 93. Caso 2 – reforço do conteúdo Mét. de Ordenação..........................................................135 Figura 94. Caso 2 – teste de nível médio do conteúdo Mét. de Ordenação .....................................135 Figura 95. Caso 2 – teste de nível difícil do conteúdo Mét. de Ordenação......................................136
Figura 96. TPCs dos nós AlocDin e Recursiv..................................................................................155 Figura 97. TPC do nó Pilha..............................................................................................................155 Figura 98. TPC do nó Árvore – parte 1............................................................................................156 Figura 99. TPC do nó Árvore – parte 2............................................................................................156 Figura 100. TPC do nó Árvore – parte 3..........................................................................................157 Figura 101. TPC do nó Lista – parte 1 .............................................................................................158 Figura 102. TPC do nó Lista – parte 2 .............................................................................................159 Figura 103. TPC do nó Lista – parte 3 .............................................................................................160 Figura 104. TPC do nó Lista – parte 4 .............................................................................................161 Figura 105. TPC do nó Lista – parte 5 .............................................................................................162 Figura 106. TPC do nó Lista – parte 6 .............................................................................................163 Figura 107. TPC do nó Lista – parte 7 .............................................................................................164 Figura 108. TPC do nó Lista – parte 8 .............................................................................................165 Figura 109. TPC do nó Lista – parte 9 .............................................................................................166 Figura 110. TPC do nó Lista – parte 10 ...........................................................................................167 Figura 111. TPC do nó Lista – parte 11 ...........................................................................................168 Figura 112. TPC do nó Lista – parte 12 ...........................................................................................169 Figura 113. TPC do nó MetOrd .......................................................................................................170
LISTA DE TABELAS
Tabela 1. Métodos e Técnicas de Apresentação Adaptativa em Sistemas de HA .............................25 Tabela 2. Métodos e Técnicas de Navegação Adaptativa em Sistemas de HA .................................29 Tabela 3. Dados para o Cálculo de Probabilidades do nó Vetor........................................................72 Tabela 4. Dados para o Cálculo de Probabilidades do nó EstruturaDados ........................................73 Tabela 5. Dados para o Cálculo de Probabilidades do nó Fila...........................................................73 Tabela 6. Dados para o Cálculo de Probabilidades do nó MetPesq...................................................75 Tabela 7. Dinâmica de aprendizado simulada no caso 1....................................................................95 Tabela 8. Dinâmica de aprendizado simulada no caso 2..................................................................116 Tabela 9. Dicionário de Dados – Tabela Usuário ............................................................................150 Tabela 10. Dicionário de Dados – Tabela Perfil ..............................................................................150 Tabela 11. Dicionário de Dados – Tabela Aluno .............................................................................151 Tabela 12. Dicionário de Dados – Tabela Adaptação_Aluno..........................................................151 Tabela 13. Dicionário de Dados – Tabela Menu_Aluno..................................................................152 Tabela 14. Dicionário de Dados – Tabela Disciplina.......................................................................152 Tabela 15. Dicionário de Dados – Tabela Turma ............................................................................152 Tabela 16. Dicionário de Dados – Tabela Matrícula .......................................................................152 Tabela 17. Dicionário de Dados – Tabela Conteúdo .......................................................................153 Tabela 18. Dicionário de Dados – Tabela Pré_Requisito ................................................................153 Tabela 19. Dicionário de Dados – Tabela Questão ..........................................................................153 Tabela 20. Dicionário de Dados – Tabela Opção.............................................................................154 Tabela 21. Dicionário de Dados – Tabela Teste ..............................................................................154 Tabela 22. Dicionário de Dados – Tabela Resposta.........................................................................154
LISTA DE EQUAÇÕES
Equação 1 ...........................................................................................................................................31 Equação 2 ...........................................................................................................................................31 Equação 3 ...........................................................................................................................................31 Equação 4 ...........................................................................................................................................31 Equação 5 ...........................................................................................................................................32 Equação 6 ...........................................................................................................................................32 Equação 7 ...........................................................................................................................................34 Equação 8 ...........................................................................................................................................81 Equação 9 ...........................................................................................................................................81 Equação 10 .........................................................................................................................................81 Equação 11 .........................................................................................................................................82
RESUMO
NUNES, Tanara. Ambientes Inteligentes de Aprendizagem: Uma Proposta Baseada em Hipermídia Adaptativa e Redes Bayesianas. São José, 2007. 189 f. Trabalho de Conclusão de Curso (Graduação em Ciência da Computação) - Centro de Ciências Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, São José, 2007. Os Ambientes Virtuais de Aprendizagem (AVA) tiveram seu desenvolvimento iniciado com o despertar do grande interesse pela Educação à Distância (EaD) via Internet, trazendo-lhe novas perspectivas e tornando-se um instrumento de grande importância para a inovação do processo de ensino-aprendizagem mediado por computadores em rede. Porém, por mais que a maioria dos AVAs atualmente utilizados já ofereça uma série de recursos que favorecem o processo de ensino-aprendizagem, esses ambientes ainda apresentam diversas limitações em termos de interação com o usuário. Um problema bastante comum refere-se às suas interfaces, as quais são projetadas de forma a tratarem os estudantes como se possuíssem o mesmo perfil, limitando-se a páginas de conteúdos estáticos que tendem a ser pouco intuitivas e a causar a sobrecarga cognitiva. Com as novas tecnologias disponíveis, um novo paradigma foi estabelecido para o desenvolvimento de Ambientes Inteligentes de Aprendizagem (AIA), visando prover apoio personalizado ao processo de aprendizagem a partir da aplicação de técnicas de Inteligência Artificial (IA) e da Hipermídia Adaptativa (HA), a qual constitui uma das mais recentes áreas de pesquisa e desenvolvimento de tecnologias educacionais e que objetiva, por meio de arquiteturas, técnicas e métodos, prover a adaptação de conteúdos e estruturas de navegação às preferências, objetivos e expectativas dos usuários de um ambiente virtual educacional, dando-lhes acesso a informações relevantes e atualizadas que favoreçam o seu aprendizado, evitando desta forma a sobrecarga cognitiva. Neste contexto, este trabalho apresenta o desenvolvimento de um protótipo de Ambiente Inteligente de Aprendizagem baseado em Hipermídia Adaptativa aplicado ao estudo de caso da disciplina de Estrutura de Dados lecionada no 3º período dos cursos de Ciência da Computação e Engenharia de Computação da Universidade do Vale do Itajaí (UNIVALI). Este sistema, denominado E-Adapt, realiza a adaptação de estruturas de navegação a partir da interação do usuário, por meio da aplicação de Redes Bayesianas (RB), uma técnica de IA que vem sendo amplamente aplicada em sistemas de HA voltados ao ensino pelo fato de tornar possível o tratamento da incerteza, a qual envolve as características relacionadas à modelagem do perfil do usuário, tais como conhecimento e metas de aprendizagem. O protótipo foi desenvolvido a partir de uma pesquisa e análise sobre soluções, tecnologias e arquiteturas relacionadas à aplicação de RB em Sistemas Hipermídia Adaptativos (SHA) e com o auxílio de especialistas das áreas relacionadas, tendo como objetivo adaptar-se ao perfil dos estudantes para guiá-los de forma personalizada no aprendizado da disciplina, levando-os a atingir com maior eficácia as metas de aprendizado. Palavras-chave: Ambientes Virtuais de Aprendizagem. Hipermídia Adaptativa. Redes Bayesianas.
ABSTRACT
The Learning Environments (LE) had its development started with the waking of the great interest
for E-Learning, bringing new perspectives to it and becoming a tool of great matter to inovation of
the learning process mediated by computers in network. However, although most of LE actually
used already offer a set of resourses which favour the learning process, these systems still have
many limitations related to interaction with the user. A very common problem refer to its interfaces,
which are designed in way to treat students as if they owned the same profile, being limited to pages
of static contents which tend to be not much intuitive and cause cognitive overload. Due to new
technologies available, a new paradigm was established for Intelligent Learning Environment (ILE)
development, aiming to provide personalized support to learning process by application of
Artificial Intelligence (AI) techniques and Adaptative Hypermedia (AH), which constitutes one of
the most recent research and development fields of educational technologies which aims, by use of
architectures, techniques and methods, to provide adaptation of contents and navigation structures
to preferences, objectives and expectations of educational systems users, giving to them access to
important and updated information which favour their learning avoiding cognitive overload. In this
context, this work presents the development of a prototype of ILE based on Adaptative Hypermedia
applied to the case study of Data Structure subject teached in 3rd period of Computer Science and
Computer Engineering courses of University of Vale do Itajaí (UNIVALI). This system, named E-
Adapt, executes adaptation of navigation structures from user´s interaction, by application of
Bayesians Network (BN), an AI technique which is being widely applied in AH systems for
education due to its capability handling incertainess, which involves features related to user’s
profile modeling such as knowledge and learning goals. The prototype was developed from a research and analysis about solutions, technologies and architectures related to the application of
BN in Adaptative Hypermedia Systems (AHS) and with the aid of specialists of the related areas,
having the objective of adapting itself to students’ profile to guide them to learning of the subject by
personalized way, leading them to reach the learning goals with greater effectiveness.
Keywords: Learning Environments. Adaptative Hypermedia. Bayesians Network.
1 INTRODUÇÃO
Com o avanço acelerado das tecnologias digitais de comunicação e informação que vem
sendo vivenciado ao longo das últimas décadas, as formas de ensino e aprendizado têm passado por
diversas mudanças, ampliando as possibilidades de interação entre professores e alunos e seu acesso
à informação (KENSKI, 2005).
A Educação à Distância (EaD) vem se tornando um dos principais assuntos discutidos nos
últimos anos no que se refere aos rumos da educação em uma sociedade cercada por grandes
transformações tecnológicas, sendo utilizada em uma grande variedade de ambientes e para uma
série de objetivos. Diversas tecnologias têm sido utilizadas para a EaD, contribuindo para sua
intensa transformação (KLAES, 2005). Entre elas destaca-se a Internet como um poderoso meio de
propagação e acesso à informação, cuja utilização em ambientes educacionais constitui um novo
padrão que vem sendo explorado nesta modalidade, aliado a diversas aplicações de tecnologias da
informação que têm sido propostas, estudadas e desenvolvidas (SILVA, 2000).
Dentro do contexto da EaD tem-se o desenvolvimento dos Ambientes Virtuais de
Aprendizagem (AVA), os quais trouxeram a esta modalidade uma nova perspectiva em relação às
possibilidades surgidas pela informática na educação, tornando-se um instrumento de grande
importância ao possibilitarem o estímulo e a inovação do processo de ensino-aprendizagem
mediado por computadores em rede (MACHADO et al, 2005).
Atualmente, existe uma expressiva preocupação de que esses ambientes dêem suporte a
diferentes modelos de aprendizagem e atendam a diferentes métodos pedagógicos e perfis de
estudantes. Parte da flexibilidade desejada já pode ser observada em diversos AVAs tradicionais, os
quais permitem a personalização do ambiente quanto a ferramentas de aprendizagem a serem
utilizadas em cursos por alunos e professores. Porém, isto não é o bastante, considerando que toda a
problemática de gerência de processos de aprendizagem encontra-se associada à complexidade do
perfil cognitivo e particularidades de cada estudante, além da falta de integração dos conteúdos das
disciplinas, disponibilizando ao estudante um conhecimento fragmentado.
A grande maioria dos AVAs tradicionais atualmente utilizados dispõe de uma série de
recursos que visam auxiliar estudantes em seu processo de aprendizagem, entretanto um problema
bastante comum refere-se às suas interfaces, as quais são projetadas de forma a apresentarem o
mesmo conteúdo a todos os usuários, como se estes possuíssem um mesmo perfil. Desta forma,
limitam-se a páginas estáticas que tendem a ser pouco intuitivas e que dificultam a interação,
aumentando a carga cognitiva dos estudantes (LIMA et al, 2005).
2
Projetar um ambiente virtual educacional implica em uma série de decisões que abrangem
tanto questões técnicas como também pedagógicas, para que o sistema seja uma ferramenta eficaz
no aprendizado dos estudantes. O advento da Web introduziu novos paradigmas para o
desenvolvimento de Ambientes Inteligentes de Aprendizagem (AIA), os quais utilizam recursos de
hipermídia e técnicas de Inteligência Artificial (IA), podendo ser explorados de diferentes formas,
conforme a metodologia utilizada pelo professor (VICARI & GIRAFFA, 2003). Neste sentido, a
Hipermídia Adaptativa (HA) consiste em uma das áreas mais recentes de pesquisa e
desenvolvimento de tecnologias educacionais, a qual alia conceitos de sistemas hipermídia,
sistemas tutores inteligentes e interfaces adaptativas, aplicando modelos para a obtenção de
informações referentes ao conhecimento, metas e preferências dos estudantes por meio de
interações para adaptação de conteúdos hipermídia e estruturas de navegação (SANTIBAÑEZ,
SAOTOME & CUNHA, 2003).
Dentre as atuais técnicas de IA, as Redes Bayesianas (RB) vêm sendo amplamente aplicadas
em sistemas inteligentes aplicados à educação, consistindo em uma técnica para a modelagem
probabilística do conhecimento que vem aperfeiçoando estes sistemas através de seu tratamento de
incertezas. Esta técnica combina Teoria dos Grafos e Teoria da Probabilidade, e sua denominação
provém da aplicação da fórmula matemática para o cálculo de probabilidades estabelecida por
Thomas Bayes, a qual constitui o Teorema de Bayes. Uma RB é representada por um grafo
direcionado acíclico, cujos nós representam as variáveis aleatórias envolvidas no problema a ser
tratado e os arcos que os conectam definem as relações de dependência existentes entre as variáveis.
Além disso, cada nó possui uma função de distribuição de probabilidade condicional de valores que
podem ser assumidos pelas variáveis representadas, conforme valores de probabilidade definidos
em nós pais (ORLANDELI, 2005; RABENSCHLAG, 2005).
Em sistemas educacionais baseados em HA, há um crescente interesse na aplicação de
modelos probabilísticos para modelagem de características relacionadas ao perfil do estudante, tais
como metas, conhecimento e interesses, as quais são envolvidas pela incerteza. Com isso, as RBs
vem sendo aplicadas na modelagem do estudante, a qual é considerada a fonte para a personalização
de conteúdo e navegação no sistema, possibilitando que estudantes sejam guiados de forma
personalizada em seu processo de aprendizado. Esta modelagem baseia-se no modelo por
estereótipo, onde assume-se que estudantes de uma mesma classificação apresentam as mesmas
características. Neste caso, um problema que pode ocorrer é de os estereótipos tornarem-se
obsoletos, então a aplicação de uma RB possibilita a atualização e conseqüente personalização da
modelagem para cada estudante. Assim, os resultados do modelo atualizado são utilizados pelo
3
sistema para individualização da aplicação hipermídia (SANTIBAÑEZ, SAOTOME & CUNHA,
2003).
Neste contexto, o presente trabalho apresenta o desenvolvimento de um protótipo de
Ambiente Inteligente de Aprendizagem, aplicado a um estudo de caso real envolvendo a disciplina
de Estrutura de Dados ministrada no 3º período dos cursos de Ciência da Computação e Engenharia
de Computação da Universidade do Vale do Itajaí (UNIVALI), Campus São José, conforme
detalhado na Seção 1.1.
1.1 PROBLEMATIZAÇÃO
1.1.1 Formulação do Problema
A disciplina de Estrutura de Dados está presente em cursos de Computação de universidades
brasileiras e do exterior, sendo oferecida em geral com os mesmos conteúdos e no 3º período. Neste
estágio da graduação, esta disciplina passa a ser a de maior dificuldade na área de software.
Nos referidos cursos da UNIVALI, esta disciplina, a qual é atualmente ministrada em modo
presencial e também à distância, apresenta um conteúdo programático de grande importância, o
qual é considerado a base para o aprendizado em disciplinas referentes à área de software em fases
posteriores, pelo fato de também agregar conteúdos anteriormente estudados pelos alunos. Assim,
para que estes obtenham um aprendizado satisfatório no conteúdo desta disciplina, é preciso que
tenham tido um bom aproveitamento na disciplina pré-requisito, Algoritmos e Programação de
Computadores (APC) II, a qual é lecionada no 2º período.
Conforme relatado pelo professor que leciona Estrutura de Dados, atualmente há um alto
nível de reprovação nesta disciplina. Observou-se, com base no histórico das turmas, que alunos
que a cursaram e obtiveram tal resultado geralmente apresentaram dificuldade em três conteúdos
específicos de APC II, sendo estes o de Vetores, Alocação Dinâmica e Recursividade, os quais são
considerados os mais críticos. Além disso, em Estrutura de Dados percebe-se que geralmente a
maior dificuldade dos alunos encontra-se no aprendizado do conteúdo de Árvore.
Diante deste cenário, detectou-se a necessidade em auxiliar alunos em seu processo de
aprendizagem na disciplina de Estrutura de Dados, de forma a guiá-los na melhoria do aprendizado
em conteúdos que apresentam maiores dificuldades e conseqüentemente levá-los a concluir a
disciplina possuindo um nível de conhecimento satisfatório para seu aprendizado em conteúdos de
disciplinas posteriores.
4
1.1.2 Solução Proposta
O protótipo desenvolvido neste projeto, o qual foi nomeado E-Adapt, consiste em um
ambiente de aprendizagem web que adapta-se ao perfil de cada estudante, com o objetivo de guiá-lo
de forma personalizada no estudo dos conteúdos da disciplina tratada e assim auxiliá-lo em seu
processo de aprendizado. A individualização do ambiente foi realizada a partir da aplicação de
conceitos de Hipermídia Adaptativa e da técnica de Redes Bayesianas, de forma a possibilitar que o
sistema detecte características de cada estudante e ajuste-se ao seu perfil conforme sua interação
com o sistema, que neste caso consiste na resolução de testes online envolvendo os conteúdos
estudados ao longo da disciplina.
A adaptação do sistema encontra-se focalizada em suas estruturas de navegação, consistindo
neste caso, na indicação de links que devem ser acessados pelo estudante, de forma a orientá-lo
sobre os conteúdos que devem ser estudados ou reforçados. Para isso, foram aplicadas duas técnicas
de Navegação Adaptativa que vêm sendo bastante utilizadas, sendo estas a Orientação Direta,
representada pelo destaque de links, e a Ocultação Adaptativa, que visa manter links ocultos até que
se tornem relevantes ao perfil do usuário, conforme detalhado na Seção 2.4.2 deste trabalho.
Para dar suporte à adaptação neste protótipo, foi modelada junto ao especialista, professor
da disciplina tratada, uma RB que visa representar o aprendizado do aluno com base em seu
desempenho durante a disciplina de Estrutura de Dados. Seus nós representam cada conteúdo a ser
estudado nesta disciplina e os conteúdos da disciplina pré-requisito mencionados anteriormente, os
quais são de interesse para Estrutura de Dados. Cada nó possui três estados para classificar o nível
de aprendizado do estudante: Insatisfatório, Regular e Satisfatório. As ligações entre os nós
definem, neste caso, as relações de dependência entre os conteúdos. Esta RB foi inicializada com
probabilidades calculadas a partir de uma amostra de resultados de avaliações realizadas com
turmas anteriores, das referidas disciplinas.
Assim, à medida que o estudante interage com o sistema, a RB permite estimar a
probabilidade de desempenho obtido em conteúdos da disciplina anterior relacionados ao conteúdo
em estudo, para identificação daqueles que precisam ser mais reforçados com base no desempenho
atual observado nos testes online realizados, e também estimar resultados que poderão ser obtidos
em conteúdos seguintes, de forma a permitir que o sistema antecipe ao estudante o que pode ser
feito para melhoria de seu aprendizado, conforme a necessidade apresentada.
5
1.2 OBJETIVOS
1.2.1 Objetivo Geral
O objetivo geral deste projeto consiste no desenvolvimento de um protótipo de Ambiente
Inteligente de Aprendizagem baseado em Hipermídia Adaptativa com aplicação de Redes
Bayesianas, voltado ao aprendizado de Estrutura de Dados no 3º período dos cursos de Ciência da
Computação e Engenharia de Computação da Universidade do Vale do Itajaí (UNIVALI), Campus
São José.
1.2.2 Objetivos Específicos
• Realizar um estudo da aplicação de Hipermídia Adaptativa para individualização de
Ambientes Virtuais de Aprendizagem;
• Analisar soluções, tecnologias e arquiteturas relacionadas à aplicação de Redes
Bayesianas em Ambientes Inteligentes de Aprendizagem baseados em Hipermídia
Adaptativa;
• Realizar um estudo de Redes Bayesianas;
• Realizar a modelagem do sistema e da rede bayesiana;
• Implementar o sistema e rede bayesiana modelados;
• Testar a implementação do sistema;
• Testar e validar a funcionalidade do sistema; e
• Documentar o sistema desenvolvido e os resultados alcançados.
1.3 Metodologia
Primeiramente, foi realizada a pesquisa e análise de soluções existentes relacionadas à
aplicação de Redes Bayesianas em Ambientes Inteligentes de Aprendizagem baseados em
Hipermídia Adaptativa. A seguir, pesquisou-se sobre conceitos e tecnologias necessários ao
desenvolvimento do protótipo, sendo estes Educação à Distância, Ambientes Virtuais de
Aprendizagem, Hipermídia Adaptativa e Redes Bayesianas. Dentro do contexto da Hipermídia
Adaptativa, foi estudada a arquitetura atualmente mais conhecida e utilizada em Sistemas
Hipermídia Adaptativos, a qual é denominada AHAM (Adaptative Hypermedia Application
Model), conforme exposto na Seção 2.4 deste trabalho. As fontes de pesquisa utilizadas para
obtenção destas informações foram livros, artigos, sites da Internet, dissertações e teses.
6
Após a obtenção do embasamento teórico, foi realizada a análise e projeto do protótipo aqui
apresentado, a partir de reuniões com o especialista, que neste caso é o professor da disciplina
tratada. A modelagem realizada teve seu foco sobre a rede bayesiana e o mecanismo de adaptação
do sistema. Em seguida, foram definidas as probabilidades condicionais para cada nó da rede, com
base em uma amostra de dados de avaliações de turmas de APC II e Estrutura de Dados de
semestres anteriores.
Uma vez concluída a modelagem e os cálculos mencionados, foi realizada a implementação
do protótipo conforme as especificações definidas, sendo priorizada a implementação da rede
bayesiana modelada. Em seguida, foram implementados o mecanismo de adaptação do sistema e a
interface de usuário. Ao ser finalizada a fase de implementação, foi realizada a alimentação da base
de dados e foram executados testes com o protótipo a fim de confirmar seu correto funcionamento.
Finalmente, realizou-se a validação da funcionalidade do sistema junto ao especialista.
1.4 Estrutura do trabalho
Este documento está estruturado em quatro capítulos. O Capítulo 1, Introdução, apresentou
uma visão geral do trabalho. No Capítulo 2, Fundamentação Teórica, é apresentada uma revisão
bibliográfica sobre Educação à Distância, Ambientes Virtuais de Aprendizagem, Hipermídia
Adaptativa e Redes Bayesianas. O Capítulo 3 apresenta a documentação completa do protótipo
implementado, incluindo suas especificações e modelagem, bem como uma descrição detalhada de
todo o processo de desenvolvimento. Finalmente, no Capítulo 4, é apresentada a conclusão deste
trabalho, onde encontram-se expostos os resultados alcançados nesta pesquisa e planos para
trabalhos futuros. O texto inclui ainda cinco apêndices e um anexo que complementam as
informações apresentadas no trabalho.
2 FUNDAMENTAÇÃO TEÓRICA
Nas seções a seguir, encontram-se contextualizados os assuntos envolvidos na pesquisa e
desenvolvimento do presente trabalho, do nível geral ao mais específico. Primeiramente apresenta-
se uma abordagem sobre Educação à Distância e sua efetividade diante da atual sociedade da
informação. Em seguida, são apresentados os Ambientes Virtuais de Aprendizagem e seus recursos,
bem como seu papel na Educação à Distância e as abordagens pedagógicas atualmente utilizadas.
Finalmente, é realizada uma abordagem mais abrangente a respeito de sistemas baseados em
Hipermídia Adaptativa voltados à educação e uma explanação a respeito de Redes Bayesianas,
temas que constituem o foco principal deste trabalho.
2.1 Educação à Distância
Ao longo dos anos, a Educação à Distância (EaD) vem ganhando espaço e credibilidade,
tornando-se a modalidade fundamental de ensino e aprendizagem em todo o mundo, uma vez que
seu prestígio cresce visivelmente (SILVA, 2005). Consiste em uma modalidade de ensino
caracterizada pela comunicação em múltiplas vias, combinando diversas tecnologias convencionais
e modernas que possibilitam a comunicação entre professores e alunos mediada por recursos
didáticos sistematicamente organizados, superando os limites de espaço e tempo (PEREIRA et al,
2006).
Uma de suas principais características é a possibilidade de aproximar professores e alunos
fisicamente separados, e seu objetivo é disponibilizar material instrucional para um maior número
de estudantes geograficamente distribuídos, ampliando seu aprendizado em diferentes áreas do
conhecimento. Desta forma é possível, por exemplo, que novas informações sejam acessadas por
alunos isolados de grandes centros de educação e que professores bem preparados sejam
compartilhados de forma eficiente por alunos localizados em diferentes regiões.
Inicialmente a educação a distância restringiu-se ao uso de materiais impressos, passando
por uma evolução gradativa nas últimas décadas com o surgimento de novos recursos tecnológicos,
tais como transmissões radiofônicas, programas televisivos e fitas de áudio e vídeo. Atualmente,
com o desenvolvimento da infra-estrutura de comunicação e expansão das redes de computadores,
novas tecnologias passaram a ser utilizadas na Educação à Distância, entre elas a Internet,
considerada uma grande aliada que trouxe consigo um item fundamental para o processo de ensino
à distância: a interatividade. Com isso, as fronteiras para essa modalidade se expandiram,
8
possibilitando reunir de modo cada vez mais interativo as vantagens das diversas formas de
disseminação de informações e idéias em um único meio de comunicação (TESSAROLLO, 2000;
SILVA, 2005).
Hoje, os novos recursos disponibilizados pelas Tecnologias de Informação e Comunicação
(TICs) oferecem novos meios para aquisição e manipulação de informações e novas formas de
construção do conhecimento, acentuando a interação entre todos os participantes em um processo
de ensino-aprendizagem. O entusiasmo gerado pela massificação desses recursos resultou em um
grande interesse pela Educação à Distância via Internet, a qual trouxe novas possibilidades e
perspectivas à educação e vem desafiando instituições a repensarem seus modelos pedagógicos
atuais (KLAES, 2005; PERRY et al, 2006; AZEVÊDO, 2000).
Entretanto, Almeida (2003) afirma que a aplicação de novas tecnologias como suporte à
EaD com o intuito de apenas colocar o estudante diante de informações, problemas e objetos de
conhecimento não constitui uma revolução metodológica, podendo não ser o suficiente para
despertar nele a motivação pela aprendizagem. É preciso criar um ambiente que propicie a
aprendizagem significativa do estudante, desperte seu interesse em aprender e disponibilize
informações pertinentes de forma organizada, além de promover no momento apropriado a
assimilação de conceitos construídos. Para isso, Rosini (2001) afirma que se faz necessário um
planejamento criterioso e que haja plena compreensão do foco e das necessidades do estudante.
Somente quando estes elementos encontram-se bem entendidos torna-se possível a escolha das
tecnologias apropriadas para a eficácia de um programa de EaD.
Com o desenvolvimento e utilização de Ambientes Virtuais de Aprendizagem na EaD via
Internet, tornou-se possível encontrar uma série de recursos que visam atender as necessidades do
processo de ensino e aprendizagem, através dos quais alunos e professores podem aprender e
ensinar simultaneamente, flexibilizando relações estabelecidas durante o processo e consolidando
uma importante transformação social no processo educativo (GELLER, TAROUCO & FRANCO,
2004), conforme será visto na seção a seguir.
2.2 Ambientes Virtuais de Aprendizagem
Os Ambientes Virtuais de Aprendizagem (AVAs) têm sido amplamente utilizados nas
instituições que atuam em formação continuada, graduação e pós-graduação, com o objetivo de
atender a uma demanda atual de qualificação, ampliação das possibilidades de interação e utilização
de novas tecnologias (VALENTINI, LUCIANO & ANDREOLA, 2002). Podem ser definidos como
sistemas computacionais disponíveis na Internet destinados ao suporte de atividades mediadas pelas
9
tecnologias de informação e comunicação, através dos quais torna-se possível a integração de
múltiplas mídias, linguagens e recursos. Permitem ainda a apresentação de informações de modo
organizado, o desenvolvimento da interação entre pessoas e objetos de conhecimento e a elaboração
de produções para o alcance de determinados objetivos. Nesses ambientes, as atividades são
desenvolvidas no tempo, ritmo de trabalho e espaço em que cada participante se localiza, conforme
uma intencionalidade explícita ou planejamento prévio, continuamente revisto e reelaborado ao
longo da realização de cada atividade (ALMEIDA, 2003). Caetano (2006) caracteriza ainda um
ambiente de aprendizagem como um espaço onde é possível acontecer a transformação do
conhecimento construído pelo ser humano e através do cenário onde existem condições de
aprendizagem para o desenvolvimento de capacidades, habilidades, competências e valores
imprescindíveis à atuação do indivíduo, social e profissionalmente.
Entre diversas características dos ambientes virtuais, as quais serão vistas ao longo desta
pesquisa, as consideradas principais e que já garantem o diferencial para a aprendizagem individual
ou em grupo são a interatividade, hipertextualidade e conectividade. As formas síncronas e
assíncronas de comunicação e a flexibilidade de navegação presentes nesses ambientes oferecem
aos estudantes condições para uma permanente interatividade, em modalidades um-um, um-todos e
todos-todos, e lhes dão a oportunidade de definirem caminhos personalizados para acesso às
informações desejadas. A hipertextualidade, por sua vez, facilita a propagação de atitudes
cooperativas entre os participantes, para fins de aprendizagem. Finalmente, a conectividade garante
rápido acesso às informações disponíveis no ambiente e à comunicação interpessoal, independente
da localização dos participantes (KENSKY, 2005; SANTOS & OKADA, 2003).
Atualmente são muitos os AVAs encontrados na Web, os quais são caracterizados e
diferenciados de outros suportes de educação e comunicação mediados por tecnologias devido as
suas possibilidades de comunicação todos-todos, própria do ciberespaço. Agregam interfaces que
possibilitam a produção de conteúdos e diversos canais de comunicação, além de permitirem
gerenciamento de banco de dados e total controle das informações disseminadas (SANTOS &
OKADA, 2003). Possibilitam também o acompanhamento da freqüência e da produção de cada
aluno, uma vez que podem armazenar em uma base de dados a data e hora de seu acesso ao
ambiente e a cada uma das ferramentas disponíveis, trabalhos publicados, resultados de testes
online e tarefas realizadas, incluindo também a verificação de prazos de entrega e mensagens
trocadas entre participantes de um curso (BASSANI & BEHAR, 2006).
Outras características comuns nesses ambientes são a integração de ferramentas de interação
síncronas e assíncronas, a existência de ambientes distintos ao aluno e ao professor, além da
10
necessidade de um servidor próprio e de um administrador de sistema para realizar a manutenção do
ambiente (CAETANO, 2006). Para promover as comunicações síncrona e assíncrona, os AVAs
dispõem de uma série de ferramentas, conforme Mehlecke e Tarouco (2003): correio eletrônico,
grupos de discussão, reprodução de áudio e vídeo, bate-papo, videoconferência, teleconferência e
áudioconferência.
As características tecnológicas de um AVA devem garantir que seus participantes sintam-se
como se estivessem trabalhando juntos em um mesmo lugar e ao mesmo tempo, mesmo que na
verdade encontrem-se em espaços distanciados e acessem o mesmo ambiente em dias e horários
diferentes. Entretanto, para que isso seja realmente possível e eficaz, é necessário ir muito além das
tecnologias atualmente disponíveis e dos conteúdos a serem trabalhados nas disciplinas ou em
projetos educativos, pois a efetiva contribuição dos AVAs no processo de ensino-aprendizagem
depende em grande parte das estratégias pedagógicas utilizadas pelo professor (KENSKI, 2005;
CAETANO, 2006).
Existem diversas abordagens para aprendizagem, e novas teorias se encontram em evolução,
sendo possível combiná-las para a elaboração de cursos e materiais online. É preciso conhecê-las, a
fim de selecionar as estratégias instrucionais mais apropriadas para motivar os estudantes, facilitar a
assimilação de conteúdos, promover aprendizagem significativa, fornecer feedback, encorajar a
interação e fornecer apoio durante o processo de aprendizado (ALLY, 2004). Algumas destas
abordagens, consideradas as principais, são apresentadas na seção a seguir.
2.2.1 Teorias de Aprendizagem
Segundo Malange (2005), as teorias de aprendizagem podem ser classificadas em
Comportamentalista, Cognitivista e Construtivista, embora existam também outras classificações
explanadas por outros autores. Ao serem analisadas com maior atenção, é possível perceber
diversas coincidências em suas idéias e princípios, tornando possível incluir princípios das três
teorias na elaboração de materiais de aprendizado online, utilizando-as como uma taxonomia para
aprendizagem. Estratégias comportamentalistas podem ser utilizadas para ensinar fatos (o que), as
cognitivas podem ser aplicadas no ensino de processos e princípios (como) e as construtivistas
podem auxiliar estudantes no aprendizado contextual (por que) (ALLY, 2004).
Ally (2004) e Malange (2005) afirmam que os primeiros ambientes virtuais de
aprendizagem foram projetados com base na abordagem Comportamentalista ou Behaviorista para
aprendizagem, uma prática pedagógica bastante questionada porém considerada de grande
importância na educação, cuja teoria defende que o aprendizado é uma mudança no comportamento
11
observável de um indivíduo causada por estímulos externos no ambiente. Nessa abordagem,
acredita-se que o aprendizado se dá por condicionamento, ou seja, a partir da tentativa e erro os
acertos servem de estímulo para a aprendizagem e a repetição das atividades é importante para a
fixação de conteúdos. O comportamento de um indivíduo é analisado de forma mecânica e
considerado o indicativo de avanço no aprendizado, ignorando-se totalmente os processos
desencadeados em sua mente. Diversos educadores contestaram esta abordagem, alegando que nem
todo o aprendizado é observável e é muito mais do que uma alteração no comportamento, e com
isso houve um declínio dessa abordagem para a adoção de teorias de aprendizagem cognitiva.
O Cognitivismo baseia-se no processo mental por trás do comportamento, onde mudanças
no comportamento do indivíduo são observadas e adotadas como indicadores do que se passa em
sua mente. Sua teoria defende que a aprendizagem envolve o uso da memória, motivação e
pensamento, e que a reflexão exerce um papel importante no processo de aprendizado. Além disso,
afirma que o volume de informações assimilado pelo indivíduo depende de sua capacidade e
intensidade de processamento, além do esforço despendido durante o processo de aprendizado e
conhecimento prévio (ALLY, 2004). É justificável a tendência desta teoria ser considerada a que
melhor esclarece a respeito da cognição humana, em função de sua tentativa de explicar desde os
tipos mais simples de aprendizagem até os mais complexos, os quais envolvem o pensamento
lógico, a aprendizagem de conceitos, a aplicação de regras e princípios, e resolução de problemas
(ORBOLATO, 2005).
Nas últimas décadas, tem havido uma mudança de abordagem para o Construtivismo. Essa
abordagem baseia-se nas idéias de Piaget sobre o conhecimento e a aprendizagem, descrevendo em
que consiste o saber e como esse saber é adquirido. Sustenta que o ser humano responde a estímulos
externos e age sobre eles para construir e organizar de forma cada vez mais elaborada o seu próprio
conhecimento (ALLY, 2004; ORBOLATO, 2005). Para Malange (2005), o Construtivismo baseia-
se na premissa de que todo ser humano constrói sua própria perspectiva do mundo através de
experiências individuais e que o aprendizado é um processo ativo no qual o conhecimento é
desenvolvido através da experiência. Um ambiente que faz uso desta abordagem exige que haja
uma grande relação do estudante com os objetos de estudo, algo que deve ir muito além de apenas
navegar no ambiente ou utilizar suas ferramentas: os objetos de estudo devem ser integrados à
realidade do aluno de forma a estimulá-lo e desafiá-lo para propiciar seu desenvolvimento (SILVA,
2003). Assim, pode-se afirmar que estratégias instrucionais na linha construtivista procuram colocar
o estudante em situação ativa, tratando-o como um construtor de seu próprio aprendizado, onde o
12
professor é mais do que um propagador de informações e exerce o papel de desafiador
(ORBOLATO, 2005).
2.2.2 Exemplos de Ambientes Virtuais de Aprendizagem
Atualmente existem diversos AVAs sendo utilizados em cursos à distância como veículo
para disponibilização de conteúdo e para propiciar a interatividade entre seus participantes, entre
outras finalidades. Grande parte deles são soluções proprietárias e que exigem alto investimento
financeiro para utilizá-las, mas também existem AVAs gratuitos desenvolvidos por universidades e
grupos de pesquisa (CAETANO, 2006; MALANGE, 2005), sendo bastante conhecidos entre estes o
Moodle, Teleduc e AulaNET.
O Moodle1 é um ambiente de formação com código aberto, multiplataforma e distribuído
sob a licença GPL (GNU2 General Public Licence), o qual é destinado à gestão da aprendizagem e
do trabalho colaborativo. Classificado como o melhor AVA de código aberto em diversas
avaliações realizadas, este ambiente vem sendo amplamente utilizado por diversas instituições de
ensino em todo o mundo, tendo como filosofia uma abordagem social construtivista da educação,
cujo princípio alia teorias resultantes de diferentes estudos realizados, entre elas o Construtivismo.
Seu projeto vem evoluindo constantemente com o apoio de uma comunidade global bastante ativa,
cujos membros apresentam objetivos diversos, que vão desde a manutenção e aperfeiçoamento do
sistema até discussões referentes a estratégias pedagógicas para melhor aproveitamento do ambiente
para o ensino (MOODLE DOCS, 2007 a; PEREIRA et al, 2006).
O TelEduc é um ambiente para elaboração e acompanhamento de cursos na Web, o qual foi
desenvolvido pelo Instituto de Computação (IC) da Universidade Estadual de Campinas
(UNICAMP) a partir de uma metodologia de formação de professores construída com base na
análise de diversas experiências presenciais realizadas por profissionais do Núcleo de Informática
Aplicada à Educação (NIED), situado na mesma universidade (TESSAROLLO, 2000). Sua
abordagem é cooperativa e contextualizada, dessa forma o ambiente oferece um conjunto de
mecanismos que permitem aos professores customizarem cursos e a acessibilidade de ferramentas
conforme os objetivos de aprendizado a serem alcançados e a metodologia adotada pelo formador.
A metodologia de ensino-aprendizagem proposta pelo TelEduc, o qual é atualmente utilizado pela
1 Modular Object-Oriented Dynamic Learning Environment. 2 Acrônimo recursivo para “GNU Não é Unix” (ou “GNU’s Not Unix”), em referência ao sistema operacional livre desenvolvido no Projeto GNU fundado por Richard Stallman, o qual encontra-se documentado em http://www.gnu.org.
13
UNIVALI, é a realização de atividades práticas sob constante orientação online de um formador e
aprendizagem de conhecimentos teóricos de forma contextualizada decorrente da execução dessas
atividades, além de comunicação entre os participantes e discussão de assuntos teóricos (SILVA,
2003; TESSAROLLO, 2000).
O AulaNET é um ambiente de aprendizagem colaborativo baseado na Web, o qual foi
desenvolvido no Laboratório de Engenharia de Software do Departamento de Informática da PUC -
Rio para administração, criação, manutenção e participação em cursos à distância (MALANGE,
2005). Este ambiente difere da maioria dos AVAs pelo fato de se basear em uma abordagem
cooperativa, tratando-se de uma ferramenta muito acessível para a criação e gerenciamento de
cursos com um alto nível de interatividade, no qual professores e alunos são apoiados por uma série
de tecnologias atualmente disponíveis na Internet (FUKS, 2000; ORBOLATO, 2005).
2.3 Ambientes Inteligentes de Aprendizagem
A grande maioria dos AVAs atualmente utilizados em programas de EaD, por mais que já
apresente uma série de recursos que favorecem o processo de ensino-aprendizagem, ainda apresenta
limitações no processo interativo entre o aluno e o ambiente, necessitando de elementos que
simulem ao aluno uma observação presencial. Pedagogicamente, o estudante obtém o melhor
aprendizado quando está motivado e possui acesso ao conhecimento, sendo considerados requisitos
básicos a existência de informações claras, concisas e precisas, a prática do assunto estudado,
resposta dos trabalhos realizados e motivação intrínseca e extrínseca. Atualmente as ferramentas
oferecem essas características apenas parcialmente, então para que sejam totalmente atendidas se
faz necessário um ciclo de ensino que apresente informações relacionadas ao objetivo de ensino,
direcione as ações dos estudantes para tais objetivos, valorize e avalie suas ações, forneça feedback
e estratégias de orientação para os alunos e administre e motive todo o processo de ensino-
aprendizagem. Além disso, é necessário também que o professor apresente um alto grau de
conhecimento do assunto que esteja abordando e que haja a definição de um modelo pedagógico e
instrucional adequado (CRISPIM, ABDALLA JÚNIOR & MOLINARO, 2002).
Com o advento da Web, foi estabelecido um novo paradigma para o desenvolvimento de
Ambientes Inteligentes de Aprendizagem (AIA), tornando possível que AVAs sejam mais
personalizados, permitindo uma maior interação entre o estudante e o sistema. Um grande desafio
de pesquisa consiste no desenvolvimento de Sistemas Hipermídia Adaptativos (SHA) educacionais,
visando prover apoio personalizado ao processo de aprendizagem, sendo considerados para tal
aspectos relacionados a teorias na área de Educação e Psicologia, além da utilização de técnicas de
14
Inteligência Artificial (IA) e Hipermídia Adaptativa (GELLER, TAROUCO & FRANCO, 2004;
SANTIBAÑEZ, SAOTOME & CUNHA, 2003).
2.4 Hipermídia Adaptativa
A Hipermídia Adaptativa (HA) é uma das áreas mais recentes de pesquisa e
desenvolvimento de tecnologias educacionais, a qual tem sido tratada com grande destaque no
cenário internacional. Tem como principal objetivo ampliar a funcionalidade dos Sistemas
Hipermídia (SH) usuais a partir do estudo e desenvolvimento de sistemas, arquiteturas, métodos e
técnicas para adaptação de hiperdocumentos e hipermídia em geral ao perfil de seus usuários,
tentando antecipar suas preferências, necessidades e expectativas, para prover-lhes informações
úteis e atualizadas (LUCAS et al, 2005; PALAZZO, 2000). Neste contexto, Lima et al (2005)
afirma que interfaces de HA devem satisfazer a três critérios básicos: ser um sistema de hipertexto
ou hipermídia, possuir um modelo de usuário e ser capaz de adaptar a hipermídia do sistema
utilizando o referido modelo.
Existem diversas motivações para a necessidade de adaptação em SHs. A primeira é que os
SHs tradicionais apresentam conteúdos e ligações estáticas, não fazendo mais do que apresentar o
mesmo conteúdo e estrutura de navegação a todos os usuários. Nesse caso, as informações
disponibilizadas podem ser redundantes ou podem não ser claramente compreendidas, pois não há
garantias de que o usuário tenha acessado conteúdos prévios e necessários. Além disso, em sistemas
hipermídia convencionais é assumido que os autores, ao definirem caminhos de navegação em um
domínio, são incapazes de prever todos os caminhos possíveis para cada usuário. Com isso, acabam
por fazer suposições sobre os conhecimentos prévios do usuário ao estabelecerem ligações entre
conceitos, levando usuários facilmente à condição de desorientação no espaço de navegação e
obrigando-os a navegar somente pelos caminhos pré-estabelecidos, resultando na diminuição da
compreensão do domínio em função de caminhos de navegação não previstos. Por fim, a ajuda
navegacional por meio de mapas também é limitada nos SH tradicionais, pois estes não registram
informações provenientes da interação do usuário com o sistema, necessárias à identificação das
partes do domínio que são mais importantes para o usuário.
Assim, um SHA consiste em todo SH que reflete características do usuário, de utilização e
do ambiente para realizar a adaptação de conteúdos, estruturas de navegação e/ou apresentação de
objetos hipermídia (ARAGÃO, 2004). Combinam idéias de SHs, Sistemas de Tutoria Inteligente
(STI) e Interfaces Adaptativas, sendo especialmente aplicáveis quando existe a necessidade de
disponibilizar informações seletivas e contextuais a usuários com diferentes objetivos e níveis de
15
conhecimento. Por isso encontram-se sistemas educacionais baseados em HA sendo amplamente
utilizados no ensino, os quais vêm recebendo grande atenção da comunidade científica. Além disso,
a Hipermídia Adaptativa vem sendo aplicada também em outros tipos de sistema, entre eles
sistemas de informações pessoais e institucionais, sistemas de ajuda on-line, sistemas de
recuperação de informações e sistemas de gerência de visões personalizadas, conforme mostrado na
Figura 1 (PALAZZO, 2000; OLIVEIRA & FERNANDES, 2004).
Figura 1. Sistemas que originaram os SHAs e seus principais tipos
Fonte: Oliveira e Fernandes (2004).
Os SHA apresentam três componentes básicos em sua arquitetura que interagem entre si
(Figura 2), os quais compõem o Modelo AHAM (Adaptative Hypermedia Application Model),
conforme descrito a seguir baseado em Lima et al (2005):
• Modelo de Usuário – descreve as características do usuário do sistema, representando
seus objetivos, conhecimentos, preferências, experiência e histórico navegacional,
conforme detalhado na Seção 2.4.1. Este modelo é também chamado de Modelo do
Aluno, e mantém uma representação do estado do conhecimento do estudante no
momento em que interage com o sistema;
• Modelo de Domínio – também conhecido como Base de Conhecimento do Domínio,
este modelo contém o conhecimento sobre o domínio a ser trabalhado com o estudante.
Neste, os conteúdos encontram-se organizados de forma hierárquica, podendo estar
relacionados por meio de especificação de pré-requisitos ou inferências. Existem três
níveis de estruturação do conteúdo no Modelo de Domínio, conforme Garcindo (2002):
Conceitos Compostos – o domínio pode ser descrito em termos de conceito de alto
16
nível, podendo existir relações entre conceitos para indicar caminhos de navegação
desejáveis; Páginas – consistem em unidades de apresentação ao usuário, as quais são
construídas à parte e incluirão fragmentos de informação conforme definido pelo
Modelo de Adaptação; e Fragmentos – trata-se do nível mais inferior, o qual é
constituído de fragmentos de informação que podem ser parágrafos de texto, imagens,
vídeos, etc. Quanto à complexidade dos elementos e de suas relações, Modelos de
Domínio pode ser classificados em, conforme Vilar (2006): Modelos de Nível Um –
consistem em um conjunto independente de conceitos; Modelos de Nível Dois – são
compostos por conceitos que encontram-se relacionados uns aos outros; e Modelos de
Nível Três – apesar de possuírem apenas elementos sem uma estrutura interna
(atômicos), relacionam atributos aos seus elementos de forma a definir suas
características e diferenciá-los uns dos outros. A modelagem do domínio é de grande
valia para se obter um melhor entendimento da estrutura de informações apresentada em
um domínio instrucional (SANTIBAÑEZ, SAOTOME & CUNHA, 2003); e
• Modelo de Adaptação – utiliza o Modelo de Usuário e o Modelo de Domínio para
prover a adaptação do sistema dinamicamente, fazendo uso de diversos métodos e
técnicas que se encontram descritos na Seção 2.4.2.
Figura 2. Arquitetura básica de um SHA
Fonte: Lima et al (2005).
O Modelo AHAM é o mais conhecido e utilizado atualmente em termos de arquitetura de
SHAs. A seguir serão detalhados os modelos de usuário e de adaptação, por serem o foco de estudo
deste trabalho.
17
2.4.1 Modelo de Usuário
A partir do Modelo de Usuário, o qual representa o perfil de um usuário e funciona como
uma referência para o SHA, torna-se possível apoiar o usuário na navegação pelo sistema,
personalizando seu espaço navegacional, sugerindo links relevantes e fornecendo comentários
adaptativos para os links visíveis (CANDOTTI et al, 2006).
Este modelo é composto por dados estáticos e dinâmicos que são de fundamental
importância para a comprovação de hipóteses referentes ao conhecimento e às ações do aluno,
contendo uma representação do estado do conhecimento do aluno no momento de sua interação
com o sistema. A partir deste modelo e do conteúdo representado no Modelo de Domínio, o SHA
deve ser capaz de inferir a melhor estratégia de ação a ser adotada para cada estudante que o acessa,
sendo considerado um Modelo de Aluno realista aquele que apresenta atualização dinâmica de
dados, à medida que o desempenho do aluno é avaliado pelo sistema (VICARI & GIRAFFA, 2003).
Existem pelo menos cinco características associadas ao perfil de um usuário, as quais podem
ser consideradas para construção do modelo de usuário em uma sistema adaptativo: conhecimento,
objetivos, história, experiência e preferências. Considerando que estas características são todas
dinâmicas de algum modo, é necessário que o modelo de usuário seja continuamente ajustado para
garantir sua permanente atualização.
O conhecimento do usuário a respeito dos conteúdos representados no sistema é considerado
a característica mais importante a ser levada em conta na construção do modelo, pois praticamente
todas as técnicas de apresentação adaptativa utilizam o conhecimento do usuário como base para
adaptação do SHA. Como o conhecimento se trata de uma característica dinâmica, ou seja, passa
por constantes modificações ao longo do tempo para cada usuário, o sistema precisa ser capaz de
reconhecer essas alterações produzidas para manter o modelo adequadamente atualizado
(PALAZZO, 2000). As principais técnicas utilizadas para a modelagem do conhecimento do
usuário são as de Sobreposição Conceitual e de Estereótipos, conforme descrito a seguir, baseado
em Garcindo (2002) e Santibañes (2003):
• Sobreposição Conceitual – esta técnica tem como base a comparação do atual nível de
conhecimento apresentado pelo estudante com o conhecimento de um expert, sendo sua
parte mais crítica a da estimativa do nível de conhecimento inicial do estudante. A cada
conceito do domínio é atribuído um valor que estima o conhecimento do aluno a respeito
do assunto, tendo-se dessa forma pares conceito-valor; e
18
• Estereótipos – nesta técnica, são atribuídas as mesmas propriedades a todos os usuários
pertencentes a uma mesma classe (novato, principiante, intermédio, avançado ou
experto, por exemplo), podendo esta classificação ser realizada para cada característica
de adaptação. Alguns problemas que podem ocorrer na utilização desta técnica são a
dificuldade em enquadrar um usuário em um estereótipo e a adoção de estereótipos
muito especializados que podem se tornar obsoletos.
Os objetivos do usuário relacionam-se diretamente com a utilização do sistema como
ferramenta, sendo uma das características mais sujeitas a mudanças em um Sistema Hipermídia
Adaptativo. Conforme o tipo de aplicação, os objetivos podem ser de trabalho, aprendizado,
pesquisa ou solução de problemas. As mudanças de objetivo do usuário no sistema costumam
ocorrer com freqüência de uma sessão para outra ou até mesmo dentro de uma mesma sessão. Uma
representação interessante que costuma ser utilizada para modelar os objetivos correntes do usuário
é obtida através dos chamados pares objetivo-valor, onde o valor é normalmente a probabilidade de
que o objetivo correspondente seja o objetivo atual do usuário (GARCINDO, 2002).
A história e experiência do usuário são outros dois fatores importantes em um sistema de
HA, os quais se assemelham ao conhecimento em termos de elaboração do modelo de usuário, mas
diferem dele funcionalmente, por se tratarem de características anteriores ao ambiente hipermídia
considerado. A história do usuário consiste em toda informação relevante que está relacionada com
utilizações anteriores do sistema pelo usuário, independente dos assuntos abordados no sistema
hipermídia. Já a experiência refere-se ao domínio do usuário em relação à estrutura e navegação
dentro do SHA, o que é totalmente diferente de conhecer os assuntos tratados no sistema, afinal o
usuário pode ter total conhecimento dos assuntos abordados e desconhecer a estrutura do sistema, e
vice-versa.
Finalmente, as preferências do usuário tratam-se de personalizações que o usuário precisa
declarar ou informar indiretamente ao sistema por meio de algum tipo de feedback simples, por não
poderem ser deduzidas pelo sistema, a fim de realizar suas próprias associações de links e/ou
conteúdos e outras adaptações além das realizadas pelo sistema a partir de outras características
definidas no modelo (PALAZZO, 2000).
Segundo Bugay (2006), quando um usuário utiliza um SHA pela primeira vez, seu Modelo
de Usuário precisa ser inicializado, pois seus atributos não apresentam nenhum valor. Essa
inicialização pode ser realizada utilizando-se uma das metodologias descritas a seguir, ou a
combinação de ambas: (i) Sondagem Inicial – esta técnica é utilizada para obtenção de dados do
19
usuário e de seu conhecimento em relação ao conteúdo hipermídia, através do preenchimento de
formulários e/ou questionários. A dificuldade desta metodologia consiste na determinação da
quantidade de questões que o usuário estará disposto a responder e da quantidade necessária para
obter o nível de conhecimento do usuário, considerando que isto pode variar bastante de uma
aplicação para outra, em função de seu conteúdo; e (ii) Valores Default – consiste em inicializar o
Modelo de Usuário através do uso de estereótipos, enquadrando o novo usuário em uma
determinada classe e atribuindo-lhe as características deste estereótipo para inicialização do modelo.
Uma vez inicializado o Modelo de Usuário, seus dados deverão ser atualizados à medida
que o estudante utiliza o SHA, para que este torne-se mais compatível com o perfil do usuário.
Neste contexto, a aquisição de dados consiste no processo de coleta das diversas formas de entrada
do usuário no sistema, as quais podem variar conforme a aplicação, entre elas o clique do mouse,
digitação de textos, entrada vocal, uso de telas screen touch, controle do tempo decorrido no
processo de interação com o sistema, páginas visitadas e ações tomadas para a solução de um
problema. Através do controle desses itens, o sistema pode fazer deduções sobre o conhecimento e
os objetivos do usuário (BUGAY, 2006). As técnicas de aquisição do Modelo de Usuário podem ser
classificadas conforme descrito a seguir, baseado em Bugay (2006):
• Passiva ou Ativa – esta classificação baseia-se na participação ou não do usuário na
aquisição de dados para a construção do Modelo de Usuário. As técnicas ativas são
aquelas que interagem diretamente com o usuário para o levantamento de dados, através
de formulários online. Já as técnicas passivas baseiam-se na conclusão de observações
do comportamento do usuário no ambiente. Geralmente os sistemas de HA utilizam
tanto as técnicas ativas quanto as passivas, sendo as ativas aplicadas na inicialização do
Modelo de Usuário e as passivas na atualização e aprimoramento do modelo durante a
interação do usuário com o ambiente;
• Automática ou Determinada pelo Usuário – esta caracterização está diretamente
relacionada a quem dá início ao processo de aquisição de dados. As técnicas
determinadas pelo usuário consistem naquelas em que o usuário decide o momento em
que deve ser realizada a atualização do modelo, ao passo que as técnicas automáticas são
aquelas em que o usuário não apresenta influência nesse processo de atualização. Nesta
classificação, as técnicas determinadas pelo usuário tem sido mais freqüentemente
utilizadas nos sistemas;
20
• Direta ou Indireta – as técnicas de aquisição diretas são aquelas em que a atualização
do Modelo de Usuário baseia-se diretamente em informações de retorno do usuário. Já
as técnicas indiretas constroem o modelo baseando-se em resultados indiretos desse
retorno, geralmente obtidos através de regras de inferência. Um dos melhores exemplos
do uso de regras de inferência consiste na definição de estereótipos em um sistema;
• Explícita ou Implícita – esta classificação depende do tipo de retorno do usuário no
sistema. As técnicas explícitas consistem naquelas em que o usuário fornece os dados
conscientemente, enquanto que as técnicas implícitas baseiam-se na observação do
comportamento do usuário no sistema para a aquisição de dados, independente de seu
consentimento.
• Lógica ou Plausível – essas técnicas estão relacionadas como grau de plausibilidade dos
resultados. As técnicas plausíveis requerem a representação explícita da incerteza no
Modelo de Usuário, necessitando também de mecanismos que mantenham a consistência
no modelo. A manipulação dessas incertezas pode ser gerenciada com a utilização das
Redes Bayesianas. Já as técnicas lógicas são bastante utilizadas em modelos de
sobreposição; e
• Online ou Offline – esta classificação relaciona-se ao momento em que é realizada a
aquisição de dados. A maioria das técnicas é aplicada quando o usuário está online, mas
para a criação de estereótipos é possível obter informações da base de dados quando o
usuário está offline.
O processo de aquisição de dados sobre o usuário é constituído basicamente de três fases
distintas: coleta de dados, diagnóstico e consistência dos dados. Os principais problemas
relacionados à fase de coleta de dados consistem na confiabilidade, na quantidade disponível e no
nível de detalhe desses dados, onde a quantidade dependerá da complexidade do Modelo de Usuário
definido pelo projetista do sistema. A fase de diagnóstico tem o propósito de detectar falhas que
podem ocorrer durante a coleta de dados, consistindo geralmente de duas etapas: a transformação, a
qual tem como objetivo separar do total de dados coletados os que são relevantes para definir as
habilidades do usuário no modelo, e a avaliação, a qual se refere ao processo de comparação do
conhecimento ou comportamento do usuário com a concepção de conhecimento ou comportamento
ideal definido pelo projetista do sistema. Quanto à terceira fase, ao serem incorporados novos dados
ao Modelo de Usuário podem ser geradas inconsistências com os dados já existentes. Com isso
podem ocorrer conflitos, que ao serem detectados em um sistema com consistência de dados,
21
poderão ser solucionados a partir da definição da hipótese a ser utilizada para tal (BUGAY, 2006).
O Modelo de Usuário exerce um papel fundamental em um SHA, pois é através deste
componente que o sistema poderá definir como será realizada a adaptação de conteúdos e estruturas
de navegação aos seus usuários. Entretanto, a criação do modelo por si só não atenderia às
necessidades de adaptação de um sistema de HA em tempo de execução, pelo fato de o modelo não
se auto-atualizar. É necessário que haja um mecanismo de adaptação responsável por realizar a
interação entre a interface do sistema e o Modelo de Usuário, promovendo a adaptação em tempo
de execução a cada passo dado pelo usuário em sua navegação pelo ambiente, de acordo com novas
evidências e dados gerados, facilitando sua utilização. Para que isso ocorra, será aplicada uma
técnica que faz uso de cálculos probabilísticos para manter o modelo atualizado durante a interação
do usuário com o sistema, denominada Redes Bayesianas (SILVA, 2005), a qual será abordada na
Seção 2.5 deste trabalho.
2.4.2 Modelo de Adaptação
O Modelo de Adaptação consiste no componente central da arquitetura de um SHA, o qual
conduz todo o processo de adaptação no sistema e mantém o Modelo de Usuário atualizado, a partir
da captação de dados do usuário e de suas interações com o ambiente hipermídia. Além disso, este
modelo recupera os dados atualizados do Modelo de Usuário e com isso promove a adaptação da
interface (GARCINDO, 2002).
Seu mecanismo de adaptação de conteúdo e navegação baseia-se em um grupo de regras,
acionadas pela interação do usuário com o sistema, sendo estas as responsáveis pela interação entre
o Modelo de Usuário, o Modelo de Domínio e a interface, e por determinarem o comportamento do
SHA. São definidos dois tipos de regras: as genéricas, as quais são aplicadas a todo o domínio e
geralmente constituem regras do sistema, e as específicas, aplicadas somente a uma determinada
parte do domínio e que normalmente são definidas pelo professor autor (BUGAY, 2006). Essas
regras podem ser acionadas em duas diferentes fases de execução para atualização do Modelo de
Usuário: na fase pré, a qual consiste na execução da regra antes da geração da página, ou na fase
pós, onde a regra é executada após a geração da página. Isso se deve ao fato de poder ser necessário
realizar primeiro a adaptação e gerar a apresentação de uma página com os dados atuais do modelo
para só depois atualizá-lo para um novo estado (caso em que são executadas regras de fase pré), ou
primeiro atualizar o Modelo de Usuário para então aplicar a regra de adaptação (sendo neste caso a
execução de uma regra de fase pós).
Uma regra de adaptação genérica é uma tupla <R, PH, PR>, onde R é uma regra disparada
22
por um determinado evento, PH é a fase de execução da regra e PR é o propagador booleano que
indica se a regra tem permissão ou não para desencadear a execução de outras regras (BUGAY,
2006). Essas regras utilizam variáveis que representam conceitos e relações entre eles, podendo
existir condições de pré-requisito que deverão ser mapeadas pelo professor autor no Modelo de
Domínio (GARCINDO, 2002).
Já uma regra de adaptação específica consiste em uma tupla <R, SC, PH, PR>, onde R é
uma regra acionada a partir da ocorrência de um evento, SC constitui um grupo de componentes de
conceitos utilizados na regra, PH é a fase de execução da regra e PR trata-se de um propagador
booleano com a mesma função do utilizado em uma regra de adaptação geral. Regras de adaptação
específicas são tipicamente aplicadas para a criação de exceções às regras gerais e podem ser
utilizadas para execução de adaptações baseadas em conceitos para os quais não há relacionamento
definido no Modelo de Domínio, possuindo sempre maior prioridade em relação às regras gerais ao
ocorrerem conflitos (BUGAY, 2006; GARCINDO, 2002).
Candotti et al (2006) afirma que para realizar a adaptação em SHAs são utilizadas diversas
técnicas e métodos adaptativos. As técnicas adaptativas integram o nível de implementação de um
SHA, onde cada uma pode ser caracterizada por um tipo específico de representação do
conhecimento ou por um algoritmo de adaptação específico. Já os métodos, são definidos como
sendo generalizações das técnicas atualmente existentes e cada um baseia-se em uma clara idéia de
adaptação que pode ser representada em nível conceitual. Além dos aspectos a serem considerados
na adaptação, também se faz necessário saber quais características do sistema poderão ser adaptadas
a diferentes perfis de usuário. Em um sistema de HA podem ser realizadas a adaptação em nível de
conteúdo, a qual consiste na adaptação de conteúdos de páginas regulares realizada através de
técnicas de apresentação adaptativa, e a adaptação em nível de links, onde são adaptados links de
páginas regulares e de índice a partir de técnicas de suporte adaptativo à navegação. Portanto, as
tecnologias de adaptação aplicadas na Hipermídia Adaptativa podem ser classificadas em
Apresentação Adaptativa e Navegação Adaptativa, sendo que a primeira consiste na apresentação
adaptativa de textos e de itens multimídia, e a segunda consiste na orientação direta, classificação,
ocultação e anotação de links, além da adaptação de mapas de navegação, conforme será visto na
seção a seguir.
2.4.2.1 Técnicas e Métodos de Adaptação
A partir do início da década de 90 diversos sistemas baseados em HA têm sido
desenvolvidos e aplicados a diferentes áreas, implementando uma grande variedade de técnicas e
23
métodos de adaptação (PALAZZO, 2000). Nesta seção serão explanados métodos e técnicas que
vem sendo utilizados na apresentação e navegação adaptativas em SHAs.
Apresentação Adaptativa
A apresentação adaptativa refere-se à adaptação de conteúdo com base no perfil de um
determinado usuário que acessa o ambiente. Assim, o sistema pode inicialmente exibir informações
básicas acompanhadas de algumas orientações, passando a realizar a apresentação de informações
em nível cada vez mais aprofundado e detalhado à medida que o usuário torna-se mais qualificado
no sistema. Neste contexto, existem técnicas e métodos para a apresentação adaptativa tanto de
textos como também de objetos multimídia (PALAZZO, 2000). Na apresentação de textos, o espaço
de adaptação consiste em possíveis adaptações que podem ser realizadas no texto antes deste ser
apresentado ao usuário; já na apresentação de objetos multimídia, a adaptação é realizada através da
seleção dos objetos a serem exibidos no ambiente. Dentre os métodos de apresentação adaptativa
existentes tem-se, baseado em Palazzo (2000):
• Explicação Adicional (EA) – trata-se de um dos métodos mais conhecidos para
adaptação de conteúdos. Seu objetivo consiste em ocultar no ambiente partes de
informações referentes a um determinado conceito que não são relevantes ao nível de
conhecimento, objetivos ou preferências do estudante. Assim, informações adicionais
podem ser disponibilizadas para uma certa classe de usuários e serem ocultadas para as
demais;
• Explicação Requerida (ER) – este método pode ser aplicado para modificação de
informações apresentadas a um estudante conforme o seu nível de conhecimento a
respeito dos conceitos relacionados. O ER induz uma ordenação de conteúdos a serem
exibidos ao estudante, onde as informações primeiramente apresentadas são pré-
requisito para as seguintes;
• Explicação Comparativa (EC) – assim como o ER, este método também pode ser
utilizado para adaptação de informações em função do nível de conhecimento do
estudante. O EC baseia-se na similaridade existente entre dois conceitos, ou seja, se
existir um conceito similar ao que está sendo apresentado ao estudante, este visualiza
uma explicação comparativa onde são realçadas as semelhanças e diferenças existentes
entre os dois conceitos. Em termos de aplicação, este método apresenta particular
eficiência quando utilizado no domínio de linguagens de programação;
24
• Explicação Variante (EV) – o EV considera que nem sempre exibir ou ocultar partes de
informações é o suficiente para realizar a adaptação de conteúdos ao usuário, já que
usuários diferentes podem necessitar de informações essencialmente diferentes. Com
este método, um ambiente pode armazenar diversas explicações variantes para
determinados conteúdos de uma página e apresentar ao estudante aquelas que
correspondem ao seu modelo de usuário; e
• Classificação de Fragmentos (CF) – consiste em um método que considera o nível de
conhecimento e a experiência do usuário ao ordenar fragmentos de informação
relacionados aos conteúdos, onde as informações mais relevantes para o usuário, com
base em seu modelo, são apresentadas antes das demais.
Em relação as técnicas de apresentação adaptativa, tem-se como principais e abordadas no
presente trabalho a do Texto Condicional (TC), Stretchtext, Fragmento Variante (FV), Página
Variante (PV) e Frames, conforme descrito a seguir (PALAZZO, 2000):
• Texto Condicional (TC) – trata-se de uma técnica com a qual é possível dividir a
informação em diversas porções de texto e associar cada porção a uma ou mais
condições relacionadas ao nível de conhecimento do estudante. Assim, o estudante
obtém somente porções de informação cujas condições foram satisfeitas, com base em
seu modelo de usuário. Apesar de esta ser uma técnica de baixo nível, é bastante flexível
e permite a implementação de todos os métodos de adaptação citados anteriormente,
exceto a CF;
• Stretchtext – assim como a TC, esta técnica de nível mais alto também permite a
exibição ou ocultação condicional de porções de informação conforme o nível de
conhecimento do usuário, baseando-se no stretchtext, um tipo especial de hipertexto no
qual os links podem ser expandidos aos conteúdos ou concentrados em uma palavra-
chave. A proposta desta técnica é apresentar ao estudante páginas nas quais as
informações relevantes encontrem-se expandidas e as irrelevantes sejam representadas
por uma palavra ou frase, conforme o seu nível de conhecimento refletido pelo modelo
de usuário;
• Página Variante (PV) – considerada a mais simples das técnicas de apresentação
adaptativa, a PV consiste em manter páginas alternativas para cada conteúdo, onde os
conceitos são explanados de formas diferentes, sendo cada uma delas adaptada a uma
determinada classe de usuários. Esta técnica permite a implementação do método EV;
25
• Fragmento Variante (FV) – assim como a PV, esta técnica também permite a
implementação do método EV, porém em um nível maior de fragmentação. Através
dessa técnica cada conceito apresentado em uma página pode possuir diversos
fragmentos variantes, e a página é instanciada com a combinação de fragmentos que
melhor corresponde ao conhecimento do estudante; e
• Frames – esta técnica é considerada a mais eficiente de todas as técnicas de
apresentação adaptativa, através da qual todas as informações relacionadas a um
conteúdo são representadas na forma de um frame, o qual consiste em uma estrutura de
atributos e valores a ele associados e armazenados em slots, sendo que estes podem
conter diversas EV de conceitos, links para outros frames, exemplos, entre outros. Além
disso, são empregadas regras especiais de apresentação, com o intuito de selecionar
quais os slots de um frame e em que ordem específica deverão ser apresentados ao
estudante.
Em um sistema hipermídia adaptativo é possível associar diferentes métodos e técnicas de
apresentação adaptativa (PALAZZO, 2000). Na Tabela 1 é possível visualizar possíveis
combinações de métodos e técnicas descritos nesta seção, as quais foram implementadas em
diferentes SHA.
Tabela 1. Métodos e Técnicas de Apresentação Adaptativa em Sistemas de HA
Técnicas Métodos
Texto Condicional Stretchtext Fragmentos Variantes
Páginas Variantes
Frames
Explicações Adicionais
C-Book; ITEM/IP; Lisp-Critic
MetaDoc; KN-AHS; PUSH
EPIAIM;
PUSH
Explicações Requeridas
C-Book; ITEM/IP; Lisp-Critic
MetaDoc; KN-AHS; PUSH
EPIAIM;
PUSH
Explicações Comparativas
C-Book; ITEM/IP; Lisp-Critic
MetaDoc; KN-AHS; PUSH
EPIAIM;
PUSH
Explicações Variantes
C-Book Anatom-Tutor;
Lisp-Critic
Anatom-Tutor; C-Book; EPIAIM
Hypadapter
Classificação de Fragmentos
EPIAIM;
Hypadapter
Fonte: Palazzo (2000).
26
Navegação Adaptativa
A navegação adaptativa tem por objetivo guiar os estudantes pelo hiperespaço através da
adaptação de links apresentados em um ambiente hipermídia aos objetivos, nível de conhecimento e
outras particularidades do estudante, por meio da aplicação de diferentes métodos e técnicas
(PALAZZO, 2000). Neste contexto, Garcindo (2002) classifica os links em quatro classes:
• Links locais, não contextuais – tratam-se de links que não apresentam relação com o
conteúdo da página em que se encontram disponibilizados, geralmente apresentados na
forma de botões, listas ou menus pop-up, os quais podem ser classificados, ocultos ou
anotados;
• Links contextuais ou “hipertexto verdadeiro” – consistem em links diretamente
relacionados ao conteúdo da página, normalmente representados no texto por palavras,
frases ou imagens, os quais podem ser anotados mas não podem ser classificados ou
ocultos;
• Links para índices e tabelas de conteúdos – são links aplicados a páginas que contém
índices e tabelas de conteúdo, sendo assumidos como não-contextuais a menos que
sejam apresentados sob forma de imagem; e
• Links para mapas locais e globais – tratam-se de links utilizados em mapas de
navegação, que consistem em representações gráficas de um hiperespaço ou parte dele
como uma rede de nós conectados por setas, através dos quais o usuário pode navegar
diretamente.
Os métodos de navegação adaptativa podem ser classificados em Condução Global (CG),
Condução Local (CL), Suporte à Orientação Local (OL) e Orientação Global (OG) (PALAZZO,
2000). A CG consiste no objetivo primário do suporte à navegação adaptativa em sistemas de
recuperação de informações hipermídia e é também de grande importância em sistemas de ajuda
online e em sistemas de informação, ocorrendo quando os usuários de um ambiente apresentam
algum objetivo global de informação que se encontra em uma ou mais páginas distribuídas pelo
hiperespaço e são conduzidos para o seu alcance. Assim, o objetivo deste método é guiar o usuário
para que este encontre o caminho mais curto até a informação desejada, sendo o modo mais direto
para tal sugerir ao usuário os links mais apropriados ao longo da navegação. Em sistemas
educacionais ocorre um caso específico de CG. Neste caso, o objetivo global do estudante é o
aprendizado, o qual difere dos objetivos de informação, considerando a especificidade e
27
profundidade do conhecimento sobre as informações. Assim, em sistemas educacionais adaptativos
a condução global deve ser oferecida considerando a dinâmica de aprendizado de cada usuário,
adaptando tópicos com base no feedback fornecido pelo usuário (BUGAY, 2006).
O método CL é semelhante ao método CG, porém apresenta menos abrangência, tendo
como objetivo auxiliar o usuário quanto ao próximo passo a ser tomado na navegação pelo
hiperespaço, sendo-lhe oferecidos links relevantes que poderão ser utilizados a partir da página em
que o usuário se encontra atualmente, conforme suas preferências, conhecimento e experiência
(GARCINDO, 2002; BUGAY, 2006).
O Suporte à OL visa orientar o usuário quanto ao seu posicionamento no hipertexto local.
Em sistemas hipermídia adaptativos isso é geralmente implementado de duas formas: através do
fornecimento de informação adicional sobre as páginas que podem ser acessadas a partir da atual,
ou limitando as oportunidades de navegação a fim de evitar a sobrecarga cognitiva, fenômeno que
pode impedir ou dificultar uma tomada de decisão segura na navegação pelo hiperespaço, em
função do excesso de informações. Esses métodos baseiam-se na técnica da Ocultação Adaptativa
(PALAZZO, 2000), a qual será melhor descrita adiante. Em sistemas educacionais existem dois
métodos de OL que são particularmente empregados: o primeiro consiste em ocultar o acesso a
páginas que o usuário ainda não está preparado para aprender; o segundo, específico para ambientes
educacionais adaptativos, consiste em ocultar links para páginas que não pertencem aos objetivos
educacionais do conteúdo que está sendo atualmente aprendido pelo estudante (GARCINDO,
2002).
O objetivo do método de OG consiste em auxiliar o usuário no conhecimento da estrutura do
domínio de navegação do sistema, aumentando gradativamente a quantidade de links visíveis
conforme aumenta sua experiência no hiperespaço. Em sistemas hipermídia não-adaptativos essa
orientação é obtida através de marcos visuais e mapas globais que auxiliam o usuário a identificar a
sua localização em relação ao contexto global. Já os SHA oferecem maior suporte através da
aplicação das técnicas de Ocultação Adaptativa e Anotação Adaptativa, contemplando o modelo do
usuário independente de sua posição no ambiente (KOCH, 2000 apud BUGAY, 2006).
As técnicas utilizadas na navegação adaptativa permitem a manipulação de âncoras e links,
com o intuito de adaptar dinamicamente a navegação ao usuário conforme suas características
definidas no modelo de usuário. Essas técnicas são classificadas em Orientação Direta (OD),
Classificação Adaptativa (CA), Ocultação Adaptativa (OA), Anotação Adaptativa (AA) e Mapas
Adaptativos (MA), conforme descrito a seguir, baseado em Bugay (2006):
28
• Orientação Direta (OD) – o objetivo desta técnica é definir qual o melhor caminho a
ser seguido a partir de cada página em que o usuário se encontre no ambiente,
disponibilizando um link para a página que o sistema julgar mais apropriada para o
usuário seguir. Para isso, o sistema pode destacar visualmente um link ou apresentar um
link dinâmico adicional que leva à melhor página selecionada pelo sistema;
• Classificação Adaptativa (CA) – esta técnica define a ordem em que os links devem ser
apresentados. Com esta técnica, o sistema exibe uma lista de links em ordem decrescente
de relevância ao usuário, algo que vem sendo amplamente utilizado em recuperação de
informações em sistemas de documentação online e hipermídia para o ensino. Porém,
esta técnica funciona bem apenas em links não contextuais. Além disso, sua
desvantagem é que cada vez que o usuário acessar uma mesma página, a ordem do links
pode ser modificada em função do estado atual do modelo de usuário;
• Ocultação Adaptativa (OA) – o uso desta técnica visa definir quais links não deverão
ser apresentados ao estudante, permitindo reduzir sua carga cognitiva ao evitar um
excesso de links disponíveis no hiperespaço. Assim, o SHA oculta links de informações
que não são relevantes, desativando o link de forma a apresentar um texto comum. Esta
técnica pode ser aplicada tanto a links contextuais como a não contextuais, índices e
mapas, produzindo uma apresentação mais estável do que a Classificação Adaptativa;
• Anotação Adaptativa (AA) – nesta técnica os links são comentados para indicar sua
relevância, a partir de aspectos visíveis diferentes apresentados pelas âncoras. A
anotação de um link pode ser feita sob forma de texto ou indicadores visuais, tais como
ícones, cores ou tamanho de caracteres, sendo bastante utilizada a anotação de “sinal de
trânsito”, onde ícones em vermelho, amarelo e verde são apresentados ao lado de links
para indicar seu grau de conveniência; e
• Mapas Adaptativos (MA) – consiste na adaptação de mapas de hipermídia global e
local apresentados ao usuário, aplicada a visualização gráfica da estrutura de navegação
(links). Assim, um mapa pode ser filtrado adaptativamente para disponibilizar uma
estrutura manejável de partes do hiperdocumento julgadas relevantes ao usuário.
Palazzo (2000) afirma que as técnicas de navegação adaptativa descritas nesta seção
consistem nas técnicas primárias aplicadas neste tipo de adaptação, sendo perfeitamente possível
combiná-las, por não serem mutuamente exclusivas ou contraditórias. Em particular, a técnica da
Orientação Direta pode ser empregada em combinação com qualquer outra das técnicas explanadas
29
nesta seção. Na Tabela 2 apresentada a seguir, apresenta-se uma visão do relacionamento existente
entre métodos e técnicas em diversos sistemas hipermídia adaptativos sob o ponto de vista da
navegação adaptativa.
Tabela 2. Métodos e Técnicas de Navegação Adaptativa em Sistemas de HA
Técnicas Métodos
Orientação Direta
Classificação Adaptativa
Ocultação Adaptativa
Anotação Adaptativa
Mapas Adaptativos
Condução Global WebWatcher;
ITEM/IP; HYPERFLEX
HyperMan; HYPERFLEX
Condução Local HyperTutor HyperMan; Hypadapter;
HYPERFLEX
Hypadapter; PUSH
ISIS-Tutor; ELM-ART
Hypercase
Orientação Local (Conhecimento)
Hypadapter HyperTutor; Hypadapter; ISIS-Tutor
ISIS-Tutor; ELM-ART; ITEM/PG
Orientação Local (Objetivos)
Hynecosum; HyPlan;
ISIS-Tutor; PUSH;
SYPROS
ISIS-Tutor; ELM-ART; ITEM/PG
Hypercase
Orientação Global
Hynecosum; HyperTutor; ISIS-Tutor; SYPROS
ISIS-Tutor; ELM-ART; ITEM/PG
Hypercase
Fonte: Palazzo (2000).
2.5 Aplicação de Redes Bayesianas
Uma abordagem bastante aplicada no tratamento da incerteza consiste no cálculo de
probabilidades. Nessa abordagem, o raciocínio baseia-se na realização de inferências probabilís-
ticas, ou seja, no cálculo da probabilidade condicional de um evento com base em todas as
evidências disponíveis a partir da aplicação do Teorema de Bayes (LADEIRA, VICARI &
COELHO, 1999), nas chamadas Redes Bayesianas.
Uma Rede Bayesiana (RB) consiste em uma técnica gráfica de modelagem probabilística do
conhecimento, a qual permite realizar deduções diante das incertezas através da representação
gráfica de relações de causalidade entre variáveis pertencentes ao domínio do problema (MILHO &
FRED, 2002), conforme será melhor detalhado na Seção 2.5.3.
Aplicando-se a Teoria da Probabilidade (TP), é possível determinar as chances de um
determinado evento ocorrer, e de como combinações de eventos podem se influenciar mutuamente
(LUGER, 2004). Na seção a seguir serão abordados conceitos básicos de probabilidade, com o
intuito de introduzir conceitos relevantes ao estudo das Redes Bayesianas.
30
2.5.1 Teoria da Probabilidade
A TP permite mensurar incertezas anteriormente ao conhecimento de eventos a partir da
atribuição de um valor no intervalo [0,1], o qual representa a probabilidade de ocorrência de um
determinado evento. O conjunto de todos os eventos simples de uma experiência aleatória é
representado pelo espaço amostral S. Tomando como exemplo o lançamento de uma moeda tem-se
S = {c,k}, para c = cara e k = coroa onde, não sendo viável predizer com certeza qual será o
resultado, é possível medir a chance de ocorrer cara ou coroa antes de ser realizado o lançamento.
Assim, entende-se por experiência aleatória as situações cujos resultados são imprevisíveis e
mutuamente excludentes, ou seja, a probabilidade da intersecção entre dois conjuntos é igual à zero
(TIBIRIÇÁ, 2005). Para uma melhor compreensão dos conceitos que se seguirão, se faz necessária
a apresentação das seguintes definições, conforme Morettin (1999) e Tibiriçá (2005): experimento
é todo processo que permite ao pesquisador realizar observações; evento trata-se de uma coleção de
resultados provenientes de um experimento; evento simples é um evento que não comporta mais
qualquer decomposição; espaço amostral consiste no conjunto de todos os eventos simples
possíveis de um experimento; e variável aleatória consiste na função que associa um único número
real a todo evento pertencente a uma partição do espaço amostral.
Considerando um espaço amostral X, onde X = {X1, X2, ..., Xn}, a probabilidade de que o
evento xi ocorra é denotada por P(Xi). Neste contexto, é necessário também observar algumas regras
da TP, as quais devem ser respeitadas para sua adequada aplicação no tratamento da incerteza.
Considerando um experimento ε e um espaço amostral S associado a ε, a cada evento A associa-se
um número real representado por P(A) e denominado probabilidade de A, o qual deve satisfazer as
seguintes propriedades, conforme Tibiriçá (2005):
1. 0 ≤ P(A) ≤ 1, onde 0 significa que o evento não ocorrerá e 1 denota que o evento deve
ocorrer;
2. P(S) = 1, ou seja, algum dos eventos do conjunto ocorrerá, só não se sabe qual;
3. Se A e B forem eventos mutuamente exclusivos, tem-se P(A ∪∪∪∪ B) = P(A) + P(B);
4. P(Ø) = 0; e
5. P(A) + P(Ā) = 1.
A probabilidade a priori de um evento consiste na probabilidade atribuída a um evento na
ausência de conhecimento que suporte a sua ocorrência ou ausência, ou seja, é a probabilidade de
um evento anterior a qualquer evidência, a qual é simbolizada por P(evento) (LUGER, 2004).
31
Considerando um espaço amostral finito S = {a1, a2, ..., an}, seus pontos amostrais ai (i = 1, 2, ..., n)
são considerados equiprováveis, isto é, podem apresentar a mesma probabilidade de ocorrer. Assim,
tem-se que todo subconjunto A contido em S é um evento, cuja probabilidade é dada pelo quociente
entre o número de casos favoráveis ao evento A, aqui chamado de m, e o número total de casos
possíveis do espaço amostral S, representado por n, conforme expresso pela Equação 1 (LUNA,
2004; TIBIRIÇÁ, 2005):
Equação 1
A probabilidade a posteriori consiste na probabilidade atribuída a um determinado evento
com base em alguma evidência, denotada por P(evento|evidência) (LUGER, 2004). Considerando
os eventos A e B pertencentes ao espaço amostral S, a probabilidade de que o evento A ocorra, dado
que o evento B ocorre, é denominada probabilidade de A dado B, a qual é dada pela Equação 2,
conforme Orlandeli (2005):
Equação 2
Onde:
• P(A | B) consiste na probabilidade de A dada a ocorrência de B;
• P(B) é a probabilidade a priori de B, desde que essa probabilidade seja diferente de 0
(zero);
Segundo Orlandeli (2005), aplicando-se a regra do produto na Equação 2, obtém-se a
equação reescrita e expressa na Equação 3. Da mesma forma, considerando a aplicação da regra do
produto para a probabilidade condicional de B dado A, P(B | A), e que a intersecção probabilística é
comutativa, chega-se à Equação 4.
Equação 3
Equação 4
Assim, ao ser realizada a substituição da Equação 4 na Equação 2 obtém-se a Equação 5,
denominada Teorema de Bayes, conforme detalhado na seção a seguir.
32
2.5.2 Teorema de Bayes
Conforme Luna (2004), o Teorema de Bayes é dado pela equação a seguir, também
chamada de Fórmula da Inversão:
Equação 5
Onde P(A) é a probabilidade a priori de A; P(B) é um fator de normalização; P(A | B) é a
probabilidade a posteriori de A; e P(B | A) é a verossimilhança da evidência B.
Tibiriçá (2005) afirma ser necessário generalizar o teorema (Equação 5) para que seja
possível trabalhar com m eventos e n evidências, de forma a simular a situação que é normalmente
encontrada em problemas do mundo real. Considerando que as evidências B1, ..., Bn sejam
independentes sob um evento A, tem-se o exposto na Equação 6:
Equação 6
As probabilidades Bayesianas consideram as probabilidades como subjetivas e associadas ao
conhecimento pessoal dos indivíduos, tendo a vantagem de não ser necessário relacionar
experimentos para estimar a probabilidade associada a cada evento. Assim, no modelo Bayesiano, a
probabilidade de um evento é tida como um grau de crença na probabilidade de que um evento
ocorra (ORLANDELI, 2005).
Existem casos em que se faz necessário calcular a probabilidade de um determinado evento
a partir da ocorrência de outros eventos. O Teorema de Bayes é especificamente de grande utilidade
no cálculo de probabilidades condicionais, consistindo em um método quantitativo para a revisão de
probabilidades conhecidas com base em uma nova informação amostral. Trata-se de um teorema
fundamental para a análise de um conjunto de informações disponíveis e obtenção de uma
conclusão objetiva, expressa numericamente (TIBIRIÇÁ, 2005).
As probabilidades condicionais representam conhecimento de causa e efeito, sendo possível
estimar através delas a probabilidade de que uma causa esteja presente com base na presença de
alguns efeitos. Para que seja possível realizar a análise probabilística de um determinado domínio,
considera-se necessário: (i) especificar o conjunto de variáveis aleatórias que representam todas as
33
proposições consideradas relevantes ao domínio a ser modelado e (ii) especificar a matriz de
probabilidade conjunta para todas essas variáveis.
A partir desta matriz e do Teorema de Bayes, é possível obter todas as probabilidades
condicionais que interessam. Porém, pode ser inviável especificar a matriz de probabilidade
conjunta (MPC)3, já que na maioria das vezes esta conterá uma grande quantidade de elementos,
isto é, informações específicas de um domínio. Uma forma de se resolver problemas como este é
recorrer às informações de causa e efeito relacionadas ao domínio a ser modelado, as quais tornam
possível deduzir independências entre proposições com base nas relações de causalidade, reduzindo
desta forma a necessidade de informações. Uma alternativa para o tratamento das informações de
causa e efeito consiste na utilização das Redes Bayesianas (ORLANDELI, 2005).
2.5.3 Redes Bayesianas
Uma Rede Bayesiana é representada por um grafo direcionado acíclico, contendo nós que
representam variáveis aleatórias e de arcos que os conectam representando as relações de
dependência, onde cada variável aleatória possui um conjunto limitado de estados mutuamente
exclusivos. Além disso, é importante observar que para cada variável A que possui como pais
variáveis B1, ..., Bn existe uma tabela de probabilidades condicionais4 P(A| B1, ..., Bn), e se A não
possuir pais, a tabela é reduzida a uma probabilidade incondicional P(A) (MARQUES & DUTRA,
1999). Dentre os motivos para o uso de Redes Bayesianas, Luna (2004) enumera os seguintes: (i) a
RB permite a expressão de assertivas de independência de forma visual e de fácil percepção; (ii)
uma RB representa e armazena uma distribuição conjunta de forma econômica, explorando a
difusão de relacionamentos entre as variáveis; e (iii) uma RB torna o processo de inferência mais
eficiente computacionalmente.
As Redes Bayesianas podem ser representadas por três estruturas gerais, a Ligação
Divergente, Ligação Convergente e Ligação em Série, conforme apresentado na Figura 4. Uma
ligação divergente descreve o caso em que a variável V1 é uma evidência para V2 e V3, o que as
torna condicionalmente independentes dado V1. Na ligação convergente, se nada é conhecido sobre
V3 exceto que pode ser inferido com base em V1 ou V2, então estes são ditos independentes, isto é,
a evidência de um deles não influencia a certeza de outros. Finalmente, a ligação em série
3 Representa a descrição completa de um domínio de problema. 4 Constitui uma representação distribuída da MPC.
34
representa o caso em que V1 influencia a certeza em V2, que por sua vez exerce influência sobre
V3 (RABENSCHLAG, 2005).
Figura 3. Estruturas gerais de uma Rede Bayesiana
Fonte: Rabenschlag (2005).
Uma RB possui dois componentes principais: uma estrutura (S), a qual define o
relacionamento qualitativo causal entre os nós, e parâmetros numéricos (θ), os quais identificam a
relação probabilística causal entre os nós e a estrutura. Juntos definem uma distribuição conjunta de
probabilidade P para um conjunto de variáveis aleatórias X, a qual é dada pela Equação 7, tal que
(LUNA, 2004): os nós de S se encontram em uma relação 1-1 com as variáveis em X; cada variável
xi denota uma variável em X e corresponde a um nó em S; e Pai denota os nós pais de xi e também
as variáveis correspondentes a esses pais.
Equação 7
Onde xi é uma instância de X; e pai é uma instância de Pai e pai ⊂⊂⊂⊂ {x1, x2, ..., xi - 1}.
Uma vez definida a topologia de uma rede bayesiana, é necessário definir a tabela de
probabilidades condicionais (TPC) para cada nó, onde cada linha da tabela contém uma
probabilidade a posteriori para cada caso condicional5 proveniente dos nós pais. Todas as entradas
da matriz de probabilidade conjunta podem ser calculadas a partir de informações disponíveis na
rede bayesiana, sendo que o valor de cada entrada pode ser calculado a partir da Equação 7. Dessa
5 Trata-se de uma possível combinação de valores para os nós pais.
35
forma, cada entrada da matriz é representada pelo produto dos elementos adequados das TPCs
(RUSSEL & NORVIG, 2004).
A construção de uma RB requer muito cuidado para que a MPC resultante seja uma
representação correta do problema. Uma rede bayesiana representa corretamente um domínio se, e
somente se, cada nó for condicionalmente independente6 de seus predecessores, dado um nó pai.
Assim, para que uma rede seja construída de forma a representar devidamente o domínio do
problema, é necessário que esta propriedade seja satisfeita para cada nó da rede. Portanto, o
seguinte procedimento pode ser utilizado para a construção de Redes Bayesianas, baseado em
Marques e Dutra (1999):
1. Definir um conjunto de variáveis xi que descrevam o domínio do problema;
2. Estabelecer uma ordem para as variáveis;
3. Enquanto existirem variáveis: a) escolher uma variável xi e adicionar um nó na rede; b)
determinar os nós pais dentre os nós que se encontram na rede; e c) definir a tabela de
probabilidades condicionais para xi.
As Redes Bayesianas permitem a análise de grandes quantidades de dados, por isso são
utilizadas para extração de conhecimentos úteis em tomadas de decisão, controle ou previsão do
comportamento de um sistema e diagnóstico das causas de um fenômeno, entre outros. Além disso,
são aplicadas em diversos domínios, entre eles o da educação, saúde, indústria, computação e redes,
marketing, finanças e gestão. Conforme o tipo de aplicação, alguns aspectos tornam as RBs
preferíveis a outras técnicas de IA, conforme explanado a seguir baseado em Luna (2004):
• Aquisição de conhecimentos – trata-se da possibilidade que as RBs apresentam de unir
em um mesmo modelo conhecimentos de diversas naturezas, tais como dados históricos
ou empíricos, experiências expressas sob a forma de regras lógicas, equações,
estatísticas ou probabilidades subjetivas, e observações;
• Representação de conhecimentos – a representação gráfica de uma RB é explícita,
intuitiva e compreensível a um indivíduo não especialista, o que torna mais fácil a
validação do modelo, suas eventuais evoluções e principalmente sua utilização;
6 A independência condicional formaliza a noção qualitativa de irrelevância. Se P(A | B,C) = P(A | C), então A e B são condicionalmente independentes dada a ocorrência de C.
36
• Utilização de conhecimentos – uma Rede Bayesiana é multifuncional, ou seja, é
possível utilizar o mesmo modelo para a avaliar, prever, diagnosticar ou otimizar
decisões; e
• Qualidade dos programas disponíveis – atualmente existem diversos programas que
permitem aproveitar e tratar as Redes Bayesianas, os quais apresentam funcionalidades
como aprendizagem de probabilidades, aprendizagem da estrutura da RB, possibilidade
de integração de variáveis contínuas, variáveis de utilidade e de decisão, etc.
2.5.3.1 Inferência em Redes Bayesianas
Considerando uma rede bayesiana construída, um dos mais importantes procedimentos para
tratar a incerteza existente no relacionamento entre as variáveis de um domínio de dados consiste na
denominada Inferência em Redes Bayesianas. Através deste processo, obtém-se estimativas de
probabilidades de eventos relacionados aos dados, conforme novas evidências tornam-se
conhecidas. A inferência em RBs é realizada a partir do cálculo de probabilidades a posteriori,
permitindo a obtenção de respostas sobre um domínio de dados a partir de novas evidências
conhecidas. Para isso, existem três tipos distintos de algoritmos de propagação: Exatos,
Aproximados e Simbólicos (LUNA, 2004).
Os Métodos Exatos são aqueles que realizam o cálculo de probabilidades a posteriori
através de somatórios e combinações de valores, sem a existência de outros erros além do de
arredondamento no cálculo. Dentro deste grupo têm-se os métodos de Propagação de Evidências,
Propagação em Poliárvores e Propagação em Redes Multiconectadas (LUNA, 2004), os quais
encontram-se explanados no Anexo I.
Os Métodos Aproximados fazem uso de distintas técnicas de simulação para obtenção de
valores aproximados das probabilidades, sendo geralmente aplicados em casos em que os
algoritmos exatos não são aplicáveis ou há um elevado custo computacional. Esses algoritmos
podem ser classificados em Algoritmos de Simulação Estocástica, Métodos de Simplificação de
Modelos, Métodos Baseados em Busca e Propagação de Crença em Ciclos.
Segundo Castillo et al (1997 apud LUNA, 2004), os métodos Exatos e Aproximados reque-
rem que sejam atribuídos valores numéricos fixos a todos os parâmetros, porém existem situações
em que a especificação numérica não é adequada. Neste caso, os métodos numéricos devem ser
substituídos pelo uso de métodos simbólicos que lidem com os parâmetros sem atribuir-lhes
valores. Os métodos de Propagação Simbólica conduzem a soluções que se expressam como
funções dos parâmetros, onde as respostas gerais podem ser dadas de modo simbólico em função
37
dos parâmetros e as perguntas específicas podem ser obtidas a partir da substituição dos valores dos
parâmetros na solução simbólica, não havendo necessidade de refazer a propagação. Métodos deste
grupo podem ser úteis nos seguintes casos: quando a especificação numérica dos parâmetros da RB
não se encontra disponível; quando é possível especificar somente intervalos de parâmetros ao invés
de valores exatos, caso em que esses métodos podem ser aplicados para obtenção de cotas inferiores
e superiores das probabilidades para todo valor pertencente aos intervalos; e quando é necessária
uma análise de sensibilidade, sendo comum neste caso a questão de quão sensíveis são os resultados
a mudanças nos parâmetros e às evidências.
2.5.3.2 Aprendizagem de Redes Bayesianas
A aprendizagem de RBs consiste em induzir, a partir de uma amostra de dados, as
distribuições de probabilidade a priori e a posteriori e/ou identificar as relações de interdepen-
dência entre as variáveis de um domínio de dados. Este processo de aprendizagem indutiva pode ser
de dois tipos: aprendizagem da estrutura e aprendizagem de parâmetros.
Quando a estrutura da rede é desconhecida, deve-se primeiramente induzir o aprendizado
desta para depois realizar a indução do aprendizado de parâmetros numéricos (θ). Caso a estrutura
já seja conhecida, o problema se restringe ao aprendizado de parâmetros (LUNA, 2004). No
presente trabalho será dada maior ênfase à aprendizagem de parâmetros, pelo fato de a estrutura da
rede bayesiana envolvida neste projeto já se encontrar definida, não necessitando ser aprendida,
conforme será melhor descrito no Capítulo 3 deste trabalho.
Aprendizagem de Estrutura
Este processo de aprendizagem é geralmente complexo e ainda não se encontra totalmente
resolvido, pois sua indução automática enfrenta um problema de explosão combinatória. O espaço
de busca para uma rede com n variáveis apresenta uma dimensão mais do que exponencial (SILVA
& LADEIRA, 2002 apud LUNA, 2004). Além disso, há o fato de que geralmente não é possível
derivar causalidade baseada em apenas uma distribuição de probabilidade (PEARL, 1993 apud
LUNA, 2004). Embora não tenha se chegado à solução definitiva desses problemas, atualmente
existem dois enfoques básicos para aprendizagem de estrutura em redes bayesianas: Busca e
Pontuação e Independência Condicional.
O enfoque de Busca e Pontuação consiste em selecionar uma métrica para pontuação da
aderência de cada rede aos dados e um algoritmo para escolha das redes mais promissoras dentre
todas as possíveis no espaço de busca. Assim, a aprendizagem da estrutura se dá pela busca de uma
38
estrutura que seja aderente aos dados, sendo este um processo que geralmente é iniciado com um
grafo sem arcos. Então utiliza-se um algoritmo de busca que adicione um arco ao grafo, sendo
aplicada em seguida uma função de pontuação para determinar se a estrutura atual é melhor do que
a anterior. Caso seja melhor, o novo arco é mantido na estrutura e inicia-se novamente o processo
para que o próximo arco seja adicionado, e assim se repetirá até que nenhuma nova estrutura seja
considerada melhor do que as anteriores.
Já no enfoque de Independência Condicional, o problema da aprendizagem é abordado de
modo diferente. Seus algoritmos procuram descobrir as relações de dependência a partir dos dados e
as utilizam para inferir a estrutura da rede, devido ao fato muitas dependências do modelo
subjacente virem embutidas na estrutura (LUNA, 2004).
Aprendizagem de Parâmetros
Quando a estrutura de uma rede é conhecida e o parâmetro numérico ainda não se encontra
especificado, é possível fazer uso de técnicas para o aprendizado das distribuições de probabilidade
com base nos dados disponíveis. Na aprendizagem de parâmetros existem duas situações possíveis,
as quais serão explanadas nesta seção: quando os dados são completos e quando são incompletos
(LUNA, 2004).
Segundo Heckerman (1996 apud LUNA, 2004), o caso de dados completos é o mais
simples, estudado e compreendido no contexto de Redes Bayesianas. Uma vez especificada a
estrutura da rede, basta apenas estimar os parâmetros numéricos a partir da distribuição de
probabilidade conjunta, sendo este um problema bem definido para o qual existem algoritmos muito
eficientes, que são a base da aprendizagem bayesiana. Assim, a aprendizagem deste tipo é
alcançada a partir do cálculo de estimativas de máxima verossimilhança e Bayesianas para cada
entrada das Tabelas de Probabilidade Condicional das variáveis. As estimativas de máxima
verossimilhança consideram somente os dados disponíveis e ignoram o conhecimento a priori sobre
as distribuições de probabilidade, já as estimativas Bayesianas utilizam os dados disponíveis e
também algum conhecimento a priori expresso a partir de distribuições de Dirichlet para estimar os
parâmetros a posteriori.
Considerando a segunda situação possível na aprendizagem de parâmetros em uma rede
bayesiana, raramente os dados disponíveis para a aprendizagem encontram-se completos.
Geralmente apresentam dois tipos de variável: as variáveis com dados faltosos (missings), cujos
estados nem sempre se encontram registrados no banco de dados, e as variáveis ocultas (hidden),
cujos estados nunca são observados em uma amostra de dados (SINGH, 1998 apud LUNA, 2004).
39
Uma solução bastante utilizada no tratamento da aprendizagem de parâmetros com dados
incompletos em redes cuja estrutura é conhecida consiste no uso do algoritmo EM (Expectation
Maximization), também chamado algoritmo EM paramétrico (LAURITZEN, 1995; FRIEDMAN,
1997 apud LUNA, 2004). Este algoritmo é um método utilizado para estimar funções de máxima
verossimilhança dos parâmetros a partir de dados incompletos, o qual faz uso de casos em que
variáveis foram observadas com o objetivo de aprender a prever seus possíveis valores quando estas
não são observadas, já que os parâmetros em geral descrevem características de uma população.
(LUNA, 2004).
2.6 Trabalhos Relacionados
Nesta seção são apresentados trabalhos relacionados à atual pesquisa, os quais aplicam
conceitos de Hipermídia Adaptativa ou pelo menos um dos temas envolvidos, utilizando também
Redes Bayesianas para diferentes fins. Dentre os diversos trabalhos atualmente realizados, são
destacados nesta seção os projetos AdaptWeb e Banco de Desafios, bem como a definição de um
modelo de Interfaces Adaptativas.
O AdaptWeb é um ambiente de aprendizagem adaptativo desenvolvido para a autoria e
apresentação adaptativa de disciplinas integrantes de cursos EaD na Web, cujo projeto foi motivado
pela necessidade de facilitar aos professores a tarefa de autoria de material instrucional. O ambiente
foi inicialmente aplicado a um estudo de caso envolvendo a disciplina de Métodos Numéricos que é
ministrada em três diferentes cursos da Universidade Estadual de Londrina (UEL), para os quais
detectou-se a necessidade de uma abordagem diferenciada, uma vez que os interesses dos alunos
diferem conforme o enfoque do curso. Assim, por meio da aplicação de técnicas de Navegação e
Apresentação Adaptativa, este sistema visa permitir a adequação de táticas e formas de
apresentação de conteúdos para alunos em diferentes cursos de graduação e com diferentes estilos
de aprendizagem, sendo composto por um ambiente de autoria e um ambiente para acesso do aluno.
No primeiro, o autor cria e organiza a estrutura de conteúdos das disciplinas adaptadas aos cursos
que ministra. Já o ambiente do aluno apresenta a estrutura de conteúdo adaptada ao curso e às
características do perfil de cada aluno, proporcionando-lhes facilidade de acesso ao material
instrucional por meio de suas interfaces adaptativas (BRUNETTO et al, 2003).
Outro projeto refere-se ao Banco de Desafios, um módulo do ambiente de aprendizagem
Clube Virtual de Ciências (CVC) desenvolvido na Universidade do Planalto Catarinense
(UNIPLAC), cujo objetivo consiste em avaliar o conhecimento dos usuários por meio da resolução
de testes relacionados aos conteúdos, a fim de orientá-los a um estudo individualizado, conforme as
40
suas dificuldades e os conhecimentos já adquiridos. Para isso, esta aplicação provê a Navegação
Adaptativa com suporte de uma Rede Bayesiana, a qual desempenha o papel de um professor,
analisando as dificuldades de cada aluno para adaptar a sua navegação por entre as questões, as
quais apresentam diferentes níveis de dificuldade. Assim, a partir dos resultados obtidos pelo aluno
nos testes, a aplicação apresenta-lhe um relatório de desempenho que indica quais tópicos deverão
ser mais estudados, além de fornecer conteúdos relacionados ao tema das questões, provenientes do
módulo Biblioteca Virtual (BET, FROZZA & ARRUDA, 2004).
Finalmente, tem-se um trabalho cujo objetivo foi definir um modelo de interfaces
adaptativas baseado em Redes Bayesianas que possa ser aplicado a diferentes domínios que
contenham informações que possam ser agrupadas em temas, de forma a tornar a navegação mais
acessível ao usuário, o qual foi aplicado a um sistema de notícias online em desenvolvimento, de
forma a utilizá-lo para realização da análise do modelo proposto. Considerando que torna-se
possível projetar interfaces adaptativas somente com um modelo de usuário bem definido e uma
estratégia de adaptação, foram adotadas duas formas para a obtenção de informações sobre o
usuário, sendo estas a aplicação de questionários e monitoramento de suas interações com sistema.
Para realização da estratégia de adaptação, aplicou-se a técnica de Redes Bayesianas, com o
objetivo de possibilitar ao sistema detectar os interesses do usuário a partir de suas ações e assim
adaptar sua interface em tempo de execução para oferecer uma maior ou menor quantidade de links
relacionados ao grupo atual ou do próximo a ser consultado. Assim, para este modelo, definiu-se
uma RB contendo as variáveis de interesse “grupo_atual”, “grupo_anterior” e
“distribuição_grupos”, sendo que as duas primeiras permitem identificar a tendência de leitura do
usuário e a última apresenta a quantidade de informações por grupo a serem disponibilizadas na
interface. A partir disto, a estratégia de adaptação modifica a interface em dois diferentes
momentos. O primeiro é quando o aluno encerra sua navegação, a fim de adaptar sua interface ao
modelo de usuário atualizado em seu próximo acesso, e o segundo momento ocorre durante a
navegação do usuário pelo ambiente, de forma que a cada interação ocorre a propagação de novas
evidências na RB, desencadeando novas adaptações aos anseios do usuário (OLIVEIRA et al,
2003).
3 DESENVOLVIMENTO
Com base nos conceitos e tecnologias pesquisados e estudados no capítulo anterior,
objetiva-se neste capítulo apresentar o desenvolvimento da solução proposta.
Assim, na Seção 3.1 deste capítulo é realizada uma descrição do processo de análise do
ambiente proposto, bem como uma explanação de seu funcionamento geral e descrição de suas
funcionalidades. A Seção 3.2 encontra-se dividida em três partes. A primeira apresenta a
modelagem do sistema, a qual foi realizada somente para os processos considerados mais
importantes ao contexto deste trabalho. A segunda parte aborda o projeto de banco de dados do
protótipo. Por fim, a terceira parte trata da modelagem da rede bayesiana, além de apresentar uma
explanação a respeito da amostra de dados coletada e do cálculo das probabilidades a priori
realizado a partir desta. Na Seção 3.3 é descrito o processo de implementação do sistema, onde
encontram-se especificadas as tecnologias e ferramentas utilizadas, bem como a documentação das
classes e métodos implementados e um detalhamento a respeito do algoritmo de propagação
utilizado para a inferência na rede bayesiana. Na Seção 3.4 encontram-se documentados os testes
executados com o protótipo implementado. Finalmente, na Seção 3.5 encontram-se descritos o
processo de validação do protótipo e as simulações realizadas junto ao especialista, bem como os
resultados observados.
3.1 ANÁLISE DO SISTEMA
O processo de análise deste projeto deu-se através de reuniões realizadas com o especialista,
que neste caso trata-se do professor da disciplina de Estrutura de Dados. Nestas reuniões, realizou-
se a definição do problema a ser tratado e o levantamento de informações necessárias ao
desenvolvimento do protótipo aqui apresentado, bem como definições relacionadas ao tratamento
das adaptações de sua interface, conforme especificado ao longo desta seção.
Com base no problema exposto no Capítulo 1 deste trabalho, definiu-se primeiramente,
junto ao especialista, as relações de dependência existentes entre os conteúdos de APC II
considerados mais críticos e os de Estrutura de Dados. Desta forma obteve-se a modelagem do
problema, a qual serviu de base para a modelagem da rede bayesiana apresentada na Seção 3.2.3
deste capítulo.
Assim, conforme pode ser observado na Figura 4, neste trabalho foram tratadas as relações
apresentadas entre os conteúdos de Vetor, Recursividade e Alocação Dinâmica, lecionados em APC
42
II, e todos os conteúdos estudados em Estrutura de Dados, sendo estes Lista, Fila, Pilha, Árvore,
Métodos de Pesquisa e Métodos de Ordenação, os quais são ministrados na ordem especificada.
Alguns desses conteúdos subdividem-se em outros, como é o caso de Lista, Fila, Pilha e Árvore,
cujas estruturas são estudadas em sua forma estática e dinâmica. Portanto, é importante ressaltar
neste ponto que os conteúdos mencionados estão sendo tratados em uma visão macro, pois neste
protótipo o objetivo consiste em tratar a evolução do aluno no aprendizado dos diferentes conteúdos
de Estrutura de Dados, os quais apresentam diferentes níveis de dificuldade.
Neste caso, tem-se as seguintes relações de conteúdo: (i) Lista depende de Vetor e Alocação
Dinâmica; (ii) Fila e Pilha dependem de Lista; (iii) Árvore depende de Vetor, Alocação Dinâmica e
Recursividade; (iv) Métodos de Pesquisa depende de Vetor e Lista; e (v) Métodos de Ordenação
depende de Vetor e Recursividade.
Figura 4. Modelagem do problema
Considerando o exposto, o protótipo desenvolvido neste trabalho, nomeado E-Adapt,
consiste em um ambiente de aprendizagem web que adapta suas estruturas de navegação ao perfil
de cada estudante, a fim de guiá-los de forma personalizada no estudo da disciplina de Estrutura de
Dados e assim auxiliá-los na melhoria de seu aprendizado nos conteúdos em que apresentarem
maiores dificuldades.
Através da aplicação de conceitos de Hipermídia Adaptativa e da técnica de Redes
Bayesianas, o ambiente é individualizado por meio da interação do estudante, a qual consiste, neste
caso, na realização de testes online envolvendo os conteúdos estudados ao longo da disciplina
43
tratada. Esses testes têm como objetivo detectar o nível de aprendizado do estudante durante o
estudo de cada conteúdo para definição das adaptações que devem ser realizadas, sendo compostos
por questões de múltipla escolha de nível fácil, médio ou difícil relacionadas ao conteúdo em
estudo. Estas questões são previamente cadastradas no sistema pelo professor, e posteriormente são
agrupadas e apresentadas ao estudante por meio de regras pré-estabelecidas, conforme será
detalhado adiante. O nível de aprendizado, neste caso, relaciona-se à porcentagem de acertos obtida
pelo estudante em um teste respondido no sistema, encontrando-se classificado em Insatisfatório,
Regular e Satisfatório. Assim, cada uma destas classificações corresponde a uma faixa de acertos,
onde tem-se:
• Insatisfatório para acertos ≤ 50%;
• Regular para 50% < acertos ≤ 70%; e
• Satisfatório para acertos > 70%.
Os percentuais especificados nestas classificações estão coerentes com as faixas de notas
consideradas pelo especialista, as quais não foram diretamente aplicadas como parâmetro para
realização das adaptações no ambiente pelo fato dos testes online não constituírem avaliações.
Desta forma, o E-Adapt aplica as teorias de aprendizagem Cognitivista e Construtivista,
pois visa propiciar ao aluno a construção de seu próprio aprendizado, estimulando mecanismos
formadores da memória e pensamento através da resolução de problemas. Por meio de suas
adaptações, o ambiente adequa-se à realidade de cada aluno, estimulando-os a desenvolver seu
conhecimento através de sua experiência.
3.1.1 Adaptação do Sistema
A adaptação do sistema se dá pela indicação de links que devem ser acessados pelo aluno
durante seus estudos, de forma a orientá-lo em relação a conteúdos que devem ser estudados ou
reforçados, conforme as necessidades detectadas em seu perfil atualizado. Para isso, foram
utilizadas duas técnicas de Navegação Adaptativa que vêm sendo bastante aplicadas em ambientes
adaptativos educacionais, sendo estas a Orientação Direta, neste caso representada pelo destaque de
links, e a Ocultação Adaptativa. Estas técnicas implementam, respectivamente, os métodos de
Condução Global e Orientação Local explanados anteriormente. Para o destaque de links, adotou-se
o padrão visual apresentado na Figura 5, onde tem-se: (i) texto em vermelho e em negrito para
reforço em nível de aprendizado Insatisfatório; (ii) texto em amarelo e em negrito para reforço em
44
nível de aprendizado Regular; (iii) texto em preto e em negrito para indicar o conteúdo de Estrutura
de Dados atualmente em estudo, e (iv) texto em preto e estilo normal para conteúdos já estudados
nesta mesma disciplina.
Figura 5. Padrão visual para o destaque de links no E-Adapt.
Para dar suporte às adaptações foi modelada, junto ao especialista, uma RB que visa
representar o aprendizado do estudante nos conteúdos de Estrutura de Dados, cuja estrutura
encontra-se detalhada ao longo da Seção 3.2.3. Esta RB permite estimar, à medida que o estudante
interage com o sistema, a probabilidade de desempenho obtido em conteúdos da disciplina pré-
requisito relacionados ao conteúdo em estudo, para identificação daqueles que precisam ser mais
reforçados com base no desempenho atual observado nos testes online realizados, e também estimar
resultados que poderão ser obtidos em conteúdos seguintes, possibilitando que o sistema antecipe ao
estudante o que pode ser feito para a melhoria de seu aprendizado. Desta forma, torna-se possível
tratar a incerteza envolvida no problema, a qual refere-se ao aprendizado dos alunos durante seus
estudos, fato que justifica a escolha da técnica de IA aplicada a este projeto.
A arquitetura do sistema baseia-se no Modelo AHAM (LIMA et al, 2005). Assim, a RB
modelada encontra-se no Modelo de Usuário, pelo fato de tratar dados referentes ao aprendizado
dos estudantes. Interagindo com este modelo, tem-se o Modelo de Adaptação, o qual recebe dados
provenientes da interação dos alunos com o sistema para atualização da RB e também é o
responsável por realizar as adaptações na interface para cada aluno, a partir de regras de adaptação
executadas com base em dados de seu perfil atualizado obtidos na inferência realizada na RB. O
esquema geral deste funcionamento é apresentado na Figura 6, para o qual tem-se a seguinte
legenda: (1) dados provenientes da interação do usuário com o ambiente; (2) atualização e
recuperação de dados do modelo de usuário; (3) interação com o modelo de domínio para definição
dos links que deverão tornar-se acessíveis no menu; e (4) adaptação da estrutura de navegação
(links).
45
Figura 6. Funcionamento geral do E-Adapt
Assim, no primeiro acesso realizado pelos estudantes no E-Adapt, somente o link de acesso
ao conteúdo Lista encontra-se exibido e destacado no menu da página. Os demais links relacionados
a conteúdos de Estrutura de Dados dispostos no menu permanecem ocultos até que sejam relevantes
ao perfil do estudante. Já os links relacionados aos conteúdos da disciplina pré-requisito envolvidos
no problema serão exibidos somente quando o perfil do aluno revelar necessidade de reforço em um
ou mais destes conteúdos.
Sempre que o aluno acessar um novo conteúdo de Estrutura de Dados, o primeiro teste
online apresentado ao aluno conterá somente questões de nível fácil. Ao ser respondido um teste
relacionado ao conteúdo em estudo, é realizado o cálculo da porcentagem de acerto do aluno em
relação às questões respondidas, cujo resultado definirá seu nível de aprendizado naquele momento.
Isso constitui uma nova evidência para a RB, a qual é observada no nó correspondente ao conteúdo
em estudo para realização de uma nova inferência nos demais nós. A partir disto, uma nova
adaptação é realizada no sistema através da execução de regras de adaptação definidas durante a
análise do sistema, as quais são apresentadas sob a forma de pseudo-código na Figura 7.
46
se (nível de aprendizado <= 50%) então reforço de conteúdo anterior; nível de questão = fácil; teste do conteúdo atual; senão se (50% < nível de aprendizado <= 70%) então reforço de conteúdo atual; se (maior P(Insatisfatório)) então reforço de conteúdo anterior; fim se; nível de questão = médio; teste do conteúdo atual; senão se (nível de aprendizado > 70%) então estudo de novo conteúdo; se (nível de questão = difícil) então nível de questão = fácil; teste do novo conteúdo; senão se (nível de questão = fácil) então nível de questão = médio; senão se (nível de questão = médio) então nível de questão = difícil; fim se; teste do conteúdo atual; fim se; fim se;
Figura 7. Regras de adaptação do ambiente
Estas regras são executadas conforme o resultado obtido pelo aluno em um teste. Desta
forma, se o aluno apresentar um nível de aprendizado insatisfatório, primeiramente o sistema
verificará a provável causa da atual dificuldade de aprendizado. Para isso, uma vez observada a
evidência deste desempenho no nó da RB correspondente ao atual conteúdo de Estrutura de Dados,
são consultadas as probabilidades a posteriori calculadas para os nós dos conteúdos de APC II
relacionados, a fim de identificar o conteúdo com maior probabilidade de deficiência no
aprendizado7. Com isso, o sistema exibirá e destacará no menu o link correspondente ao conteúdo
da disciplina pré-requisito que deverá ser reforçado pelo aluno. Caso o conteúdo identificado já
esteja sendo revisado, o sistema indicará outro conteúdo para reforço, seguindo o mesmo critério.
Uma vez revisado o conteúdo indicado, será apresentado no ambiente um novo teste online
relacionado ao conteúdo atual da disciplina em curso, composto por três questões de nível fácil
selecionadas aleatoriamente pelo sistema, com o objetivo de detectar o nível de aprendizado do
aluno após o reforço e realizar novas adaptações conforme a necessidade. Esta regra apresenta duas
exceções, as quais são especificadas a seguir:
7 Neste caso, considera-se o nó com maior probabilidade de nível de aprendizado Insatisfatório + Regular, pois todo nível diferente de Satisfatório indica uma deficiência de aprendizado.
47
• Os conteúdos Fila e Pilha possuem como pré-requisito o conteúdo Lista, o qual também
é lecionado em Estrutura de Dados. Neste caso, o sistema indicará diretamente o referido
conteúdo para reforço, destacando o link correspondente; e
• O conteúdo Métodos de Pesquisa possui relações de dependência tanto com conteúdos
de APC II (Vetor) como também de Estrutura de Dados (Lista). Assim, quando este
conteúdo estiver em estudo e for esta a regra de adaptação aplicada em determinado
momento, o sistema verificará a provável causa da dificuldade de aprendizado em ambas
as disciplinas, seguindo o mesmo critério de seleção de conteúdo para reforço descrito
no fluxo normal desta regra.
Na segunda regra, se o aluno evidenciar um nível de aprendizado regular, o sistema
verificará as probabilidades a posteriori calculadas para os níveis de aprendizado de conteúdos
seguintes relacionados ao conteúdo em estudo, a fim de avaliar o impacto causado pelo atual
aprendizado demonstrado pelo aluno. Se o nível de aprendizado Insatisfatório apresentar maior
probabilidade em relação ao demais níveis em pelo menos um dos conteúdos, além do conteúdo
atualmente estudado ser indicado para reforço, o sistema também indicará conteúdos anteriores
relacionados ao atual, da mesma forma que na regra anterior. Caso o conteúdo atual não possua
conteúdos dependentes, o sistema verificará o impacto causado no próximo conteúdo a ser estudado
na seqüência da disciplina de Estrutura de Dados, para então realizar as referidas indicações de
reforço conforme o caso. Após o aluno revisar os conteúdos indicados, o sistema apresentará um
novo teste contendo três questões de nível médio selecionadas aleatoriamente.
Finalmente, se o aluno atingir um nível de aprendizado satisfatório, primeiramente o sistema
exibirá e destacará o link do conteúdo seguinte a ser estudado em Estrutura de Dados. Mas os novos
testes apresentados passarão a conter questões relacionadas a este conteúdo somente quando o aluno
atingir este nível de aprendizado em um teste online de nível difícil relacionado ao conteúdo que
vinha sendo estudado. Desta forma, caso o aluno apresente novamente um desempenho
insatisfatório ou regular no conteúdo após responder questões deste nível, isto significa que o aluno
ainda necessita melhorar seu aprendizado. Assim, o aluno realizará novos reforços que se fizerem
necessários e responderá testes de níveis anteriores até mostrar-se bem preparado no conteúdo, ao
mesmo tempo que poderá iniciar o estudo da nova unidade.
Conforme pode ser observado, neste protótipo as regras descritas tratam as adaptações de
uma forma bastante restrita, até mesmo no que se refere à quantidade e ao nível de questões a serem
apresentadas por meio dos testes online. Em um ambiente de aprendizagem adaptativo completo, o
48
tratamento de diferentes disciplinas certamente exigiria maior flexibilidade na definição de regras
de adaptação, caso em que estas poderiam ser configuráveis no sistema para atender a diferentes
demandas. Mas no caso deste trabalho, considerando que está sendo tratado um problema específico
relacionado a uma disciplina, a customização de regras foi considerada desnecessária. Portanto, as
regras definidas neste protótipo consistem apenas em uma forma possível de se tratar as adaptações,
a qual visa permitir a visualização de resultados relacionados aos objetivos do presente trabalho.
Além disso, considerou-se importante realizar um controle de disponibilização de novos
testes online aos alunos no ambiente, para que estes realizem primeiramente o reforço do(s)
conteúdo(s) indicado(s) antes de responderem a novas questões, conforme a necessidade
apresentada após a resolução do último teste, evitando desta forma que o aluno deixe de reforçar
conteúdos e limite-se a resolver testes continuamente na base de tentativa e erro. Para este controle,
um critério que poderia ser adotado é o intervalo de tempo. Mas para o escopo deste projeto, este
critério foi considerado irrelevante, já que o enfoque do protótipo encontra-se voltado para a
dinâmica de adaptação de suas estruturas de navegação a partir do desempenho obtido por cada
aluno nos testes.
Por tratar-se de uma simulação de utilização do ambiente, neste caso utilizou-se como
critério para o referido controle o número de acessos realizados no link do conteúdo indicado para
reforço. Assim, definiu-se que após o aluno realizar três acessos no referido link, o sistema
disponibilizará ao aluno um novo teste relacionado ao conteúdo atualmente estudado. Mas em um
ambiente completo sendo utilizado em um tempo real de estudo, o intervalo de tempo poderia ser
considerado para o controle de aplicação de novos testes a cada aluno, devendo este ser definido
pelo professor conforme a dinâmica da disciplina, nível de dificuldade de cada conteúdo, entre
outros fatores. Desta forma, passado o tempo estimado para estudo ou reforço de um conteúdo, cada
aluno teria acesso a novos testes em um momento definido com base em sua última interação com o
sistema.
3.1.2 Funcionalidades do Sistema
Acima da arquitetura envolvendo os modelos citados, tem-se a camada correspondente ao
ambiente web acessível pelos usuários, a qual compreende as funcionalidades básicas do sistema.
Para o escopo do E-Adapt foram considerados os módulos Cadastro de Aluno, Cadastro de
Professor, Cadastro de Conteúdo, Cadastro de Disciplina, Cadastro de Turma e Cadastro de
Questões. Entretanto, por razões de prioridade os referidos cadastros não foram implementados
neste protótipo, uma vez que estes não possuem relevância no contexto do presente trabalho,
49
estando aqui representados somente pelas tabelas no banco de dados, conforme será visto na Seção
3.2.1. Na presente seção, estas funcionalidades encontram-se apenas descritas de forma breve,
sendo apresentado um maior nível de detalhamento do Cadastro de Questões por este estar
diretamente relacionado à resolução de testes online, processo que desencadeia as adaptações no
protótipo.
O Cadastro de Alunos permite a inclusão, alteração, exclusão e consulta de dados de alunos
matriculados em um curso, sendo dados de entrada o código de pessoa, número da matrícula, nome,
R.G., CPF, endereço, bairro, CEP, cidade, estado, telefone e e-mail. Da mesma forma, o Cadastro
de Professores consiste na manipulação de dados dos professores das disciplinas, os quais serão
posteriormente associados às turmas correspondentes no ambiente, contituindo dados de entrada o
código de pessoa, nome, R.G., CPF, cidade, estado, telefone e e-mail.
O Cadastro de Disciplina, por sua vez, consiste na inclusão, alteração, exclusão e consulta
de dados referentes às disciplinas, cujos dados de entrada são o código da disciplina, nome da
disciplina, período e número de créditos. O Cadastro de Turma permite criar diferentes turmas para
uma mesma disciplina, nas quais os alunos são matriculados. Seus dados de entrada são o código da
turma, código da disciplina, turno e horários das aulas.
O Cadastro de Conteúdo permite o armazenamento de dados dos conteúdos ministrados em
cada disciplina, bem como a definição de suas relações de pré-requisito, sendo dados de entrada o
código do conteúdo, código da disciplina, número da turma, nome do conteúdo, texto e número da
unidade correspondente na ementa. Para este protótipo considerou-se somente o armazenamento de
conteúdos textuais por não ser relevante tratar diferentes tipos de conteúdo no escopo deste projeto,
já que neste caso a adaptação é realizada somente nos links que dão acesso aos conteúdos, e não nos
conteúdos em si, caso para o qual seriam utilizadas outras técnicas de adaptação específicas,
correspondentes à classificação de Apresentação Adaptativa.
Finalmente, o Cadastro de Questões permite ao professor criar um banco de questões
relacionadas aos conteúdos da disciplina que leciona, as quais são utilizadas nos testes online
apresentados aos alunos no ambiente. Neste protótipo foram tratadas questões de múltipla escolha
devido ao fato deste tipo de questão estar sendo muito utilizado em exercícios e avaliações online
aplicados a alunos em ambientes virtuais de aprendizagem. Além disso, questões de múltipla
escolha em meio online oferecem praticidade em sua resolução e também no que se refere às
correções, as quais são realizadas automaticamente pelo sistema no momento em que os alunos
concluem a atividade. A automatização deste processo é particularmente importante neste caso pelo
fato de seu resultado estar diretamente ligado às adaptações realizadas no protótipo, as quais devem
50
ser efetivadas a cada aluno logo após uma nova interação deste com o sistema. Assim, para o
cadastro de questões no E-Adapt, constituem dados de entrada o código da questão, o código do
conteúdo ao qual a questão está relacionada, o nível da questão, enunciado e código da opção
correta. Para cada questão, também são cadastradas as opções de resposta correspondentes, para as
quais tem-se como dados de entrada o código da opção, o código da questão à qual encontra-se
vinculada e o texto da opção.
Os módulos descritos são acessíveis por diferentes hierarquias de usuários definidas no
ambiente, sendo estas o Coordenador, Professor e Aluno, as quais são descritas a seguir. Entretanto,
neste protótipo tratou-se somente o usuário do tipo Aluno, pois é somente para este que são
realizadas as adaptações na navegação do ambiente.
• Coordenador – este usuário possui todas as permissões de acesso no ambiente, o que
lhe permite acompanhar todo o processo de ensino-aprendizagem nas turmas de um
curso. Realiza o cadastro de professores e de alunos, gerando para estes senhas de acesso
ao ambiente. Além disso, cadastra as turmas no sistema e realiza a matrícula de alunos;
• Professor – este usuário é responsável por realizar o cadastro dos conteúdos a serem
ministrados à turma, bem como das questões relacionadas a cada conteúdo da disciplina,
as quais são utilizadas para aplicação de testes online aos alunos que utilizam o
ambiente. Possui permissão também para realizar o acompanhamento dos alunos da
turma, além de alterações de dados em seu próprio cadastro; e
• Aluno – tem acesso aos conteúdos disponibilizados no ambiente e à resolução de testes
online relacionados aos conteúdos estudados, além de ter permissão para alterar seus
dados cadastrais.
Além das funcionalidades descritas nesta seção, geralmente os Ambientes Virtuais de
Aprendizagem dispõem também de uma série de recursos que permitem a interação entre alunos e
professores no processo de ensino-aprendizagem, conforme visto no Capítulo 2. No protótipo aqui
apresentado tais recursos foram desconsiderados pelo fato deste trabalho ter seu foco voltado à
aplicação da Navegação Adaptativa por meio de Redes Bayesianas em um ambiente virtual de
aprendizagem, sendo o ambiente neste caso um elemento secundário no cenário de estudo,
necessário somente para a exibição dos resultados da adaptação.
51
3.2 MODELAGEM
A partir da análise exposta na seção anterior, foi realizada a modelagem UML (Unified
Modeling Language) e o projeto de banco de dados do ambiente proposto, bem como a modelagem
da RB relacionada ao problema tratado. Assim, na Seção 3.2.1 encontra-se detalhada a modelagem
dos processos implementados no protótipo apresentado neste trabalho, sendo estes a autenticação do
usuário, a resolução de testes online e a adaptação do sistema. O modelo lógico do banco de dados
encontra-se na Seção 3.2.2. Finalmente, a RB modelada é apresentada na Seção 3.2.3, bem como a
descrição do processo de obtenção das probabilidades a priori para sua inicialização.
3.2.1 Ambiente Proposto
Para a modelagem UML dos processos implementados no E-Adapt, foi adotada a utilização
de descrições e diagramas de caso de uso, bem como de diagramas de classe e seqüência, de forma
a apresentar diferentes níveis de detalhamento dos referidos processos. Julga-se importante ressaltar
que toda a modelagem apresentada nesta seção foi elaborada de forma a refletir o real
funcionamento do E-Adapt a partir das tecnologias utilizadas em sua implementação, portanto
diversos aspectos desta serão melhor compreendidos durante a leitura da Seção 3.3.
Os diagramas de classe aqui apresentados, os quais foram projetados sob a perspectiva de
implementação, relacionam somente as principais classes envolvidas em cada processo, as quais
encontram-se descritas nesta seção e detalhadas em nível de atributos e métodos na Seção 3.3. Nas
classes de Entidade representadas, os métodos acessores8 foram suprimidos por não haver
necessidade de especificá-los, já que são comumente utilizados em classes deste estereótipo. Na
atual seção também são explanados em cada diagrama os relacionamentos existentes entre as
classes, com o objetivo de oferecer maior esclarecimento sobre a estrutura geral do protótipo por
meio da visão de seus processos. Neste tipo de diagrama, não encontram-se relacionadas as classes
DAO (Data Access Object) da camada de persistência do sistema, por estas pertencerem a um nível
de detalhamento que está sendo tratado nos diagramas de seqüência modelados.
Assim, nos diagramas de seqüência encontra-se representado o comportamento dos
processos descritos nesta seção, permitindo uma visualização mais detalhada destes por meio das
interações especificadas entre os objetos envolvidos. Algumas interações não se encontram visíveis
8 Métodos sets e gets.
52
nestes diagramas por tratarem-se de processos internos das tecnologias empregadas na
implementação do protótipo.
3.2.1.1 Autenticação de Usuário
Para acesso ao E-Adapt, primeiramente é apresentado ao usuário uma tela de login, na qual
este deverá informar seu código de pessoa e senha previamente cadastrados no sistema. Ao ser
realizada a autenticação de um usuário do tipo Aluno, o sistema atualiza o número de acessos do
usuário no sistema e em seguida, recupera dados de seu perfil e a configuração das adaptações
realizadas para este em seu último acesso no ambiente, as quais são restauradas no momento em
que a página principal é carregada na nova sessão. Caso o aluno esteja realizando seu primeiro
acesso ao sistema, o perfil do aluno é inicializado e suas estruturas de navegação apresentarão a
configuração inicial descrita na Seção 3.1.1. Neste processo, a aplicação das adaptações nos links
para inicialização da navegação do sistema é realizada pelo Modelo de Adaptação, também
responsável por inicializar o Modelo de Usuário e conseqüentemente a Rede Bayesiana que dará
suporte às adaptações realizadas ao aluno durante a sessão. O diagrama de caso de uso deste
processo é apresentado na Figura 8, e sua descrição encontra-se no caso de uso UC001 disponível
no Apêndice A.
Figura 8. Diagrama de caso de uso da autenticação de usuário
O diagrama de classes apresentado na Figura 9 descreve os relacionamentos existentes entre
os principais tipos de objetos envolvidos no processo de autenticação realizado no E-Adapt.
53
Figura 9. Diagrama de classe da autenticação de usuário
Neste diagrama, as classes de limite Tela001 e Tela002 representadas tratam-se
respectivamente da página de login e da página principal do sistema web descrito, cujos protótipos
de tela encontram-se disponíveis nesta mesma seção.
Como classes de entidade representadas no presente diagrama, tem-se: (i) Usuario – esta
classe trata de dados referentes ao acesso de cada usuário no sistema, neste caso somente do tipo
Aluno, conforme já mencionado; (ii) Perfil – classe responsável pelos dados relacionados ao perfil
de cada aluno no sistema, os quais servem de base para aplicação de novas adaptações e são
atualizados conforme a regra executada; e (iii) AdaptacaoMenu – esta classe contém dados
referentes às configurações de adaptação aplicadas para cada aluno nas estruturas de navegação, as
quais são atualizadas mediante a execução de regras de adaptação durante uma sessão no ambiente
e mantidas após o aluno desconectar-se, para serem recuperadas em seu próximo acesso.
No atual diagrama tem-se também as classes de controle Sistema, ModAdaptacao,
ModUsuario e Controle, as quais encontram-se aqui representadas somente com seus principais
atributos e métodos, e são descritas a seguir:
54
• Sistema – classe responsável por realizar a autenticação do usuário para acesso ao E-
Adapt, recuperando dados de seu perfil e das últimas adaptações realizadas em sua
navegação para inicialização de uma nova sessão. Para este protótipo, esta classe está
tratando somente usuários do tipo Aluno;
• ModAdaptacao – esta classe corresponde ao Modelo de Adaptação de um SHA. Neste
processo, inicializa a interface da página principal do protótipo, personalizando-a para
cada aluno conforme as configurações de adaptação recuperadas na autenticação. Além
disso, gerencia o processo de adaptação das estruturas de navegação durante a sessão do
aluno no ambiente, conforme será visto adiante;
• ModUsuario – esta classe corresponde ao Modelo de Usuário que integra a arquitetura
descrita na Seção 3.1.1. Nesta, encontra-se a Rede Bayesiana que dará suporte às
adaptações do sistema, a qual é inicializada juntamente com o modelo durante o
processo de autenticação e mantém-se ativa durante a sessão do usuário; e
• Controle – trata-se de uma classe de controle genérica que mantém configurações para
gerenciamento de transações e ações de persistência no ambiente, as quais são
compartilhadas por diversas classes de controle que interagem com classes DAO em
seus métodos, conforme será detalhado na Seção 3.3. No processo atualmente tratado,
seus atributos são herdados e utilizados pelas classes Sistema e ModAdaptacao.
No que se refere aos relacionamentos especificados entre as referidas classes do diagrama
apresentado na Figura 9, além das relações aqui identificadas, tem-se mais duas associações que
valem ser mencionadas neste caso, mas que foram suprimidas do diagrama de classes por terem
pouca relevância no processo em questão: uma entre as classes Usuario e Aluno, e a outra entre as
classes AdaptacaoMenu e MenuAluno. A classe Aluno contém atributos relativos ao perfil cadastral
de cada aluno, o qual encontra-se associado, por sua vez, às matrículas realizadas nas disciplinas
registradas no sistema. A classe MenuAluno trata de dados relacionados aos links correspondentes a
cada conteúdo armazenado no ambiente, os quais são disponibilizados no menu da página principal
conforme as adaptações aplicadas a cada aluno.
Com base nas informações referentes às classes envolvidas no processo de autenticação de
usuário, torna-se possível observar o comportamento do referido processo no diagrama de
seqüência apresentado na Figura 10. Neste diagrama pode ser observada a inclusão da classe
BayesNet, a qual relaciona-se à RB implementada no sistema e encontra-se aqui representada
apenas pelo fato de a RB ser inicializada pelo Modelo de Usuário ao início de uma nova sessão no
55
ambiente. Entretanto, considerando que a RB possui efetiva participação no processo de adaptação
do sistema, a referida classe encontra-se descrita na modelagem correspondente a este processo,
conforme poderá ser visto ainda nesta seção, e detalhada na Seção 3.3.1, a qual trata de
implementação da RB.
Figura 10. Diagrama de seqüência da autenticação de usuário
3.2.1.2 Resolução de Testes Online
Este é o processo que desencadeia, para cada aluno, novas adaptações na navegação do
sistema. No momento em que o aluno acessa o link para testes online disponível na página principal
do ambiente, o sistema verifica em seu perfil qual o atual conteúdo e nível de dificuldade
correspondentes às questões a serem respondidas, os quais foram definidos por meio da regra de
56
adaptação executada para o seu último desempenho obtido. Com base nestes dados, o sistema
seleciona aleatoriamente as questões do novo teste e as exibe na página. Após o aluno concluir a
atividade, o sistema realiza a correção automática do teste e calcula a porcentagem de acerto obtida
pelo aluno nas questões, enviando-a em seguida ao Modelo de Adaptação para realização das
adaptações correspondentes ao seu desempenho atual.
O diagrama de caso de uso correspondente a este processo é apresentado na Figura 11, e sua
descrição encontra-se no caso de uso UC002 disponível no Apêndice B.
Figura 11. Diagrama de caso de uso da resolução de testes online
O diagrama de classes correspondente a este processo pode ser visualizado na Figura 12,
no qual encontram-se descritos os relacionamentos definidos entre as principais classes envolvidas.
Figura 12. Diagrama de classe da resolução de testes online
57
No presente diagrama, a classe de limite Tela003 representa a página de exibição dos testes
online, cujo protótipo de tela será apresentado adiante. Como classes de controle para este processo,
tem-se as classes Controle e Teste. Esta última, a qual também herda os atributos da referida classe
de controle genérica, é a responsável por selecionar e listar na página as questões a serem
respondidas pelo aluno em um teste online, além de realizar a correção deste após a sua resolução.
Dentre as classes de entidade representadas, as principais são Questão e Opção, as quais
contém respectivamente atributos das questões cadastradas no sistema e de suas opções
correspondentes. Diretamente relacionadas a estas, tem-se as seguintes classes: (i) Conteúdo –
entidade que contém atributos referentes aos conteúdos disponíveis para estudo ou reforço no
ambiente; (ii) Aluno – esta classe, já descrita no processo anterior, encontra-se incluída neste
diagrama por estar diretamente associada ao registro das respostas dadas nos testes; (iii) Resposta –
classe que trata dados relacionados às respostas dadas pelos alunos em questões de cada teste online
aplicado no ambiente; (iv) Teste – entidade que contém dados relativos ao histórico de resolução de
testes de cada aluno, o qual encontra-se relacionado às respectivas respostas; e (v) TestePK – classe
correspondente a atributos chave da entidade Teste, cuja função será melhor explanada na Seção
3.3.
Além dos relacionamentos definidos no diagrama apresentado, existem duas associações
com a classe Conteúdo que foram suprimidas, as quais envolvem as classes MenuAluno, descrita
anteriormente, e PreRequisito, a qual trata-se de uma entidade com atributos referentes à definição
de relações de pré-requisito entre os conteúdos cadastrados no sistema. Estas classes apresentam
expressiva participação no processo de adaptação do sistema, por isso optou-se por representá-las
somente nos diagramas do respectivo processo.
Para visualização do comportamento deste processo em um maior nível de detalhamento, foi
projetado o diagrama de seqüência apresentado na Figura 13. Entretanto, neste diagrama
encontram-se representadas somente as classes que possuem maior relevância no processo de
resolução de testes online. Por isso, foram suprimidas as classes Resposta, Teste e TestePK, pois
estas apenas tratam dados relativos ao histórico dos testes resolvidos por cada aluno, não exercendo
um papel efetivo na execução de novas adaptações no sistema.
58
Figura 13. Diagrama de seqüência da resolução de testes online
3.2.1.3 Adaptação do Sistema
Após um aluno responder um teste online relacionado a um conteúdo no ambiente, o
Modelo de Adaptação recebe o percentual de seu nível de aprendizado. Com base nisto, executa a
respectiva regra de adaptação, primeiramente observando a nova evidência no nó correspondente ao
conteúdo na RB e atualizando os dados do perfil do aluno no Modelo de Usuário. Em seguida, a
partir da inferência realizada na RB, o Modelo de Adaptação consulta as probabilidades a posteriori
calculadas nos nós relacionados ao observado conforme as definições da regra, aplicando ao aluno
as modificações necessárias nos links do menu, as quais serão salvas no banco de dados no
momento em que o aluno desconectar do ambiente, para que possam ser recuperadas em seu
próximo acesso. O diagrama de caso de uso que representa este processo é apresentado na Figura
14, e sua respectiva descrição encontra-se no caso de uso UC003 disponível no Apêndice C.
59
Figura 14. Diagrama de caso de uso da adaptação do sistema
Os principais tipos de objetos envolvidos neste processo encontram-se relacionados no
diagrama de classes apresentado na Figura 15.
Figura 15. Diagrama de classe da adaptação do sistema
Conforme pode ser visualizado neste diagrama, a classe de limite associada ao processo é a
Tela002, a qual corresponde à página principal do sistema, na qual são apresentadas as adaptações
realizadas a cada aluno nas estruturas de navegação.
60
Além das classes de controle ModAdaptacao e ModUsuario, a classe ModDominio também
apresenta uma atuação importante no processo de adaptação do sistema. Representando o Modelo
de Domínio na aplicação, sua função neste caso é fornecer informações referentes aos conteúdos e
suas relações de pré-requisito ao Modelo de Adaptação, o qual por sua vez as utiliza durante a
execução das regras de adaptação para identificar, com base no conteúdo atualmente em estudo, os
nós da RB cujas probabilidades a posteriori deverão ser consultadas para definição de conteúdos a
serem indicados para reforço conforme a necessidade, ou para determinar o próximo conteúdo a ser
estudado pelo aluno quando este alcançar o desempenho necessário para tal. É importante
considerar que outros aspectos relativos ao Modelo de Domínio não foram tratados neste protótipo
pelo fato deste modelo não apresentar destaque no presente estudo.
As classes BayesNet, DiscreteVariable, DiscreteFunction e Inference representadas no
diagrama provêm de uma biblioteca utilizada para implementação da Rede Bayesiana no protótipo,
a qual será pormenorizada ao longo da Seção 3.3.1 deste trabalho. Neste diagrama, somente os
principais atributos e métodos das referidas classes encontram-se especificados, os quais foram
utilizados na construção e manipulação da RB modelada neste projeto. A classe BayesNet é a
responsável por manter a estrutura da RB, que neste caso encontra-se no Modelo de Usuário. A
classe DiscreteVariable, por sua vez, representa cada nó que compõe a RB. Já a classe
DiscreteFunction corresponde às funções de probabilidade definidas conforme as relações de
causalidade existentes entre os nós. Finalmente, a classe Inference é a responsável pela execução da
RB estruturada e pela realização de inferências a partir da observação de evidências em seus nós.
A partir da abordagem realizada sobre as principais classes envolvidas neste processo e seus
relacionamentos, o comportamento do processo de adaptação encontra-se detalhado por meio dos
diagramas de seqüência apresentados nas Figuras 16, 17 e 18. Em cada diagrama são especificadas
as interações realizadas entre as classes para execução de uma regra de adaptação definida. Nos
fluxos apresentados, as ações do Modelo de Adaptação representadas pelas mensagens 1 a 3 são as
mesmas para todas as regras de adaptação, as quais são executadas a cada nova adaptação
desencadeada por um teste online no sistema.
Assim, na Figura 16 encontra-se descrita a execução da regra correspondente ao nível de
aprendizado Insatisfatório. Neste diagrama, as mensagens 4 e 5 correspondem a observação de uma
nova evidência de nível de aprendizado Insatisfatório no nó da RB relativo ao conteúdo atual. Nas
mensagens 6 a 12 pode-se acompanhar o processo de atualização do perfil de usuário durante o
processamento da regra de adaptação. As mensagens 13 a 15, bem como 26 a 28, representam ações
executadas para modificação de configurações de adaptação dos links do menu. O processo de
61
busca por conteúdos pré-requisito é representado pelas mensagens 16 a 21, seguido da inferência
realizada nos nós correspondentes aos conteúdos recuperados, conforme pode ser observado nas
mensagens 22 a 25. Finalmente, após a realização das modificações necessárias nas configurações
de adaptação, o sistema as efetiva na interface gráfica, ação representada pela mensagem 29.
Figura 16. Diagrama de seqüência da adaptação do sistema – desempenho Insatisfatório
Na Figura 17, apresenta-se o comportamento do processo de adaptação na execução da regra
de adaptação relativa ao nível de aprendizado Regular.
62
Figura 17. Diagrama de seqüência da adaptação do sistema – desempenho Regular
No atual diagrama, as mensagens 4 e 5 correspondem a observação de uma nova evidência
de nível de aprendizado Regular no nó da RB relativo ao conteúdo atualmente relacionado às
63
questões dos testes. A busca por conteúdos relacionados ao atual é representada pelas mensagens 17
a 21. Caso o atual conteúdo possua conteúdos seguintes diretamente relacionados, a seguir são
executadas as mensagens 22 a 25 correspondentes à condição [conteudosRel != null], caso
contrário, são executadas as ações das mensagens 22 a 26 relativas à condição [else], sendo
realizada a busca do próximo conteúdo a ser estudado pelo aluno, para análise do impacto causado
no futuro desempenho do aluno com base em seu desempenho atual, representada na mensagem 27.
Finalmente, a Figura 18 detalha o comportamento correspondente à execução da regra de
adaptação referente ao nível de aprendizado Satisfatório. Neste diagrama, as mensagens 4 e 5
correspondem a observação de uma nova evidência de nível de aprendizado Satisfatório no nó da
RB correspondente ao conteúdo atual.
Figura 18. Diagrama de seqüência da adaptação do sistema – desempenho Satisfatório
64
3.2.2 Banco de Dados
O modelo lógico do banco de dados do E-Adapt, apresentado na Figura 19, foi projetado de
forma a estabelecer uma clara relação entre os dados, sendo aplicada a normalização a fim de
eliminar campos multivalorados e a redundância de dados, reduzindo conseqüentemente o risco de
inconsistências. Elaborado através da ferramenta DBDesigner9, o modelo apresenta atualmente 14
tabelas, cujos detalhes estão disponíveis no dicionário de dados apresentado no Apêndice D.
Figura 19. Modelo do banco de dados do E-Adapt
Embora os cadastros anteriormente descritos não tenham sido implementados neste
protótipo, as tabelas correspondentes foram incluídas neste modelo a fim de representá-los e assim
manter a relação lógica entre os dados, simulando um ambiente já em plena utilização. Quanto aos
9 Ferramenta de código aberto para modelagem de banco de dados MySQL, disponível em http://www.fabforce.net.
65
cadastros dos diferentes tipos de usuário do sistema, neste modelo foi representado somente o
Cadastro de Aluno, por ser o tipo de usuário que está sendo tratado no protótipo.
3.2.3 Rede Bayesiana
Com base na modelagem do problema anteriormente apresentada, a RB modelada neste
trabalho apresentou várias versões até ser obtida a sua versão final (Figura 20), a qual foi validada e
aprovada pelo especialista. Para a modelagem e validação desta RB, foi utilizada a ferramenta
Netica10, pelo fato desta apresentar uma interface intuitiva que permite uma clara visualização
gráfica dos relacionamentos definidos entre os nós e dos resultados de cada inferência realizada a
partir de evidências observadas.
Figura 20. Rede Bayesiana modelada para tratamento do problema
Nas seções que se seguem, é realizado o detalhamento da topologia da RB aqui apresentada,
bem como uma descrição detalhada do processo de coleta de dados para obtenção da amostra
utilizada nos cálculos das probabilidades a priori desta RB.
10 Ferramenta proprietária para modelagem de Redes Bayesianas, a qual dispõe de uma versão livre que permite construir redes contendo até 15 nós.
66
3.2.3.1 Estrutura
Neste protótipo esta RB possui estrutura fixa, pelo fato de estar sendo tratado um problema
referente a uma disciplina específica e o foco consistir na adaptação de links que dão acesso aos
seus conteúdos por meio da inferência realizada na RB. Em um ambiente completo e em plena
utilização, onde existiriam diferentes disciplinas sendo tratadas, certamente a RB teria que ser
construída dinamicamente, para apresentar uma topologia de acordo com definições específicas de
cada disciplina, de forma a atender a diferentes necessidades. Esta construção poderia ser feita por
meio de configurações envolvendo as variáveis de interesse no tratamento de um problema e suas
relações.
A RB deste trabalho contém nós que representam cada conteúdo a ser estudado pelos alunos
em Estrutura de Dados e os conteúdos de APC II relacionados. Além disso, há também um nó que
representa o resultado final da disciplina de Estrutura de Dados em termos de aprendizado, cuja
função será explanada ao longo desta seção. Cada nó possui três estados, sendo estes Insatisfatório,
Regular e Satisfatório, os quais estão diretamente relacionados com a classificação de nível de
aprendizado definida anteriormente. Inicialmente havia-se definido os estados Aprendido e Não
Aprendido, entretanto constatou-se que esta classificação era muito subjetiva para o tratamento do
problema, já a atual aproxima-se mais do histórico de desempenho dos alunos, conforme poderá ser
melhor observado na explanação referente aos cálculos das probabilidades a priori da RB, a qual é
apresentada mais adiante nesta seção.
Dentre os nós incluídos na RB, somente os relacionados aos conteúdos de Estrutura de
Dados terão evidências observadas a partir da resolução de testes online, representando portanto as
variáveis de entrada da RB. Os demais nós representam variáveis de saída, nos quais se refletem as
probabilidades de ocorrência dos eventos possíveis com base em evidências conhecidas.
Os arcos que conectam os nós desta RB definem, neste caso, relações de dependência entre
os conteúdos. O sentido da seta de cada relacionamento existente entre os nós depende do que se
deseja obter da RB. Tendo isto definido, o sentido de cada ligação pode ser obtido através da
fórmula do Teorema de Bayes, cujo termo indicador deste encontra-se destacado na Figura 21. Esta
mesma lógica também aplica-se à generalização do teorema apresentada na Equação 6 da Seção
2.5.2, a qual é utilizada para eventos com múltiplas evidências.
67
Figura 21. Termo indicador do sentido dos arcos na RB
Assim, considerando os objetivos da RB modelada neste trabalho, para que se possa obter
estimativas referentes ao nível de aprendizado alcançado em conteúdos da disciplina de APC II
dado o desempenho atual de um aluno em um conteúdo de Estrutura de Dados, é preciso que a RB
calcule as probabilidades P(Vetor | e), P(AlocDin | e) e P(Recursiv | e), onde e refere-se a uma
evidência relacionada ao conteúdo atualmente estudado. Logo, para que as probabilidades a
posteriori dos referidos nós sejam obtidas, é preciso que se tenha as probabilidades a priori P(e |
Vetor), P(e | AlocDin) e P(e | Recursiv) na TPC do nó correspondente ao conteúdo em que foi
observada a evidência, conforme o caso. Por isso, os relacionamentos envolvendo os nós Vetor,
AlocDin e Recursiv partem destes em direção aos nós dos conteúdos de Estrutura de Dados
relacionados.
No caso dos relacionamentos entre os nós correspondentes a esta disciplina, dada uma
evidência em um determinado conteúdo, é de interesse obter as probabilidades relacionadas ao nível
de aprendizado que o aluno poderá atingir nos conteúdos seguintes. Considerando que os conteúdos
Fila, Pilha e Métodos de Pesquisa são dependentes do contéudo Lista, tem-se relacionamentos
definidos entre os nós correspondentes na RB, os quais partem dos conteúdos dependentes para o
conteúdo pré-requisito pois deseja-se obter as probabilidades a posteriori P(Fila | Lista), P(Pilha |
Lista) e P(MetPesq | Lista).
Finalmente, considerando que o desempenho final na disciplina de Estrutura de Dados tem
como causas os desempenhos obtidos em seus conteúdos, os sentidos das setas dos relacionamentos
partem do nó EstruturaDados para os nós dos conteúdos devido ao fato de que para estimar as
probabilidades de desempenho em cada conteúdo, dado um desempenho observado no conteúdo
atualmente estudado, é preciso obter P(EstruturaDados | e1, e2, ..., en) , onde as evidências e1, ..., en
são os desempenhos já observados em conteúdos estudados. Afinal, um desempenho obtido em um
ou mais conteúdos afeta a probabilidade do resultado a ser obtido pelo aluno na disciplina como um
todo, e dado este efeito é possível estimar as probabilidades de suas causas. Logo, precisa-se ter as
probabilidades a priori P(e1 | EstruturaDados), ..., P(en | EstruturaDados).
Além da lógica explanada para compreensão dos relacionamentos definidos na RB
modelada, é importante considerar que uma RB consiste em uma base de conhecimento sobre um
68
determinado domínio, a qual representa o conhecimento e raciocínio do especialista (NASSAR,
2007). Assim, em linhas gerais, o raciocínio representado por esta RB em relação aos conteúdos da
disciplina de APC II, dado um desempenho alcançado em um conteúdo relacionado de Estrutura de
Dados, reflete que se o aluno obteve o desempenho atual então é provável que este tenha obtido um
desempenho d nos conteúdos pré-requisito. Da mesma forma, em relação aos conteúdos de
Estrutura de Dados, se um aluno obteve um desempenho d no conteúdo atualmente estudado, então
é provável que o aluno tenha obtido um desempenho d1 no conteúdo anterior, obtenha um
desempenho d2 ao final da disciplina e um desempenho d3 nos conteúdos seguintes. E se d2 é o
provável desempenho final então é porque provavelmente o aluno obterá um desempenho d4 nos
conteúdos.
Para a realização das inferências na RB tratada, as TPCs de seus nós foram inicializadas
com probabilidades a priori previamente calculadas a partir de uma amostra de dados, conforme
explanado a seguir.
3.2.3.2 Amostra de Dados
Para o cálculo das probabilidades a priori dos nós da rede bayesiana modelada, obteve-se
uma amostra de dados de avaliações proveniente de diários de classe das turmas de APC II e
Estrutura de Dados do semestre 1998/2 até o semestre 2007/1. Resultados de avaliações são o que
se tem de mais concreto em relação ao aprendizado dos alunos nas disciplinas, sendo este o critério
adotado nos sistemas de avaliação existentes. Apesar disto, constituem uma incerteza em relação ao
real conhecimento adquirido pelos alunos, sendo exatamente isto que está sendo tratado através da
rede bayesiana aplicada ao protótipo. Assim, embora o processo desencadeador das adaptações no
sistema não esteja envolvendo avaliações neste caso, esse tipo de dado foi considerado o mais
conexo com o problema tratado.
Uma vez obtidos os referidos diários de classe, realizou-se primeiramente uma análise de
casos que deveriam ser desprezados na amostra. Assim, foram excluídos todos os alunos que se
matricularam nas disciplinas mencionadas e não as cursaram. A seguir, verificou-se, com base na
estrutura da RB modelada, a existência de diferentes grupos de alunos a serem considerados para a
obtenção das probabilidades a priori de cada nó. Na topologia apresentada, existem nós que estão
relacionados somente à disciplina de APC II (Vetor, AlocDin e Recursiv), nós que correspondem
somente à disciplina de Estrutura de Dados (Fila, Pilha e EstruturaDados) e também aqueles que
vinculam ambas as disciplinas, conforme as relações de dependência existentes entre seus
conteúdos, como é o caso dos nós Lista, Árvore, Métodos de Pesquisa e Métodos de Ordenação.
69
Com isso, foram identificados três diferentes conjuntos: (i) alunos que cursaram APC II; (ii) alunos
que cursaram Estrutura de Dados; e (iii) alunos que cursaram APC II e Estrutura de Dados.
A partir dessas definições, o próximo passo foi determinar o tamanho da amostra para cada
grupo. Para os dois primeiros, contabilizou-se o total de alunos nos diários da disciplina
correspondente. No caso do terceiro grupo, analisou-se os diários de classe em pares11, sendo
contabilizados somente os alunos que cursaram APC II em um semestre e Estrutura de Dados no
semestre seguinte, por serem de interesse os casos em que alunos iniciaram seus estudos na nova
disciplina logo após seu aprendizado na disciplina pré-requisito. Assim, obteve-se as seguintes
amostras:
• 327 alunos cursaram APC II;
• 279 alunos cursaram Estrutura de Dados; e
• 131 alunos cursaram APC II e Estrutura de Dados em semestres consecutivos.
Assim, pelo ponto de vista da disciplina de APC II, constatou-se que de 327 alunos que a
cursaram, somente 131 cursaram Estrutura de Dados no semestre seguinte. Analisando os dados dos
diários de classe de APC II, foi possível observar que do restante dos alunos contabilizados, muitos
não continuaram cursando após uma ou mais reprovações na disciplina, já que não foi possível
encontrar registros de suas aprovações em nenhum desses diários após estas tentativas. Outros
foram aprovados após alguns semestres, mas não cursaram Estrutura de Dados já no semestre
consecutivo.
Sob a ótica da disciplina de Estrutura de Dados, observou-se que dos 279 alunos
contabilizados somente 131 cursaram APC II no semestre imediatamente anterior. Pela análise dos
diários de classe, pode-se deduzir com isso que mais da metade da referida amostra é composta por
alunos que já estavam repetindo a disciplina, ou que haviam deixado de cursá-la no semestre
seguinte ao que cursaram APC II.
Cada amostra aqui apresentada foi considerada para a definição das probabilidades a priori
dos nós correspondentes a cada grupo especificado nesta seção. Assim, tem-se que: (i) para os nós
Vetor, AlocDin e Recursiv considerou-se a amostra de 327 alunos; (ii) para os nós Fila, Pilha e
EstruturaDados, utilizou-se a amostra de 279 alunos; e (iii) para os nós Lista, Arvore, MetPesq e
11 Cada par corresponde a um diário de APC II do semestre x e um de Estrutura de Dados do semestre x + 1.
70
MetOrd, aplicou-se a amostra de 131 alunos. Com base nisto, encontra-se detalhado na seção a
seguir o procedimento dos cálculos realizados para obtenção das referidas probabilidades.
3.2.3.3 Cálculo das Probabilidades a Priori
Em cada nó da RB, a definição das probabilidades a priori para cada estado em relação a
cada combinação possível de estados de nós pais deu-se a partir da contabilização de casos
correspondentes nos diários de classe, os quais combinam resultados de avaliações dos conteúdos
relacionados. No caso de nós que não apresentam nós pais, como é o caso dos nós Vetor, AlocDin,
Recursiv e EstruturaDados, realizou-se para cada um a contabilização da quantidade total dos
respectivos resultados de avaliações classificados em cada um de seus estados.
Para essas contabilizações, pelo fato de se estar lidando com avaliações reais, foram
consideradas as faixas de notas previamente definidas com o especialista, as quais correspondem às
classificações de nível de aprendizado envolvidas no tratamento do problema, conforme
especificado a seguir:
• Insatisfatório para nota ≤ 5,0;
• Regular para 5,0 < nota ≤ 7,0; e
• Satisfatório para nota > 7,0.
Além disso, fez-se necessário um levantamento de informações referentes às avaliações
junto aos professores das disciplinas de APC II e Estrutura de Dados da UNIVALI, com o objetivo
de identificar os conteúdos tratados em cada avaliação presente nos diários de classe obtidos. Neste
caso somente as provas são de interesse, pelo fato de apresentarem uma dinâmica de resolução
semelhante aos testes online aplicados no protótipo. Tendo em vista que os dados de avaliação
considerados para os cálculos apresentados nesta seção provém de diários tanto do antigo sistema
de avaliação quanto do novo12, para cada disciplina foram observadas diferentes situações
envolvendo as avaliações em ambos os sistemas. Isto justifica a adoção das classificações de
desempenho definidas neste trabalho, cujas faixas de nota podem ser aplicadas a qualquer uma das
referidas situações, as quais encontram-se detalhadas nesta seção.
12 O antigo sistema de avaliação apresentava duas médias parciais, M1 e M2. Já o novo sistema apresenta três médias parciais, sendo estas M1, M2 e M3.
71
Considerando a disciplina de APC II no antigo sistema de avaliação, foram detectados os
casos especificados a seguir, cada qual com diferentes definições relativas aos conteúdos cobrados
em cada avaliação:
1. Uma avaliação por média: nos diários aplicáveis a este caso encontram-se registradas
somente as avaliações VP1 (Verificação Parcial 1) e VP2 (Verificação Parcial 2). Nesta
situação, considerou-se para a primeira avaliação os conteúdos de Vetor e
Recursividade, e para a segunda o conteúdo de Alocação Dinâmica; e
2. Duas avaliações por média: nesta outra situação, os diários correspondentes possuem
registro das avaliações AC1 (Avaliação Curricular 1), VP1, AC2 (Avaliação Curricular
2) e VP2, sendo as duas primeiras referentes à M1 e as duas últimas relativas à M2. No
presente caso, relacionou-se os conteúdos de Vetor, Recursividade e Alocação Dinâmica
respectivamente às avaliações VP1, AC2 e VP2.
Levando em conta esta mesma disciplina em relação ao novo sistema de avaliação, tem-se
outros casos específicos com diferentes relações definidas entre os conteúdos de interesse e as
avaliações, conforme se segue:
1. Uma avaliação por média: nos diários correspondentes a este caso, tem-se uma AC para
cada média parcial. Com isso, definiu-se que nesta situação a AC1 corresponde ao
conteúdo de Vetor, a AC2 ao conteúdo de Recursividade e a AC3 ao conteúdo de
Alocação Dinâmica;
2. Duas avaliações por média: nesta situação tem-se um total de 6 ACs, onde as avaliações
AC1 e AC2 correspondem à M1, as avaliações AC3 e AC4 correspondem à M2 e as
avaliações AC5 e AC6 correspondem à M3. Neste caso, considera-se os conteúdos
Vetor, Recursividade e Alocação Dinâmica relacionados às avaliações AC2, AC4 e AC6
respectivamente. As demais avaliações tratam de outros conteúdos da disciplina que não
se encontram envolvidos no presente problema; e
3. Três avaliações por média: em diários de classe que se aplicam a este caso, tem-se um
total de 9 ACs. Segundo informações obtidas, para cada uma das médias parciais, a
primeira avaliação consiste em um trabalho, a segunda trata-se de uma prova e a terceira
corresponde à nota de participação. Com isso, são consideradas neste caso somente as
avaliações AC2, AC5 e AC8, as quais correspondem respectivamente aos conteúdos
Vetor, Recursividade e Alocação Dinâmica.
72
Considerando agora a disciplina de Estrutura de Dados no antigo sistema de avaliação, tem-
se as seguintes relações definidas entre seus conteúdos e as avaliações aplicadas: (i) AC1
corresponde a um trabalho sobre Lista, Fila e/ou Pilha, conforme o semestre; (ii) VP1 consiste em
uma prova individual e sem consulta sobre os conteúdos de Lista, Fila e Pilha; (iii) AC2 trata-se de
um trabalho relacionado a Árvore, Métodos de Pesquisa e/ou Métodos de Ordenação, conforme o
semestre; e (iv) VP2 corresponde a uma prova individual sem consulta sobre os conteúdos de
Árvore, Métodos de Pesquisa e Métodos de Ordenação.
Já no novo sistema de avaliação, tem-se nesta mesma disciplina duas avaliações para cada
média parcial, as quais consistem em um trabalho e uma prova individual sem consulta relacionadas
aos conteúdos lecionados, conforme especificado a seguir: (i) na M1, ambas as avaliações
correspondem ao conteúdo de Lista; (ii) na M2, as referidas avaliações relacionam-se aos conteúdos
de Fila e Pilha; e (iii) para a M3, o trabalho corresponde ao conteúdo de Métodos de Ordenação e a
prova refere-se aos conteúdos de Árvore, Métodos de Pesquisa e Métodos de Ordenação.
Tendo estas informações em mente, realizou-se os cálculos das probabilidades a priori de
cada nó da RB com base nos dados de avaliações presentes nos diários de classe. O procedimento
realizado para estes cálculos será explanado por meio de um exemplo relacionado a cada um dos
grupos de nós especificados na seção anterior. Assim, dentre os nós relacionados somente à
disciplina de APC II, toma-se como exemplo o nó Vetor. No caso dos nós relacionados somente à
Estrutura de Dados, o cálculo é exemplificado por meio dos nós Fila e EstruturaDados, para os
quais as probabilidades foram definidas sob diferentes critérios. Finalmente, para os nós que
encadeiam ambas as disciplinas, selecionou-se para exemplo o nó MetPesq.
Assim, para o cálculo das probabilidades a priori do nó Vetor, foram contabilizados nos
diários de classe de APC II todos os alunos que apresentaram desempenho Insatisfatório, Regular e
Satisfatório nas provas relativas a este conteúdo, sendo obtidos os totais discriminados na Tabela 3.
Tabela 3. Dados para o Cálculo de Probabilidades do nó Vetor
Insatisfatório Regular Satisfatório Total
133 100 94 327
A seguir, dividiu-se cada uma destas quantidades pelo tamanho da amostra correspondente,
sendo 327 alunos neste caso, e assim chegou-se às seguintes probabilidades: (i) P(Insatisfatório) =
41%; (ii) P(Regular) = 30%; e (iii) P(Satisfatório) = 29%. Este mesmo processo foi aplicado para o
cálculo das probabilidades dos nós Recursiv e AlocDin.
73
Para definição das probabilidades do nó EstruturaDados, o procedimento foi semelhante ao
descrito, mas neste caso considerou-se na contabilização as médias finais da disciplina relacionada,
pelo fato deste nó representar seu resultado final. Desta forma, constatou-se para cada nível de
aprendizado as quantidades de alunos especificadas na Tabela 4.
Tabela 4. Dados para o Cálculo de Probabilidades do nó EstruturaDados
Insatisfatório Regular Satisfatório Total
117 107 55 279
Estes totais foram divididos pelo tamanho da amostra considerada para os nós deste grupo, a
qual corresponde a 279 alunos. Assim, para este nó tem-se P(Insatisfatório) = 42%, P(Regular) =
38% e P(Satisfatório) = 20%.
No que se refere ao nó Fila, o qual apresenta relação com o nó EstruturaDados, precisou-se
calcular as seguintes probabilidades:
• P(Fila Insatisfatório | EstruturaDados Insatisfatório);
• P(Fila Regular | EstruturaDados Insatisfatório);
• P(Fila Satisfatório | EstruturaDados Insatisfatório);
• P(Fila Insatisfatório | EstruturaDados Regular);
• P(Fila Regular | EstruturaDados Regular);
• P(Fila Satisfatório | EstruturaDados Regular);
• P(Fila Insatisfatório | EstruturaDados Satisfatório);
• P(Fila Regular | EstruturaDados Satisfatório); e
• P(Fila Satisfatório | EstruturaDados Satisfatório);
Para isso, primeiramente realizou-se, nos diários de classe desta disciplina, a contabilização
de alunos cujos resultados obtidos na prova relativa ao conteúdo Fila e na média final enquadram-se
em cada caso correspondente, chegando-se aos totais especificados na Tabela 5.
Tabela 5. Dados para o Cálculo de Probabilidades do nó Fila
Fila EstruturaDados
Insatisfatório Regular Satisfatório Total
Insatisfatório 91 19 8 118
Regular 14 43 49 106
Satisfatório 2 7 46 55
74
Com base nestes totais, foram calculadas as probabilidades a priori do nó Fila. Logo, para
cada evento possível deste nó, dado que houve um desempenho Insatisfatório no resultado final da
disciplina de Estrutura de Dados, tem-se:
• P(Fila Insatisfatório | EstruturaDados Insatisfatório) = 91/118 = 77%;
• P(Fila Regular | EstruturaDados Insatisfatório) = 19/118 = 16%; e
• P(Fila Satisfatório | EstruturaDados Insatisfatório) = 19/118 = 7%.
Da mesma forma, dado que foi obtido um desempenho Regular ao final da disciplina, foram
calculadas as probabilidades de desempenho para o conteúdo Fila especificadas a seguir:
• P(Fila Insatisfatório | EstruturaDados Regular) = 14/106 = 13%;
• P(Fila Regular | EstruturaDados Regular) = 43/106 = 41%; e
• P(Fila Satisfatório | EstruturaDados Regular) = 49/106 = 46%.
Finalmente, as probabilidades de aprendizado do conteúdo Fila, dado que houve um
desempenho Satisfatório em Estrutura de Dados, são obtidas por:
• P(Fila Insatisfatório | EstruturaDados Satisfatório) = 2/55 = 3%;
• P(Fila Regular | EstruturaDados Satisfatório) = 7/55 = 13%; e
• P(Fila Satisfatório | EstruturaDados Satisfatório) = 46/55 = 84%.
Para concluir esta seção, apresenta-se o exemplo de cálculo de probabilidades a priori
referente ao nó MetPesq, cujos nós pais são Vetor e EstruturaDados, conforme visualizado
anteriormente. Neste caso, para a definição das probabilidades correspondentes a cada caso
representado na TPC, considerou-se a amostra de alunos que cursaram APC II e Estrutura de Dados
em semestres consecutivos. Então foram contabilizados, para cada relação de estados possível entre
os nós envolvidos, os alunos pertencentes à referida amostra que possuem as respectivas
combinações de resultados obtidos na média final de Estrutura de Dados e nas avaliações
relacionadas aos conteúdos de Vetor e Métodos de Pesquisa. Na Tabela 6, apresenta-se o total de
alunos contabilizados para cada caso.
75
Tabela 6. Dados para o Cálculo de Probabilidades do nó MetPesq
Vetor MetPesq EstruturaDados
Insatisfatório Regular Satisfatório Total
Insatisfatório Insatisfatório 17 0 0 17
Insatisfatório Regular 4 3 2 9
Insatisfatório Satisfatório 0 0 1 1
Regular Insatisfatório 9 1 1 11
Regular Regular 6 7 6 19
Regular Satisfatório 2 3 6 11
Satisfatório Insatisfatório 18 0 0 18
Satisfatório Regular 13 2 4 19
Satisfatório Satisfatório 2 11 13 26
A partir das quantidades especificadas, definiu-se a probabilidade a priori de cada
classificação de nível de aprendizado do nó MetPesq em relação às combinações de classificações
de seus nós pais, conforme detalhado a seguir:
• P(MetPesq Insatisfatório | Vetor Insatisfatório, EstruturaDados Insatisfatório) = 17/17 = 100%;
• P(MetPesq Regular | Vetor Insatisfatório, EstruturaDados Insatisfatório) = 0/17 = 0%;
• P(MetPesq Satisfatório | Vetor Insatisfatório, EstruturaDados Insatisfatório) = 0/17 = 0%;
• P(MetPesq Insatisfatório | Vetor Insatisfatório, EstruturaDados Regular) = 4/9 = 45%;
• P(MetPesq Regular | Vetor Insatisfatório, EstruturaDados Regular) = 3/9 = 33%;
• P(MetPesq Satisfatório | Vetor Insatisfatório, EstruturaDados Regular) = 2/9 = 22%;
• P(MetPesq Insatisfatório | Vetor Insatisfatório, EstruturaDados Satisfatório) = 0/1 = 0%;
• P(MetPesq Regular | Vetor Insatisfatório, EstruturaDados Satisfatório) = 0/1 = 0%;
• P(MetPesq Satisfatório | Vetor Insatisfatório, EstruturaDados Satisfatório) = 1/1 = 100%;
• P(MetPesq Insatisfatório | Vetor Regular, EstruturaDados Insatisfatório) = 9/11 = 82%;
• P(MetPesq Regular | Vetor Regular, EstruturaDados Insatisfatório) = 1/11 = 9%;
• P(MetPesq Satisfatório | Vetor Regular, EstruturaDados Insatisfatório) = 1/11 = 9%;
• P(MetPesq Insatisfatório | Vetor Regular, EstruturaDados Regular) = 6/19 = 31,5%;
• P(MetPesq Regular | Vetor Regular, EstruturaDados Regular) = 7/19 = 37%;
• P(MetPesq Satisfatório | Vetor Regular, EstruturaDados Regular) = 6/19 = 31,5%;
• P(MetPesq Insatisfatório | Vetor Regular, EstruturaDados Satisfatório) = 2/11 = 18,2%;
• P(MetPesq Regular | Vetor Regular, EstruturaDados Satisfatório) = 3/11 = 27,3%;
76
• P(MetPesq Satisfatório | Vetor Regular, EstruturaDados Satisfatório) = 6/11 = 54,5%;
• P(MetPesq Insatisfatório | Vetor Satisfatório, EstruturaDados Insatisfatório) = 18/18 = 100%;
• P(MetPesq Regular | Vetor Satisfatório, EstruturaDados Insatisfatório) = 0/18 = 0%;
• P(MetPesq Satisfatório | Vetor Satisfatório, EstruturaDados Insatisfatório) = 0/18 = 0%;
• P(MetPesq Insatisfatório | Vetor Satisfatório, EstruturaDados Regular) = 13/19 = 68,42%;
• P(MetPesq Regular | Vetor Satisfatório, EstruturaDados Regular) = 2/19 = 10,53%;
• P(MetPesq Satisfatório | Vetor Satisfatório, EstruturaDados Regular) = 4/19 = 21,05%;
• P(MetPesq Insatisfatório | Vetor Satisfatório, EstruturaDados Satisfatório) = 2/26 = 8%;
• P(MetPesq Regular | Vetor Satisfatório, EstruturaDados Satisfatório) = 11/26 = 42%; e
• P(MetPesq Satisfatório | Vetor Satisfatório, EstruturaDados Satisfatório) = 13/26 = 50%.
Para maiores esclarecimentos a respeito das probabilidades a priori obtidas para cada nó da
RB, as TPCs correspondentes são apresentadas integralmente no Apêndice E.
3.3 IMPLEMENTAÇÃO
O E-Adapt foi desenvolvido em Java EE 5.0, seguindo o padrão de arquitetura MVC (Model
View Control) e padrão de persistência JPA (Java Persistence API). A partir da análise do projeto,
iniciou-se a definição das tecnologias a serem empregadas na implementação do presente sistema.
Assim, considerando a necessidade de manipulação de componentes de interface para realização
das adaptações no protótipo, optou-se por desenvolver a aplicação web utilizando JavaServer Faces
(JSF) 1.2 e Ajax4jsf 1.1.0. Para a camada de persistência, selecionou-se o provedor JPA Hibernate,
o qual conecta-se ao MySQL 5.0, banco de dados utilizado nesta aplicação. Os módulos do
provedor utilizados são o Hibernate Annotations 3.3.0, Hibernate Core 3.2 e Hibernate
EntityManager 3.3.1. Finalmente, como servidor de aplicação adotou-se o Glassfish 2.0, por ser um
servidor totalmente compatível com a especificação Java EE.
O JSF é um framework destinado à criação de interfaces gráficas para aplicações web que
especifica um modelo de programação baseado na arquitetura MVC, estabelecendo um padrão para
o desenvolvimento de aplicações web com alta produtividade e componentização. Este framework é
composto por um conjunto de APIs que permitem o tratamento de eventos de inferface gráfica,
validação de dados e navegação, bem como a representação de componentes e gerenciamento de
seus estados (BELLIA & SENGER, 2007). Considerando os recursos oferecidos por esta tecnologia
frente à principal funcionalidade deste protótipo, julgou-se esta como sendo a mais apropriada para
os tratamentos necessários nos links que são adaptados na interface do ambiente, sendo aplicados
77
para tal, conceitos como os de renderização e binding, conforme será visto na Seção 3.3.3. Para
atualização automática das estruturas de navegação adaptadas, adotou-se o uso do Ajax4jsf13, um
framework de código aberto que fornece 18 tags JSP que possibilitam integrar Ajax (Asynchronous
JavaScript with XMLHttpRequest) a aplicações JSF com muita praticidade, provendo à aplicação a
capacidade de renderizar somente parte uma árvore de componentes JSF, ao invés de toda a árvore
(GEARY & HORSTMANN, 2007).
Considerando as camadas da arquitetura adotada para o desenvolvimento deste protótipo,
faz-se necessário apresentar primeiramente uma visão geral da implementação realizada no E-
Adapt, a fim de prover maior esclarecimento sobre seu funcionamento em relação às tecnologias
utilizadas. Na camada de visão, encontram-se as páginas desta aplicação web, as quais são criadas
por meio da utilização de bibliotecas de tags JSF para inclusão de componentes de interface do
framework. No E-Adapt foram utilizadas as bibliotecas de tag padrão, sendo estas a JSF core e JSF
html. Conforme Bellia e Senger (2007), através das tags da primeira, geralmente prefixadas com a
letra f, torna-se possível adicionar componentes para validação, conversão de dados e listeners,
entre outros recursos. Já as tags da biblioteca JSF html, geralmente prefixadas com a letra h, geram
código HTML e Javascript, o qual é interpretado pelo navegador de Internet. Assim, torna-se
possível utilizar componentes HTML com recursos adicionais, conforme será visto ao longo desta
seção. No caso das páginas envolvidas no mecanismo de adaptação, também foram utilizadas tags
do framework Ajax4jsf, geralmente prefixadas com “a4j”, sendo estas <a4j:commandButton> e
<a4j:commandLink>, cuja aplicação será explanada nas Seções 3.3.2 e 3.3.3 respectivamente. Estas
tags são bastante similares às tags <h:commandButton> e <h:commandLink> da biblioteca JSF
html, a única diferença é que ao clicar no componente é gerada uma requisição Ajax ao servidor.
Assim, após a resposta ser retornada ao final do ciclo de vida JSF, é realizada uma re-renderização
dinâmica de componentes e/ou área da página pré-definidos no atributo reRender, permitindo a
exibição dos componentes atualizados após quaisquer alterações realizadas durante a execução de
um processo.
As páginas da aplicação estabelecem comunicação com a camada de controle através de
Expression Languages (EL) e Managed Beans. Um Managed Bean consiste em uma classe Java
que, registrada e associada a um nome no arquivo de configuração do JSF, torna objetos de controle
acessíveis à camada de visão ao ser instanciada. As ELs, por sua vez, utilizam o nome associado
13 Documentação disponível em http://labs.jboss.com/jbossajax4jsf/docs/devguide/en/html/index.html.
78
para vincular as informações disponibilizadas pelo Managed Bean ao conteúdo de uma página web,
permitindo que esta acesse os elementos internos de sua instância por meio de métodos acessores
(BELLIA & SENGER, 2007).
No E-Adapt, os Managed Beans são as classes de controle Sistema, ModAdaptacao,
ModDominio e Teste, cujos atributos são acessados pelas páginas login.jsp, index.jsp, conteudo.jsp
e teste.jsp respectivamente, quando estas são carregadas. No caso dos dois primeiros, uma vez
carregada a página correspondente, a instância permanece durante toda a sessão do usuário. Os
recursos mencionados são de grande utilidade à funcionalidade do protótipo, conforme será visto
nas seções seguintes. As referidas classes, pertencentes à camada de controle, encontram-se
implementadas no pacote “controle” juntamente com as classes Controle e ModUsuario, sendo esta
última acessada somente pela classe ModAdaptacao, motivo pelo qual esta não tornou-se um
Managed Bean. Cada classe de controle possui atributos de tipos correspondentes a entidades do
sistema e métodos sets e gets para que estas possam ser acessadas no mecanismo explanado, as
quais por sua vez possuem seus próprios métodos acessores para acesso a atributos mais
específicos, que também podem ser acessados pela página.
Na camada de modelo, tem-se as classes de entidade implementadas no pacote de mesmo
nome. A entidade é um dos principais conceitos relacionados ao JPA, a qual corresponde a um
objeto que pode ser armazenado no banco de dados a partir de um mecanismo de persistência. Uma
classe que a implementa é chamada de POJO (Plain Old Java Object), a qual possui basicamente
um construtor padrão sem argumentos, uma chave primária e métodos acessores, apresentando
correspondência direta com uma tabela do banco de dados por meio de anotações do JPA. Isto
denomina-se mapeamento objeto-relacional (BELLIA, 2007), para o qual está sendo utilizado o
Hibernate neste projeto. Essas anotações, as quais são precedidas de “@”, podem ser associadas
tanto a classes quanto aos seus atributos, conforme sua função. Dentre essas anotações também
existem as que permitem mapear os relacionamentos entre os POJOs, da mesma forma como estão
definidos entre as tabelas do banco de dados, algo que proporciona grande praticidade no acesso a
dados na aplicação. Além das anotações de mapeamento que definem a cardinalidade desses
relacionamentos, os atributos das classes implementadas que representam chaves estrangeiras de
uma tabela devem ser do tipo correspondente ao da classe à qual encontram-se relacionados. Já a
classe de origem do relacionamento deve conter um atributo do tipo correspondente ao da classe de
destino. Esta prática pode ser observada nas classes de entidade modeladas neste trabalho.
Além dessas classes, tem-se as classes DAO da camada de persistência, as quais encontram-
se implementadas no pacote “dao” da aplicação e são responsáveis por operações de persistência
79
utilizando as configurações definidas na classe de controle genérica descrita na Seção 3.2.1, as
quais correspondem ao padrão de persistência utilizado neste projeto.
Considerando que o sistema como um todo é composto pela RB apresentada na Seção 3.2.3,
um mecanismo de adaptação envolvendo as classes implementadas e uma interface que exterioriza
os resultados das adaptações aplicadas a cada aluno, seu desenvolvimento foi iniciado a partir da
RB. Uma vez concluída sua implementação, desenvolveu-se o referido mecanismo e a interface
gráfica, conforme será detalhado nas seções que se seguem.
3.3.1 Rede Bayesiana
A Rede Bayesiana aplicada ao protótipo deste trabalho foi implementada através da
integração de uma biblioteca desenvolvida em Java denominada EBayes. Esta seção destina-se à
especificação da referida biblioteca e do algoritmo de inferência utilizado por esta, bem como ao
detalhamento da implementação realizada a partir da importação de suas classes no projeto. Nesta
mesma seção também encontra-se exposta a análise de viabilidade realizada em relação ao uso desta
biblioteca.
3.3.1.1 Biblioteca EBayes
A biblioteca EBayes 0.1 consiste em uma engine completa e genérica para construção e
manipulação de Redes Bayesianas, a qual permite implementá-las de forma que possam ser
embutidas nas aplicações a que se destinam. Esta biblioteca é a base do JavaBayes14, um sistema
para modelagem e manipulação de RBs desenvolvido na Escola Politécnica da Universidade de São
Paulo (USP) e distribuído sob licença GNU (COZMAN, 1999). A biblioteca é distribuída sob a
forma de um arquivo .jar15 executável em qualquer Máquina Virtual Java, podendo ser importado
em um projeto para utilização de suas classes.
Considerando estas informações, primeiramente analisou-se a viabilidade de aplicação desta
biblioteca para implementação da RB no presente sistema. Para isso, foi necessário confirmar se
uma mesma RB modelada no Netica e no JavaBayes apresentaria consistência em relaçao às
probabilidades a posteriori calculadas para seus nós. Embora essas ferramentas apliquem diferentes
algoritmos de inferência, os resultados deveriam ser os mesmos. Assim, para realizar esta validação,
foram modeladas algumas RBs em ambas as ferramentas, com idêntica topologia e mesmas 14 Disponível em http://www.cs.cmu.edu/~javabayes/Home/. 15 Disponível em http://www.pmr.poli.usp.br/ltd/.
80
probabilidades a priori fictícias nas TPCs, a fim de comparar os resultados obtidos nas inferências
realizadas. Procedeu-se desta forma porque quando estas validações foram realizadas a RB deste
trabalho ainda estava em fase de modelagem e ainda não haviam sido obtidos todos os dados para a
definição de suas probabilidades a priori.
A partir dessas validações preliminares, foi possível comprovar a compatibilidade entre as
ferramentas, confirmando a viabilidade de utilização da referida biblioteca. No momento em que a
estrutura definitiva da RB foi modelada no Netica e as respectivas probabilidades a priori foram
calculadas, esta foi modelada também no JavaBayes e então uma última validação foi realizada. A
partir disto, deu-se início ao estudo da biblioteca EBayes para implementação da Rede Bayesiana,
conforme será explanado adiante nesta seção.
3.3.1.2 Algoritmo de Inferência do EBayes
O algoritmo para inferência em Redes Bayesianas utilizado na biblioteca EBayes consiste
em uma generalização do algoritmo de Eliminação de Variáveis, o qual é classificado como um
método exato de propagação. Basicamente, o algoritmo consiste em eliminar (somando)
repetitivamente as variáveis da RB para calcular probabilidades a posteriori de variáveis específicas
(PERAZZO & COZMAN, 2004), conforme será visto nesta seção. Para uma melhor compreensão
da explanação que será apresentada sobre este método, faz-se necessária a introdução das notações
adotadas por Cozman (2000):
• Uma letra maiúscula e em negrito simboliza um conjunto de variáveis (exemplos: X e
Y);
• X\Y indica um conjunto de variáveis que pertence a X mas não a Y;
• A expressão ∑X f(X, Y) denota que todas as variáveis em X são eliminadas (somando)
da função f(X, Y);
• p(X) é a densidade de probabilidade de X;
• p(x) é o valor da probabilidade do evento {X = x};
• p(X | Y) indica densidade de probabilidade X condicional a valores de Y;
• O conjunto de variáveis pa(Xi) denota os pais de uma variável aleatória Xi;
• O conjunto de variáveis ch(Xi) denota os filhos de Xi; e
• O conjunto de variáveis spo(Xi) denota os pais dos filhos de Xi que não sejam eles
próprios filhos.
81
Considerando uma RB composta por variáveis aleatórias X com um número finito de
estados possíveis, evidência E e variáveis questionadas Xq, inferir p(Xq | E) envolve comumente um
subconjunto das densidades de probabilidades da RB. Assim, se a densidade p(Xi | pa(Xi)) for
necessária para realização de uma inferência, isto torna Xi uma variável requisitada pertencente ao
conjunto XR. Variáveis do conjunto Xq necessariamente pertencem ao conjunto XR, mas no que se
refere às variáveis observadas, somente aquelas que possuem variáveis pais não observadas em XR
pertencem a este conjunto. O interesse consiste em calcular a expressão apresentada na Equação 8,
onde as densidades de probabilidade devem ser restritas a domínios em que não há nenhuma
evidência (COZMAN, 2000).
Equação 8
Seja N o número de variáveis requisitadas não observadas e não incluídas em Xq. Supondo
que essas variáveis encontram-se em uma ordem específica, tem-se uma seqüência {X1, X2, X3, ... ,
XN}. Desta forma, tem-se a expressão especificada na Equação 9, conforme Cozman (2000).
Equação 9
A ordenação das variáveis a serem eliminadas é arbitrária, contudo diferentes ordenações
resultam em diferentes cargas computacionais. Uma vez definida esta ordenação, o algoritmo cria
estruturas de dados denominadas buckets, onde cada bucket contém uma variável Xi a ser eliminada
e todas as densidades que a incluem. A seqüência de buckets criada é denominada árvore de buckets
(PERAZZO & COZMAN, 2004).
Pelo fato de X1 aparecer somente em densidades p(Xj | pa(Xj)) para Xj pertencente ao
conjunto {X1, ch(X1)}, pode-se acionar o somatório das densidades para X1 conforme demonstrado
na Equação 10, e assim eliminar esta variável do problema, pois neste ponto já terão sido
“utilizadas” as densidades correspondentes.
Equação 10
82
Para uma visualização mais clara das operações, pode-se definir a densidade não
normalizada especificada na Equação 11.
Equação 11
Considerando as variadas densidades de probabilidade da RB em um conjunto de
densidades D, o procedimento consiste em coletar as densidades que contém X1, retirá-las de D,
construir a nova densidade não normalizada p(ch(X1) | pa(X1), spo(X1)) e adicioná-la ao conjunto.
Uma vez eliminada a variável X1, o mesmo procedimento é realizado para X2. Assim, são coletadas
e retiradas de D todas as densidades que contém esta variável, a seguir estas são multiplicadas e
soma-se X2. O resultado destas operações deve ser novamente uma densidade, a qual é colocada no
referido conjunto, então passa-se para a variável X3 e assim sucessivamente. Ao final, tem-se
algumas densidades (pelo menos uma) para Xq. Sendo estas multiplicadas e o resultado normalizado
apropriadamente, obtem-se p(Xq | E).
Em suma, a idéia deste algoritmo é multiplicar as densidades que integram D em uma
determinada seqüência, sempre tentando eliminar variáveis o mais breve possível a fim de manter
produtos intermediários em uma dimensão tratável (COZMAN, 2000). Supondo que se deseje
computar a densidade de probabilidade marginal para cada variável que integra uma RB, a
generalização do algoritmo permite, através do armazenamento de resultados intermediários durante
o processo de eliminação, produzir inferências a todas as variáveis da RB de forma conjunta. Para
isso, tendo em vista que o algoritmo de Eliminação de Variáveis consiste em percorrer uma única
vez a árvore de buckets, essa generalização adiciona ao algoritmo uma segunda passagem pela
estrutura (PERAZZO & COZMAN, 2004). Maiores detalhes a respeito da referida generalização
encontram-se disponíveis em (COZMAN, 2000).
3.3.1.3 Implementação da Rede Bayesiana com EBayes
O estudo da biblioteca EBayes para implementação da presente RB foi realizado a partir de
sua documentação JavaDoc16 contendo as especificações das classes, além de códigos-fonte de
alguns exemplos de RBs modeladas que acompanham o JavaBayes, disponíveis no site
16 Disponível em http://www.pmr.poli.usp.br/ltd/Software/EBayes/JavaDoc/index.html.
83
correspondente à biblioteca. Para esclarecimento de dúvidas, também entrou-se em contato com o
desenvolvedor.
A partir deste estudo, deu-se início à implementação da RB aplicada ao E-Adapt, a qual foi
feita no Modelo de Usuário do sistema, sendo utilizadas para tal as classes BayesNet,
DiscreteVariable e DiscreteFunction da biblioteca importada ao projeto. Para a realização de
inferências na RB, fez-se uso da classe Inference.
Um objeto da classe BayesNet representa a estrutura de uma RB mantendo um array de
objetos DiscreteVariable e um array de objetos DiscreteFunction. Assim, para construção desta RB,
inicialmente criou-se o primeiro array contendo objetos que representam as variáveis envolvidas,
de acordo com a modelagem apresentada na Seção 3.2.3. Em cada objeto da classe DiscreteVariable
define-se o nome do nó, seu tipo17 e seus estados válidos, os quais são do tipo String. Considerando
que neste caso todos os nós da RB possuem os mesmos estados, foram estabelecidas constantes para
representá-los. Na Figura 22 é apresentado um trecho de código para exemplificar a criação de um
array de variáveis da RB, no qual deve-se considerar redeB como sendo um objeto da classe
BayesNet.
redeB.set_variables(new DiscreteVariable[]{ new DiscreteVariable(“variavel1”, DiscreteVariable.CHANCE, new String[]{“true”,”false”}), new DiscreteVariable(“variavel2”, DiscreteVariable.CHANCE, new String[]{“true”,”false”})});
Figura 22. Exemplo de criação de um array de variáveis da RB
Após a criação do array de variáveis da RB, o próximo passo foi criar seu array de funções
de probabilidade, nas quais são relacionadas as variáveis e estabelecidas as probabilidades a priori
para cada combinação de estados, representando portanto as TPCs dos nós. Conforme pode ser
observado através do exemplo apresentado na Figura 23, cada objeto do tipo DiscreteFunction é
criado contendo primeiramente o nó associado à função de probabilidade, seguido de um array de
nós pais e um array de probabilidades a priori, as quais são do tipo double. Quando um nó não
apresenta nós pais, o array correspondente permanece vazio, conforme pode ser visualizado no
17 Existem quatro tipos de variável válidos na biblioteca, definidos pelas constantes CHANCE, DECISION, TRANSPARENT e UTILITY. Nesta RB existem somente nós probabilísticos, portanto aplica-se o primeiro tipo.
84
primeiro objeto DiscreteFunction criado no array do exemplo. Já o segundo objeto indica que o nó
“variavel1” é pai do nó “variavel2”.
redeB.set_probability(new DiscreteFunction[]{ new DiscreteFunction( new DiscreteVariable[]{redeB.get_variables()[0]}, new DiscreteVariable[]{}, new double[]{0.80,0.20}), new DiscreteFunction( new DiscreteVariable[]{redeB.get_variables()[1]}, new DiscreteVariable[]{redeB.get_variables()[0]} new double[]{0.60,0.05,0.4,0.95})});
Figura 23. Exemplo de criação de um array de funções de probabilidade da RB
Para entrada das probabilidades a priori, é seguida uma ordem específica que representa as
combinações de estados dos nós relacionados em uma TPC no JavaBayes. Para melhor esclarecer
esta lógica, considera-se o objeto que relaciona os dois nós criados no exemplo apresentado, onde:
(i) a primeira probabilidade informada, 0.60, corresponde a P(variavel2 = true | variavel1 = true);
(ii) a segunda probabilidade, 0.05, corresponde a P(variavel2 = true | variavel1 = false); (iii) o
terceiro valor, 0.4, corresponde a P(variavel2 = false | variavel1 = true); e (iv) o último valor, 0.95,
corresponde a P(variavel2 = false | variavel1 = false). As relações desta TPC seriam visualizadas no
JavaBayes na mesma disposição apresentada na Figura 24, onde encontra-se indicada a ordem como
os valores são adicionados no array de probabilidades em um objeto da classe DiscreteFunction.
Figura 24. Ordem de inclusão dos valores no array de probabilidades
Conforme o número de nós relacionados em uma TPC, naturalmente a seqüência para
entrada dos valores de probabilidade no array torna-se mais complexa, dada a quantidade de
combinações possíveis entre seus estados. No caso da RB implementada neste protótipo, o processo
tornou-se custoso para os nós com um maior número de relacionamentos. Após a inclusão de todas
as probabilidades, realizou-se a execução da RB implementada e comparou-se as probabilidades a
posteriori obtidas na inferência com as calculadas na mesma através do JavaBayes, a fim de
comprovar a correta entrada dos valores.
85
Uma vez criadas as referidas estruturas, finalmente a RB é construída, adicionando-se por
meio do método add da classe BayesNet os arrays de objetos mencionados, conforme demonstrado
na Figura 25. O processo de construção da RB aqui descrito é executado durante a inicialização do
Modelo de Usuário no sistema, conforme abordado adiante.
redeB.add(redeB.get_variables()); redeB.add(redeB.get_probabilities());
Figura 25. Exemplo de construção de uma RB
É importante ressaltar que neste protótipo a RB foi implementada de forma fixa tanto no que
se refere à sua estrutura e quanto aos seus valores de probabilidade a priori, pois neste caso, o
interesse de estudo encontra-se voltado à realização de adaptações no sistema com base nas
probabilidades a posteriori calculadas na RB. Em relação à sua entrada de dados, consideraria-se
realizá-la de forma dinâmica em um sistema completo, com valores provenientes do banco de
dados. Com isso, também poderia-se considerar a idéia de realizar a atualização das probabilidades
a priori de uma RB correspondente a uma disciplina tratada, com base nos dados de desempenho
dos alunos de uma turma ao final de um semestre. Estes constituiriam novos casos incluídos na
amostra existente, algo que poderia tornar as probabilidades calculadas na RB cada vez mais
confiáveis. Entretanto, seria necessária uma análise mais aprofundada da viabilidade destes
procedimentos, devido à sua maior complexidade.
Considerando que a RB deve ser acessada pelo Modelo de Adaptação para observação de
novas evidências e obtenção dos resultados da inferência durante a execução das regras de
adaptação, criou-se uma série de métodos para construção e manipulação da RB na classe
ModUsuario, os quais utilizam métodos disponíveis na API do EBayes, conforme descrito a seguir:
• inicializaRB – este método destina-se à construção e inicialização da RB utilizada como
base para as adaptações do protótipo, o qual é executado na instanciação do Modelo de
Usuário ao início de uma sessão no sistema;
• executaRB – consiste no método em que é realizada a ativação da RB estruturada, sendo
realizada uma inferência em seus nós, ainda sem evidências observadas, por meio da
instanciação de um objeto da classe Inference que recebe a RB construída como
parâmetro. Assim como o método anterior, este também é invocado no construtor do
Modelo de Usuário;
86
• selecionaVariavel – realiza a seleção do nó com o qual se trabalhará em determinado
momento, no qual serão observadas evidências. Para isso, utiliza-se o método
get_probability_variable da classe BayesNet, o qual seleciona a variável requerida na
estrutura da RB a partir do respectivo nome ou índice informado, retornando um objeto
do tipo DiscreteVariable;
• novaEvidencia – método cuja finalidade é observar uma nova evidência correspondente
a um estado do nó previamente selecionado, a partir da chamada do método
set_observed_value da classe DiscreteVariable, no qual passa-se como parâmetro o
nome do estado a ser observado no referido nó; e
• inferir – este método realiza uma nova inferência na RB, e retorna as probabilidades a
posteriori calculadas para um nó solicitado. Para a inferência, são utilizados os métodos
inference e get_result da classe Inference, sendo que o primeiro recebe como parâmetro
o nome da variável questionada e executa o processo, enquanto o segundo permite
resgatar o resultado da inferência, retornando um objeto da classe DiscreteFunction. A
seguir, utilizou-se o método get_value da referida classe para se ter acesso a cada valor
de probabilidade do respectivo nó.
Nas seções seguintes, será realizado o detalhamento da implementação do mecanismo de
adaptação do E-Adapt, o qual compreende os processos de resolução de testes online e adaptação do
sistema descritos anteriormente, e de aspectos referentes ao tratamento da interface gráfica do
protótipo com uso do JSF para realização das adaptações.
3.3.2 Mecanismo de Adaptação
O mecanismo de adaptação é composto pelos processos de resolução de testes online, o qual
dá início à execução do mecanismo, e adaptação do sistema. Nesta seção estes processos serão
explanados em nível de implementação, tornando mais clara a seqüência de seu funcionamento.
Assim, primeiramente foi implementado o processo referente aos testes online, cujas classes
envolvidas foram especificadas anteriormente. No momento em o aluno clica no link Teste do
conteúdo correspondente no menu, a página teste.jsp é carregada, apresentando as questões
selecionadas para o aluno, conforme os critérios já especificados. Para exibição de cada questão
nesta página, foram utilizadas as seguintes tags JSF, bem como uma tag do Ajax4jsf, cujas
descrições baseiam-se em Geary e Horstmann (2007):
87
• <f:view> – esta tag delimita a área da página onde serão utilizados componentes JSF, a
qual é finalizada com </f:view>. Somente dentro desta área podem ser declaradas tags
JSF;
• <h:form> – cria um formulário HTML na página, o qual é utilizado nesta para
submissão do teste online respondido pelo aluno;
• <h:outputText> – cria uma saída de texto de uma única linha, sendo utilizada neste
caso para exibir o título do teste e o enunciado das questões;
• <h:dataTable> – cria uma tabela dinâmica na página, dentro da qual são apresentadas
as questões selecionadas para o teste;
• <h:column> – consiste em uma coluna do dataTable;
• <h:selectOneRadio> – cria um conjunto de radio buttons na página, nos quais serão
agrupadas as opções de resposta de cada questão listada dentro do dataTable;
• <f:selectItems> – utilizado para especificar os itens de um componente de listagem, que
neste caso são os radio buttons do conjunto criado. A este componente pode ser
atribuído um array de instâncias da classe SelectItem, onde cada instância contém uma
opção da questão correspondente, conforme será visto adiante; e
• <a4j:commandButton> – cria um botão para submissão Ajax do formulário contendo
as respostas dadas pelo aluno nas questões. No atributo reRender disponível neste
componente, definiu-se para re-renderização o form “fmenu” da página principal do
sistema (index.jsf), o qual contém os links que são adaptados a partir da interação do
aluno, de forma a exibir-lhe as modificações realizadas durante a execução do processo
de adaptação.
Na Figura 26 é apresentado o trecho do código da página em que são utilizadas as referidas
tags, no qual também é possível observar o uso das ELs, que são as expressões iniciadas por “#”.
Geralmente, estas expressões apresentam a estrutura #{nomeBackingBean.atributo}, onde atributo é
uma propriedade do Backing Bean que possui um método set e um get, cujo tipo pode ser um dos
nativos do Java ou correspondente a uma classe de entidade, caso em que pode haver acesso a mais
níveis de atributo. Para ações de botões e links de comando, é utilizada a estrutura
#{nomeBackingBean.método}, sendo um exemplo disto a EL #{teste.corrige} expressa no
actionListener do commandButton da página.
88
… <f:view> <h:form id=”fteste”> <h3><h:outputText value="Teste de #{adaptacao.nmConteudoAtual}"/></h3> <h5><h:outputText value="Nível #{teste.nivelQuestoes}"/></h5> <h:dataTable value="#{teste.questoes}" var="bufferQt"> <h:column> <pre><h:outputText value="Questão #{bufferQt.numeroQ} - #{bufferQt.questao}"/></pre> <h:selectOneRadio required="true" id="questao" label="Questao" value="#{bufferQt.resposta}" layout="pageDirection"> <f:selectItems value="#{bufferQt.opcoes}"/> </h:selectOneRadio> <br> </h:column> </h:dataTable> <a4j:commandButton reRender=”fmenu” limitToList=”true” id="correcao" value="Corrigir" actionListener="#{teste.corrige}"/> </h:form> </f:view>
…
Figura 26. Código da página de testes
Assim, no momento em que a página teste.jsp é requisitada, os Backing Beans vinculados a
esta são instanciados, e as informações são recuperadas na página por meio da chamada dos
métodos get de seus atributos.
Considerando a EL #{teste.questoes}, a qual está associada ao componente dataTable, o que
realmente está sendo executado é teste.getQuestoes(). Neste método, o qual encontra-se no Backing
Bean correspondente à classe Teste, o sistema consulta o perfil do aluno conectado à sessão para
determinar de que conteúdo e nível deverão ser as questões do teste, e com base nisso, as seleciona
aleatoriamente a partir de uma busca realizada no banco de dados. A seguir, a cada iteração
realizada sobre o objeto contendo o resultado da busca, cada questão recuperada e suas opções
correspondentes são atribuídas a um objeto da classe BufferQuestoes, a qual é um Backing Bean
auxiliar registrado no sistema (com o nome bufferQt) unicamente para ser utilizado neste processo,
sendo este o motivo pelo qual não havia sido mencionado até o momento.
Cada instância da referida classe recebe os dados de uma questão listada por meio dos
métodos set de seus atributos, sendo estes: (i) númeroQ, que trata-se de um atributo do tipo Integer
e armazena o número da questão; (ii) questão, o qual é do tipo String e armazena o enunciado da
questão; (iii) resposta, que também é do tipo String e armazena a resposta que é dada pelo aluno na
questão; (iv) gabarito, também do tipo String, o qual armazena a resposta correta da questão; e (v)
opções, o qual é um atributo do tipo List que mantém a lista de opções correspondente à questão,
cujos itens adicionados durante a iteração mencionada são objetos do tipo SelectItem, cada qual
contendo o código da resposta (neste caso, “A”, “B”, “C”, etc.) e o texto referente à uma opção.
89
Após a atribuição dos referidos dados no objeto da classe BufferQuestoes, este é adicionado
ao objeto listaQuestoes da classe Teste, o qual é um List, e assim ocorre até finalizarem as iterações
no resultado da busca.
Por fim, o método getQuestoes retorna o objeto listaQuestoes ao dataTable na página, e este
encarrega-se de listar cada questão no padrão de estrutura especificado. Após o aluno responder as
questões e submeter o teste à correção por meio do clique no botão Corrigir, é iniciada uma
requisição Ajax ao servidor. Assim, a resposta do aluno a cada questão é armazenada no atributo
resposta do objeto da classe BufferQuestoes correspondente, por meio da execução do método set
expresso na EL #{bufferQt.resposta}. A seguir é executado o método corrige() da classe Teste,
onde as respostas dadas pelo aluno são comparadas com as respectivas respostas corretas
previamente armazenadas no atributo gabarito de cada objeto. Com isso, é calculada a porcentagem
de acerto no teste, a qual é enviada em seguida ao Módulo de Adaptação por meio da chamada do
método adaptaNavegação do respectivo Backing Bean acessado internamente.
Assim, dá-se início ao processo de adaptação da navegação do sistema. Pelo fato de a maior
parte de sua execução ser realizada internamente na classe ModAdaptacao, nesta parte da seção será
tratado com maior ênfase de aspectos referentes ao tratamento das configurações de adaptação,
além de ser apresentada a especificação dos principais métodos utilizados no processo. Os aspectos
relativos ao tratamento da interface gráfica da página correspondente a este Backing Bean
encontram-se abordados na Seção 3.3.3.
Com base no percentual de acerto calculado, indicando o nível de aprendizado do aluno no
momento em que este realizou o teste, o Modelo de Adaptação realiza a interação com a RB
presente no Modelo de Usuário, por meio da execução dos respectivos métodos selecionaVariavel,
novaEvidencia e inferir, descritos na seção anterior. A partir disto, com base nos resultados obtidos
na inferência, são realizadas novas adaptações nos links do menu da página, conforme as definições
da regra de adaptação aplicada.
Ao início de uma sessão no ambiente, as configurações de adaptação correspondentes ao
aluno são carregadas em objetos da classe AdaptacaoMenu na lista adaptacaoLinks, a qual é um
atributo pertencente à classe ModAdaptacao, cujos dados são utilizados para inicialização das
estruturas de navegação para o aluno. Com a execução de novas adaptações durante a sessão,
primeiramente é realizada a atualização das configurações de adaptação armazenadas nos objetos da
referida lista, para que possam ser salvas quando o aluno encerrar sua sessão no sistema. Para essas
atualizações, são utilizados os seguintes métodos:
90
• atualizaVisib – método destinado a atualizar a configuração de visibilidade do link de
um conteúdo específico. Para este tipo de adaptação, foram definidas as constantes
LINK_VISIVEL e LINK_OCULTO, as quais contém um código relativo a essas
configurações, conforme especificado na tabela AdaptacaoMenu no dicionário de dados
do Apêndice D;
• atualizaEstilo – este método é utilizado para atualizar o estilo CSS de um link relativo a
um conteúdo, conforme as necessidades detectadas a partir do desempenho do aluno no
último teste online realizado. Os estilos aplicados, cujo padrão foi especificado na Seção
3.1, encontram-se definidos como constantes no Backing Bean deste método, as quais
mantém o código CSS correspondente a cada estilo, sendo estas: DESTAQUE_ATUAL,
ESTILO_DEFAULT, DESTAQUE_REFORÇO_INS e DESTAQUE_REFORÇO_REG;
• atualizaStReforco – este método foi criado para atualização da configuração de status
de reforço do link de um conteúdo, para a qual foram definidas as constantes
NÃO_REFORÇADO, EM_REFORÇO e REFORÇADO, cujos códigos correspondentes
também encontram-se definidos no dicionário de dados;
• atualizaConteudoAtual – este método é utilizado para atualizar a configuração do link
que indica se o conteúdo correspondente é ou não o que está sendo atualmente estudado
pelo aluno; e
• atualizaAtividadeAtual – método aplica-se somente à regra de adaptação relativa ao
nível de aprendizado Satisfatório, sendo utilizado para atualização do código do
conteúdo correspondente às questões apresentadas ao aluno no teste online, conforme
especificado nas regras de adaptação descritas na Seção 3.1.
Após a execução dos métodos descritos, conforme as condições satisfeitas durante a
execução de uma regra de adaptação, as novas adaptações são efetivadas na página por meio do
método adaptaLink. Com isso, as configurações atualizadas na lista mencionada são atribuídas aos
componentes de interface relativos aos links da página principal, conforme é esclarecido na seção
seguinte. Ao final do ciclo de vida JSF, a resposta à requisição é renderizada e apresentada no
navegador de Internet, e em seguida o form da página principal especificado no atributo reRender
do botão Corrigir é re-renderizado automaticamente, e com isso os links do menu de navegação são
atualizados na página, tornando visíveis as adaptações aplicadas ao usuário.
91
3.3.3 Interface Gráfica
A interface da página principal do E-Adapt (index.jsp), na qual são apresentadas as
adaptações realizadas a cada aluno durante uma sessão no ambiente, foi construída com a utilização
de tags JSF provenientes das bibliotecas de componentes mencionadas anteriormente, além de tags
do Ajax4jsf. Nesta seção será tratado especificamente do componente utilizado na realização de
adaptações na interface de usuário.
Considerando que as adaptações são realizadas nos links da navegação do sistema, utilizou-
se uma tag <a4j:commandLink> para cada link que compõe o menu da página. Dentre os diversos
atributos deste componente, tem-se o atributo binding, o qual permite criar um vínculo entre este e
uma propriedade de um Backing Bean para sua manipulação. Cada tag do Ajax4jsf possui uma
classe equivalente no pacote org.ajax4jsf.ajax.html da API do framework, da mesma que as tags
JSF possuem classes equivalentes em pacotes do Java EE 5.0. Então, neste caso, criou-se para cada
link da página uma propriedade do tipo HtmlAjaxCommandLink na classe ModAdaptacao, a qual é
o Backing Bean vinculado à página em questão, e responsável pela realização das adaptações do
sistema, conforme visto anteriormente.
Desta forma, ao ser executado o mecanismo de adaptação do ambiente, são realizadas
modificações na visibilidade e estilo de cada link de conteúdo da página por meio dessas
propriedades, conforme as regras de adaptação executadas. Os métodos da referida classe utilizados
para essas modificações são o setRendered e setStyle, os quais estão associados aos atributos
rendered e style dos componentes da página. O primeiro é um atributo booleano utilizado para
indicar se o componente deverá ou não ser exibido na página. O segundo permite a aplicação de
estilos CSS sob a forma de uma String, sendo aplicados neste caso os padrões de destaque de links
definidos na Seção 3.1. Assim, por meio de recursos oferecidos pelo JSF 1.2, foi possível
implementar as duas técnicas de adaptação selecionadas para aplicação neste protótipo.
Além dos links de conteúdo serem alterados no processo de adaptação, estes também
desencadeiam adaptações nos links de atividade, os quais são acesso aos testes online. Este processo
secundário de adaptação apenas controla a visibilidade do link correspondente aos testes do
conteúdo atualmente definido no perfil de aluno, levando em consideração o critério de controle de
disponibilização de novos testes definido anteriormente. Para isso, em cada componente
commandLink especificou-se no respectivo atributo reRender o próprio form no qual encontram-se
incluídos, que é o mesmo especificado no atributo reRender do componente commandButton do
formulário da página teste.jsp. Desta forma, ao clicar em links de conteúdos em reforço, é realizada
uma nova requisição ao servidor, sendo exibido na página o conteúdo requisitado pelo link. Uma
92
vez satisfeito o critério mencionado, o link de acesso aos testes, oculto pelo Modelo de Adaptação
após a resolução do último teste, volta a ser automaticamente exibido no menu após a alteração de
seu status de visibilidade no referido modelo e a re-renderização do form do menu ao término do
novo ciclo de vida JSF executado.
3.4 TESTES
Uma vez concluída a implementação do E-Adapt, primeiramente realizou-se a alimentação
da base de dados, na qual todos os dados inseridos são fictícios, exceto os dados referentes às
questões dos testes online. As referidas questões utilizadas no protótipo foram extraídas de listas de
exercícios fornecidas pelo especialista, as quais são aplicadas aos alunos na disciplina de Estrutura
de Dados ministrada em meio web.
A RB, por ter sido o primeiro componente a ser implementado, foi testada separadamente
durante o aprendizado de utilização da biblioteca E-Bayes, e após ter sido concluída a sua versão
final. Assim, uma vez integrada a RB ao protótipo e concluída a implementação dos demais
componentes tratados ao longo da Seção 3.3, além do processo de autenticação do sistema, foram
realizados testes com cada um dos processos implementados, a fim de comprovar o correto
funcionamento do protótipo.
Assim, primeiramente realizou-se testes relativos ao processo de autenticação do sistema,
com o objetivo de averigüar, além da correta validação de dados de entrada do usuário, o
funcionamento da recuperação de dados do perfil e das configurações de adaptação correspondentes
ao aluno conectado. Para isso, foram definidas manualmente, para cada aluno, configurações de
adaptação na tabela AdaptacaoMenu, sendo constatado o correto funcionamento do processo ao
serem visualizadas as referidas configurações aplicadas aos links do menu após a autenticação do
sistema.
Em seguida, passou-se a realizar testes com o processo de resolução de testes online, o qual
por sua vez já permite testar a execução do processo de adaptação do sistema, por ser este o
processo que desencadeia o funcionamento do mecanismo de adaptação como um todo, sendo
realizados os devidos ajustes conforme a necessidade, pelo fato destes processos apresentarem um
maior número de detalhes a serem considerados. Ao final dos testes, foi possível observar a correta
execução dos referidos processos. No que se refere ao primeiro processo do mecanismo de
adaptação, este apresentou correto funcionamento na apresentação de questões na página
correspondente, conforme os dados definidos para os perfis dos alunos testados no ambiente, bem
como a realização das correções dos testes. Da mesma forma, o processo de adaptação também
93
mostrou correto funcionamento no que se refere à execução das regras de adaptação definidas e dos
métodos auxiliares descritos anteriormente, tendo como resultado a adaptação aplicada aos links do
menu da página. Com isso, deu-se início ao processo de validação do sistema, conforme descrito na
seção a seguir.
3.5 VALIDAÇÃO
A validação da funcionalidade do E-Adapt foi realizada junto ao especialista por meio da
simulação de diferentes dinâmicas de aprendizado no ambiente, com o objetivo de explorar as
potencialidades do sistema e realizar a análise das adaptações resultantes da aplicação da RB e das
regras de adaptação implementadas. Cada dinâmica consiste em uma seqüência de desempenhos
obtidos pelo aluno nos testes online envolvendo os conteúdos estudados no ambiente, de forma a
representar uma situação realística que reflita seu provável aprendizado ao longo da disciplina de
Estrutura de Dados, para a qual o sistema realiza as devidas adaptações em sua navegação. Desta
forma, considerando que a RB aplicada é a base para a individualização do sistema, também tornou-
se possível avaliar se na prática a sua estrutura encontra-se adequada ao problema apresentado.
Assim, foram elaborados dois casos com o auxílio do especialista, sendo cada um aplicado a
um aluno cadastrado no ambiente, a fim de possibilitar a visualização das adaptações aplicadas ao
sistema para diferentes dinâmicas de aprendizado, as quais encontram-se descritas ao longo desta
seção, bem como sua simulação e resultados apresentados. Na Figura 27, pode ser visualizada a
configuração inicial de adaptação da navegação do ambiente, a qual aplica-se a todos os alunos que
estão iniciando a disciplina.
Figura 27. Configuração inicial de adaptação da navegação do sistema
94
A individualização do sistema tem seu início a partir do momento em que o aluno resolve o
primeiro teste online do conteúdo de Lista no ambiente, acessível através do link correspondente no
menu de atividades, conforme apresentado na Figura 28. É importante lembrar que as questões dos
testes podem variar de um aluno para outro, uma vez que são selecionadas aleatoriamente, porém
mantendo o nível de dificuldade e conteúdo correspondentes ao perfil atualizado do usuário.
Figura 28. Teste online de nível fácil do conteúdo de Lista
Considerando o exposto, nas seções que se seguem encontram-se detalhados os casos
simulados no processo de validação do presente sistema, através dos quais tornou-se possível
avaliar a efetividade das adaptações aplicadas frente ao problema tratado.
3.5.1 Caso 1
Nesta dinâmica de aprendizado, foi considerada a seqüência de níveis de desempenho
especificada na Tabela 7, a qual representa uma situação em que o aluno apresentou dificuldades no
início da disciplina e a seguir passou a obter uma melhoria gradativa em seu aprendizado, vindo a
ter uma expressiva queda de desempenho durante o estudo do conteúdo de Árvore. A simulação
deste caso foi realizada seguindo a ordem de desempenhos da esquerda para a direita para cada
conteúdo da disciplina, à medida que estes foram tornando-se acessíveis ao aluno no ambiente.
95
Tabela 7. Dinâmica de aprendizado simulada no caso 1
Conteúdo Desempenho
Lista INSAT INSAT REG REG SAT SAT
Fila REG INSAT REG SAT SAT
Pilha SAT REG REG SAT SAT
Árvore INSAT INSAT INSAT REG REG SAT
Mét. Pesquisa REG REG REG SAT SAT
Mét. Ordenação SAT REG REG SAT SAT
Neste caso, ao responder as questões selecionadas no primeiro teste relacionado ao conteúdo
de Lista, o aluno obteve desempenho Insatisfatório devido a ter errado duas questões das três
apresentadas, lhe conferindo um percentual de acerto de 33,33%. Detectando a atual dificuldade de
aprendizado do aluno, o sistema realizou uma consulta das probabilidades calculadas na inferência
realizada na RB após a observação da atual evidência, de forma a definir o conteúdo a ser indicado
para reforço, conforme o critério especificado na regra de adaptação correspondente.
Considerando que os conteúdos pré-requisito do conteúdo de Lista são neste caso Vetor e
Alocação Dinâmica, estes apresentaram probabilidades de 73,1% e 77,3% de deficiência de
aprendizado respectivamente, logo o sistema priorizou a indicação do conteúdo de Alocação
Dinâmica, exibindo e destacando em vermelho o link correspondente em seu menu de navegação,
conforme pode ser visualizado na Figura 29.
Figura 29. Caso 1 – reforço de Alocação Dinâmica no estudo de Lista
96
Após o aluno reforçar este conteúdo, o sistema disponibilizou novamente o link para acesso
a um novo teste online de nível fácil relativo ao conteúdo de Lista, no qual o aluno voltou a obter
um desempenho Insatisfatório, desta vez por ter errado todas as questões aplicadas. Assim, o
sistema executa novamente a regra de adaptação correspondente e indica um novo conteúdo para
reforço, conforme apresentado na Figura 30. Tendo em vista que anteriormente o aluno havia
reforçado o conteúdo de Alocação Dinâmica, desta vez o sistema indicou para reforço o conteúdo
de Vetor.
Figura 30. Caso 1 – reforço de Vetor no estudo de Lista
Após este novo reforço, o aluno respondeu a um novo teste online de nível fácil do conteúdo
atualmente estudado em Estrutura de Dados, obtendo um desempenho Regular, devido ao acerto de
duas questões das três contidas no teste, correspondendo a um percentual de acerto de 66,66%.
Assim, conforme pode ser visto na Figura 31, o sistema indicou o conteúdo atualmente em estudo
para reforço destacando em amarelo o link correspondente no menu de navegação, além de indicar
novamente o conteúdo de Alocação Dinâmica.
97
Figura 31. Caso 1 – reforço de Lista e Alocação Dinâmica
A indicação do conteúdo pré-requisito deu-se pelo fato do sistema ter detectado, por meio da
RB, uma maior probabilidade de o aluno obter um desempenho Insatisfatório em um ou mais
conteúdos relacionados ao atual, dada a evidência de aprendizado do aluno atualmente observada.
Neste caso, o sistema detectou no nó correspondente ao conteúdo de Métodos de Pesquisa uma
probabilidade de 52,9% de o aluno obter um desempenho Insatisfatório futuramente.
Uma vez reforçados os últimos conteúdos indicados, o aluno respondeu a um novo teste
online relativo ao conteúdo de Lista. Considerando a última regra de adaptação aplicada, o sistema
disponibilizou agora um teste contendo questões de nível médio, conforme a Figura 32.
Figura 32. Caso 1 – teste de nível médio do conteúdo Lista
98
Neste teste, o aluno obteve novamente um desempenho Regular, logo o sistema indicou
novamente o conteúdo atual para reforço, além de um conteúdo pré-requisito, como demonstra a
Figura 33. Considerando que o aluno havia reforçado o conteúdo de Alocação Dinâmica
anteriormente, neste momento o sistema indicou novamente para reforço o conteúdo de Vetor.
A seguir, o aluno resolveu um novo teste de nível médio correspondente à Lista, desta vez
obtendo um nível de aprendizado Satisfatório. Com isso, conforme pode ser visualizado na Figura
34, o sistema exibiu e destacou em sua navegação o link correspondente ao conteúdo de Fila,
possibilitando que o aluno inicie o estudo do novo conteúdo. Entretanto, neste momento continuam
sendo aplicados testes relativos ao conteúdo de Lista, os quais passam a ser de nível difícil. Desta
forma, torna-se possível avaliar se o aluno realmente encontra-se bem preparado no conteúdo que
está estudando.
Figura 33. Caso 1 – reforço de Lista e Vetor
99
Figura 34. Caso 1 – exibição do link do conteúdo de Fila
Ao responder a um teste de nível difícil relacionado ao conteúdo de Lista, o aluno obteve
novamente um desempenho Satisfatório, indicando que o aluno adquiriu um nível de conhecimento
suficiente para avançar às atividades do novo conteúdo. Com isso, o sistema passou a apresentar
testes online de nível fácil relativos ao conteúdo de Fila, conforme demonstrado na Figura 35.
Figura 35. Caso 1 - teste de nível fácil do conteúdo Fila
Ao responder as questões do atual teste, o aluno obteve um desempenho Regular, devido ao
acerto de duas das três questões selecionadas, correspondendo novamente a um percentual de acerto
de 66,66%. Dada esta nova evidência observada, o sistema indicou o conteúdo atual para reforço,
100
destacando seu link em amarelo no menu de navegação da página, como pode ser visualizado na
Figura 36.
Figura 36. Caso 1 - reforço do conteúdo Fila
Como pode ser observado, neste caso não houve indicação de um conteúdo da disciplina
pré-requisito para reforço, pois o sistema não detectou esta necessidade. Considerando que o
conteúdo de Fila não possui conteúdos seguintes diretamente relacionados como no caso do
conteúdo de Lista, o sistema verificou através da RB o impacto do desempenho atual sobre o
desempenho no conteúdo seguinte (Pilha), e assim constatou que a probabilidade de o aluno obter
desempenho Insatisfatório é de 29,2%. Após o aluno realizar o reforço do conteúdo de Fila, este
respondeu a um teste online contendo questões de nível médio relacionadas ao referido conteúdo,
conforme a Figura 37.
101
Figura 37. Caso 1 - teste de nível médio do conteúdo Fila
Neste teste, o aluno obteve desempenho Insatisfatório, uma vez que acertou somente uma
das três questões respondidas, obtendo um percentual de acerto de 33,33%. Assim, como
demonstrado na Figura 38, o sistema indicou para reforço o conteúdo pré-requisito, que neste caso é
Lista.
Figura 38. Caso 1 – reforço de Lista no estudo de Fila
Após o reforço do conteúdo de Lista, considerando a última regra de adaptação aplicada, o
aluno respondeu a um novo teste de nível fácil relacionado ao conteúdo de Fila, no qual obteve
desempenho Regular. Com isso, o sistema voltou a indicar o conteúdo atual para reforço,
destacando seu link da mesma forma como demonstrado na Figura 39. Após realizar novamente
102
este reforço, o aluno respondeu a um novo teste de nível médio relacionado ao conteúdo e obteve
desempenho Satisfatório. Com isso, o sistema exibiu e destacou o link do conteúdo de Pilha para
que o aluno dê início ao seu estudo (Figura 40), mas ainda mantendo as atividades relativas ao
conteúdo de Fila.
Figura 39. Caso 1 – exibição do link do conteúdo de Pilha
Considerando que, conforme o perfil atualizado do aluno, as últimas questões respondidas
sobre o conteúdo de Fila foram de nível médio, o sistema elevou nível das questões para difícil, de
forma a testar ainda mais os conhecimentos do aluno sobre o conteúdo estudado. Ao responder ao
novo teste (Figura 40), o aluno obteve desempenho Satisfatório.
Figura 40. Caso 1 - teste de nível difícil do conteúdo Fila
103
Dada a atual evidência de aprendizado do aluno, a qual indica que este está apto à realização
de atividades do novo conteúdo, deu-se início aos testes online referentes ao conteúdo de Pilha,
contendo inicialmente questões de nível fácil, como pode ser visualizado na Figura 41.
Figura 41. Caso 1 - teste de nível fácil do conteúdo Pilha
No atual teste, o aluno obteve desempenho Satisfatório, com isso o sistema tornou acessível
o conteúdo de Árvore, exibindo e destacando o link correspondente no menu de navegação,
conforme apresentado na Figura 42. Desta forma, o aluno pode iniciar seus estudos no referido
conteúdo, enquanto ainda responde a testes de nível mais avançado relativos ao conteúdo de Pilha.
Figura 42. Caso 1 – exibição do link do conteúdo de Árvore
104
Considerando que no último teste online de Pilha o aluno obteve desempenho Satisfatório ao
responder a questões de nível fácil, o sistema elevou o nível das questões para médio, como
demonstrado na Figura 43.
Figura 43. Caso 1 - teste de nível médio do conteúdo Pilha
Ao resolver o novo teste, o aluno alcançou desempenho Regular devido ao acerto de duas
questões das três selecionadas. Dada esta nova evidência, o sistema indicou o reforço do conteúdo
de Pilha, destacando em amarelo o link correspondente no menu, conforme a Figura 44.
Neste caso, o sistema não detectou a necessidade em também indicar um conteúdo pré-
requisito para reforço. Conforme as relações de conteúdo previamente estabelecidas, o conteúdo de
Pilha também não apresenta conteúdos seguintes diretamente relacionados, logo o sistema analisou
o impacto do aprendizado atual do aluno sobre desempenho do conteúdo seguinte (Árvore),
constatando uma probabilidade de desempenho Insatisfatório de 49,2 % contra uma probabilidade
de 50,8% de obtenção de desempenho Regular ou Satisfatório. Enfatiza-se que essa análise tem seu
foco sobre o desempenho Insatisfatório em relação aos demais por este ser o nível de aprendizado
mais crítico dentre os especificados, o qual é determinante para o reforço de conteúdos pré-requisito
neste sistema, conforme as regras definidas.
105
Figura 44. Caso 1 - reforço do conteúdo Pilha
Após este reforço, o aluno resolveu um novo teste de nível médio relacionado ao conteúdo
de Pilha, obtendo novamente um desempenho Regular. Com isso o sistema indicou novamente o
reforço do referido conteúdo, resultando na adaptação visualizada na Figura 44.
Finalmente, ao resolver outro teste de nível médio, o aluno desempenho Satisfatório.
Considerando que o conteúdo seguinte (Árvore) já encontra-se acessível, o sistema apenas elevou o
nível das questões de Pilha para difícil, sendo disponibilizado um novo teste ao aluno, conforme
apresentado na Figura 45.
Figura 45. Caso 1 - teste de nível difícil do conteúdo Pilha
106
Ao resolver este teste, o aluno obteve desempenho Satisfatório. Com isso, o aluno mostrou-
se apto a iniciar atividades do conteúdo de Árvore, e então o sistema tornou disponível o primeiro
teste de nível fácil referente a este conteúdo (Figura 46).
Figura 46. Caso 1 - teste de nível fácil do conteúdo Árvore
Considerando que o aluno errou todas as questões deste teste, obteve-se portanto um
desempenho Insatisfatório. Dada esta evidência, o sistema consultou os nós da RB correspondentes
aos conteúdos pré-requisito do conteúdo Árvore, a fim de indicar para reforço o conteúdo com
maior probabilidade de ter havido deficiência de aprendizado. Assim, tendo em vista que os
conteúdos de Vetor, Alocação Dinâmica e Recursividade apresentaram probabilidade igual a 69%,
73,2% e 47,4% respectivamente, o sistema indicou para reforço o conteúdo de Alocação Dinâmica,
resultando na adaptação apresentada na Figura 47.
107
Figura 47. Caso 1 – reforço de Aloc. Dinâmica no estudo de Árvore
Uma vez reforçado o conteúdo indicado, o aluno respondeu a um novo teste de Árvore
contendo questões de nível Fácil, no qual obteve novamente um desempenho Insatisfatório, e com
isso o sistema indicou novamente um conteúdo pré-requisito para reforço. Neste caso, considerando
que o aluno acabou de reforçar o conteúdo de Alocação Dinâmica, o sistema consultou somente os
nós da RB correspondentes aos outros dois conteúdos, de forma a indicar um deles para o atual
reforço, seguindo o mesmo critério mencionado. Assim, conforme demonstrado na Figura 48, o
sistema indicou para reforço o conteúdo de Vetor.
Figura 48. Caso 1 – reforço de Vetor no estudo de Árvore
108
A seguir, ao responder a um novo teste de nível fácil relativo ao conteúdo de Árvore, o
aluno obteve mais uma vez o desempenho Insatisfatório. Com isso, o sistema indicou novamente
um conteúdo pré-requisito para reforço, mas desta vez a seleção foi feita somente entre os
conteúdos de Alocação Dinâmica e Recursividade, pelo fato de o conteúdo de Vetor ter sido o
último revisado durante o estudo do conteúdo atual. Assim, o sistema voltou a indicar o conteúdo de
Alocação Dinâmica, por ter maior probabilidade de deficiência de aprendizado, resultando na
adaptação já demonstrada na Figura 47.
Em um novo teste de nível fácil resolvido pelo aluno após o reforço, o aluno obteve
desempenho Regular, obtendo um percentual de acerto de 66,66%. Com isso, o sistema indicou
para reforço o conteúdo atual, destacando seu link em amarelo no menu, e um conteúdo pré-
requisito, destacando seu link em vermelho (Figura 49).
Figura 49. Caso 1 – reforço de Árvore e Vetor
Considerando o desempenho atualmente obtido pelo aluno, o sistema elevou o nível das
questões para médio. Assim, após reforçar os últimos conteúdos indicados, o aluno resolveu um
novo teste online, o qual pode ser visualizado na Figura 50.
109
Figura 50. Caso 1 – teste de nível médio do conteúdo Árvore
Ao resolver este teste o aluno alcançou desempenho Regular, gerando novas adaptações no
menu de navegação. Assim, o sistema indicou novamente o conteúdo atual para reforço e um outro
conteúdo pré-requisito, conforme pode ser visualizado na Figura 51.
Figura 51. Caso 1 – reforço de Árvore e Alocação Dinâmica
Após o atual reforço, o aluno resolveu um novo teste de nível médio relacionado ao
conteúdo atual, no qual obteve desempenho Satisfatório. Com isso, o sistema tornou acessível o link
relativo ao conteúdo de Métodos de Pesquisa, conforme apresentado na Figura 52.
110
Figura 52. Caso 1 – exibição do link do conteúdo de Mét. de Pesquisa
No que se refere aos testes online, estes continuam sendo relativos ao conteúdo de Árvore,
pois as últimas questões respondidas sobre o conteúdo foram de nível médio. Dado atual
desempenho obtido pelo aluno, o sistema elevou nível das questões para difícil, como demonstrado
na Figura 53.
Figura 53. Caso 1 – teste de nível difícil do conteúdo Árvore
Uma vez resolvido o atual teste, o aluno alcançou novamente o desempenho Satisfatório,
indicando que o aluno encontra-se bem preparado no conteúdo de Árvore. Assim, o sistema tornou
111
acessível ao aluno o primeiro teste relativo ao conteúdo de Métodos de Pesquisa, o qual contém
questões de nível fácil (Figura 54).
Figura 54. Caso 1 – teste de nível fácil do conteúdo Mét. de Pesquisa
No primeiro teste do novo conteúdo, o aluno obteve desempenho Regular ao acertar
somente duas questões das três apresentadas, gerando uma nova adaptação no sistema. Neste caso,
o sistema indicou o conteúdo de Métodos de Pesquisa para reforço destacando em amarelo seu link
no menu de navegação, como pode ser visualizado na Figura 55.
Figura 55. Caso 1 – reforço do conteúdo Métodos de Pesquisa
112
Neste caso, o sistema não detectou a necessidade de também indicar um conteúdo pré-
requisito para reforço, pois ao analisar o impacto do atual desempenho do aluno sobre o
desempenho do conteúdo seguinte (Métodos de Ordenação), o sistema constatou que a
probabilidade de o aluno obter desempenho Insatisfatório é de apenas 33,8%.
Após o reforço do conteúdo atual, o aluno passou a resolver testes contendo questões de
nível médio relativas ao conteúdo de Métodos de Pesquisa, conforme a Figura 56.
Figura 56. Caso 1 – teste de nível médio do conteúdo Mét. de Pesquisa
Neste teste o aluno obteve novamente um desempenho Regular, e com isso o sistema voltou
a indicar o conteúdo atual para reforço, resultando na adaptação já apresentada na Figura 56. A
seguir, este mesmo resultado foi obtido mais uma vez em um teste seguinte de mesmo nível.
Finalmente, no quarto teste de nível médio do conteúdo atual, o aluno obteve desempenho
Satisfatório, então o sistema tornou acessível o link relativo ao conteúdo de Métodos de Ordenação
(Figura 57), para que o aluno possa dar início ao estudo deste conteúdo, enquanto ainda responde a
questões de nível difícil em um novo teste relativo a Métodos de Pesquisa, conforme demonstrado
na Figura 58.
113
Figura 57. Caso 1 – exibição do link do conteúdo de Mét. de Ordenação
Figura 58. Caso 1 – teste de nível difícil do conteúdo Mét. de Pesquisa
Ao resolver o teste mencionado, o aluno obteve novamente um desempenho Satisfatório.
Assim, considerando que o link do novo conteúdo já encontra-se disponível no menu de navegação,
o sistema apenas tornou acessível o primeiro teste de nível fácil relativo ao conteúdo de Métodos de
Ordenação, como pode ser observado na Figura 59.
114
Figura 59. Caso 1 – teste de nível fácil do conteúdo Mét. de Ordenação
Ao responder as questões deste teste, o aluno obteve desempenho Satisfatório, fazendo com
que o sistema eleve o nível das questões para médio, conforme apresentado na Figura 60.
Figura 60. Caso 1 – teste de nível médio do conteúdo Mét. de Ordenação
Neste novo teste, o aluno alcançou desempenho Regular, e com isso o sistema indicou o
conteúdo atual para reforço, destacando em amarelo seu link no menu, como pode ser visualizado
na Figura 61.
115
Figura 61. Caso 1 – reforço do conteúdo Métodos de Ordenação
Ao realizar este reforço, o aluno resolveu um novo teste contendo questões de nível medio
relativas ao conteúdo de Métodos de Ordenação, obtendo novamente um desempenho Regular,
resultando na mesma indicação de reforço já apresentada na Figura 61. A seguir, o aluno respondeu
a um novo teste de mesmo nível do anterior, obtendo desta vez o desempenho Satisfatório. Com
isso, o sistema elevou o nível das questões para difícil (Figura 62).
Figura 62. Caso 1 – teste de nível difícil do conteúdo Mét. de Ordenação
Ao resolver o novo teste, o aluno obteve desempenho Satisfatório, indicando que o conteúdo
estudado foi realmente assimilado. Na seção a seguir, encontra-se descrito o 2º caso simulado nesta
116
validação, o qual permitiu a visualização de novas adaptações aplicadas a diferentes seqüências de
desempenho.
3.5.2 Caso 2
Para este caso, definiu-se uma dinâmica de aprendizado envolvendo os desempenhos
apresentados na Tabela 8, a qual reflete a situação de um aluno com aprendizado regular no início
da disciplina e que evolui sem grandes dificuldades a partir de reforços, apresentando quedas de
desempenho mais significativas durante o estudo dos conteúdos mais avançados. Para a simulação
desta dinâmica seguiu-se a mesma ordem especificada no caso anterior.
Tabela 8. Dinâmica de aprendizado simulada no caso 2
Conteúdo Desempenho
Lista REG REG REG INS SAT
Fila SAT REG SAT SAT
Pilha SAT REG REG SAT SAT
Árvore REG INSAT INSAT SAT SAT
Mét. Pesquisa REG INSAT INSAT REG SAT
Mét. Ordenação INSAT INSAT REG SAT SAT
Ao responder as questões apresentadas no primeiro teste relativo ao conteúdo de Lista, o
aluno obteve um percentual de acerto de 66,66%, lhe conferindo um desempenho Regular. Com
isso, conforme pode ser visualizado na Figura 63, o sistema indicou para reforço o conteúdo atual,
destacando em amarelo o link correspondente no menu de navegação, além de um conteúdo pré-
requisito, cujo link encontra-se destacado em vermelho.
A indicação do conteúdo pré-requisito deu-se neste caso pelo fato do sistema ter detectado,
ao consultar os nós correspondentes aos conteúdos seguintes relacionados ao atual, uma
probabilidade de 52,9% de o aluno obter futuramente um desempenho Insatisfatório em Métodos de
Pesquisa. Neste momento, o sistema priorizou a indicação do conteúdo de Alocação Dinâmica, pelo
fato deste apresentar maior probabilidade de deficiência de aprendizado em relação ao conteúdo de
Vetor, conforme as probabilidades a posteriori resultantes de inferência na RB, dada a evidência de
aprendizado observada.
117
Figura 63. Caso 2 – reforço de Lista e Alocação Dinâmica
Ao serem reforçados os conteúdos indicados, o aluno respondeu a um novo teste online
relativo ao conteúdo de Lista, agora contendo questões de nível médio, conforme a regra de
adaptação executada para o último desempenho obtido pelo aluno. Neste teste, o aluno alcançou
novamente um desempenho Regular, e com isso o sistema voltou a indicar o conteúdo atual para
reforço, bem como um conteúdo pré-requisito. Pelo fato de o aluno ter reforçado o conteúdo de
Alocação Dinâmica anteriormente, neste momento o sistema indicou para reforço o conteúdo de
Vetor, conforme apresentado na Figura 64.
Figura 64. Caso 2 – reforço de Lista e Vetor
118
A seguir, um novo teste de nivel médio relativo ao conteúdo de Lista foi respondido pelo
aluno, no qual este obteve novamente um desempenho Regular, resultando na mesma indicação de
reforço apresentada na Figura 63.
Após realizar o reforço dos conteúdos indicados, o aluno resolveu um novo teste de nível
médio, alcançando desta vez um desempenho Insatisfatório. Assim, como pode ser visualizado na
Figura 65, o sistema adaptou novamente sua navegação para indicar um conteúdo pré-requisito para
reforço, sendo neste caso o conteúdo de Vetor.
Figura 65. Caso 2 – reforço de Vetor no estudo de Lista
Dado o último desempenho obtido, o aluno voltou a responder questões de nível fácil no
novo teste de Lista, no qual obteve desempenho Satisfatório, indicando que o aluno realmente
assimilou o conteúdo em estudo. Com isso, o sistema tornou acessível o conteúdo de Fila, exibindo
e destacando o link correspondente no menu de navegação, como demonstrado na Figura 66. Isto
possibilitou ao aluno iniciar seus estudos do novo conteúdo, enquanto responde a questões de níveis
mais elevados em novos testes do conteúdo de Lista.
119
Figura 66. Caso 2 – exibição do link do conteúdo Fila
Considerando que anteriormente o aluno obteve um desempenho Satisfatório em um teste de
nível fácil relacionado ao conteúdo de Lista, o sistema elevou o nível das questões para médio. Ao
resolver o novo teste no ambiente, o aluno alcançou desempenho Satisfatório.
Tendo em vista que o novo conteúdo já encontra-se acessível ao aluno, o sistema apenas
elevou novamente o nível das questões de Lista. Assim, o aluno resolveu um novo teste online,
agora contendo questões de nível difícil, no qual obteve novamente um desempenho Satisfatório,
indicando que encontra-se preparado para iniciar as atividades do novo conteúdo disponível. Desta
forma o sistema tornou disponível ao aluno o primeiro teste online referente ao conteúdo de Fila, o
qual contém inicialmente questões de nível fácil, conforme apresentado na Figura 67.
120
Figura 67. Caso 2 – teste de nível fácil do conteúdo Fila
Já no primeiro teste de Fila, o aluno obteve desempenho Satisfatório, e com isso o sistema
exibiu e destacou no menu de navegação o link correspondente ao conteúdo seguinte (Pilha), como
demonstrado na Figura 68, permitindo que o aluno inicie o estudo deste conteúdo enquanto
continua resolvendo novos testes relativos ao conteúdo de Fila, até que mostre-se apto a avançar
para testes do novo conteúdo.
Figura 68. Caso 2 – exibição do link do conteúdo Pilha
Assim, o aluno resolveu um novo teste relativo ao conteúdo de Fila, agora contendo
questões de nível médio, no qual obteve desempenho Regular, devido ao acerto de duas das três
121
questões apresentadas, o que lhe conferiu um percentual de acerto de 66,66%. Dado o nível de
aprendizado evidenciado, o sistema indicou o conteúdo atual para reforço, destacando seu link em
amarelo no menu de navegação da página, como pode ser visualizado na Figura 69.
Figura 69. Caso 2 – reforço do conteúdo Fila
Neste momento, o sistema não indicou um conteúdo pré-requisito para reforço por não ter
detectado esta necessidade, uma vez que analisou o impacto do desempenho atual sobre o do
conteúdo seguinte (Pilha) e constatou que não havia uma maior probabilidade de se obter um
desempenho Insatisfatório.
Após o reforço, o aluno resolveu um novo teste de nível médio relacionado ao conteúdo de
Fila, no qual alcançou desempenho Satisfatório. Com isso, o sistema passou a selecionar questões
de nível difícil no teste seguinte. Ao resolvê-lo, o aluno obteve mais uma vez um desempenho
Satisfatório. Assim, considerando que o conteúdo de Pilha já encontra-se acessível no ambiente, o
sistema disponibilizou o acesso ao primeiro teste relacionado a este conteúdo, contendo questões de
nível fácil, conforme apresentado na Figura 70.
122
Figura 70. Caso 2 – teste de nível fácil do conteúdo Pilha
Ao responder às questões selecionadas no teste apresentado, o aluno obteve desempenho
Satisfatório, com isso o sistema tornou acessível agora o conteúdo de Árvore, conforme pode ser
visualizado na Figura 71, permitindo que o aluno dê início ao estudo do referido do conteúdo e
assim possa estar mais preparado quando iniciar a resolução de testes relacionados a este conteúdo.
Figura 71. Caso 2 – exibição do link do conteúdo Árvore
Entretanto, no momento o aluno continua resolvendo testes do conteúdo de Pilha, uma vez
que no último teste o aluno obteve desempenho Satisfatório ao responder questões de nível fácil.
123
Assim, deu-se início a resolução de testes de nível médio do conteúdo de Pilha, como demonstrado
na Figura 72.
Figura 72. Caso 2 – teste de nível médio do conteúdo Pilha
Considerando que o aluno obteve um desempenho Regular no novo teste resolvido, o
sistema indicou somente o conteúdo de Pilha para o reforço, destacando em amarelo o link
correspondente no menu de navegação (Figura 73).
Figura 73. Caso 2 – reforço do conteúdo Pilha
124
Neste caso, o sistema não indicou também um conteúdo pré-requisito para reforço pelo fato
de não ter detectado uma maior probabilidade de desempenho Insatisfatório no conteúdo seguinte
(Árvore) ao consultar as probabilidades do nó correspondente na RB.
Após o novo reforço, o aluno resolveu um novo teste de nível médio relativo ao conteúdo de
Pilha, obtendo novamente um desempenho Regular. Com isso, o sistema voltou a indicar o reforço
do conteúdo de Pilha, realizando a mesma adaptação apresentada na Figura 73. A seguir, o aluno
resolveu um novo teste de nível médio, no qual obteve finalmente um desempenho Satisfatório.
Assim, tendo em vista que o conteúdo de Árvore já encontra-se acessível no menu, o
sistema apenas elevou o nível das questões de Pilha para difícil, disponibilizando ao aluno um novo
teste, conforme demonstrado na Figura 74.
Figura 74. Caso 2 – teste de nível difícil do conteúdo Pilha
Ao resolver o referido teste, o aluno obteve novamente desempenho Satisfatório, mostrando-
se bem preparado no conteúdo de Pilha. Isto tornou possível ao aluno iniciar atividades do conteúdo
de Árvore, e então o sistema tornou acessível o primeiro teste de nível fácil referente a este
conteúdo, conforme a Figura 75.
125
Figura 75. Caso 2 – teste de nível fácil do conteúdo Árvore
Ao resolver o teste mencionado, o aluno obteve desempenho Regular, gerando novas
adaptações na navegação do sistema. Conforme pode ser observado na Figura 76, dado o atual
desempenho evidenciado pelo aluno, o sistema indicou para reforço o conteúdo atual e um conteúdo
pré-requisito, destacando seus links em amarelo e vermelho respectivamente.
Figura 76. Caso 2 – reforço de Árvore e Alocação Dinâmica
Após o reforço dos conteúdos atualmente indicados, o aluno resolveu um novo teste
relacionados ao conteúdo de Árvore, agora contendo questões de nível médio (Figura 77), dada a
regra de adaptação executada para seu último desempenho obtido no ambiente.
126
Figura 77. Caso 2 – teste de nível médio do conteúdo Árvore
Neste teste, o aluno alcançou um desempenho Insatisfatório, portanto o sistema adaptou
novamente sua navegação, indicando um conteúdo pré-requisito para reforço. Considerando que,
dentre os conteúdos pré-requisito de Árvore, o de Alocação Dinâmica foi o último reforçado, então
o sistema priorizou a indicação do conteúdo de Vetor (Figura 78), por este apresentar uma
probabilidade de deficiência de aprendizado de 69%, ao passo que Recursividade apresentou uma
probabilidade de 47,4%.
Figura 78. Caso 2 – reforço de Vetor no estudo de Árvore
127
Considerando o desempenho alcançado pelo aluno no último teste, após o atual reforço o
aluno voltou a responder a questões de nível fácil no novo teste relativo ao conteúdo de Árvore,
obtendo outra vez um desempenho Insatisfatório. Com isso, o sistema adaptou-se novamente de
forma a indicar o reforço de outro conteúdo pré-requisito, sendo neste caso o de Alocação
Dinâmica, cujo link foi exibido e destacado em vermelho no menu de navegação, conforme
apresentado na Figura 79.
Figura 79. Caso 2 – reforço de Aloc. Dinâmica no estudo de Árvore
Uma vez realizado o atual reforço, o aluno resolveu um novo teste de nível fácil referente
ao conteúdo de Árvore, no qual obteve desempenho Satisfatório. Assim, o sistema adaptou
novamente sua navegação, passando disponibilizar o link relativo ao conteúdo de Métodos de
Pesquisa, como demonstrado na Figura 80.
128
Figura 80. Caso 2 – exibição do link de Métodos de Pesquisa
Desta forma, o aluno pode iniciar seu estudo do novo conteúdo, porém ainda resolvendo a
novos testes do conteúdo de Árvore. Assim, considerando o desempenho obtido pelo aluno no
último teste, o novo teste apresentado passou a conter questões de nível médio (Figura 81).
Figura 81. Caso 2 - teste de nível médio do conteúdo Árvore
Ao resolver o teste atual, o aluno obteve novamente um desempenho Satisfatório, e com isso
o sistema apenas elevou o nível das questões para difícil, uma vez que o conteúdo seguinte já
encontra-se acessível no menu de navegação. Assim, no novo teste aplicado (Figura 82), o aluno
129
alcançou mais uma vez um desempenho Satisfatório, indicando que o aluno encontra-se bem
preparado no conteúdo de Árvore, podendo iniciar a resolução de testes do conteúdo seguinte.
Figura 82. Caso 2 – teste de nível difícil do conteúdo Árvore
Assim, o sistema tornou acessível ao aluno o primeiro teste relativo ao conteúdo de Métodos
de Pesquisa, o qual contém inicialmente questões de nível fácil, conforme a Figura 83.
Figura 83. Caso 2 – teste de nível fácil do conteúdo Mét. de Pesquisa
Neste primeiro teste relativo ao conteúdo de Métodos de Pesquisa, o aluno obteve um
desempenho Regular, e com isso, o sistema indicou o conteúdo atual para reforço, destacando seu
link em amarelo no menu, como pode ser visualizado na Figura 84. Neste caso, o sistema não
130
indicou um conteúdo pré-requisito para reforço pelo fato de ter constatado que a probabilidade do
aluno obter um desempenho Insatisfatório no conteúdo seguinte, dado o desempenho atual, é de
apenas 33,8%.
Figura 84. Caso 2 – reforço do conteúdo de Métodos de Pesquisa.
Após este reforço, o aluno resolveu um teste de nível médio, no qual obteve desempenho
Insatisfatório. Detectando a atual dificuldade de aprendizado do aluno, o sistema indicou um
conteúdo pré-requisito para reforço (Figura 85).
Figura 85. Caso 2 – reforço de Lista no estudo de Mét. de Pesquisa
131
Considerando que os conteúdos pré-requisito do conteúdo atual são Vetor e Lista, o sistema
priorizou a indicação do último pelo fato deste apresentar uma probabilidade de deficiência de
aprendizado igual a 79,2%, ao passo que o outro conteúdo apresenta uma probabilidade igual a
66,1%, dada o desempenho do aluno no conteúdo atual.
Devido à queda de desempenho obtida no último teste, após o reforço do conteúdo
atualmente indicado, o aluno resolveu um novo teste de nível fácil relativo ao conteúdo de Métodos
de Pesquisa, no qual voltou a obter um desempenho Insatisfatório. Com isso, desta vez o sistema
indicou para reforço o conteúdo de Vetor, conforme demonstrado na Figura 86.
Figura 86. Caso 2 – reforço de Vetor no estudo de Mét. de Pesquisa
A seguir, o aluno resolveu a um novo teste contendo questões de nível fácil relativas ao
conteúdo atual, obtendo desta vez o desempenho Regular. Dada esta nova evidência, o sistema
voltou a indicar o conteúdo atual para reforço, adaptando sua navegação da mesma forma como foi
apresentado na Figura 84. Neste momento, o sistema elevou novamente o nível das questões dos
testes para médio, conforme a Figura 87.
132
Figura 87. Caso 2 – teste de nível médio do conteúdo Met. de Pesquisa
Ao resolver o novo teste, o aluno obteve finalmente um desempenho Satisfatório. Com isso,
o sistema tornou-se acessível o conteúdo de Métodos de Ordenação, exibindo e destacando o link
correspondente no menu (Figura 88).
Figura 88. Caso 2 – exibição do link do conteúdo Mét. de Ordenação
Neste momento, o aluno pode iniciar o estudo do referido conteúdo, enquanto ainda
responde a questões de nível difícil em um novo teste relacionado ao conteúdo de Métodos de
Pesquisa, conforme apresentado na Figura 89.
133
Figura 89. Caso 2 – teste de nível difícil do conteúdo Mét. de Pesquisa
Ao resolver o novo teste, o aluno obteve novamente um desempenho Satisfatório. Com
isso, o sistema tornou acessível o primeiro teste relativo ao conteúdo de Métodos de Ordenação, o
qual contém questões de nível fácil, como pode ser observado na Figura 90.
Figura 90. Caso 2 – teste de nível fácil do conteúdo Mét. de Ordenação
Ao resolver o teste apresentado, o aluno alcançou um desempenho Insatisfatório, logo o
sistema realizou uma nova adaptação em sua navegação, indicando para reforço o conteúdo de
Recursividade, como pode ser visualizado na Figura 91. Neste caso, considerando que os conteúdos
pré-requisito do conteúdo atual são Vetor e Recursividade, o sistema indicou este último pelo fato
134
de o conteúdo de Vetor, o qual é um pré-requisito comum a diversos conteúdos, ter sido o último
reforçado pelo aluno no ambiente.
Figura 91. Caso 2 – reforço de Recursividade no estudo de Mét. de Ordenação
Após o reforço do conteúdo indicado, o aluno resolveu um novo teste de nível fácil relativo
ao conteúdo atual, no qual obteve novamente um desempenho Insatisfatório. Com isso, o sistema
adaptou novamente sua navegação para indicar um novo conteúdo pré-requisito para reforço, tendo
sido selecionado neste caso o conteúdo de Vetor, conforme demonstrado na Figura 92.
Figura 92. Caso 2 – reforço de Vetor no estudo de Mét. de Ordenação
135
Uma vez realizado o novo reforço, o aluno respondeu novamente a um teste de nível fácil
relativo ao conteúdo atual, obtendo desta vez um desempenho Regular. Com isso, o sistema indicou
o conteúdo em estudo para reforço (Figura 93).
Figura 93. Caso 2 – reforço do conteúdo Mét. de Ordenação
A seguir, o aluno respondeu a questões de nível médio no novo teste relacionado a Métodos
de Ordenação (Figura 94), obtendo um nível de aprendizado Satisfatório. Considerando que este
teste continha questões de nível Médio, o sistema elevou o nível das questões para Difícil, e ao
resolver este teste o aluno obteve resultado Satisfatório.
Figura 94. Caso 2 – teste de nível médio do conteúdo Mét. de Ordenação
136
Com isso, o sistema passou a selecionar questões de nível difícil no teste seguinte, como
demonstrado na Figura 95, no qual o aluno obteve desempenho Satisfatório, indicando que o aluno
teve um bom aproveitamento do conteúdo.
Figura 95. Caso 2 – teste de nível difícil do conteúdo Mét. de Ordenação
Caso o aluno voltasse a obter um desempenho Insatisfatório ou Regular ao resolver o teste
atual, o sistema realizaria novas adaptações, indicando novos conteúdos para reforço. Da mesma
forma, o nível das questões seria reduzido conforme a queda de desempenho apresentada, até que o
aluno estivesse apto a resolver um novo teste de nível difícil.
Através das simulações realizadas no E-Adapt, foi possível constatar a efetiva aplicação das
adaptações a diferentes dinâmicas de aprendizagem envolvendo os conteúdos da disciplina tratada,
bem como a viabilidade da aplicação de Redes Bayesianas como suporte à individualização do
sistema.
4 CONCLUSÃO
O estudo e pesquisa realizados neste projeto possibilitaram a aquisição de conhecimento
sobre Ambientes Virtuais de Aprendizagem, Hipermídia Adaptativa e Redes Bayesianas,
constituindo o principal foco de estudo deste trabalho os dois últimos temas, necessários ao
desenvolvimento do protótipo apresentado, o qual foi aplicado a um estudo de caso real envolvendo
a disciplina de Estrutura de Dados do 3º período dos cursos de Ciência da Computação e
Engenharia de Computação da UNIVALI, Campus São José, a qual é atualmente ministrada em
modo presencial e também à distância.
Durante a etapa de pesquisas, realizou-se um estudo em relação às limitações atualmente
apresentadas pelos Ambientes Virtuais de Aprendizagem no que se refere à interatividade entre o
estudante e o ambiente, bem como uma análise de diferentes soluções, tecnologias e arquiteturas
relacionadas à aplicação de Redes Bayesianas em Sistemas Hipermídia Adaptativos. Além disso,
contou-se com o auxílio de especialistas das áreas relacionadas durante o estudo realizado, para
obtenção de maior conhecimento nos referidos temas.
Foi possível perceber que os assuntos aqui tratados apresentam grande abrangência e uma
grande diversidade de temas correlacionados, o que tornou necessária a realização de uma seleção
dos conceitos e aspectos relevantes ao contexto deste trabalho e ao desenvolvimento do ambiente
proposto, de forma a evitar que o escopo do trabalho atingisse maiores proporções e acabasse por
não definir exatamente uma linha de pesquisa a ser seguida.
Além disso, existem diversas práticas para o desenvolvimento de ambientes inteligentes, as
quais combinam diversos recursos e conceitos tecnológicos e pedagógicos, além de diferentes
técnicas de IA aplicadas para diferentes fins. Tal diversidade gerou dúvidas em dado momento
sobre a escolha da prática que seria adotada para o desenvolvimento do ambiente proposto. Esta
dúvida não referia-se à técnica de IA que seria empregada, pelo fato desta vir sendo amplamente
utilizada em ambientes educacionais inteligentes, mas sim sobre a forma de adaptação mais
apropriada ao escopo deste trabalho, bem como as técnicas e métodos que poderiam ser aplicados, e
quais poderiam ser os critérios adotados para a realização de novas adaptações no sistema, a partir
de regras pré-definidas.
Assim, com base nas pesquisas realizadas e na análise do sistema, a qual foi realizada junto
ao professor da disciplina tratada, definiu-se a solução desenvolvida no presente trabalho, a qual
consiste em um protótipo de Ambiente Inteligente de Aprendizagem baseado em Hipermídia
Adaptativa com aplicação de Redes Bayesianas voltado ao auxílio de alunos no aprendizado da
138
referida disciplina, tendo este sido nomeado E-Adapt. Em termos de adaptação, neste sistema
optou-se pela aplicação de técnicas de Navegação Adaptativa, por ser uma prática que vem sendo
bastante utilizada em ambientes inteligentes de uma forma geral e que foi considerada apropriada
para o escopo deste projeto, uma vez que a adaptação por meio da tecnologia de Apresentação
Adaptativa envolve diversas questões adicionais relacionadas sobretudo ao perfil cognitivo e outras
particularidades de cada estudante, as quais são muito mais complexas e abrangentes, e que exigem
uma pesquisa e análise mais aprofundadas. Além disso, definiu-se como critério para realização das
adaptações, a resolução de testes online compostos por questões de múltipla escolha de diferentes
níveis de dificuldade, a partir das quais visou-se detectar o nível de aprendizado de cada aluno
durante o estudo dos conteúdos para prover suporte personalizado baseado em suas necessidades.
De qualquer forma este sistema tem o intuito de apenas ser um suporte adicional ao aprendizado dos
alunos, afinal nenhum sistema pode substituir o papel do professor em um processo de
aprendizagem.
A modelagem do E-Adapt foi elaborada nos padrões da UML e arquitetura MVC, sendo
apresentados os diagramas referentes ao projeto dos principais processos implementados no
protótipo, bem como a descrição das respectivas funcionalidades e especificação das principais
classes envolvidas, a fim de prover maior esclarecimento a respeito do sistema.
A Rede Bayesiana que foi modelada para o tratamento do problema visou representar o
aprendizado do aluno nos conteúdos envolvidos com base em seu desempenho nos testes online
resolvidos ao longo de seus estudos na disciplina de Estrutura de Dados, de forma a dar suporte às
adaptações da navegação do sistema por meio do resultado de suas inferências. Uma vez modelada
esta RB, as TPCs correspondentes aos seus nós foram inicializadas com probabilidades a priori
calculadas a partir de uma amostra de dados de avaliações. Ao ser validada esta RB, foi possível
constatar que sua estrutura mostrou-se adequada ao tratamento do problema. Entretanto, no que se
refere às probabilidades a priori, observou-se que diversas células das TPCs dos nós Lista, Arvore e
MetOrd, sobretudo o nó Lista, constituíram casos não observados na amostra, apresentando
freqüência zero, além de casos em que houve freqüência de 100% representada por um único
indivíduo da amostra, algo que não pode ser considerado uma certeza em relação à sua ocorrência.
Logo, isto evidencia que a amostra utilizada nos cálculos apresentou tamanho insuficiente.
Considerando a quantidade de relações válidas em um nó, nestes casos deveria existir pelo menos
um indivíduo por célula para se ter a situação de máxima entropia, a qual reflete iguais
probabilidades de ocorrência das classificações do nó dada uma relação de nós pais. Assim, tendo
139
uma quantidade superior a esta nas células, teria-se estimativas de probabilidade mais confiáveis.
Para isso seria necessário um maior tempo de amostra.
A implementação do referido protótipo foi realizada conforme os diagramas modelados,
sendo seguidos o padrão de arquitetura MVC e o padrão de persistência JPA, a partir do emprego de
tecnologias como JSF e Hibernate, e do uso da biblioteca E-Bayes para implementação da RB, as
quais deram o devido suporte à funcionalidade do sistema. Através dos testes executados, para os
quais criou-se uma massa de dados, foi possível constatar o correto funcionamento do sistema e a
correspondência das funcionalidades às definições realizadas em termos de implementação.
O presente sistema possui algumas limitações, por tratar-se de um protótipo e estar voltado
ao tratamento de um problema específico. Dentre estas, podem ser citadas: (i) a ausência de
implementação dos cadastros especificados; (ii) a adaptação realizada a uma única estrutura de links
que compõem o menu da página; (iii) a aplicação de testes online envolvendo questões de um único
conteúdo e nível por vez; e (iv) regras de adaptação restritas.
4.1 TRABALHOS FUTUROS
Para trabalhos futuros, baseado nesta pesquisa, pretende-se realizar um estudo da aplicação
de Redes Bayesianas dinâmicas em sistemas adaptativos, bem como da aplicação de outras técnicas
de Navegação Adaptativa e também de Apresentação Adaptativa, de forma a combiná-las no
tratamento de diferentes estilos cognitivos e métodos pedagógicos, a serem considerados no
desenvolvimento da versão completa do E-Adapt.
Na referida versão busca-se aperfeiçoar o suporte personalizado ao aprendizado dos alunos e
oferecer maior flexibilidade para o tratamento de diferentes disciplinas, provendo a individualização
do ambiente aos alunos através da construção dinâmica de Redes Bayesianas para atender a
diferentes demandas relacionadas às disciplinas dos cursos. Para isso, considera-se a realização de
configurações envolvendo as variáveis de interesse em um domínio de problema e suas relações,
bem como o armazenamento de dados provenientes de uma amostra em banco de dados. Além
disto, poderão ser considerados diferentes tipos de interação no sistema, e as regras de adaptação
passarão a ser configuráveis, de forma a serem estabelecidas pelo professor conforme a dinâmica da
disciplina que lecionam e as necessidades detectadas.
Em termos de funcionalidades, serão implementados os cadastros propostos, bem como um
ambiente de acesso para o professor e o coordenador, uma vez que neste protótipo tratou-se
somente o ambiente acessível ao aluno, tornando-lhes possível o gerenciamento e customização de
disciplinas nos cursos, bem como o acompanhamento do aprendizado dos alunos.
REFERÊNCIAS BIBLIOGRÁFICAS
ALLY, M. Foundations of educational theory for online learning. In: ANDERSON, T.; ELLOUMI, F. Theory and pratice of online learning. São Paulo: Athabasca University, 2004. cap. 1, p. 3-31.
ALMEIDA, M. E. B. Educação à distância na internet: abordagens e contribuições dos ambientes digitais de aprendizagem. Educação e Pesquisa, São Paulo, v. 29, nº 2, 2003. Disponível em: <http://www.scielo.br/pdf/ep/v29n2/a10v29n2.pdf>. Acesso em: 20 fev. 2007.
ARAGÃO, A. L. Utilização de aprendizado de máquina para a adaptação de estruturas em hipermídia adaptativa. 2004. 92 f. Dissertação (Mestrado em Ciências da Computação e Matemática Computacional) – Programa de Pós-Graduação em Ciências da Computação e Matemática Computacional, Universidade de São Paulo, São Carlos, 2004. Disponível em: <http://www.teses.usp.br/teses/disponiveis/55/55134/tde-11052004-103808>. Acesso em: 2 abr. 2007.
AZEVÊDO, W. Panorama atual da educação à distância no Brasil. Conect@, Porto Alegre, nº 2, 2000. Disponível em: < http://www.revistaconecta.com/conectados/wilson_seminario.htm>. Acesso em: 10 fev. 2007.
BASSANI, P. S.; BEHAR, P. A. Análise das interações em ambientes virtuais de aprendizagem: uma possibilidade para avaliação da aprendizagem em EaD. Novas Tecnologias na Educação, Porto Alegre, v. 4, nº 1, 2006. Disponível em: <http://www.cinted.ufrgs.br/renote/jul2006/ artigosrenote/a35_21201.pdf>. Acesso em: 24 mar. 2007.
BELLIA, R. Uma aplicação Java EE completa parte 1: requisitos, modelo de classes e persistência com JPA. Java Magazine, Rio de Janeiro, n.44, p. 26-36, 2007.
BELLIA, R.; SENGER, Y. H. Uma aplicação Java EE completa parte 2: implementando a interface web com JSF. Java Magazine, Rio de Janeiro, n.45, p. 30-39, 2007.
BET, S.; FROZZA, A. A.; ARRUDA, A. A. C. Banco de Desafios: uma aplicação de hipermídia adaptativa e redes bayesianas. In: SIMPÓSIO BRASILEIRO DE INFORMÁTICA NA EDUCAÇÃO, 15., Florianópolis, 2004. Anais..., Florianópolis: SBC, 2004. Disponível em: <http://sbie2004.ufam.edu.br/anais_cd/extras/anaisvolI/vDigital/posteres/5133.pdf>. Acesso em 20 set. 2007.
BRUNETTO, M. A. C.; OLIVEIRA, J. P. M.; PROENÇA JÚNIOR, M. L.; PIMENTA, M. S.; RIBEIRO, C. H. F. P.; LIMA, J. V.; FREITAS, V.; MARÇAL, V. P.; GASPARINI, I.; AMARAL, M. A. AdaptWeb: um ambiente para ensino-aprendizagem adaptativo na web. Educar em Revista, Curitiba, Edição especial, p.175-197, 2003. Disponível em: <http://calvados.c3sl.ufpr.br/ojs2/ index.php/educar/article/viewFile/2147/1799>. Acesso em: 09 set. 2007.
BUGAY, E. L. O modelo AHAM-MI: modelo de hipermídia adaptativa utilizando inteligências múltiplas. 2006. 229 f. Tese (Doutorado em Engenharia de Produção) – Programa de Pós-Graduação em Engenharia de Produção, Universidade Federal de Santa Catarina, Florianópolis, 2006. Disponível em: <http://teses.eps.ufsc.br/defesa/pdf/10880.pdf>. Acesso em: 18 fev. 2007.
141
CAETANO, K. C. Desenvolvimento e avaliação de um ambiente virtual de aprendizagem em administração em enfermagem. 2006. 155 f. Dissertação (Mestrado em Enfermagem) – Programa de Pós-Graduação em Enfermagem, Universidade de São Paulo, São Paulo, 2006. Disponível em: <http://www.teses.usp.br/teses/disponiveis/7/7131/tde-17102006-112027>. Acesso em: 9 abr. 2007.
CANDOTTI, C. T.; GELLER, M.; SILVEIRA, S. R.; MARQUES, E. M.; SANTANA, M. B. Sistema hipermídia adaptativo baseado em estilos cognitivos. Novas Tecnologias na Educação, Porto Alegre, v. 4, nº 2, 2006. Disponível em: < http://www.cinted.ufrgs.br/renote/dez2006/ artigosrenote/25051.pdf >. Acesso em: 25 mar. 2007.
COZMAN, F. G. EBayes version 0.1 - embedded bayesian networks. São Paulo: Universidade de São Paulo, 1999. Disponível em: <http://www.pmr.poli.usp.br/ ltd/>. Acesso em: 09 set. 2007.
COZMAN, F. G. Generalizing variable elimination in bayesian networks. In: WORKSHOP ON REASONING IN ARTIFICIAL INTELLIGENCE AT IBERAMIA – SBIA 2000, Atibaia, 2000. Anais..., Atibaia: Tec Art Editora, 2000. p. 27-32. Disponível em: <http://www.cs.cmu.edu/~ javabayes/Home/>. Acesso em: 12 set. 2007.
CRISPIM, H. A. F.; ABDALLA JÚNIOR, H.; MOLINARO, L. F. R. Proposta para um ambiente inteligente de ensino à distância. In: CONGRESSO INTERNACIONAL DE EDUCAÇÃO À DISTÂNCIA, 9., São Paulo, 2002. Anais..., São Paulo: ABED, 2002. Disponível em: <http://www.abed.org.br/congresso2002/trabalhos/texto48.htm>. Acesso em: 11 abr. 2007.
FUKS, H. Aprendizagem e Trabalho Cooperativo no Ambiente AulaNet. Revista Brasileira de Informática na Educação, Santa Catarina - UFSC, v. 6, p. 53-73, 2000.
GARCINDO, L. A. S. Uma abordagem sobre o uso da hipermídia adaptativa em ambientes virtuais de aprendizagem. 2002. 146 f. Tese (Doutorado em Engenharia de Produção) – Programa de Pós-Graduação em Engenharia de Produção, Universidade Federal de Santa Catarina, Florianópolis, 2002. Disponível em: <http://teses.eps.ufsc.br/defesa/pdf/1766.pdf>. Acesso em: 18 fev. 2007.
GEARY, D.; HORSTMANN, C. Core JavaServer Faces – fundamentos. 2. ed. Rio de Janeiro: Alta Books, 2007.
GELLER, M.; TAROUCO, L. M. R.; FRANCO, S. R. K. Educação à distância e estilos cognitivos: construindo a adaptação de ambientes virtuais. In: CONGRESSO IBEROAMERICANO DE INFORMÁTICA EDUCATIVA, 7., Monterrey, 2004. Anais..., Monterrey: 2004. Disponível em: <http://www.niee.ufrgs.br/ribie2004/Trabalhos/Comunicacoes/com274-283.pdf>. Acesso em: 20 mar. 2007.
KENSKI, V. M. Das salas de aula aos ambientes virtuais de aprendizagem. In: CONGRESSO INTERNACIONAL DE EDUCAÇÃO À DISTÂNCIA, 12., 2005, Florianópolis. Anais..., Florianópolis: 2005. Disponível em: <http://www.abed.org.br/congresso2005/por/pdf/030tcc5.pdf>. Acesso em: 12 fev. 2007.
KLAES, L. S. Cooperativismo e Educação à Distância. 2005. 270 f. Tese (Doutorado em Gestão da Qualidade e Produtividade) – Programa de Pós-Graduação em Engenharia de Produção, Universidade Federal de Santa Catarina, Florianópolis, 2005. Disponível em: <http://teses.eps.ufsc.br/defesa/pdf/7037.pdf>. Acesso em: 19 fev. 2007.
142
LADEIRA, M.; VICARI, R. M.; COELHO, H. Redes Bayesianas Multiagentes. Revista Eletrônica de Iniciação Científica, Porto Alegre, ano II, nº 1, 2002. Disponível em: <http://www.sbc.org.br/>. Acesso em: 19 mar. 2007.
LIMA, P. S. R.; BRITO, S. R.; SILVA, O. F.; FAVERO, E. L. Adaptação de Interfaces em Ambientes Virtuais de Aprendizagem com Foco na Construção Dinâmica de Comunidades. Novas Tecnologias na Educação, Porto Alegre, v. 3, nº 1, 2005. Disponível em: <http://www.cinted.ufrgs.br/renote/maio2005/artigos/a55_construcaodinamica.pdf>. Acesso em: 11 fev. 2007.
LUCAS, J. P.; MARTINS, C.; SILVEIRA, R.; CARVALHO, C. V. Ferramentas de autoria de sistemas hipermídia adaptativos para aprendizagem: um ponto de situação. Novas Tecnologias na Educação, Porto Alegre, v. 3, nº 2, 2005. Disponível em: <http://www.cinted.ufrgs.br/renote/ nov2005/artigosrenote/a28_hipermidia_adapt.pdf >. Acesso em: 24 mar. 2007.
LUGER, G. F. Inteligência artificial – estruturas e estratégias para a solução de problemas complexos. 4. ed. Porto Alegre: Bookman, 2004.
LUNA, J. E. O. Algoritmos EM para aprendizagem de redes bayesianas a partir de dados completos. 2004. 132 f. Dissertação (Mestrado em Ciência da Computação) – Curso de Mestrado em Ciência da Computação, Universidade Federal de Mato Grosso do Sul, Campo Grande, 2004. Disponível em: <http://www.dct.ufms.br/mestrado/dissertacoes/jose_eduardo.pdf>. Acesso em: 9 abr. 2007.
MACHADO, G. J. C.; FRANCISCO, D. J.; MENDES, A. Q.; AMANTE, L. Refletindo sobre a interação social em ambientes virtuais de aprendizagem. Novas Tecnologias na Educação, Porto Alegre, v. 3, nº 1, 2005. Disponível em: <http://www.cinted.ufrgs.br/renote/maio2005/artigos/ a08_intereacao_social.pdf>. Acesso em: 13 fev. 2007.
MALANGE, F. C. V. Uma proposta de aprendizado da lógica utilizando um ambiente virtual de aprendizagem colaborativa. 2005. 108 f. Dissertação (Mestrado em Ciência da Computação) – Faculdade de Ciência da Computação, Universidade Federal de Santa Catarina, Florianópolis, 2005. Disponível em: <http://www.tede.ufsc.br/teses/PGCC0634.pdf>. Acesso em: 23 mar. 2007.
MARQUES, I.; DUTRA, R. L. Redes Bayesianas: o que são, para que servem, algoritmos e exemplos de aplicações. Rio de Janeiro: Universidade Federal do Rio de Janeiro, 1999. Disponível em: <http://www.cos.ufrj.br/~ines/courses/cos740/leila/cos740/Bayesianas.pdf>. Acesso em: 20 fev. 2007.
MEHLECKE, Q. T. C.; TAROUCO, L. M. R. Ambientes de suporte para educação à distância: a mediação para aprendizagem cooperativa. Novas Tecnologias na Educação, Porto Alegre, v. 1, nº 1, 2003. Disponível em: <www.cinted.ufrgs.br/renote/fev2003/artigos/querte_ambientes.pdf>. Acesso em: 25 mar. 2007.
MILHO, I.; FRED, A. Sistema de apoio ao diagnóstico médico baseado em redes bayesianas. In: CONFERÊNCIA CIENTÍFICA E TECNOLÓGICA EM ENGENHARIA, Lisboa, 2002. Anais..., Lisboa: ISEL, 2002. Disponível em: <http://www.cc.isel.ipl.pt/ Pessoais/IsabelMilho/downloads/ publications/ccte2002.pdf>. Acesso em: 13 abr. 2007.
MOODLE DOCS. About Moodle. 2007(a). Disponível em: <http://docs.moodle.org/en/ About_Moodle>. Acesso em: 14 abr. 2007.
143
MORETTIN, L. G. Estatística básica. 7. ed. São Paulo: Makron Books, 1999.
NASSAR, S. M. Tratamento de incerteza: sistemas especialistas probabilísticos. Departamento de Informática e Estatística – INE. Florianópolis: UFSC, 2007.
OLIVEIRA, F. L.; BET, S.; OLIVEIRA, A. L.; NASSAR, S. M.; FAGUNDES, F. Modelo de interfaces adaptativas utilizando redes bayesianas. In: ENCONTRO DE ESTUDANTES DE INFORMÁTICA DO TOCANTINS, 5., Palmas, 2003. Anais..., Palmas: ULBRA, 2003. p. 139-148. Disponível em: <http://www.ulbra-to.br/ensino/43020/artigos/anais2003/anais/interfaces adaptativas-encoinfo2003.pdf>. Acesso em: 19 ago. 2007.
OLIVEIRA, J. M. P.; FERNANDES, C. T. Sistemas hipermídia adaptativos educacionais: breve panorama e modelo de referência. In: CONGRESSO NACIONAL DE AMBIENTES HIPERMÍDIA PARA APRENDIZAGEM, Florianópolis, 2004. Anais..., Florianópolis: UFSC, 2004. Disponível em: <www.conahpa.ufsc.br/2004/mredonda/clovis.pdf>. Acesso em: 5 mai. 2007.
ORBOLATO, R. G. Edição de material instrucional para EaD baseada em estratégias cognitivas. 2005. 179 f. Dissertação (Mestrado em Ciência da Computação) – Faculdade de Ciência da Computação, Universidade Federal de São Carlos, São Carlos, 2005. Disponível em: <http://www.bdtd.ufscar.br/tde_arquivos/3/TDE-2005-04-04T12:00:24Z-566/Publico/ DissRGO.pdf>. Acesso em: 3 abr. 2007.
ORLANDELI, R. Um modelo markoviano-bayesiano de inteligência artificial para avaliação dinâmica do aprendizado: aplicação à logística. 2005. 153 f. Tese (Doutorado em Engenharia de Produção e Sistemas) – Programa de Pós-Graduação em Engenharia de Produção, Universidade Federal de Santa Catarina, Florianópolis, 2005. Disponível em: <http://teses.eps.ufsc.br/defesa/pdf/ 11624.pdf>. Acesso em: 18 fev. 2007.
PALAZZO, L. A. M. Modelos proativos para hipermídia adaptativa. 2000. 114 f. Tese (Doutorado em Ciência da Computação) – Faculdade de Ciência da Computação, Universidade Federal do Rio Grande do Sul, Porto Alegre, 2000.
PERAZZO, M. J.; COZMAN, F. G. Derivadas em redes bayesianas usando eliminação de variáveis. In: CONGRESSO BRASILEIRO DE AUTOMÁTICA, Gramado, 2004. Anais..., Gramado: SBA, 2004. Disponível em: <http://www.poli.usp.br/p/fabio.cozman/Publications/Article/perazzo-cozman-cba2004.pdf>. Acesso em: 1 out. 2007.
PEREIRA, A. T. C.; AMARAL, M.; NUNES, T.; PERANTUNES, H. W. G. Moodle database model: a proposal using reverse engineering. In: WORLD CONFERENCE ON DISTANCE EDUCATION, 22., Rio de Janeiro, 2006. Anais..., Rio de Janeiro : ICDE, 2006. 1 CD-ROM.
PERRY, G. T.; TIMM, M. I.; FERREIRA FILHO, R. C. M.; SCHNAID, F.; ZARO, M. A. Desafios da gestão de EaD: necessidades específicas para o ensino científico e tecnológico. Novas Tecnologias na Educação, Porto Alegre, v. 4, nº 1, 2006. Disponível em: <http://www.cinted. ufrgs.br/renote/jul2006/artigosrenote/a16_21165.pdf >. Acesso em: 25 mar. 2007.
RABENSCHLAG, D. R. Um modelo probabilístico para abordar o risco com ilustrações em jogos de empresas. 2005. 181 f. Tese (Doutorado em Engenharia de Produção) – Programa de Pós-Graduação em Engenharia de Produção, Universidade Federal de Santa Catarina, Florianópolis, 2005. Disponível em: <http://teses.eps.ufsc.br/defesa/pdf/6801.pdf>. Acesso em: 18 fev. 2007.
144
ROCHA, H. V.; OEIRAS, J. Y. Y.; FREIRE, F. M. P.; ROMANI, L. A. S. Design de ambientes para EaD: (re)significações do usuário. In: WORKSHOP SOBRE FATORES HUMANOS EM SISTEMAS COMPUTACIONAIS, 4., Florianópolis, 2001. Anais..., Florianópolis: SBC, 2001. p. 84-95. Disponível em: <http://teleduc.nied.unicamp.br/teleduc/>. Acesso em: 9 abr. 2007.
ROSINI, A. M. A educação e o mito do ensino à distância no Brasil. Millenium, Portugal, nº 29, 2004. Disponível em: <http://www.ipv.pt/millenium/Millenium29/10.pdf>. Acesso em: 13 fev. 2007.
RUSSEL, S.; NORVIG, P. Inteligência artificial. 4. ed. Rio de Janeiro: Elsevier, 2004.
SANTIBAÑEZ, M. R. F.; SAOTOME, O.; CUNHA, A. M. Um sistema hipermídia adaptativo para o ensino de engenharia baseado em mapas conceituais e redes bayesianas. In: CONGRESSO BRASILEIRO DE ENSINO DE ENGENHARIA, 21., Rio de Janeiro, 2003. Anais..., Rio de Janeiro : IME, 2003.
SANTOS, E. O.; OKADA, A. L. P. A construção de ambientes virtuais de aprendizagem: por autorias plurais e gratuitas no ciberespaço. In: REUNIÃO ANUAL DA ASSOCIAÇÃO NACIONAL DE PÓS-GRADUAÇÃO E PESQUISA EM EDUCAÇÃO, 26., Poços de Caldas, 2003. Anais..., Poços de Caldas: ANPED, 2003.
SANTOS, N. Estado da arte em espaços virtuais de ensino e aprendizagem. Revista Brasileira de Informática na Educação, Porto Alegre, nº 4, p.75-94, 1999.
SILVA, A. L. C. Ambientes virtuais de aprendizagem: uma experiência no ensino presencial de graduação. 2003. 108 f. Dissertação (Mestrado em Educação) – Faculdade de Pedagogia, Universidade do Vale do Itajaí, Itajaí, 2003. Disponível em: <http://Siaibib01.univali.br/pdf/TED/ Alcides Silva.pdf>. Acesso em: 23 mar. 2007.
SILVA, E. Q. Agente gerenciador de cursos a distância via internet. 2000. 93 f. Dissertação (Mestrado em Ciências da Computação e Matemática Computacional) – Programa de Pós-Graduação em Ciências da Computação e Matemática Computacional, Universidade de São Paulo, São Paulo, 2000.
SILVA, Y. G. Desenvolvimento de um modelo de usuário utilizando redes bayesianas. Palmas: ULBRA, 2005.
TESSAROLLO, M. R. M. Ambientes de autoria de cursos a distância (AutorWeb). 2000. 97 f. Dissertação (Mestrado em Ciência da Computação) – Faculdade de Ciência da Computação, Universidade Estadual de Campinas, Campinas, 2000.
TIBIRIÇÁ, C. A. G. Uma abordagem híbrida fuzzy-bayesiana para modelagem de incerteza. 2005. 97 f. Dissertação (Mestrado em Ciência da Computação) – Programa de Pós-Graduação em Ciência da Computação, Universidade Federal de Santa Catarina, Florianópolis, 2005. Disponível em: <http://www.das.ufsc.br/~gb/pg-ic/IntComp/IntComp.pdf>. Acesso em: 15 abr. 2007.
VALENTINI, C. B.; LUCIANO, N.A.; ANDREOLA, T. Comunidade de aprendizagem: interações em ambientes virtuais. In: CONGRESSO IBEROAMERICANO DE INFORMÁTICA EDUCATIVA, 6., Vigo - Espanha, 2002. Anais..., Vigo - Espanha: Universidade de Vigo, 2002. Disponível em: <http://lsm.dei.uc.pt/ribie/docfiles/txt2003729182438paper-205.pdf>. Acesso em: 30 abr. 2007.
145
VICARI, R. M.; GIRAFFA, L. M. M. Fundamentos dos Sistemas Tutores Inteligentes. In: BARONE, D. Sociedades Artificiais. São Paulo: Artmed, 2003. cap. 7, p. 155-208.
VILAR, B. S. C. M. Um framework para o desenvolvimento de sistemas adaptativos a partir de ontologias. Palmas: ULBRA, 2006.
APÊNDICES
A DESCRIÇÃO DE CASO DE USO 001
CASO DE USO UC001 – Autenticar Usuário
Breve Descrição:
Processo de autenticação de usuários no E-Adapt. Neste fluxo está sendo tratado somente o acesso de usuários do tipo Aluno.
Ator(es) Primário(s): Aluno. Ator(es) Secundário(s):
Pré-condições: - O aluno precisa estar cadastrado no sistema. Fluxo Principal: 1. Na página de login do ambiente (Tela001), o aluno informa seu
código de pessoa e senha; 2. O aluno clica no botão Login; 3. O sistema realiza a validação dos dados informados; 4. O sistema atualiza no banco de dados o número de acessos realizado pelo aluno; 5. O sistema recupera a configuração das adaptações de navegação realizadas para o aluno em seu último acesso; 6. O sistema recupera os dados atualizados do perfil do aluno; 7. O sistema inicializa o Modelo de Adaptação com as informações do aluno recuperadas; 8. O Modelo de Adaptação inicializa o Modelo de Usuário, atribuindo- lhe os dados do perfil do aluno; 9. O Modelo de Adaptação aplica as configurações de adaptação do aluno aos links do menu de navegação do sistema; 10. O sistema carrega página principal (Tela002) com o menu de nave- gação adaptado ao aluno.
Fluxos Alternativos e Exceções:
4.1 O sistema detecta que os dados informados estão incorretos; 4.2 O sistema exibe uma mensagem na página de login (Tela001), avisando que o código de pessoa e/ou senha estão incorretos; 4.3 O aluno executa novamente o passo 1 do Fluxo Principal. 5.1 O aluno está realizando seu primeiro acesso ao ambiente; 5.2 O sistema aplica à navegação a configuração inicial de adaptação; 5.3 O sistema inicializa o perfil do aluno; 5.4 O sistema retoma o passo 7 do Fluxo Principal.
Pós-condições: - O aluno realizou seu acesso ao E-Adapt; - O aluno pode estudar conteúdos já disponíveis e responder a testes online; - A navegação do sistema encontra-se inicializada e adaptada ao aluno conforme seu último acesso.
Fonte e/ou documentos relacionados:
Reuniões realizadas com especialista.
148
B DESCRIÇÃO DE CASO DE USO 002
CASO DE USO UC002 - Resolver Teste Online
Breve Descrição:
Processo de resolução de um teste online para verificação do nível de aprendizado do aluno sobre um conteúdo estudado.
Ator(es) Primário(s): Aluno. Ator(es) Secundário(s):
Pré-condições: - O aluno precisa estar cadastrado no sistema; - O aluno precisa ter efetuado o login no ambiente; - As questões relacionadas ao conteúdo precisam estar cadastradas no sistema.
Fluxo Principal: 1. No menu Atividades da página principal (Tela002), o aluno clica no link Teste correspondente ao conteúdo em estudo; 2. O sistema seleciona aleatoriamente questões relacionadas ao conteúdo e de nível de dificuldade correspondente ao perfil atual do aluno; 3. O sistema exibe a página do teste online contendo as questões selecionadas (Tela003); 4. O aluno responde as questões do teste selecionando uma opção de resposta em cada; 5. O aluno clica no botão Corrigir; 6. O sistema verifica as respostas dadas nas questões do teste; 7. O sistema calcula a porcentagem de acerto obtida pelo aluno; 8. O sistema armazena no banco de dados as respostas dadas pelo aluno nas questões; 9. O sistema envia a porcentagem de acerto do aluno ao Modelo de Adaptação; 10. O sistema retorna à página do conteúdo em estudo.
Fluxos Alternativos e Exceções:
3.1 O sistema não encontra questões cadastradas referentes ao conteúdo estudado; 3.2 O sistema exibe na página (Tela003) uma mensagem ao aluno, avisando que não há questões disponíveis sobre o conteúdo no momento; 3.3 O aluno clica no link Voltar; 3.4 O sistema executa o passo 10 do Fluxo Principal.
6.1 A sessão do aluno expirou no sistema; 6.2 O sistema direciona o aluno à página de login (Tela001), para realização de um novo acesso.
Pós-condições: - Foi calculado o nível de aprendizado do aluno no conteúdo em estudo.
Fonte e/ou documentos relacionados:
Reuniões realizadas com especialista.
149
C DESCRIÇÃO DE CASO DE USO 003
CASO DE USO UC003 - Adaptar Navegação
Breve Descrição:
Processo de adaptação da estrutura de navegação do ambiente com base no desempenho do aluno em um teste online.
Ator(es) Primário(s): Aluno.
Ator(es) Secundário(s):
Pré-condições: - O aluno precisa ter resolvido um teste online sobre um conteúdo; - Os conteúdos a serem estudados ou reforçados precisam estar cadastrados no sistema; - A rede bayesiana precisa estar estruturada e com probabilidades a priori definidas.
Fluxo Principal: 1. Ao ser resolvido um teste online por um aluno (UC002), o Modelo de Adaptação recebe o percentual calculado para seu nível de aprendizado; 2. Com base nisto, o modelo de Adaptação executa a regra de adapta- ção correspondente; 3. O Modelo de Adaptação observa a nova evidência no nó correspon- dente ao conteúdo na RB; 4. O Modelo de Adaptação atualiza os dados do perfil do aluno; 5. A partir da inferência realizada na RB, o Modelo de Adaptação consulta os nós relacionados ao observado, conforme as definições da regra; 6. O Modelo de Adaptação analisa as probabilidades a posteriori calculadas nos nós de interesse; 7. O Modelo de Adaptação aplica ao aluno as modificações necessárias nos links do menu; 8. O Modelo de Adaptação efetiva as novas adaptações na página principal (Tela002).
Fluxos Alternativos e Exceções:
Pós-condições: - Uma nova adaptação foi realizada na estrutura de navegação do aluno no ambiente.
Fonte e/ou documentos relacionados:
Reuniões realizadas com especialista.
150
D DICIONÁRIO DE DADOS
Aqui apresenta-se o detalhamento das tabelas que compõem o modelo atual de banco de
dados do protótipo, sendo estas: Usuário, Perfil, Aluno, Adaptação_Menu, Menu_Aluno,
Disciplina, Turma, Matrícula, Conteúdo, Pré_Requisito, Questão, Opção e Resposta.
Considerando que neste sistema existem diferentes hierarquias de usuário, a tabela Usuário
(Tabela 9) foi criada para armazenar seus dados de acesso ao ambiente, encontrando-se relacionada
à tabela do perfil cadastral de cada tipo de usuário.
Tabela 9. Dicionário de Dados – Tabela Usuário
Coluna Tipo de Dado Chave Nulo Descrição AutoInc id_pessoa INTEGER PK N Código de pessoa. ds_senha VARCHAR(60) N Senha de acesso ao ambiente. tp_usuario CHAR(1) N Tipo de usuário. ‘A’ = Aluno, ‘P’ =
Professor e ‘C’ = Coordenador.
dt_criacao DATETIME N Data e hora de criação do usuário. dt_acesso TIMESTAMP S Data e hora do último acesso do usuário ao
ambiente.
qt_acessos INTEGER N Quantidade de acessos realizados no ambiente.
A tabela Perfil (Tabela 10) tem como objetivo armazenar dados atualizados das variáveis do
perfil de usuário relacionado às adaptações do sistema, sendo aplicável somente a usuários do tipo
Aluno.
Tabela 10. Dicionário de Dados – Tabela Perfil
Coluna Tipo de Dado Chave Nulo Descrição AutoInc id_perfil INTEGER PK N Identificador do perfil do usuário. * id_pessoa INTEGER N Migrado da tabela Usuário. cd_conteudo_atual INTEGER N Conteúdo atual estudado pelo
aluno.
cd_atividade_atual INTEGER N Conteúdo relacionado às atividades atuais (testes).
cd_nivel_questao INTEGER N Nível de questão atingido pelo aluno.
cd_nivel_aprendizado CHAR(1) N Nível de aprendizado atual no conteúdo. ‘I’ = Insatisfatório, ‘R’ = Regular e ‘S’ = Satisfatório.
151
Na tabela Aluno, cujos detalhes são apresentados na Tabela 11, encontram-se armazenados
os dados do perfil dos alunos que utilizam o ambiente, os quais são incluídos por meio do Cadastro
de Alunos.
Tabela 11. Dicionário de Dados – Tabela Aluno
Coluna Tipo de Dado Chave Nulo Descrição AutoInc nr_matricula INTEGER PK N Número da matrícula. cd_pessoa INTEGER FK N Migrado da tabela Usuário. nm_aluno VARCHAR(50) N Nome do aluno. nr_RG INTEGER N R.G. do aluno. nr_CPF INTEGER N CPF do aluno. ds_endereco VARCHAR(60) S Endereço residencial do aluno. ds_bairro VARCHAR(50) S Bairro em que reside o aluno. nr_CEP INTEGER S Número do CEP. nm_cidade VARCHAR(60) N Cidade em que reside o aluno. sg_estado CHAR(2) N Estado em que reside o aluno. nr_telefone VARCHAR(15) N Telefone para contato. ds_email VARCHAR(60) N E-mail para contato.
A tabela Adaptação_Aluno, apresentada na Tabela 12, mantém a configuração atual das
adaptações realizadas nos links dos menus de cada aluno, sendo aplicável somente a este tipo de
usuário.
Tabela 12. Dicionário de Dados – Tabela Adaptação_Aluno
Coluna Tipo de Dado Chave Nulo Descrição AutoInc id_adaptacao INTEGER PK N Identificador da adaptação. * id_pessoa INTEGER FK N Migrado da tabela Usuário. id_menu INTEGER FK N Migrado da tabela Menu_Aluno. fl_atual INTEGER N Indica se o menu é do conteúdo atual.
1 = Sim e 0 = Não.
st_visivel INTEGER N Indica se o menu está ou não visível atualmente. 1 = Sim e 0 = Não.
ds_estilo VARCHAR(100) S Estilo CSS atual do menu do aluno. st_reforco INTEGER N Indica o status de reforço do conteúdo
do menu. 0 = Não Reforçado, 1 = Em Reforço e 2 = Reforçado. Aplicável somente para menus de conteúdo.
qt_acessos_menu INTEGER N Quantidade de acessos realizados no menu.
A tabela Menu_Aluno (Tabela 13) tem a finalidade de armazenar dados dos menus
correspondentes a cada conteúdo de uma disciplina, nos quais serão realizadas adaptações aos
alunos que acessam e interagem com o sistema.
152
Tabela 13. Dicionário de Dados – Tabela Menu_Aluno
Coluna Tipo de Dado Chave Nulo Descrição AutoInc id_menu INTEGER PK N Identificador do menu. * id_conteudo INTEGER FK N Migrado da tabela Conteúdo. nm_menu VARCHAR(70) N Título do menu. cd_menu VARCHAR(40) N Código do menu na página. tp_menu CHAR(1) N Tipo de menu. ‘C’ = Conteúdo e
‘A’ = Atividade.
Na tabela Disciplina (Tabela 14), são armazenados os dados de uma disciplina, a qual é
incluída através do Cadastro de Disciplina.
Tabela 14. Dicionário de Dados – Tabela Disciplina
Coluna Tipo de Dado Chave Nulo Descrição AutoInc id_disciplina INTEGER PK N Identificador da disciplina. nm_disciplina VARCHAR(60) N Nome da disciplina. nr_periodo INTEGER N Período acadêmico. nr_creditos INTEGER N Número de créditos da disciplina.
Na tabela Turma, representada na Tabela 15, são armazenados dados de turmas de cada
disciplina cadastrada, as quais são incluídas através do Cadastro de Turmas.
Tabela 15. Dicionário de Dados – Tabela Turma
Coluna Tipo de Dado Chave Nulo Descrição AutoInc id_turma INTEGER PK N Identificador da matrícula. * id_disciplina INTEGER FK N Migrado da tabela Disciplina. nr_turno INTEGER N Turno da turma. ds_horarios TEXT N Horários das aulas da turma.
A tabela Matrícula, representada na Tabela 16, tem como objetivo relacionar os alunos
cadastrados às turmas das disciplinas que cursarão, armazenando dados adicionais como o status e a
data da matrícula.
Tabela 16. Dicionário de Dados – Tabela Matrícula
Coluna Tipo de Dado Chave Nulo Descrição AutoInc id_protocolo INTEGER PK N Identificador da matrícula. nr_matricula INTEGER FK N Migrado da tabela Aluno. id_turma INTEGER FK N Migrado da tabela Turma. dt_matricula TIMESTAMP N Data e hora de realização da matrícula na
disciplina.
tp_status INTEGER N Status da matrícula do aluno na turma. 0 = Pendente e 1 = Confirmado.
153
A tabela Conteúdo apresentada na Tabela 17 é utilizada para armazenar dados dos
conteúdos a serem lecionados em uma disciplina, os quais são incluídos no sistema por meio do
Cadastro de Conteúdo.
Tabela 17. Dicionário de Dados – Tabela Conteúdo
Coluna Tipo de Dado Chave Nulo Descrição AutoInc id_conteudo INTEGER PK N Identificador do conteúdo. id_disciplina INTEGER FK N Migrado da tabela Disciplina. nm_conteudo VARCHAR(60) N Nome do conteúdo. ds_conteudo TEXT S Texto do conteúdo. nr_unidade INTEGER N Número da unidade correspondente na
ementa.
A tabela Pré_Requisito (Tabela 18) armazena as relações de pré-requisito existentes entre os
conteúdos, as quais são estabelecidas pelo professor.
Tabela 18. Dicionário de Dados – Tabela Pré_Requisito
Coluna Tipo de Dado Chave Nulo Descrição AutoInc id_pre_requisito INTEGER PK N Identificador do pré-requisito. * id_conteudo_req INTEGER FK N Conteúdo pré-requisito. Migrado da
tabela Conteúdo.
id_conteudo_rel INTEGER FK N Conteúdo relacionado. Migrado da tabela Conteúdo.
A tabela Questão (Tabela 19) tem a finalidade de armazenar questões relacionadas a cada
conteúdo, as quais compõem o banco de questões do sistema. Esta tabela é utilizada pelo Cadastro
de Questões.
Tabela 19. Dicionário de Dados – Tabela Questão
Coluna Tipo de Dado Chave Nulo Descrição AutoInc id_questao INTEGER PK N Identificador da questão. * id_conteudo INTEGER FK N Migrado da tabela Conteúdo. cd_nivel INTEGER N Nível da questão. 1 = Fácil, 2 = Médio
e 3 = Difícil.
ds_questao VARCHAR(200) N Enunciado da questão. cd_opcao_correta CHAR(1) N Opção correta da questão.
A tabela Opção (Tabela 20), por sua vez, armazena as opções de resposta de cada questão
cadastrada no sistema, sendo também utilizada pelo Cadastro de Questões.
154
Tabela 20. Dicionário de Dados – Tabela Opção
Coluna Tipo de Dado Chave Nulo Descrição AutoInc id_opcao INTEGER PK N Identificador da opção. * id_questao INTEGER FK N Migrado da tabela Questão. ds_opcao VARCHAR(100) N Texto da opção. cd_opcao CHAR(1) N Código da opção de resposta.
Na tabela Teste apresentada na Tabela 21, encontram-se dados relativos ao histórico de
testes resolvidos por cada aluno no ambiente, os quais são associados às respostas dadas nas
questões correspondentes.
Tabela 21. Dicionário de Dados – Tabela Teste
Coluna Tipo de Dado Chave Nulo Descrição AutoInc id_teste INTEGER PK N Identificador do teste. nr_matricula INTEGER PK FK N Migrado da tabela Aluno. dt_teste TIMESTAMP N Data do teste realizado pelo aluno. vl_perc_acerto DOUBLE N Percentual de acerto nas questões. qt_acertos INTEGER N Número de questões respondidas
corretamente.
qt_questoes INTEGER N Número total de questões do teste.
Finalmente, a tabela Resposta, cujos detalhes são apresentados na Tabela 22, mantém
registros das respostas dadas pelos alunos nas questões apresentadas nos testes online aplicados no
ambiente.
Tabela 22. Dicionário de Dados – Tabela Resposta
Coluna Tipo de Dado Chave Nulo Descrição AutoInc id_resposta INTEGER PK N Identificador da resposta. * id_teste INTEGER FK N Migrado da tabela Teste. nr_matricula INTEGER FK N Migrado da tabela Teste. id_questao INTEGER FK N Migrado da tabela Questão. cd_opcao_resp CHAR(1) N Opção respondida pelo aluno. fl_acerto INTEGER N Indica se o aluno acertou ou não a
resposta. 1 = Sim e 0 = Não.
155
E TABELAS DE PROBABILIDADE
Neste apêndice são apresentadas as TPCs dos nós da RB modelada, as quais apresentam as
probabilidades calculadas para cada combinação de estados entre um nó e seus nós pais observada
na amostra de dados correspondente. Para esclarecer a origem dos valores calculados, foi incluída
em cada célula destas tabelas o número de indivíduos contabilizado para a combinação de estados
correspondente. Nesta seção foram suprimidas as TPCs cujos cálculos foram explanados na Seção
3.2.3
Na Figura 96, são apresentadas as probabilidades a priori dos nós AlocDin e Recursiv,
juntamente com o número de alunos correspondente a cada classificação de nível de aprendizado.
Figura 96. TPCs dos nós AlocDin e Recursiv
Na Figura 97, é apresentada a TPC do nó Pilha, na qual encontra-se especificado, além das
probabilidades, o número de alunos contabilizado para cada um dos casos possíveis envolvendo o
desempenho no conteúdo correspondente e na disciplina como um todo.
Figura 97. TPC do nó Pilha
A TPC do nó Árvore encontra-se divida em três partes neste apêndice, as quais são
apresentadas nas Figuras 98, 99, 100. Nesta tabela existem casos cuja ocorrência não foi observada
durante o cálculo das probabilidades realizado a partir da amostra correspondente, para os quais
encontram-se destacadas em cinza as respectivas linhas da tabela.
156
Figura 98. TPC do nó Árvore – parte 1
Figura 99. TPC do nó Árvore – parte 2
157
Figura 100. TPC do nó Árvore – parte 3
A TPC do nó Lista, a qual contém o maior número de nós relacionados na RB, encontra-se
aqui dividida em doze partes, disponíveis nas Figuras 101 a 112. As relações não observadas
durante o cálculo das probabilidades a priori encontram-se representadas pelas linhas em cinza, da
mesma forma que na TPC do nó Árvore.
Conforme poderá ser visualizado ao longo da TPC do nó Lista, as referidas relações são
predominantes, existindo apenas 69 casos observados de um total de 729 possíveis. Dentre os
observados, a maior parte evidenciou certeza de ocorrência em uma das classificações de
desempenho, dada a combinação correspondente de classificações dos nós pais, tornando o nó
determinístico. Entretanto, a maioria dessas certezas encontra-se representada por apenas um
indivíduo da amostra considerada.
158
Figura 101. TPC do nó Lista – parte 1
159
Figura 102. TPC do nó Lista – parte 2
160
Figura 103. TPC do nó Lista – parte 3
161
Figura 104. TPC do nó Lista – parte 4
162
Figura 105. TPC do nó Lista – parte 5
163
Figura 106. TPC do nó Lista – parte 6
164
Figura 107. TPC do nó Lista – parte 7
165
Figura 108. TPC do nó Lista – parte 8
166
Figura 109. TPC do nó Lista – parte 9
167
Figura 110. TPC do nó Lista – parte 10
168
Figura 111. TPC do nó Lista – parte 11
169
Figura 112. TPC do nó Lista – parte 12
170
Finalmente, é apresentada a TPC do nó MetOrd na Figura 113, a qual contém casos não
observados durante o cálculo das respectivas probabilidades a priori, os quais encontram-se
representados pelas linhas em cinza presentes na tabela.
Figura 113. TPC do nó MetOrd
ANEXOS
ANEXO I - MÉTODOS EXATOS DE INFERÊNCIA BAYESIANA
Propagação de Evidências
Segundo Luna (2004), a Propagação de Evidências sobre uma RB permite a obtenção de
estimativas de probabilidade ao serem acrescidas informações a ela. Considerando um conjunto de
variáveis aleatórias X = {X1, X2, ..., Xn} relacionadas a um domínio e uma função de probabilidade
P(x) para X, com base na equação de distribuição conjunta, ao ser conhecida uma determinada
evidência18, o processo de propagação deve considerar seus valores no cálculo das novas
probabilidades dos nós. Portanto, este método consiste no cálculo de probabilidades a posteriori
P(xi | e) para cada variável Xi ∉ E, dada a evidência E = e, medindo desta forma a influência da
evidência sobre cada variável do domínio. Quando não há evidência, o processo de propagação
consiste no cálculo das probabilidades incondicionais P(xi) para cada Xi ∈ X, as quais estimam as
probabilidades a priori que poderão ser assumidas pelas variáveis.
O cálculo de P(xi | e) pode ser realizado utilizando-se a equação a seguir, a qual deriva do
Teorema de Bayes, conforme Cooper (1990 apud LUNA, 2004):
Onde:
• Pe (x1, ..., xn) é uma função de probabilidade obtida da substituição em P(x1, ..., xn) das
variáveis com evidência, E, pelos seus valores e; e
• x\{xi, e} representam todas as combinações de estados ou valores das variáveis em X
sem considerar os valores de Xi e E.
Assim, para realizar o cálculo de P(xi, e) é necessário somar Pe (x1, ..., xn) para cada
combinação possível de valores das variáveis que não estejam contidas em E, com exceção de Xi.
Portanto, o número elevado de combinações de valores envolvido neste cálculo torna este método
bastante ineficiente, inclusive em redes contendo um número reduzido de variáveis. Entretanto,
18 Consiste em um subconjunto de variáveis E ⊂ X com valores associados Xi = ei para Xi ∈ E.
173
existe uma classe específica de redes que podem ser resolvidas quanto ao número de nós em tempo
linear, sendo esta denominada Poliárvores (PEARL, 1991 apud LUNA, 2004).
Propagação em Poliárvores
Uma poliárvore consiste em um dos modelos gráficos mais simples para a construção de
Redes Bayesianas. O método de Propagação em Poliárvores apresenta como característica principal
o fato de sua complexidade ser linear em relação ao número de nós e arcos que compõem a rede,
comparada ao método explanado anteriormente, o qual necessita de um número exponencial de
operações para realizar a propagação.
Em uma poliárvore dois nós encontram-se unidos por um único caminho, implicando que
cada nó a divide em duas poliárvores não conexas, sendo que uma possui seus nós pais e outros nós
conectados através destes, enquanto a outra possui seus nós filhos e também os nós ligados através
desses filhos. Neste tipo de grafo o processo de propagação pode ser realizado de modo mais
eficiente pelo fato de serem combinadas informações provenientes de ambos subgrafos a partir de
influências causais (π) e diagnósticas (λ) exercidas de um subgrafo a outro (CASTILLO et al,1997
apud LUNA, 2004). Considerando um nó X correspondente a uma variável V de uma rede, X sofre
influência π de seus pais e influência λ de seus filhos quando (LUNA, 2004):
• Uma evidência externa impacta o nó X e este atualiza sua crença P(x | e), propagando-a
a cada um de seus nós pais e nós filhos;
• A evidência proveniente de um nó pai (π) chega ao nó filho X, o qual atualiza sua crença
e a propaga a cada um de seus nós pais e nós filhos, com exceção do pai que lhe exerceu
a influência; e
• Uma evidência de um nó filho (λ) chega ao nó pai X, o qual atualiza sua crença e a
propaga a todos os seus nós pais e nós filhos, exceto o filho que lhe exerceu a influência.
Propagação em Redes Multiconectadas
A estrutura de uma rede multiconectada é mais complexa, na qual podem existir diversos
caminhos possíveis entre cada par de nós. Por isso uma simples propagação local não é aplicável, já
que os algoritmos desenvolvidos para redes simplesmente conectadas (poliárvores) não consideram
a possibilidade de um nó detectar se uma evidência recebida de outros dois nós provém da mesma
fonte e assim evitar contabilizá-la mais de uma vez. A abordagem natural aplicada a redes
174
multiconectadas consiste na realização de transformações topológicas com a finalidade de
transformá-las em poliárvores (COELHO, LADEIRA e VICARI, 1999 apud LUNA, 2004).
Para isso, os métodos mais utilizados são o Método de Agregado e o Método de
Condicionantes. O Método de Agregado constrói representações auxiliares de estruturas mais
simples, as quais unem conjuntos de nós da rede original, a fim de se obter uma rede com estrutura
de poliárvore na qual podem ser aplicados conceitos de Propagação de Evidências. No caso deste
método, uma dificuldade apresentada é a de ser necessária a escolha das variáveis que permitem
quebrar as múltiplas conexões da rede. Quanto maior for esse agregado, maior será a dimensão da
TPC e a dificuldade em explicar a variação de crença devida a cada variável (JENSEN, 2001 apud
LUNA, 2004).
O Método de Condicionantes consiste em modificar a conectividade de uma rede visando
transformá-la em uma rede simplesmente conectada, sendo sua idéia fundamental a de eliminar os
múltiplos caminhos entre os nós através da atribuição de valores a um conjunto reduzido de
variáveis contidas em cada ciclo, as quais formam um Conjunto de Corte. Quando esses nós são
excluídos, são eliminados os ciclos correspondentes na rede, resultando em uma poliárvore na qual
será aplicável o algoritmo de Propagação em Poliárvores.