Ampliación de la herramienta JFLAP para la generación

Anuncio
Título
Ampliación de la herramienta JFLAP para la generación automática de problemas de Autómatas Finitos
Grado
Grado en Ingeniería Informática
Presentación y Objetivos
JFLAP (http://www.cs.duke.edu/csed/jflap/) es una herramienta Java que facilita la experimentación con autómatas finitos, autómatas a pila y máquinas de Turing, y su equivalencia con expresiones regulares y gramáticas. JFLAP permite la definición de una máquina de estados finitos y permite al usuario experimentar con diferentes cadenas de entrada.
Estas funcionalidades hacen de JFLAP una herramienta idónea para el apoyo a asignaturas de Autómatas, gramáticas y lenguajes formales, comunes en los planes de estudio de las titulaciones de Informática.
Con la implantación del llamado marco Europeo de Educación Superior (EEES o plan Bolonia) las asignaturas de los nuevos grados deben ajustarse para dar más protagonismo al estudiante, proponiendo tareas de evaluación continua que puntúen junto con el examen final, en la calificación final del estudiante. Es importante en este contexto, el planteamiento de diversos ejercicios para que el alumno pueda practicar los contenidos vistos en teoría. A pesar de las ventajas que aporta el nuevo marco EEES para promover un aprendizaje más activo por parte del estudiante, la corrección de todos estos ejercicios puede suponer un gran cuello de botella en aquellos cursos donde el número de alumnos sea elevado haciendo que el profesor no pueda evaluarlos todos y por tanto, el alumno se desanime y no los realice. Éste es el caso de la Universidad Nacional de Educación a Distancia (UNED), donde la asignatura de Autómatas, Gramáticas y Lenguajes cuenta con más de 2000 alumnos.
Sería interesante, por tanto, contar con una herramienta que genere y evalue automáticamente ejercicios para la asignatura de Automátas, Gramáticas y Lenguajes. En un proyecto anterior (denominado JFLAPUNED), ya se ha implementado parte de evaluación automática de problemas utilizando JFLAP.
El objetivo de este proyecto es el de implementar en JAVA la generación autómatica de problemas de autómatas finitos. Para ello, podemos destacar las siguientes especificaciones básicas:
●
●
●
●
●
●
Generación automática de gramáticas regulares a partir de una serie de parámetros (por ejemplo, número de terminales y no terminales). En esta generación se tendrá en cuenta una graduación en la complejidad de las gramáticas.
Generación de la expresión regular equivalente a la gramática generada anteriormente.
Generación del autómata finito equivalente a la expresión regular y gramáticas anteriores.
Creación del interfaz con el estudiante para el planteamiento y resolución de los ejercicios.
Integración con la herramienta JFLAPUNED para la resolución de ejercicios.
En JFLAP los autómatas se dibujan a través de la interfaz gráfica. Cuando se graba ese ●
●
●
autómata en un fichero, se genera un archivo XML. Este proyecto deberá permitir que se exporte el archivo XML del ejercicio generado a un fichero Latex siguiendo la especificación de autómatas dado en el paquete Gastex (http://www.lsv.ens­
cachan.fr/~gastin/gastex/gastex.html).
La especificación de los ejercicios generados deben guardarse en base de datos.
Debe poder emitir informes de evaluación y guardarlos en una base de datos.
Debe poder ejecutarse por línea de comando.
Requisitos
●
●
Conocimientos de programación en Java
Conocimientos incluidos en la asignatura Autómatas, Gramáticas y Lenguajes
Equipo Docente
Elena Gaudioso Vázquez
Descargar