Inteligencia artificial para la automatización de horarios escolares
Por Érika Rodríguez
Zacatecas, Zacatecas. 29 de junio de 2016 (Agencia Informativa Conacyt).- El Premio al Mejor Software del Instituto Politécnico Nacional (IPN) en nivel superior en su más reciente edición, correspondiente a 2015, fue otorgado al desarrollo de un sistema automatizado para generar horarios escolares mediante el uso de inteligencia artificial, el cual resuelve en tres minutos la dinámica de sistematización que tradicionalmente tardaba tres meses en ser obtenida.
Gregorio Antonio Ibarra Carrillo y Antonio Alfredo Ramírez Ramírez son los desarrolladores de dicho sistema, entonces alumnos y hoy egresados de la carrera de ingeniería en sistemas computacionales de la Unidad Profesional Interdisciplinaria de Ingeniería, Campus Zacatecas (UPIIZ), del IPN.
Ambos alumnos recibieron tutoría durante todo el desarrollo del sistema por el doctor en ciencias de la computación Fernando Flores Mejía; el maestro en ciencias Christophe Ndjatchi Mbe Koua apoyó en el análisis matemático para las evaluaciones de las funciones objetivo y el maestro en ciencias Carlos Daniel Rico Mandujano, responsable técnico de la generación de horarios de la UPIIZ IPN.
En entrevista con la Agencia Informativa Conacyt, Gregorio Ibarra mencionó que para el desarrollo de dicho sistema fue implementada la técnica de inteligencia artificial conocida como algoritmos genéticos, la cual es utilizada para resolver problemas de combinatorias mediante un análisis matemático con funciones objetivo.
“Este sistema se encarga de hacer horarios para la escuela. Se escucha muy sencillo, pero digamos que para una computadora resolver cuestiones de acción humana es muy complicado. Estamos hablando de, por ejemplo, organizar una planta docente de 70 maestros, distribuidos en 50 espacios con sus respectivos grupos y restricciones de horas clase, en diferentes carreras. Por ello, este tipo de problemas son más abocados a la inteligencia artificial, pues están sometidos a una serie de variables con múltiples limitaciones”, describió.
¿Cómo funcionan los algoritmos genéticos en inteligencia artificial?
Gregorio Ibarra Carrillo refirió que los algoritmos genéticos están basados en la reproducción de cromosomas de ADN. Al respecto, describió: “En este caso, una cadena de ADN conformada por nucleótidos, los nucleótidos en programación son representados por una cadena de datos de profesores, asignaturas, grupos y espacios físicos. Cuando una cadena de ADN se fusiona con otra, sus propiedades se mezclan y resulta una combinación óptima. En nuestro trabajo no fue posible hacer reproducción porque representaría mezclar las clases de un maestro con otro”.
Describió la variedad de los pares de datos, los cuales se someten a una función objetivo, la cual está basada en la adaptabilidad natural o “supervivencia del más fuerte”. “De esta manera, cuando se indica en el algoritmo una función objetivo, evalúa la combinación representada en cromosomas formada por: materia-grupo-profesor-aula. Los más aptos se seleccionan y al final, forman el horario”.
Refirió que para este proyecto, él y su compañero programaron una variante del algoritmo genético, porque hay cruzas que, a diferencia de la genética, no se pueden dar en la creación de horarios, como es el caso de la impartición de asignaturas, ya que un docente no puede dar una materia que no le corresponde.
“Entonces tomamos las partes del algoritmo genético que necesitábamos para poder generar la resolución y no utilizamos datos, sino representaciones de datos con dígitos del cero al cuatro. Los genetistas trabajan con unos y ceros, pero nosotros utilizamos más números enteros por las restricciones en las cruzas”, describió Antonio Ramírez.
Principales restricciones que limitan la resolución de un horario escolar
Gregorio Ibarra describió que son múltiples las variables que se incluyen en la base de datos para generar un horario escolar. Entre ellas, la disposición de tiempo del docente para impartir su clase, el máximo y mínimo número de horas clase que tiene permitido impartir a la semana, si desempeña funciones administrativas o si imparte en diferentes carreras.
“Otras restricciones importantes son el aprovechamiento de los espacios físicos, ya que los centros de cómputo o laboratorios son lugares compartidos, a diferencia de las aulas, y la variedad de tiempos clase entre carreras, ya que existen clases con duración de media, una o dos horas”, agregó.
Premio al Mejor Software del IPN
Gregorio Ibarra Carrillo señaló que la convocatoria para obtener el Premio al Mejor Software del IPN se ejecuta una vez al año. El concurso se organiza en varias categorías, incluyendo nivel superior, medio superior, maestría y doctorado. Pueden participar alumnos, docentes y personal administrativo.
Ing. Gregorio Antonio Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo. Antonio Alfredo Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo. |
Agregó que al obtener el primer lugar en el nivel medio superior de dicho premio, el sistema desarrollado se encuentra sujeto a la normatividad del IPN. “El sistema se encuentra funcionando y puede ser adaptado a cualquier institución que requiera la generación de horarios, ya que depende de la base de datos y restricciones que el usuario introduzca”, detalló.
Herramientas auxiliares de software en sistema de generación de horarios
Antonio Ramírez especificó que el sistema de generación de horarios se estuvo desarrollando desde enero de 2014, a manera de trabajo terminal, aplicación que se apoya en un marco teórico con un análisis dinámico para ser implementado. El desarrollo concluyó en febrero de 2015, cuando se sometió a evaluación para obtener el premio referido.
“Por tratarse de un sistema, se utiliza tanto un archivo ejecutable como una base de datos en su conexión. La base de datos incluso puede ser remota, ya que está vinculada con la aplicación y puede ser utilizada por varios usuarios a distancia. Para su uso no se requiere un equipo especializado, mas que una computadora”, narró.
Antonio Ramírez señaló que el sistema se desarrolló con el uso de software libre, a través de lenguaje de programación Java, además de MySQL para base de datos.
Esta obra cuyo autor es Agencia Informativa Conacyt está bajo una licencia de Reconocimiento 4.0 Internacional de Creative Commons.