Soluciones visuales Interactivas aplicadas a grandes vol\'umenes de datos de entornos 3D de aprendizaje y pr\'acticas

Share Embed


Descripción

Trabajo Fin de Máster Máster en Sistemas Inteligentes Julio, 2013

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

Juan Cruz Benito Dr. Roberto Therón Sánchez Emiliana Pizarro Lucas

Departamento de Informática y Automática Universidad de Salamanca

Información del Autor: Juan Cruz Benito Máster en Sistemas Inteligentes [email protected]

Información de los Tutores: Dr. Roberto Therón Sánchez Profesor Titular de Universidad Departamento de Informática y Automática Universidad de Salamanca [email protected] Emiliana Pizarro Lucas Directora del Servicio de Inserción Profesional, Prácticas y Empleo Universidad de Salamanca [email protected]

.

A ellas y ellos, raíces que nos mantienen con los pies en el suelo.

Trabajos Relacionados con este Trabajo Fin de Máster

Juan Cruz, Roberto Therón, Emiliana Pizarro y Francisco J. García-Peñalvo. Análisis de Datos en Mundos Virtuales Educativos. Actas del XV Simposio Internacional de Tecnologías de la Información y las Comunicaciones en la Educación (SINTICE13), 2013. En Prensa.

Juan Cruz, Roberto Therón, Emiliana Pizarro y Francisco J. García-Peñalvo. Knowledge Discovery in Virtual Worlds Usage Data: approaching Web Mining concepts to 3D Virtual Environments. In Proceedings, Fourth International Workshop on Knowledge Discovery, Knowledge Management and Decision Support (Eureka2013), 2013. En Prensa.

Resumen Este documento presenta el trabajo de investigación asociado a la realización de una propuesta de Visualización de Información apropiada para representar grandes cantidades de datos sobre movimientos de usuarios entre regiones de un Mundo Virtual de Aprendizaje y Prácticas y los patrones de exploración que en ellos se producen. Este trabajo de investigación abarca un proceso completo, que incluye la investigación acerca de los Mundos Virtuales, la extracción y comprensión de los datos presentes en los registros de estos entornos 3D, conocer cómo aprovechar estos datos para generar conocimiento, realizar un estudio acerca de qué tipos de visualizaciones y herramientas se pueden aplicar a los datos extraídos, hasta finalmente llegar a plantear una herramienta visual que permita analizar esos datos y extraer conocimiento de ellos.

Abstract This document presents the research work associated with the realization of a proposal for appropiate information visualization to represent large amounts of data on the movement, and patterns of exploration by users between regions of a Virtual World for Learning and Practices. This research paper covers a full process, including research on Virtual Worlds, the extraction and understanding of the data present in the records of these 3D environments, to know how to use these data to generate knowledge, and a study on what types of visualizations and tools can be applied to the extracted data, to finally reach to raise a visual tool that allows to analyze these data and extract knowledge of them.

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

i

Índice Índice de figuras

iv

1. Introducción 1.1. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2. Motivación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3. Organización del documento . . . . . . . . . . . . . . . . . . . . . . .

1 2 2 3

2. El contexto del problema: los Mundos Virtuales 5 2.1. Tipos de Mundos Virtuales . . . . . . . . . . . . . . . . . . . . . . . . 6 2.2. Fundamentación teórica de estas plataformas . . . . . . . . . . . . . . 9 2.3. Objetivos planteables para el análisis de datos en Mundos Virtuales . 11 2.3.1. Objetivos para Docentes y Profesionales . . . . . . . . . . . . 12 2.3.2. Objetivos para Administradores, Diseñadores y Desarrolladores 14 3. Datos e Información 17 3.1. Arquitectura Backend en un Mundo Virtual . . . . . . . . . . . . . . 18 3.2. Extracción de Datos de un Mundo Virtual . . . . . . . . . . . . . . . 20 3.3. Los Datos de Uso y el Conocimiento . . . . . . . . . . . . . . . . . . 22 4. Visualización de la Información 4.1. Principios de diseño . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.1. Los Principios Fundamentales del Diseño Analítico . . . . 4.1.2. El mantra de Visualización de la Información . . . . . . . 4.1.3. Las Ocho Reglas de Oro del diseño de interfaces . . . . . . 4.1.4. La importancia del color en la Visualización . . . . . . . . 4.2. Estudio de soluciones para la visualización datos . . . . . . . . . . 4.2.1. Visualizaciones de datos de n-dimensiones . . . . . . . . . 4.2.2. Visualizaciones de Datos Jerárquicos . . . . . . . . . . . . 4.2.3. Visualizaciones que incluyen variables temporales . . . . . 4.3. Estudio de visualizaciones de datos aplicadas a Mundos Virtuales 4.3.1. Visualizaciones de datos sobre el espacio virtual . . . . . . 4.3.2. Visualizaciones de datos sobre expresiones y usos de Chat

. . . . . . . . . . . .

. . . . . . . . . . . .

5. Caso de Estudio: HEBATT. Visualización de movimientos entre regiones en el Mundo Virtual de Aprendizaje y Prácticas USALSIM 5.1. Sobre el Mundo Virtual usado para la recuperación de datos: USALSIM 5.2. Aspectos Técnicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3. Extracción de Datos . . . . . . . . . . . . . . . . . . . . . . . . . . . ii

25 26 26 29 30 32 34 35 35 40 41 43 48

51 51 53 54

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

5.4. 5.5. 5.6.

5.7. 5.8.

5.3.1. Análisis de los datos proporcionados por el Mundo Virtual USALSIM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Generación de datos ficticios . . . . . . . . . . . . . . . . . . . . . . . Tratamiento de Datos . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.5.1. Minería de Datos aplicada a Información sobre Teleports . . . Fundamentos de la visualización HEBATT . . . . . . . . . . . . . . . 5.6.1. Tareas de Análisis que soporta la visualización HEBATT . . . 5.6.2. Tratamiento visual y lógico del volumen de datos a representar 5.6.3. La visualización HEBATT y la escala temporal . . . . . . . . 5.6.4. Representación de teleports de salida . . . . . . . . . . . . . . 5.6.5. Representación de teleports de entrada . . . . . . . . . . . . . 5.6.6. Visualización de los patrones de teleport . . . . . . . . . . . . 5.6.7. Visualización detallada de los teleport de un usuario . . . . . . Codificación de colores . . . . . . . . . . . . . . . . . . . . . . . . . . Mecanismos de Interacción en la Visualización HEBATT . . . . . . .

57 58 61 61 66 68 69 71 72 75 76 78 79 81

6. Conclusiones y líneas de trabajo futuro

84

Bibliografía

86

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

iii

Índice de figuras 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.

15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25.

iv

Posible grafo de interacción entre elementos 3D, generado mediante el uso de los elementos 3D de un laboratorio por parte de los usuarios Esquema de una arquitectura backend en servidores OpenSim configurados en topología grid [8] . . . . . . . . . . . . . . . . . . . . . . . Fuentes de Datos disponibles en un Mundo Virtual construido mediante el software OpenSim [39] . . . . . . . . . . . . . . . . . . . . . Proceso de Minería de Uso [36] . . . . . . . . . . . . . . . . . . . . . La Visualización de Información ayuda a adquirir conocimiento a través de la percepción visual de datos . . . . . . . . . . . . . . . . . . . Esquema del proceso asociado a la Excelencia Gráfica, Edward Tufte. Gráfico de datos que fomenta una visión sesgada y no cierta [96] . . . Zoom de Ojo de Pez mediante distorsión circular. Mike Bostock [31] . La importancia del color [101] . . . . . . . . . . . . . . . . . . . . . . Vista de la herramienta ColorBrewer [32] . . . . . . . . . . . . . . . . Visualización de Coordenadas Paralelas aplicada para datos de ndimensiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Representaciones visuales comunes de árboles. De izquierda a derecha: rooted tree, árbol radial, balloon tree, y treemap layout [57] . . . . . . Ejemplo del cálculo de un treemap respecto de un árbol [86] . . . . . Comportamiento del agrupamiento de arcos en función del factor β de los tensores de los puntos de control que manejan la posición y forma de los arcos [57] . . . . . . . . . . . . . . . . . . . . . . . . . . Mapa figurativo de las pérdidas humanas del ejército francés durante la campaña rusa de 1812-1813. Charles Joseph Minard. . . . . . . . . Mapa del espacio virtual usado [28] . . . . . . . . . . . . . . . . . . . Visualización espacio-temporal del movimiento de tres grupos de usuarios en un entorno virtual[28] . . . . . . . . . . . . . . . . . . . . . . Visualización espacio-temporal de los recorridos de usuarios o grupos de usuarios en un Mundo Virtual[29] . . . . . . . . . . . . . . . . . . Gráficas temporales de eventos en un Mundo Virtual[29] . . . . . . . Visualización de zonas visitadas/no visitadas en un entorno virtual [42] Palabras únicas y duplicadas en el chat por cada usuario[27] . . . . . Número, longitud y tipo de las expresiones o palabras únicas en el chat [27] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Vista aérea de una isla del Mundo Virtual USALSIM . . . . . . . . . Diagrama de clases que expresa las relaciones en los datos correspondientes a Regiones Virtuales, Grupos de usuarios, Usuarios y Teleports Vista de la aplicación Weka al abrir un archivo arff con información de Teleports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13 19 21 23 25 28 29 30 33 34 36 37 38

39 42 43 44 45 46 47 48 49 52 55 62

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43.

Vista de la aplicación Weka después de eliminar los atributos CLASE y fecha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resultado de la aplicación del algoritmo Predictive Apriori sobre los atributos nombreUsuario, origenTeleport y destinoTeleport . . . . . . Vista de la aplicación Weka con los atributos relevantes en el caso de descubrimiento de patrones entre regiones seleccionados . . . . . . . . Vista del resultado de la aplicación del algoritmo Predictive Apriori sobre los atributos origenTeleport y destinoTeleport . . . . . . . . . . Vista general de la interfaz de la visualización HEBATT . . . . . . . Vista en detalle de la organización de la jerarquía de arcos y datos en la visualización HEBATT . . . . . . . . . . . . . . . . . . . . . . . . Transparencia aplicada en la agrupación de líneas de la visualización HEBATT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Visualización del uso del selector de rangos temporales de teleports . Visualización de los teleport de salida relacionados con una isla o región del Mundo Virtual . . . . . . . . . . . . . . . . . . . . . . . . . Visualización de los teleport de salida relacionados con una grupo concreto del Mundo Virtual . . . . . . . . . . . . . . . . . . . . . . . Visualización de los teleport de salida de las regiones a las que pertenece un usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Visualización de los teleports de entrada a una región . . . . . . . . . Visualización de los patrones de movimiento en el caso de los usuarios del Mundo Virtual . . . . . . . . . . . . . . . . . . . . . . . . . . . . Visualización de los patrones de movimiento entre regiones del Mundo Virtual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Visualización detallada de todos los teleports realizados por un usuario del Mundo Virtual . . . . . . . . . . . . . . . . . . . . . . . . . . Vista detalle sobre la codificación del color en la información textual de cada tipo de elemento de la jerarquía de datos . . . . . . . . . . . Paleta de colores empleados en la implementación de la visualización Vista del cambio en la transparencia de las líneas que representan los teleports en función del uso del selector de opacidad . . . . . . . . . .

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

63 64 65 66 67 67 70 72 73 74 75 76 76 77 78 79 80 83

v

.

Cruz Benito, Juan

1.

Introducción

Las tecnologías interactivas online o disponibles a través de redes como Internet ofrecen la posibilidad de llegar a multitud de personas, sin importar la edad, cultura o nivel social. Una de esas tecnologías, es la conocida como Mundos Virtuales, o Entornos Virtuales Multi-Usuario (EVMU o MUVEs) [83]. En un Mundo Virtual, el usuario crea un alter ego virtual o avatar que le representa en este entorno simulado. A través de estos avatar, al usuario se le proporcionan una serie de posibilidades de comunicación, colaboración, e interacción casi de cualquier tipo, tanto con el entorno virtual 3D como con el resto de usuarios que tienen presencia en dichas plataformas [25]. Además, ofrecen un entorno inmersivo, donde los usuarios experimentan una sensación de estar dentro de las situaciones y los eventos que ocurren, de un modo totalmente distinto a cómo se perciben en otras plataformas como la Web, u otros servicios informáticos en la Red. Algunos de los usos que se pueden dar en estos Mundos Virtuales son: el aprendizaje o eLearning [100], la diversión u otros usos lúdicos [103], el comercio electrónico y venta de productos [35] o simplemente relacionarse con otras personas [93], etc. Dentro del uso concreto de aprendizaje y las prácticas, los Mundos Virtuales se han empleado ampliamente en contextos de carácter científico, ya que consiguen reproducir virtualmente escenarios casi idénticos a los reales y permiten definir multitud de actividades relacionadas con la experimentación, manejo de materiales, observación de procesos de distinta índole, etc., en un ambiente libre de riesgo, con unos costes casi nulos en las etapas de experimentación, y una tolerancia al fallo enorme. Es precisamente esa tolerancia al fallo, la experimentación libre de riesgos, lo que los hace tan atractivos para tareas de enseñanza. En esto también influye la libertad que pueden experimentar los usuarios dentro del entorno virtual, ya que pueden moverse de distintas formas (caminando, corriendo, volando, teletransportándose, etc.) en espacios que se presentan generalmente con una gran extensión de terreno, de modo que para muchos usuarios, estas posibilidades de exploración [48] son un aliciente en el uso del entorno virtual, no se les encierra en un espacio controlado (al menos no se tiene esa sensación), sino que la propia sensación de libertad les hace tener un interés mayor por todo lo que ocurre en el Mundo Virtual. Está demostrado además, que si este interés se consigue dirigir y aprovechar en las distintas actividades de aprendizaje y prácticas planteadas, los resultados que se consiguen son mucho mayores que en otro tipo de recursos online de aprendizaje. Relacionado con este aprendizaje por exploración, se encuentra el tema relacionado a este trabajo de investigación, y es que un factor interesante de análisis sobre la actividad, aprovechamiento y motivación de los usuarios dentro del Mundo Virtual tiene reflejo en la cantidad de movimientos que realicen. Un usuario hastiado, cansado y poco motivado tiende a no moverse más allá de un radio de acción limitado, sin embargo, los usuarios motivados, que encuentran en este espacio 3D una Trabajo Fin de Máster, Máster en Sistemas Inteligentes

1

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas suerte de unión entre actividades de aprendizaje y una libertad de exploración y experimentación, tienden a querer recorrer cada rincón del Mundo Virtual. Además de una muestra del interés del usuario, el análisis de movimientos entre los distintos terrenos que componen el Mundo Virtual arroja datos interesantes para los administradores, desarrolladores y responsables técnicos del Mundo Virtual, y es que a través de ellos se pueden conocer parámetros de uso, periodos en los que la carga de usuarios es mayor en una determinada región, o incluso como medio para detectar errores en la implementación o uso del entorno 3D.

1.1.

Objetivos

Los Mundos Virtuales de Aprendizaje y Prácticas constituyen un método distinto de aprendizaje online, permiten un tipo de formación más orientada hacia un contexto práctico, de modo que a través de experiencias inmersivas, los usuarios puedan aprender nuevos conocimientos y desarrollar una serie de competencias profesionales, como se comentará más detalladamente en la sección 2.2. El objetivo principal de este trabajo de investigación es el estudio, comprensión y aprovechamiento de los datos sobre los movimientos de usuarios entre distintas regiones de un Mundo Virtual de Aprendizaje y Prácticas, para poder definir una serie de visualizaciones y sistemas interactivos que permitan a los posibles stakeholders implicados en el análisis de datos (típicamente organizados en grupos de Docentes y Profesionales y Administradores, Diseñadores y Desarrolladores), descubrir conocimiento oculto en los grandes volúmenes de datos que se generan en el registro de la información de este tipo (movimientos de usuarios entre distintos territorios virtuales), y que esta visualización pueda servir como Sistema de Soporte de Decisiones [85] sobre la actividad que realizan los usuarios dentro de un sistema de este tipo. Además, se pretende dar un nuevo punto de vista sobre las posibilidades de visualización de datos extraídos de un Mundo Virtual, proponiendo un sistema bien construido, con un diseño atractivo, y que resulte útil y sencillo para el usuario, que abandone la línea típica de investigación de las visualizaciones de movimientos dentro de un Mundo Virtual (apartado 4.3.1).

1.2.

Motivación

En los Mundos Virtuales, especialmente en los comúnmente usados para docencia y educación como pueden ser los actualmente basados en SecondLife [12] u OpenSim [7] [24], existen una serie de problemas asociados a la información y el feedback que se puede extraer de ellos. En este tipo de entornos masivos y multi-usuario, hablando en términos de uso educativo, mientras un docente, profesional o responsable de una actividad está 2

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

conectado al entorno virtual, observando el desarrollo de tareas por parte de los alumnos o público al que se dirigen las actividades, es posible que perciba el aprovechamiento exacto de la plataforma, los recursos, y el uso que se hace en general del entorno virtual, evaluando, si es el caso, lo observado. En cambio, cuando una persona de ese perfil de docente no está presente, la evaluación de las actividades realizadas se vuelve mucho más complejas, obligando al docente a obtener la información por otros medios, entre los que destacan los test realizados dentro del entorno virtual, las evaluaciones mediante controles antes y después del uso del mundo virtual, etc., de modo que se conozca el aprovechamiento que se ha hecho de las actividades [98]. Es cierto que existen más opciones de evaluación además de la presencia virtual de los responsables[102], como pueden ser las basadas en el análisis del uso que hacen los usuarios de una plataforma educativa de este estilo, pero este tipo de herramientas de análisis no están lo suficientemente extendidas ni desarrolladas. En un mundo virtual educativo, los alumnos tienen ciertas tareas asignadas, deben moverse, interaccionar con el entorno virtual, realizar acciones sobre determinados objetos, comunicarse con otras personas allí presentes, etc. El registro de información asociada a este tipo de acciones, puede ayudar al docente o analista a evaluar las actividades, incluso sin orientar únicamente el proceso de evaluación en el sentido de la adquisición de conocimiento, sino conociendo otras variables y tipos de información que pueden ayudar a comprender el uso que hacen los alumnos del sistema y el aprovechamiento de las herramientas [40], a modo de feedback hacia las personas que plantean las experiencias inmersivas [80]. Por ello se plantea este trabajo (como se ha comentado en la sección de Objetivos), para aportar nuevas soluciones visuales que sirvan para evaluar la actividad de los usuarios en el contexto de un Mundo Virtual de Prácticas y Aprendizaje y poder servir como Sistema de Soporte de Decisiones.

1.3.

Organización del documento

Este trabajo de investigación se divide en seis apartados principales: 1. Introducción: En este primer punto del documento se da una pequeña introducción al problema de investigación que se plantea, y una serie de objetivos y motivación planteados para realizar este trabajo. 2. El contexto del problema: Los Mundos Virtuales: Esta sección contiene una descripción extensa sobre los Mundos Virtuales de Aprendizaje y Prácticas, de modo que se repasan las principales plataformas de desarrollo, los objetivos que se persiguen en ellos y qué posibles objetivos de análisis se pueden plantear. 3. Datos e Información: En esta sección se habla acerca de la importancia de Trabajo Fin de Máster, Máster en Sistemas Inteligentes

3

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

los datos, y qué metodologías se pueden adoptar para extraer conocimiento de ellos, además se muestra la arquitectura interna de un sistema de este tipo, y cómo se podría plantear un proceso de extracción de información de un Mundo Virtual. 4. Visualización de la Información: En este apartado se presenta un estudio acerca de los principios de la Visualización de la Información, y de distintas posibilidades de representación visual de datos existentes, tanto para el problema concreto de los Mundos Virtuales como para otros tipos de datos. 5. Caso de estudio: HEBATT. Visualización de movimientos entre regiones en el Mundo Virtual de Aprendizaje y Prácticas USALSIM : En esta sección se detalla el proceso seguido para el análisis de información, diseño e implementación de una herramienta que permite analizar todos los movimientos de teletransporte o teleports dentro de un Mundo Virtual. 6. Conclusiones y trabajo futuro: Por último, esta sección presenta una evaluación sobre los resultados conseguidos en este trabajo de investigación, y qué aspectos podrían mejorarse o qué líneas se pueden plantear para ampliar la investigación en un futuro.

4

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

2.

El contexto del problema: los Mundos Virtuales

Tal y como se ha señalado en la sección de Introducción, de entre las distintas posibilidades de uso que ofrecen los Mundos Virtuales, este documento y la investigación que se presenta con él, se ocupará de los Mundos Virtuales empleados para educación (eLearning) o prácticas profesionales. Como se ha comentado previamente, dentro de estos Mundos Virtuales, el usuario es capaz de interactuar, comunicarse, colaborar o interaccionar con el entorno u otros usuarios de múltiples modos, de modo que se pueden representar fielmente flujos de trabajo, interacción y comunicación presentes en el mundo real. Por ello, se dice que en estos entornos se ofrece a los usuarios una experiencia inmersiva, ya que pueden experimentar la sensación de vivir en primera persona de una forma realista las situaciones y eventos que ocurren en el mundo 3D, consiguiendo unas experiencias radicalmente distintas a lo que se percibe en otras plataformas como las Web u otros servicios de la Red. Estas capacidades de representación de la vida real dentro una realidad virtual, hacen que estos Mundos Virtuales se postulen como un entorno óptimo para llevar a cabo tareas destinadas al aprendizaje. En la última década, se ha escrito bastante en cuanto a ello, especialmente relacionando las ventajas de los entornos virtuales multi-usuario con el concepto de aprendizaje experimental [62]. Según esta teoría, el aprendiz consigue una experiencia y conocimiento más profundo a través de un ciclo de aprendizaje que consiste en cuatro etapas: Experiencia Concreta, Observación Reflexiva, Conceptualización Abstracta y Experimentación Activa. Dentro del aprendizaje que se da en los entornos virtuales multi-usuario (como los Mundos Virtuales), se incluyen más actores o stakeholders además del alumno, entre otros roles se pueden encontrar docentes, profesionales de distintas materias que colaboran en el planteamiento de contenidos o eventos en el Mundo Virtual, administradores de sistemas, investigadores relacionados con estos entornos, etc. Para todos estos actores que intervienen en estos procesos es importante conocer qué ocurre dentro de estos entornos virtuales 3D y poder extraer conclusiones sobre ellos, de cara a la mejora o evaluación de los eventos, prácticas o sistemas planteados para el aprendizaje. Por ello es interesante poder definir y realizar mediciones asociadas a los eventos y situaciones que se producen dentro del Mundo Virtual y conocer el uso que se realiza de él. En los siguientes apartados se va a realizar una introducción acerca de diversos conceptos y temas que son necesarios para comprender los entornos interactivos conocidos como Mundos Virtuales, comentando los tipos de Mundos Virtuales más usados en la actualidad (2.1), qué fundamentación teórica tienen asociada como herramienta de docencia y prácticas (2.2), una serie de objetivos de análisis y adquisición de conocimiento que plantean los responsables de este tipo de entornos 3D (2.3). Trabajo Fin de Máster, Máster en Sistemas Inteligentes

5

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

2.1.

Tipos de Mundos Virtuales

En el desarrollo de Mundos Virtuales 3D existen múltiples opciones: desde las basadas en plataformas software 3D libres y multipropósito, a plataformas cerradas y comerciales para usos de tipo social, hasta soluciones a medida construidas ad hoc para ciertos problemas planteados. A continuación se hará una introducción breve sobre las tres plataformas o sistemas protagonistas actualmente en los desarrollos de entornos 3D multiusuario y multi-plataforma como los Mundos Virtuales: Second Life (SL): es un metaverso lanzado al mercado el 23 de junio de 2003, desarrollado por la compañía Linden Lab, al que se puede acceder gratuitamente. Sus usuarios, conocidos como residentes, pueden acceder a SL mediante el uso de uno de los múltiples programas de interfaz llamados viewers (visores), los cuales les permiten interactuar entre ellos mediante un avatar. Los residentes pueden así explorar el mundo virtual, interactuar con otros residentes, establecer relaciones sociales, participar en diversas actividades tanto individuales como en grupo y crear y comerciar propiedades virtuales y servicios entre ellos. SL está reservado para mayores de 18 años. Para acceder al programa es requisito imprescindible crear una cuenta. Los avatares son caracteres tridimensionales personalizables lo que le da a los usuarios la capacidad de convertirse el personaje que deseen y disfrutar (como el mismo nombre del programa indica) de una segunda vida [12]. Su segundo atractivo más importante es la posibilidad de crear objetos e intercambiar diversidad de productos virtuales a través de un mercado abierto que tiene como moneda local el Linden Dólar (L$). En el mismo programa se incluye una herramienta de creación en 3D basada en simples figuras geométricas (conocidos como prims o primitivas) y que permite a los residentes la construcción de objetos virtuales. Estos elementos pueden usarse en combinación con el lenguaje de programación LSL (Linden Script Language) a fin de añadir funcionalidad a los objetos. Objetos más complejos, como sculpties (objetos de tipo vectorial construidos en esta plataforma) o complejos prims (objeto o modelo 3D en el argot de este Mundo Virtual), texturas para ropas u objetos, animaciones o gestos pueden ser creados externamente e importados a SL. Los Términos de Servicio de SL (conocidos por su abreviatura inglesa: TOS) aseguraban, hasta unos recientes cambios, la retención de los derechos de autor por parte de los creadores de los objetos, mientras que Linden Labs proveía simples funciones de gestión de derechos sobre creaciones virtuales en sus servidores y su acceso. Los recientes cambios producidos en el TOS han eliminado gran parte de los derechos de los creadores, al establecerse Linden Labs como propietario de todo el software presente en sus servidores, eliminando el derecho de los creadores, al ser un entorno cerrado [13]. Esto es una de los principales inconvenientes que se plantean en el uso de esta plataforma, ya que en toda creación que realicen los usuarios, la empresa dueña (Linden Lab) 6

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

