Aprendizaje por descubrimiento en la enseñanza a distancia:
Conceptos y un caso de estudio.

José Bravo , Manuel Ortega, Manuel Prieto, Francisco Ruiz
Grupo de Informática Educativa.Departamento de Informática. Universidad de Castilla-La Mancha.
Teléfono .- 926 - 25 46 10 Fax .- 926 - 25 48 07
Esc. Univ. de Informática. Ronda de Calatrava s/n 13071 - Ciudad Real (España)
E.mail: jbravo, mprieto, mortega,


 






Palabras clave:

Educación a distancia, Modelos de conocimiento, Software de componentes, Aprendizaje por descubrimiento, Programación por componentes, Proyecto COCOA.

Resumen

Muchos sistemas actuales para la ayuda al aprendizaje, se basan en enfoques enmarcados en la Ciencia del Conocimiento. En la educación a distancia esta consideración es más importante debido al papel que juegan en ella los profesores. El presente trabajo se centra en el análisis y la instrumentación de sistemas de aprendizaje por descubrimiento y su aplicación en los marcos de un sistema de enseñanza superior a distancia. Para ello, se consideran diferentes herramientas para la realización en computadora de entornos abiertos, haciéndose énfasis en el uso de las técnicas de construcción de programas basados en componentes y en Sistemas de Desarrollo Rápido (RAD).

Se muestra una aplicación destinada a introducir al estudiante en el conocimiento de la computación neuronal con un modelo concreto de red de retropropagación.

1 Aprendizaje auxiliado con computadoras: Entornos Abiertos y Sistemas Dirigidos.

