MaGraDa
El paquete de software MaGraDa (Grafos para Matemática Discreta) es una aplicación informática programada en lenguaje JAVA y diseñada específicamente para trabajar con grafos. MaGraDa trabaja con grafos tanto dirigidos como no dirigidos y ponderados como no ponderados. Según la filosofía de MaGraDa podríamos trabajar con un número ilimitado de vértices, pero hemos creído conveniente sólo permitir trabajar con grafos de hasta un máximo de 50 vértices. Este paquete es sencillo y cómodo de manejar, está basado en menús sobre pantalla y consta de dos pantallas de visualización:
- Modo texto: Llamémoslo de esta forma para diferenciarlo del otro. Permite trabajar con los grafos de forma analítica. Es decir, trabajaremos en todo momento con los datos del grafo, pero sin visualizarlo gráficamente.
- Modo gráfico: trabaja con los grafos de forma que pueden verse gráficamente.
Ambas pantallas de trabajo son prácticamente equivalentes en funcionalidad. Es decir, no hay ningún método que esté sólo implementado para una forma de trabajo exclusivamente. Sin embargo, la forma de ofrecer los resultados al usuario no es la misma en los dos modos. En cada uno de ellos se muestran los resultados intentando maximizar la comprensión de los mismos por el usuario. Básicamente, podemos agrupar las aplicaciones que nos ofrece MaGraDa en tres partes:
- Manejo de grafos (Grafo): Ésta es la parte donde se pueden crear grafos nuevos o abrir grafos ya creados desde fichero, modificarlos, borrarlos de memoria, seleccionarlos o guardarlos en un fichero para su tratamiento posterior.
- Cálculos Básicos: Hay una serie de características o propiedades básicas de los grafos que se pueden averiguar fácilmente con esta serie de métodos, tales como grado de un vértice, matriz de adyacencia o pesos, ver aristas (o arcos) que pueda tener el grafo. También, en el caso de que el grafo sea dirigido, MaGraDa nos ofrece la utilidad de obtener su correspondiente grafo no dirigido asociado. Para grafos no dirigidos obtiene un árbol generador de los muchos que pueda tener. Podemos estudiar, también desde este menú, si dos grafos son isomorfos, ver qué vértices alcanzan a otros, así como qué vértices son alcanzados por otros. Nos indica además si el grafo es simple, cíclico, completo o conexo. Otra aplicación de gran interés es el cálculo de componentes conexas.
- Algoritmos: Esta última parte es la más importante de la aplicación. Dispone de algoritmos muy conocidos en el mundo de los grafos, tales como Warshall, Fleury, Caminos más cortos en grafos acíclicos, PERT, Dijkstra, Floyd-Warshall, Kruskal y Prim. Sin duda lo más importante aquí es que MaGraDa los aplica sobre los grafos en curso, de manera que el usuario pueda ver los resultados intermedios para así entender mejor el funcionamiento del correspondiente algoritmo.
Parte de las prácticas de Matemáticas I de Ingeniería Multimedia y de Matemática Discreta de Ingeniería Informática se realizan con este paquete de software, además de ser utilizado en otras universidades. Tanto la explicación de la aplicación MaGraDa como un guión para el desarrollo de prácticas con MaGraDa se pueden obtener en el siguiente libro, que se incluye aquí en formato pdf:
M. Caballero, V. Migallón y J. Penadés
Practicas de matemática discreta con MaGraDa
Servicio de Publicaciones de la Universidad de Alicante
MaGraDa se ofrece como un programa de libre distribución. En el siguiente enlace esta disponible la aplicación en un archivo ZIP. En él encontrareis todos los ficheros necesarios para su instalación asi como un archivo leeme.txt con recomendaciones para su instalación.
MaGraDa 1.1
La plataforma sobre la que trabaja MaGraDa, es decir, JAVA, podéis obtenerla directamente de la página correspondiente de SUN: http://java.sun.com/j2se/1.3/download-windows.html
La herramienta ArtEM: Aritmética Entera y Modular
La herramienta ArtEM (Aritmética Entera y Modular) es una aplicación informática programada en Visual Basic y desarrollada con el fin de ser utilizada en las prácticas de cualquier asignatura que incluya como tópicos los relacionados con la aritmética entera y modular. Está estructurada en 5 menús básicos:
- Euclides.
- Ecuaciones diofánticas.
- Números primos.
- Aritmética modular.
- Aplicación a la criptografía.
Los tres primeros menús están dedicados a la aritmética entera, el cuarto menú proporciona cálculos básicos en la aritmética modular como los cálculos del representante de clase, inverso de un elemento, función de Euler y potencias. El quinto menú constituye una aplicación a la criptografía centrándose en dos criptosistemas, uno de clave privada y otro de clave pública.
Todos los algoritmos disponibles en ArtEM se desarrollan de tal forma que el usuario es capaz de reconocer los pasos que se han seguido para su ejecución, de manera que se obtiene un importante valor pedagógico. Una breve explicación del contenido de ArtEM puede verse en el trabajo presentado a las VII Jornadas de Enseñanza Universitara de la Informática. Otro documento con más ejemplos.
La herramienta ArtEM podéis encontrarla aquí.