podría reclamar los derechos, tanto de propiedad como explotación, pudiendo expropiar a los dueños originales sus creaciones virtuales. OpenSimulator: se trata plataforma software que se emplea para la creación de mundos virtuales 3D multiusuario y multiplataforma. Es de código abierto, y está soportado por una amplia comunidad de usuarios. Funciona y se organiza de forma similar a Second Life, dando incluso soporte a protocolos propios de SL como el protocolo de comunicación de Second Life. Además, los visores o viewers (programas software cliente destinados al uso de estos entornos virtuales) que se usan para el acceso a Second Life, son generalmente compatibles con este otro metaverso [7]. Además de estas características, en OpenSim destacan varias aspectos clave: Alojamiento y mantenimiento de la plataforma: OpenSim es un entorno multiplataforma, tanto desde el punto de vista del cliente, como desde el punto de vista del servidor. El cliente depende del software visor que elija, entre los que hay gran variedad de sabores. En cuanto al software de servidor, OpenSim está programado en C# y C++ y compilado con .Net, por lo tanto de forma nativa es recomendable su ejecución en servidores con Sistemas Operativos Windows. ¿Por qué se dice entonces que es un software de servidor multiplataforma? Esto es porque OpenSim está optimizado para su ejecución en plataformas UNIX mediante el software de desarrollo multiplataforma en .NET, Mono [4]; este software permite la ejecución de OpenSim mediante una máquina virtual en servidores Linux, MacOs, etc. Propiedad de las bases de datos y datos de usuarios: En Second Life, tanto las bases de datos, como los propios datos de los usuarios, se encuentran bajo el dominio de la empresa propietaria, con lo cual siempre los usuarios se encuentran expuestos a cualquier eventualidad sin tener el control sobre los datos y objetos 3D y sin poder asegurar la privacidad de los mismos. En OpenSim, los datos no pertenecen a ninguna corporación, cada usuario puede alojar su propio entorno virtual en su ordenador. Sin embargo, lo normal es que los usuarios utilicen Mundos Virtuales que agrupen gran variedad de usuarios, por lo que los datos dependerán de la entidad que se encargue del sistema. Propiedad de la creaciones: En Second Life, cualquier objeto que se crea, no es propiedad exclusiva del autor, sino que la empresa Linden Lab, dueña de la plataforma, puede quedarse con cualquier objeto o creación. Esto implica que en cualquier momento, el proyecto puede dejar de pertenecer a los desarrolladores, con las implicaciones que ello tiene. En OpenSim sucede de forma opuesta, al tratarse de una plataforma libre, y generalmente alojada en servidores propios de usuarios individuales o agrupaciones de usuarios, la plataforma no impone ningún tipo de restricción en cuanto a la autoría o construcción de objetos virtuales, de hecho hay diversas páginas web y usuarios que ofrecen bajo licencias Creative Commons sus creaciones para que puedan ser reutilizadas por cualquier usuario que lo desee. Trabajo Fin de Máster, Máster en Sistemas Inteligentes

7

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

Coste económico: Para poder tener en Second Life distintos espacios destinados a la creación de las prácticas, es necesario ser usuario premium, y además, abonar distintas cantidades de dinero en función de la cantidad de terreno de que se disponga. En el caso de Unity, también es necesario comprar una serie de paquetes software, aunque en este caso sólo se abonan al inicio del proyecto. Sin embargo, OpenSim es una plataforma libre y gratuita, por lo tanto no es necesario pagar, además de tener la opción de poder modificar la plataforma en función de las necesidades, o contribuir en el desarrollo, lo cual es una gran ventaja para grandes proyectos. Mundos virtuales creados a partir de motores concretos de videojuegos: Por ejemplo, mediante Unity. Unity es un motor de videojuegos multiplataforma creado por Unity Technologies, el cual soporta integración con herramientas de diseño 3D como 3ds Max, Maya, Softimage, Blender, etc. Este motor gráfico usa distintas plataformas de renderización y creación de efectos en función del sistema operativo en que se ejecute, permitiendo la creación de contenido 3D que pueda ser ejecutado de forma nativa en cualquier plataforma de las soportadas [16]. Este software, en su versión básica es gratuito, pero si se quiere la versión pro, o plugins para la creación y adecuación de contenido a distintas plataformas y sistemas operativos, se deben abonar cantidades entre 400$ y 1500$ por cada uno. Este motor de juegos está siendo en los últimos años usado para la construcción de Mundos Virtuales de Aprendizaje [99] [95] desarrollados a medida, debido a las posibilidades de creación, construcción y personalización de los entornos virtuales que ofrece, y por la no dependencia de ciertas plataformas como las citadas, que puedan cambiar sus condiciones de uso, o impedir el desarrollo de ciertas herramientas in-world. Como puntos en común entre estas plataformas, se pueden citar un par de aspectos: Organizan el territorio mediante islas, regiones o continentes: En los Mundos Virtuales los espacios 3D suelen organizarse en porciones de terreno más o menos grandes, y se establece como norma general las descripciones de espacios bajo las etiquetas islas, regiones (islas de gran tamaño, similares a las penínsulas o países de tamaño mediano en la realidad) o continentes (grandes extensiones de territorio virtual, que corresponden en tamaño con multitud de islas o varias regiones). Es posible teletransportarse entre territorios: En la mayoría de Mundos Virtuales, existen más opciones de desplazamiento además de caminar, correr o volar. La opción más común de desplazamiento entre territorios en estos entornos se conoce como teleport o teletransporte, el cual consiste en que el usuario selecciona el destino de origen mediante algún cuadro de diálogo y aparece inmediatamente en el destino seleccionado Además de estas características, cada Mundo Virtual de los presentados incluye otras muchas, para la comprensión y conocimiento de todas ellas se recomienda 8

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

acceder a las correspondientes páginas web y artículos citados como bibliografía en esta sección.

2.2.

Fundamentación teórica de estas plataformas

Como se comentaba en la Introducción a esta sección, que trata sobre los Mundos Virtuales 2, una de las bases teóricas por las cuales estos entornos cuando se emplean en un contexto de aprendizaje y prácticas es el concepto de Kolb del aprendizaje experimental [62] y sus cuatro fases de experiencia concreta, observación reflexiva, conceptualización abstracta y experimentación activa. Los Mundos Virtuales ofrecen un entorno inmejorable en cuanto a la experimentación en distintos ámbitos, ya que se trata de un ambiente libre de riesgos, con unos costes tolerables y con una inmersión en los problemas sustancial. Por ello, y a pesar de seguir tratándose de experiencias virtuales, muchos estudios promulgan las ventajas de estos sistemas en cualquiera de sus implementaciones [66] [40] [98]. En los Mundos Virtuales de Aprendizaje y Prácticas modernos, los objetivos principales se han ampliado, antes sólo se buscaba el aprendizaje a través de teoría y práctica en el Mundo Virtual, sin embargo, actualmente se buscan cada vez más planteamientos cercanos a un entorno profesional, donde el estudiante o alumno que participa en la experiencia virtual puede adquirir una serie de competencias, no teóricas sino profesionales. Estas competencias profesionales son una parte fundamental en la educación actual, por ejemplo el Espacio Europeo de Educación Superior fomenta la formación práctica, tanto en las asignaturas de los Grados, como a través de prácticas externas en empresas [66]. A continuación se hace un análisis detallado de los objetivos docentes y profesionales que se establecen en estos Mundos Virtuales de Aprendizaje y Prácticas modernos, tanto desde el punto de vista de los conceptos teóricos típicos, como desde el punto de vista de las competencias profesionales, y indicando cuáles de estas se suelen desarrollar en estos espacios 3D: Conocimiento y aplicación de conceptos teóricos: A través de las actividades planteadas y los espacios tridimensionales que se encuentran dentro del Mundo Virtual, se persigue que los estudiantes experimenten situaciones que les lleven a profundizar o fijar conceptos teóricos que se presentan de forma tradicional en las clases o asignaturas; consiguiendo de esta forma una mayor implicación del estudiante, facilitando el aprendizaje y el interés de los alumnos [40]. Adquisición y desarrollo de competencias profesionales: La adquisición de competencias profesionales se podría definir como “Un entrenamiento real para resolver ciertos problemas” [84], por ello se les da tanta importancia actualmente, debido a las necesidades de empleabilidad de los estudiantes universitarios en el contexto social actual [75] [76]. No todas las competencias Trabajo Fin de Máster, Máster en Sistemas Inteligentes

9

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

profesionales pueden ser adquiridas en un contexto virtual, pero a continuación se presentan algunas de ellas que sí son factibles dentro de un Mundo Virtual: Conciencia de uno mismo La confianza en uno mismo alude a la percepción de ser eficaz (autoeficacia) para desempeñar una tarea, asumir responsabilidades o afrontar los retos vitales en diferentes áreas (trabajo, familia, salud, etc.). Esta autoeficacia influye sobre el pensamiento y las conductas, los objetivos y las aspiraciones de la persona [75] [55]. Análisis, Síntesis y Crítica: El análisis es el método de razonamiento que permite descomponer situaciones complejas en sus partes, mientras que la síntesis es la composición de un todo por la reunión de sus partes. Por ello, ambas capacidades permiten construir nuevo conocimiento a partir del que se poseía, simplificar los problemas a los que se enfrentan las personas o descubrir las relaciones y propiedades aparentemente ocultas entre ellos [75] [34]. Organización y planificación: Es la capacidad de definir prioridades en la realización de tareas, estableciendo planes de acción mediante la utilización óptima del tiempo, medios y recursos [75] [41]. Habilidades de Comunicación: La comunicación es una herramienta estratégica dentro de la vida diaria y profesional del individuo, está presente en las relaciones entre personas, departamentos (comunicación interna) y con posibles clientes, proveedores, etc. (comunicación externa) [70]. La comunicación puede ser escrita, verbal y no verbal. Tiene una fuerte relación con otras competencias como la comunicación eficaz, el trabajo en equipo, la innovación y creatividad y el liderazgo [75]. Responsabilidad y Perseverancia: La responsabilidad hace referencia a la capacidad de reconocer y aceptar las consecuencias de nuestros actos [59], mientras que la perseverancia es la constancia, firmeza o tesón en la realización de una acción. Esta competencia de responsabilidad y perseverancia también influye en la elección el modo de llevar a cabo la tarea encomendada [75] [49]. Toma de Decisiones (trabajo de forma autónoma): Es la capacidad para identificar y analizar los problemas para emprender acciones que aprovechen las oportunidades, o faciliten la resolución de problemas [23]. Además, la toma de decisiones tiene una fuerte carga de raciocinio, todas las personas toman decisiones en cualquier ámbito de su vida, pero especialmente en el mundo profesional, es importante tener una buena capacidad de decisión y saber reconocer la transcendencia de cada una que se tome [75]. Trabajo en Equipo y Colaboración: Trabajar en equipo no solamente significa trabajar todos juntos. Un equipo de trabajo es un conjunto de individuos que cooperan para lograr un objetivo común. El trabajo en equipo es considerado como una de las claves de éxito en toda organización [75] [21] [69]. Capacidad de Aprendizaje y Colaboración: Es la competencia transversal relacionada con la capacidad de aprendizaje continuo a lo largo de la vida, y los aspectos actitudinales o de personalidad en un sentido amplio. Es fundamental en los nuevos graduados europeos [75] [47] [78]. 10

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

Flexibilidad y Orientación al Cambio: Es la capacidad para entender y apreciar perspectivas diferentes de una situación, para adaptarse y para trabajar con eficacia. La flexibilidad muy es importante y valorada, ya que permite a las empresas adaptarse al entorno competitivo en el que se encuentren. [75] [23] Motivación por el Logro: La motivación por el logro es un impulso por vencer desafíos, avanzar y crecer personal, social y profesionalmente. Es un concepto multidimensional de competencias propias y estándares de excelencia, por ello genera un deseo de establecer y realizar objetivos propios. Debe basarse en una continua evaluación de la situación personal frente a la situación laboral actual, e ir desarrollando los aspectos que deben ayudarnos a conseguir nuestras metas. [75] Resolución de Conflictos y Técnicas de Negociación: Esta competencia tiene dos vertientes muy relacionadas, los conflictos y la negociación. Por una parte, el conflicto es algo habitual en nuestra vida, por ello hay que aceptarlo y gestionarlo de la forma más eficaz. Por la otra, la negociación es la herramienta que nos permite resolver estos conflictos [75] [44].

2.3.

Objetivos planteables para el análisis de datos en Mundos Virtuales

Además de los objetivos específicos de este Trabajo Fin de Máster, planteados en la primera sección de este documento 1.1, es interesante conocer qué necesidades pueden tener los usuarios que necesitan analizar los datos de un Mundo Virtual, ya que a través de esta especificación de objetivos de análisis y posibles requisitos se puede tener una mejor visión general sobre el sentido de analizar datos provenientes de un entorno como los Mundos Virtuales. Como se detalla en los trabajos relacionados con este Trabajo de Fin de Máster [38] y [39], es posible distinguir distintos tipos de objetivos, que se pueden englobar en varios enfoques referentes a la recuperación, análisis y comprensión de la información extraída de los Mundos Virtuales: 1. Objetivos orientados al análisis del uso de los recursos y Objetos de Aprendizaje disponibles: conocer cómo usan los usuarios los distintos recursos educativos y destinados en las prácticas de cualquier tipo, así como los Objetos de Aprendizaje (OAs) que están establecidos en los procesos de adquisición de competencias [72] [71] dentro del Mundo Virtual. Entre estos recursos disponibles que se pueden incluir en el análisis, se puede hablar de la inclusión desde los elementos informativos que se proporcionan a los usuarios, a los recursos colaborativos que se ofrecen entre usuarios [43], incluyendo canales de comunicación entre ellos, etc. 2. Objetivos orientados a la comprensión del uso global de la plataforma: en este grupo de objetivos que ahondan en las cuestiones más puramente Trabajo Fin de Máster, Máster en Sistemas Inteligentes

11

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

de análisis de uso, se pueden englobar métricas como tiempo de uso por usuario, tiempo medio de uso global, fechas de uso de la plataforma, características de exploración del entorno [48], horarios de conexión, zonas geográficas virtuales más visitadas, flujos de movimiento por parte de los usuarios entre territorios del mundo virtual, etc. En general irán destinados a trazar una serie de perfiles de usuarios en función del uso del Mundo Virtual, que ayuden a conocer o prever posibles patrones de uso del sistema. 3. Objetivos orientados al análisis de la interacción con el entorno: en este conjunto de objetivos se plantea la necesidad de conocer cómo interactúa el usuario con el entorno virtual, sobre qué objetos intenta actuar, qué resultados obtiene, que secuencias de interacción aparecen. Este tipo de objetivos pueden ayudar a trazar grafos de interacción (figura 1) que especifiquen la sucesión de acciones que realizan los usuarios en el uso de objetos y recursos virtuales en las actividades concretas, grado de uso de elementos informativos, visibilidad de elementos de interacción [52], etc. y de este modo conocer qué hacen los usuarios, qué no hacen y podrían hacer, y qué decisiones toman los usuarios de la plataforma cuando se dan en cualquiera de los dos casos. 4. Objetivos orientados al análisis de la usabilidad de la plataforma: en relación con los objetivos orientados al análisis de la interacción con el entorno, se puede establecer como objetivo de análisis los errores, fallos y usos incorrectos de la plataforma virtual. De este modo, si es posible determinar patrones de uso o comportamiento que llevan a situaciones inesperadas, poco claras para el usuario o de fallo, los responsables de la plataforma pueden tener información suficiente para corregir esos errores de usabilidad [97] [46]. Dentro estas categorías de objetivos para el análisis, se puede hacer una especificación exhaustiva, para ello se han establecido dos listados diferentes, en función de los dos grupos de usuarios tipo que pueden necesitar realizar labores de análisis de información: por un lado los docentes y profesionales y por el otro los administradores, diseñadores y desarrolladores del Mundo Virtual. En cada uno de ellos se especifican qué objetivos requieren atendiendo a las necesidades inherentes a sus roles y en función de los grupos de objetivos que les son de utilidad. 2.3.1.

Objetivos para Docentes y Profesionales

Como se ha explicado previamente, los Mundos Virtuales de Aprendizaje y Prácticas usados en la actualidad se fundamentan en sistemas de aprendizaje y prácticas basado en la adquisición de conocimiento y competencias profesionales, por ello, en el caso de los roles de Docentes y Profesionales, los objetivos van orientados en la línea del descubrimiento de conocimiento en torno a las competencias profesionales, los patrones de comportamiento relevantes de los usuarios y los datos relevantes para una posible evaluación de la actividad de los estudiantes dentro del Mundo Virtual. Este descubrimiento de conocimiento puede suponer la base para la toma de decisiones de estos stakeholders en temas de planificación de tareas, evaluación, planteamiento de actividades o construcción de los Objetos de Aprendizaje. Por ello, los 12

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

Figura 1: Posible grafo de interacción entre elementos 3D, generado mediante el uso de los elementos 3D de un laboratorio por parte de los usuarios objetivos concretos que se plantean dentro de la visualización de datos del Mundo Virtual para los roles de Docente y Profesional, deben estar orientados en la línea de los objetivos generales de análisis del uso de los recursos y Objetos de Aprendizaje 1, que son los que presentan una mayor adecuación a las posibles tareas de análisis sobre los usuarios estudiantes. También se suelen asignar algunos objetivos concretos que se pueden englobar en los grupos de comprensión del uso global de la plataforma 2 y análisis de la interacción con el entorno 3, para que puedan adquirir cierta visión global sobre los eventos y sucesos que tienen lugar dentro de la plataforma 3D. Tiempo medio usuario concreto: Permite conocer el tiempo medio que invierte cada usuario en el Mundo Virtual en cada sesión. Tiempo total de conexión de un usuario específico: Proporciona al docente una medida del tiempo que ha empleado el estudiante en la plataforma virtual, pero sin especificar en qué ha empleado el tiempo. Fecha y duración de sesiones específicas de uso de la plataforma 3D: Informa al docente o profesional del tiempo que emplea el usuario en las distintas conexiones y estancias en el Mundo Virtual, pudiendo conocer detalles en relación al tiempo o fechas de conexión. Patrones horarios de los usuarios concretos: Proporciona información acerca de los patrones horarios de los distintos avatares, de modo que se pueda conocer a qué horas se suelen conectar. Trabajo Fin de Máster, Máster en Sistemas Inteligentes

13

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

Patrones de fechas de uso: Permite a los docentes y profesionales conocer los patrones de fechas de uso de los estudiantes, de modo que por ejemplo, puedan conocer si un alumno suele realizar sus tareas a lo largo del tiempo, o las concentra en las fechas previas al fin del plazo, etc. También, a través de estos dos últimos objetivos comentados, un docente o profesional podría conocer si un usuario realizar sus tareas de forma autónoma o suele coincidir con otros compañeros en las sesiones de uso o realización de las tareas de aprendizaje o prácticas. Patrones de exploración de usuarios concretos: En caso de que los estudiantes deban realizar las tareas en distintas localizaciones, a través de este objetivo de conocimiento, los docentes y profesionales pueden conocer los tipos de movimientos que se realizan entre islas o entre cualesquiera terrenos del Mundo Virtual. Patrones de uso y resolución de prácticas: Permite conocer a los docentes y profesionales los patrones de comportamiento de los usuarios en las prácticas o tareas de aprendizaje, de modo que se puedan determinar los caminos o grafos de resolución de las tareas, y así descubrir qué soluciones son las más comunes, cuales son los errores que comete cada usuario, y si existen fallos en el planteamiento de la práctica o posibles mejoras que se deban realizar en vista de los fallos que ocurran o los caminos que tomen los usuarios en la resolución. Patrones de error en prácticas: Conocer qué errores se producen en la resolución de prácticas y en qué secuencias se suelen producir, para determinar si el error es del usuario y qué evaluación merece, o por el contrario, es posible descubrir a través de estos errores, deficiencias, falta de información u otras anomalías en las prácticas o los Objetos de Aprendizaje. Consultas por agrupaciones de usuarios: Poder realizar agrupaciones de usuarios en torno a sus características comunes, pudiendo elegir estas características sobre las que se construyan los grupos. A través de ellas se podrá descubrir relaciones entre el comportamiento de usuarios, el uso, o nexos de unión en los parámetros del sistema que el docente o profesional desee examinar.

2.3.2.

Objetivos para Administradores, Diseñadores y Desarrolladores

Además de permitir extraer conocimiento y apoyar las posibles decisiones de los docentes, profesionales, orientadores o cualquier personal relacionado con la parte docente o puramente práctica de la plataforma, es necesario que se aporten datos y posibilidad de adquisición de conocimiento a los responsables de administración, diseño y desarrollo del sistema, por lo cual es necesario establecer otra serie de objetivos para ellos además de los establecidos en el otro rol de usuarios. Por lo tanto, los administradores, diseñadores y desarrolladores de un Mundo Virtual deberían tener 14

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

acceso a los objetivos señalados anteriormente, y contar además con otros exclusivos orientados más claramente hacia las líneas de objetivos marcados previamente como comprensión del uso global de la plataforma 2, análisis de la interacción con el entorno 3 y análisis de usabilidad de la plataforma 4. Patrones horarios de los usuarios: A través del conocimiento de los patrones de uso de la plataforma 3D o Mundo Virtual, los administradores pueden adquirir conocimiento sobre las horas de uso preferidas por los usuarios, aprovechando ese conocimiento para planificar acciones de administración, como ajuste de carga en servidores u horarios de mantenimiento. Patrones de fechas de uso: De la misma forma que en el objetivo de los patrones horarios de los usuarios, mediante el conocimiento de los patrones de fechas de uso, los administradores del sistema pueden conocer, por ejemplo, en qué épocas del año el sistema debe estar preparado para aceptar más carga de uso. Tiempo medio por usuario global: Las métricas orientadas a la medición de los tiempos globales de usuario pueden ser un buen indicador en algunos términos de usabilidad, ya que dependiendo de los tiempos medios de usuario, se podría llegar a determinar el punto temporal de fatiga en los usuarios, qué tipo de uso se hace en función del tiempo de conexión (las tareas con un carácter más lúdico o menos formal suelen durar más tiempo que las tareas menos entretenidas). Tiempo medio por usuario concreto: El tiempo medio de cada usuario puede servir como medida de conocimiento acerca de los patrones de tiempo de uso de los distintos grupos, y puede ser una de las métricas usadas para trazar grupos o clústeres de usuarios. Patrones de exploración del territorio: El conocimiento acerca de los movimientos de los usuarios dentro del Mundo Virtual puede revelar información sobre el interés de determinadas regiones o terrenos que se pueden llegar a relacionar con la usabilidad o temática de las mimas, los patrones de movimientos de los usuarios, se puede extraer conocimiento acerca de las decisiones espaciales que toman los usuarios, etc. El acto de movimiento es una constante fundamental en un entorno regido por la interacción entre el usuario y el entorno, genera multitud de información y puede servir como métrica o referencia fiable acerca de lo que ocurre dentro de los territorios 3D. Patrones de exploración del territorio de cada usuario concreto: De la misma forma que en el objetivo anterior, los patrones de exploración del territorio arrojan luz acerca del comportamiento de un usuario frente al entorno tridimensional, saber qué lugares visita, en qué orden y los detalles cronológicos de éstos, es posible determinar el comportamiento de un usuario, de modo que se pueda trazar su perfil de usuario, o se le pueda incluir en grupos o clústeres que realicen clasificaciones respecto del comportamiento espacial o de tipo de perfil de usuario, por ejemplo. Trabajo Fin de Máster, Máster en Sistemas Inteligentes

15

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

