AUTOAPRENDIZAJE SOBRE COMBINACIÓN LINEAL DE VECTORES UTILIZANDO UN SISTEMA EXPERTO
SELF-TEACHING ON LINEAR VECTOR COMBINATION SUPPORTED IN EXPERT SYSTEM
|
M.Sc. Claudia Sánchez Prado https://orcid.org/0000-0002-5878-355x Universidad de Sancti Spíritus “José Martí Pérez”, Cuba |
Ing. Arianna de la C. Castellón León https://orcid.org/0000-0002-3416-6207 Universidad de Sancti Spíritus “José Martí Pérez”, Cuba |
|
M.Sc. Tania Rosa Toledo Martín https://orcid.org/0000-0001-8004-7324 Universidad de Sancti Spíritus “José Martí Pérez”, Cuba |
|
Tipo de contribución: Artículo de investigación científica
Recibido: 12-03-2020
Aceptado para su publicación: 29-09-2020
|
Resumen: El presente trabajo se desarrolla como parte de un proyecto de investigación que tiene lugar en la Universidad de Sancti Spíritus “José Martí Pérez” que involucra a los departamentos de Física-Matemática e Ingeniería Informática. Tiene como objetivo desarrollar un Sistema Experto para apoyar el autoaprendizaje de los estudiantes de Ingeniería Informática sobre el tema combinación lineal de vectores. Para ello se emplea la metodología propuesta por el Dr. Mateo Lezcano Brito en su libro “Prolog y los Sistemas Expertos”. Como resultado se obtiene Sistema Experto sobre Combinación Lineal (SECLA), una aplicación que apoya a los estudiantes en su autoaprendizaje sobre el tema combinación lineal de vectores. Palabras clave: inteligencia artificial; sistema experto; sistemas expertos basados en reglas |
Abstract: This work is developed as part of a research project that takes place at the University of Sancti Spíritus “José Martí Pérez” that involves the Physics-Mathematics and Computer Engineering departments. Its objective is to develop an Expert System to support the self-learning of Computer Engineering students on the topic of linear combination of vectors. For this, the methodology proposed by Dr. Mateo Lezcano Brito in his book "Prolog and Expert Systems" is used. As a result, the Expert System on Linear Combination (SECLA) is obtained, an application that supports students in their self-learning on the topic of linear combination of vectors. Keywords: artificial intelligence; expert system; expert systems based on rules
|
1. Introducción
Las tecnologías de la educación han crecido exponencialmente con la aplicación de diversos equipos que, si no estuvieron pensados para utilizar en la escuela, se han ido añadiendo a la vida educativa en todos los niveles de aprendizaje y de la gestión. (Barajas, 2005)
Actualmente, las universidades han de plantear nuevos modelos en el contexto del aula convencional, y desde una perspectiva flexible atender a las personas que necesitan formación a lo largo de la vida, explorando cómo la tecnología implica y apoya a los alumnos en contextos culturales y programas múltiples.
La aplicación de la Inteligencia Artificial (IA) en la educación ha estado en el centro de no pocas investigaciones académicas, explorado el proceso de aprendizaje, ya sea en aulas tradicionales o en los puestos de trabajo con el fin de dar soporte tanto a la educación formal como a la educación a lo largo de toda la vida. Esto ha provocado el acercamiento de la IA y las ciencias cognitivas para promover el desarrollo de entornos de aprendizaje adaptativos y otras herramientas de IA en la educación: flexibles, inclusivos, personalizados, motivadores y efectivos. (León Rodríguez & Viña Brito, 2017)
Existen varias formas o vías en que la IA puede contribuir a cambiar la educación:
1. Automatización de tareas administrativas docentes.
2. Softwares para brindar educación personalizada.
3. Detectar qué temas necesitan más trabajo en clases.
4. Compañero y soporte de los estudiantes dentro y fuera del aula.
5. Información importante para avanzar en el curso.
6. Cambios en la búsqueda e interacción con la información.
7. Nuevo significado del rol y papel del docente.
8. Uso de datos de manera inteligente para enseñar y apoyar al estudiante.
Tal y como expresa la referida fuente, “la inteligencia artificial podría cambiar cómo se aprende y cómo se enseña”. No obstante, no debe perderse de vista que el principal objetivo es y será: lograr un aprendizaje real y significativo por parte del estudiante. (Padilla, 2019)
La IA puede permitir fundamentar una línea de trabajo, orientada a diseñar productos útiles y rentables, fundamentados didácticamente, para el autoaprendizaje del estudiante, los que podrán ser programas de consulta capaces de ayudar a resolver ejercicios complejos y así eliminar sus dudas. Donde juegan un papel importante los llamados Sistemas Expertos (SE) que han sido muy utilizados con estos fines.
En el área educativa, los SE recogen información sobre el usuario, evalúan el grado de conocimiento que se tiene sobre la materia y llevan a cabo un proceso de toma de decisiones sin intervención humana acerca del suministro de ayuda lo cual proporciona que la asimilación del contenido sea óptima.
Actualmente, se han aplicado los SE a varios temas de la educación como por ejemplo lo son las Matemáticas. En la actualidad existen varios softwares para el cálculo matemático de propósito general, que son utilizados como herramientas sofisticadas para hallar resultados, programar o bien realizar investigación en muy diversas áreas relacionadas con la simulación matemática. Entre los paquetes más conocidos están Mathematica, Matlab y Geometer´s Sketchpad, todos se caracterizan por ser propietarios. (Quesada, 2007)
El software Mathematica constituye una opción para implementar laboratorios de matemática asistida por computadora, en muy diversas áreas, mientras que Matlab es una herramienta de cálculo simbólico, es decir, un sistema que realiza dos funciones: una súper calculadora y un intérprete de un lenguaje de programación propio, por otra parte Geometer’s Sketchpad es un software diseñado para la enseñanza y aprendizaje de la geometría en la educación secundaria, la práctica ha demostrado que es una herramienta pedagógica que se puede utilizar en niveles superiores. El programa permite diseñar experiencias de aprendizaje en áreas muy diversas de la matemática, tales como: la teoría de funciones, el cálculo y las ecuaciones diferenciales.
En el área del Álgebra Lineal específicamente se han desarrollado varios softwares para apoyar el autoaprendizaje de los estudiantes ejemplo de ellos son: Sistema Experto sobre Espacios Vectoriales, Aplicaciones Lineales y Diagonalización (SEAL), desarrollado en la Universidad de Camagüey “Ignacio Agramonte” y Sistema Experto en Álgebra Lineal sobre Determinantes de matrices (SEDEM), desarrollado en la Universidad de Sancti Spíritus “José Martí Pérez”.
Una entrevista con profesores de Matemática permitió constatar el uso de algunos de los softwares antes mencionados para el Algebra Lineal en general, sin embargo, no satisfacen las necesidades en algunos temas sobre combinación lineal de vectores o no brindan el apoyo necesario para la comprensión del estudiante.
Tras un estudio en el departamento de Física-Matemática desde donde se imparten asignaturas en la carrera Ingeniería Informática en la Universidad de Sancti Spíritus “José Martí Pérez” se analizaron documentos como el plan de estudio y exámenes de estudiantes. Este análisis evidenció múltiples dificultades en el proceso de enseñanza-aprendizaje de los estudiantes referente a la asimilación y aplicación del concepto de combinación lineal de vectores en el Álgebra Lineal. Entre ellos podemos mencionar
· Cada vez más los planes de estudios de las carreras cuentan con menos horas presenciales.
· Los contenidos de la asignatura poseen notable aplicación en otras asignaturas de esta carrera como Matemática I, Matemática Numérica, Programación orientada a objetos y Estructura de datos, sin embargo, los estudiantes no lo saben aplicar lo cual demuestra que adquieren estos conocimientos a un nivel reproductivo.
· Los estudiantes tienen poco dominio del concepto de combinación lineal de vectores, de los contenidos de dependencia e independencia lineal, generador, base, dimensión, matriz de cambio de base, núcleo y subespacio.
· Existen software como el Mathematica que el estudiante puede verificar la respuesta, pero no ofrecen niveles de ayuda adecuado, pues no indican donde está el error teórico o práctico para que lo pueda superar.
· Por las características de esta carrera resulta conveniente que el estudiante pueda realizar el trabajo independiente con la ayuda de la computadora y no necesariamente con la presencia del profesor.
A partir de estos hallazgos se realizan investigaciones con el fin de implementar herramientas informáticas que contribuyan a la absorción del conocimiento y a la creación de habilidades en los educandos. Por lo que el objetivo general de este trabajo es desarrollar un SE para apoyar el autoaprendizaje de los estudiantes de Ingeniería Informática sobre el tema combinación lineal de vectores en la asignatura de Álgebra Lineal.
2. Materiales y métodos
Para el desarrollo de esta investigación se utilizó la metodología descrita por el Dr. Mateo Lezcano Brito en su libro Prolog y los SE. La que se organiza en cinco etapas: identificación, establecer conceptos, formalización, implementación y prueba.
En la etapa de identificación se determina, básicamente, cuál es el problema que se quiere resolver y sus características, así como quienes van a participar en el levantamiento de la base de conocimiento y el papel de cada cual, en ese proceso, entre otras cosas. Es más bien un periodo de familiarización, donde tiene lugar la relación inicial entre el experto y el ingeniero del conocimiento. En una entrevista inicial el experto debe lograr que el ingeniero de conocimiento se lleve una idea general del dominio que se quiere modelar, haciendo una caracterización informal del problema y mostrando algunas descripciones de problemas típicos y los posibles pasos para su solución.
El ingeniero del conocimiento, por su parte, debe investigar acerca de los medios de cómputo disponibles, encaminado a una posterior selección del más adecuado para los fines que se proponen.
En la segunda etapa se definen los conceptos para la representación del conocimiento. El experto y el ingeniero del conocimiento determinan los aspectos claves del problema, las relaciones entre ellos y sus características con el objetivo de llevar a cabo la descripción del proceso de solución del problema.
El proceso de creación de las categorías semánticas y las relaciones relevantes (conocimiento explícito), en base a los cuales se elabora el modelo conceptual, (diagrama que vincula las categorías y relaciones), es el camino que lleva del plano real al conceptual.
En la etapa formalización se formalizan los conceptos claves y subproblemas que estaban aislados durante la conceptualización. Se diseñan las estructuras para organizar el conocimiento. Después de un análisis intensivo, por parte del ingeniero de conocimiento, de los diferentes medios de representación con que se cuenta, se determina cuál se adapta mejor a las condiciones del problema, estableciendo un lenguaje formal que incorpore los conceptos formalizados del tema objeto de representación y describa a la vez el mecanismo de solución.
La definición de los conceptos y relaciones derivadas (conocimiento inducido) y la creación de reglas que los relacionan con el conocimiento explícito, marca el paso del plano conceptual al formal.
Para seleccionar un esquema de representación adecuado, se deben considerar la generalidad, accesibilidad, posibilidades de prueba y velocidad de razonamiento.
En esta etapa el ingeniero del conocimiento juega un papel más activo, determinando:
· La existencia de datos redundantes.
· Si hay incertidumbre asociada a los datos.
· Si los datos son consistentes y completos para resolver el problema.
· Si la interpretación lógica de los datos depende de su orden de ocurrencia en el tiempo.
En la etapa implementación el ingeniero de conocimiento combina y reorganiza el conocimiento formalizado para hacerlo compatible con las características del flujo de información del problema.
Se lleva a cabo la formalización de las reglas que abarcan todo el conocimiento, obteniéndose un primer prototipo, que muestra sobre un esquema elemental la forma en que opera el sistema.
El objetivo fundamental de este primer prototipo es obtener una solución inmediata del problema, independientemente de cuan eficiente pueda ser.
En esta etapa se debe demostrar que los métodos de solución seleccionados son los más indicados para la exitosa solución de, al menos, un primer grupo de problemas, comenzando por los más generales y urgentes y pasando posteriormente a un refinamiento del conocimiento.
La etapa de prueba es un periodo de validación del conocimiento ya formulado. Se hace una valoración del sistema en su conjunto, probándolo con un grupo bastante amplio de ejemplos, de forma que se cubran todos los casos posibles. Se hace con el objetivo de determinar insuficiencias en la base de conocimiento y/o en las estrategias para la solución del problema.
Para la aplicación efectiva del sistema en la práctica, se hacen pruebas con diferentes expertos que ofrecerán sus puntos de vista acerca de su funcionamiento. (Brito, 1995)
3. Resultados y discusión
Como resultado de la Etapa de Identificación se obtuvo los elementos del dominio y los conceptos descriptivos que se especifican a continuación.
Elementos del dominio:
· Combinación lineal de vectores
Conceptos Descriptivos:
· Combinación lineal de un sistema de vectores.
· Clasificación de acuerdo a los términos independientes.
· Forma matricial de un SEL.
· Clasificación de las matrices.
· El Método de Gauss.
· El rango de una matriz.
· Método para el cálculo del rango de una matriz.
· Regla de Cramer para la solución de un sistema de ecuaciones lineal cuadrático.
Posteriormente en la Etapa Establecer Concepto se establecieron una serie de elementos esenciales, tales como:
· Los tipos de datos disponibles son las posibles respuestas correctas e incorrectas y los teoremas relacionados con la combinación lineal de vectores.
· No se tomará en cuenta el factor de certidumbre.
· Los datos de salida serán una evaluación o un mensaje de ayuda que indicará el procedimiento teórico o práctico a realizar.
· Los conocimientos extraídos de libros, tesis, y revistas se confrontarán con la opinión del experto.
· Para la organización de la base de conocimiento se tuvo en cuenta que en UCShell las bases de conocimientos pueden o no tener el primer bloque de atributos extendidos, en este caso la base de conocimiento se organizó en tres bloques el primero ASKS (preguntas) donde se definen los atributos preguntables. El segundo bloque es el de las RULS (reglas) donde se realiza la definición de todas las reglas de la base de conocimientos. El tercero es el Bloque ACTIONS (acciones) donde se especifica la lista de acciones que se ejecutan.
En la Etapa de Formalización se determinó utilizar la herramienta para el desarrollo de SE: UCShell 2.0 que es un ambiente de desarrollo integrado, que permite la creación de proyectos y bases de conocimiento.
Para más organización y mejor entendimiento se elaboró el siguiente árbol de decisión.
Figura 1. Árbol de decisión
Fuente: Elaboración propia
Como resultado de la Etapa de Implementación se obtuvo la base de conocimiento dividida en tres partes, un bloque de preguntas, un bloque de reglas y un bloque de acción; tal como se muestra en el ejemplo siguiente:
Bloque de Preguntas
ASK expre1:'¿Qué expresión de combinación lineal utilizas?'
DOMAIN 'k1(1,2,0) + k2(2,-1,3) = (4,3,3)','k1(4,3,3) + k2(1,2,0) = (2,-1,3)', 'k1(1,2,0) + k2(2,-1,3) = (0,0,0)'
BECAUSE 'Se denomina combinación lineal de un sistema {X1, X2,..., Xn} ',
'de n vectores de un espacio vectorial E con K1, K2, ...Kn escalares, a la expresión: K1X1+ K2X2+...+KnXn.',
'Para más información vea en su libro de texto el recuadro de la',
'pág. 200 y el ejemplo 4 y 5 pág. 202-204.'
Bloque de Reglas
RULE 2 IF (eje1 = 'a) (4,3,3) con (1,2,0) y (2,-1,3)') AND
(expre1 <>'k1(1,2,0) + k2(2,-1,3) = (4,3,3)')
THEN FINAL :='SI'
ACTIONS
DISPLAY 'SU RESPUESTA ES INCORRECTA.',
'Se denomina combinación lineal de un sistema {X1, X2,..., Xn} ',
'de n vectores de un espacio vectorial E con K1, K2, ...Kn escalares, a la expresión: K1X1+ K2X2+...+KnXn.',
'Para más información vea en su libro de texto el recuadro de la',
'pág. 200 y el ejemplo 4 y 5 pág 202-204.'
END;
Bloque de Acción
ACTIONS
REPEAT
RESET ALL
FIND FINAL
FIND FINALIZAR
FIND OVER
UNTILKNOWN OVER
END.
La Etapa de Prueba comenzó con la selección de la prueba de caja negra para probar el funcionamiento del SE en cuestión, por su claridad, al permitir la verificación del funcionamiento correcto del sistema a partir de las entradas y las salidas que debe ofrecer, sin analizar cómo lo hace. Los casos de prueba seleccionados fueron aquellos que responden a los requerimientos más importantes del sistema.
Los tres artefactos tratados en estas pruebas se basan en la metodología Proceso Unificado de Desarrollo y son los siguientes: (Quintero & Rios Rodriguez, 2019)
1. Planificación de pruebas: define los tipos de prueba, los procedimientos y objetivos de dichas pruebas.
2. Procedimiento de pruebas: delimita cómo realizar uno o varios casos de prueba o partes de estos.
3. Casos de pruebas: define una forma de probar el sistema, incluyendo la entrada o resultado con la que se ha de probar y las condiciones bajo las que ha de probarse, viene dada por un requisito o grupo de estos.
En la Tabla 1 se muestra la prueba realizada al procedimiento de prueba Validar mostrar ejercicio 1.
Tabla 1. Planificación de pruebas
|
Tipo de prueba |
Procedimiento de prueba |
Caso de uso asociados |
Objetivo |
|
Prueba de Caja Negra |
Validar mostrar ejercicio 1 |
Comprobar combinación lineal de vectores |
Delimitar errores de interfaz |
Fuente: Elaboración propia
Procedimiento de Pruebas
Validar mostrar ejercicio 1 (Caso de uso asociado: Comprobar combinación lineal de vectores).
1. Seleccione en la ventana principal la opción “Ejercicio 1”.
2. En la ventana “Ejercicio 1” introduzca las respuestas a las preguntas del sistema:
a) Introduzca datos incompletos o erróneos.
b) Introduzca los datos correctamente.
Para probar el sistema haciendo énfasis en las entradas y salidas se desarrolló el caso de prueba referente al caso de uso Comprobar Combinación Lineal de Vectores. (Tabla 2)
Luego de las pruebas de software realizadas el sistema fue puesto en práctica por los profesores de matemáticas y los estudiantes de la carrera Ingeniería Informática. Los instrumentos aplicados a profesores del departamento de Física Matemática y los estudiantes que trabajaron con el software SECLA permitieron determinar los siguientes resultados:
· El producto obtenido es empleado en la preparación y desarrollo de los estudiantes para actividades prácticas donde se utiliza el concepto de combinación lineal de forma exitosa.
· Los criterios expresados por profesores que lo utilizaron coinciden en que es vía eficaz para que el estudiante adquiera los conocimientos teóricos prácticos necesarios de este tema, de forma independiente con poco hizo de niveles de ayuda.
· Los estudiantes expresan que son formas muy motivadoras para realizar las actividades.
· Esta constituye una manera de mostrarles como emplear sus conocimientos de programación para realizar software de otras asignaturas que reciben en su carrera.
Tabla 2. Caso de uso Comprobar Combinación Lineal de Vectores
|
Caso de uso |
Comprobar Combinación Lineal de Vectores |
|
Caso de prueba |
Validar “Mostrar ejercicio 1” |
|
Entrada |
En la ventana “Ejercicio 1” se introducen las respuestas a las preguntas que hace el sistema referente al tema de Combinación lineal de vectores |
|
Resultado esperado |
a) El sistema muestra el siguiente mensaje.
b) El sistema muestra uno de los siguientes mensajes.
|
|
Resultado de la prueba |
Al introducir los datos de entrada y ejecutar el método, el resultado de la prueba fue el esperado lo que indica que el caso de uso se ejecutó correctamente. |
Fuente: Elaboración propia
4. Conclusiones
Los SE constituyen herramientas pertinentes para contribuir al autoaprendizaje de los estudiantes de Ingeniería Informática sobre combinación lineal de vectores. Se demostró la factibilidad UCShell para desarrollar SE sobre ejercicios con diferentes niveles de ayuda.
Se validó el sistema mediante la aplicación de la prueba de caja negra la que arrojó un correcto funcionamiento.
5. APOYOS Y AGRADECIMIENTOS
Agradecemos a Lydia Rosa Ríos Rodríguez por la ayuda brindada y sus buenos consejos.
6. Referencias bibliográficas
Axayacatl, O. (2013). Blog Ingeniería. Recuperado el 21 de 5 de 2018, de Blog Ingeniería: https://blogingenieria.com/libros-ingenieria/desarrollo-inteligencia-artificial/
Barajas, M. (2005). La educación mediada por las Nuevas tecnologías de La información y la Comunicacional al final del siglo XX. Barcelona.
Brito, D. M. (1995). Prolog y los Sistemas Expertos. En Prolog y los Sistemas Expertos.
Enrique Castillo, J. M. (2005). Sistemas Expertos y Modelos de Redes Probabilísticas.
Fernández, M. (2003). Inteligencia Artificial, Sistemas Expertos y Redes Neuronales.
León Rodríguez, G. d., & Viña Brito, S. M. (2017). La inteligencia artificial en la educación superior. INNOVA Research.
Marcelo, M. v. (2003). Algebra Lineal. En L. S. María virginia Varela Marcelo, Algebra Lineal (p. 200). La Habana: Felix Varela.
Padilla, R. D. (2019). La llegada de la inteligencia artificial a la educación. Revista de Investigación en tecnologías de la información.
Quintero, L. A., & Rios Rodriguez, L. R. (2019). Sistema Experto para el diagnóstico presuntivo de enfermedades. Revista Cubana de Ciencias Informáticas.