Proyectos


DESARROLLO DE UNA HERRAMIENTA COMPUTACIONAL PARA LA PROGRAMACIÓN EFICIENTE DE HORARIOS DE CLASE EN UNIVERSIDAD TECNOLÓGICA DE PEREIRA

 

INVESTIGADOR(ES) PRINCIPAL(ES):

NOMBRE
DEDICACIÓN

Mauricio Granada Echeverri

13 horas

 

CODIGO CIE

6-18-8

NOMBRE DEL GRUPO DE INVESTIGACIÓN
PROPONENTE

DESARROLLO EN INVESTIGACIÓN OPERATIVA. DINOP

SI
NOMBRE
PARTICIPACION
DEDICACIÓN

Ricardo Alberto Hincapié Isaza

Coinvestigador

13 Horas

John Wilmer Escobar Velasquez

Coinvestigador

0 Horas

 

TIPO DE CONVOCATORIA

2017. Proyectos De Desarrollo Tecnológico O Innovación

TIPO DE PROYECTO

Desarrollo Experimental

OBJETIVO(S)

Objetivo general: Implementar una herramienta computacional que permita resolver de forma óptima el problema de asignación de horarios de clase en UTP, considerando restricciones de recursos disponibles, tales como espacio, profesores y tiempo. Objetivos específicos: a) Realizar una revisión del estado del arte alrededor de la temática y estudiar los diferentes modelos matemáticos que describen el problema de asignación de horarios de clase (PAHC). b) Entender y analizar la forma como actualmente se realiza en UTP el procedimiento de asignación de horarios de clase para identificar los parámetros, variables, e información disponible del problema en el contexto de la UTP. c) Definir un modelo matemático que describa el PAHC, que se adapte a los requerimientos propuestos y que contenga parámetros y variables del contexto de la universidad. Verificar la validez del modelo, usando un software de optimización comercial y casos de prueba iniciales. d) Desarrollar una herramienta computacional que incorpore la metodología de solución. e) Desarrollar una prueba piloto en el programa de ingeniería eléctrica de la UTP para validar la eficiencia de la metodología y de la herramienta computacional.

RESUMEN

La metodología aplicada consta de un algoritmo genético que busca encontrar la mejor asignación de salones para cada día de la semana, cuyo gen tiene una codificación entera. Cada elemento contenido en el gen corresponde a un evento al que debe ser asignado un salón de clase. Para esto, la base de datos es clasificada y se crean nuevas estructuras de datos, pero esta vez son catalogadas según el día. La primera estructura de datos se logra separando los bloques de horarios, de esta manera es posible identificar los eventos que corresponden a cada día de la semana y así alimentar el algoritmo que realiza la asignación de salones a cada evento. La estructura de datos para cada día es como se muestra a continuación: InfoBloquesDia IdBloque: Identificador asignado a cada bloque de horario. IdMateria: Identificador del evento. Hora: hora del día en que debe ser asignad el evento. Duración: duración del evento en el día. Salón: Salón al que se asigna el evento. Un vector con números enteros es utilizado para contener en cada posición el Id de los bloques. El tamaño del vector es diferente para cada día y depende de cuantos eventos deben ser asignados en el día. Así mismo, los números son posicionados de manera aleatoria de tal forma que los individuos de cada población sean diferentes y sean aplicables todos los operadores propios de los algoritmos genéticos. El vector es recorrido en orden y en cada posición se verifican los atributos y condiciones propias del evento correspondiente, esto con el propósito de que sea posible la asignación de un salón que satisfaga las necesidades de dicho evento. Para lo anterior, una lista de salones es utilizada, con la cual se deben cruzar los requerimientos del evento actual, verificando disponibilidad del salón, cercanía al edificio o dependencia del evento, capacidad y entre otras condiciones que más adelante serán evaluadas y cuantificadas con el fin de asignar un valor que al término del proceso definirá qué configuración es más atractiva

ESTADO

Concluye Satisfactoriamente

FECHA DE INICIO

14/03/2018

FECHA DE FINALIZACION

14/11/2018

PRODUCTOS

NOMBRE
CATEGORÍA
ENLACE

ProClass : En proceso

Software

Prueba piloto: en proceso

Productos empresariales - Innovaciones en procesos