Grado de visitas en los territorios: Permite conocer la cantidad de carga de usuarios que debe soportar una región (o instancia de servidor), con lo cual se pueden planificar acciones de balance de carga o asignación de recursos por parte de los administradores. Grado de uso de los Objetos 3D: Conocer el grado de uso de los objetos virtuales permite a los diseñadores y desarrolladores encontrar puntos con una actividad de utilización no habitual con lo cual se pueden conocer, por ejemplo, errores de usabilidad. Un error de usabilidad que se podría conocer a través del número de clics en un objeto, sería el mal diseño de un elemento informativo relevante; ya que si no se detectan clics o muy pocos, se puede llegar a determinar que ese objeto que proporciona información no es visible o tiene algún tipo de defecto asociado que hace que no cumpla su función en el grado deseado. Patrones de error en teleports: A través del descubrimiento de patrones o secuencias de error en los teleport o teletransporte entre regiones virtuales, es posible detectar fallos en la configuración o programación del Mundo Virtual, de modo que puedan ser corregidos. Patrones de error en prácticas: A través del seguimiento de las ejecuciones o resoluciones de los Objetos de Aprendizaje que componen las prácticas pueden descubrirse errores de implementación en los mismos, o caminos de resolución que contienen fallos informativos o fallos en la implementación o diseño. Este objetivo tiene una gran importancia, debido a que si no existe un control sobre los patrones de error en las prácticas u Objetos de Aprendizaje, es posible que los usuarios obtengan malos resultados en la resolución de una práctica debido a una mala programación o diseño del contenido o los caminos de ejecución posibles.

16

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

3.

Datos e Información

Antes de hablar sobre Conocimiento, Minería o cualquiera de los conceptos que se van a presentar en esta sección es importante formular una pregunta clave para la comprensión de los conceptos que se presentarán después:

¿Son equivalentes los conceptos Datos e Información?

En esta pregunta, la respuesta es clara, no son equivalentes aunque están relacionados. El concepto de dato se asocia a una variable, que puede contener un valor del tipo que sea, pero que por sí mismo no tiene relevancia, ni peso semántico, por sí mismo no dice nada. Sin embargo, la información como concepto sí tiene carga semántica, significado por si misma, si expresa un conocimiento, sin importar el tipo y relevancia. Según la Real Academia Española de la Lengua (RAE), la palabra Información se puede definir como:

“la comunicación o adquisición de conocimientos que permiten ampliar o precisar los que se poseen sobre una materia determinada”

