INTRODUCCIÓN
⌅La Matemática Numérica o Análisis Numérico o Cálculo Numérico es la rama de las Matemáticas encargada de diseñar algoritmos para simular aproximaciones de solución a problemas en análisis matemático. Se distingue del cómputo simbólico en que no manipula expresiones algebraicas, sino números. Álvarez (2007)Álvarez, M. (2007). Matemática Numérica La Habana: Editorial Félix Varela. Disponible en: http://www.slideplayer.es y Hoffman (2001)Hoffman, J. D. (2001). Numerical Methods for Engineer and Scientists New York: Marcel Dekker, Inc. plantean que la Matemática Numérica propone, desarrolla, analiza y aplica algoritmos y métodos numéricos para obtener soluciones aproximadas a problemas.
En la Universidad Agraria de la Habana (UNAH) “Fructuoso Rodríguez Pérez” ubicada en la provincia Mayabeque, se imparte la asignatura Matemática Numérica para los estudiantes que cursan la carrera técnica de Ingeniería Industrial. Esta asignatura básica propone entre sus objetivos resolver problemas matemáticos y prácticos utilizando métodos numéricos (MES, 2020Ministerio de Educación Superior. MES. (2020). Programa de la Asignatura Matemática Numérica (Carrera Ingeniería Industrial). La Habana.). Para su trabajo necesita alimentarse de los avances de la Matemática y a su vez se enriquece al nutrirse de una serie de métodos y algoritmos que permiten dar resultados numéricos para la inmensa mayoría de los problemas de la Matemática Continua. Esta interacción es la que hace posible la estrecha relación de esta disciplina con el resto.
Algunos investigadores (Shampine, et al., 1997Shampine, L. F., Allen, R. C., Pruess, S. (1997). Fundamentals of Numerical Computing. New York: John Wiley Inc.; Hoffman, 2001Hoffman, J. D. (2001). Numerical Methods for Engineer and Scientists New York: Marcel Dekker, Inc.; Press, et al,. 2002Press, W. H., Vetterleng, W. T., Temkolsky, S. (2002). Numerical Recipes In C. New York: Cambridge University Press. Disponible en: https://iberlibro.com y http://www.scirncedirect.com ) consideran que el propósito de la enseñanza de esta asignatura Matemática Numérica consiste en adiestrar a los estudiantes en la utilización de los distintos métodos numéricos, desarrollando la capacidad de utilizar los métodos numéricos como procedimientos incluidos en otros programas, también la de decidir si se utilizan modelos analíticos o numéricos en un problema determinado y por último analizar los resultados de la solución computacional y extraer conclusiones sobre la validez del modelo y de la respuesta obtenida, a través del uso de asistentes matemáticos.
En la actualidad la utilización de métodos numéricos es de importancia crucial en casi todos los campos de las ciencias. La matemática clásica aporta la base y teoría para el desarrollo, pero cuando la complejidad del problema aumenta o depende de muchas variables, las soluciones analíticas, cuando existen, se vuelven demasiado complejas de evaluar y en general poco prácticas. Desde hace algún tiempo, Galantai (1992)Galantai, A. (2000). The Theory of Newthon's Method. Journal of Computational and Applied Mathematics , 25 - 44. Disponible en: https://www.doi.org/10.1016/S0377(00)00435-0 y Yamamoto (2000)Yamamoto, T. (2000). Historical developments in convergence analysis for Newton's and Newton-like methods . Journal of Computational and Applied Mathematics , 1 - 23. consideran que el desarrollo vertiginoso de los medios de cómputo y procesamiento de datos ha propiciado que la utilización de los métodos numéricos se extienda con mucha fuerza incluso en campos donde se cuenta con soluciones analíticas a los problemas. Además, el desarrollo de mayor potencia de cálculo en los ordenadores domésticos ha propiciado el desarrollo de herramientas y programas en cuyo núcleo se utilizan métodos numéricos para la solución de los más variados de problemas, desde el degradado de un color en un editor de imágenes hasta el cálculo de tensiones de estructuras ingenieriles.
Los programas de las carreras técnicas abordan temáticas sobre métodos numéricos, en algunos casos embebidas dentro de los Cálculos I y II o en otros como una asignatura independiente.
Es importante tener en cuenta que no todas las carreras tienen las mismas necesidades, y niveles de conocimiento en todos los campos. Debido a esto se hace indispensable ajustar el nivel de exigencia de un mismo conocimiento teniendo en cuenta las necesidades individuales de la carrera en cuestión.
En el caso específico de la matemática numérica, un ingeniero industrial debe dominar elementos de la información con nivel de profundidad y detalle. Además, deben tener habilidades de programación y utilización de las tecnologías de la informática y computación, por ejemplo, debe centrar su atención en la eficiencia del proceso de convergencia, así como la optimización de intervalos y demás.
En la enseñanza superior a nivel mundial son reconocidas estas diferencias en los niveles de conocimiento, en muchos casos para clasificar el nivel de dominio de determinado profesional con respecto a un programa en específico o sus habilidades en programación. Es por ello que usualmente se le ponen escalas numéricas o de 3 a 5 valores (ejemplo: experto, desarrollador, usuario, aficionado...) en los formularios o encuestas.
En el caso de la matemática numérica y con el objetivo de mejorar la calidad de los graduados tanto en conocimientos matemáticos como en la utilización de las Tecnologías de la Información y las Comunicaciones (TIC´s), se ha introducido en carreras técnicas cuyo perfil no esté relacionado directamente con la programación, el uso de programas y paquetes de software para la resolución de problemas mediante la vía numérica. No obstante, la estrategia utilizada hasta el momento no ha sido unificada, no solo entre las diferentes carreras, sino entre la misma carrera estudiada en diferentes lugares. Uno de los impedimentos que ha tenido dicha unificación ha sido fundamentalmente la variedad, diversidad y en algunos casos complejidad de los programas disponibles, además de la exigencia de patentes, y en algunos casos de ordenadores demasiado sofisticados no siempre a disposición de los centros de educación o de los estudiantes.
Es por ello que en el presente trabajo se muestra un software que responde a este problema y se considera las necesidades pedagógicas y académicas de nuestros estudiantes.
Además, se hace una comparación de nuestra propuesta con otras alternativas existentes y se exponen algunos detalles de la estructura y licencia del mismo para su generalización. Se proporcionan los criterios dados por los estudiantes de la carrera de Ingeniería Industrial de la UNAH (del Curso Diurno y del Curso por Encuentros) al hacer uso del software en la asignatura de Matemática Numérica.
DESARROLLO
⌅Sobre el programa de la asignatura de matemática numérica
⌅Del estudio del programa de la asignatura matemática numérica se contacta que la mayoría de los temas son comunes para casi todas las carreras en que esta materia es impartida de manera independiente. Esto da sentido a la elaboración de un software que pueda ser utilizable desde el punto de vista docente en la mayor de las carreras técnicas posibles. Además, las carreras en que se imparten algunos temas dentro de los cálculos I y II, no tenían incluidos temas especiales o extras, así que ese caso no afectaría la generalidad del programa.
Los temas y métodos comprendidos en todos los programas consultados fueron:
Temas | Métodos |
---|---|
Raíces de ecuaciones. | |
Sistemas de ecuaciones lineales. | |
Aproximación de funciones. | |
Integración Numérica. | |
Optimización Numérica. | |
Ecuaciones Diferenciales Ordinarias. |
En la mayoría de los programas de la asignatura de matemática numérica se indica explícitamente como uno de los objetivos del programa el manejo y utilización de las tecnologías de la informática y la computación. Pero no se indica u orienta una metodología, ni siquiera se dan indicaciones de cómo o con qué hacerlo y tampoco forma parte de las indicaciones para el proceso de evaluación.
Alternativas actuales para la resolución de problemas numéricos básicos mediante uso de las TIC´s
⌅En la actualidad se tiene una gran variedad de programas que pudieran ser utilizados para la resolución de problemas numéricos, pero la mayoría de ellos presentan inconvenientes que no los hacen idóneos para la utilización docente. Como parte del estudio previo fueron investigados la mayoría de ellos y descartados por los motivos que se exponen a continuación.
Programa | Descripción | Desventajas para uso docente |
---|---|---|
MathLab, Ansys, Mathemática. | Programas muy potentes para niveles avanzados e investigaciones. | |
Maxima, WxMaxima, Octave, R. | Programas de código abierto (Libres). Utilizados en varias universidades del mundo. | |
Mn, Mn2000. | Programas de factura nacional. Elaborado para fines docentes. |
Debe destacarse que ninguno de los programas anteriores ofrece las facilidades de mostrar el proceso de convergencia paso a paso. Casi todos requieren un conjunto bastante grande de pasos para poder graficar los resultados y muy pocos permiten guardar resumen de los resultados u operaciones en formato de texto plano de una forma sencilla.
Estos inconvenientes hacen que su utilización con fines docentes no sea del todo apropiada, ya que implica centrarse en una sintaxis determinada y no en lo esencial del método, su convergencia o eficiencia, que es realmente uno de los objetivos de la asignatura.
Algunas acotaciones sobre el software EasyMN 1.1
⌅La no utilización de ningún paquete informático afecta el proceso docente educativo desde varios puntos de vista:
-
Atenta contra la estrategia curricular de utilización de las TIC´s.
-
Afecta directamente calidad de los graduados no importa su especialidad en el contexto actual de desarrollo tecnológico.
-
La motivación es también afectada ya que el estudiante no vería el reflejo de lo que conoce en un ambiente práctico ni su utilidad.
La utilización de programas con licencia afecta el proceso docente incluso desde el punto de vista económico ya que para utilizarlos sería necesario pagar licencias, como se utilizaría en el centro de educación habría que pagar un número elevado de licencias y el estudiante tendría la necesidad de pagar la suya.
En contraste, de no hacerlo se va en contra de la formación de valores ya que el uso de programas propietarios sin licencias es un robo penado por la ley de derechos de autor. Esto trae consigo además todo un conjunto de implicaciones jurídicas.
Facilidades y aportes del software EasyMN 1.1
⌅Teniendo en cuenta la falta de un software que satisfaga todas las necesidades actuales de nuestros programas de la asignatura Matemática Numérica. Ha sido elaborado una primera versión y corregida teniendo en cuenta todo lo anterior. El programa que se les presenta ha sido elaborado a partir de las necesidades y además de incluir todos los temas de la asignatura, cuenta con las siguientes ventajas que darían respuesta a los inconvenientes anteriores:
-
Interfaz amigable: Ha sido desarrollado en modo gráfico completamente, ello lo hace intuitivo y accesible para todo el público en general. Todas las disponibilidades se encuentran desde varios lugares de manera que la interfaz no oculte la funcionalidad. Esto permite que el usuario se concentre en el trabajo y los métodos a utilizar sin necesidad de dedicar tiempo a aprender una sintaxis o combinaciones de comandos.
-
Multiplataforma: El programa completo ha sido elaborado sobre la plataforma Qt4 de código abierto. Esta plataforma tiene la disponibilidad de poder ser utilizada en dispositivos con Windows, Linux, Mac e incluso Android. Esto fue hecho con la intención de que pudiera ser utilizado en cualquier universidad y que no impidiera la migración al software libre (uno de los objetivos actuales de nuestro país) como ocurre con un gran número de paquetes de software que son utilizados en la actualidad y a cuya dependencia se debe el retardo en el proyecto de migración. De esta forma se es consecuente con el sistema de valores que se quiere formar en nuestros profesionales, al no inducirles a utilizar programas de forma ilegal o sin licencias que tienen respaldo jurídico.
-
Permite modificar todos los parámetros del método utilizado: Uno de los principales problemas de los programas existentes está dada por el hecho de que no permiten modificar algunos de los parámetros de los métodos, como es el caso del paso o número de iteraciones, en algunos casos se permite variar uno pero no los otros, esto, desde un punto de vista didáctico no le aporta al estudiante mucha información sobre la importancia de cada parámetro en el método a modo de que el programa no sea una caja negra. En el proyecto actual se ha tenido esto en cuenta dando al usuario total libertad en este sentido, con lo que el usuario puede alcanzar niveles de profundidad mayores en cuanto a conocimiento y le permite experimentar para que saque conclusiones a partir de su propia experiencia favoreciendo el desarrollo de habilidades investigativas propias
-
Brinda información sobre la convergencia del proceso: Es posible obtener bastante información sobre la marcha del proceso de convergencia. Se han incluido funcionalidades para que muestren no solo los valores de los factores de convergencia, además se pueden presentar gráficas con la dependencia del error y los valores con respecto a la iteración. Esta disponibilidad es de mucha importancia desde el punto de vista didáctico y pedagógico ya que permite al estudiante comprobar la importancia de los factores de convergencia e interpretar su significado. Conjuntamente con la funcionalidad mencionada anteriormente es una de las principales ventajas para su utilización docente.
-
Contador de tiempo: Se ha incluido un pequeño indicador de tiempo, que muestra el tiempo consumido por la operación más reciente. Esta funcionalidad es una medida también de la eficiencia del proceso y no se ha encontrado en ninguno de los programas con que se contaba anteriormente.
-
Gráficos de calidad: Para la creación de los gráficos se ha decidido utilizar la librería Mathgl que utiliza la calidad del sistema OpenGL para la creación de gráficos con de buena apariencia y de alta precisión. Esta librería es también multiplataforma y de código abierto. La calidad de los gráficos tiene importancia en lo referente a la motivación al hacer al programa más interesante y atractivo. Y los gráficos pueden ser utilizados en trabajos e investigaciones.
-
Ayuda bien elaborada: A pesar de que la interfaz del programa no requiere la lectura de una ayuda para su utilización, se ha elaborado un sistema de ayuda que permite conocer todas las funcionalidades del programa y las vías de acceder a ellas, así como información esencial sobre los métodos. De este modo la ayuda funciona indirectamente como fuente de información teórico-práctica sobre los métodos.
-
Permite hacer resúmenes: Todas las operaciones tienen una funcionalidad que permite guardar un resumen de la operación más reciente realizada. Dicho resumen contiene el tipo de problema, método utilizado, datos iniciales, resultados obtenidos y en el caso métodos iterativos, se incluye una tabla con resultados parciales. Además de las fecha y hora de la operación. Se permite guardar más de un resumen en el mismo fichero. Esto se hace a modo de muchos programas profesionales similares para que los resultados y datos puedan ser manipulados con mayor facilidad o analizados posteriormente con fines investigativos u otros.
-
Facilidades para exportar los gráficos: Se ha incluido una funcionalidad para exportar los gráficos obtenidos a diferentes formatos png, jpg y pdf. Todos con alta calidad y precisión y de un modo sencillo. De este modo se garantiza la viabilidad de elaboración de informes y trabajos utilizando el programa, con el objetivo de poder desarrollar tareas extraclase y proyectos investigativos que aporten al proceso de evaluación sistemática.
-
Estructura abierta: Una estructura abierta permite que sea más fácil agregar nuevas funcionalidades al programa. Aunque ha sido elaborado inicialmente para la asignatura Matemática Numérica, sería posible agregarle contenidos de otras asignaturas como estadística o probabilidades. Es por ello que la estructura se ha dejado abierta de modo que no sea demasiado complicado hacerle anexos y que estos no se vean como tal. Así se deja la puerta abierta para la posterior evolución del programa para agregarle funcionalidades para su uso en otras asignaturas.
-
Eficiente: Todo el código ha sido desarrollado en lenguaje C y C++. Estos lenguajes se encuentran en la lista de los más eficientes y con mejor numérica con los que se cuenta en la actualidad, superados solamente por Fortran y Ensamblador en estos aspectos. Al ser lenguajes compilados hacen un uso óptimo de los recursos y no requieren plataformas instaladas para funcionar. Como las librerías empleadas son libres pueden ser distribuidas con el propio instalador del programa haciendo que las llamadas sean más eficientes, por lo que no se requiere de ordenadores demasiado potentes para utilizarlo. Con esto se ha tenido en cuenta la disponibilidad real de medios informáticos de nuestras universidades para que el programa pueda ser utilizado en forma masiva.
-
Fácil de instalar: Se han desarrollado instaladores para Microsoft Windows (.exe), Linux (.deb y .rpm) de modo que la instalación sea un proceso muy fácil y rápido en ambas plataformas. Con eso se protege además de la posible infección de virus o de la acción devastadora de algunos antivirus en la plataforma Windows.
-
Protección contra ciclos infinitos: Esta funcionalidad se ha incluido para que los usuarios tengan la total libertad de experimentar con los parámetros de los métodos sin consecuencias desastrosas. Se ha impuesto un límite en cada método bien alto para el número de operaciones iterativas de modo que no haya ciclos infinitos que puedan volver al programa inestable.
Todas las características anteriores dan respuesta directa a las dificultades detectadas en las opciones actuales, y brindando la mayor cantidad de información posible y total libertad para la investigación y estudio. Desde un punto de vista pedagógico el programa tiene la ventaja de no ser una caja negra ya que va mostrando cada uno de los pasos que realiza y en la ayuda se presenta una explicación de los métodos y las ecuaciones utilizadas.
Como incluye todos los capítulos de los programas de matemática numérica actual puede ser utilizado por casi todas las carreras que lo consideren necesario e incluso en algunas investigaciones. No es recomendable utilizarlo en investigaciones de gran envergadura ya que no es ese el fin con que ha sido creado y para eso se requiere primero una validación del mismo, lo que al ser un programa que utiliza gráficas y librerías externas, se hace más complejo al requerirse una validación rigurosa de las librerías utilizadas con autorización de sus autores.
Propuesta de la herramienta y requerimientos técnicos de la aplicación
⌅Un ordenador permite obtener soluciones numéricas de distintos problemas de una manera muy rápida. En la matemática aplicada un problema tiene solución satisfactoria si se puede proporcionar un algoritmo en un ordenador de tal manera que se tengan disponibles las soluciones numéricas.
En esta herramienta vamos a encontrar todos los componentes esenciales a la hora de impartir la asignatura Matemática Numérica, siendo una vía de acceso a todas aquellos estudiantes que deseen ejercitar este tema, así como un recurso muy significativo a la hora de la enseñanza del mismo.
A través del icono
EasyMN.exe (ejecutable) se accede directamente al software propuesto como herramienta de trabajo. El menú principal (Figura #1) cuenta con dos opciones relacionadas con (1) Acciones y (2) Ayuda:Cada una de estas opciones se describe a continuación:
-
Las Acciones brindan las opciones de graficar funciones (Figura #2), calcular raíces (Figura #3), solucionar sistemas de ecuaciones lineales (Figura #4), interpolación e integración numérica (Figuras #5 y #6), y solucionar ecuaciones diferenciales (Figura #7). Cada una de ellas ofrece posibilidades de trabajo que facilitan la realización de las operaciones específicas.
-
La otra parte, la opción Ayuda proporciona un comentario indispensable sobre el software (Figura #8) y una documentación de ayuda para el manejo del mismo con 6 pestañas que abarcan los contenidos que propone el Menú Principal (Figura #9).
Requerimientos técnicos
⌅La aplicación no exige de una computadora de elevadas condiciones de hardware y software. Esta debe cumplir como mínimo los siguientes requisitos.
-
Hardware: Procesador: Pentium III; velocidad: 650 MHz; RAM: 128 Mb.
-
Software: Sistema Operativo: Windows 7 (o superior). Adicionado a esto, se debe considerar la modalidad del material que se vaya a utilizar ya que los usuarios que empleen esta herramienta deben contar con lector de CD-ROM en la computadora o un puerto USB. Por otra parte, los usuarios que accedan a través de una red, depende de sus condiciones de conexión.
Criterios sobre el empleo de la aplicación como herramienta digital
⌅Al finalizar la asignatura Matemática Numérica, se aplica una encuesta sencilla para CD y CPE. Se les facilitó a los estudiantes de la carrera de Ingeniería Industrial dar criterios sobre el uso de EasyMN 1.1 en las actividades docentes de la asignatura Matemática IV, lo cual permitió llegar a las siguientes valoraciones por parte del equipo de trabajo de esta investigación. A continuación, se realiza un resumen de los resultados obtenidos:
-
Esta herramienta facilita el uso y el manejo del cálculo en la matemática numérica. El 98,67 % de los estudiantes del Curso Diurno (CD) y el 99,02 % de los estudiantes del Curso por Encuentros (CPE), han expresado satisfacción con su empleo.
-
Al utilizarlo en las actividades de trabajo independiente, el 100 % de los estudiantes (CD y CPE), expresan plena satisfacción con su uso, considerando la Ayuda muy efectiva y necesaria para confrontarla en el trabajo individual.
-
En su generalización y aplicación en la solución de problemas planteados en la Matemática Numérica, los estudiantes (CD y CPE) expresan sentirse 100 % motivados por su uso, y encuentran el software agradable en su propuesta de ambiente que brinda para su fácil manejo.
-
El 95,25 % de los estudiantes de CD consideran que el software presenta características diferencias y ventajosas, al compararlo con otras aplicaciones similares utilizadas anteriormente. Para los estudiantes de CPE, el 100 % de los educandos la apoyan totalmente.
CONCLUSIONES
⌅-
El software EasyMN 1.1 es una herramienta de apoyo para la enseñanza de la matemática numérica, en la carrera técnica de Ingeniería Industrial y los usuarios (98,67 % del CD y 99,02 % del CPE) expresan satisfacción con su empleo.
-
Se utiliza para trabajar en la solución de problemas relacionados con la matemática numérica en carreras técnicas cuyo perfil no está orientado directamente hacia la programación informática.