El uso de las computadoras para apoyar la adquisición del conocimiento y el aprendizaje, ha planteado problemas de muy diversa índole entre los que se encuentra la selección del modelo utilitario apropiado. Una visión muy simplificada de este aspecto presenta en los extremos a dos modelos esencialmente opuestos:

  • Los Entornos Libres y
  • Los Sistemas Dirigidos.
  • Está claro que hay muchos ejemplos de ambos enfoques con ventajas e inconveniencias y, a su vez, muchas aplicaciones con matices y soluciones de implementación intermedias.

    Los Entornos Libres mejoran la capacidad creativa y la calidad del aprendizaje del estudiante, mientras que en los Sistemas Dirigidos es mas fácil mantener un control permanente del aprendizaje y brindar los apoyos precisos en cada momento, garantizando el avance dosificado y una mayor homogeneidad de nivel de todos los aprendices.

    2 Aprendizaje por descubrimiento.

    Es muy importante interpretar adecuadamente tanto el rol de las computadoras como herramientas para representar el conocimiento como su carácter de instrumento pedagógico. La Ciencia del Conocimiento se centra en el análisis de las estructuras del conocimiento y el tipo de representaciones (mentales o de datos) en que se expresan, así como en los complejos fenómenos de la recuperación del conocimiento y su producción misma. Es en esa dirección donde se produce el vínculo mas importante entre la Ciencias de la Computación y de la Educación y en particular en lo relativo a los procesos de enseñanaza-aprendizaje.

    La Psicología cognitiva considera el aprendizaje como la sucesión de las modificaciones de las estructuras cognitivas que son causa de la conducta del hombre. Se han elaborado diversas teorías acerca de la forma en que se crean y desarrollan las estructuras del conocimiento (en las personas). En el aprendizaje por descubrimiento, los aprendices son inducidos a descubrir las reglas del objeto de estudio por si mismos.

    En cuanto a entornos informáticos que permiten el aprendizaje por descubrimiento, se distinguen los siguientes [de Jong, T., van Joolingen, W., Pieters, J. & van der Hulst, Anja. (1993)] :

  • Entornos Hipertextuales (Modos no-lineales)
  • Sistemas de mapificación de conceptos ( Se ofrecen ayudas y esquemas sobre el objeto de estudio).
  • Micromundos (El aprendiz puede programar).
  • Simulaciones (Programas que contienen modelos de la realidad).
  • Entornos de modelación ( Permiten la modificación de propiedades en el modelo por parte del aprendiz).
  • Los esquemas psicopedagógicos también deben considerarse. Un modelo que puede servir de esquema para concebir el funcionamiento de sistemas computarizados para la ayuda al aprendizaje por descubrimiento se debe a Norman y Rumelhart [Norman, D.A. & Rumelhart, D.E. (1975)]. En él, se distinguen tres etapas que deberían potenciarse:
  • Agregación.-Adición de nuevos datos en términos de conocimientos y estructuras ya existentes. Corresponde a la idea del crecimiento de los contenidos sin modificación (al menos aparente) de su estructura.
  • Estructuración.- Creación de una nueva estructura para poder retener y utilizar nuevos datos que no son incluibles en las estructuras precedentes. Esta sería la forma mas pura y difícil del aprendizaje.
  • Ajuste.- Adaptación de las estructuras a la ejecución de nuevas tareas para las cuales no fueron formadas pero si adaptables. Este tipo de acciones se vinculan con la actividad práctica y son las causas mas importantes de las diferencias entre los novatos y los expertos.
  • Este tipo de modelo subraya la importancia de la acción del estudiante sobre los contenidos a asimilar como medio de perfeccionar sus estructuras cognitivas generales y particulares del objeto tratado. De ahí la importancia de hacer un diseño adecuado del sistema .

    En los últimos cincuenta años se han elaborado diversos modelos teóricos para expresar los paradigmas de representación del conocimiento:

  • Modelos procedimentales
  • Modelos declarativos de la lógica
  • Modelos estructurados
  • Modelos de procesamiento paralelo distribuido y
  • Modelos cooperativos.
  • En los usos instructivos, los sistemas informáticos deben contener conocimiento relativo al objeto de estudio y además conocimiento, digamos, pedagógico ( estrategias de conducción del proceso, modos de aprendizaje, etc. ). En muchas aplicaciones actuales se intenta involucrar, explícitamente, conocimiento de ambos tipos. El modelo relativo al objeto de estudio debe adaptarse a la propia estructura del sistema de conocimientos de la ciencia particular que lo sustenta. El modelo que corresponde al metaconocimiento relativo a la conducción o apoyo al aprendizaje, depende básicamente de a cual tipo de estrategia utilitaria se acerque más (Entornos Abiertos o Sistemas Dirigidos).

    3 Análisis de los instrumentos de desarrollo

    Desde la aparición de Visual Basic, las herramientas de desarrollo rápido de aplicaciones (Rapid Application Developement - RAD) han acaparado una buena parte de la industria del software. La producción y utilización de componentes está permitiendo la creación eficiente y económica de programas que utilizan los recursos disponibles del hardware (redes, sistemas cliente-servidor, multimedia ...) y de la tecnología de desarrollo de la programación (jerarquías de objetos, acceso a diversas bases de datos, programación dirigida por eventos, diseño visual ...).

    La industria de componentes también crece muy rápidamente y abarca a casi todos los tipos de aplicaciones a la vez que logra niveles de estandarización muy elevados. En menos de tres años han aparecido versiones "visuales" de los sistemas mas populares, para 16 o 32 bits y, en tendencia, multiplataformas; los componentes VBX, OLE, OCX y DLL son de uso común, reutilizables, poderosos y fáciles de emplear.

    Para este trabajo se decidió en primera instancia realizar un ejemplo para el entorno Windows. Luego de haber analizado algunos sistemas de desarrollo específicos (p.ej. SMISLE), hemos querido utilizar un entorno general que permita más libertades de realización debido a la naturaleza tan diversa de los objetos de estudio que se pretende abarcar. Luego de analizar Delphi (1.0 16 bits) y Visual Basic (4.0 - Beta), nos decidimos por éste último, ya que el sistema de Borland, no garantiza por ahora la utilización de componentes VBX posteriores a la generación 1.0 .

    4 Un caso de estudio

    Para completar este trabajo se está estudiando un prototipo de aprendizaje a distancia que haga intervenir por vez primera el concepto de descubrimiento por parte del alumno. Se trata de un caso de estudio en el ámbito de las Redes Neuronales Artificiales. Para los no iniciados en el tema proponemos los siguientes puntos que son una mera introducción al mundo de la computación neuronal, posteriormente planteamos nuestro caso de estudio en este dominio.
     


    Actualmente disponemos de grandes ordenadores capaces de realizar millones de instrucciones por segundo, pero incapaces de reconocer formas, distinguir entre diferentes clases de objetos, en definitiva, aprender de la experiencia. Esta puede ser la gran diferencia que existe entre el cerebro humano, que aunque no tiene una capacidad de cálculo comparable a los potentes ordenadores, puede realizar esas tareas con mucha más habilidad. El motivo por el cual los seres vivos son capaces de procesar información compleja, como por ejemplo la visual, de forma más eficiente que los computadores, es el procesamiento masivo y paralelo que realiza el cerebro. Este tipo de procesamiento sería imposible realizarlo por los métodos secuenciales tradicionales que emplean los grandes computadores. Se debe pensar por tanto en una arquitectura paralela y al mismo tiempo masiva, es decir, debemos pensar en estructuras de capas e incluir unidades de procesamiento en cada una de ellas.

    Una neurona biológica tiene la capacidad de recibir y procesar estímulos, la neurona está cubierta de una membrana que separa el plasma intracelular del fluido intersticial que está fuera de la célula. Esta membrana al ser permeable permite el trasiego de ciertos iones de un lado a otro de la célula lo que permite que se active creando una diferencia de potencial y transmitiendo, en definitiva, un impulso a través de sus ramificaciones (conexiones con otras neuronas), que se llaman sinapsis.

    El mismo proceso que realiza la neurona biológica puede simularse computacionalmente, y los primeros ensayos se deben a McCulloch y Pitts (1943), y, posteriormente a Frank Rosemblatt (1957) que desarrolló un modelo de red neuronal llamado Perceptrón. Una neurona, computacionalmente hablando, podríamos resumirla según el siguiente esquema :
     
     





    Las entradas provienen de otras neuronas y el proceso que se realiza en su interior hará que si el valor de salida sobrepasa un cierto umbral predeterminado, ésta se activará llevando el impulso a la siguiente neurona ó bien a la salida de la red.

    Conectando entre sí muchos de estos módulos organizados en capas y a la vez interconectando esas capas conseguimos organizar una red neuronal, de la que existen en la actualidad muchos tipos, dependiendo del problema que se quiera resolver.

    Otro concepto importante a tratar es el del aprendizaje. Para ello cada red dispone de su correspondiente algoritmo, que encuentra los pesos sinápticos que satisfacen la condición para obtener la salida correcta. Generalmente el tiempo de entrenamiento es muy superior a lo deseado por lo que el proceso ha de realizarse en potentes ordenadores y aún así, en muchos casos, es posible que no se logren los objetivos. Es por esto que creemos que nuestro caso de estudio puede aportar al alumno información sobre la convergencia de las redes en las que trabaje, y si es necesario, la recomposición de la misma, es decir, el dimensionamiento de la red a tratar se podrá ajustar para conseguir los objetivos previstos.

    Una vez alcanzada la convergencia, la red ya habrá aprendido, pudiéndose obtener el resultado correcto para un conjunto de valores distinto a los patrones con los que se ha entrenado. El paso siguiente consistirá en crear la red a nivel hardware.
     


    La red de retropropagación (Backpropagation), se debe a Rumelhart, Hinton y Williams (1986) y es una extensión al perceptrón de Rosemblatt, consiste en una red multicapa en la que, como su nombre indica, una vez obtenida una salida en la propagación hacia adelante, se comprueba el error cometido, es decir, la diferencia entre la salida real y la deseada. Este error se propaga hacia atrás por toda la red distribuyéndolo entre todos los nodos de cada capa. La distribución consiste en variar los pesos de cada conexión sináptica hasta conseguir después de muchas iteraciones, una cota de error inferior a la estipulada previamente.

    La forma de entrenamiento de la red se basa en el siguiente algoritmo :

    Es en esta modificación de los pesos cuando la red se autoadapta al problema a tratar, es decir, la red aprende la relación existente entre los patrones de entrada y la salida. Este tipo de aprendizaje se llama supervisado.

    La red de retropropagación se emplea para las resolución de diversos problemas entre los que destacan la compresión de datos, procesos de voz, reconocimiento óptico de caracteres, aplicaciones en medicina, reconocimiento de patrones, etc.

    El dimensionamiento de la red de retropropagación no está reglado, no se puede saber cuantos nodos ni capas hay que colocar en la red para obtener la convergencia para cada problema. Generalmente el tamaño de las capas de entrada y salida viene determinado por la naturaleza del problema a resolver, no así los nodos de las capas intermedias, ni el número de ellas. A veces el problema se resuelve mejor con más capas ocultas lo que significa que la red aprende más rápidamente. Una idea básica a la hora de dimensionar la red, es la de utilizar el menor número de nodos posible, lo que significará un menor número de sinápsis y por consiguiente el hardware construido a tal efecto, es decir, nuestra red neuronal final también será más barata en componentes.

    Es por ello que generalmente se debe prestar especial consideración al dimensionamiento, debido a que el entrenamiento puede ser costoso en tiempo e incluso infinito si no se logra la convergencia. Es en este punto donde hacemos énfasis en nuestro caso de estudio ofreciendo al alumno la posibilidad de estudiar la red mientras entrena y podrá efectuar variaciones en su arquitectura eliminando los posibles nodos de la capa oculta que no intervengan de manera sustancial a la hora de conseguir la convergencia.
     


    El proyecto COCOA (Construccionismo - Cooperación - Aprendizaje) es un intento por desarrollar paulatinamente teorías y las aplicaciones basadas en los principios de construcción del conocimiento y en particular de los métodos de aprendizaje por descubrimiento, primero en ambientes de un sólo estudiante y luego para los casos de dos o más en condiciones de cooperación. La perspectiva es de utilizar las facilidades que ahora mismo están en pleno desarrollo para ser usadas en Internet.

    El proyecto NBSU (NeuroBuild-Simple Usuario) consiste en la construcción de un entorno de usuario (alumno) que le permita la construcción de redes de retropropagación mediante un editor realizado al efecto. Al mismo tiempo podrá realizar el correspondiente entrenamiento pudiendo descubrir los parámetros oportunos para cada problema y al mismo tiempo la arquitectura más conveniente para encontrar la solución. Es en este punto donde pretendemos dar el enfoque del aprendizaje por descubrimiento a diferencia del software escrito hasta ahora (Neurosimuladores), donde por lo general, no se ofrece información acerca de como evolucionan los pesos en cada módulo.

    El programa realizado bajo Windows mediante llamadas a una librería dinámica (DLL) muestra un entorno de trabajo amigable para aportar al alumno la simplicidad que conlleva el introducirse en el mundo de la computación neuronal sin tener que entrar en el algoritmo de aprendizaje correspondiente.

    Una vez realizada la arquitectura red se procede a ejecutar el entrenamiento ofreciéndole un archivo de patrones de entrada y salida para el aprendizaje supervisado. Es en este punto donde el comando Zoom permite al usuario introducirse dentro de dicha arquitectura y ver la evolución de los pesos para, si se considera oportuno, volver a reestructurar la red.

    La pantalla de entrenamiento también ofrece la evolución del error mediante una gráfica y las iteraciones del algoritmo de aprendizaje realizadas hasta el momento.
     
     


    Fig. 1 .- Aspecto que presenta el entorno de usuario para entrenamiento y ejecución de las redes.



    Si por el contrario la red ya ha sido entrenada y converge, entonces se puede ejecutar con el botón de propagación hacia adelante, previamente incluyendo unos valores de entrada y ofrecerá los valores a la salida que se esperan a pesar de que el patrón de entrada nunca haya estado presente en la red. También se podrán de crear librerías dinámicas de cada red construida y entrenada e incluirla en cualquier programa para su uso posterior.

    El objetivo fundamental en la construcción de este prototipo lo podemos dividir en las siguientes fases :

  • Fase 1ª- Esta fase la constituye el citado prototipo que permite, como ya se ha dicho, la construcción de redes de retropropagación potenciando el aprendizaje por descubrimiento en la evolución del entrenamiento de la red para lograr el dimensionamiento óptimo para cada problema.
  • Fase 2ª .- Extrapolar las ideas de la primera fase e implementar los principales modelos de redes existentes en la actualidad (Hopfield, Kohonen, Boltzmann, etc.), llegando así a obtener un Neurosimulador como los existentes hoy en día pero que sea capaz de ofrecer una visión más amplia del entrenamiento de cada tipo de red.
  • Fase 3ª .- A un nivel de abstracción mayor, y aprovechando todo lo desarrollado hasta el momento, poder ofrecer al profesor la posibilidad de crear nuevos tipos de redes con sus correspondientes algoritmos. Se estudiarán mecanismos para que la implementación de los mismos se realicen con herramientas visuales, sin necesidad de escribir ninguna línea de código. Se podrán utilizar como parámetros los niveles conceptuales de red, algoritmo de aprendizaje, función umbral, conexionismo, etc.

  • Fig. 2 .- Zoom de la red para conocer más detalles sobre el proceso de entrenamiento.


    5 Perspectivas: Un sistema cooperativo para el aprendizaje por descubrimiento.

    Las estrategias de instrucción así como las técnicas de aprendizaje actuales, reflejan en su mayoría un modelo de interacción entre dos agentes: el alumno y el profesor (metáfora de los dos agentes). Un enfoque poco tratado hasta ahora, pero que se potencia por ideas debido a los conceptos e instrumentos que provee la red global de comunicaciones, es el de la metáfora de múltiples agentes interactuando con el propósito específico de aprender. La intención de trabajo de nuestro grupo es la de producir una extensión de la idea presentada aquí, procurando un sistema para el aprendizaje por descubrimiento que funcione en base a la metáfora de múltiples agentes (mas de un aprendiz).

    Sin embargo se presentan muchas interrogantes que deberán enfrentarse :

  • Cuales son los problemas propios de la interacción de varios agentes.
  • Merece la pena realizar una plataforma de base para el trabajo en redes locales.
  • Cual es la conveniencia de aprovechar la infraestructura y las facilidades de Internet, y en particular de las herramientas CSCW (Computer Supported Cooperative Work).
  • Cual es la conveniencia de incluir a un agente experto, y en tal caso que roles puede jugar un agente experto.
  • Que objetos de estudio serán mas convenientes o adaptables para estas experiencias.
  • Cuales plataformas de organización computacional (cooperativas) son mas adecuadas para lograr los objetivos didácticos.
  • Cuales son los problemas específicos de la cooperación dentro de una intención de ayuda al aprendizaje por descubrimiento.
  • Sobre estas y otras cuestiones se trabajará en los próximos meses. Invitamos a los interesados en participar en estas discusiones, para que contacten con nuestro grupo a la dirección electrónica que aparece en el encabezado. El material disponible en este proyecto, se irá colocando en la dirección http//:www.gie.uclm.es /

    BIBLIOGRAFIA

    de Jong, T., & van Joolingen, W. (1994). The Smisle environment: Learning with and design of integrated simulation learning environments. Proceedings of the DELTA conference. Dusseldorf.

    de Jong, T., van Joolingen, W., Pieters, J. & van der Hulst, Anja. (1993) Why is discovery learning so difficult? And what can we do about it?. EARLI conference . Aix-en-Provence.

    de Lara, J., Bravo, J. & Ortega, M. (1995). Un simulador de redes neuronales educativo. Informática educativa : Realidad y Futuro. Ser. de Publicaciones de la Universidad de Castilla-La Mancha. Ciudad Real.

    Dillenbourg, P. & Schneider, D. (1995) Collaborative learning and the Internet. WWW.

    Freeman, J. & Skapura D. (1991). Redes neuronales. Algoritmos, aplicaciones y técnicas de programación. Addison-Wesley/Díaz de Santos.

    Minsky, M & Papert S. (1988) Perceptrons. Mit Press.

    Norman, D.A. & Rumelhart, D.E. (1975) Explorations in cognition. LNR Group. San Francisco.

    Rumelhart D., McClelland & PDP. Introducción al Procesamiento Distribuido en Paralelo. Alianza Editorial.

    Tchounikine, P. (1990). Representing and activating knowledge in educational software for a human instructor-like reasoning process justification. Proceedings Int. Conf. on ARCE. Tokio.

    Verdejo, M.F. & Cerri, S. (1994). Collaborative dialogue tecnologies in distance learning. Proc. of ARW. Segovia.