Un documento puede estar atestado de datos, pero si no se relacionan y se tratan convenientemente, esos datos no revelan conocimiento. Si en un conjunto de datos, las variables se relacionan, es posible construir un modelo de información, y transformar un conjunto de datos sin significado, en un conjunto que exprese algo más, que exprese Conocimiento. El descubrimiento de conocimiento, es un tema recurrente en los sistemas informáticos actuales. No es un problema trivial, ya que no es tarea sencilla extraer información relevante y útil en los grandes bancos de datos actuales. En esta sección, y los distintos apartados que contiene, se va a intentar mostrar qué procesos se pueden llevar a cabo para descubrir conocimiento en el contexto de este trabajo de investigación, es decir, cómo extraer datos de un Mundo Virtual, cómo tratar los datos que se extraen, y cómo conseguir encontrar información relevante y el ansiado conocimiento. Para ello, se va a describir la arquitectura interna de un Mundo Virtual (sección 3.1, con el propósito de conocer qué tipo de datos se pueden generar y en qué lugares se suelen almacenar; un segundo apartado acerca de las fuentes de datos y extracción de datos en los Mundos Virtuales (sección 3.2) y por último qué tipos de extracción de conocimiento se dan en otros sistemas, y cómo se puede aproximar los conceptos que manejan al contexto de los Mundos Virtuales de Aprendizaje y Prácticas (sección 3.3). Trabajo Fin de Máster, Máster en Sistemas Inteligentes

17

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

3.1.

Arquitectura Backend en un Mundo Virtual

En este apartado, se comentarán una serie de nociones básicas sobre la arquitectura que subyace bajo un Mundo Virtual, poniendo como ejemplo práctico el caso de un servidor de OpenSimulator (OpenSim), ya que el entorno 3D que se usará para la recogida de datos y propuesta del análisis visual se basa en un Mundo Virtual construido con esta plataforma. Además, se pretende dar a conocer (aunque sea de forma resumida) la estructura de un servidor de este tipo, lo cual facilita la comprensión de los siguientes apartados que se encargarán de revelar los procesos de extracción de datos, y visualización de información. Desde el punto de vista del backend, el sistema OpenSim es un software de servidor que ejecuta y sirve a los usuarios diversos datos relativos a un entorno virtual en 3D, que se visualizan mediante un software cliente conocido como visor (viewer ). Este software de servidor OpenSim está pensado para su uso en diversos contextos, tiene opciones de escalabilidad mediante su uso en grids de servidores, y de extensibilidad a través de plugins y módulos, etc. En general se trata un entorno flexible y adaptable mediante la creación de nuevos módulos en función de las necesidades que tengan los administradores del sistema. A continuación, se va a explicar cómo es la arquitectura de un servidor OpenSim instalado con un esquema grid (debido a que esta configuración es la que se utiliza en todos los sistemas con una carga de uso importante). Después se citarán algunos plugins y módulos de los más utilizados en esta plataforma de entornos virtuales, de modo que sirva como introducción a las posibilidades que pone a disposición de los usuarios este sistema. Un servidor en modo o esquema grid, consiste en la ejecución de un software distribuido en diversas máquinas físicas o virtuales, de modo que desde una o varias máquinas es posible recoger las peticiones de los clientes, y derivar el tráfico a otros servidores, de modo que se distribuyen las peticiones y el tráfico de red en distintos estamentos. Para realizar una configuración de este tipo, OpenSim cuenta con dos instancias software de servidor (figura 2), una conocida como servidor Robust, y otra con el nombre propio de la plataforma (OpenSim): Robust (Robust.exe): Es el servidor de entrada a las peticiones de conexión al entorno virtual, se encarga de los procesos de login, servicio de texturas, distribución del tráfico en el grid, servicios de cuentas de usuarios, servicio de inventarios, etc. OpenSim (OpenSim.exe): Es el servidor que se encarga de la interacción de los usuarios en cada región del mundo 3D. Cada instancia de este servidor se encarga sólo de unas regiones previamente definidas, de modo que el administrador calcula la carga de las regiones y configura estas instancias a medida de las necesidades. Otras características que pueden resultar relevantes en la arquitectura de un 18

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

Figura 2: Esquema de una arquitectura backend en servidores OpenSim configurados en topología grid [8] servidor OpenSim, es la inclusión o adición de diferentes módulos software que modifiquen o extiendan las funcionalidades base que ofrece OpenSim. Entre los más importantes actualmente, o más usados destacan los siguientes [6]: Vivox Voice Service: Para poder contar con comunicación por voz, es necesario añadir algún tipo de plugin o activar expresamente esta opción dentro de la configuración del sistema. Una de las opciones más recomendadas y extendidas para usar esta funcionalidad de voz es el uso del servicio de voz IP que proporciona la empresa estadounidense Vivox, la cual como contribución al desarrollo de la plataforma OpenSim da acceso gratuito a sus servicios de voz orientados a plataformas de juego o presencia masiva. Mensajes offline: Por defecto, el sistema no permite enviar mensajes de chat de forma privada a personajes (avatares) que no estén conectados en ese momento, a través de un sistema de mensajería interno similar a un sistema de correo electrónico. A través de un módulo de mensajes offline, cuando un usuario se conecta puede recibir los avisos o mensajes que otros usuarios le enviaron cuando no estaba en línea. Esto permite, por ejemplo, que un administrador envíe avisos al resto de los usuarios y estos lo reciban cuando se conecten. Grupos: OpenSim, en un inicio, posee la estructura interna necesaria para manejar sistemas de grupos de usuarios, pero generalmente es necesario una funcionalidad adicional que maneje los campos de la base de datos (tuplas) y esta tabla (groups) de la base de datos. Esto se puede resolver a través de un módulo que maneja, mediante código php las relaciones de la base de datos; de modo, que cuando un usuario crea un grupo o añade usuarios a alguno de ellos, se genera una petición desde el core de OpenSim a un servidor web que Trabajo Fin de Máster, Máster en Sistemas Inteligentes

19

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

contiene el código php que maneja la base de datos y permite realizar todas las operaciones. Es decir añadiendo un módulo como este, la arquitectura del sistema añade un nuevo tipo de servidor: el servidor web. Perfiles y Búsquedas: OpenSim también contempla como posible funcionalidad el hecho de que los distintos usuarios puedan crear un perfil personal, que se muestre cuando otros usuarios les busquen dentro del entorno virtual. El hecho, es que en la versión actual del software, todavía no se ha implementado esta característica, si bien los clientes de conexión si dan la opción de hacer esa búsqueda y visualización del perfil de usuario (en este momento, lo mostrarían vacío). Por ello existen módulos creados por terceros (contribuciones libres) que gestionan estas características. El proceso de funcionamiento es similar al del módulo de grupos, hay un código que genera peticiones mediante XmlRPC a un servidor web, que mediante unas páginas web programadas en php se gestionan los campos determinados de la base de datos, añadidos para estos efectos. Estos módulos sobre perfiles y búsquedas permiten el rastreo de información sobre las consultas, búsquedas, visionado de perfiles de usuario, etc. que pueden ser muy útiles en el caso de la traza de perfiles o agrupación de usuarios en función de sus características. Diva (Gestión de usuarios y opciones vía web): De forma nativa la gestión de usuarios en OpenSim, la realizan los administradores a través de interacción directa con la base de datos, o a través de comandos tecleados en la consola de administración que se arranca en el servidor de OpenSim. Esto implica una serie de problemas relacionados con la sencillez de administración, incluso con la seguridad del servidor, ya que se necesita acceso físico, o a través de algún programa que controle la sesión para acceder a los servicios de gestión de usuarios. Por ello un grupo de usuarios implementaron un módulo software libre llamado ‘Diva’, este complemento, proporciona una serie de páginas web orientadas a la gestión y modificación de datos por parte del usuario o administradores, implementando principalmente funcionalidades de tipo CRUD (Crear, Obtener, Actualizar, Borrar) sobre los datos. Sloodle: El módulo Sloodle [14], permite la comunicación entre el sistema 3D y plataformas de eLearning implementadas mediante Moodle. De este modo, es posible realizar cuestionarios, ver presentaciones, mantener conversaciones, y usar muchos otros recursos que ofrecen estas plataformas de eLearning desde dentro del mundo virtual 3D.

3.2.

Extracción de Datos de un Mundo Virtual

Una vez identificados qué tipos de datos se pueden dar dentro de un Mundo Virtual basado en OpenSim en función de las funcionalidades de las que disponga, es necesario resumir qué fuentes de datos existen en estos entornos 3D, para poder plantear después acciones de extracción de datos y descubrimiento de conocimiento.

20

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

Figura 3: Fuentes de Datos disponibles en un Mundo Virtual construido mediante el software OpenSim [39] Como se muestra en la figura 3, las diferentes fuentes de datos que han de tenerse en cuenta para el descubrimiento de conocimiento en las plataformas virtuales basadas en OpenSim, son las siguientes: Ficheros de log de OpenSim: En ellos se almacena toda la información relativa al uso interno del Mundo Virtual, incluyendo acciones como login, logout, teleports, llamadas a APIs externas, etc. Para servidores de topología Grid, existen dos ficheros distintos: OpenSim.log y Robust.log [8]. En el caso del fichero OpenSim.log detalla los eventos ocurridos en cada región o terreno del mundo virtual, mientras que el llamado Robust.log se encarga de almacenar los eventos relacionados con el sistema desde un punto de vista global (acciones de conexión, desconexión, etc.) Bases de datos: Recopilan toda la información relativa a los usuarios, objetos y territorios del Mundo Virtual. Entre los datos que almacenan se encuentran los ID de cada elemento, los grupos de usuarios y sus miembros, las texturas que pueden tener cualquiera de los item 3D presentes, las posiciones de los usuarios en el Mundo Virtual cuando se conectan o desconectan, etc. Datos enviados desde los objetos del Mundo Virtual y recogidos por servidores web: Desde el interior del entorno tridimensional, se pueden programar flujos de información con datos adicionales a los que se registran en los ficheros de log del sistema, de modo que mediante la redirección de estos flujos de datos a servidores web externos, es posible realizar una recogida de Trabajo Fin de Máster, Máster en Sistemas Inteligentes

21

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

datos a medida de las necesidades de los analistas de datos del entorno 3D, desarrolladores o responsables del Mundo Virtual. Ficheros de log de Servidores Web: Los Mundos Virtuales pueden extender sus funcionalidades y servicios mediante plugins y módulos adicionales [6], pudiendo operar a través de servidores web adicionales [5]. En los ficheros log que se generan en los servidores web, se guardan datos relativos a la actividad que se genera mediante estos plugin, por lo cual es recomendable revisar el contenido y extraer los datos que puedan ser relevantes en el proceso de descubrimiento de conocimiento.

3.3.

Los Datos de Uso y el Conocimiento

Como apartado final de esta sección sobre datos, información y conocimiento, y tomando como base el trabajo [39], relacionado con este Trabajo Fin de Máster, es necesario comentar la relación entre el análisis de uso que se plantea en los Mundos Virtuales, y qué se hace en otros tipos de sistemas para descubrir conocimiento. En primer lugar, es necesario comprender algunos conceptos: La Minería Web es un área de investigación que combina las técnicas de Minería de Datos para automatizar el descubrimiento y la extracción de la información de documentos y servicios Web [45]. Estas técnicas u otras, pueden usarse para resolver problemas de sobrecarga de información o para encontrar información relevante, creando nuevo conocimiento a partir de la información disponible en la web, personalizar la información o aprender sobre los datos de uso de los usuarios individuales [63]. Respecto a la Minería Web, se pueden discernir dos grandes campos: el Descubrimiento de Conocimiento y la Minería de Datos (KD) o la Minería de Datos en Bases de Datos (KDD), la cual se basa en encontrar conocimiento a través de la estadística, las bases de datos, y la inteligencia artificial para construir herramientas que permitan a los usuarios conseguir una mejor visión o comprensión de grandes conjuntos de datos [74], característica por la cual, esta Minería de Datos también se define como el proceso de indentificar patrones en los datos válidos, novedosos, útiles y comprensibles [65]. Un parte especial de la Minería Web es la conocida como la Minería Web de Uso, la cual puede ser definida como la aplicación de técnicas de minería de datos para descubrir patrones de uso en los datos recopilados de páginas o servicios Web, para comprender y mejorar las necesidades asociadas a las aplicaciones basadas en Web [92] La Minería de Uso Web es un área fundamental para conocer todo lo que ocurre dentro de un portal o web concreto. Este conocimiento puede ser generado para la 22

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

comprensión del uso por parte de administradores, responsables o diseñadores, o incluso para que el uso sea comprendido automáticamente por el sistema que sustenta la página web. A través del conocimiento o los datos relevantes encontrados en la aplicación de estas técnicas, se puede mejorar los distintos apartados de los sistemas, u optimizar los recursos que requieren los usuarios durante el uso. De la misma forma, el descubrimiento de conocimiento aplicado a los Mundos Virtuales hace que los diseñadores de estos (o diseñadores de juegos, etc.), administradores, etc. puedan mejorar, rediseñar o cambiar de cualquier forma el entorno 3D de acuerdo a las características, necesidades o datos extraídos a través de estos procesos. La Minería de Uso Web se basa en tres fases: el preprocesado, el descubrimiento de patrones y el análisis de estos patrones descubiertos (figura 4). Anteriormente al desarrollo de estas tres fases, es necesario crear o disponer de un conjunto de datos que incluya toda la información que se tendrá en cuenta para las tareas de minería de datos o descubrimiento de datos mediante las técnicas que se estimen oportunas. Para conseguir este conjunto de datos, es necesario recopilar los datos de distintas posibles fuentes de datos, como pueden ser, por ejemplo, bases de datos, ficheros de servidores, servidores proxy, o cualquier otro tipo de plataforma que contenga datos persistentes que puedan ser relevantes.

Figura 4: Proceso de Minería de Uso [36] Como se observa, el planteamiento que realiza la Minería de Uso Web (Web Usage Mining), es muy similar al que se plantea para este trabajo, se disponen de una serie de conjuntos de datos, que se quieren transformar en información que se visualizará para que el usuario descubra conocimiento. Debido a estos paralelismos, es posible plantear una aproximación de los conceptos de la Minería de Uso Web a los datos referentes al uso de los Mundos Virtuales [39]. Por ello, es posible plantear como parte del proceso de tratamiento y aprovechamiento de los datos incluir una Trabajo Fin de Máster, Máster en Sistemas Inteligentes

23

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

etapa de Minería de Datos, de modo que, además de la información que se recopile en los distintos soportes persistentes de información del Mundo Virtual, se puedan obtener reglas de comportamiento, o patrones de uso por parte de los usuarios, que puedan ser representados en la visualización y contribuyan a obtener una percepción (insight) y un conocimiento acerca de lo que ocurre en el Mundo Virtual mucho más amplio.

24

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

4.

Visualización de la Información

La Visualización de la Información es un concepto complejo, un proceso del cual se han propuesto distintas definiciones en sentidos diversos. Por ejemplo, los autores Card, Mackinlay y Shneiderman [33] afirman que la Visualización de la Información es: El uso de representaciones visuales interactivas soportadas por ordenador, de datos abstractos para amplificar la cognición. Otros, como Colin Ware [101], hablan de que se trata de una actividad cognitiva, algo que ocurre en la mente y que tiene como resultado algo relativamente efímero como son los pensamientos, algo que no puede ser impreso en papel o visto en un microscopio. El tercer tipo de acepción para este concepto, lo da Spence [91], el cual afirma que se trata de un modelo mental, un modelo interno o un mapa cognitivo, como construcciones mentales disponibles para una inspección mental. En cualquier caso, en lo que coinciden todos los autores, es que la Visualización de Información es un proceso por el cual el usuario es capaz de llegar al conocimiento y la sabiduría a través de la observación de representaciones visuales de datos o información (figura 5).

Figura 5: La Visualización de Información ayuda a adquirir conocimiento a través de la percepción visual de datos En cualquier caso, el tema de la Visualización de la Información, además de ser concepto complejo, es un campo de investigación muy amplio y fundamental en muchos sistemas modernos para la comprensión de los grandes conjuntos de datos que se generan cada día en el mundo [61]. Por ello en los siguientes apartados se profundizará en ciertos apartados de la visualización que son relevantes en el caso de este trabajo de investigación, como pueden ser los Principios de Diseño 4.1, un Estudio sobre soluciones para la visualización de información 4.2 con distintas taTrabajo Fin de Máster, Máster en Sistemas Inteligentes

25

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

xonomías de datos, o el apartado final repasando algunas visualizaciones propuestas con anterioridad para la visualización de información extraída de Mundos Virtuales 4.3.

4.1.

Principios de diseño

El diseño de las visualizaciones de datos es un problema complejo, que abarca muchos campos, desde la psicología o la percepción, al ámbito del descubrimiento de conocimiento, pasando incluso por el diseño gráfico. Para realizar una buena representación visual de información, es necesario tener en cuenta muchos factores que influyen, por ello conviene hacer un estudio previo pormenorizado sobre qué opciones pueden resultar interesante en este proceso de diseño, qué conceptos es necesario manejar, etc. En el artículo Towards a methodology for developing visualizations [50], los autores Graham, Kennedy y Benyon proponen una serie de conceptos y apartados necesarios en la propuesta o construcción de una visualización de datos. Estos conceptos de aproximación al diseño, los resumen de esta forma: Tomar de una aproximación iterativa del desarrollo de sistemas. Asegurar la participación de usuarios en el proceso de diseño. Focalizar el proceso en el trabajo que hay que realizar, no en las funciones del sistema. Aplicar el diseño de interfaces (incluyendo documentación). Por ello, en los siguientes apartados se muestran algunos de los conceptos estudiados, como pueden ser los Principios Fundamentales del Diseño Analítico (4.1.1), el mantra de la Visualización de la Información (4.1.2), la importancia del color (4.1.4), o las ocho reglas de oro del diseño de interfaces (4.1.3). 4.1.1.

Los Principios Fundamentales del Diseño Analítico

Para diseñar de forma adecuada una visualización, es necesario contar con una buena base de ideas acerca de cómo deben plantearse los sistemas que revelan información de forma visual, por ello a continuación se muestran una serie de reglas o principios de diseño que propone el autor Edward Tufte en su libro Beautiful Evidence [96]. Edward Tufte es uno de los referentes mundiales en investigación sobre visualización de información, presentación de contenidos, y Diseño de Información. En este y otros libros analiza distintos casos de visualización de información que se han dado a lo largo de la historia y establece posibles técnicas y principios que se pueden aplicar en el campo de la visualización, así como fundamentos de diseño para presentar la información de una forma evidente y clara, como los que se presentan a continuación: 26

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

1. Visualizar comparaciones: Es necesario en todos los sistemas que expresen datos destinados al análisis, muestren comparaciones, contrastes y diferencias en dichos datos. Sea lo que sea lo que se analice en cada gráfico o representación, lo esencial es establecer comparaciones inteligentes y apropiadas entre los distintos datos que se muestran; por ello si se presenta un sistema visual donde se expresa información relacionada con datos, es necesario mostrar comparativas, o estructuras visuales que favorezcan la asociación de comparaciones en los datos. 2. Mostrar causalidad, mecanismo, estructura y explicación: En toda visualización de datos de carácter analítico, es fundamental ofrecer herramientas visuales para poder encontrar características de causalidad (¿Qué causa las variaciones en los datos? ), los mecanismos de ocurrencia de eventos o cambios (¿Puedo determinar el mecanismo o sistema de variación de los datos? ), cómo se explican los datos (¿Puedo discernir el porqué de cada cambio en los datos? ), o si existe una estructura sistemática (¿Puedo establecer una serie de patrones de eventos o de cambios en los datos? ). De este modo el usuario puede ahondar en su análisis, reconociendo patrones en la información, las motivaciones de la variación de los datos, etc. 3. El análisis visual debe ser multivariado: Los razonamientos humanos suelen tener un carácter multivariado (multivariate), es decir, incluyen siempre tres o más dimensiones. Por ejemplo, si leemos las indicaciones para llegar de un punto a otro, estamos razonando sobre cuatro dimensiones, el espacio tridimensional en el que nos movemos, y el tiempo que tardamos en trasladarnos de un punto a otro. Por ello, porque la mente humana suele abarcar múltiples dimensiones, es necesario que la exposición visual de datos sea capaz abarcar las diversas dimensiones de los datos del problema que se esté mostrando y no solo una o dos dimensiones. 4. Las evidencias deben integrarse: En la visualización de datos es necesario usar todas las herramientas posibles que revelen la relevancia y naturaleza de los datos. La conjugación de elementos visuales, numéricos y textuales, y la combinación de diversas técnicas hacen que la información que se presenta al usuario sea reforzada o más comprensible. El problema reside en una buena conjugación de las distintas técnicas que pueden aplicarse para revelar información, de forma que todos los recursos queden integrados en un solo sistema visual completo (y no varios sistemas de visualización que se presentan juntos). Por ello es necesario realizar un buen diseño que alcance la integración de todos los modos y fuentes de información visual. 5. Es necesario incluir documentación: En toda visualización debería darse información sobre el origen de los datos, a qué hacen referencia, qué escala de medida siguen, quiénes son los autores, y datos sobre todos los elementos visuales que se incluyen. La presentación de información textual que documente la visualización otorga una mejor comprensión a los analistas o usuarios, y proporciona credibilidad al contenido que se presenta. Trabajo Fin de Máster, Máster en Sistemas Inteligentes

27

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

6. El contenido es lo que más cuenta: Las presentaciones o visualizaciones destinadas al análisis sólo se sustentan en la calidad, relevancia e integridad de su contenido, por lo tanto, el mejor modo de mejorar una representación es conseguir un mejor contenido que mostrar. No importa el color usado, el tamaño, o la organización si el contenido no es suficientemente relevante como para despertar un interés por si mismo. Relacionado con estos principios, y en la misma publicación [96], Tufte propone dos conceptos conocidos como Graphical Excellence y Graphical Integrity.

Figura 6: Esquema del proceso asociado a la Excelencia Gráfica, Edward Tufte. Según Tufte, la Excelencia Gráfica se basa en la claridad, precisión y eficiencia de la comunicación de ideas complejas, y lo que le proporciona al usuario que revisa la visualización el mejor grupo de ideas en el menor tiempo, con la menor cantidad de tinta en el espacio más pequeño (figura 6). Para conseguir esta excelencia, propone una pequeña guía sobre cómo se deben mostrar los gráficos: Mostrar los Datos Inducir al usuario que visualiza a pensar sobre el significado y la sustancia en lugar de hacerlo sobre la metodología, el diseño gráfico, la tecnología de los gráficos etc. Evitar la distorsión del significado de los datos Presentar multitud de números en espacios pequeños Hacer coherentes los grandes conjuntos de datos Animar al ojo a comparar diferentes partes de los datos Revelar los datos con diferentes niveles de detalle, desde una visualización general hasta el detalle (de la misma forma que nuestro mantra de la visualización 4.1.2). 28

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

Servir a propósitos razonablemente claros: describir, explorar, tabular o decorar. Estar familiarizado con las descripciones verbales y estadísticas de los conjuntos de datos En cuanto a la Integridad Gráfica, Tufte reflexiona sobre la naturaleza mentirosa de los gráficos, y expone una serie de ejemplos (figura 7) sobre gráficos y visualizaciones que ocultan la verdad o destinados mostrar una visión sesgada de los datos, y cómo este tipo de gráficos pueden reconocerse o evitar su mal diseño.

Figura 7: Gráfico de datos que fomenta una visión sesgada y no cierta [96]

4.1.2.

El mantra de Visualización de la Información

En este trabajo, y en muchos de los trabajos modernos de visualización hay un leitmotiv recurrente, un mantra que describe las fases de interacción que debe realizar un usuario en una Visualización. Este mantra fue enunciado en 1996 por un autor del que se hablará en la sección 4.1.3, Ben Shneiderman [87], el cual afirmaba: “Overview first, zoom and filter, then details-on-demand” (Primero la vista general, zoom y filtrados, después detalles bajo demanda) Este mantra descompone, como se comenta, las cuatro fases que deben servir como base para describir la interacción del usuario con una visualización de datos: Visión general: Según el principio expresado por Shneiderman, en primer lugar se debe proporcionar una vista general del problema o de los datos Trabajo Fin de Máster, Máster en Sistemas Inteligentes

29

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

que componen la visualización, sin dar detalles, de modo que el espectador o analista pueda formar una idea general en su cabeza sobre el conjunto de datos que va a tratar. Zoom: El usuario debe poder centrarse en aquellos datos de la vista general que le hayan llamado la atención, a través de este zoom puede acceder a los detalles de estos datos. El zoom puede realizarse a través de distintas técnicas, como pueden ser el zoom geométrico que se usa a través de una selección de puntos x,y que se quieren ampliar, el zoom de ojo de pez realizado mediante una distorsión (que puede ser circular simulando una lupa o lente sobre los datos como en la figura 8, o una distorsión cartesiana, etc.), o el zoom semántico, que se basa en el significado o relación semántica entre los datos para realizar ampliaciones de la vista y detalles de estos elementos. Filtrado: Se debe proporcionar al usuario de la visualización las herramientas y mecanismos de filtrado necesarios para que pueda modificar la vista que tiene de los datos, de modo que tenga alguna de las siguientes opciones: Eliminar el contexto, a través de la selección de los elementos que desee ver el usuario. Usar la técnica de foco + contexto de modo que no pierda de vista el resto de datos no seleccionados. Emplar la vista general + detalles (overview + detail ), es decir, que pueda ver en la misma ventana la vista general y la específica de detalle. Detalles bajo demanda: El usuario debe poder pedir un nivel más alto de detalle siempre que lo desee, aunque estos no aparezcan inicialmente en la vista en la que se encuentre.

Figura 8: Zoom de Ojo de Pez mediante distorsión circular. Mike Bostock [31]

4.1.3.

Las Ocho Reglas de Oro del diseño de interfaces

A continuación se presentan otra serie de principios, conocidos como las Ocho Reglas de Oro del Diseño de Interfaces que propusieron en 2003 los autores Ben Shneiderman y Catherine Plaisant [89]. Estas reglas se presentan como una colección de principios o guía para el diseño de interfaces de usuario, de modo que mediante la aplicación de estas técnicas se consiga una mejor usabilidad y satisfacción del 30

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

usuario con el sistema. Tal y como indican los propios autores, estos principios deben ser interpretados, refinados y extendidos para cada entorno o caso concreto, no son verdades absolutas, tienen una serie de limitaciones, pero proporcionan un buen punto de partida para diseñadores de interfaces y pantallas en escritorio, web o móvil. 1. Esforzarse por proporcionar coherencia: esta regla es la más frecuentemente violada, puede resultar complicada debido a que hay muchas formas de consistencia y cumplirlas todas puede resultar un quebradero de cabeza. Es necesario plantear secuencias coherentes de acciones en situaciones similares; se debe usar terminología idéntica en avisos, menús y pantallas de ayuda, el color debe ser uniforme, la distribución del espacio debe estar compensada, el uso de mayúsculas tipografías, o cualquier otro elemento que se muestre en pantalla debe ser comprensible y coherente para el usuario. Los avisos explícitos, mensajes de excepción, etc. deben ser comprensibles y limitadas. 2. Atender la facilidad de uso universal: Es necesario reconocer las necesidades de los diversos usuarios que puedan utilizar el sistema que se está construyendo, por tanto el diseño debe ser plástico, facilitando así la transformación de los contenidos en función de lo que el usuario necesite en función de su perfil. 3. Ofrecer respuestas informativas: El usuario debe recibir la respuesta (feedback ) del sistema a cada acción que realice. En las acciones o comandos frecuentes y de menor importancia, la respuesta puede ser modesta o comedida, mientras que para las acciones poco frecuentes e importantes, la respuesta debería ser más llamativa. 4. Diseñar los diálogos y secuencias de ejecución con un final: La ejecución de acciones o el diálogo de comunicación entre la interfaz y el usuario deben diseñarse de tal forma que terminen. Las secuencias de acciones que puede realizar un usuario deben organizarse en grupos y contar con un principio, medio y fin del mismo modo que las historias tienen su inicio, nudo y desenlace. La respuesta que el sistema proporciona al usuario cuando éste ha concluido una tarea, supone una satisfacción del deber cumplido, una sensación de alivio, y un aviso para prepararse de cara a la realización del siguiente grupo de acciones, controlando de esta forma la ansiedad que puede experimentar un usuario ante secuencias de ejecución demasiado largas o secuencias en las que no recibe información sobre el progreso. 5. Evitar errores: En la medida de lo posible, diseñar el sistema de tal manera que los usuarios no puedan cometer errores graves. Por ejemplo, marcar en gris o desactivar los elementos de un menú que no sean apropiados en el momento de ejecución en el que se encuentra el sistema; no permitir la inserción de caracteres alfabéticos en campos de entrada numéricos, etc. Si esto ocurre, si un usuario comete un error, la interfaz debe detectar el error y ofrecer instrucciones simples, constructivas y específicas para la recuperación o subsanación de ese error. Trabajo Fin de Máster, Máster en Sistemas Inteligentes

31

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

6. Permitir una fácil inversión de acciones: Tanto como sea posible, las acciones deben ser reversibles. Esta característica ayuda también a aliviar la ansiedad, ya que el usuario sabe que si comete un error se puede deshacer, fomentando así la exploración de opciones desconocidas. Las unidades de la reversibilidad en cuanto a cantidad de acciones que puedan deshacerse son una sola acción, o un grupo completo de las acciones. 7. Apoyar el Locus de Control del usuario: El Locus de Control puede definirse como el grado en que un sujeto cree que controla su vida o los eventos que le ocurren (o el grado en el que cree que no le son impuestos los sucesos) [79]. Los operadores o usuarios experimentados desean sentir que tienen el control de la interfaz y del sistema y desean que la interfaz responda a sus acciones. Las acciones sorprendentes que ocurren en la interfaz, las secuencias aburridas de entradas de datos, la incapacidad para obtener resultados o la dificultad en la obtención de la información que se desea, y puede producir que los usuarios acumulen ansiedad e insatisfacción. 8. Reducir la carga de la memoria a corto plazo: La limitación del procesamiento humano de la información en la memoria a corto plazo (la regla general es que los seres humanos pueden recordar 7±2 pedazos de información) exige que las pantallas se mantengan simples, que las distintas vistas o páginas se consoliden, que la frecuencia de refresco de la información que aparece en las pantallas se reduzca, y que el tiempo de entrenamiento sea suficiente para que el usuario pueda acostumbrarse al uso o incluso que sea posible aprender secuencias de acciones si es necesario. 4.1.4.

La importancia del color en la Visualización

En la representación gráfica de los datos, es fundamental tener en cuenta cómo los símbolos que se representan en una visualización son percibidos e interpretados por el usuario. La codificación de los distintos elementos que conforman una visualización es fundamental, ya que una misma figura geométrica (por ejemplo), varía sustancialmente para el usuario en función de variables como el tamaño, orientación, color, etc. Los factores que permiten codificar la información de forma visual se conocen como variables visuales. En 1967, Jacques Bertin [26] propuso una primera clasificación de variables visuales entre las que se encontraban: la posición, el tamaño, la forma, el valor (paso de claro a oscuro), el color, la orientación del objeto o la textura que puede tener. Las variables visuales tienen especial relevancia en cuanto a ciertas cualidades que son necesarias en las visualizaciones, ya que a través de la correcta codificación de los objetos visuales, podemos establecer asociaciones entre ellos, mostrar orden, proyectar características cuantitativas de los objetos, que simulen estar seleccionados, o pertenecer a una determinada selección, o qué cantidad (longitud ) de valores se pueden asociar en el objeto por medio de las variables visuales.

32

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

En este Trabajo Fin de Máster se ha pretendido hacer especial hincapié en una de estas variables visuales, el color. El color es sumamente útil para la visualización de datos, ya que, como en la vida cotidiana, la visión de los colores tiene una función crítica, es posible que algunos objetos de nuestro alrededor difieran visualmente de su entorno sólo por su color, como se puede observar en la figura 9.

Figura 9: La importancia del color [101] Multitud de autores han estudiado el color desde todos sus puntos de vista, desde la percepción fisiológica, a la percepción sensorial, los límites de asimilación de distintos colores simultáneos, la composición de éstos, etc. En el campo que nos atañe, el del color y su relación con la visualización de datos, muchos autores han dedicado estudios pormenorizados al análisis de la percepción del color y cómo el aprovechamiento de esta variable visual puede jugar un papel fundamental en la comprensión y ganancia de conocimientos (o insight). Como ejemplo de este tipo de estudios, se puede citar a Colin Ware, el cual en su libro Information Visualization: Perception for Design [101] dedica un capítulo completo al estudio del color y su relevancia histórica y en la actualidad en los sistemas informáticos y las visualizaciones. Ware en este libro fundamenta parte de la importancia del color en su carácter de atributo en muchos objetos: Los nombres de color se utilizan como adjetivos porque los colores se perciben como atributos de los objetos. Esto sugiere un papel más importante en la visualización del color, es decir, la codificación de la información. Los objetos visuales pueden representar entidades de datos complejos, y los colores, naturalmente, puede codificar los atributos de los objetos. Como ejemplo, el autor refuerza esta afirmación, ya que afirma que es posible que solo con decir un color asociado a la palabra pizarra, podemos realizar una asociación mental con las características que determinan esa pizarra. Si pensamos en una pizarra verde o una pizarra blanca, en seguida visualizamos el material del que están compuestas, el tipo de utensilios que debemos usar para escribir, etc. Esa es la importancia de los nombres del color al que se hace referencia. [101]

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

33

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

Además, se entiende que el color es un atributo del objeto, no una característica primaria del mismo, y por eso sirve para ordenar y otorgar categorías, pero no para visualizar detalles o una situación en el espacio del objeto (el color es excelente para el etiquetado y la categorización, pero pobre para la formación de visualización, detalle o la disposición espacial ). En cualquier caso, la relevancia del color debe ser bien comprendida, y aplicada. Según Healey [54], no se deben mostrar más de diez colores para la codificación de símbolos si se requiere una identificación fiable, un usuario percibe de forma clara entre cinco y diez colores (o códigos de color) simultáneamente en una visualización. Para contrarrestar estos problemas en cuanto a la percepción de distintos valores o códigos de color, diversos autores han trabajado en escalas de color categóricas, las cuales proponen una disposición de color tal, que sea evidente la diferencia entre ellos y un usuario pueda observar escalas de color de 10 o incluso 20 tonalidades distintas. Entre estos autores que trabajan con las escalas de color categóricas destacan Harrower y Brewer [53], los cuales desarrollaron la aplicación Colorbrewer [32], donde se coloreaban chloropleths maps (figura 10) a través de estas escalas de color para que el usuario pueda observar las diferencias, y para que sirva como referencia a los desarrolladores y diseñadores de visualizaciones.

Figura 10: Vista de la herramienta ColorBrewer [32]

4.2.

Estudio de soluciones para la visualización datos

Los datos son el componente fundamental de una visualización, como se ha comentado anteriormente, muchos autores afirman que lo que hace que una visualización sea útil, e incluso tenga un mejor comportamiento o diseño, es la materia prima que la compone, es decir, los datos.

34

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

Existen multitud de taxonomías de datos, de abstracciones, de implementaciones algorítmicas, y no todos deben ser tratados de igual forma en una visualización. En los siguientes apartados se trata de introducir algunos conceptos sobre cómo tratar distintos tipos de datos, ajustando este estudio principalmente a los tipos que se pueden encontrar en este Trabajo de Fin de Máster. En estos apartados se dará una breve introducción al tratamiento de datos de ndimensiones 4.2.1, se comentará un estudio sobre técnicas de visualización aplicadas a datos de tipo jerárquicos 4.2.2, y a aquellos datos que sufren variaciones en el tiempo 4.2.3.

4.2.1.

Visualizaciones de datos de n-dimensiones

Las visualizaciones de datos de tipo n-dimensionales o de n-dimensiones son aquellas que llevan a una representación visual los datos compuestos por varias (n) dimensiones o diversidad de parámetros. Es decir, unas estructuras de datos que poseen otras estructuras de datos dentro de sus instancias, y que a su vez podrían tener incluso un nivel de anidación mayor. Esto supone un problema, ¿Cómo representar visualmente datos que cuentan con varias dimensiones internas?, y ¿Cómo llevar ese tipo de visualizaciones a un entorno como el computador? Por una parte, observamos que una pantalla de ordenador, o cualquier superficie que se use habitualmente para la representación visual de cualquier tipo de información (desde un documento de texto a gráficos avanzados) suele contar con dos dimensiones, es decir, las pantallas usan generalmente un sistema de representación 2D. Con el paso del tiempo se consiguió la fabricación a gran escala de pantallas y dispositivos que conseguían efectos 3D con unos resultados más que aceptables, aún así, y aunque en la actualidad la tecnología 3D está disponible para el público en general, se sigue usando en mayor medida los sistemas típicos 2D. Por ello es necesario estudiar los métodos y posibilidades que existen de representación de estructuras n-dimensionales en sistemas de tipo 2D. Este problema ha sido tratado por multitud de autores, los cuales han propuesto distintas visualizaciones y gráficos que abordan esta temática desde distintos puntos de vista. En cualquier caso, la mayoría de ellos plantean un aprovechamiento de diversas variables visuales en los sistemas 2D, de modo que usando la estructura de cualquiera de las propuestas planteadas se pueda conseguir un mayor nivel de expresión de los datos (figura 11). Un buen resumen de estas técnicas de representación de datos de n-dimensiones se puede encontrar en el artículo High-Dimensional Visualizations de Grinstein, Trutschl y Cvek [51].

4.2.2.

Visualizaciones de Datos Jerárquicos

En cualquier sistema informático que genere o utilice información, se pueden encontrar diferentes tipos de datos en función de su tipo (números enteros, cadenas de caracteres, etc.) o su organización (estructuras en los datos, relaciones entre ellos, Trabajo Fin de Máster, Máster en Sistemas Inteligentes

35

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

Figura 11: Visualización de Coordenadas Paralelas aplicada para datos de ndimensiones etc.). Muchos de estos datos pueden organizarse en dos grandes grupos atendiendo a su organización: los datos de carácter jerárquicos o jerarquizados y los conocidos como datos no jerárquicos. Los datos jerárquicos son aquellos que representan relaciones del tipo padre-hijo, también conocidas como relaciones de inclusión mientras que los datos no jerárquicos son aquellos que establecen relaciones adicionales, como las de adyacencia. Como ejemplos de datos jerárquicos se pueden citar los siguientes [57]: Un sistema con organización jerárquica: por ejemplo alguno que contenga código fuente organizado en directorios, archivos, clases y las relaciones entre ellos, por ejemplo de dependencia. Una Red Social compuesta por distintos usuarios, donde éstos pueden formar grupos, subgrupos, etc. En ellos se ven relaciones típicas de agrupación. Desde un punto de vista algorítmico estas organizaciones de datos se podrían representar mediante estructuras como pueden ser los árboles o los grafos, o cualquier estructura de tipo nodo-arco. Muchas de las visualizaciones que se han propuesto a lo largo de los últimos años para estos conjuntos de datos, se fundamentan en el uso de estas estructuras o abstracciones de la organización de modo que se lleva la estructura lógica a la pantalla. Como se observa en la figura 12 algunas de las visualizaciones más típicas que se han propuesto a lo largo del tiempo son: Rooted Tree: consiste en la representación de la jerarquía mediante la diferenciación de las distintas relaciones padre-hijo a través de la distribución de nodos enlazados en el eje “Y”. Así, se representa la raíz o nodo inicial del árbol en el punto más alto de la visualización, y los datos que ocupan un lugar más 36

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

Figura 12: Representaciones visuales comunes de árboles. De izquierda a derecha: rooted tree, árbol radial, balloon tree, y treemap layout [57] bajo en la jerarquía en la zona más baja de la vista. De este modo, se distinguen de modo evidente los distintos niveles existentes y cuáles son nodos padre y cuáles los hijo, fomentando así rápidamente la comprensión de las relaciones jerárquicas entre los elementos. Árbol Radial: en esta representación de los árboles no se utiliza la representación aprovechando la característica de la altura o la expansión en el eje “Y” de la estructura de nodos, sino que se realiza una organización de los nodos de forma radial o tomando como puntos de distribución de los nodos los bordes de distintas de circunferencias que se organizan en el espacio mediante el establecimiento de una relación entre sus radios y el nivel del árbol que ocupa cada nodo a dibujar [64]. De este modo, en el centro del sistema radial se sitúa la raíz del árbol, y en los siguientes niveles radiales se van distribuyendo los nodos hijos, hijos de los hijos, etc. Balloon Tree: Se trata de una vista extendida del árbol, similar en cuanto al uso del espacio a la técnica del árbol radial, pero usando la variante del empaquetamiento de las distintas ramas que surgen dentro del árbol, inscribiendo estas ramas dentro de circunferencias, de modo que se pueda distinguir inequívocamente los distintos caminos y niveles que componen el árbol. De este modo, la navegación dentro del árbol puede plantearse mediante el acceso a cada circunferencia en función del nivel, la rama o el camino que tenga que ser evaluado por parte del analista o usuario que necesite recuperar información del árbol. Treemap Layout: Al contrario que en el resto de visualizaciones tratadas hasta el momento en cuanto a datos jerárquicos, basadas en grafos dirigidos con una serie de raíces y nodos, Ben Shneiderman planteó en 1991[86] un nuevo sistema de visualización basado en un mapeado en dos dimensiones de los datos y nodos que están contenidos dentro de la estructura del árbol. De este modo, el mapa representa los nodos de un tamaño acorde a los datos o el contenido de cada nodo, haciendo que lo que primero que reconoce el usuario son los contenidos más relevantes o con mayor presencia, en lugar de tener que recorrer cada nodo, camino o rama del árbol para hacerse una idea aproximada del contenido. Esta representación de los árboles se determina mediante técnicas Trabajo Fin de Máster, Máster en Sistemas Inteligentes

37

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

de relleno o aprovechamiento del espacio, ya que a partir de una superficie prefijada, distribuye la extensión o el área de cada nodo a representar haciendo un cálculo espacio disponible - relevancia de la información como se observa en la figura 13. Además el autor y los co-autores en los distintos artículos e informes relacionados con la investigación en este sistema de visualización a través de los años, sugieren otras variaciones y mejoras en cuanto a los modos de dibujado [90] o el uso del color para la codificación de diferentes valores o atributos relacionados con los datos [88].

Figura 13: Ejemplo del cálculo de un treemap respecto de un árbol [86]

Tiempo después, surgió una de las visualizaciones que continúan estos trabajos de visualización de árboles y jerarquías de datos; a partir de las ideas de agrupación de la información, las relaciones de adyacencia y la interdependencia entre los distintos niveles de la jerarquía de datos. Esta visualización, llamada Hierarchical Edge Bundles se basa en la agrupación de los distintos arcos y ejes de adyacencia que componen una visualización en árbol, de modo que a través de la agrupación o empaquetamiento de estos distintos arcos del árbol en función de su significado y el nivel de jerarquía en el que se encuentran, se consigue eliminar el caos y ruido visual que puede darse en los grandes conjuntos de relaciones (figura 14). En este sistema se plantea un sistema circular en el que se inscriben los distintos niveles en la jerarquía de datos a través del dibujado de arcos en la parte más alejada 38

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

del centro de la visualización. En esta organización, los arcos que ocupan un lugar más lejano del centro del sistema representan el nivel más alto en la jerarquía de datos, estos arcos determinan su tamaño en función de la cantidad de datos que contengan, es decir, de la longitud de los arcos que se inscriben en puntos más cercanos al centro del sistema.

Figura 14: Comportamiento del agrupamiento de arcos en función del factor β de los tensores de los puntos de control que manejan la posición y forma de los arcos [57] Como ejemplo de esta distribución, podríamos poner un ejemplo basado en relaciones familiares: un arco de que ocupa un lugar más alejado del centro del sistema podría representar un individuo abuelo, que tiene una serie de hijos representados por arcos de menor tamaño situados más cerca del centro de la visualización. Estos hijos pueden ser a su vez padres en la jerarquía de otros datos, por lo que podemos añadir un nuevo nivel de jerarquía con un nuevo nivel en el sistema radial más cercano al centro. En esta jerarquía, a partir del cálculo del área del arco que representa cada hijo-de-hijo o nieto del ejemplo propuesto, se van dibujando agrupados los distintos elementos que componen cada nivel, con lo cual el padre será un arco de área igual a la suma de las áreas de sus hijos situado en un nivel superior. De la misma forma se calcula la extensión de los arcos que representan un nivel más alto en la jerarquía. Además, para facilitar la apreciación inequívoca de los distintos elementos presentes en los niveles de la jerarquía, se puede proporcionar a cada elemento tendrá una separación del resto, y cada grupo de elementos puede disponer de una separación suficiente de otros grupos de elementos como para que se distinga lo más claramente posible. Para el dibujado de los ejes, se hace uso de líneas de tipo spline (o derivadas de estas), las cuales son capaces de transformarse en distintas curvas continuas a través del uso de tensores o puntos de control que apliquen una tensión sobre puntos concretos de la línea y la deformen o proporcionen puntos (x,y) en el espacio para que la línea pase a través de ellos.[57] Además en este dibujado o render de las líneas o ejes que se dibujan, tiene una especial relevancia el uso del color y la transparencia [58]. El color como representación de atributos relacionados con los datos, como la dirección de los ejes (en la figura 14 el sentido de los ejes se referencia del color rojo del punto de origen hasta Trabajo Fin de Máster, Máster en Sistemas Inteligentes

39

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

llegar al verde en el punto de destino). El uso de la transparencia en los ejes se fundamenta en la posibilidad de percibir más dato, más ejes, y más características de cada agrupamiento concreto, ya que si cada línea lleva asociada una transparencia (que puede fundamentarse igual que las características del color en función de algún atributo de los datos), puede hacer que veamos las distintas líneas que se presentan debajo de otras, sin que determinados datos o ejes puedan cubrir por completo a otros. Uno de los posibles usos del grado de transparencia, como ejemplo, puede dar como referencia la importancia de los datos, a mayor importancia tenga el eje, menor será su transparencia (o mayor opacidad), mientras que datos con menor relevancia disponen de un mayor grado de transparencia, debido a que no es necesario que sean reconocidos a primera vista. 4.2.3.

Visualizaciones que incluyen variables temporales

Uno de los métodos más utilizados en la representación de grandes cantidades de información es la segmentación de los datos en función de una escala temporal o de sus características respecto del tiempo. En la búsqueda de distintas posibilidades de representación, en los sistemas que necesitan presentar grandes cantidades de datos, siempre se intenta segmentarlos mediante una o varias variables: uso de jerarquías, segmentación por características, por temporalidad, etc. La segmentación de datos hace que estos puedan presentarse de diversas formas: a través de resúmenes que aglutinan las características generales de los datos, o a través del acceso a subvistas o visualizaciones en detalle que presentan una serie de características ocultas en las vistas resumen. La idea de la segmentación de datos y la visualización de información con características temporales se ha aplicado de forma satisfactoria desde hace mucho tiempo para la representación de datos. Estas visualizaciones aplican una serie de principios y tienen en cuenta las características propias de los datos que varían sus valores o incluso sus atributos en función del momento de tiempo al que hacen referencia. Por ello, cuando se plantea una visualización de datos fundamentada o con características que atañen al tiempo, para que esta esté bien diseñada y realice de forma adecuada su función, es necesario seguir una serie de guías o acudir a diversos autores que presentan las necesidades y posibilidades que ofrecen este tipo de representaciones. Una visualización bien diseñada para la representación de datos de tipo temporal, según MacEachren [67], debe ser capaz de responder una serie de preguntas sobre los datos que presenta: ¿Existe el elemento al que hacen referencia los datos en un momento puntual concreto? (Existencia de una instancia de los datos) ¿Cuándo existe el sujeto determinado por los datos temporales? ¿Siempre? ¿En un contexto cíclico? (Localización temporal) ¿Durante cuánto tiempo se abarca el elemento? ¿Cuándo es su inicio y cuándo su final? (Intervalo temporal) 40

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

¿Con qué frecuencia temporal aparecen elementos en los datos? (Textura temporal) ¿Qué velocidad se aprecia en los cambios? ¿Cuánto cambian los datos a lo largo del tiempo? (Tasa de cambios) ¿En qué órden aparecen/desaparecen datos? (Secuencia de cambios) ¿Hay instancias de datos que cambian o existen de forma conjunta? (Sincronización) En la visualización de datos dependientes del momento temporal, autores como Müller [73], sostienen que es posible distinguir dos tipos de representación de la dependencia temporal: La representación visual no cambia en función del tiempo: Los datos sí cambian en la escala temporal, pero la visualización no se modifica en función de ninguna escala temporal, sino que muestra de forma estática la evolución de los datos en el tiempo 15. Como principales beneficios y defectos de este tipo de visualizaciones se pueden citar los siguientes: Permiten concluir valoraciones cuantitativas. A través de la muestra de todos los datos cuantitativos del sistema que se evalúe, el observador es capaz de formar una serie de conclusiones apoyándose en la visión general de la secuencia de datos en el tiempo. La representación tiene limitaciones temporales. No es posible abarcar en una sola visualización o representación todo el tiempo que se desee, sino que debido al carácter estático de la visualización es necesario conocer y fijar el rango temporal que se va a mostrar. La representación visual varía en el tiempo: La visualización cambia de forma dinámica en función de la temporalidad de los datos, mostrando en cada momento del tiempo, y en función de lo que se seleccione, lo que se desee observar. En este tipo de visualizaciones se suelen plantear de dos formas: La visualización varía en función de los input recogido de un usuario. El analista u observador dispone de herramientas en el software para controlar la variable Tiempo de la visualización. La visualización cambia de forma totalmente dinámica en función de los cambios en tiempo real que se producen en los datos. Mediante una serie de algoritmos y procesado de los datos que llegan a la visualización, esta cambia, se modifica y se adapta a ellos para mostrar en cada momento lo que ocurre.

4.3.

Estudio de visualizaciones de datos aplicadas a Mundos Virtuales

Los Mundos Virtuales, sean de Aprendizaje o no, tienen una característica clave: son espacios 3D creados para la interacción de usuarios, ya sea entre ellos o con el Trabajo Fin de Máster, Máster en Sistemas Inteligentes

41

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

Figura 15: Mapa figurativo de las pérdidas humanas del ejército francés durante la campaña rusa de 1812-1813. Charles Joseph Minard.

Mundo Virtual, es decir, son plataformas software que sustentan sus objetivos de uso en una serie de relaciones y características sociales de los individuos que las utilizan. Por ejemplo, la principal diferencia entre un entorno 3D y otro entorno de aprendizaje como puede ser un LMS (Learning Management System) o un CMS (Content Management System) es que en los Mundos Virtuales podemos comprender aspectos de comportamiento con el entorno a través del registro de los movimientos y las conversaciones habladas/escritas que necesariamente se producen dentro de un entorno inmersivo de este tipo [82]. Por ello, tradicionalmente, las visualizaciones asociadas a los Mundos Virtuales se basan en estas relaciones y características sociales como forma de representación de conocimiento y sucesos que tienen lugar en el entorno virtual, son las llamadas Visualizaciones Sociales o de tipo social. También se pueden dar visualizaciones sobre otras muchas características, incluso las que son comunes a cualquier sistema informático de usuarios (login, logout, etc.) o en los distintos sistemas de aprendizaje (lecturas o revisiones de archivos, tiempos de acceso, etc.). Las visualizaciones de tipo social presentan datos sobre las personas, revelan relaciones entre los individuos o simplemente nos dan una idea sobre la actividad de un grupo de usuarios[27]. Hay diversos métodos de visualizaciones sociales, por ejemplo visualizaciones sobre líneas de vida o variaciones en el comportamiento en los movimientos en el espacio, usados para mostrar migraciones, trayectorias o transiciones [77]; también existen visualizaciones sobre grandes conjuntos de conversaciones en diversos entornos multi-usuario [81] o las visualizaciones acerca de los clic o usos de determinados recursos en las plataformas online [56] Por el tipo de datos que expresan y el conocimiento que pueden ayudar a descubrir se suelen usar mucho en los Mundos Virtuales. Como ejemplo se van a citar 42

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

varias de este tipo en las siguientes secciones 4.3.1 y 4.3.2: 4.3.1.

Visualizaciones de datos sobre el espacio virtual

En [28] se presenta un sistema llamado WorldMapper destinado a visualizar interactivamente un conjunto de datos extraídos de un Mundo Virtual de tal modo que este conjunto pueda ser analizado. Dentro de la colección de datos que se usa en el sistema de visualización se encuentran algunos como fechas de construcción de objetos, constructores de los mismos, posiciones, etc. así como información acerca de los teleport o movimientos de los usuarios dentro del entorno tridimensional. En la figura 16 se puede ver la representación en 2D del Mundo Virtual del que se extraen los datos. En esta figura se observa la distribución de distintos espacios virtuales, las zonas de visualización de recursos (webs), los lugares donde se han realizado teleports, etc.

Figura 16: Mapa del espacio virtual usado [28] La figura 16 es una captura de pantalla de un sistema de visualización que desarrollaron los autores Börner, Hazlewood y Lin, en el cual a través de clics en los distintos elementos que aparecen, el usuario recibe información relacionada. A través de ese mapeado del entorno, la persona que use la visualización puede percibir conocimiento y responder una serie de preguntas como: ¿Cuántas residencias de estudiantes existen?, ¿Qué estudiantes tienen residencia?, etc.

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

43

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

En la siguiente figura (17) se observa como usan ese sistema que representa una conversión o mapeo del entorno tridimensional en un sistema 2D con el objetivo de usarlo como base para representar los movimientos de varios grupos de usuarios en el Mundo Virtual, y poder segmentar la visualización en función de características temporales. Concretamente, la figura 17 representa los rastros o caminos navegacionales que corresponen a los equipos: 2 (usuarios 05-08), 3 (usuarios 09-12) y equipo 4 (usuarios 13-16) durante una actividad de búsqueda de tesoro o descubrimiento dentro del Mundo Virtual, en esta actividad a los usuarios se les plantea seguir una serie de pistas y resolver varias cuestiones a través de los hallazgos que realicen.

Figura 17: Visualización espacio-temporal del movimiento de tres grupos de usuarios en un entorno virtual[28] Para evaluar la resolución de la actividad o simplemente por observar los eventos que ocurren durante la ejecución, el sistema guarda los datos en los movimientos, además de otros relacionados con los eventos de chat, etc. para que más tarde sean representados mediante una visualización y sirvan como objeto de anáisis. En la 44

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

visualización que se plantea con estos datos, presenta los mapas del Mundo Virtual y los movimientos de los usuarios en él. Estos caminos se representan cada 15 minutos, de modo que se obtienen imágenes de los caminos en los minutos 15, 30, 45, y 60. Además de este reconocimiento de las rutas elegidas por los grupos, durante el tiempo de la práctica, se hizo un registro de la actividad en el chat. A través de este conocimiento de la actividad del chat, fue posible completar la información obtenida mediante el registro de los movimientos de los usuarios, de tal modo que combinando los dos registros se conocieron, aparte de las decisiones de movimientos en el espacio, la fundamentación y los razonamientos que hicieron los usuarios en la toma de decisiones de la práctica. Como continuación de este estudio, los autores Börner y Penumarthy plantean la necesidad de poder conjugar dentro de la misma visualización la información tanto de los recorridos realizados por grupos de usuarios, como de los usuarios individuales que componen estos mismos grupos, para poder conocer además de los patrones de uso de grupos de usuarios, las desviaciones en las decisiones o comportamientos que se pueden dar dentro de ellos por sus miembros.

Figura 18: Visualización espacio-temporal de los recorridos de usuarios o grupos de usuarios en un Mundo Virtual[29] Como se observa, el sistema que genera la visualización, obtiene los recorridos segmentados por usuarios y es capaz de representarlos por separado. En esta visualización segmentada por usuarios (en la parte izquierda de la imagen), la característica temporal se representa mediante la transparencia u opacidad de las marcas o items que se reflejan en el mapa del Mundo Virtual, siendo los más opacos los eventos o recorridos que se han producido antes, y los más transparentes los que se han producido en un tiempo más cercano al momento de la visualización. En la parte derecha de la figura, se observa cómo los autores presentan la información de los recorridos agrupando las líneas de los movimientos individuales. Esta Trabajo Fin de Máster, Máster en Sistemas Inteligentes

45

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

agrupación viene dada mediante la distancia entre los movimientos más alejados en cada cuadrícula, de modo que se toman estos como extremos y se colorea el área interior que resulta; mediante esta agrupación y representación mediante área de movimiento, los autores son capaces de expresar en cada cuadrícula o segmento de movimiento, la cantidad máxima de dispersión existente en estos caminos seguidos por los usuarios que componen un grupo. En el caso de esta visualización, no se aplica la diferencia de opacidad o transparencia en la representación de movimientos por grupos, aunque sí se sigue manteniendo en el uso de objetos o interacción con espacios o edificios 3D. Como crítica a esta visualización, se puede señalar que en la representación de grupos, se pierde la variable temporal, ya que se observa el uso temporal del entorno, pero no se observa la diferencia en el movimiento de los grupos a lo largo del tiempo de sesión o uso del Mundo Virtual. En este mismo estudio ([29]) se plantea además la posibilidad de conjugar las visualizaciones de los entornos mediante mapas 2D con una serie de gráficas que expresen la actividad en el Mundo Virtual en cuanto a eventos de clics, comunicaciones mediante chat, o número de usuarios conectados simultáneamente.

Figura 19: Gráficas temporales de eventos en un Mundo Virtual[29] Otros autores como Darken y Sibert [42] proponen, dentro de sus trabajos relacionados con el diseño de entornos virtuales que favorezcan la exploración del Mundo Virtual 3D, ciertas métricas de evaluación sobre las zonas que visitan o no visitan los usuarios, demostrando así que porcentaje de la superficie de los mapas virtuales son visitados, y que posibles zonas de barrido o exploración son habituales. Por ejemplo, en la figura 20 se observa un terreno completo donde se realiza una codificación por colores de modo que se observa, cuál es la zona de tierra que existe en esta región (en color amarillo), qué zonas han sido visitadas o exploradas por los usuarios (color rojo), y qué zonas no han sido holladas por los usuarios (color azul). Sobre esta visualización, sólo con la codificación por colores y la forma que tienen los patrones, podemos inducir varias propiedades: 46

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

Figura 20: Visualización de zonas visitadas/no visitadas en un entorno virtual [42]

1. Los usuarios suelen moverse en una zona que se corresponde con menos del 50 % de la superficie de la región, por lo tanto esto puede darse por dos motivos: Que los usuarios se puedan encontrar algún tipo de obstáculo o zona mal diseñada que impida la correcta exploración de la zona. Que se deba a una mala señalización de las distintas opciones o espacios que ofrece el terreno. Que las zonas de actividad principal (zonas de encuentro, edificios o salas destinadas a prácticas o recursos educativos) estén dentro de esta zona explorada, por lo que a los usuarios no les sea necesario ir más allá o explorar el terreno.

2. La zona explorada por los usuarios comprende una zona bien definida, no demasiado caótica. Relacionado con los conceptos expuestos entre las razones de porqué no se visitaban las zonas, es posible que sólo se explore la zona de esa forma debido a que las actividades, recursos y lugares principales estén disponibles en ella, y el resto del terreno no disponga de espacios de relevancia.

En cualquier caso, esta vista es descriptiva en cuanto al uso o recorrido de la zona tridimensional, pero es posible que mejore incluyendo algunas características de las que proponen Börner y Penumarthy en los estudios revisados anteriormente, como el hecho de mostrar la isla y sobre ella dibujar los movimientos o la zona cubierta por los usuarios, así como poder hacer distinción visual entre los distintos tipos de usuarios o grupos que recorren el espacio o añadir atributos temporales a este análisis de uso. Trabajo Fin de Máster, Máster en Sistemas Inteligentes

47

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

4.3.2.

Visualizaciones de datos sobre expresiones y usos de Chat

En los Mundos Virtuales, uno de los análisis que más se suele realizar es el de las comunicaciones internas que se producen, generalmente por medios escritos (chat), como ocasionalmente en los canales de voz existentes. En [27] los autores Börner y Lin especifican un sistema de análisis visual de las comunicaciones que se producen en un Mundo Virtual de Aprendizaje, con el objetivo de reconocer varias cuestiones: 1. ¿Cuántos usuarios participan en las discusiones del grupo? 2. ¿Cuántas coinciden las conversaciones entre los distintos grupos? 3. ¿Qué usuarios son los que más usan el chat y cuáles menos? 4. ¿Qué proporción de mensajes se usa para explicar, hacer preguntas, resolver dudas de compañeros, etc.? 5. Otras características de la comunicación, como longitud de las frases, el tono de las conversaciones (en este tipo de chats suele haber opciones de susurro, gritar, etc.).

Figura 21: Palabras únicas y duplicadas en el chat por cada usuario[27] 48

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

En el caso de estudio que presentan los autores, parten de una base de 32 usuarios de los cuales recogen los datos de comunicación. En primer término del análisis, plantean una visualización (figura 21) acerca de las palabras únicas o repetidas en función de los datos recogidos de cada usuario. En el eje X de la figura 21 se representan los distintos usuarios que existen, indicando además su nombre, mientras que el eje Y se representa el número de expresiones únicas (en color rojo) frente al número de expresiones o palabras duplicadas o repetidas (en color gris). Además se observan unos puntos azules encima de alguna de las barras que representan a los usuarios. Estos puntos indican los usuarios de los que disponemos la información de chat completa (puede ser que en varios casos falten ciertos datos del chat, o no se hayan monitorizado todas las conversaciones). De acuerdo a esta figura, se podría deducir que existen siete usuarios que han participado de forma más activa en la discusión, con más de 25 palabras o expresiones cada uno mientras que otros casi no han participado.

Figura 22: Número, longitud y tipo de las expresiones o palabras únicas en el chat [27] En la segunda visualización que proponen los autores en este artículo [27], tal y como se muestra en la figura 22, proponen un sistema donde el usuario que acceda a Trabajo Fin de Máster, Máster en Sistemas Inteligentes

49

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

la visualización pueda comprender de forma clara el número, longitud y tipo de las expresiones únicas (las coloreadas en rojo en la figura 21), y de esta forma mostrar de manera sencilla el tipo de conversaciones y el tono. Todos los rectángulos que aparecen especificando cada expresión tienen la misma altura, por lo que, a diferencia de la visualización presentada antes (figura 21) esta característica de altura no tiene relevancia. Sin embargo, lo que sí tiene relevancia es el ancho de cada rectángulo. El ancho representa el número de expresiones interesantes o no interesantes del tipo (categoría de expresión) que representa. Algunas de las expresiones se representan mediante un óvalo, esto indica que la expresión fue susurrada (por lo tanto las representadas de forma rectangular corresponden a un tono normal de expresión). En este caso nos encontramos ante una clasificación fundamentalmente por color, a través del cual se representan cinco tipos de categorías que se han definido en la clasificación que hacen los autores.

50

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

5.

Caso de Estudio: HEBATT. Visualización de movimientos entre regiones en el Mundo Virtual de Aprendizaje y Prácticas USALSIM

En los siguientes apartados de detallan todos los detalles asociados a la visualización propuesta para la representación visual de los movimientos entre regiones en un Mundo Virtual de Aprendizaje y Prácticas. Esta visualización, llamada Hierarchical Edge Bundles Applied to Teleport Tracking (HEBBAT ) se basa en los conceptos anteriormente estudiados en la sección 4, Visualización de Información. Esta descripción acerca de la visualización propuesta abarcan desde qué Mundo Virtual se usa para la extracción de datos, qué aspectos técnicos se han usado en la creación del prototipo que se presenta, información acerca de la extracción de datos y la generación de datos ficticios, así como qué tratamiento se ha hecho sobre los datos, para finalmente explicar detalladamente todos los aspectos relacionados con la visualización de esta información.

5.1.

Sobre el Mundo Virtual usado para la recuperación de datos: USALSIM

“El proyecto USALSIM nace como respuesta a los cambios producidos en prácticas externas a raíz de la nueva ordenación académica del Espacio Europeo de Educación Superior. El incremento del número de estudiantes que participarán en los diferentes programas de práctica y el mayor número de empresas e instituciones necesarias para acogerles y formarles, cambiarán las relaciones universidad – empresas y nos obligará a buscar nuevas vías de colaboración que faciliten la empleabilidad de los estudiantes universitarios. USALSIM es un proyecto financiado por el Ministerio de Educación Cultura y Deporte en el marco del Programa de Atención Integral y Empleabilidad de los Estudiantes Universitarios y creado y desarrollado por el Servicio de Inserción Profesional Prácticas y Empleo de la Universidad de Salamanca. Este proyecto crea un entorno virtual 3D (un simulador de prácticas) que nos permite desarrollar una realidad virtual del mundo profesional a través de diferentes puestos y situaciones cotidianas en las empresas y a través de actividades de aprendizaje activo. Se centra en una pedagogía constructiva donde el estudiante se implica directamente en su desarrollo formativo, estableciendo relaciones profesionales, desarrollando competencias transversales y técnicas y autoevaluando sus conocimientos.” [76]. De forma resumida se puede decir que USALSIM es un Mundo Virtual en 3D donde se replican puestos, tareas y relaciones profesionales, favoreciendo al estudiante en su formación práctica y su inserción profesional futura. Este entorno virtual Trabajo Fin de Máster, Máster en Sistemas Inteligentes

51

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

ofrece: Prácticas de Empresa Prácticas de asignaturas (prácticas de aprendizaje) Clases Virtuales Tutorías con profesores Tutorías de Autoempleo Otras actividades profesionales o docentes que exijan un espacio físico no disponible en el mundo real. Desde un el punto de vista práctico, USALSIM es un Mundo Virtual de Aprendiaje y Prácticas implementado mediante la plataforma OpenSim. USALSIM comprende actualmente siete islas o regiones, cada una destinada a diversos cometidos bien diferenciados. Las islas son: USAL SIPPE (isla del Servicio de Inserción Profesional, Prácticas y Empleo), USALPHARMA (isla del área de conocimiento de Farmacia), USAL LAW (isla del área de conocimiento de Derecho), USALBIO (isla del área de conocimiento Biología y Biotecnología), USAL HUMAN STUDIES (isla del área de conocimiento de Humanidades), USAL Q (isla del área de conocimiento de Química e Ingeniería Química) y Animal Recovery Center (isla dedicada a prácticas profesionales de biología) [17]. En cada una de estas islas, como se indica se realizan actividades aprendizaje y prácticas, en cada actividad se organizan grupos de usuarios que disponen de una serie de recursos 3D organizados dentro del entorno virtual para realizar las tareas que se le hayan asignado (figura 23).

Figura 23: Vista aérea de una isla del Mundo Virtual USALSIM

52

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

5.2.

Aspectos Técnicos

En lo referente a la implementación y desarrollo de las visualizaciones y herramientas asociadas al proceso de recopilación, generación y tratamiento de información, se ha hecho uso de varios lenguajes de programación y programas software, que se comentan a continuación: Para la recopilación, procesado y compactación de los datos se ha empleado el lenguaje de programación Python [11], el cual es un lenguaje de licencia libre, y gratuito para usarlo en cualquier tipo de desarrollo, incluso en aquellos con carácter comercial. Python, según la descripción que aparece en su web es un lenguaje que permite trabajar más rápidamente e integrar la producción en sistemas con mayor efectividad. Ciertamente, uno de los beneficios más conocidos de este lenguaje es la sencillez de su sintaxis, y la obligatoriedad de una buena organización del código para que pueda ser ejecutado, lo que facilita la lectura y comprensión del software; el otro gran beneficio, y más conocido aún que el anterior, es su velocidad de ejecución y rendimiento, superior en muchas ocasiones a otros lenguajes de programación modernos. Python además es un lenguaje de carácter multiplataforma, funciona en diferentes Sistemas Operativos, como Windows, Linux/Unix, Mac OS X, e incluso en máquinas virtuales como las de Java y .Net. Como entorno de desarrollo para Python se ha usado un simple editor de texto con resaltado de sintaxis de código llamado TextWrangler [15], que permite realizar un desarrollo rápido gracias al resaltado de sintaxis y a que incorpora bastantes herramientas para la edición y maquetación de texto de forma sencilla. La ejecución del código Python se ha hecho mediante la terminal de comandos de Mac OS X, conocida como Terminal. Para la extracción de conocimiento de los datos a través de procesos de Minería de Datos, se ha hecho uso del programa software conocido como Weka [20]. Weka es una herramienta software desarrollada por la Universidad de Waikato (Nueva Zelanda) que incluye multitud de algoritmos y herramientas de procesado de datos para realizar operaciones de Minería de Datos. Weka cuenta con una API de programación para el lenguaje de programación Java. Sobre esta API hay multitud de wrapers para otros lenguajes de programación, en el caso de Python, esta API de Weka se puede usar mediante el wraper de Java para Python, Jython. En cuanto al desarrollo de la interfaz y visualización propuestas en este Trabajo de Fin de Máster, se ha hecho uso del lenguaje de programación Processing [3]. Processing es un lenguaje open source que permite crear programas interactivos, muy usado para la implementación de software con una fuerte carga visual, y que permite su ejecución en distintos Sistemas Operativos como Windows, GNU/Linux o Mac OS X. Processing surge en 2001 como una supercapa de visualización del lenguaje Java y como herramienta para enseñar programación visual a personas con pocos conocimientos de programación. Con el tiempo cada vez se desacopló cada vez más de Java hasta ser considerado como un lenguaje de programación independiente, Trabajo Fin de Máster, Máster en Sistemas Inteligentes

53

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

aunque hereda y puede usar muchas características de Java. Como entorno de desarrollo del código en este lenguaje se ha hecho uso del IDE oficial (conocido también como Processing), aunque también se puede hacer uso de entornos de desarrollo integrados más extendidos como Eclipse.

5.3.

Extracción de Datos

Para poder generar una visualización sobre los datos de teleports o teletransportes de los usuarios dentro de este Mundo Virtual, es necesario recuperar los datos que resulten relevantes en la descripción de movimientos entre territorios. Como se comentó en la sección 3.2 (Extracción de Datos de un Mundo Virtual ), dentro de la arquitectura de un servidor OpenSim, hay diversas fuentes de datos disponibles, y es necesario conocer qué datos se almacenan en cada una, para poder aislar los focos de datos y plantear una recuperación de información adecuada. Es necesario tener en cuenta, que aparte de los datos concretos de los teletransportes, es necesario recabar información acerca de las regiones que componen el Mundo Virtual, y los usuarios que existen en el sistema. Aquí se planteaba un problema, según la funcionalidad del entorno virtual de aprendizaje y prácticas, en cada región o territorio, se incluyen una serie de grupos o conjuntos de usuarios, los cuales identifican qué usuarios realizan determinadas prácticas o actividades que se implementan en cada región, y era necesario plantear cómo incluir esa relación de la jerarquía abstracta de los datos del sistema. Poder conocer además de qué usuarios se mueven entre regiones, cómo es el comportamiento de cada grupo de usuarios en cuanto a los movimientos en espacio supone una nueva variable de análisis, por lo cual era necesario incluirlo en la visualización. De esta forma, los datos que finalmente son recogidos para mostrarse en la visualización son los referentes a las Regiones, Grupos de Usuarios y Usuarios del Mundo Virtual. Si estos datos que se recogen del Mundo Virtual tuviesen que ser expresados mediante un diagrama de clases o algún tipo de esquema similar, se podría decir que tienen una estructura como la que se muestra en la figura 24. Este esquema expresa que existe una clase de datos que define las Regiones del Mundo Virtual, en esa región pueden agruparse distintos grupos de usuarios, con un mínimo de un grupo por isla y sin límite inicial. De la misma forma, un grupo de usuarios está compuesto por usuarios, con un mínimo de un usuario por grupo, y sin fijar un máximo. La relación de estas clases con la clase Teleport viene dada porque con cada instancia de la clase Teleport, se relacionan dos y sólo dos regiones: una de entrada donde llegan los usuarios y otra de salida de dónde parten los usuarios (se excluyen los errores en los teleport, que podrían tener sólo una región, la de salida y no llegarían a ninguna); a cada región le pueden pertenecer desde 0 a ‘n’teleports, en función del movimiento de entrada o salida que tengan los usuarios respecto de esa región. 54

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

En cuanto a la relación de la clase Teleport con los Usuarios, cabe reseñar que una instancia de Teleport sólo tiene relación con un Usuario, ya que el mismo teleport único no puede influir a más de un usuario. Sin embargo un usuario puede realizar muchos teleport a lo largo de su interacción con el Mundo Virtual.

Figura 24: Diagrama de clases que expresa las relaciones en los datos correspondientes a Regiones Virtuales, Grupos de usuarios, Usuarios y Teleports En el caso de un servidor OpenSim que funcione bajo una arquitectura grid, como es USALSIM, los datos que se necesita recolectar, tanto de movimientos, como de información de regiones, grupos de usuarios y los mismos usuarios se encuentran alojados en distintas fuentes de datos. Por una parte, la información referente a las regiones, grupos y usuarios se puede recuperar de la base de datos que sustenta la estructura de datos fundamental del Mundo Virtual, por lo cual, dentro de los script programados mediante Python para la recuperación de datos es necesario incluir un apartado de código que recupere la información de estas tablas (regions, groups y users) de la base de datos. Por otra parte, la información sobre los movimientos entre regiones (teletransportes o teleports), es almacenada en OpenSim dentro de los ficheros log de los servidores que componen el grid (Robust.log y OpenSim.log). Por lo tanto es necesario que los script de recuperación de información recorran los ficheros log y extraigan la información de cada teleport registrado en el uso del Mundo Virtual.

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

55

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

Una vez recogidos los datos y almacenados en listas de objetos en los script, es necesario guardar de forma persistente los datos recuperados. Los datos se almacenan en función de su tipo en dos tipos de archivos:

1. Archivos json: En los ficheros json [1] se guardará toda la información que se extraiga o genere del modelo de datos del Mundo Virtual. Las razones del uso de este tipo de ficheros para almacenar los datos, son la sencillez de su sintaxis [2] y su integración con muchos sistemas (sobre todo web, aunque Processing desde su versión 2.0, lo admite de forma nativa como archivo de entrada de datos). El formato que se ha usado en este tipo de archivos es el correspondiente al de una lista (array) de objetos, y que tiene el siguiente aspecto: [ { "variable1": "valorVariable1", "variable2": "valorVariable2", . . . }, { "variable1": "valorVariable1", "variable2": "valorVariable2", . . . } ]

Los archivos json que se generan en la recuperación de datos son 5: uno para la información sobre las regiones, otro para los datos de los usuarios, uno con todo el listado de teleports, y dos más que contienen las reglas de movimientos que se obtienen después del procesado de los datos mediante minería de datos. 2. Archivos arff : Los ficheros arff son aquellos que utiliza como entrada de datos el programa usado para realizar los procesos de minería de datos Weka. En fichero arff sólo se guardarán los datos concretos de los teleport, ya que el resto de datos que se obtienen en el proceso de recuperación están incluidos dentro de los array de teleports. Un archivo arff tiene un formato bien definido [18] [19] , y tiene un aspecto similar a este: @RELATION nombreRelacion @ATTRIBUTE nombreAtributo1 NUMERIC . . . @ATTRIBUTE nombreClase {valorDeClase1, valorDeClase2, ...} @DATA valorAtributo1,...,valorDeClase valorAtributo1,...,valorDeClase

56

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

5.3.1.

Análisis de los datos proporcionados por el Mundo Virtual USALSIM

Como se ha comentado en la sección anterior 5.1, los datos de los que se disponían como base para el caso de uso corresponden a un Mundo Virtual de Aprendizaje y Prácticas desarrollado durante 2012 y principios de 2013 en la Universidad de Salamanca y conocido como USALSIM. Una vez ejecutados los script programados para la extracción de los eventos, se observa que los datos presentes en los ficheros usados, corresponden a una periodo de tiempo aproximadamente de nueve meses de desarrollo de la herramienta, de los cuales, 3 meses de ellos fueron empleados para pruebas y correcciones. Se conoce también que el número de usuarios que han participado en el Mundo Virtual ha sido de 176 usuarios. El uso del entorno 3D por parte de esta cantidad de usuarios durante el tiempo que se comenta, se traduce en que la cantidad de datos (expresados en líneas de texto en el archivo), en el caso de Robust.log fue de 99.103 líneas, y en el caso del archivo OpenSim.log, fue de 2.003.166 líneas. Esta es la cantidad de datos en bruto, que se ha empleado dentro del procesado para usar los datos específicos necesarios en la visualización. En estos datos extraídos del Mundo Virtual se han encontrado: Número de Regiones: 7 Número de Grupos: 20 Número de Usuarios: 176 Número de Teleports: 158 Este número de usuarios y eventos de teleport servían como modelo de datos inicial y conjunto de pruebas, pero no como para considerarlo una cantidad de datos suficiente para usarlos en un proyecto que pretende desarrollar visualizaciones sobre grandes conjuntos de datos de un entorno virtual. Por ello se abrían dos posibles soluciones: conseguir datos de un entorno virtual similar, o generar información ficticia a partir de este modelo de datos extraído de USALSIM. En primer lugar se contactó con el Mundo Virtual más importante construido con OpenSim: OSgrid [9], el cual cuenta con más de 90.000 usuarios registrados, más de 10.000 regiones, etc. Desafortunadamente los responsables de este entorno virtual nunca tuvieron a bien devolver los correos electrónicos que les fueron enviados, por lo que hubo que abandonar esta vía. Por eso, se recurrió a generar los datos de usuarios y teleports de forma ficticia, como se comenta en el siguiente apartado 5.4. Trabajo Fin de Máster, Máster en Sistemas Inteligentes

57

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

5.4.

Generación de datos ficticios

Como se ha explicado, la generación de información ficticia ha sido necesaria debido a que el modelo real de datos proporcionaba un número escaso de registros respecto de las cantidades que se pretendían manejar. En cualquier caso, la generación de datos ficticios no es una cuestión trivial, ya que deben respetar el modelo de datos real (estructura de los datos), y conseguir una cierta coherencia o distribución que permita que tengan una utilidad y no sean un mero conjunto enorme de relaciones sin sentido, cosa que no tendría ninguna utilidad de cara a usarlos en una visualización orientada a la adquisición de conocimiento respecto de un problema. Partiendo de estas premisas de uso de la estructura del modelo real de datos y generar un conjunto coherente, se han seguido dos estrategias distintas de generación de información: 1. Estrategia basada en la generación de nuevos datos de teleports respetando el conjunto inicial de regiones, grupos y usuarios: En esta estrategia de generación de información, se ha usado la distribución sesionesteleports del caso real, de tal forma que partiendo de las regiones, grupos de usuarios y número de usuarios del modelo real de datos, se han generado números aleatorios de teleports en cada sesión que había existido en el Mundo Virtual, de este modo se respeta la característica observada en los datos de que a mayor número de sesiones, mayor número de teleports ha tenido el usuario a lo largo del tiempo. El algoritmo que se aplica en este caso es el siguiente: for x in listSesion: nTeleports=randint(0,n) #n es el número máximo de teleports que puede existir en una sesión i=0 while i < nTeleports: if nTeleports>0: if tiempoSesion > nSegundos: #nSegundos es el número mínimo de segundos que se aceptan para generar #teleports en una sesión, si no supone que no ha dado tiempo a cambiar de región.

# a partir de las fechas y horarios de la sesión, se determina un momento temporal # en el que "ocurre el teleport" generarFechaTeleport() p = Teleport(datosTeleport) #se crea un objeto de la clase Teleport con los datos recuperados y calculados listTeleports.append(p) #se añade el objeto a la lista de Teleports #Esta lista de objetos se volcará después a un archivo json o arff i = i+1

2. Estrategia de generación de una mayor cantidad de usuarios y teleports: A partir del modelo real, se crea un conjunto mayor de usuarios, cuya cantidad se puede modificar en el momento de la ejecución. Sobre este nuevo conjunto de usuarios (los reales más los creados mediante los scripts), se crea 58

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

un conjunto de sesiones de conexión al mundo virtual, las cuales están situadas temporalmente entre el 1 de enero de 2012 y el 31 de junio de 2013. Después, y de igual modo que en el caso de la estrategia de generación de teleports, sobre ese conjunto de sesiones creadas aleatoriamente, se genera un conjunto aleatorio de teleports, calculando un número aleatorio de la cantidad de teleports que se pueden realizar en cada sesión. Este método de generación de teleports funciona de forma distinta al del caso anterior, ya que en el otro, se ampliaba el número de teleports sin crear más sesiones, lo cual se fundamentaba en un factor que multiplicaba el número de sesiones de cada usuario por un máximo de teleports posibles. Sin embargo en este, al generar un número de sesiones por usuario de forma aleatoria, calcula un número entre 0 y 5 posibles teleport por cada sesión creada. Además en este caso, para conseguir un mayor factor de aleatoriedad, se genera una variable aleatoria entre 0 y 15, si la variable aleatoria supera el número 10 (30 % de probabilidad), se considera que en esa sesión se van a producir teleports, y se pasa a su cálculo. Código de generación de usuarios: i=1 while i 0: # Si el tiempo de sesión supera los 20 segundos, se acepta que se producen movimientos if float(x.tSesion) > 20: # Se recupera el ID del usuario del que está asociado a la sesión sobre la que trabajamos idUsuario = x.idUsuario # A partir de las fechas y horarios de la sesión, se determina un momento temporal # en el que "ocurre el teleport" generarFechaTeleport() # Se asigna de forma aleatoria la región de origen y la de destino del teleport, # a través de la recuperación aleatoria de alguna que aparezca en la lista de teleports # (que cada vez es mayor y ofrece más combinaciones) # Como se observa, no se comprueba que la región origen y destino del teleport coincidan # ya que en el modelo original de datos es un evento que ocurre. origenTeleport=listTeleports[randint(0,len(listTeleports)-1)].origenTeleport destinoTeleport=listTeleports[randint(0,len(listTeleports)-1)].destinoTeleport # Finalmente se crea un objeto Teleport con los datos asignados y se añade # a la lista total de teleports. p = Teleport(idUsuario, fechaInicio, horaInicio, origenTeleport, destinoTeleport) listTeleports.append(p)

60

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

i = i+1

Una vez calculados los datos ficticios a través de cualquiera de los métodos, estos se almacenan en archivos json y arff, como se comentó en el apartado 5.3, para su uso posterior, ya sea en actividades de minería de datos o en la propia visualización.

5.5.

Tratamiento de Datos

Como se comentó en las secciones 3.3 y 4.1.1, la mejor garantía de éxito en un sistema que intente expresar conocimiento del cualquier modo (visual, textual, etc.) se basa en el usod de datos de buena calidad, y preparados de la mejor manera posible, de unos datos que sean aprovechados al máximo para poder extraer de ellos todo el conocimiento e información relevante posible. En este proyecto de investigación, este aprovechamiento de datos se ha llevado a cabo a través de dos tipos de procesado distintos: por una parte las técnicas tradicionales (composición de estructuras de datos, algoritmos estadísticos básicos, etc.), por otro el procesado de datos para extraer conocimiento a través de la Minería de Datos. En la sección 5.3 ya se comentaron los distintos aspectos a tener en cuenta en cuanto al tratamiento y preparación de datos en cuanto a la estructura y relaciones presentes en la información extraída del Mundo Virtual. En el siguiente apartado se pasa a comentar las técnicas y procesado de datos mediante la Minería de Datos. 5.5.1.

Minería de Datos aplicada a Información sobre Teleports

Como se comentó a lo largo de la sección 3, es posible establecer una relación entre los conceptos de la Minería de Uso Web, Descubrimiento de Conocimiento (KD) y el uso de Mundos Virtuales. Como se observa en la imagen 4, después de la recuperación de datos existen dos pasos fundamentales para el Descubrimiento de Conocimiento, estas dos etapas son la aplicación de algoritmos de Minería, y el análisis de Patrones que se obtienen como resultado de esa aplicación de algoritmos de minería de datos. En este trabajo estas dos etapas se encuentran muy diferenciadas, como ya se ha comentado en los aspectos técnicos (5.2), la fase de aplicación de algoritmos de minería se realizará mediante el uso del software Weka. Por otra parte el proceso de análisis de patrones e información recogida mediante la minería de datos, se realizará mediante el uso de la visualización propuesta (apartado 5.6). Como se comentó también en el apartado de Extracción de Datos (5.3), los datos referentes a los teleport que se extraen de los ficheros de log o se generan a través de los scripts propuestos, se almacenan tanto en archivos de tipo json como en archivos arff. Como se indicaba, estos ficheros arff se utilizan en el software Weka, por lo que Trabajo Fin de Máster, Máster en Sistemas Inteligentes

61

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

Figura 25: Vista de la aplicación Weka al abrir un archivo arff con información de Teleports en esta sección se explicará qué algoritmos concretos de Minería de Datos se han utilizado y cómo se han aplicado mediante este software. Conviene en este momento, antes de avanzar en la explicación sobre la aplicación de los algoritmos, recordar cuáles son los objetivos que se persiguen mediante la aplicación de los algoritmos de Minería de Datos: 1. Encontrar patrones de teleports en los usuarios: Aplicar los algoritmos de Minería de Datos que sean necesarios para conocer el comportamiento de un usuario respecto al movimiento en el espacio virtual. Por ejemplo, ser capaces de responder a través de la aplicación de estos algoritmos qué probabilidad existe de que un usuario realice un teleport a una región concreta, conociendo en qué región se encuentra en un momento dado dicho usuario. 2. Encontrar patrones de teleports entre las regiones: Conocer qué patrones de movimiento se dan entre las distinas islas o regiones. A través de este objetivo se pretende saber qué distribución de teleports existe en función de cada isla, qué probabilidad hay de que cualquier usuario que se encuentre en una isla determinada, se traslade a otra también conocida. Cuando se abre el archivo de datos arff con el programa Weka, en primer lugar aparece una ventana similar a la que se muestra en la figura 25. 62

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

En ella se pueden observar distintos aspectos: en primer lugar, el fichero contiene 37869 instancias de datos, expresadas a través de cinco atributos (CLASE, nombreUsuario, origenTeleport, destinoTeleport y fecha). Como se observa también en esta figura 25, la distribución de instancias en función de la clase muestra que todas las instancias pertenecen a la clase TeleportCompleto, el valor de clase TeleportIncompleto no cuenta con ninguna instancia de datos, como ya se indicó previamente en el caso de este trabajo se han obviado los errores de teleports, aunque a través de estas mismas soluciones propuestas se podrían evaluar.

Figura 26: Vista de la aplicación Weka después de eliminar los atributos CLASE y fecha Atendiendo a los objetivos de descubrimiento de patrones planteados, se puede asumir que hay dos atributos al menos que no nos presentan información de relevancia para el Descubrimiento de Conocimiento, estos atributos son CLASE y fecha, ya que no vamos a realizar ningún tipo de filtrado o algoritmo que implique conocer si el teleport ha tenido un resultado satisfactorio, o en qué momento se ha realizado. Por ello en la vista de atributos que aparece en la parte izquierda de la ventana, se seleccionan estos dos atributos y se eliminan. Después de realizar esta acción de borrado, la vista que nos queda en el software, es similar a la que se observa en la figura 26. En este momento es necesario introducir unos sencillos conceptos teóricos, uno Trabajo Fin de Máster, Máster en Sistemas Inteligentes

63

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

Figura 27: Resultado de la aplicación del algoritmo Predictive Apriori sobre los atributos nombreUsuario, origenTeleport y destinoTeleport sobre qué es un Algoritmo no supervisado y el otro sobre qué son los algoritmos de Reglas de Asociación: Algoritmos no supervisados: Los algoritmos de minería de datos no supervisados, aproximan una proyección de los datos originales a un nuevo espacio de dimensión menor, sin usar la información de los atributos clase, para descubrir relaciones en los datos [60]. Es decir, estos algoritmos se usan fundamentalmente para descubrir patrones y segmentos en los datos. Reglas de asociación: Los algoritmos de Análisis de Asociación o de Reglas de Asociación, buscan establecer relaciones entre los datos individuales o grupos de datos, descubriendo así patrones ocultos a simple vista en los datos [22]. Por lo tanto en el caso del descubrimiento de patrones en los datos se va a hacer uso de algoritmos de asociación. Para ello se accede a la pestaña que aparece en Weka con el nombre Associate. Llegados a este punto, es necesario saber qué algoritmo concreto de los que se disponen se va a utilizar. En el caso de este trabajo, los patrones se van a buscar a través de la aplicación del algoritmo Predictive Apriori, el cual a través de las técnicas de asociación devuelve como resultado un conjunto de reglas (en el caso de Weka en modo texto) en las que relaciona los datos y les otorga una probabilidad de ocurrencia. De esta forma, aplicándolo en el caso del 64

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

descubrimiento de patrones de movimientos de usuarios, este algoritmo devuelve reglas del tipo (en este orden o cualquier otro que exista entre los atributos): Usuario={x} origenTeleport={y} => destinoTeleport={z}, probabilidad={k} Como se observa en la imagen 27, la aplicación de este algoritmo sobre los atributos nombreUsuario, origenTeleport y destinoTeleport, devuelve un conjunto de reglas ordenadas en función de su probabilidad. Como se comentaba en la sección de Extracción de Datos (5.3), estas reglas después se guardarán en ficheros json para su inclusión en la visualización de datos.

Figura 28: Vista de la aplicación Weka con los atributos relevantes en el caso de descubrimiento de patrones entre regiones seleccionados Del mismo modo que en el caso del descubrimiento de reglas en el caso de los patrones de teleport de usuarios, en el caso del descubrimiento de patrones de movimientos entre regiones, es necesario seleccionar qué atributos son necesarios en la aplicación de los algoritmos. Como se observa en la imagen 28, para comprender las relaciones de movimientos entre regiones, el atributo nombreUsuario ya no es necesario, por lo tanto se elimina. Una vez preparados los atributos que serán necesarios en el proceso de aplicación de los algoritmos de minería de datos, se procede de igual forma que en el caso del Trabajo Fin de Máster, Máster en Sistemas Inteligentes

65

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

descubrimiento de patrones incluyendo los datos de usuarios. Se accede a la pestaña de algoritmos de asociación, se selecciona el algoritmo Predictive Apriori y sin modificar los parámetros por defecto, se lanza la ejecución. Como se observa en la figura 29, el resultado incluye de igual forma al comentado anteriormente los atributos implicados en el descubrimiento de patrones, y una serie de reglas ordenadas en función de su probabilidad de ocurrencia. En este caso, las reglas tendrán una estructura como esta:

origenTeleport={x} => destinoTeleport={y}, probabilidad={k}

Figura 29: Vista del resultado de la aplicación del algoritmo Predictive Apriori sobre los atributos origenTeleport y destinoTeleport Una vez realizadas estas operaciones y la operación de guardado de esta información en archivos json, ya se puede considerar terminado el proceso de Minería de Datos y se puede decir que tenemos una serie de reglas o patrones que contienen conocimiento listo para ser descubierto a través de la visualización.

5.6.

Fundamentos de la visualización HEBATT

Como se ha comentado a lo largo de este documento, el objetivo principal de este trabajo es proporcionar una visualización que permita poder analizar los movimientos entre territorios virtuales, y además se planteaba realizar esta propuesta 66

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

aportando una solución novedosa y útil. Como resultado de este proceso de investigación, se ha llegado a la visualización denominada HEBATT: Hierarchical Edge Bundles Applied to Teleport Tracking. Como su propio nombre indica, se parte de la propuesta de visualización de datos jerárquicos mediante la agrupación de las relaciones entre datos que propuso el autor Danny Holten [57] [58]. En esta visualización de tipo radial, se codifica mediante variables visuales arco una jerarquía de datos, y se trazan líneas de tipo spline entre los datos de la jerarquía que tengan relaciones [37]. Partiendo de esta idea resumida sobre el tipo de visualización Hierarchical Edge Bundles, se puede decir que la jerarquía de datos la componen las relaciones entre islas o regiones, los grupos de usuarios que se integran en ellas, y los usuarios. Y las líneas (curvas) que unen los distintos datos de la relación representan los distintos movimientos que realizan los usuarios entre las distintas regiones.

Figura 30: Vista general de la interfaz de la visualización HEBATT

Figura 31: Vista en detalle de la organización de la jerarquía de arcos y datos en la visualización HEBATT La distribución de la jerarquía en el caso concreto de los datos extraídos de Trabajo Fin de Máster, Máster en Sistemas Inteligentes

67

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

USALSIM se realiza a través de cuatro niveles de arcos, un nivel superior que encierra toda la visualización representa el conjunto completo, la vista general, de los datos, de modo que si se selecciona en cualquier momento se pasa a una vista general, como se ve en la figura 30. El nivel inmediatamente inferior a este que engloba todos los datos, es el que se corresponde con los distintos terrenos o islas que componen el Mundo Virtual; como se puede observar son siete territorios. Por debajo de la jerarquía, y en la representación visual, se presentan las distintas instancias de grupos de usuarios que existen en el Mundo Virtual. Cada una de las instancias de grupo se sitúa bajo el arco que representa la región o isla que sirve como base o localización de las actividades de aprendizaje y prácticas que realizan los usuarios de dicho grupo. Por último, el nivel más bajo de la jerarquía de datos, y nivel más bajo en la estructura radial, se encuentran los arcos que representan a los distintos usuarios. En el caso de los usuarios hay un pequeño detalle a tener en cuenta: un usuario puede pertenecer a varios grupos, con lo cual, en una misma isla un usuario puede representarse varias veces, en función de la cantidad de grupos que pertenecen a esa región en los cuales se encuentra inscrito. Una vista más detallada de esta jerarquía de arcos y datos se puede observar en la figura 31. Como se observa en la figura 30, la interfaz de la aplicación cuenta con diversos elementos que se organizan en todo el espacio que ocupa la pantalla. En la zona central se encuentra la visualización HEBATT propiamente dicha, esta visualización cambiará en función de los elementos de la interfaz y mecanismos de interacción que se usen. En la zona derecha de la interfaz se encuentran diversos elementos que permiten distintos tipos de interacción con la visualización, entre estos elementos se observan distintos grupos de botones, sliders, sliders con funcionalidades de rango, o un campo que permite introducir texto y realizar búsquedas en los datos. El uso de estos elementos se explicarán de forma más detallada en el apartado Mecanismos de Interacción en la Visualización HEBATT (5.8). La zona izquierda de la visualización se ha reservado para la visualización de información textual relacionada con los datos que se estén mostrando dentro del HEBATT. Este texto se codificará mediante colores, que ayuden al usuario a la relación de los elementos visuales (mediante la característica de etiquetado, como se explicará en el punto 5.7. En los siguientes sub-apartados se comentará qué tareas de análisis soporta la visualización y cómo es el comportamiento de la visualización en función de los datos que se quieran visualizar.

5.6.1.

Tareas de Análisis que soporta la visualización HEBATT

Antes de mostrar el comportamiento de la visualización en cada caso concreto de uso, es preciso comentar qué tareas de análisis se permite a los usuarios: Visualización general de los teleports realizados en cualquier instante de tiempo 68

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

Visualización general de los teleports realizados en un instante de tiempo concreto Visualización de los teleports de salida de todas las regiones que componen el Mundo Virtual Visualización de los teleports de entrada a cualquiera de las regiones que componen el Mundo Virtual Visualización de los teleports de entrada y salida de cualquiera de las regiones Visualización de los teleports de salida de una región que realizan los usuarios inscritos en un grupo Visualización de los teleports de salida de una región que realiza un usuario concreto Visualización de los teleports de salida efectuados por los usuarios de una región concreta en un rango de tiempo seleccionado Visualización de los teleports de salida efectuados por los usuarios de un grupo concreto en un rango de tiempo seleccionado Visualización de los teleports que realiza un usuario en un rango de tiempo seleccionado Visualización de los patrones de teleports de salida de una región Visualización de los patrones de teleports de entrada de una región Visualización de los patrones de teleports de un usuario Visualización de los teleports que ha realizado un usuario durante su tiempo de uso del sistema, pudiendo recorrerlos a través de la escala temporal 5.6.2.

Tratamiento visual y lógico del volumen de datos a representar

Como se indica en el título y en los objetivos de este trabajo de investigación, una de las finalidades de este trabajo es proponer una solución visual que sea capaz de representar cantidades considerables de datos. Por ello, como ya se explicó, fue necesario generar datos ficticios, para conseguir volúmenes de datos que se ajustaran en cantidad a los objetivos que se planteaban. En estos procesos de generación de datos ficticios se obtuvieron conjuntos de datos que oscilaban entre los 35.000 y 80.000 teleports, además de llegar a realizar pruebas hasta con 2.000 usuarios simultáneos en la visualización. En la propuesta de visualización Hierarchical Edge Bundles (HEB) de Danny Holten [57], ya se planteaban una serie de cuestiones que preparaban a la visualización para soportar grandes cantidades de datos, y se hacían diversas recomendaciones Trabajo Fin de Máster, Máster en Sistemas Inteligentes

69

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

sobre cómo implementar la visualización. Esas recomendaciones utilizadas y otros mecanismos empleados se comentan a continuación: 1. Uso de splines: Holten, en sus publicaciones acerca de la visualización HEB, recomienda encarecidamente usar líneas que usen puntos de control y tensores para la formación de su curvatura, de esta forma es posible que se agrupen las líneas de forma efectiva y no saturen la visualización de líneas que no aporten información y oculten conocimiento. En el caso del prototipo software implementado, se ha hecho uso de líneas splines continuas [10] [68], que usan tensores y puntos de control en su formación, aunque no permiten el control de estos tensores para la deformación de la curva en función de las necesidades que se tengan en la visualización. 2. Uso de características de transparencia: De la misma forma que en la característica anterior, Holten también recomienda el uso de características de transparencia, de forma que se pueda distinguir dentro de los conjuntos agrupados de líneas cuáles están compuestos por una cantidad mayor o menor de líneas (de relaciones en los datos), como se puede comprobar en la figura 32.

Figura 32: Transparencia aplicada en la agrupación de líneas de la visualización HEBATT 3. Uso de líneas resumen: Para la composición de la agrupación de los ejes hay dos opciones, una consiste en tener estructuras de datos que contengan cada teleport que se haya producido en el entorno virtual y toda su información asociada. La otra opción, es perder cierta información, como la referente a la fecha u hora de los teleports, y agrupar en dibujar una sola línea resumen por cada tipo de teleport (definido por origen, destino y usuario) que pueda expresar visualmente la cantidad de líneas que componen esta línea resumen. Esta representación visual se expresa también mediante la transparencia u opacidad de la línea, y esta opacidad se calcula de la siguiente forma:

Opacidad Línea = factor Transparencia * num. de teleports del mismo tipo 70

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

Por lo tanto, el resultado visual de estas líneas resumen es igual que en el caso de dibujar todas las líneas que componen cada agregación, y la carga de trabajo que se realiza en cuanto al dibujado, es menor en una cantidad proporcional al número de líneas que no se dibujan. 4. Uso de múltiples estructuras de datos: Como se indica parcialmente en el punto anterior de dibujado de líneas resumen, para poder tener un rendimiento mejor de la visualización, es necesario implementar distintas estructuras de datos que ayuden a mejorar el rendimiento de la visualización, de modo que a través de la segmentación y agrupación conveniente de los datos se pueda abarcar el dibujado de grandes conjuntos de datos. En la implementación de este propotipo se han usado tanto estructuras ArrayList con conjuntos completos de teleports y teleports de tipo resumen, como estructuras HashMap para acceder a variables que se usan recurrentemente de modo más rápido que con los algoritmos clásicos de búsqueda.

5.6.3.

La visualización HEBATT y la escala temporal

Como se ha comentado anteriormente, entre los datos que se obtienen en la extracción de teleports de los archivos log de OpenSim, se encuentra información relevante a fechas y horarios. Por lo tanto esta información puede (y debe) ser utilizada para poder hacer visualizaciones de datos segmentadas por características temporales. Como se comentó anteriormente, MacEachren [67] planteaba una serie de preguntas (4.2.3)que toda visualización que trabaje con datos debería poder responder. Tomando este conjunto de preguntas, se han implementado varias características de manipulación de la visualización, de modo que se puedan segmentar los datos de la visualización en función de sus características temporales. Estas características son dos principales: 1. Selector del rango temporal a mostrar: A través de un selector de rangos (un elemento de interfaz similar al concepto de slider pero con dos cabezas deslizantes), se ha implementado un sistema que permite visualizar los teleport de cualquier tipo en función del rango temporal seleccionado. Este selector se encuentra en la parte superior-derecha de la interfaz, como se puede observar en la figura 33. De esta forma se puede visualizar al gusto del analista qué conjuntos de teleports tienen lugar en el rango temporal seleccionado, así como ir moviendo ese rango temporal en la escala del selector e ir viendo la evolución temporal en los teleport y extraer conclusiones sobre estas visualizaciones, como por ejemplo, qué usuarios son los más activos, qué cantidad de teleports se asocian a un grupo en un tiempo concreto, en qué épocas hay una mayor carga movimientos o uso en el Mundo Virtual, si los teleports tienen características cíclicas en determinados usuarios, etc. El rango temporal mínimo que se puede seleccionar es de un mes, hasta un máximo de dos años. Trabajo Fin de Máster, Máster en Sistemas Inteligentes

71

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

2. Slider temporal de los teleport que realiza un usuario en el Mundo Virtual: A través de la funcionalidad y el slider que se describe en la sección 5.6.7, es posible extraer información sobre todos los movimientos que ha realizado un usuario en el Mundo Virtual, estos movimientos se presentan ordenados temporalmente (figura 40). A través de este mecanismo se pueden realizar buena parte de las tareas de análisis que plantea MacEachren como, por ejemplo, ¿un usuario realiza movimientos cíclicos en la escala temporal?, ¿Con qué frecuencia temporal realiza teleports el usuario?, ¿Existen cambios significativos en los teleports en función de la época?, ¿Qué cantidad de teleports realiza el usuario en cada época?, etc.

Figura 33: Visualización del uso del selector de rangos temporales de teleports

5.6.4.

Representación de teleports de salida

En este apartado se analizará y mostrará el comportamiento de la visualización en el caso de la representación visual de los teleport de salida sea cual sea el filtrado que se aplique sobre la visualización: teleports de salida de una isla, teleports de salida relacionados con un grupo de usuarios, y teleports de salida relacionados con cada usuario concreto del Mundo Virtual. En la figura 34 se observa cómo se comporta la visualización en el caso de que se seleccione una región concreta y se quieran visualizar los teleports de salida. En la parte derecha de la interfaz, como se comentó anteriormente se encuentran una serie de elementos de control, y se observa que se ha seleccionado (recuadro en color verde) la visualización de los Teleports Salida. En este caso (la visualización de los teleport de salida de una región) se observa cómo 72

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

Figura 34: Visualización de los teleport de salida relacionados con una isla o región del Mundo Virtual

del conjunto de arcos de usuarios relacionados con los distintos grupos y una región concreta, surgen un conjunto de líneas curvas, codificadas con el color correspondiente a esa región (que se puede observar en el color de las etiquetas textuales de la región y los grupos que pertenezcan a ella). Estas líneas representan únicamente los teleport que han realizado los usuarios que pertenecen a grupos de aprendizaje y prácticas relacionados con esa región, no se observan los teleport de salida que han realizado otros usuarios que hayan pasado por la región, debido a que ese comportamiento no cumpliría los principios de la jerarquía de datos y la visualización jerárquica empleada. En la parte inferior izquierda de la interfaz se observa una serie de información textual (figura 41), la cual indica la cantidad de grupos que se incluyen en esa región, la cantidad de usuarios que pertenecen a esos grupos, el número de teleports de entrada y salida totales, y la cantidad de usuarios que han realizado teleports de entrada a esta región y cuántos usuarios han salido de esta región a lo largo del uso del Mundo Virtual. Esta información textual es común a todas las visualizaciones que se centren en alguna característica de una región concreta y gracias a la información que expresan se puede determinar la relación de salidas/entradas, si se trata de una región relevante de algún modo (por el número de teleports y usuarios que llegan), así como la proporción de usuarios que nunca han salido de la región, etc. En la parte derecha de la visualización, se observa una figura cuadrada roja acompañada de una inscripción que pone Mostrar Patrones Teleport Región. Este elemento, si se se activa, muestra los patrones o reglas de movimiento que parten de esa región hacia otras, estos patrones de movimiento se han obtenido mediante los algoritmos de Minería de Datos anteriormente comentados (apartado 5.5.1), y se comentará su visualización en el apartado 5.6.6. En la figura 35 se puede contemplar de igual modo la distribución de teleports Trabajo Fin de Máster, Máster en Sistemas Inteligentes

73

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

Figura 35: Visualización de los teleport de salida relacionados con una grupo concreto del Mundo Virtual

de salida asociados a un grupo de usuarios. De la misma forma que en el caso de las regiones, las líneas curvas que representan los distintos teleports surgen de los arcos que representan a los usuarios que pertenecen al grupo que se está analizando, estas líneas también estarán codificadas con el color correspondiente al grupo de usuarios, que coincide con el color asignado a la región a la que pertenece el grupo. En el caso de este grupo de usuarios, se puede ver que se han movido a todas otras regiones del Mundo Virtual (incluso de su región a su región). Como apunte, comentar que las líneas de llegada de un teleport a una región, se distinguen porque no llegan a tocar ningún arco perteneciente a una región, ya que el único que podrían tocar sería el de la región (un teleport no puede llegar a un grupo o a un usuario, sólo a un territorio), y si se estirase la línea hasta el arco de la región podría hacer perder parte de la simplicidad a la visualización, empeorando la capacidad de comprensión de datos. También, de la misma forma que en caso de la visualización de teleports relacionados con una región, en el caso de los grupos se puede observar información textual en la parte izquierda de la pantalla, en este caso expresa la cantidad de usuarios que se pertenecen al grupo, la cantidad de ellos que han salido en algún momento de la región, y el número total de teleports de los usuarios que han cambiado de esta región a otra a lo largo del tiempo de uso del sistema (figura 41). En el caso del análisis visual de los teleport de salida de un usuario (figura 36), el comportamiento de la visualización es distinta, ya que muestra todos los teleport de salida de las distintas regiones a las que puede pertenecer un usuario. Es decir, si un usuario pertenece a varias regiones, incluso a varios grupos por región, los teleport que salen de los arcos de ese usuario en cada región, se verán reflejados, viendo además a qué islas o regiones se dirige. A través de la codificación por colores en función de la región de donde salga el teleport, es posible distinguir a qué territorios se dirige el usuario en función de la isla en la que se encuentre. 74

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

Figura 36: Visualización de los teleport de salida de las regiones a las que pertenece un usuario En este caso se observa que los elementos de control de la parte derecha de la interfaz han cambiado respecto a los otros casos. Cuando se analizan los teleport de un usuario se ofrecen dos opciones más, la visualización detallada de todos los teleport de un usuario, y la visualización de los patrones de teleport de dicho usuario; las visualizaciones que resultan de activar estas opciones se explicarán a continuación (apartados 5.6.6 y 5.6.7). Por último, y de igual forma que en los casos anteriores, destacar que cuando se selecciona un usuario para su análisis, en la parte izquierda de la interfaz aparece un cuadro de información textual que indica distintos datos del usuario, como su nombre, apellido, correo electrónico, o grupos a los que pertenece (esta información textual sobre los grupos además se codifican con el color correspondiente) (fig. 41). 5.6.5.

Representación de teleports de entrada

En el caso de que un usuario quiera analizar los teleport de entrada a una región, deberá seleccionar dicha opción en los elementos de control de la interfaz, que sólo funcionarán en el caso de que el usuario quiera conocer los teleport de entrada a cualquier región (teniendo activado el visionado de todos los datos), o en el caso de que esté evaluando una región concreta. En los casos del análisis de usuarios y grupos, la opción de visualizar los teleport de entrada no funcionará, debido a que, como se comentó anteriormente, no es posible llegar a un grupo o a un usuario, sólo se llega a un terreno. Como se puede observar en el figura 37, cuando se selecciona una región y la opción de ver los teleport de entrada, se muestra una vista donde aparecen distintas líneas codificada con los colores de las regiones de los que partan los teleport. Por lo tanto, a la región seleccionada llegarán una serie de líneas que parten de las distintas Trabajo Fin de Máster, Máster en Sistemas Inteligentes

75

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

Figura 37: Visualización de los teleports de entrada a una región regiones del Mundo Virtual desde donde se haya llegado a la región seleccionada. 5.6.6.

Visualización de los patrones de teleport

Como se apuntaba anteriormente, en las vistas de análisis de usuarios y regiones, se ofrece la opción de visualizar sus patrones de teleport, obtenidos mediante los algoritmos de Minería de Datos, por lo tanto ha sido necesario diseñar cómo un conocimiento extraído de esa forma podría ser representado [61].

Figura 38: Visualización de los patrones de movimiento en el caso de los usuarios del Mundo Virtual En el caso de los patrones de teleport de usuarios, se ha optado por la representa76

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

ción a través de las líneas que representan el origen y destino de esos teleports. Estas líneas son de un color distinto al resto (color #bcbd22), su ancho es proporcional a la probabilidad de teleport entre las dos regiones que unen. De esta forma, cuando se representan visualmente los patrones de teleport, se muestran las líneas de teleport del usuario, de modo normal, y las que representan los patrones de movimiento, de modo que el contraste por el color y tamaño hacen que el usuario se fije rápidamente en ellas. Un ejemplo de esta representación visual se puede observar en la figura 38. Hay que señalar que en esta vista, sólo se representan, de igual modo que en los teleport de salida, los teleport de las islas a las que pertenece el usuario, no se pintan los teleport de las regiones en las que no está registrado el usuario. También es necesario apuntar que en la parte izquierda de la interfaz de usuario se mostrará la información textual acerca de las 10 reglas de comportamiento más relevantes para ese usuario, con el texto codificado como en otros casos con los colores de las regiones a las que hagan referencia.

Figura 39: Visualización de los patrones de movimiento entre regiones del Mundo Virtual En el caso de la visualización de los patrones de movimientos entre regiones, la representación visual se realiza de forma distinta. En este caso, cuando el analista elige ver los patrones de movimientos, desaparece de la visualización el conjunto de teleports que salen o entran a esa región seleccionada. En su lugar se dibuja un esquema de puntos y líneas curvas, de modo que cada punto, centrado en el arco de la región a la que se corresponde, se dibuja con una codificación en función del color de la región a la que representa. Una vez referenciados los puntos correspondientes a las regiones del entorno virtual que estén presentes en las reglas o patrones de teleport, se dibujan las líneas que unen la región de origen con las de destino. En este caso las líneas se codificarán con el color de la región de origen, y representarán la probabilidad de ocurrencia de ese patrón de teleport a través de su ancho (figura 39). De igual forma que en los patrones de teleport referentes a los usuarios, en la Trabajo Fin de Máster, Máster en Sistemas Inteligentes

77

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

parte izquierda de la pantalla se mostrara la información textual sobre esas reglas, también codificando las regiones implicadas en cada regla con los colores de la región a la que hacen referencia. 5.6.7.

Visualización detallada de los teleport de un usuario

En la vista de análisis sobre los teleport de los usuarios, se ofrece una opción de visualización detallada de todos los teleport que ha realizado un usuario a lo largo de la existencia de su avatar en el entorno 3D.

Figura 40: Visualización detallada de todos los teleports realizados por un usuario del Mundo Virtual Cuando se activa la opción Ver todos los teleport del usuario (disponible únicamente si hay un usuario seleccionado), se activa un slider en la interfaz, a través del cual, mediante el deslizamiento por la barra horizontal y su escala, es posible visualizar paso a paso y en orden cronológico todos los teleport que ha realizado un usuario. De este modo es posible ver la evolución espacio-temporal del usuario, pudiendo comprender en función de las fechas y el teleport que realiza, qué le mueve a realizar cada uno de ellos (para llegar a este nivel de descubrimiento de conocimiento, el usuario que analice estos conjuntos de teleport debe tener un amplio conocimiento previo de las actividades teórico-prácticas que existen y qué características tiene el entorno virtual). Como complemento a la visualización de líneas que van de una región a otra, se en esta etapa que representación se hace uso de información textual, aunque en este caso en la parte derecha de la interfaz, justo debajo del slider usado para hacer las transiciones sobre el conjunto de teleports. En esta información textual se incluye una descripción acerca del teleport que se está mostrando; en esta descripción se 78

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

incluye región de origen, región de destino, usuario que la realiza, y fecha y hora del teleport para que se comprendan perfectamente las características del teleport, y se pueda conocer si tiene relevancia o no en las tareas de análisis.

5.7.

Codificación de colores

Como se ha comentado en el punto dedicado al estado del arte en la Visualización de Información (4) y el apartado sobre la Importancia del Color (4.1.4), una correcta aplicación del color en la visualización puede hacer que una visualización de información sea más clara, más agradable para el usuario, y sobretodo más útil. Como se explicaba en la sección sobre la importancia del color, Healey [54] sostenía que no se deben mostrar más de diez colores simultáneamente en la pantalla, ya que los usuarios dejan de diferenciarlos de forma clara y se pierde información. Por ello, se ha planteado una interfaz donde nunca se lleguen a visualizar más de diez colores, esto es posible mediante una cuidada organización en la distribución de elementos visuales y su asignación de colores.

Figura 41: Vista detalle sobre la codificación del color en la información textual de cada tipo de elemento de la jerarquía de datos En este trabajo, el color ha tenido una gran influencia, ya que se ha hecho uso de la capacidad de Etiquetado que posee (Ware [101]). Esta capacidad implica que un color es un buen recurso para asociar objetos visuales, y hace que el usuario pueda relacionar distintos atributos de objetos a simple vista y sin tener que realizar un complejo proceso mental de emparejado de entidades visuales. En cuanto a esta característica de etiquetado, cabe destacar que se ha aplicado de forma que un mismo color represente siempre la misma semántica en los datos, es decir, cada isla o región del entorno virtual, así como los grupos y usuarios que pertenecen a ella, tienen un único color de etiquetado, de modo que el usuario sea capaz de, sólo visualizando el color, relacionar el concepto con la isla, grupo o usuario del que se está mostrando la información (en la figura 41 se observa como Trabajo Fin de Máster, Máster en Sistemas Inteligentes

79

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

incluso la información textual de cada tipo de datos se codifica por los colores correspondientes). Cada teleport que salga de la jerarquía de datos de una región, tendrá asociado un color, de modo que, por ejemplo, es posible distinguir la dirección de un teleport en función del color de la línea que representa el teleport.

Figura 42: Paleta de colores empleados en la implementación de la visualización En cuanto a la paleta o gama de colores disponibles en la visualización, es necesario comentar que no es una escala determinada simplemente por características de diseño, sino que como se citaba en el caso de la aplicación ColorBrewer [32], es una escala desarrollada de tal forma que la diferencia entre las distintas tonalidades y colores que la conforman son lo suficientemente distintas como para que un usuario (sin problemas de visión del color) sea capaz de diferenciarlas sin problema (figura 42). Esta escala se ha extraído de una clase del lenguaje de programación D3, desarrollado por Mike Bostock [30] conocida como Categorical Colors. Mike Bostock pone a disposición a través de esta API varias escalas categóricas, de modo que propone esta compuesta por 10 colores, así como otras compuestas por 20 colores, que 80

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

no cumplen las recomendaciones de Healey en cuanto al número máximo de colores, pero que si se combinan en la pantalla de forma adecuada, serían efectivas también como recurso de visualización y etiquetado. Los únicos colores que no aparecen en la imagen (pero sí en la paleta) son #bcbd22 y #17becf. El color #17becf se aplica en todos los casos que se presentan vistas generales de todos los datos, por lo tanto aparece únicamente en las vistas generales, o cuando se selecciona la visualización del resumen de todos los datos. Por otra parte, el color #bcbd22 se aplica únicamente en la visualización de los patrones de teleport, debido a que es un color que resalta sobre el resto fácilmente y llama la atención del usuario. Por último, la aplicación de estos colores, a nivel de diseño concuerda con el objetivo de desarrollar una interfaz clara, sencilla y visualmente atractiva. Por ello se ha optado por el uso de colores claros para los datos que se muestren siempre, y colores vivos para centrar la atención sobre los datos que deben ser considerados de inmediato por el usuario o analista.

5.8.

Mecanismos de Interacción en la Visualización HEBATT

A lo largo de este trabajo de investigación, se ha tenido especial cuidado con todos los aspectos que influyen en la calidad de la visualización, desde la codificación de variables visuales, la muestra de información, las herramientas de análisis que se permiten, etc. Dentro de este cuidado de los elementos que aseguran la calidad de la visualización, se encuentran unos muy especiales: los Mecanismos de Interacción. Estos mecanismos son métodos de interacción con la visualización, de modo que permiten realizar de una forma más sencilla las distintas tareas de análisis [94]. Entre los distintos Métodos de Interacción que se incluyen en la herramienta visual HEBATT, destacan: Seleccionar: Permitir seleccionar un elemento visual que se quiere analizar, hace que el usuario pueda generar visualizaciones de datos segmentadas que le facilitan la comprensión de la información que se le presenta. El método de interacción seleccionar es el que permite que cuando un usuario pinche en un archo de región, grupo o usuario, la visualización cambie para mostrar sólo los datos relacionado con el elemento sobre el que ha hecho clic. Explorar: El mecanismo de interacción explorar, permite al usuario modificar la visualización de modo que pueda cambiar los datos que desee sin mostrar el resto. Este mecanismo se implementa a través de los distintos elementos deslizadores o sliders, ya que en varios casos en los que se pueden aplicar Trabajo Fin de Máster, Máster en Sistemas Inteligentes

81

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

(movimiento en la línea temporal de los teleport, y muestra sucesiva de los teleports de un usuario), mediante el movimiento del cabezal de este elemento se va modificando la vista, de modo que el usuario puede ir buscando la ocurrencia de datos que desee, sin que le molesten el resto de datos que no tengan relación con la selección que hace el usuario. Filtrar: Los filtros permiten al usuario seleccionar qué datos desea observar y cuáles no, ya que todos los datos que no cumplan el filtro seleccionado por el usuario no se mostrarán. En la visualización HEBATT hay distintos métodos de filtrado: Filtrados temporales: Del mismo modo que se puede hacer un uso exploratorio del selector temporal, este sirve también para filtrar los datos de movimientos en el espacio virtual en función de las fechas. Si se ajusta un rango de fechas, y se fija en algún punto de la línea temporal, se está realizando un filtrado por fecha, de modo que en la visualización sólo aparecerán los datos que se correspondan con ese rango de fechas definido. Filtrados por tipo de teleport: En el caso de la visualización de datos general y por regiones, es posible especificar qué tipo de teleport se quiere visualizar (entrada, salida o combinados). Esto se indica mediante un filtrado implementado a través de un elemento de tipo radioButton, que sólo permite que esté seleccionado un filtro por tipo de teleport en un instante concreto de tiempo. Filtrados para patrones de comportamiento: De forma similar al filtrado por tipo de teleport, en las vistas que en las que se analizan los datos de las regiones o lo usuarios, es posible seleccionar la opción Mostrar Patrones (de usuario o región). En este caso este filtrado que permite mostrar o no los patrones de comportamiento es distinto al resto de filtrados, ya que en función del elemento donde se seleccione el filtrado, la vista de datos anterior desaparecerá o no. En el caso de los usuarios, los datos referentes al usuario seleccionado no desaparecen, sino que la visualización de los patrones de comportamiento completa la vista de los datos. Sin embargo, en el caso de la muestra de patrones de movimientos en las regiones, los teleport de la región se ocultan para mostrar únicamente la codificación visual de estos patrones de teleport entre regiones. Filtrados mediante búsquedas: El analista que utilice la herramienta de visualización, puede realizar filtrados mediante la introducción de texto en la caja de entrada textual habilitada para tal efecto. Mediante la correcta escritura del nombre de alguna región, grupo o usuario, el sistema filtrará la información que se está mostrando para pasar a representar visualmente sólo la información correspondiente al elemento que haya coincidido con la búsqueda. Modificar la interfaz: En este caso, al usuario se le permiten hacer modificaciones en los elementos visuales, cambiando así su aspecto para revelar si es posible datos que se encuentren ocultos o no sean claros. Esta modificación de la interfaz se realiza a través del slider “Seleccionar Opacidad” que permite al usuario seleccionar la opacidad o transparencia de las líneas que representan 82

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

los conjuntos de teleports y así descubrir si hay relaciones en los datos que no se vean de un primer vistazo (figura 43).

Figura 43: Vista del cambio en la transparencia de las líneas que representan los teleports en función del uso del selector de opacidad

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

83

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

6.

Conclusiones y líneas de trabajo futuro

En este trabajo de investigación se ha desarrollado un nuevo tipo de representación visual de los movimientos entre regiones de los usuarios de un Mundo Virtual de Aprendizaje y Prácticas, con lo cual se ha cumplido el objetivo que se planteaba inicialmente; además se ha llevado a cabo teniendo en cuenta buena parte de los conceptos que forman parte de la revisión del estado del arte en la Visualización de la Información, con lo cual se han seguido una serie de patrones y guías para la creación de visualizaciones de datos adecuadas, íntegras y que cumplan con su objetivo: proporcionar un medio de adquisición de conocimiento por medio de variables visuales, con lo cual se puede asumir que habiendo aplicado estas reglas y principios, la visualización propuesta tiene al menos cierta coherencia y un mínimo de calidad. Aún así, no se puede asegurar que esta visualización sea totalmente válida, ya que no ha sido probada por usuarios reales, ni analistas de datos; ese es un aspecto de los que se incluirían en futuras iteraciones en el proceso de investigación, ya que es fundamental validar la herramienta mediante el uso, de modo que se pueda comprobar si los conceptos teóricos aplicados son lo suficientemente claros como para que un usuario del tipo que sea (experto, no iniciado, etc.) sea capaz de usar la visualización sin ayuda y con un tiempo de entrenamiento lo más corto posible. Por otra parte, si esta visualización fuese probada y aceptada por los usuarios, podría integrarse en herramientas de análisis más grandes, de modo que las tareas de análisis que soporta pudieran ser arropadas por otro conjunto de propuestas y funcionalidades de análisis. Esta visualización se ha desarrollado para el uso concreto en el caso de los teleports en un Mundo Virtual, pero de igual forma se podría aplicar a cualquier tipo de movimiento migratorio, ya sea generado en un sistema digital o en la realidad. Por ejemplo, un esquema similar al que se presenta en este trabajo, se podría proponer para visualizar los flujos migratorios (de personas, de animales, etc) entre regiones y países del mundo, ya que mientras se cumpla en parte la jerarquía de datos la visualización se puede adaptar a otros casos. Como líneas de trabajo futuras, se pueden proponer las siguientes: Mejora de los datos de los teleport mediante la recuperación de datos de un entorno virtual con uso suficiente para el análisis: El problema que se ha encontrado en la cantidad de datos a representar y que ha hecho que se deban generar conjuntos de datos para probar la visualización con distintas cantidades de datos y distintos tipos de distribución en los datos. Esto puede ser un fallo importante, sobre todo si se piensa que, como dicen muchos autores, la buena calidad de los datos es la base de una buena visualización. Por ello, para mejorar esta visualización de datos, se debería contar con un conjunto de datos de uso real. Mejora de la representación visual de la estructura jerárquica: Esto se debe a que cuando el número de usuarios crece de forma considerable, comienza a no 84

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

poderse usar ese nivel más bajo de la jerarquía, ya que los arcos de los usuarios son excesivamente pequeños y dificultan el dibujado de la interfaz debido a su cantidad. Experimentación en el agrupamiento de líneas con curvas Bèzier: Como se ha comprobado, las líneas spline en la implementación actual, no permiten la manipulación de los puntos de control que determinan sus curvas para organizar las agrupaciones y que no se junten todas en el centro y se extiendan por la estructura radial. Esta característica de manipulación de los tensores asociados a los puntos de control para controlar la curvatura de las líneas, si es posible hacerlo en los tipos de curvas Bézier, por lo cual se deberían probar este tipo de líneas en la implementación. Adición de más características de interacción exploratorias: El usuario debe poder visualizar más datos de forma exploratoria, por ejemplo, de forma que cuando pase por encima de un arco de la jerarquía se le muestre una previsualización de los datos, sin tener que estar seleccionando o pinchando en cada elemento visual para comprobar qué datos contiene. Automatizar los procesos de extracción de información y de minería de datos: Si la visualización se quiere usar por parte de analistas reales, es necesario que todos los procesos estén automatizados y no haya que preocuparse de la actualización de los datos que se están usando. Considerar la opción de llevar este desarrollo a un entorno web: De este modo se ahorrarían muchos problemas de rendimiento y uso de la aplicación. Si el conjunto y las estructuras de datos se encuentran en un servidor, siempre estarán cargadas en memoria, con lo cual el cliente no debe procesar esos conjuntos de datos, y simplemente deberá visualizar la representación a través de su navegador web. Como resumen, es posible concluir que la visualización desarrollada supone un aporte significativo al problema que trata, aún teniendo margen de mejora y posibilidades de ampliacion, en vista de las tareas de análisis que es capaz de soportar, y sobre todo conociendo las limitaciones de las las visualizaciones que se han propuesto en el pasado para este tipo análisis de los movimientos en un Mundo Virtual.

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

85

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

Bibliografía [1] Json. http://www.json.org/. R. E. (14). Julio, 2013.

[Citado en pág. 56.]

[2] Json. sintaxis. http://www.w3schools.com/json/json_syntax.asp. R. E. (14). Julio, 2013. [Citado en pág. 56.] [3] Lenguaje de programación processing. http://processing.org/. R. E. (14). Julio, 2013. [Citado en pág. 53.] [4] Mono project: Cross platform, open source .net development framework. http: //www.mono-project.com/Main_Page. R. E. (14). Julio, 2013. [Citado en pág. 7.]

[5] Moodlos web interface for moodle connected with opensimulator. http:// www.nsl.tuis.ac.jp/xoops/modules/xpwiki/?Modlos. R. E. (11). Junio, 2013. [Citado en pág. 22.] [6] Opensim related software. http://opensimulator.org/wiki/Related_ Software. R. E. (11). Junio, 2013. [Citado en págs. 19 y 22.] [7] Opensimulator. http://opensimulator.org/wiki/Main_Page. R. E. (11). Junio, 2013. [Citado en págs. 2 y 7.] [8] Opensimulator server configuration standalone vs. grid. http:// opensimulator.org/wiki/Configuration. R. E. (11). Junio, 2013. [Citado en págs. iv, 19 y 21.]

[9] Osgrid, the open source metaverse. http://www.osgrid.org/. R. E. (14). Julio, 2013. [Citado en pág. 57.] [10] Processing: Drawing curves. http://processing.org/tutorials/curves/. R. E. (14). Julio, 2013. [Citado en pág. 70.] [11] Python programming language. http://www.python.org/. R. E. (14). Julio, 2013. [Citado en pág. 53.] [12] Second life. http://secondlife.com/whatis/. R. E. (2). Junio, 2013. [Citado en págs. 2 y 6.]

[13] Second life, terms of service. https://secondlife.com/corporate/tos.php. R. E. (11). Junio, 2013. [Citado en pág. 6.] [14] Sloodle project. www.sloodle.org/. R. E. (11). Junio, 2013. [Citado en pág. 20.]

[15] Textwrangler. http://www.barebones.com/products/textwrangler/. R. E. (14). Julio, 2013. [Citado en pág. 53.] [16] Unity3d. http://unity3d.com/. R. E. (11). Junio, 2013. [Citado en pág. 8.] 86

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

[17] Web proyecto usalsim. http://sim.usal.es/. R. E. (14). Julio, 2013. [Citado en pág. 52.]

[18] Weka: Arff (attribute-relation file format). http://www.cs.waikato.ac.nz/ ml/weka/arff.html. R. E. (14). Julio, 2013. [Citado en pág. 56.] [19] Weka: Arff (attribute-relation file format). http://weka.wikispaces.com/ ARFF+%28stable+version%29. R. E. (14). Julio, 2013. [Citado en pág. 56.] [20] Weka: Data mining software. http://www.cs.waikato.ac.nz/ml/weka/. R. E. (14). Julio, 2013. [Citado en pág. 53.] [21] Accenture and Universia. Las competencias profesionales de los titulados. Contraste y diálogo Universidad-Empresa. Madrid: Centro de Alto Rendimiento de Accenture y Universia, 2007. [Citado en pág. 10.] [22] Rakesh Agrawal, Tomasz Imieliński, and Arun Swami. Mining association rules between sets of items in large databases. In ACM SIGMOD Record, volume 22, pages 207–216. ACM, 1993. [Citado en pág. 64.] [23] Martha Alicia Alles. Gestión por competencias: el diccionario. Ediciones Granica SA, 2005. [Citado en págs. 10 y 11.] [24] Colin Allison and Alan Miller. Open virtual worlds for open learning. 2012. [Citado en pág. 2.]

[25] Suzanne C Baker, Ryan K Wentz, and Madison M Woods. Using virtual worlds R as an educational tool. Teaching of Psychology, in education: Second life 36(1):59–64, 2009. [Citado en pág. 1.] [26] Jacques Bertin and Marc Barbut. Sémiologie graphique: les diagrammes, les réseaux, les cartes. Mouton Paris, 1967. [Citado en pág. 32.] [27] K Borner and Y-C Lin. Visualizing chat log data collected in 3-d virtual worlds. In Information Visualisation, 2001. Proceedings. Fifth International Conference on, pages 141–146. IEEE, 2001. [Citado en págs. iv, iv, 42, 48 y 49.]

[28] Katy Borner, William R Hazlewood, and Sy-Miaw Lin. Visualizing the spatial and temporal distribution of user interaction data collected in threedimensional virtual worlds. In Information Visualisation, 2002. Proceedings. Sixth International Conference on, pages 25–31. IEEE, 2002. [Citado en págs. iv, iv, 43 y 44.]

[29] Katy Börner and Shashikant Penumarthy. Social diffusion patterns in threedimensional virtual worlds. Information Visualization, 2(3):182–198, 2003. [Citado en págs. iv, iv, 45 y 46.]

[30] Mike Bostock. D3 categorical colors. https://github.com/mbostock/d3/ wiki/Ordinal-Scales#categorical-colors. R. E. (14). Julio, 2013. [Citado en pág. 80.]

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

87

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

[31] Mike Bostock. Fisheye distortion. http://bost.ocks.org/mike/fisheye/. R. E. (14). Julio, 2013. [Citado en págs. iv y 30.] [32] Cynthia Brewer, Mark Harrower, Andy Woodruff, and David Heyman. Colorbrewer. http://colorbrewer2.org/. R. E. (14). Julio, 2013. [Citado en págs. iv, 34 y 80.]

[33] Stuart K Card, Jock D Mackinlay, and Ben Schneiderman. Readings in information visualization: using vision to think. Morgan Kaufmann, 1999. [Citado en pág. 25.]

[34] Gerardo Castillo Ceballos and Alfredo Rodríguez Sedano. De la universidad al puesto de trabajo. Ed. Pirámide, 2011. ISBN: 978-84-368-2517-6. [Citado en pág. 10.]

[35] Edward Castronova. Virtual worlds: A first-hand account of market and society on the cyberian frontier, 2001. Disponible en http://papers.ssrn.com/ abstract=294828. [Citado en pág. 1.] [36] Robert Cooley, Pang-Ning Tan, and Jaideep Srivastava. Discovery of interesting usage patterns from web data. In Web Usage Analysis and User Profiling, pages 163–182. Springer, 2000. [Citado en págs. iv y 23.] [37] Bas Cornelissen, Danny Holten, Andy Zaidman, Leon Moonen, Jarke J Van Wijk, and Arie Van Deursen. Understanding execution traces using massive sequence and circular bundle views. In Program Comprehension, 2007. ICPC’07. 15th IEEE International Conference on, pages 49–58. IEEE, 2007. [Citado en pág. 67.]

[38] Juan Cruz, Roberto Therón, Emiliana Pizarro, and Francisco J. GarcíaPeñalvo. Análisis de datos en mundos virtuales educativos. In Actas del XV Simposio Internacional de Tecnologías de la Información y las Comunicaciones en la Educación (SINTICE13), 2013. En Prensa. [Citado en pág. 11.] [39] Juan Cruz, Roberto Therón, Emiliana Pizarro, and Francisco J. GarcíaPeñalvo. Knowledge discovery in virtual worlds usage data: approaching web mining concepts to 3d virtual environments. In Proceedings Fourth International Workshop on Knowledge Discovery, Knowledge Management and Decision Support (Eureka-2013), 2013. En Prensa. [Citado en págs. iv, 11, 21, 22 y 23.] [40] Barney Dalgarno and Mark JW Lee. What are the learning affordances of 3-d virtual environments? British Journal of Educational Technology, 41(1):10–32, 2010. [Citado en págs. 3 y 9.] [41] Murray Dalziel, Juan Carlos Cubeiro, and Guadalupe Fernández. Las Competencias: clave para una gestión integrada de los Recursos Humanos. Deusto, 1996. [Citado en pág. 10.] [42] Rudolph P Darken and John L Sibert. Navigating large virtual spaces. International Journal of Human-Computer Interaction, 8(1):49–71, 1996. [Citado en págs. iv, 46 y 47.]

88

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

[43] Sara De Freitas. Learning in immersive worlds. London: Joint Information Systems Committee, 2006. [Citado en pág. 11.] [44] R Covey De Stephen. Los 7 habitos de la gente altamente efectiva. 1999. [Citado en pág. 11.]

[45] Oren Etzioni. The world-wide web: quagmire or gold mine? Communications of the ACM, 39(11):65–68, 1996. [Citado en pág. 22.] [46] Marc Fetscherin and Christoph Lattemann. User acceptance of virtual worlds. Journal of Electronic Commerce Research, 9(3):231–242, 2008. [Citado en pág. 12.]

[47] Anneleen Forrier and Luc Sels. The concept employability: a complex mosaic. International journal of human resources development and management, 3(2):102–124, 2003. [Citado en pág. 10.] [48] Sara de Freitas and Tim Neumann. The use of ‘exploratory learning’ for supporting immersive learning in virtual environments. Computers & Education, 52(2):343–352, 2009. [Citado en págs. 1 y 12.] [49] Daniel Goleman. Inteligencia emocional. Editorial Kairós SA, 2012. [Citado en pág. 10.]

[50] Martin Graham, Jessie Kennedy, and David Benyon. Towards a methodology for developing visualizations. International Journal of Human-Computer Studies, 53(5):789–807, 2000. [Citado en pág. 26.] [51] Georges Grinstein, Marjan Trutschl, and Urska Cvek. High-dimensional visualizations. In Proceedings of Workshop on Visual Data Mining, ACM Conference on Knowledge Discovery and Data Mining, pages 1–14, 2001. [Citado en pág. 35.]

[52] Diego Alonso Gómez-Aguilar, Roberto Therón Sánchez, and Francisco José García Peñalvo. Reveal the relationships among student’s participation and its outcomes on elearning environments: Case study. In Advanced Learning Technologies. ICALT 2013. 13th IEEE International Conference on, 2013. (In press). [Citado en pág. 12.] [53] Mark Harrower and Cynthia A Brewer. Colorbrewer. org: an online tool for selecting colour schemes for maps. Cartographic Journal, The, 40(1):27–37, 2003. [Citado en pág. 34.] [54] Christopher G Healey. Choosing effective colours for data visualization. In Visualization’96. Proceedings., pages 263–270. IEEE, 1996. [Citado en págs. 34 y 79.]

[55] Estefanía Hernández-Fernaud, Yeray Ramos-Sapena, Fátima Negrín, Carmen Ruiz-de la Rosa, and Bernardo Hernández. Empleabilidad percibida y autoeficacia para la búsqueda de empleo en universitarios. Revista de Psicología del Trabajo y de las Organizaciones, 27:131 – 142, 08 2011. [Citado en pág. 10.] Trabajo Fin de Máster, Máster en Sistemas Inteligentes

89

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

[56] Harry Hochheiser and Ben Shneiderman. Using interactive visualizations of www log data to characterize access patterns and inform site design. Journal of the American Society for Information Science and Technology, 52(4):331– 343, 2001. [Citado en pág. 42.] [57] Danny Holten. Hierarchical edge bundles: Visualization of adjacency relations in hierarchical data. Visualization and Computer Graphics, IEEE Transactions on, 12(5):741–748, 2006. [Citado en págs. iv, iv, 36, 37, 39, 67 y 69.] [58] Danny HR Holten. Visualization of graphs and trees for software analysis. PhD thesis, Technische Universiteit Eindhoven, 2009. [Citado en págs. 39 y 67.]

[59] Hans Jonas. El principio de responsabilidad. Herder Barcelona, 1995. [Citado en pág. 10.]

[60] Mehmed Kantardzic. Data mining: concepts, models, methods, and algorithms. John Wiley & Sons, 2011. [Citado en pág. 64.] [61] Daniel A Keim. Information visualization and visual data mining. Visualization and Computer Graphics, IEEE Transactions on, 8(1):1–8, 2002. [Citado en págs. 25 y 76.]

[62] David A Kolb et al. Experiential learning: Experience as the source of learning and development, volume 1. Prentice-Hall Englewood Cliffs, NJ, 1984. [Citado en págs. 5 y 9.]

[63] Raymond Kosala and Hendrik Blockeel. Web mining research: A survey. ACM Sigkdd Explorations Newsletter, 2(1):1–15, 2000. [Citado en pág. 22.] [64] John Lamping, Ramana Rao, and Peter Pirolli. A focus+ context technique based on hyperbolic geometry for visualizing large hierarchies. In Proceedings of the SIGCHI conference on Human factors in computing systems, pages 401– 408. ACM Press/Addison-Wesley Publishing Co., 1995. [Citado en pág. 37.] [65] Pat Langley. Induction of condensed determinations. In Proceedings of the Second International Conference on Knowledge Discovery and Data Mining, Portland, pages 327–330. AAAI Press, 1996. [Citado en pág. 22.] [66] Emiliana Pizarro Lucas, Juan Cruz Benito, and Oscar Gil Gonzalo. Usalsim: Learning and professional practicing in a 3d virtual world. In 2nd International Workshop on Evidence-based Technology Enhanced Learning, pages 75–82. Springer, 2013. [Citado en pág. 9.] [67] A.M MacEachren. How Maps Work. Guilford, New York, 1995. [Citado en págs. 40 y 71.]

[68] L Maisonobe. Drawing an elliptical arc using polylines, quadratic or cubic bèzier curves, 2003. [Citado en pág. 70.] 90

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

[69] Margarita Martínez and Maribel Salvador. Aprender a trabajar en equipo. 2005. [Citado en pág. 10.] [70] Laia Mestres i Salud. Las competencias profesionales en el mercado laboral. http://www.educaweb.com/noticia/2011/03/28/ competencias-profesionales-mercado-laboral-4698/, 2011. R. E. (16). Junio, 2013. [Citado en pág. 10.] [71] Virginia Arranz Monje, DA Garc, and Ana Valera Rubio. Formación en competencias: un factor clave de empleabilidad. 2013. Disponible en: http://www.raccoon-learning.com/conocimiento_raccoon/ formacion-en-competencias-un-factor-clave-de-empleabilidad/. [Citado en pág. 11.]

[72] Erla M Morales Morgado, Francisco García Peñalvo, Rosalynn A Campos Ortuño, and Carlos Astroza Hidalgo. Desarrollo de competencias a través de objetos de aprendizaje. RED. Revista de Educación a Distancia, (36):1–19, 2013. [Citado en pág. 11.] [73] Wolgang Mullër and Heidrun Schumann. Visualization methods for timedependent data-an overview. In Simulation Conference, 2003. Proceedings of the 2003 Winter, volume 1, pages 737–745. IEEE, 2003. [Citado en pág. 41.] [74] Michael J Pazzani. Knowledge discovery from data? Intelligent systems and their applications, IEEE, 15(2):10–12, 2000. [Citado en pág. 22.] [75] Cristina Pita Yáñez and Emiliana Pizarro Lucas, editors. Cómo ser Competente. Cátedra de Inserción Profesional Caja Rural Salamanca, Universidad de Salamanca y Servicio de Inserción Profesional Prácticas y Empleo de la Universidad de Salamanca, 2013. [Citado en págs. 9, 10 y 11.] [76] Emiliana Pizarro Lucas and Juan Cruz Benito. Usalsim: Inserción profesional, prácticas y aprendizaje en un mundo virtual. In Buenas Prácticas de Empleabilidad de Estudiantes Universitarios, pages 87–99. Universidad Miguel Hernández, Ministerio de Educación, Cultura y Deporte, 2012. [Citado en págs. 9 y 51.]

[77] Catherine Plaisant, Brett Milash, Anne Rose, Seth Widoff, and Ben Shneiderman. Lifelines: visualizing personal histories. In Proceedings of the SIGCHI conference on Human factors in computing systems, pages 221–227. ACM, 1996. [Citado en pág. 42.] [78] Sebastián Rodríguez, Anna Prades, Lorena Bernáldez, and Sergio Sánchez. Sobre la empleabilidad de los graduados universitarios en catalunya: del diagnóstico a la acción. Revista de Educación, 351:107–137, 2010. [Citado en pág. 10.]

[79] Julian B Rotter. Generalized expectancies for internal versus external control of reinforcement. Psychological monographs: General and applied, 80(1):1, 1966. [Citado en pág. 32.] Trabajo Fin de Máster, Máster en Sistemas Inteligentes

91

Soluciones Visuales Interactivas aplicadas a Grandes Volúmenes de Datos de Entornos 3D de Aprendizaje y Prácticas

[80] Maria Roussos, Andrew Johnson, Thomas Moher, Jason Leigh, Christina Vasilakis, and Craig Barnes. Learning and building together in an immersive virtual world. Presence: Teleoperators & Virtual Environments, 8(3):247–263, 1999. [Citado en pág. 3.] [81] Warren Sack. Discourse diagrams: Interface design for very large-scale conversations. In System Sciences, 2000. Proceedings of the 33rd Annual Hawaii International Conference on, pages 10–pp. IEEE, 2000. [Citado en pág. 42.] [82] Matthew Schmidt and James Laffey. Visualizing behavioral data from a 3d virtual learning environment: A preliminary study. In System Science (HICSS), 2012 45th Hawaii International Conference on, pages 3387–3394. IEEE, 2012. [Citado en pág. 42.]

[83] Ralph Schroeder. Defining virtual worlds and virtual environments. Journal of Virtual Worlds Research, 1(1), 2008. [Citado en pág. 1.] [84] Antonio Guerrero Serón. El enfoque de las competencias profesionales: Una solución conflictiva a la relación entre formación y empleo. Revista complutense de educación, 10(1):335, 1999. [Citado en pág. 9.] [85] Jung P Shim, Merrill Warkentin, James F Courtney, Daniel J Power, Ramesh Sharda, and Christer Carlsson. Past, present, and future of decision support technology. Decision support systems, 33(2):111–126, 2002. [Citado en pág. 2.] [86] Ben Shneiderman. Tree visualization with tree-maps: 2-d space-filling approach. ACM Transactions on graphics (TOG), 11(1):92–99, 1992. [Citado en págs. iv, 37 y 38.]

[87] Ben Shneiderman. The eyes have it: A task by data type taxonomy for information visualizations. In Visual Languages, 1996. Proceedings., IEEE Symposium on, pages 336–343. IEEE, 1996. [Citado en pág. 29.] [88] Ben Shneiderman. Treemaps for space-constrained visualization of hierarchies, 1998. [Citado en pág. 38.] [89] Ben Shneiderman and Catherine Plaisant. Designing The User Interface: Strategies for Effective Human-Computer Interaction, 4/e (New Edition). Pearson Education India, 2003. [Citado en pág. 30.] [90] Ben Shneiderman and Martin Wattenberg. Ordered treemap layouts. In Proceedings of the IEEE Symposium on Information Visualization 2001, volume 73078, 2001. [Citado en pág. 38.] [91] Robert Spence and A Press. Information visualization. 2000. [Citado en pág. 25.]

[92] Jaideep Srivastava, Robert Cooley, Mukund Deshpande, and Pang-Ning Tan. Web usage mining: Discovery and applications of usage patterns from web data. ACM SIGKDD Explorations Newsletter, 1(2):12–23, 2000. [Citado en pág. 22.]

92

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

Cruz Benito, Juan

[93] Constance A Steinkuehler and Dmitri Williams. Where everybody knows your (screen) name: Online games as “third places”. Journal of Computer-Mediated Communication, 11(4):885–909, 2006. [Citado en pág. 1.] [94] Roberto Therón and Laura Fontanillo. Diachronic-information visualization in historical dictionaries. Information Visualization, 2013. En Prensa. [Citado en pág. 81.]

[95] Craig W Thompson. Next-generation virtual worlds: architecture, status, and directions. Internet Computing, IEEE, 15(1):60–65, 2011. [Citado en pág. 8.] [96] Edward R Tufte. Beautiful evidence, volume 23. Graphics Press Cheshire, CT, 2006. [Citado en págs. iv, 26, 28 y 29.] [97] Maria Virvou and George Katsionis. On the usability and likeability of virtual reality games for education: The case of vr-engage. Computers & Education, 50(1):154–178, 2008. [Citado en pág. 12.] [98] Maria Virvou, George Katsionis, and Konstantinos Manos. Combining software games with education: Evaluation of its educational effectiveness. Educational Technology & Society, 8(2):54–65, 2005. [Citado en págs. 3 y 9.] [99] Sa Wang, Zhengli Mao, Changhai Zeng, Huili Gong, Shanshan Li, and Beibei Chen. A new method of virtual reality based on unity3d. In Geoinformatics, 2010 18th International Conference on, pages 1–5. IEEE, 2010. [Citado en pág. 8.]

[100] Steven Warburton. Second life in higher education: Assessing the potential for and the barriers to deploying virtual worlds in learning and teaching. British Journal of Educational Technology, 40(3):414–426, 2009. [Citado en pág. 1.] [101] Colin Ware. Information Visualization: Perception for Design. Elsevier Inc, 2013. ISBN: 978-0-12-381464-7. [Citado en págs. iv, 25, 33 y 79.] [102] Rafał Wojciechowski and Wojciech Cellary. Evaluation of learners’ attitude toward learning in aries augmented reality environments. Computers & Education, 2013. [Citado en pág. 3.] [103] Nick Yee. Motivations for play in online games. CyberPsychology & Behavior, 9(6):772–775, 2006. [Citado en pág. 1.]

Trabajo Fin de Máster, Máster en Sistemas Inteligentes

93

Lihat lebih banyak...

Comentarios

Copyright © 2017 DATOSPDF Inc.