iMap & CMPaaS – De Ferramenta à Plataforma de
Serviços para Mapas Conceituais
Wagner de A. Perin1, Davidson Cury1, Crediné S. de Menezes2
1Departamento de Informática – Universidade Federal do Espírito Santo (UFES)
Goiabeira, Vitória – ES - Brasil
2Instituto de Informática – Universidade Federal do Rio Grande do Sul (UFRGS)
Porto Alegre – RS – Brasil
[email protected], {dede, credine}@inf.ufes.br
Abstract. This article reports the evolutions of a research that began with the
proposal to create a tool to facilitate operations such as analysis of and evaluation of conceptual maps and culminated with a platform specification for complete management of maps where this tool fits like one of the services offered by the platform. The goal is to highlight the achievements of this research and the integration potential of the specified platform as a source of new research and investigations.
Resumo. Este artigo relata as evoluções de uma pesquisa que iniciou-se com
a proposta de criação de uma ferramenta para facilitar operações de análise e avaliação de mapas conceituais e culminou com a especificação de uma plataforma para gestão completa de mapas onde tal ferramenta enquadra-se como um dos serviços oferecidos pela plataforma. O objetivo é dar destaque aos resultados alcançados pela pesquisa e ao potencial de integração da plataforma especificada como fonte de novas pesquisas e investigações. 1. Introdução
Mapas conceituais são ferramentas gráficas para organizar e representar o conhecimento. São compostos por conceitos, geralmente dispostos dentro de círculos ou retângulos, e de relações entre esses conceitos, que são indicadas por linhas que os interligam. Cada relação entre dois conceitos compõem uma proposição, ou unidades semânticas [Novak e Cañas 1998]. Nesta pesquisa, a formação de proposições é
condicio sine qua non para concepção de mapas conceituais já que desenvolvemos uma
ferramenta inteligente que interpreta o conhecimento presente nos mapas conceituais. Sua versatilidade o torna aplicável em diversas abordagens pedagógicas, tanto no planejamento de atividades de ensino quanto na execução e avaliação da aprendizagem, sendo notadamente um nicho no qual soluções computacionais podem ser propostas com a finalidade de facilitar os processos relacionados ao ensino e a aprendizagem.
Percebendo esse potencial, é crescente o interesse de pesquisadores que desenvolvem soluções para: ampliar a coesão e a coerência dos conceitos presentes em mapas conceituais [Ribeiro et al. 2011]; apoiar a construção automática, ou semiautomática, de mapas conceituais [Kowata et al. 2011, 2010, 2009]; modelar
DOI: 10.5753/cbie.wcbie.2015.43 43
DOI: 10.5753/cbie.wcbie.2015.43 43
DOI: 10.5753/cbie.wcbie.2015.43 43
ambientes para o acompanhamento da aprendizagem baseado em mapas conceituais [Santos et al. 2005]; construir mecanismos de apoio automatizado para avaliação da aprendizagem utilizando mapas conceituais [Araujo et al. 2003]; comparar mapas conceituais utilizando correspondência de grafos [Lamas et al. 2006]; construir ontologias a partir de mapas conceituais utilizando a teoria dos grafos [Zouaq et al. 2011]; associar sistemas lógicos e lógica natural aos mapas conceituais para acompanhamento dos processos de conceituação [Dutra et al. 2004]; e, utilizar mecanismos de inteligência artificial para favorecer a interação com mapas conceituais [Handrick 2005].
Igualmente, esta pesquisa explorou uma necessidade específica dos docentes ao adotarem abordagens pedagógicas apoiadas por mapas conceituais, a saber: a avaliação do conhecimento representado em mapas conceituais. Consideramos esse um desafio já que, ao avaliar, os professores são submetidos à uma pesada carga de processamento cognitivo que exige navegação visual sobre os conceitos e relações presentes no mapa conceitual.
Sendo assim, desenvolvemos uma ferramenta computacional de apoio à análise de mapas conceituais baseada na arquitetura de sistemas de perguntas e respostas, denominada iMap (Inferência em Mapas Conceituais). Por meio desta eximimos, ou tornamos opcional, a navegação visual dos mapas conceituais por parte dos avaliadores ao buscarem informações acerca do conhecimento presente neles. Para isso, aplicamos técnicas que incluem o Processamento de Linguagem Natural, Inteligência Artificial, Arquitetura de Sistemas Orientados a Serviços e Sistemas de Perguntas e Respostas [Perin et al. 2012, 2013, 2014]. Uma vez concluído o desenvolvimento do iMap e percebendo o potencial de aplicação dos mapas nos processos educacionais, esta pesquisa voltou-se para a especificação de uma plataforma para gestão completa de mapas conceituais, denominada CMPaaS (Concept Map Platform as a Service) [Cury et
al. 2014].
Este artigo tem por objetivo dar uma visão panorâmica das evoluções desta pesquisa, seus resultados intermediários, trabalhos em andamento e futuros. Para isto, organizamos este artigo em 4 seções, quais sejam:
Seção 1 (Introdução): Apresenta o contexto, a motivação, os objetivos e a organização do artigo.
Seção 2 (O iMap): Apresenta a arquitetura, funcionamento e objetivos da ferramenta de inferência em mapas conceituais.
Seção 3 (O CMPaaS): Apresenta a arquitetura, função e os serviços oferecidos pela plataforma, destacando seu potencial de integração de pesquisas.
Seção 4 (Considerações Finais): Reforça os alcances desta pesquisa bem como seu potencial para o futuro.
2. O iMap
O iMap é fruto de uma pesquisa cujo objetivo principal foi o de desenvolver uma ferramenta computacional que favorecesse a análise do conhecimento presente em mapas conceituais por meio de perguntas e respostas utilizando linguagem natural,
44 44 44 44
adotando técnicas distintas e complementares, tais como: recuperação de informação, processamento de linguagem natural, sistemas inteligentes, sistemas de perguntas-respostas, dentre outras; a fim de compor uma solução completa que vai desde a análise e interpretação de perguntas realizadas em linguagem natural até a construção de respostas baseadas no conhecimento presente em um mapa conceitual.
Apesar de a criação de sistemas que facilitem o processo de consulta em modelos visuais de representação de conhecimento não ser uma novidade na comunidade científica, dada a existência de soluções tais como TRIPPLE [Sintek & Decker 2002], ROSA [Porto et al. 2003] e Semantic [Bessmertny et al. 2009], consideramos esta pesquisa inovadora e fundamental para a educação já que seu propósito é criar soluções computacionais que auxiliem docentes e alunos nos processos de ensino e aprendizagem apoiados por mapas conceituais.
Em engenharia de software, para distiguir a especificação funcional da implementação do sistema utilizamos, com frequência, os termos “O que” e “Como”, respectivamente. Por definir “O que” empenhamo-nos em descrever as funcionalidades do sistema e as possíveis interações com o usuário. Já o “Como” relaciona-se às funcionalidades que serão implementadas (técnicas e tecnologias adotadas na codificação de um algoritmo) [Fensel 2000]. Nesta seção apresentaremos uma visão panorâmica de “O que” o sistema deve fazer e “Como” ele o faz.
2.1. “O que”
Antes de iniciar o desenvolvimento de um sistema computacional, é fundamental conhecer detalhes do seu fluxo de operações, ou seja, a sequência de passos para sua utilização e o comportamento do sistema. A Figura 1 apresenta uma visão geral da arquitetura projetada para o iMap, apontando as principais funções do sistema e as interações com os atores.
Figura 1. Arquitetura Geral do iMap
A parte superior da Figura 1 apresenta os atores (Autor e Avaliador) e as interfaces de interação com o sistema, quais sejam:
45 45 45 45
Editor de Mapas: Utilizado pelo autor para composição de mapas conceituais que posteriormente alimentam a base de conhecimento do sistema especialista.
Interface de Consulta: Utilizado pelo avaliador de mapas para composição de perguntas em linguagem natural e visualização das respostas produzidas.
Já na parte inferior da Figura 1 são apresentados os componentes fundamentais de funcionamento do sistema. Em síntese, esses componentes e suas funções são:
Tradutor de conhecimento: Responsável por traduzir o conhecimento presente
no mapa numa representação formal que componha a base de conhecimento do
sistema especialista, enriquecendo-a com o uso do WordNet1.
Sistema Especialista: Componente do sistema que possui a base de conhecimento e Regras de Inferências, principal responsável pela produção
das respostas às consultas realizadas pelo avaliador.
Tradutor de Perguntas: Responsável pela interpretação das perguntas
construídas em linguagem natural para uma pergunta de correspondência exata (ou aproximada) presente nas Regras de Inferências do Sistema Especialista. Seus subprocessos são:
o Processador PLN: Utiliza o WordNet para expandir a pergunta e
aumentar as chances de identificar o conhecimento presente no mapa e realiza marcações sintáticas (utilizando o VISL2) de forma a tornar
possível a identificação dos parâmetros necessários para interpretação da pergunta.
o Validador: Responsável por extrair os parâmetros presentes da pergunta
e, utilizando a Gramática (escrita no formato BNF3), verificar se a
pergunta possui características estruturais que a tornem interpretáveis pelo sistema.
o Solucionador: Utiliza a Tabela de Correspondência (especificada
manualmente) para identidicar, fornecer parâmetros e acionar a execução das regras de inferência correspondentes à pergunta realizada.
2.2. “Como”
Uma vez compreendido “o que” se espera de um sistema computacional, segue-se à etapa de implementação. Nesta, a questão fundamental passa a ser “como” atender às necessidades e os desafios impostos pelo desenvolvimento do sistema. Por se tratar de um sistema complexo, seu desenvolvimento se deu de forma incremental. Assim, a versão inicial do iMap [Perin et al. 2012] esteve focada no desenvolvimento de um editor de mapas conceituais e do tradutor de conhecimento para construção da base de
1 WordNet: É uma base de relações léxicas que permite a consulta por termos cognatos. Disponível em: https://wordnet.princeton.edu.
2 VISL: Serviço de marção sintática e semântica. Disponível em: http://beta.visl.sdu.dk.
3 BNF: Backus-Naur Form (BNF) é uma meta-sintaxe utilizada para expressar gramáticas livres de contexto, isto é, um modo formal de descrever linguagens formais.
46 46 46 46
conhecimento e também na definição das regras de inferências utilizadas pelo Sistema Especialista para extração de respostas.
Adotamos o Prolog4 como motor de inferências do Sistema Especialista. Assim,
a responsabilidade do tradutor de conhecimento foi transformar o conhecimento presente nos Mapas Conceituais em fatos (lógica de primeira ordem no padrão Prolog) para compor a base de conhecimento do sistema. A Figura 2 demonstra “o que” espera-se deste processo.
Figura 2. Transformação realizada pelo tradutor de conhecimento
Além desta transformação, o tradutor de conhecimento definia também as
regras de inferência, ou seja, regras independentes de contextos que permitiam aos
usuários a realização de consultas utilizando uma linguagem de baixo nível (Prolog). Esse processo foi implementado utilizando técnicas de MDD (Model Driven
Development5), mais especificamente utilizando uma linguagem específica para
realização de transformações de modelos visuais em textos, conhecida como Acceleo6.
A Figura 3 permite uma visão panorâmica de “como” essa transformação é realizada.
Figura 3. Regras de transformação do Acceleo
4 Prolog: É uma linguagem de programação que se enquadra no paradigma de Programação Lógica. É de uso geral e especialmente associada a inteligência artificial e linguística computacional.
5 MDD (Model Driven Development): É um estilo de desenvolvimento de software no qual os principais artefatos de software são modelos, a partir dos quais são gerados códigos e outros artefatos.
6 Acceleo: É uma implementação programática da OMG (Object Management Group) para realização de transformações MTL (Model to Text).
47 47 47 47
A Figura 4 apresenta um mapa conceitual construído no editor de mapas do
iMap.
Figura 4. Mapa Conceitual construído no editor de Mapas do iMap
A Figura 5 apresenta as respostas produzidas pelo mecanismo de inferência às seguintes perguntas (traduzidas manualmente para o padrão Prolog): (a) Existe relação direta entre os conceitos “Verbos” e “Proposições”? (b) Existe alguma relação entre os conceitos “Caixas” e “Substantivos”? (c) Quais conceitos o aluno identificou a partir do conceito “Verbos”? (d) Para o aluno, quais conceitos levam ao completo entendimento do conceito “Frases de Ligacao”? (Vide Figura 4).
Figura 5. Perguntas e Respostas produzidas pelo sistema inteligente do iMap
Por meio da Figura 5 é possível perceber que a principal limitação apresentada na versão inicial do iMap é fruto da não implementação do Tradutor de Perguntas (Vide Figura 1). Nesta versão, o processo de tradução era realizado pelo próprio usuário e, como é possível perceber, o padrão esperado pelo mecanismo de inferência exigia do usuário final o conhecimento de regras de sintaxe e semântica específicas da linguagem
Prolog. É natural, portanto, que as evoluções desta pesquisa caminhassem no sentido de
explorar esta limitação e, de fato, a versão seguinte do iMap [Perin & Cury 2014] apresentou resultados da implementação do PLN-iMap (Processador de Linguagem Natural) que objetivou facilitar a interação dos usuários finais com o sistema realizando automáticamente as traduções das perguntas em regras para o motor de inferências.
A Figura 6 sintetiza a ideia de como era (a) o fluxo de interações dos usuários com o iMap em sua versão inicial e como passou a ser (b) na versão seguinte. Definindo novamente “o que” se esperava do sistema.
48 48 48 48
Figura 6. Interação conceitual na arquitetura (a) original (b) evoluída do iMap.
A arquitetura funcional do PLN-iMap é composta por dois elementos principaise e três recursos funcionais cuja Figura 7 demonstra “como” eles interagem entre si.
Figura 7. Processos e Recursos do PLN-iMap.
Em resumo, as funções dos componentes e recursos do PLN-iMap são:
Processador PLN: Responsável pela tradução inicial de uma pergunta em linguagem natural para uma pergunta em gramática intermediária.
Solucionador de Correspondência: Recebe a pergunta em gramática intermediária e extrai informações estruturais necessárias para identificação de perguntas no padrão Prolog utilizando uma tabela de correspondência.
VISL: Realiza marcações sintática para identificação dos elementos estruturais constituintes da pergunta.
Gramática Intermediária: Utilizada para reduzir o gap semântico existente entre as linguagens origem e destino do processo de tradução.
Tabela de Correspondência: Fornece as características estruturais das perguntas as quais o sistema inteligente é capaz de responder.
Assim, a versão final do iMap permite ao usuário uma interação humanizada com o sistema utilizando linguagem natural. O sistema realiza a tradução e executar as regras solicitadas pelo usuário, como pode ser observado na Figura 8.
Figura 8. Interações em Linguagem natural utilizando o PLN-iMap.
49 49 49 49
3. O Projeto CMPaaS
Uma vez concluída as pesquisas relacionadas ao desenvolvimento da ferramenta apresentada nas seções anteriores, esta pesquisa preocupou-se com a integração deste serviço com outros diversos serviços desenvolvidos por diferentes pesquisadores, tanto do mesmo laboratório de pesquisa quanto de outros tantos pesquisadores que desenvolvem soluções computacionais para auxílio às operações com mapas conceituais espalhados pelo globo. Ou seja, como o serviço desenvolvido pode ser integrado com outras diversas soluções existentes e que podem vir a existir?
Assim, a evolução desta pesquisa culminou com a especificação de uma plataforma para gestão completa de mapas conceituais, a qual denominamos CMPaaS (Concept Maps Platform as a Service) [Cury et al. 2014]. O projeto de sua arquitetura adota o padrão SOA7 que tem como uma de suas características fundamentais a
capacidade de promover integração. O que, na prática, significa dizer que novos serviços, que estendem as funcionalidades dos serviços oferecidos pelo CMPaaS, podem ser desenvolvidos e disponibilizados por qualquer pessoa, em qualquer parte do mundo. E é justamente a promoção desse cenário de colaboração e de integração o objetivo central deste projeto.
Além da plataforma CMPaaS o projeto inclui o desenvolvimento de uma interface de uso dos serviços oferecidos pela plataforma que permitirá acesso gratuíto a todas as funcionalidades projetadas para a plataforma. Esta interface recebeu o nome de Portal do Conhecimento. A Figura 9(a) permite uma visão panorâmica de como o Portal do Conhecimento e a plataforma CMPaaS interagem e (b) como outros desenvolvedores podem integrar seus próprios serviços e portais ao CMPaaS.
Figura 9. (a) Visão de Integração do Portal do Conhecimento com a Plataforma. (b) Visão de Integração de Serviços Externos à Plataforma.
Além do iMap, o CMPaaS conta com a implementação dos seguintes serviços: (1) Serviço de edição e repositório de mapas conceituais [Santos Jr. et al. 2005]; (2) Serviço de comparação de mapas [Lamas et al. 2006]; (3) Serviço de mesclagem de mapas conceituais [Vassoler et al. 2014]; (4) Serviço de geração de mapas conceituais
7 SOA (Service Oriented Architecture): É um estilo de arquitetura de software cujo princípio fundamental prega que as funcionalidades implementadas pelas aplicações devem ser disponibilizadas na forma de serviços.
50 50 50 50
de forma automatizada [Kowata et al. 2009; 2010; 2011]; (5) Serviço de ontologias a partir de mapas conceituais [Perin et al. 2012], e; (6) Serviço de representação automática das classes de conhecimento definidas por Piaget [Cury et al. 2013].
4. Considerações Finais
Esse artigo apresentou uma visão panorâmica das evoluções de uma pesquisa relacionada ao desenvolvimento de uma ferramenta de inteligência articial para análise e avaliação de mapas conceituais, denominada iMap. Sua organização na forma de projeto arquitetural (“o que”) e implementações (“como”) permite um vislumbre de como este sistema foi pensado e desenvolvido ao longo de toda a pesquisa. Demonstrou ainda que as pesquisas realizadas cuminaram na concepção de uma plataforma denominada
CMPaaS, na qual o iMap enquadra-se como uma das soluções disponíveis e que podem
ser estendidas e integradas a fim de produzirem novos serviços, expandindo de maneira significativa as aplicações e abordagens de uso dos mapas conceituais.
References
Araujo, A. M. T.; Menezes, C. S. D.; Cury, D. Apoio Automatizado à Avaliação da Aprendizagem Utilizando Mapas Conceituais. Simpósio Brasileiro de Informática na Educação. Rio de Janeiro, RJ - Brasil: Anais do SBIE. 2003. p. 183-191.
Assis, D. V.; Perin, W. de A.; Vassoler, G. A.; Cury, D. VMAP – Caracterização de uma Abordagem para Verificação Sintática de Mapas Conceituais. In: Sixth International Conference On Concep Mapping, Santos – SP. Accepted for publication in the Conference Proceedings, 2014.
Bessmertny, I.; Kulagin, V. Semantic Network as a Knowledge Base in Training
System., 2009. Disponivel em:
<https://smartech.gatech.edu/bitstream/1853/24417/1/154.pdf>. Acesso em: 29 de maio de 2015.
Cury, D.; Perin, W. de A.; Santos Jr., Paulo S. CMPaaS – A Plataform of Services for Construction and Handling of Concept Maps. In: Sixth International Conference On Concep Mapping, Santos – SP. Conference Proceedings, 2014.
Dutra, Í. M. ; Fagundes, L. da C. ; CAÑAS, A. J. . Uma proposta de uso dos mapas conceituais para um paradigma construtivista da formação de professores a distância. In: X WIE - Workshop sobre Informática na Escola, 2004, Salvador-BA. Anais do X WIE - Workshop sobre Informática na Escola, 2004.
Handrick, F. ROSAI: Uma Proposta de Representação do Modelo ROSA em Linguagem Lógica. Instituto Militar de Engenharia (IME). [S.l.]. 2005. Dissertação de Mestrado.
Kowata, J. H.; Cury, D.; Boeres, M. C. S. Caracterização das Abordagens para Construção (Semi) Automática de Mapas Conceituais. Simpósio Brasileiro de Informática na Educação. Florianópolis, SC - Brasil: Anais do XX SBIE. 2009. Kowata, J. H.; Cury, D.; Boeres, M. C. S. Uma abordagem computacional para
construção de Mapas Conceituais. XXI Simpósio Brasileiro de Informática na Educação. João Pessoa, PB: Anais do XXI SBIE. 2010.
51 51 51 51
Kowata, J. H.; Cury, D.; Boeres, M. C. S. Construindo Mapas Conceituais a partir de Textos: Uma abordagem computacional aplicada à Lingua Portuguesa do Brasil. Simpósio Brasileiro de Informática na Educação. Aracaju, Sergipe - Brasil: Anais do XXI SBIE. 2011.
Lamas, F.; Boeres, M. C. S.; Cury, D.; Menezes, C. S. de; Aragon, R. Comparando mapas conceituais utilizando correspondência de grafos.. In: SBIE - Simpósio Brasileiro de Informática na Educação, 2005, Juiz de Fora. Anais do SBIE-2005, 2005.
Perin, W. de A.; Cury, D. Construindo Mapas Conceituais utilizando a abordagem iMap. In: Congreso Internacional de Informática Educativa, 2012, Santiago. Anais do Evento, 2012. v. 1. p. 108-113.
Perin, W. de A.; Morati Jr., R. G.; Cury, D.; Menezes, C. S. iMap - Um mecanismo de Inferências baseado em Mapas Conceituais. in: Computer on the Beach 2013, Florianópolis. Anais do Evento, 2013. v. 1. p. 208-218.
Perin, W. de A.; Cury, D.. NLP – iMap: Integrated Solution Based on Question-Answer Model in Natural Language for an Inference Mechanism In Concept Maps. In: Sixth International Conference On Concep Mapping, Santos – SP. Accepted for publication in the Conference Proceedings, 2014.
Porto, F. et al. ROSA: A Data Model and Query Language for e-Learning Objetcs. I PGL Database Research Conference. Rio de Janeiro, RJ, Brazil: Proceeding of PGLDB'2003. 2003.
Ribeiro, E.F. ; Menezes, C. S. de ; Tavares, O. L. ; Cury, D. Um Estudo sobre o Incremento da Coesão e Coerência (Expressividade) em Mapas Conceituais. In: Simposio Brasileiro de Informatica na Educação, 2011, Aracaju. Anais do SBIE-2011, 2011. v. 1. p. 233-242.
Santos JR, P. S. ; Menezes, C. S. ; Cury, D. Um Ambiente para Acompanhamento da Aprendizagem baseado em Mapas Conceituais . In: SBIE - Simpósio Brasileiro de Informática na Educação, 2005, Juiz de Fora. Anais do SBIE-2005, 2005.
Sintek, M.; Decker, S. TRIPLE - A Query, Inference, and Transformation Language for the Semantic Web. First International Semantic Web Conference. Londres - UK: Proceedings of ISWM '02. 2002. p. 364-378.
Vassoler, G. A.; Perin, W. de A.; Cury, D. MERGEMAPS – A Computational Tool for Merging of Concept Maps. In: Sixth International Conference On Concep Mapping, Santos – SP. Conference Proceedings, 2014.
Novak, J. D.; Cañas, A. J. The theory underlying concept maps and how to construct
and use them. IHMC, 1998. Disponivel em:
<http://cmap.ihmc.us/Publications/ResearchPapers/TheoryUnderlyingConceptMaps. pdf >. Acesso em: 21 de maio de 2015.
Zouaq, A.; Gasevic, D.; Hatala, M. Unresolved Issues in Ontology Learning. Canadian Semantic Web Symposium. Vancouver, Canada: Proceedings of CSWS. 2011. Position Paper.
52 52 52 52