SlideShare una empresa de Scribd logo
DISEÑO Y VALIDACIÓN DE UN MODELO MATEMÁTICO PARA EL
PROCESO DE ASIGNACIÓN DE SALONES EN EL EDIFICIO CAMILO
TORRES DE LA UNIVERSIDAD INDUSTRIAL DE SANTANDER.

JOHANNA PATRICIA DÍAZ SILVA
KAREN JULIANA PINTO BOHORQUEZ

ESCUELA DE ESTUDIOS INDUSTRIALES Y EMPRESARIALES
FACULTAD DE INGENIERIAS FISICO-MECÁNICAS
UNIVERSIDAD INDUSTRIAL DE SANTANDER
BUCARAMANGA
2009
DISEÑO Y VALIDACIÓN DE UN MODELO MATEMÁTICO PARA EL
PROCESO DE ASIGNACIÓN DE SALONES EN EL EDIFICIO CAMILO
TORRES DE LA UNIVERSIDAD INDUSTRIAL DE SANTANDER.

JOHANNA PATRICIA DÍAZ SILVA
KAREN JULIANA PINTO BOHORQUEZ

Director:
JAVIER EDUARDO ARIAS OSORIO
M. Sc en Administración

ESCUELA DE ESTUDIOS INDUSTRIALES Y EMPRESARIALES
FACULTAD DE INGENIERIAS FISICO-MECÁNICAS
UNIVERSIDAD INDUSTRIAL DE SANTANDER
BUCARAMANGA
2009
131520
131520
131520
131520
A Dios por darme la fuerza y constancia para seguir adelante
A mis padres por brindarme su amor y paciencia
A Sandra, Lina y Diego por su apoyo incondicional y constante
Colaboración.
A Ana María, Ashley e Isabella por alegrar los momentos difíciles
A mis amigos y compañeros por su cariño y las largas jornadas
De estudio.
A Patricia por hacer de este proyecto una realidad
A Diego por su compañía y paciencia durante tanto tiempo.

Karen Juliana
A Dios por siempre llevarme de su mano
A mis padres por hacer de mi lo que soy, en especial a mi mamá
Por su apoyo incondicional.
A Santiago por su amor, paciencia y ser la motivación de mi vida.

A Daniel por compartir su vida conmigo

A mis hermanos Sandra, Zunny, Paola, Diego y sobrinos por creer en mí.

A Karen por su amistad.

Johanna Patricia
AGRADECIMIENTOS

Las autoras expresan los agradecimientos a:

•

A la Oficina de Admisiones y Registro Académico de la Universidad
Industrial de Santander por la información suministrada.

•

A los directores de las Escuelas de Física, Química, Matemáticas y
Biología por la por su tiempo e información.

•

Al profesor Pablo Andrés Maya Duque de la Universidad de Antioquia,
quien nos acompaño y contribuyo con sus conocimientos a culminar esta
etapa de la carrera.

•

A los profesores de la Escuela de Estudios Industriales y Empresariales
por la formación y conocimientos transmitidos.

•

A aquellos que directa o indirectamente colaboraron para alcanzar éste
logro.
TABLA DE CONTENIDO
Página
INTRODUCCIÓN ............................................................................................... 20 
1 GENERALIDADES ........................................................................................ 21 
1.1 

DESCRIPCIÓN DEL TEMA DE INVESTIGACIÓN .............................. 21 

1.2 

OBJETIVOS DEL TRABAJO DE GRADO ............................................ 22 

1.2.1 

Objetivo General ............................................................................ 22 

1.2.2 

Objetivos Específicos ..................................................................... 23 

1.3 
1.4 
2 

ALCANCE ............................................................................................. 23 
ESTRUCTURA DEL DOCUMENTO. .................................................... 24 

ESTADO DEL ARTE ................................................................................... 25 
2.1 

Eficiencia computacional ...................................................................... 26 

2.1.1 

Problemas P ................................................................................... 26 

2.1.2 

Problemas NP ................................................................................ 26 

2.1.3 

Problemas NP-Completos .............................................................. 27 

2.2 

Programación de actividades (Timetabling) en instituciones

Universitarias .................................................................................................. 28 
2.3 

Programación de cursos en instituciones universitarias ...................... 29 

2.4 

Caracterización de las restricciones del problema de asignación de

cursos ............................................................................................................. 29 
2.5 

Estrategias de solución ......................................................................... 32 

2.5.1 

Métodos Secuenciales ................................................................... 32 

2.5.2 

Métodos Agrupamiento. ................................................................. 33 

2.5.3 

Métodos basados en restricciones................................................. 33 

2.5.4 

Métodos Meta-heurísticos. ............................................................. 34 
2.6 
3 

Herramienta Informática de Apoyo para el Desarrollo del Proyecto .... 45 

DESCRIPCIÓN DE LA INSTANCIA ........................................................... 46 
3.1 

Procesos de Asignación Horaria .......................................................... 46 

3.2 

Proceso de Asignación por Escuelas ................................................... 47 

3.2.1 
3.2.2 

Escuela de Física ........................................................................... 48 

3.2.3 

Escuela de Matemáticas ................................................................ 49 

3.2.4 
4 

Escuela de Química ....................................................................... 48 

Escuela de Biología........................................................................ 49 

FORMULACIÓN DEL MODELO PARA LA ASIGNACIÓN DE CURSOS .. 50 
4.1 
4.2 

Conjuntos .............................................................................................. 52 

4.3 

Función sobre slots ............................................................................... 53 

4.4 

Parámetros............................................................................................ 53 

4.5 

Variable de decisión .............................................................................. 54 

4.6 
5 

Introducción........................................................................................... 50 

Modelo Matemático ............................................................................... 54 

IMPLEMENTACIÓN DEL MODELO MATEMÁTICO .................................. 56 
5.1 

Preprocesamiento ................................................................................. 56 

5.1.1 

Escuela Química ............................................................................ 60 

5.1.2 

Escuela de Física ........................................................................... 63 

5.1.3 

Escuela de Biología........................................................................ 66 

5.1.4 

Escuela Matemáticas ..................................................................... 69 

5.2 
6 

Modela Matemático en Xpress-MP ....................................................... 75 

RESULTADOS COMPUTACIONALES ...................................................... 77 
6.1 

Escuela de Física .................................................................................. 78 

6.2 

Escuela de Biología .............................................................................. 84 
6.3 

Escuela de Química .............................................................................. 87 

6.4 

Escuela de Matemáticas ....................................................................... 91 

6 CONCLUSIONES Y RECOMENDACIONES............................................... 103 
BIBLIOGRAFIA ................................................................................................ 104 
LISTA DE TABLAS
Página
Tabla 1: Codificación .......................................................................................... 57 
Tabla 2: Cálculo del tamaño de la matriz HF ..................................................... 58 
Tabla 3: Combinaciones de acuerdo con la Intensidad ..................................... 58 
Tabla 4. Definición del conjunto de

M kg

........................................................ 59 

Tabla 5: Valores Establecidos para el cálculo del Beneficio ............................. 59 
Tabla 6: Características de los Grupos Escuela de Química ............................ 60 
Tabla 7: Relación de Grupos por Profesor escuela de Química ....................... 62 
Tabla 8: Características de las aulas escuela de Química ................................ 63 
Tabla 9: Características de los Grupos Escuela de Física ................................ 63 
Tabla 10 Relación de Grupos por Profesor escuela de Física .......................... 65 
Tabla 11: Características de las aulas escuela de Física .................................. 66 
Tabla 12: Características de los Grupos Escuela de Biología........................... 67 
Tabla 13: Relación de Grupos por Profesor escuela de Biología ...................... 68 
Tabla 14: Características de las aulas escuela de Biología .............................. 68 
Tabla 15: Características de los Grupos Escuela de Matemáticas ................... 69 
Tabla 16: Relación de Grupos por Profesor escuela de Matemáticas .............. 72 
Tabla 17: Características de las aulas escuela de Matemáticas ....................... 74 
Tabla 18. Resultados Escuela de Física ............................................................ 83 
Tabla 19. Resultados Escuela de Biología ........................................................ 86 
Tabla 20. Resultados Escuela de Química ........................................................ 90 
Tabla 21. Resultados Escuela de Matemáticas ................................................ 95 
LISTA DE FIGURAS
Página
Figura 1. Estructura Básica algoritmo lento simulado ....................................... 39 
Figura 2. Codificación......................................................................................... 56 
Figura 3. Xpress ................................................................................................. 77 
Figura 4. Representación Horaria ...................................................................... 78 
Figura 5. Resultados Escuela de Física ............................................................ 79 
Figura 6. Stats Escuela de Física ...................................................................... 80 
Figura 7. MIP Search escuela de Física ............................................................ 80 
Figura 8. Asignación Horaria para los Salones de la Escuela de Física .......... 81 
Figura 9. Stats Escuela de Biología ................................................................... 85 
Figura 10. Resultados Escuela de Biología ....................................................... 85 
Figura 11.MIP Escuela de Química ................................................................... 87 
Figura 12. Asignación Horaria para los Salones de la Escuela de Biología ..... 88 
Figura 13. Stats Escuela de Química................................................................. 89 
Figura 14. Output Escuela de Química ............................................................. 89 
Figura 15. Asignación Horaria para los Salones de la Escuela de Química ..... 92 
Figura 16. Stats Escuela de Matemáticas ......................................................... 94 
Figura 17. MP seach Escuela de Matemáticas.................................................. 95 
Figura 18. Asignación Horaria para los Salones de la Escuela de Matemáticas ....... 100 
LISTA DE ANEXOS

ANEXO 1. Listado de Horario del Aula y Listado General de Horarios 
ANEXO 2. Cartas a las instancias 
ANEXO 3. Algoritmo para la Generación del Tamaño de la Matriz HF 
ANEXO 4.Algoritmo para la Generación de posibles Franjas Horarias 
ANEXO 5. Algoritmo Combinación de Aulas Factibles 
ANEXO 6.Algoritmo Generación de Patrones de Tiempo 
ANEXO 7.Algoritmo Generación de Beneficios 
ANEXO 8.Código del modelo en Express GRUPOS CON MAX SLOTS 5 
RESUMEN

TITULO: DISEÑO Y VALIDACIÓN DE UN MODELO MATEMÁTICO PARA EL
PROCESO DE ASIGNACIÓN DE SALONES EN EL EDIFICIO
CAMILO TORRES DE LA UNIVERSIDAD INDUSTRIAL DE
SANTANDER∗.
AUTORES: JOHANNA PATRICIA DIAZ SILVA
KAREN JULIANA PINTO BOHORQUEZ∗∗
PALABRAS CLAVES:
Problema de asignación,
preprocesamiento, validación.

modelamiento

exacto,

algoritmos

de

DESCRIPCION:
El presente trabajo aborda el problema de asignación Timetabling,
desarrollando específicamente la asignación de grupos a salones y de grupos a
periodos de tiempo. El problema consiste en hallar un salón apropiado para
cada uno de los grupos que se programan en el Edificio Camilo Torres de la
Universidad Industrial de Santander y que a su vez estos grupos se asignen
dentro de las preferencias horarias del profesor.
Se propone un modelo matemático que considera: los objetivos de la oficina
de admisiones, las preferencias de los profesores por un horario factible, la
asignación según el tipo de profesor y la cantidad de períodos requeridos
semanalmente por cada grupo, además de presentar las restricciones propias
del problema. Para la resolución del mismo se utiliza un modelamiento exacto
en la herramienta de optimización Xpress. El enfoque de solución utiliza varios
algoritmos de preprocesamiento de datos que proporcionan los inputs para el
desarrollo computacional los cuales son: Matriz Mkg, Matriz de Beneficios,
Matriz de patrones de tiempo.
Se presenta la validación de los resultados computacionales para las cuatro
instancias que intervienen en el proceso de asignación en el Edificio Camilo
Torres las cuales corresponden a la escuela de Física, Química, Biología y
Matemáticas.

∗

Proyecto Grado
Facultad de Ingenierías Físico-Mecánicas.
Director: Javier Eduardo Arias Osorio.
∗∗

Escuela de Estudios Industriales y Empresariales.
ABSTRACT

TITLE:

DESIGN AND VALIDATION OF A MATHEMATICAL MODEL FOR
THE ALLOCATION OF ROOMS IN THE BUILDING CAMILO
TORRES OF THE INDUSTRIAL UNIVERSITY OF SANTANDER∗.

AUTHORS: JOHANNA PATRICIA DIAZ SILVA
KAREN JULIANA PINTO BOHORQUEZ∗∗
KEY WORDS:
Assignment problem, accurate modeling, algorithms, pre-processing, validation.
DESCRIPTION:
This project addresses the assignment problem Timetabling, developing
specifically the assignment of groups to rooms and groups to periods of time.
The problem is finding an appropriate room for each of the groups that are
scheduled in Building Camilo Torres of the Industrial University of Santander,
and that in turn these groups are allocated in time preferences of the teacher.
It Propose a mathematical model that considers: the objectives of the
admissions office, the preferences of teachers for a feasible schedule, the
allocation depending on the teacher type and the number of periods required
weekly for each group, in addition presents the own restrictions of the problem.
To solve the same an exact model is used in the optimization Xpress tool. The
solution approach uses several data preprocessing algorithms that provide the
inputs to the computational development which are: Matrix Mkg, Benefits Matrix,
Matrix time patterns.
It presents the validation of computational results for the four authorities
involved in the allocation process at Building Camilo Torres which correspond to
the School of Physics, Chemistry, Biology and Mathematics.

∗

Project Grade
Ability of Physical-Mechanical Engineerings. School of Industrial and Managerial
Studies. Director: Javier Eduardo Arias Osorio.

∗∗
GLOSARIO

ASIGNATURA: Cada una de las materias que conforma el programa o plan
curricular de los programas. Se usarán los términos curso y materia como
sinónimo.
AULA: Espacio físico destinado a la realización de las actividades propias de
las sesiones de clase de una asignatura. Se empelará el término SALÓN como
sinónimo.
CONFLICTO DE PROFESOR: Dícese de la situación en la cual un profesor
es designado para dictar más de una sesión de clase en un mismo intervalo de
tiempo.
CONFLICTO DE ESTUDIANTES: Situación en la cual un estudiante debe
asistir a mas de una sesión de clase en un mismo periodo de tiempo.
CONFLICTO DE AULA: situación en la cual más de una actividad ha sido
asignada para realizarse en dicha aula durante un mismo periodo de tiempo.

DOCENTE: Persona a cargo de una sección o grupo de una asignatura,
encargado de impartir las sesiones de clases o de coordinar las actividades
que en ellas se realiza. Se usará el termino PROFESOR como sinónimo.
GRUPO: Opciones en las que se espera se distribuyan los estudiantes que
cursan una asignatura específica. Para cada asignatura será necesario definir
un número fijo de grupos. Se usará el término SECCIÓN de una asignatura
como sinónimo.
SESIÓN DE CLASE: Corresponde a los Intervalos de tiempo en los que se
imparte a los estudiantes de un grupo los contenidos propios de la asignatura.
Podrán definirse asignaturas cuyas secciones o grupos reciban sesiones de
clase de una hora, dos horas o intervalos de tiempo de otra longitud. Podrá
referirse a este término también simplemente como Sesión.
SLOT: Elemento definido a partir de las combinaciones de valores específicos
de los recursos, que servirá de unidad básica cuya asignación es demandada
por las sesiones de clase. Así por ejemplo, un slot podrá estar definido por la
combinación de periodos de tiempo y de aulas (6:00-7:00 am aula X). La
definición de slots no es única, podrá involucrar intervalos de tiempo de
diferente longitud, e incluir recursos o información adicional. Sin embargo, en el
contexto de este proyecto contendrá por lo menos propiedades asociadas al
intervalo de tiempo y al aula.
INTRODUCCIÓN

El proceso de asignación de salones es un trabajo difícil y dispendioso que se
debe llevar a cabo al menos dos veces al año y consiste en encontrar un salón
apropiado para impartir una serie de sesiones de clase, el tiempo que se
invierte en este proceso es significativo debido a que una asignación de salón
satisfactoria debe tener en cuenta aspectos relacionados con capacidades de
las aulas, preferencias horarias entre otros.
La asignación de salones generalmente se desarrolla en un ámbito donde la
demanda por salones y horarios de clase particulares, tiende a crecer, los
recursos como aulas, son escasos y de capacidades limitadas, y hay objetivos
que compiten por estos recursos: el propósito principal de los profesores es
satisfacer sus preferencias por un horario y un salón específicos, mientras que
uno de los objetivos de la administración, es la utilización eficiente de la planta
física. Entonces, el problema de asignación de salones se puede definir a la luz
de sus objetivos, recursos limitados y restricciones[21].
Este proyecto aborda el problema de programación de curso en las instancias
que se presentan en las Escuelas que pertenecen al Edificio Camilo Torres de
la Universidad Industrial de Santander. Abordar estas instancias de manera
específica obedece a dos factores: Primero, actualmente el proceso de
programación semestral presenta altos niveles de complejidad y demanda
grandes de tiempo y esfuerzos administrativos Segundo: considerando que el
sistema educativo es diferente en cada Ciudad y que incluso dentro de una
misma Universidad la forma en que cada instancia aborda el problema de crear
sus horarios difiere significativamente, es necesario evaluar las alternativas de
formulación y solución del problema de manera que se incluyan las
características propias del sistema real bajo estudio y se pueda desarrollar una
herramienta para el apoyo en la toma de decisiones.

20
1 GENERALIDADES

1.1

DESCRIPCIÓN DEL TEMA DE INVESTIGACIÓN

La construcción de horarios es un proceso que se adelanta por las diferentes
instituciones académicas en un determinado periodo; existe una gran variedad
de modelos de calendarios, que van desde el calendario semanal de un
colegio, en donde se asignan las materias a sus estudiantes para una
determinada jornada, hasta la programación
de exámenes, cursos o
conferencia en una universidad, en donde la construcción de horarios es
definido como el proceso de asignar cursos universitarios (sesiones de clase) a
periodos de tiempo específicos en salones apropiados para un número de
estudiantes registrados y las necesidades propias de cada curso. [1]
La forma en la cual se aborda el problema por las instituciones educativas
difiere significativamente. Sin embargo se pueden observar elementos
comunes en el planteamiento, formulación y estrategias de solución que han
permitido establecer a través de la historia gran cantidad de planteamientos
entorno a esta problemática.
La construcción de horarios acordes con la disponibilidad de recursos y los
requerimientos de las instituciones educativas, es un proceso que se realiza
por lo menos dos veces en el año y que demanda gran cantidad de tiempo y
esfuerzos por parte de las universidades. Para abordar esta problemática
comúnmente las instituciones replican los horarios de periodos anteriores, con
pequeños cambios dependiendo de las variaciones de los requerimientos ([4]
[6]) como es el caso de la Universidad Industrial de Santander, sin embargo
estas modificaciones no garantizan el cumplimiento de las necesidades, debido
a que existen dos problemas principales al establecer un horario[21]:
•

El primero está relacionado con la naturaleza combinatoria del problema
que dificulta hallar una solución óptima, ya que el número de variables
que se ven involucradas en este proceso es muy alto.

•

Y el segundo por la naturaleza dinámica de este problema, donde las
variables se modifican en el desarrollo de las actividades propias de la
institución

21
Es por esto que se hace necesaria la creación de nuevas estrategias para el
tratamiento de este problema con el fin de brindar un apoyo en el proceso de
asignación de salones.
En Colombia buena parte de las Universidades [21] replican o se basan en
programaciones de periodos anteriores, sin tener en cuenta la calidad en las
asignaciones que sirven de base para esta actividad, de manera que no se
tiene certeza de la eficiencia de las asignaciones realizadas, sin embargo se
destaca el esfuerzo desarrollados por algunas universidades como:
Universidad Javeriana, Universidad Nacional- Sede en Medellín y Universidad
Católica quienes han documentado el proceso de asignación de aulas. La
Universidad Nacional-Sede en Manizales desarrollo el sistema CRONOS [19] al
igual que la Universidad Manuela Beltrán con su sistema ADSALON y la
Universidad de Antioquia cuenta con la herramienta informática ESPACIOS1
El problema de asignación de horarios en universidades, se puede dividir en
dos categorías principales [5]:
•

Establecer un horario para las distintas sesiones de clase en un periodo
determinado.

•

Y la programación de evaluaciones, las cuales requieren la asignación
de salones, en caso de realizarse por escuela.

La solución al problema de asignación de salones en el edifico Camilo Torres,
pretende generar una programación acorde con las restricciones asociadas a
los profesores, aulas de clase, estudiante y demás entidades relacionadas con
el problema, de manera que esta sea factible y aceptable por las distintas
entidades involucradas en el proceso de decisión, es decir se pretende
maximizar el beneficio generado con la asignación, este beneficio involucra
satisfacción de la demanda y el aprovechamiento de la infraestructura.

1.2

OBJETIVOS DEL TRABAJO DE GRADO

1.2.1 Objetivo General

Diseñar y validar un modelo matemático para el proceso de asignación de
salones en el edificio Camilo Torres de la Universidad Industrial de Santander
de manera que genere una estrategia de apoyo a la toma de decisiones en la
solución de esta problemática.
1

La documentación se encuentra disponible en las páginas Web que se
mencionan en la bibliografía para cada una de las universidades.
22
1.2.2 Objetivos Específicos

1. Construir el estado del arte para el problema de construcción de horarios
de clase que pretende abordar este proyecto
2. Describir la instancia real del Edificio Camilo Torres de la Universidad
Industrial de Santander, generando una revisión detallada del proceso
que actualmente se desarrolla para la asignación de salones a las
distintas sesiones de clase.
3. Formular un modelo matemático para el problema de construcción de
horarios de clase en el Edificio Camilo Torres, el cual involucre las
características propias de esta instancia.
4. Implementar en una herramienta de optimización el modelo formulado,
haciendo posible su validación mediante la solución de la instancia
propuesta, identificando fortalezas y debilidades respecto al proceso de
solución actual así como su pertinencia en la generación de apoyo a la
toma de decisiones asociadas a esta problemática.

1.3

ALCANCE

Este proyecto pretende abordar el problema de asignación de salones a
sesiones de clases previamente establecidas para el edificio Camilo Torres de
la Universidad Industrial de Santander, evaluando alternativas de formulación
del problema que permitan considerar aspectos propios de esta instancia como
preferencias horarias y/o aulas para ciertas asignaturas, distribución de salones
de acuerdo con los escuelas involucradas, conveniencia de evitar cruces entre
horarios de materias del mismo semestre para los diferentes planes
curriculares de estudio y el deseo de maximizar el nivel de utilización de la
planta física del edificio Camilo Torres de manera que se genere una estrategia
de apoyo a la toma de decisiones en la solución de la problemática planteada.

23
1.4

ESTRUCTURA DEL DOCUMENTO.

En este capítulo se describe el tema de investigación, al igual que los objetivos
y alcance propuesto para este proyecto. En el capítulo 2 se ahonda en
conceptos teóricos que se deben manejar en el tema tales como, complejidad
computacional, descomposición del problema de asignación, restricciones
involucradas, temas de resolución utilizadas y herramientas informatices
utilizadas. En el capítulo 3 se realiza una descripción puntual del proceso que
siguen las escuelas pertenecientes al edificio Camilo Torres para ejecutar la
asignación horaria para un semestre determinado. Para el capítulo 4 se
presenta la descripción del problema a través de un modelo matemático, su
función objetivo, restricciones y variables. En el Capitulo 5 se presenta la
implementación del modelo matemático con la ayuda del la herramienta de
optimización Express. En el capítulo 6 se presentan los resultados obtenidos y
la validación de los mismos por cada una de las instancias relacionadas.

24
2

ESTADO DEL ARTE

Desde los años 70, el tema de asignación de horas y salones ha sido objeto de
constante estudio, la programación de actividades o eventos acordes con la
disponibilidad de recursos y sus requerimientos [7] es una tarea que deben
enfrentar por lo menos dos veces al año los establecimientos educativos
particularmente las Universidades, la mayoría de estas instituciones emplea
una heurística simple, asistida por un ordenador que consiste en una
asignación basada en el orden de llegada de los listados de requerimientos de
aulas para cada sesiones que de desea impartir [12] , es también común la
práctica de réplicas de programaciones que se han realizado a través de un
proceso de asignación de aulas manual, carente del análisis de datos que
permita medir el cumplimiento de los objetivos propuestos por las partes
involucradas en la asignación de los recursos.
Usualmente, cuando se enfrenta el estudio de la programación de las
actividades en el contexto descrito, se refiere a él como el Problema del
Timetabling. El cual es definido como la asignación, sujeta a restricciones de un
conjunto de recursos a objetos ubicados, siendo ubicados en espacios de
tiempo, de tal forma que se satisfaga en el mayor grado posible un conjunto de
objetivos deseables. [8] La cantidad de factores y restricciones que se
involucran en las exigencias horarias hacen que la asignación sea considerada
como un problema NP-completo ya que no admite solución eficiente en todos
los casos [9].
Carter y Laporte [22]
subproblemas:

descompone el problema de asignación en cinco

1. La asignación de cursos a horas (Course Timetabling): Esta clasificación
indican los cursos que se deben llevar a cabo semanalmente según el
número de programas universitarios que necesiten de estas actividades, de
tal manera que no se asigne dos cursos a un mismo periodo de tiempo en
un salón determinado
2. Los horarios de enseñanza secundaria (Class-Teacher Timetabling):
Considera el horario semanal para las sesiones de las asignaturas de una
escuela o colegio, consiste en asignar las sesiones a los períodos de
tiempo, de tal manera que ningún profesor o asignatura tengan más de una
sesión en el mismo periodo
3. La asignación de alumnos a secciones (StudenScheduling): Consiste en la
asignación de alumnos a los secciones de tal manera que no se sobrepase
la capacidad de las aulas, ni asigne dos sesiones con un mismo periodo a
un estudiante.
25
4. La asignación de profesores a secciones (Teacher Assignment): Realiza la
asignación de profesores a secciones de clase, teniendo en cuenta
preferencias horarias, de tal manera que no se realice la asignación de un
mismo profesor a dos secciones que tenga igual hora y día.
5. La asignación de aulas a lecciones (Classroom Assigment): Consiste en
asignar las sesiones a las salas con un horario ya determinado.
2.1

Eficiencia computacional

Garey [52] menciona que la teoría de la complejidad computacional, como
parte de la teoría de la computación, estudia los recursos requeridos por un
algoritmo para resolver un problema. Los recursos más estudiados son el
tiempo, que se traduce en el número de pasos de ejecución de un algoritmo
para resolver el problema y el espacio, que es la cantidad de memoria utilizada
para resolver el problema. En este sentido, se pueden clasificar los problemas
en tres clases: P, NP y NP-C

2.1.1

Problemas P

Según Galve [53] la clase de los problemas que se pueden resolver mediante
algoritmos eficientes se denota como P, indicando tiempo polinomial. Se
considera que este tipo de problemas se pueden resolver eficientemente, y se
encuentra una solución exacta en tiempo razonable. El método exacto consiste
en explorar de forma exhaustiva (mediante enumeración) el conjunto de todas
las soluciones posibles. Esta técnica puede resultar válida para algunos tipos
de problemas o para instancias pequeñas de problemas concretos, pero
existen muchos casos en los que es extremadamente ineficiente debido a que
el espacio de soluciones de la mayoría de los problemas de interés suele ser
de muy alta dimensionalidad

2.1.2 Problemas NP

La clase de problemas para la que existe un algoritmo no determinista y cuyo
tiempo de ejecución es polinomial respecto al tamaño de los datos de entrada
se llama NP. Algoritmo no determinístico es aquel que escoge de forma
arbitraria uno de los posibles cursos de acción cada vez que se enfrenta con
varias posibilidades. La elección puede pensarse como una pregunta que
realiza el algoritmo para saber qué alternativa lo conduce a la solución. Galve
26
señala que la importancia de esta clase de problemas de decisión es que
contiene muchos problemas de búsqueda y de optimización para los que se
desea saber si existe una cierta solución o si existe una mejor solución que las
conocidas.
Dada su importancia, se han hecho muchos esfuerzos para encontrar
algoritmos que decidan algún problema de NP en tiempo polinomial. Sin
embargo, pareciera que para algunos problemas de NP, los del conjunto NPcompleto no es posible encontrar un algoritmo mejor que simplemente realizar
una búsqueda exhaustiva.
2.1.3 Problemas NP-Completos

Es el tipo de problema más difícil, menciona que un algoritmo de fuerza bruta
para problemas NP Completos utiliza tiempo exponencial con respecto al
tamaño de la entrada.
Se desconoce si hay mejores algoritmos, por lo cual se señala que para
resolver un problema NP-Completo de tamaño arbitrario se utiliza uno de los
siguientes enfoques [54] :
• Aproximación: Un algoritmo que rápidamente encuentra una solución
no necesariamente óptima, pero dentro de un cierto rango de error. En
algunos casos, encontrar una buena aproximación es suficiente para
resolver el problema, pero no todos los problemas NP Completos tienen
buenos algoritmos de aproximación.
• Probabilidad: Una algoritmo probabilístico obtiene en promedio una
buena solución al problema planteado, para una distribución de los datos
de entrada dada.
• Heurísticas: Un algoritmo que trabaja razonablemente bien en muchos
casos. En general son rápidos, pero no existe medida de la calidad de la
respuesta.
El problema de asignación en relación
clasifica como un problema NP- completo.

a la eficiencia computacional se

Para el desarrollo de este proyecto se profundiza en la aplicación de métodos
cuantitativos a la programación de asignación de aulas, para esto se realizara
una breve descripción de estos temas.
27
2.2

Programación de actividades (Timetabling) en instituciones
Universitarias

Uno de los aspectos más importante para las instituciones universitarias es la
programación de las actividades académicas, para este problema es posible
distinguir dos categorías principales: el problema de programación de
exámenes y el problema de programación de cursos [5]
El problema de programación de exámenes se puede definir [21] como la
asignación de un número dado de exámenes dentro de un marco de tiempo, la
cual tiene implícita restricciones tales como conflicto de estudiante, aula y
profesores. En relación con la programación de cursos, esta pretende
programar todas las sesiones de clase de un conjunto de cursos universitarios,
intentando disminuir la sobre posición de sesiones con estudiantes en común y
haciendo el mejor uso posible de los recursos disponibles [11]. Estos dos
problemas difieren entre otras razones porque [10]:
1. Mientras que los exámenes pueden ser programados de modo que no
existan estudiantes en común para dos exámenes a la misma hora, las
sesiones de clase deben ser programadas, generalmente, antes de conocer
los estudiantes que están involucradas en ellas.
2. La restricción que se encuentra relacionada con la asignación de aula en el
problema de programación de cursos es más notoria, debido a que una
sesión de clase debe ser dictada en un único salón, mientras que para un
examen un grupo de estudiantes puede ser dividido en dos aulas diferentes,
esta consideración también podría relacionarse con las preferencia por
parte de los profesores debido a que la duración de un examen involucra un
día mientras que las sesiones se clase se realizan por un semestre.
Sin embardo, el objeto principal de este proyecto recae en la programación de
cursos debido a que en el caso del edificio Camilo Torres de la Universidad
Industrial de Santander, las evaluaciones suelen realizarse en las aulas donde
se imparte la sesión de clase, para casos particulares como exámenes por
escuela, no se permite que coincidan dos exámenes de escuelas diferentes.

28
2.3

Programación de cursos en instituciones universitarias

En la mayoría de las universidades, la programación de los cursos no se hace
de manera centralizada, esta se distribuye entre las unidades académicas
como facultades, escuelas o departamentos; por esta razón la programación de
cursos puede descomponerse [21] como una división en varios subproblemas
asociados a cada una de las unidades académica y en los cuales la
administración de recursos es distribuida. Para el caso en el cual los programas
académicos mantienen esta estructura, el problema adquiere mayor
complejidad, puesto que no puede ser descompuesto tan fácilmente en
subproblemas para cada unidad [13].
Otro aspecto que adiciona complejidad al problema de programación de cursos
es la cantidad de personas que se ven involucradas con la solución del
problema. Alguno de estos grupos de personas son [14]:
• La administración de la universidad, la cual determina los estándares
mínimos que debe cumplir la programación.
• Las unidades administrativas (Facultades, Escuelas o Departamentos),
las cuales se preocupan por la pertinencia de las aulas asignadas, la
distribución de las clases de los mismos niveles del plan curricular, el
cumplimiento de las preferencias de los docentes, entre otras.
• Los estudiantes, los cuales son en definitiva quienes deben hacer efectivo
el programa de cursos construido y que esperan que ese satisfaga sus
preferencias respecto a la distribución de los cursos y la posibilidad de
acceder a ellos sin que se generen conflictos de horario entre los cursos
deseados.

2.4

Caracterización de las restricciones del problema de asignación de
cursos

Se han propuestos diversos enfoques para el planteamiento y posterior
solución de este problema [21], en el cual se establecen un conjunto de
limitaciones que pueden variar de una solución a otra. Inicialmente se tratan
problemas básicos donde se involucran restricciones que están relacionadas
directamente con la programación clase-profesor, posteriormente se incluyeron
las restricciones relacionadas con las aulas donde se imparte la sesión de
clase, de manera que una primera forma, propuesta por Burke [1], clasifica
estas restricciones en siete categorías:
29
•

Restricciones de asignación de recursos. Limitan la asignación de un
recurso a un evento o recurso de otro tipo. Por ejemplo, los laboratorios
deben ser asignados en salones con características particulares.

•

Restricciones asociadas a la asignación en el tiempo. Establecen que un
evento, sesión de clase por ejemplo, debe ser asignado a un periodo
especifico del tiempo

•

Restricciones asociadas a la relación temporal entre eventos. Establecen
relaciones de precedencia o simultaneidad entre eventos.

•

Distribución de los eventos. Establecen la distribución apropiada en el
tiempo de los diferentes eventos. Por ejemplo, los estudiantes no deben
tener más de dos clases consecutivas.

•

Coherencia de los eventos. Este tipo de restricciones operan en sentido
opuesto a la anterior y busca programaciones mas ordenadas y compactas.
Por ejemplo, los profesores preferirían dictar sus clases en un mismo día.

•

Capacidad de las Aulas.

•

Continuidad. Establecen que ciertas características de la programación
permanezcan constantes. Por ejemplo, todas las sesiones de clase de un
grupo de cierta asignatura, deben dictarse en la misma aula.

Similarmente, otra forma de clasificación propuesta por Corne y retomada por
Lewis [9], propone clasificar las restricciones en 5 categorías:
•

Restricciones que involucran un único evento. Por ejemplo aquellas que
especifican un slot de tiempo o aula para un evento particular.

•

Restricciones binarias para pares de eventos. Establecen por ejemplo
relaciones de precedencia y simultaneidad entre eventos Así como
aquellas que pretenden evitar programaciones en las que un recurso o un
evento esta comprometido más de una vez en un periodo especifico del
tiempo.

•

Restricciones de capacidad. Establecen el cumplimiento de las limitaciones
de capacidad de las aulas.

•

Restricciones de distribución entre eventos. Establecen la distribución
apropiada de los eventos, en cuanto a dispersión y coherencia.

30
•

Restricciones asociadas a los agentes. Pretenden la satisfacción de las
preferencias de los distintos agentes, o grupos de individuos, relacionados
con los resultados de la programación.

Las restricciones, sin importar las categorías en las que son clasificadas, son
usualmente divididas en dos grandes grupos: restricciones fuertes y
restricciones débiles.
Las restricciones fuertes tiene una prioridad más alta y su cumplimiento es
obligatorio de no serlo esta solución no se considera factible. A este
subconjunto de restricciones pertenecen aquellas que evitan la asignación de
unos recursos a más de un evento o un lugar en un mismo periodo de tiempo,
tales como ([14], [6]):
•

Conflicto de profesor: Situación en la cual un profesor es designado para
dictar más de una sesión de clase en un mismo intervalo de tiempo.

•

Conflicto de estudiante: Situación en la cual un estudiante debe asistir a
más de una sesión de clase en un mismo periodo de tiempo.

•

Conflicto de aula: Situación en la cual más de una actividad ha sido
asignada para realizarse en dicha aula durante un mismo periodo de
tiempo.

Las restricciones débiles [21] son aquellas cuyo cumplimiento es deseable pero
no esencial, son satisfechas de ser posible y en la mayoría de los problemas
reales no pueden ser cumplidas todas simultáneamente; el incumplimiento de
este tipo de restricciones penaliza la función objetivo pero las soluciones
generadas son factibles; dentro de este grupo se encuentran las restricciones
que pretenden la mejor distribución de los eventos, el cumplimiento de las
preferencias de profesores y la generación de horarios lo más compactos
posibles.
En la práctica podría ser necesario otorgar un nivel de importancia diferente a
ciertos grupos de restricciones débiles, lo cual usualmente se considera
mediante una función de penalización que valora el grado con el cual la
programación propuesta incumple el conjunto de restricciones y la importancia
otorgada a ello. Para este mismo fin, Murray [13] propone una escala
consistente para las restricciones compuesta esta por: Requerido, Fuertemente
Deseable, Deseable, Indiferente, Indeseable, Fuertemente Indeseable y
Prohibido. La primera y última categoría corresponden a las restricciones
31
fuertes, mientras que las restricciones débiles se mueven dentro de las demás
categorías.

2.5

Estrategias de solución

Históricamente, hasta la década de los años 70, la planeación académica se
efectuaba por personas que tenían experiencia en la realización de estos
horarios manualmente, donde se utilizaba un incremento sucesivo de
condicionamientos. A finales de los años 70 se emplearon algunos métodos
para solucionar el problema de asignación horaria [15], uno de ellos hace
referencia a la iteración sobre matrices booleanas, este método se encarga de
escoger arbitrariamente posibilidades que son factibles y probar por medio de
iteraciones si el resto de posibilidades no han sido afectadas, así continua
sucesivamente, por esto se considera un método algo ineficiente.
A comienzos de los años 80, se discuten métodos de solución basados en
redes y grafos, particularmente el algoritmo de coloreado de grafos [16] que
para esta época era el más estudiado.
Simultáneamente, Carter presenta una clasificación de métodos
aproximación a la solución del problema en cuatro tipos ([5], [3]):

de

2.5.1 Métodos Secuenciales

Estos métodos ordenan los eventos usando heurísticas de dominación y luego
asignan los eventos secuencialmente dentro de periodos de tiempo válidos de
tal forma que ningún evento en un periodo de tiempo esté en conflicto con otro.
En este tipo de métodos el problema de creación de horarios es usualmente
representado por medio de grafos, en donde [24] cada vértice simboliza los
grupos ofrecidos, los cuales están unidos por aristas en caso de existir relación
entre ellos2, el método consiste en asignar un color que representa el periodo
de tiempo a cada vértice, de tal forma que no se presenten dos vértices de
igual color unidos por una o varias aristas. Con el fin de obtener mejores
resultados se han implementado algunas técnicas a través de los años;
inicialmente Werra [16] presenta un modelo de asignación para profesores y
posteriormente las aulas, del mismo modo en 1988 Selim [23] utiliza esta
metodología dividiendo el número de vértices con el fin de reducir el número
cromático o colores utilizados.

2

Estudiante o profesor en común
32
Los problemas reales de programación difieren del problema de colorear un
grafo cuando alguna de las siguientes restricciones adicionales son
incorporadas:
•

Un número limitado de estudiantes o evaluaciones para algún
periodo de tiempo

•

Capacidad limitada de los salones

•

Restricciones de precedencia entre las secciones.

•

Preasignación de exámenes

•

Preferencias de horario

•

Las evaluaciones de los estudiantes deberían estar dispersas a lo
largo de todo el horizonte (conjunto de periodos) de evaluación.

De igual forma la solución del problema de timetabling por medio de grafos no
se adecúa para problemas de grandes tamaños. Bajo la aplicación de técnicas
de descomposición y partición se han obtenido horarios de mayor calidad, con
un mayor número de asignaciones que los realizados bajo la técnica
convencional de grafos, estos resultados pueden ser un buen punto de partida
para realizar una búsqueda local por medio de meta-heurísticas [25].

2.5.2 Métodos Agrupamiento.

El conjunto de eventos es dividido en subgrupos que satisfagan las
restricciones fuertes y luego los grupos son asignados a periodos de tiempo
que satisfagan las restricciones débiles.

2.5.3 Métodos basados en restricciones.
Dentro de esta categoría podemos incluir las técnicas tradicionales, métodos
que debido a su forma de buscar, se les denomina métodos completos, ya que
recorren todo el espacio de búsqueda, es decir encuentran todas las soluciones
posibles a un determinado problema, sin embargo esto depende del número de
variables que influyen en el problema. Dentro de este grupo podemos encontrar
la Programación entera, programación Lineal entre otras, en donde el problema
es modelado mediante un conjunto de variables cuyos valores deben ser
asignados de modo que satisfaga ciertas restricciones.

33
La literatura encontrada presenta numerosas variaciones del problema de
programación de horarios de acuerdo a los requerimientos específicos de cada
institución. En particular, más allá de las restricciones de capacidad, no existen
otras condiciones que aparezcan en todos los estudios presentados en la
literatura [34]. Existen variaciones significativas en el planteamiento de la
función objetivo donde es posible que se encuentre en función de maximizar
las preferencias de los profesores en horarios y en salas asignadas para su
clase [35] o generalizar de manera que se pretenda maximizar el beneficio
logrado con la asignación, este beneficio involucra satisfacción de demanda,
aprovechamiento de infraestructura entre otros, de igual manera algunos
autores involucran dentro de la función objetivo penalización por el
incumplimiento de las restricciones débiles [21]
Varios autores han modelado el problema de asignación de salones con este
enfoque, para el cual definen variables de dominio finito como son los
conjuntos de [6]: profesores, secciones, salones y slots (días de la semana,
una hora de inicio y una hora de finalización de clase). El desarrollo de este
método se puede plantear por medio de la implementación de fases, en donde
se tienen en cuenta diferentes parámetros de asignación, de manera que se
realice la asignación de aulas en una primera fase y posteriormente la
asignación de slots a las clases [26]. De igual manera es posible realizar el
agrupamiento de variables con características similares a fin de disminuir el
número de restricciones y obtener una solución en menor tiempo
computacional [21], [33].

2.5.4 Métodos Meta-heurísticos.

La idea más genérica del término heurística está relacionada con la tarea de
resolver inteligentemente problemas reales usando el conocimiento disponible.
En Investigación Operativa, el término heurístico se aplica a un procedimiento
de resolución de problemas de optimización con una concepción diferente. Se
califica de heurístico a un procedimiento para el que se tiene un alto grado de
confianza en que encuentra soluciones de alta calidad con un coste
computacional razonable, aunque no se garantice su optimalidad o su
factibilidad.
Las heurísticas para resolver un problema de optimización pueden ser más
generales o específicas que otras. Los métodos heurísticos específicos deben
ser diseñados a propósito para cada problema, utilizando toda la información
disponible y el análisis del modelo, por el contrario las heurísticas más
generales se caracterizan por su adaptabilidad, sencillez y robustez.
El término metaheurísticas se obtiene de anteponer a heurística el sufijo meta
que significa “más allá” o “a un nivel superior”. Las metaheurísticas son
34
estrategias inteligentes para diseñar o mejorar procedimiento heurísticos muy
generales con un alto rendimiento.
En una primera aproximación, se ha decidido separar las metaheurísticas en
dos grandes bloque: trayectoriales y poblacionales. Las metaheurísticas
trayectoriales manejan en todo momento una sola solución y deben su nombre
a que el proceso de búsqueda que desarrollan se caracteriza por una
trayectoria en el espacio de soluciones. Es decir, partiendo de una solución
inicial, generan un camino en el espacio de búsquela mediante operaciones de
movimiento. Dentro de estas metaheurísticas se pueden destacar por su
interés: búsqueda tabú, métodos multi-arranque, búsqueda local iterativa.
Las metaheurísticas poblacionales implementan el proceso de búsqueda
manteniendo simultáneamente un conjunto de soluciones Las metaheurísticas
basadas en poblaciones o metaheurísticas poblacionales son aquellas que
emplean un conjunto de soluciones (población) en cada iteración del algoritmo,
en lugar de utilizar una única solución como las metaheurísticas trayectoríales.
Estas metaheurísticas proporcionan de forma intrínseca un mecanismo de
exploración paralelo del espacio de soluciones, se contemplan operadores
para generar nuevas soluciones a partir de las existentes, y su eficiencia
depende en gran medida de como se manipule dicha población [51]. Ejemplos:
algoritmos evolutivos, genéticos y meméticos,
búsqueda dispersa,
optimización por colonia de hormiga
Sin embargo, los tipos de metaheurísticas también se pueden clasificar en
función del tipo de procedimientos a los que hace referencia de esta manera
existen metaheurísticas de:
• Relajación: se refieren a procedimiento de resolución de problemas que
utilizan relajaciones del modelo original (es decir modificaciones del
modo que lo hacen más fácil de resolver), cuya solución facilita la
solución del problema original.
• Constructivas: se orientan a los procedimientos que tratan de la
obtención de una solución a partir del análisis y selección paulatina de
las componentes que la forman.
• Búsqueda guían los procedimientos que usan transformaciones o
movimientos para recorrer el espacio de soluciones alternativas y
explotar las estructuras de entornos asociadas.

35
• Evolutivas: enfocada a los procedimientos basados en conjuntos de
soluciones que evolucionan sobre el espacio de soluciones [49]

Los métodos meta-heurísticos más representativos son:

•

Redes Neuronales:

Las redes neuronales artificiales se basan en el comportamiento biológico del
cerebro humano, con N neuronas interconectadas. Estos modelos tienen la
capacidad de ajustar sus parámetros en respuesta a unas entradas y salidas
mejorando alguna función. La mayoría de las redes neuronales aplicadas para
resolver problemas de optimización son versiones de la red de Hopfield. La
idea básica consiste en transformar el problema de optimización en la
minimización de la función de energía de la red de Hopfield y determinar la
estructura de una red neuronal de forma que las situaciones de energía mínima
correspondan al estado de equilibrio de la red. De esta forma, la red evoluciona
hacia el estado de equilibrio proporcionando la solución del problema. Las
neuronas tienen un estado y un nivel de salida, reciben señales de otras
neuronas (input) y da señales a otras (output), el modelo señala una función
que determina la conexión con otras neuronas llamada el peso (w). La relación
entre el estado interno y el nivel es determinada por la función de activación
que depende directamente del tipo de red (discreta o continua), las neuronas
se actualizan por si mismas y tienden a un estado de mínima energía que se
considera el optimo de la solución, el cual depende de la selección de el peso
y los input. La energía se mide en cada una de las iteraciones a través de una
función de energía que se asimila a la función objetivo de los problemas de
optimización, a través de la cual también se penaliza el estado de la neurona al
incumplir alguna restricción. Las neuronas empiezan en un estado imparcial y a
través de las actualizaciones lograran el mínimo de energía, la cual nunca
incrementa dentro de los estados de transición.
Este método para resolver problemas de optimización combinatoria fue
introducido por Hopfield y Tank en 1985, pero fue cuestionada varios años
después cuando los resultados iníciales no lograron ser reproducidos y se
evidenciaron varias limitaciones al método planteado, entre ellas que se queda
en óptimos locales, y su función de penalización conduce a soluciones
inviables o de mala calidad. Cabe mencionar que entre sus ventajas se
encuentra la rapidez para encontrar las soluciones a través del hardware,
llamada esta eficiencia computacional. A pesar de esto se han tratado de
superar estas limitaciones. Ha pasado al campo de los métodos combinatorios,
donde se asegura que se puede combinar redes neuronales con el método de
escalonamiento [36] llegando a generar soluciones de mejor calidad que
incluso métodos heurísticos como recocido simulado.
36
Las aplicaciones de las redes neuronales al problema Timetabling son muy
escasas, situación que se puede relacionar con la poca credibilidad hacia esta
técnica. Smith, Abramson & Duke (2003), presentan en su trabajo una
propuesta para resolver el problema de asignación a través de la red neuronal
de Hopfield presentando varios modelos para resolver el problema, el objetivo
del trabajo era demostrar que el rendimiento de la red depende de la
formulación utilizada y su rendimiento puede ser comparado con las técnicas
heurísticas por ello hace una comparación con las técnicas heurísticas de
recocido simulado y búsqueda tabú, para la cual ejecuta veinte (20) corridas,
de los cual se concluyó que la aplicación de redes neuronales para resolver el
problema de timetabling está a nivel de estas técnicas, mejorando o igualando
sus resultados en relación a la calidad de la solución y la eficiencia
computacional, para ampliar sobre estos resultados[37] Carrasco y Pati [38],
presentan un mejoramiento de la red de Hopfield, aplicado al problema de
Class/Teacher Timetabling Problem (CTTP), la mejora consistió en no
considerar sólo dos estados de las neuronas sino un POTTS multi-estados, lo
cual permitió reducir el número de neuronas necesarias para la codificación,
repercutiendo en la formulación del modelo y en la calidad de la solución. Otro
modelo basados en redes neuronales aplicadas con éxito a problemas de
optimización combinatoria son las máquinas de Boltzman. Las máquinas de
Boltzmann son un hibrido entre una red de Hopfield y la técnica de enfriamiento
simulado [39] .

•

Recocido Simulado:

Se trata de un problema de resolución para la optimización de problemas de
tipo combinatorio con mínimos locales. Su aproximación consiste en generar
aleatoriamente una solución cercana a la solución actual y la acepta como
buena si logra reducir una determinada función de costo o con una
determinada probabilidad de aceptación. La diferencia con otras técnicas como
el de escalonamiento radica en que estas técnicas solo aceptan soluciones que
mejoren la anterior y pueden estancarse en mínimos locales por limitar el
espacio de búsqueda. El algoritmo de enfriamiento lento puede aceptar
soluciones que empeoran la solución actual, sólo que esta aceptación
dependerá de una probabilidad que depende de la temperatura a la que se
encuentre el sistema.
Este método trata de asimilarse al proceso metalúrgico llamado ”termalización
o recocido“, cuando se enfría un metal fundido suficientemente despacio,
tiende a solidificarse en una estructura de mínima energía (equilibrio térmico);
según va disminuyendo la temperatura las moléculas del metal tienen menor
probabilidad de moverse de su nivel energético

37
Los algoritmos de enfriamiento lento simulado tienen algunas ventajas con
respecto a otras técnicas de optimización global. De acuerdo con SALEH
ELMOHAMED [47] entre las ventajas de estos algoritmos se pueden citar:
• Resulta un modelo sobre el que se puede implementar de forma
relativamente sencilla este tipo de problemas.
• Su aplicabilidad a la mayoría de los problemas de optimización con una
estructura combinatoria.
• Su capacidad para ofrecer soluciones razonablemente buenas a la
mayoría de los problemas, aunque hay una cierta dependencia de la
planificación del enfriamiento y los movimientos que se realicen.
• La facilidad con la que se puede combinar este tipo de algoritmos con
otras técnicas heurísticas como los sistemas expertos, los algoritmos
genéticos, las redes neuronales, etc, consiguiendo sistemas híbridos que
pueden resultar de gran potencia en la resolución de problemas muy
complejos.

Por otra parte, también se pueden citar algunos aspectos que pueden limitar su
utilización:
• Se necesita elegir con mucho cuidado los movimientos que se realizan,
así como los parámetros que se van a utilizar para tratarlo, como por
ejemplo la tasa de enfriamiento.
• Una ejecución del problema puede requerir mucho tiempo de cálculo.
• Puede que sea necesario realizar muchas ejecuciones para encontrar una
solución satisfactoria.
• Dependiendo de los parámetros elegidos, las soluciones que se van
encontrando pueden ser poco estables, “saltando” mucho de unas a otras
sin encontrar una solución buena con la rapidez suficiente lo que obliga a
retocar los parámetros con las distintas ejecuciones.

38
El algoritmo de este método puede ser el siguiente:

Figura 1. Estructura Básica algoritmo lento simulado

Fuente: Tomado de [40]
La condición de terminación se establece por el programador pudiendo esta
considerar el número de repeticiones del bucle sin que se haya encontrado una
nueva solución, o que haya alcanzado un número dado de veces un valor
mínimo de coste o cualquier otra que se considere.
Dentro del bucle se deja que el sistema evolucione para una determinada
temperatura y una vez que se ha dejado evolucionar lo considerado suficiente,
se procede a reducir la temperatura. El proceso de actualización puede seguir
distintos patrones o algoritmos de enfriamiento.
Las soluciones se evalúan en dos sentidos: Si el costo de la solución generada
es menor se acepta y se toma como nueva solución para evolucionar. También
se toma como solución si el incremento del costo que pueda suponer para la
temperatura actual es probabilísticamente aceptable (probabilidad de
Boltzmann). En este segundo caso se genera un número aleatorio y se
comprueba si su valor es menor que e-∆C/T siendo ∆C el incremento del costo y
T la temperatura actual del sistema.
De acuerdo con MELÍCIO [48] en el diseño de un algoritmo de enfriamiento
lento simulado se deben considerar cinco elementos:
• El espacio de búsqueda, es decir, el conjunto de todas las soluciones.
• El conjunto de movimiento, es decir, la vecindad de las soluciones.
• La función de coste, es decir, un valor que indique la calidad de una
solución.
• La planificación del enfriamiento, es decir, cómo se enfría el sistema.
39
• Las estructuras de datos, es decir, cómo representar el sistema y las
soluciones eficientemente.
Existen dos alternativas en el sistema de enfriamiento simulado:
• Buscar siempre soluciones viables que cumplan las restricciones duras.
La desventaja se encuentra que se centra en entornos de soluciones sin
considerar otros entornos de acuerdo a la solución de costes
• Buscar en el espacio de soluciones sin evitar las soluciones no viables
pero aplicándoles un criterio de penalización, el sistema puede utilizar
estas soluciones para llegar a otros espacios que de otra forma no serian
posibles.

Moreno, Sánchez [40], aplicando esta técnica, resuelven el problema de
asignación de carga académica a los docentes dados unos grupos de
asignaturas con la franja horaria determinada, para la cual se tuvieron en
cuenta restricciones fuertes, medias y débiles. El programa se aplicó en Java,
con un grupo de 27 profesores (tiempo completo y tiempo parcial), con 42
asignaturas diferentes con un total de 98 grupos distintos, y se llegó a una
solución factible. Una de las conclusiones asegura que existe mejora en el
rendimiento del algoritmo si se elige una solución inicial buena antes de aplicar
las técnicas de enfriamiento, además que es posible mejorar el algoritmo con la
combinación de éste y otras técnicas como el algoritmo genético. Bai,
Edmund, Kendall y McCollun presentan un modelo el cual desarrolla recocido
simulado como un híper-heurístico es decir un heurístico para elegir otro
heurístico, para ampliar sobre esta aplicación [41].

•

Métodos basados en la Trayectoria de Hormiga:

La metaheurística de Sistemas de Hormigas (Ant Systems) empleada
estrategias inspiradas en el comportamiento colectivo de las colonias de
hormigas para descubrir fuentes de alimentación, estableciendo el camino más
corto del hormiguero hasta la fuente de alimentación. Cuando las hormigas se
mueven inicialmente lo hacen al azar, dejando por el camino una cierta
cantidad de feromonas, las siguientes lo hacen por el camino que mayor
cantidad de feromonas tenga. Se trata de una estrategia de búsqueda
distribuida en el que un conjunto de agentes coopera en la búsqueda,
transmitiendo e intercambiando información al resto.
40
Este algoritmo construye una alternativa de solución agregando paso a paso un
elemento i entre un conjunto de alternativas N conocido como vecindad del
elemento k. Cada elemento tiene consigo una probabilidad pi ( ) de ser
elegido. El proceso para construir una alternativa de solución se repite hasta
completar varios individuos. Cada uno de ellos produce un incremento o un
decremento de feromona sobre los elementos que los forman en forma
proporcional a la calidad de la solución. Con base a esta información adicional
se genera una nueva población con mejores características. Con el fin evitar el
estancamiento del algoritmo en alternativas de baja calidad, el sistema colonia
de hormigas efectúa un proceso de evaporación en dos etapas distintas. La
primera etapa, conocida como evaporación local se realiza durante la
construcción de cada solución. La segunda etapa, conocida como evaporación
global se ejecuta luego de realizar los depósitos de feromona.
La evaporación global se aplica al final de cada iteración y afecta todos los
elementos de todas las alternativas, excepto a la que posea las mejores
características. Una alternativa es mejor que otra si: Posee un menor grado de
infactibilidad o posee la misma infactibilidad, pero un menor número de
restricciones blandas insatisfechas.
Para la formación de las alternativas de solución se recurre a dos tipos de
matrices de feromonas. La primera matriz relaciona la deseabilidad aprendida
de seleccionar el salón para una sección específica, y la segunda matriz
relaciona la deseabilidad aprendida de seleccionar el bloque de tiempo para
dictar una sección determinada. Para el proceso de asignación de aulas se
establece un orden, el cual depende del número de salones donde es factible
que un evento se desarrolle, dando prioridad a los eventos con un menos
número de opciones factibles, finalizada esta etapa se procede a asignar los
bloques de tiempo en los cuales se dictaron las secciones que son impartidas
en un mismo salón, cada vez que una sección se asigna a un salón o a un
bloque de tiempo disminuye levemente la cantidad de feromona que
caracteriza al elemento adicionado. De esta se previene el estancamiento
sobre soluciones de baja calidad y se amplía la diversidad de soluciones
construidas en cada iteración.
Peñuela, Franco & Toro [42], aborda el problema de generación de horarios,
programando eventos de clase en 45 horas repartidas en 9 horas para 5 días a
la semana, conocido un conjunto de salones, un número de estudiantes que
asisten a los eventos y un conjunto de características que requieren los
eventos. Se desarrolló un programa computacional en lenguaje Delphi, que
implementó la metodología, fue validado a través de tres casos de prueba. En
todos los casos de prueba se consiguieron soluciones factibles pero con
violación de restricciones blandas.

41
•

Algoritmos Genéticos:

Son algoritmos probabilísticos caracterizados por el hecho de que un número N
de posibles soluciones (llamadas individuos) registran el espacio de soluciones
en un problema de optimización. Los algoritmos genéticos crean poblaciones
iniciales de soluciones que tiene distinto grado de eficiencia la cual es posible
evaluar por cumplimiento de las restricciones planteadas [30] de tal manera
que se determina si este individuo es solución, o si no lo es, que transformación
sufrirá para pasar a la siguiente generación [27]. Los métodos de selección
tienen como objeto elegir los individuos más aptos de una población para
pasarlos directamente a la siguiente. Entre los métodos más usados se
encuentran la selección por ruleta que simula el comportamiento de una ruleta
en la cual los individuos más fuertes ocupan un mayor rango es decir poseen
mayor probabilidad de reproducirse; el método torneo binario el cual consiste
en elegir dos individuos para que compitan de manera que el ganador pasa a la
siguiente generación [28], otros métodos que se relacionan en la literatura son:
Control sobre un número esperado, elitista y por ranking. Una vez elegido los
individuos más aptos se aplica el operador de cruce, que tiene como objeto
combinar los individuos y el último operador que se aplica a la población
generada es el de mutación.
En la inteligencia artificial, se simula el comportamiento de los individuos sobre
la teoría de la evolución en la meta-heurística de Algoritmos Genéticos y
Algoritmos evolutivos. La diferencia entre estos dos radica principalmente, en la
representación del individuo en la población. Los algoritmos genéticos utilizan
representación binaria y los evolutivos no binaria [29] .
Varios autores han utilizando esta meta-heurística en la solución del problema
de timetabling [30] , Erben y Keppler (1996) trataron el problema de
programación clase-profesor para una gran muestra de datos demostrando que
el algoritmo es capaz de obtener resultados prometedores. En 2001 Ueda Et
Al, presenta una estrategia en dos fases del algoritmo genético para la
universidad de Hiroshima, inicialmente se desarrolla la asignación de los
estudiantes y luego la asignación del aula, demostrando que el algoritmo fue
capaz de encontrar una solución viable. En el 2008 se utilizó este algoritmo
para la asignación de horarios en la universidad del norte en la Guajira
inicialmente se desarrolló la formulación matemática del problema en donde se
describen las restricciones a tener en cuenta y posteriormente se utiliza el
algoritmo genético, obteniendo un software que permite resolver problemas de
gran tamaño en tiempos computacionales razonables y satisfaciendo niveles de
calidad deseados.

42
•

Búsqueda Tabú:

La búsqueda tabú es un procedimiento metaheuristico diseñado para encontrar
soluciones sub-óptimas en problemas de optimización combinatoria,
introducido por Glover en 1986. La búsqueda tabú es una combinación de
búsqueda local con un mecanismo de memoria a corto plazo (lista tabú) que
impide al proceso estancarse en ciclos, ya que esta guarda la historia reciente
de la búsqueda.
Elementos claves en búsqueda Tabú:
• Restricciones Tabú: restringir la búsqueda al clasificar ciertos
movimientos como prohibidos (tabú), para evitar caer en soluciones
recientemente generadas.
• Criterio de aspiración (aspiration criteria): liberar la búsqueda por medio
de una función de memoria a corto plazo (olvido estratégico).
Se crea un subconjunto T _ S usando información histórica extendiéndola t
iteraciones en el pasado.
Las aplicaciones de este método en problemas timetabling son variadas de las
cuales vamos a nombrar algunas. Marchan y Alvarez [57] Crean un modelo
para la programación de las sesiones del congreso de la República de Perú el
cual pretende minimizar a través de la búsqueda tabú el ausentismo y la falta
de quórum por los cruces de horarios que tienen los congresistas por el
elevado número de comisiones a las que pertenece. El algoritmo de búsqueda
tabú fue descrito en c++, los resultados obtenidos fueron buenos se logró
disminuir considerablemente los cruces en la programación de las comisiones.
Franco y Toro [43] desarrollado para la Universidad del Norte, emplea la
metodología para la solución del problema en cuatro fases a saber. En la
primera de ellas se obtiene una programación inicial de los eventos por medio
de un constructivo, para que los eventos sean programados en salones
habilitados, a fin de obtener una configuración inicial con pocas restricciones
duras violadas. En la segunda fase se emplea una búsqueda local para
disminuir las restricciones duras violadas, en la tercera fase se alcanza una
solución factible, en la que se cumplan todas las restricciones duras. En la
cuarta fase se usa búsqueda tabú para minimizar las restricciones blandas. Se
presenta la configuraciones de vecindad a partir de intercambiar bloque de
tiempo del evento con otro suceso en el mismo salón, moviendo el evento a un
bloque de tiempo libre en un salón habilitado para esta actividad. Para
seleccionar los eventos que sirven para generar la vecindad se usa el índice de
sensibilidad que se forma al calcular la función objetivo, el criterio de selección
es el mayor valor del índice de sensibilidad. Se utiliza la memoria de corto
43
plazo que evita regresar a configuraciones ya visitadas y escapar de óptimos
locales. La memoria de corto plazo consiste en un vector (estado _ tabú) que
almacena el estado de prohibición de un evento. Cuando se ejecuta un
movimiento en el que participa un evento, la posición del vector estado _ tabú
asociado a ese evento cambia a un valor _ tabú, el cual corresponde al número
de iteraciones en que se prohíben movimientos que involucren al suceso que
cambió. También se usa la memoria de largo plazo basada en frecuencia, lo
cual permite la exploración de regiones no visitadas por los eventos al modificar
aquellos que hayan sufrido menores cambios. A través del modelo propuesto
se obtuvieron resultados positivos o soluciones factibles en un tiempo
computacional de 400 segundos.
Gil y Martínez [44] prueban que en los experimentos realizados, en todos los
casos de prueba, el algoritmo basado en Tabú Search encuentra mejores
soluciones que las obtenidas con el método manual, en un tiempo de cómputo
razonable. Esto lleva a pensar que el algoritmo debe, en general, encontrar
buenas soluciones al problema de asignación de horarios de clases en el
Departamento de Computación de la Facultad Experimental de Ciencias y
Tecnología de la Universidad de Carabobo.
Alvarez y Crespo [45] presentan su experiencia para resolver los problemas de
asignación, atribuyendo su éxito a la técnica de búsqueda tabú, en este trabajo
presentan los diferentes modelos y criterios empleados durante los años de
investigación sobre timetabling.
Schaerf y Gaspero [46] desarrollan un software de búsqueda local aplicando
especialmente
search EASYLOCAL++, como una herramienta para la
resolución de los problemas de asignación de exámenes, de cursos y el de las
escuelas secundarias.

•

GRASP (Greedy Randomized Adaptive Search Proce

Un GRASP es un método multi-arranque, en el cual cada iteración GRASP
consiste en la construcción de una solución miope aleatorizada seguida de una
búsqueda local usando la solución construida como el punto inicial de
búsqueda local. Este procedimiento se repite varias veces y la mejor solución
encontrada sobre todas las iteraciones GRASP se devuelve como la solución
aproximada [56]

44
2.6

Herramienta Informática de Apoyo para el Desarrollo del Proyecto

Xpress-MP es un software de optimización desarrollado por la empresa
británica Dash Optimization. Consiste en una familia de herramientas para el
modelado y optimización de problemas lineales, cuadráticos y enteros,
utilizando técnicas de programación lineal y diversos algoritmos de búsqueda.

45
3

DESCRIPCIÓN DE LA INSTANCIA

Un caso particular del problema de asignación horaria, es el que existe en el
edificio Camilo Torres de la Universidad Industrial de Santander, en donde la
asignación se realiza de forma descentralizada, es decir cada una de las
escuelas pertenecientes a este edificio se encarga de hacer la programación de
los cursos y asignación de aulas, las cuales ya se encuentran predefinidas para
cada una de ellas.
Las escuelas que programan sus cursos en el Edificio Camilo Torres son: la
Escuela de Física, la Escuela de matemáticas, la Escuela de Química y la
Escuela de Biología. El proceso de asignación horaria se ve dividido en dos
etapas a saber:
1. Una primera asignación es realizada por cada una de las escuelas, las
cuales determinan un horario inicial para la programación de las
sesiones que se impartirán en el próximo semestre, este se debe
ingresar al sistema académico modulo horarios de acuerdo con las
fechas estipuladas por la Universidad. Es de considerar que el proceso
de asignación no esta estandarizado y que cada escuela lo realiza
según su experiencia y oportunidades, las cuales se describirán mas
adelante.
2. Una vez se ha realizado la asignación por parte de las escuelas estas
informan a la oficina de admisión y registro académico, sobre las
sesiones a los cuales no fue posible asignar aula, para que esta oficina
intervenga, lo cual consiste en encontrar un aula para los cursos
faltantes, en un proceso de negociación.
Este proyecto aborda la instancia que se presenta en la primera etapa descrita
anteriormente, es decir, los métodos y resultados que se presenten, serán para
el horario inicial, que surge de cada una de las escuelas, ya que son la base
para el desarrollo de las etapas posteriores.

3.1

Procesos de Asignación Horaria

Inicialmente se determina el número de cursos que se requieren para el
semestre en cuestión, para esto cada escuela debe realizar una estimación de
46
la demanda. Dicha estimación se construye manualmente, revisando las
estadísticas de las deserciones, las cancelaciones y los admitidos cada
semestre. Una vez consultadas las estadísticas, éstas se comparan con la
programación del semestre anterior para evaluar si tal programación cubre la
demanda de grupos, o si es necesario modificarla. De acuerdo con las
experiencias del personal de cada escuela, la programación de semestres
anteriores para los cursos se preserva en una gran proporción, semestre a
semestre, de esta manera se construye una programación inicial de cursos
ofertados, esta información se ingresa al “Sistema Académico- Modulo De
Horarios”, donde se podrá consultar la información de todos los cursos
programados por parte de las escuelas (hora, aula, profesor, capacidad del
grupo).
Una vez se realiza la matricula de los estudiantes, la Universidad tiene
establecido dentro de su calendario académico la primera semana del
semestre para hacer el ajuste de matricula, en este instante las escuelas
evalúan la opción de cerrar o abrir grupos, según el comportamiento de la
demanda, es decir en esta semana los estudiantes pueden incluir o cancelar
las materias teniendo en cuenta el reglamento establecido para inclusión y
cancelación de materias.
Cuando se tiene certeza de la demanda y los grupos que se abrirán en el
semestre la oficina de admisión y registro, obtiene la información discriminada
de los horarios por escuela, grupo y aula, la cual es consultada en el “Sistema
Académico- Modulo De Académico- Listado De Horario De Aula” en donde se
muestra la ocupación diaria de las respectivas aulas. Esta es la base para que
la oficina de admisión haga la asignación de aulas a los grupos faltantes, a
través de la conciliación con las escuelas que tengan aulas disponibles en los
horarios necesarios, este proceso tiene una duración aproximada de cuatro
semanas.
3.2

Proceso de Asignación por Escuelas

Los parámetros que se tienen en cuenta para la asignación de aulas por parte
de las escuelas son:
•

Disponibilidad de los profesores en las tres categorías existentes en la
Universidad:
•

Profesor Planta: Esta modalidad consideran los profesores que
laboran tiempo completo, ya sean en áreas académicas o
administrativas.

47
•

Profesor Cátedra: Se vincula al área de docencia por un tiempo
semanal de 25 horas máximo.

•

Estudiante de Maestría: Se vincula al área de docencia por un
tiempo semanal de 12 horas máximo.

•

Aulas disponibles de acuerdo a la asignación previa realizada por la
Universidad para cada una de las escuelas.

•

Cantidad de cursos ofertados por semestre

3.2.1 Escuela de Química

La escuela de química determina los cursos a dictar y realiza la asignación de
salones, este proceso se basa en gran parte de la información de los horarios
del semestre anterior, por último se realiza la asignación del docente
encargado la cual tiene como entrada los materias acordadas con los
profesores planta. Para los profesores cátedra y maestría la asignación se
realiza arbitrariamente de manera homogénea tratando de abarcar las mismas
franjas horarias y se publica el horario con el fin de verificar la disponibilidad
del profesor cátedra, en caso de presentarse inconformidades se realiza el
cambio pertinente ya se con acuerdos entre profesores o cambios de los
mismos.

3.2.2 Escuela de Física

Para definir los posibles horarios se parte de la información suministrada por el
personal docente de la escuela: los profesores planta en reunión con el director
de escuela establecen las posibles materias a dictar y horarios disponibles por
cada uno de ellos. Los profesores cátedra y maestría informan los horarios en
los cuales pueden prestar el servicio a la Universidad y las materias de acuerdo
a su preferencia.
Para la asignación de materias se da prioridad a las solicitudes realizadas por
los profesores planta y en el caso de los profesores cátedra se tiene en cuenta
el resultado de la evaluación docente y la demanda existente.

48
Ya determinados los cursos a dictar considerando el pronóstico de la demanda
y los profesores asignados a cada materia se realiza el proceso de asignación
de aulas manualmente.

3.2.3 Escuela de Matemáticas

Debido a que la escuela con las aulas asignadas no puede cubrir la totalidad de
la demanda se hace necesario habitualmente solicitar el préstamo de aulas a
otras escuelas pertenecientes a la Universidad.
El proceso de asignación considera inicialmente la disponibilidad de los
profesores cátedra y planta3 y los cursos a dictar basados en la demanda,
posteriormente realizan la asignación de los grupos en las aulas asignadas y
solicita la asignación de los restantes a la división de Admisiones y Registro
Académico.

3.2.4 Escuela de Biología

El proceso de asignación es similar al realizado por la escuela de química,
aunque se presenta una consideración adicional la cual contempla los horarios
disponibles de los profesores cátedra.

3

Horario y materia
49
4

4.1

FORMULACIÓN DEL MODELO PARA LA ASIGNACIÓN DE CURSOS

Introducción

Una vez planteado el problema de asignación horaria en el Edificio Camilo
Torres, en este capítulo se propone la formulación de un modelo matemático
para el problema que de acuerdo con la clasificación dada por Carter y Laporte
podría asociarse con los subproblemas de Course Timetabling y Classroom
Assigment, ya que lo que se pretende es la asignación de cursos a períodos
de tiempo y aulas.
La estrategia de solución utilizada consiste en un modelo basado en
restricciones para el problema descrito, que aproxime de la mejor manera
algunas de las características propias de la instancia que se aborda. Sin
embargo aunque se plantea como método de solución un modelamiento
exacto, es posible observar que la búsqueda de la solución se ve limitada por
un conjunto de soluciones inicialmente factibles, de manera que el espacio de
búsqueda no está compuesto por todas las posibilidades, ya que como se
menciono en el estado del arte, el problema de Timetabling debido a la
cantidad de factores y restricciones que se involucran en las exigencias
horarias hacen que la asignación sea considerado como un problema NPCompleto.
A continuación se detallan algunos elementos generales que deben ser
considerados al momento de diseñar el modelo. Posteriormente, se propone un
modelo que trata el problema de asignación de hora, día y salón para los
grupos pertenecientes a las escuelas que conforman el Edificio Camilo Torres.
Pueden distinguirse [21] tres conjuntos básicos, cuyos elementos poseen
propiedades y características y que en unión con las decisiones asociadas a
ellos determinan el proceso de programación de cursos. Son estos conjuntos:
• Grupos: Conjunto que contiene todas los grupos que deben ser
programados. Note que este conjunto no corresponde exactamente con
el conjunto de asignaturas que se impartirán durante el periodo para el
cual se está efectuando la programación, esto es debido a que para una
asignatura en particular pueden generarse uno o más grupos cada una
de las cuales corresponderá a un elemento de este conjunto.

50
• Aulas: Corresponde al conjunto de espacios físicos que serán
demandados por cada grupo para desarrollar allí, en un horario
establecido, las sesiones de clase.
• Profesores: Corresponde al conjunto de recursos humanos,
representados en docentes, que serán demandados por cada una de los
grupos para que se responsabilice del desarrollo de las sesiones de
clase.
• Intervalos de tiempo: Corresponde a los intervalos de tiempo
disponibles, resultado de dividir el periodo de programación en intervalos
de longitud apropiada.
Note que podría fácilmente asimilase el primer conjunto como un conjunto de
clientes o tareas y los dos conjuntos restantes como conjuntos de bienes o
recursos que son demandados o requeridos por el primero de ellos.
Los elementos de cada uno de los conjuntos descritos tienen propiedades y
características propias (que denominaremos parámetros) [21]. Algunas de
estas características son, para el conjunto de:
• Grupos: Número de estudiantes, Profesor que debe impartirla, escuela
que ofrece el curso, intensidad horaria por semana.
• Aulas: Capacidad (número de estudiantes que puede albergar), escuela
a la que pertenece dicha aula.
• Profesores: Grupos que le han sido asignadas, Horarios sugeridos, en
cualquiera de las categorías que maneja la Universidad.
• Intervalos de Tiempo: Días y horas disponibles para el desarrollo de las
sesiones de clase.
Es posible observar como algunas de las características de un conjunto están
relacionadas con elementos de otros conjuntos, es el caso del profesor
asignado a cada grupo y los grupos asignados a un profesor. Así mismo, hay
características de diferentes conjuntos que se relacionan posteriormente, como
es el caso del número de estudiantes de un grupo y la capacidad del aula que
le será asignada.
51
El conjunto de intervalos de tiempo no se evidenciara en forma explicita en la
formulación, sino que en unión con los elementos del conjunto AULAS
constituirán un nuevo conjunto denominado SLOTS.
La definición de un slot [21], considera entonces elementos de los conjuntos de
AULA y del conjunto de INTERVALOS. Este último conjunto esta definido de
forma que el periodo de programación, (Por ejemplo, lunes a viernes de 6 am a
8 pm) se divide en intervalos de longitud apropiada (Por ejemplo de una hora)
de modo que se asigna un número consecutivo a dichos intervalos
comenzando con el valor de uno para el primero de ellos (Lunes de 6 a 7 am) y
finalizando en el n-ésimo valor para el último (viernes 7-8 pm) de acuerdo con
el ejemplo
Un slot corresponde entonces a un intervalo de tiempo aula de modo que el
número de elementos en el conjunto SLOTS está conformado cuando más por
todas las posibles combinaciones de los elementos AULAS e INTERVALOS.
Con el fin de formular el problema mediante un modelo matemático es
necesario considerar las siguientes definiciones de conjuntos, parámetros y
variable de decisión.
El modelo matemático al igual que la implementación en xpress, está basado
en el modelo desarrollado en el proyecto de investigación de asignación de
aulas de la Universidad de Antioquia, en el cual una de las autoras4 participó
como asistente de investigación, sin embargo se hace necesario establecer
una nueva restricción que se encargue de los conflictos de los profesores, ya
que para este caso no se trabajará con horarios predefinidos.

4.2

Conjuntos

P: Conjunto de profesores indexado con p
G: Conjunto de Grupos indexado con g
Gp: Conjunto de Grupos dictados por el profesor p
A: Conjunto de Aulas indexado con a
T: Conjunto de patrones de tiempo, indexado con t
t = (día, hora): patrón de tiempo que especifica día y hora
4

Karen juliana Pinto Bohórquez
52
S: Conjunto de slots el cual tendrá asociado un patrón de tiempo t y un aula a

Mg ⊂ S

Subconjunto de slots factibles para el grupo g. Se considera

un subconjunto factible aquel que cumpla con la intensidad y capacidad
requerida por el grupo y se encuentre dentro del horario factible
establecido por el profesor.

M g = Conjunto de los subconjuntos de slots factibles para el grupo g
M g = {M1g , M 2 g , M3g .........M kg

}

M kg = K-ésimo subconjunto de slots factibles para el grupo g
Por ejemplo, para el grupo g que tiene intensidad de cuatro horas
semanales y es dictado por un profesor p que tiene establecido como
horario de preferencia la jornada de la mañana para los días jueves y
viernes, el k-ésimo subconjunto factible de slots podría ser aquel que
indica dos slots continuos los jueves y viernes de 6-8 am en un salón
particular.

4.3

Función sobre slots

t (s) ∈ T

4.4

es el patrón de tiempo del slot s

Parámetros

Ca: Capacidad del Aula a indexado con c
Dg: Número determinado de estudiantes para el grupo g
Bkg: Beneficio que generaría la asignación del subconjunto

M kg

al grupo g5

5

Este beneficio está relacionado directamente con el profesor asignado al
grupo y la intensidad semanal, de manera que se dará mayor prioridad a los
profesores planta y aquellos grupos que requieran mayor intensidad, sin
embargo para un modelo que considere todos los edificios de la Universidad
Industrial de Santander es posible definir este beneficio en términos de
utilización, medios con los que cuentan las aulas, distancias y demás.
53
4.5

X

Variable de decisión

kg

4.6

⎧1 si el subconjunto k es asignado al grupo g⎫
⎨
⎬
⎩0 e.o.c
⎭

Modelo Matemático

De esta forma, podríamos formular el problema de asignación de salones de la
siguiente manera:

Max ∑

∑B

g∈G k∈M g

kg

X kg

La función objetivo de esta formulación pretende maximizar el beneficio logrado
con la asignación
S.A

1. Cada slot s será asignado cuando más a la sesión de clase de un grupo
g

∑ { ∑ X}
g∈G k∈ k:s∈M kg

kg

∀s ∈ S

≤1

2. Todo profesor p debe tener asignado a lo más un grupo j en un día y
hora del subconjunto

∑ { ∑ X}

g∈G p k∈ k :t∈M kg

kg

M kg

≤1

∀t ∈ T , p ∈ P
54
3. Para un grupo g debe tener asignado a lo mas un subconjunto factible
de slots

M kg

∑X

≤1

k∈M g

kg

∀g ∈ G

La función objetivo representa el propósito principal de las escuelas y la Oficina
de Admisiones y Registro académico, de maximizar el número de secciones
asignada de manera que se optimice el uso de la planta física y la asignación
en primer lugar de los profesores planta, con el fin de satisfacer sus
preferencias horarias.

55
5

IMPLEMENTACIÓN DEL MODELO MATEMÁTICO

La implementación del modelo matemático descrito anteriormente para la
Universidad Industrial de Santander comprende dos etapas a saber: el
preprocesamiento de los datos, el cual se programó en Visual Basic de Excel y
la solución de la instancia del preprocesamiento en Xpress-MP. En la primera
etapa se construye el conjunto de slots factibles

M kg

, se calculan los

beneficios y se determinan los patrones de tiempo asociados al conjunto de
slots factibles para cada grupo y en la segunda fase se implementa la
formulación en Xpress-MP.
5.1

Preprocesamiento

El algoritmo de preprocesamiento de datos requiere los siguientes datos de
entrada:
• El horario factible de los profesores: Hace referencia a la franja horaria
(día-hora) en la cual un profesor prefiere dictar sus sesiones de clase.
Para este caso particular se tomó como referencia el horario dispuesto
en el primer semestre del 2008 para las escuelas pertenecientes al
Edificio Camilo Torres,6 ya que no se dispone de la información del
horario factible para cada profesor. Con el fin de determinar dichas
franjas se seleccionaron los grupos para las cuales fue asignado un
mismo profesor y a partir de estos horarios se estableció el horario
factible para cada uno de ellos, más una holgura que considera
periodos homogéneos de tiempo entre los días de la semana, a manera
de ejemplo: Para el profesor Daniel Miranda de la Escuela de Biología el
horario factible de acuerdo con los grupos asignados para el primer
semestre del 2008 es: MW8 -10 y WV10 -12, con la holgura el horario
factible para este profesor será:
MWV 8 -12. De acuerdo con el
algoritmo establecido es necesario codificar estos horarios de la
siguiente manera: el primer dígito estará asociado a la hora y el
segundo al día.
Figura 2. Codificación
Hora

Día

11
Fuente: Autoras
6

Esta información fue suministrada por la Oficina de Admisiones y Registro
Académico se encuentra en el ANEXO 1.
56
De esta forma:

Tabla 1: Codificación
1
2
3
.
.
14

6-7 a.m
Lunes
7-8 a.m
Martes
8-9 a.m
Miércoles
.
Jueves
.
Viernes
7-8 p.m
Fuente: Autoras

1
2
3
4
5

• Disponibilidad del Profesor: Debido a que el beneficio se encuentra
asociado con las tres categorías de profesores descritas anteriormente,
se requiere especificar para cada profesor a cuál de estas pertenece.
• Características de los grupos: Contempla el número de sesiones de
clase semanales que se deben impartir y el número de estudiantes para
un grupo particular, como ejemplo: para un grupo de Biología para
Ingenieros la cantidad de sesiones semanales es tres y el número de
estudiantes que se establece, dependiendo de la demanda estimada
por la escuela es de 30 estudiantes.
• Características propias de cada aula: Se requiere como dato de entrada
la capacidad máxima del salón. Para determinar la capacidad de las
aulas se tomó como referencia los datos que maneja la oficina de
Admisiones y Registro Académico que corresponde al inventario de
sillas que se encuentran en cada salón.
El algoritmo utilizado en la construcción del conjunto de slots factibles para
cada grupo, comprende varias etapas:
1. Se genera a partir del algoritmo descrito en el ANEXO 3 .el tamaño de las
matrices asociadas a los horarios factibles para todos los profesores de la
instancia que se desee procesar. Los datos de entrada para este algoritmo
se relacionan en la Tabla 2. En donde Ip representa la cantidad de horas
semanales requeridas por los grupos, la matriz HF el horario factible del
profesor. Para este caso particular se obtiene como resultado el valor de
cuatro (4) para de n (filas) y m (columnas).
2. Una vez calculado el tamaño de la matriz se genera un segundo algoritmo
(ANEXO 4) el cual calcula a partir del horario factible del profesor (matriz
HF) y de la cantidad de sesiones de clase requeridas por el grupo (Ip), las
57
posibles franjas horarias en las cuales se puede impartir dichas sesiones.
De acuerdo con la intensidad horaria semanal requerida se establecieron
las siguientes combinaciones como se observa en la Tabla 3

Tabla 2: Cálculo del tamaño de la matriz HF
Ip 
4 
4 
4 
4 

32 
42 
52 
62 

33 
43 
53 
63 

HF
0
0
0
0

35
45
55
65

 
 
 
 

No 
Profesores
2
 
 
 

n(Filas)
 4
 
 
 

m(Colum
nas) 
4  
  
  
  

Fuente: Autoras

En caso de requerirse uno o dos bloques de dos sesiones y una sesión en
días diferente, esta sesión estará dentro del intervalo del bloque, a manera
de ejemplo: Para la asignatura Biología que requiere tres sesiones
semanales el horario establecido seria lunes de 6-8 a.m y jueves 6-7 a.m.
de igual forma para el caso de cinco horas semanales los dos bloques se
encuentran en el mismo horario.

Tabla 3: Combinaciones de acuerdo con la Intensidad
INTENSIDAD
COMBINACIÓN
Una sesión diariamente
Tres sesiones semanales
Un bloque de dos sesiones y una
sesión en días diferentes
Cuatro sesiones
Dos bloques de dos sesiones en días
semanales
diferentes
Cinco sesiones
Dos bloque de dos sesiones y una
semanales
sesión en días diferentes
Fuente: Autoras

3. Luego de tener las posibles franjas horarias se realiza la combinación con
las aulas, teniendo en cuenta la capacidad de la misma y la demanda
estimada (ANEXO 5) de esta forma se obtiene el

M kg . Es decir cada

grupo se combina con las aulas que tengan mayor o igual capacidad que el
tamaño del grupo. Es importante aclara que en las escuelas, los grupos
varían en la cantidad de horas semanales requeridas, sin embargo para la
validación del modelo en Xpress se requiere que cada elemento que
conforma el conjunto de slots factibles tenga el mismo tamaño, para este
caso se tomo el valor máximo requerido semanalmente por los grupos, es
58
decir cinco horas, esta misma consideración aplica cuando se establezcan
los beneficios y los patrones de tiempo. A manera de ejemplo se tiene dos
grupos de intensidades de cuatro y tres horas semanales respectivamente,
el primer elemento del conjunto

M kg

estará definido como se observa

en la Tabla 4.
Tabla 4. Definición del conjunto de
GRUPO 
 1 
 2 

1 
521 
131 

621 
141 

M kg

2
531  631
151 
0

0
0

521
231

621
241

541
251

641
0

0
0

Fuente: Autoras
4. De acuerdo con la restricción número dos descrita en el modelo
matemático se requiere establecer el patrón de tiempo (día y hora)
asociada a cada uno de los slot que conforman el conjunto de soluciones
factibles

M kg

, estos patrones se obtienen a partir del algoritmo descrito

en el ANEXO 6.
5. Por último se calcula el beneficio asociado a cada Mk de cada uno de los
grupos (ANEXO 7), el cual está relacionado, para este caso en particular al
tipo de profesor asignado y al número de sesiones semanales requeridas.
De esta forma el beneficio está definido como:

Beneficio = btipoprofesor + bhorasrequeridas
Donde btipoprofesor y bhorasrequeridas puede tomar los siguientes
valores:

Tabla 5: Valores Establecidos para el cálculo del Beneficio
TIPO DE
PROFESOR

Planta
Cátedra
Maestría

BTIPOPROFESOR

0.5
0.4
0.6

HORAS
REQUERIDA

BHORASREQUERID
AS

3
4
5

0.2
0.3
0.4

59
5.1.1 Escuela Química

La escuela de Química cuenta con 68 grupos los cuales imparten sus
sesiones de clase en el Edificio Camilo Torres, las características de
estos grupos se pueden observar en la
Tabla 6.
Tabla 6: Características de los Grupos Escuela de Química
Número
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

Nombre de la asignatura
QUIMICA ORGANICA I
QUIMICA ORGANICA III
QUIMICA BASICA
QUIMICA BASICA
FISICOQUIMICA
FISICOQUIMICA
QUIMICA II
FISIC0QUIMICA IV
QUIMICA II
BIOCIENCIAS MEDICAS I
BIOCIENCIAS MEDICAS I
QUIMICA II
QUIMICA II
QUIMICA II
BIOCIENCIAS MEDICAS I
QUIMICA II
ANALISIS CUANTITATIVO
ANALISIS CUANTITATIVO
QUIMICA BASICA
QUIMICA BASICA
QUIMICA II
QUIMICA II
QUIMICA BASICA
QUIMICA DE LOS POLIMEROS
QUIMICA ORGANICA II
QUIMICA BASICA
INSTRUMENTACION QUIMICA
I
INSTRUMENTACION QUIMICA
I
QUIMICA INORGANICA I
QUIMICA INORGANICA II
BIOQUIMICA

Ip
3
3
5
5
4
4
4
3
4
5
5
3
4
3
5
3
4
4
5
5
5
4
4
3
4
5

Capacidad
grupo
28
40
44
45
40
40
41
35
44
40
40
40
44
41
44
44
34
39
41
42
40
41
43
32
43
41

3

37

3
3
3
4

24
35
42
31

60
32
Número
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68

QUIMICA I

4

42

Nombre de la asignatura
QUIMICA I
QUIMICA I
QUIMICA II
QUIMICA I
QUIMICA I
QUIMICA BASICA
QUIMICA I
QUIMICA I
PUBLICACIONES QUIMICAS
QUIMICA I
QUIMICA BASICA
QUIMICA BASICA
QUIMICA BASICA
QUIMICA BASICA
QUIMICA BASICA

Ip
4
4
4
4
4
5
4
4
4
4
5
5
5
5
5

Capacidad
grupo
43
48
44
42
42
40
41
43
57
43
41
42
42
42
36

QUIMICA BASICA
INSTRUMENTACION QUIMICA
II
QUIMICA GENERAL
QUIMICA GENERAL
QUIMICA I
QUIMICA BASICA
QUIMICA BASICA
QUIMICA GENERAL
QUIMICA I
QUIMICA I
QUIMICA II
QUIMICA BASICA
ETICA
QUIMICA I
QUIMICA BASICA
QUIMICA II
BIOQUIMICA I
BIOCIENCIAS I
BIOCIENCIAS I
BIOCIENCIAS I
QUIMICA GENERAL

5

42

3
4
4
4
5
5
4
4
4
4
5
4
4
5
4
4
5
5
5
4

40
40
33
45
44
45
43
42
44
45
41
42
32
42
40
48
35
31
36
60

Cuenta con un total de 33 profesores de los cuales 17 son planta, 4 de
maestría y 12 cátedras. En la Tabla 7 se relacionan los grupos por profesor.
61
Tabla 7: Relación de Grupos por Profesor escuela de Química
Número
1
2
3
4
5

Tipo
profesor
P
P
P
P
P

6
7
8
9
10
11
12
13

P
P
P
P
P
P
P
P

14
15
16
17
18
19
20
21

P
P
P
P
C
C
C
C

22
23
24
25
26
27
28
29
30
31
32
33

C
C
C
C
C
C
C
C
C
C
C
C

Nombre Profesor
ALIRIO PALMA
ANGELA MONTAÑO
CLAUDE EWERT
ENRIQUE MEJIA
GERARDO BAUTISTA
HERNANDO
MONCALEANO
JAIME CAMARGO
JORGE AVILA
JORGE RAMIREZ
JOSE GUTIERREZ
JUAN URBINA
LUZ CARREÑO
LUZ VARGAS
MARIANNY
COMBARIZA
MARTA NIÑO
RODRIGO TORRES
ROSA LOPEZ
ADOLFO POLO
CIRO ROZO
ELVIRA TIRADO
HECTOR DIAZ
JESUS ANDELFO
PINILLA
JOSE CABALLERO
JOSE PINTO
LUIS BARBOSA
LUIS LAZARO
MARIO MACIAS
NELSON GUALDRON
OLGA CELIS
SANDRA CADENA
MARIA GONZALEZ
NASSER GUERRERO
HANS CASTRO

N grupos
2
2
3
1
3
4
3
2
3
1
1
1
1
1
2
1
3
1
3
2
1
5
2
2
1
3
1
4
1
2
3
2
1

62
Las aulas asignadas a esta escuela tienen las siguientes características.
Tabla 8: Características de las aulas escuela de Química
Aula
202
203
204
210
211
212

Procesados estos datos el máximo

Capacidad
80
42
52
45
45
45

M kg

que se obtuvo fue de 90 y el

número máximo de slots requeridos es de 5 horas semanales.

5.1.2 Escuela de Física

La escuela de Física cuenta con 79 grupos con las siguientes características.
Tabla 9: Características de los Grupos Escuela de Física
Número
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

Nombre de la asignatura
FISICA III
FISICA III
FISICA II
OPTICA GEOMETICA Y
ONDAS
FISICA III
FISICA III
FISICA I
FISICA I
FISICA I
FISICA II
FISICA I
FISICA I
FISICA I
FISICA II
FISICA II
FISICA I
FISICA I
FISICA III
FISICA III

Ip

Capacidad
grupo
5
36
5
36
5
37
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5

32
36
36
84
84
42
37
21
42
43
36
36
43
42
36
36

63
Número
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62

Nombre de la asignatura
FISICA III
MECANICA
FISICA III
FISICA III
FISICA III
FISICA III
FISICA III
FISICA III
FISICA III
FISICA II
FISICA II
FISICA II
FISICA II
FISICA II
MECANICA ANALITICA
MECANICA ANALITICA
MECANICA ANALITICA
FISICA II
FISICA II
FISICA III
FISICA I
FISICA II
FISICA II
FISICA I
FISICA II
FISICA II
FISICA II
FISICA II
FISICA II
FISICA II
FISICA I
FISICA I
FISICA I
FISICA II
FISICA I
FISICA II
FISICA III
FISICA III
FISICA II
FISICA II
FISICA II
FISICA II
FISICA III

Ip
5
4
5
5
5
5
3
5
3
5
5
5
5
3
4
4
4
5
3
5
5
3
5
5
5
5
5
5
5
3
5
3
3
5
5
5
5
5
3
5
5
5
5

Capacidad
grupo
36
41
36
36
36
37
36
36
54
36
37
36
36
36
62
60
61
36
36
36
42
36
37
42
40
36
37
36
36
36
21
46
36
36
42
36
36
36
45
37
37
38
36

64
Número
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79

Nombre de la asignatura
FISICA II
FISICA III
FISICA II
FISICA II
FISICA II
FISICA II
FISICA I
FISICA I
FISICA I
FISICA I
FISICA I
FISICA I
FISICA I
FISICA III
MECANICA ANALITICA
MECANICA ANALITICA
MECANICA ANALITICA

Ip
3
5
5
5
5
3
5
5
5
3
5
3
3
5
4
4
4

Capacidad
grupo
42
36
36
36
36
36
42
42
42
45
21
46
46
36
62
61
61

Cuenta con un total de 35 profesores de los cuales 12 son planta
cátedras. En la Tabla 10 se relacionan los grupos por profesor.

y 23

Tabla 10 Relación de Grupos por Profesor escuela de Física
Número
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

Tipo
profesor
P
P
P
P
P
P
P
P
P
P
P
P
C
C
C
C
C

Nombre Profesor
ANCISAR FLOREZ
ARTURO PLATA
CARLOS BELTRAN
ESPERANZA AGUILAR
HAROL PAREDES
JADER GUERRERO
JAIME MENESES
LUIS CASTELLANOS
LUIS GARCIA
MILTON FLOREZ
RAFAEL CABANZO
RAFAEL TORRES
ALEJANDRO MARTINEZ
ALVARO BARRERA
ANTONIO GUTIERREZ
CESAR RIVEROS
CESAR SARMIENTO

N grupos
2
2
2
2
3
2
1
3
1
2
1
5
2
1
4
3
3

65
Tipo
profesor

Número
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35

C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C

Nombre Profesor
CRISTIAN ARIZA-ESPERANZA
AGUILAR
ELY DANNIER NIÑO
FABIO LORA
FERNANDO DURAN
HERNANDO ALTAMAR
JADER GONZALEZ
JAVIER LOPEZ
JERSON REINA
JOSE HERRERA
JOSE PARRA
JOSE RIZZO
JUAN BARRIOS
LIKIDCEN LOPEZ
MAO MURILLO
MIGUEL PARRA
OMAR ESPITIA
PAOLO OSPINA
YESIT GARCIA

N grupos
1
2
1
1
1
4
1
2
2
1
2
5
2
4
4
3
1
3

Las aulas asignadas a esta escuela tienen las siguientes características.

Tabla 11: Características de las aulas escuela de Física
Aula
Capacidad
116
60
403
50
404
50
405
50
201
80
101
180
102
60

Procesados estos datos el máximo

M kg

que se obtuvo fue de 210 y el

número máximo de slots requeridos es de 5 horas semanales.
5.1.3 Escuela de Biología

La escuela de Biología cuenta con
características.

42 grupos con las siguientes

66
Tabla 12: Características de los Grupos Escuela de Biología

Número
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42

Nombre de la asignatura
BIOLOGIA GENERAL
BIOLOGIA GENERAL
INTRODUCCIÓN A LA INVESTIGACIÓN
EVOLUCIÓN
BOTANICA ll
FLORISTICA lll
ZOOLOGIA ll
ETICA
GENETICA MICROBIANA lll
ANALISIS DE LA EXPRESION
GENETICA
BIOLOGIA CELULAR
FISIOLOGIA VEGETAL
BIOLOGIA GENERAL
BIOLOGIA PARA INGENIEROS
ECOLOGIA DE LAS AVES
INTRODUCCIÓN A LA INVESTIGACIÓN
BIOLOGIA DEL DESARROLLO
BIOLOGIA PARA GEOLOGIA
BIOLOGIA PARA GEOLOGIA
LIMNOLOGIA I
ECOLOGIA ll
BIOLOGIA CELULAR
BIOLOGIA PARA INGENIEROS
BIOLOGIA PARA INGENIEROS
BIOLOGIA CELULAR
BIOLOGIA PARA INGENIEROS
BIOLOGIA PARA INGENIEROS
BIOLOGIA
BIOLOGIA
FISIOLOGIA ANIMAL
BIOLOGIA PARA INGENIEROS
BIOLOGIA PARA INGENIEROS
BIOLOGIA CELULAR
BIOLOGIA PARA INGENIEROS
BIOLOGIA PARA INGENIEROS
BIOLOGIA PARA INGENIEROS
BIOLOGIA PARA INGENIEROS
BIOLOGIA PARA INGENIEROS
BIOLOGIA PARA INGENIEROS
BIOLOGIA PARA INGENIEROS
BIOLOGIA PARA INGENIEROS
BIOLOGIA CELULAR

Ip
5
5
5
5
5
5
5
5
5

Capacidad
grupo
23
30
20
17
33
20
27
25
20

5
5
5
5
5
5
5
5
5
5
5
5
5
2
2
5
2
2
5
5
5
5
2
5
2
2
2
5
2
2
5
5
5

20
30
25
27
30
20
20
27
35
25
20
23
41
26
35
35
37
32
32
32
25
37
37
40
39
36
36
29
25
38
36
37
34

67
Cuenta con un total de 20 profesores de los cuales 11 son planta y 9 cátedras.
En la Tabla 13 se relacionan los grupos por profesor.

Tabla 13: Relación de Grupos por Profesor escuela de Biología
Número
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

Tipo profesor
P
P
P
P
P
P
P
P
P
P
P
C
C
C
C
C
C
C
C
C

Nombre Profesor
DAGOBERTO ARRIETA
DANIEL MIRANDA
HUMBERTO GARCIA
IVAN GUERRERO
JAVIER RONDON
JORGE FUENTES
JORGE HERNANDEZ
JOSE MORENO
MARTHA RAMIREZ
ROSA GAVILAN
VICTOR SERRANO
ADRIANA JEREZ
ALFONSO VILLALOBO
ALICIA ROJAS
BEATRIZ GUERRA
GERMAN PATIÑO
HENRRY SUAREZ
JUAN CHACON
JUAN GUTIERREZ
NASSER GUERRERO

N grupos
2
2
2
1
1
1
3
3
2
3
1
1
3
2
2
1
3
3
3
3

Las aulas asignadas a esta escuela tienen las siguientes características.

Tabla 14: Características de las aulas escuela de Biología
AULA
103
401
409
410

Procesados estos datos el máximo

CAPACIDAD
60
45
45
45

M kg

que se obtuvo fue de 80 y el

número máximo de slots requeridos es de 5 horas semanales.

68
5.1.4 Escuela Matemáticas

La escuela de Matemáticas cuenta con 148 grupos los cuales imparten sus
clases en el Edificio Camilo Torres, las características de estos grupos se
pueden observar en la Tabla 15.

Tabla 15: Características de los Grupos Escuela de Matemáticas
Número
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34

Nombre de la asignatura
CALCULO I
CALCULO I
ALGEBRA LINEAL ll
ALGEBRA LINEAL ll
CALCULO lll
ECUACIONES DIFERENCIALES
GEOMETRIA EUCLIDIANA
CALCULO ll
CALCULO lll
CALCULO lll
ECUACIONES DIFERENCIALES
ECUACIONES DIFERENCIALES
ANALISIS MATEMATICO l
MATEMATICA BASICA ll
ECUACIONES DIFERENCIALES
CALCULO I
ECUACIONES DIFERENCIALES
CALCULO lll
CALCULO lll
CALCULO lll
ALGEBRA LINEAL ll
TEORIA DE CONJUNTOS
ALGEBRA LINEAL l
CALCULO I
CALCULO I
ALGEBRA LINEAL l
ALGEBRA SUPERIOR
ALGEBRA LINEAL l
ECUACIONES DIFERENCIALES
DIDACTICA DEL CALCULO
TALLER DE LENGUAJE l
CALCULO lll
CALCULO lll
ECUACIONES DIFERENCIALES

Ip
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4

Capacidad
grupo
39
41
28
35
29
33
29
34
33
35
35
34
22
30
35
40
35
34
30
35
34
15
33
40
40
27
37
34
35
13
52
35
33
33

69
Número
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76

Nombre de la asignatura
ECUACIONES DIFERENCIALES
ECUACIONES DIFERENCIALES
TALLER DE LENGUAJE ll
ALGEBRA LINEAL l
ALGEBRA LINEAL l
ALGEBRA LINEAL l
ECUACIONES DIFERENCIALES
ECUACIONES DIFERENCIALES
ECUACIONES DIFERENCIALES
DIDACTICA DE LA ARITMETICA Y
EL ALGE
ALGEBRA LINEAL l
CALCULO ll
CALCULO ll
CALCULO lll
CALCULO lll
ALGEBRA LINEAL l
ALGEBRA LINEAL l
CALCULO lll
ALGEBRA MODERNA
ALGEBRA MODERNA
CALCULO ll
CALCULO lll
CALCULO lll
CALCULO ll
ALGEBRA SUPERIOR
CALCULO ll
CALCULO ll
CALCULO ll
ALGEBRA LINEAL l
CALCULO ll
CALCULO ll
ALGEBRA LINEAL l
ALGEBRA LINEAL l
ALGEBRA LINEAL l
CALCULO I
CALCULO I
CALCULO I
CALCULO I
ALGEBRA LINEAL l
MATEMATICA ECONOMICA l
MATEMATICA ECONOMICA l
CALCULO I

Ip
4
4
4
4
4
4
4
4
4

Capacidad
grupo
35
30
30
37
33
29
39
36
41

4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4

30
32
33
36
38
37
36
36
35
15
27
30
30
31
34
30
33
33
35
29
31
32
39
40
32
40
40
40
40
29
39
37
40

70
Número
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119

Nombre de la asignatura
CALCULO I
CALCULO I
CALCULO ll
ALGEBRA LINEAL l
CALCULOlll
ECUACIONES DIFERENCIALES
MATEMATICAS l
CALCULO I
CALCULO I
ALGEBRA LINEAL l
ESTADISTICA ECONOMICA
ESTADISTICA ECONOMICA
ALGEBRA LINEAL l
CALCULO I
CALCULO I
CALCULO I
CALCULO ll
CALCULO ll
ALGEBRA LINEAL l
ALGEBRA LINEAL l
CALCULO I
CALCULO I
ALGEBRA LINEAL l
CALCULO I
ALGEBRA SUPERIOR
ALGEBRA LINEAL l
ALGEBRA LINEAL l
CALCULOlll
MATEMATICA ECONOMICA ll
MATEMATICA ECONOMICA ll
MATEMATICA ECONOMICA lll
FUNDAMENTACION DIDACTICA
CALCULO ll
CALCULO ll
CALCULO ll
CALCULO I
CALCULO I
CALCULO I
ALGEBRA LINEAL l
ALGEBRA LINEAL l
CALCULO I
CALCULO I
ALGEBRA LINEAL l

Ip
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4

Capacidad
grupo
40
40
35
28
37
34
35
40
40
39
33
33
38
40
40
40
40
31
35
33
40
40
33
40
15
34
27
36
35
35
40
23
30
31
31
40
40
40
29
29
40
40
35

71
Número
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148

Nombre de la asignatura
CALCULO I
CALCULO I
CALCULO I
CALCULO I
CALCULO I
CALCULO I
CALCULO I
ECUACIONES DIFERENCIALES
ECUACIONES DIFERENCIALES
ECUACIONES DIFERENCIALES
CALCULO I
CALCULO lll
CALCULO lll
PSICOLOGIA DEL APRENDIZAJE
PSICOLOGIA EDUCATIVA
CALCULO I
CALCULO I
CALCULO I
SEMINARIO l HISTORIA DE LA
PEDAGOGIA
SEMINARIO l HISTORIA DE LA
PEDAGOGIA
CALCULO ll
CALCULO ll
CALCULOlll
CALCULO lll
CALCULO ll
CALCULO ll
CALCULO ll
ALGEBRA LINEAL l
ALGEBRA LINEAL ll

Ip
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4

Capacidad
grupo
40
40
40
40
40
40
40
40
34
38
40
35
39
21
21
40
40
40

4

31

4
4
4
4
4
4
4
4
4
4

30
35
37
37
34
32
35
31
34
33

Cuenta con un total de 57 profesores de los cuales son 20 planta, 3 de
maestría y 34 cátedras. En la Tabla 16 se relacionan los grupos por profesor.

Tabla 16: Relación de Grupos por Profesor escuela de Matemáticas
Tipo
profesor

Número
1

P

2
3

P
P

Nombre Profesor
ARNOLDO
TEHERAN
CARLOS
RODRÍGUEZ
CAROLINA MEJÍA

N grupos
4
3
1

72
Tipo
profesor

Número
4
5

P
P

6

P

7

P

8
9
10

P
P
P

11
12
13
14
15
16

P
P
P
P
P
P

17

P

18
19
20
21
22
23
24

P
P
P
C
C
C
C

25
26
27
28
29

C
C
C
C
C

30
31
32
33
34
35
36
37
38

C
C
C
C
C
C
C
C
C

39

C

Nombre Profesor
CLAUDIA
GRANADOS
EDILBERTO REYES
ELDER
VILLAMIZAR
GILBERTO
ARENAS
GILDARDO
GUZMÁN
HÉCTOR HIGUERA
JORGE FIALLO
JORGE
VILLAMIZAR
JOSÉ MAYORGA
JULIO CARRILLO
LUIS OÑATE
RAFAEL APONTE
RAFAEL CASTRO
RAFAEL ISAAC
RICARDO
MONTURIOL
SONIA SABOGAL
WILSON OLAYA
ALBERTO MACÍAS
CARLOS FAJARDO
CARLOS BAUTISTA
CESAR LOAIZA
CLAUDIA
MONTAÑEZ
DANIEL MORENO
DANIEL RAMIREZ
DEISY VILLALBA
DORIS GONZALEZ
ENRIQUE
ESCOBAR
FERNANDO PÉREZ
GERMÁN JAIMES
GONZALO DÍAZ
HILDA DUARTE
HUGO GARCÍA
JORGE CUPABAN
JORGE NORIEGA
JORGE PRADA
LEONARDO
VIRVIESCAS

N grupos
4
2
1
2
4
4
1
2
3
2
4
3
3
2
4
2
3
3
2
4
2
4
4
2
2
3
2
2
2
3
2
3
3
3
3
1

73
Tipo
profesor

Número
40
41
42
43
44
45
46
47
48
49

C
C
C
C
C
C
C
C
C
C

50
51
52

C
C
C

53
54
55

C
C
C

56

C

57

C

Nombre Profesor
LIBARDO MORAN
LIGIA ARGUELLO
LUIS BARRERA
LUIS HIJUELOS
LUIS ORTIZ
MARÍA GOMEZ
MARCO MARTÍNEZ
MARISELA ARDILA
MIGUEL ARAQUE
MIGUEL SILVA
NÉSTOR
QUIÑONEZ
OSCAR LOZANO
PATRICIA DÍAZ
ROSARIO
IGLESIAS
SANDRO BASTO
SOREN ARENAS
STERLING
CASTAÑEDA
ALEXANDER
REATIGA

N grupos
3
1
4
2
2
3
2
3
2
3
1
2
2
3
2
4
3
2

Las aulas asignadas a esta escuela tienen las siguientes características.

Tabla 17: Características de las aulas escuela de Matemáticas
AULA
302
303
304
305
311
301
312
313
413
101

Procesados estos datos el máximo

CAPACIDAD
50
50
50
50
40
60
50
35
80
40

M kg

que se obtuvo fue de 32 y el

número máximo de slots requeridos es de 4 horas semanales.

74
5.2

Modela Matemático en Xpress-MP

El modelo matemático que se planteó en el capítulo cuatro, se implementó en
Xpress-MP. El código se muestra en el ANEXO 8. A continuación se harán
algunas aclaraciones necesarias para la implementación en esta herramienta.
Los parámetros de entradas se encuentran en un archivo plano (.dat) el cual
contiene la siguiente información:
• GRUPOS:[ Se enumeran la cantidad de grupos que se requieren
asignar]
• SLOTS:[ Slots con los que se cuentan en una instancia en particular, el
tamaño de este conjunto estará definido por la cantidad de aulas
asignadas a la escuela]
• PROFESORES:[ Se debe enumerar la cantidad de profesores asignados
a los grupos]
• PATRONT: [ Patrones de tiempos asociados a los slots, recordemos que
un patrón de tiempo está definido como día y hora, por lo tanto este es
un dato constante para todas las escuelas]
• PARAM_PROF: [ Esta definido como una matriz que tendrá el mismo
tamaño en filas que el conjunto de profesores por dos columnas, en esta
matriz se establecen el rango de los grupos asignados a dicho profesor,
es decir, si el profesor uno tiene asignado 3 grupos y el profesor dos 4,
esta matriz estará definida de la siguiente manera:

⎡1
⎢4
⎣

3⎤
7⎥
⎦

• PARAM_GRUP: [ Esta definido como una matriz de dos filas y tantas
columnas como número de grupos, que contiene en la primera fila la
cantidad de horas semanales requeridas por el grupo y en la segunda el
máximo

M kg

para cada grupos]

75
• SUBC_SLOTS:[ Esta definida como una matriz de tantas columnas
como grupos y la cantidad de filas se determinan a partir de la
multiplicación del máximo número de slot requerido por el máximo
número de subconjuntos factibles, esta matriz contiene el conjunto de

M kg

establecido para cada grupo]

• SUBC_PT:[ Matriz de igual tamaño que SUBC_SLOTS, contiene los
patrones de tiempos asociados a los subconjuntos de slots factibles que
se encuentran en SUBC_SLOTS]
• BENEFICIOS: [ Esta matriz tendrá tantas columnas como grupos y
tantas filas como el máximo número de subconjuntos factibles]

Todos los elementos del bloque declarations son dinámicos, pues al momento
de su declaración no se conoce su tamaño. El tamaño de los elementos que allí
se declaran, solo se definen hasta la ejecución de los bloques de initializations.
Las
instrucciones
finalize
(GRUPOS),
finalize
(SLOTS),
finalize
(PROFESORES), finalize (PATRONT), convierten los respectivos conjuntos
dinámicos, en conjuntos constantes. De esta manera, los arreglos que estos
conjuntos indexados, se vuelven estáticos. Siempre que sea posible es mejor
usar arreglos estáticos que dinámicos, porque Mosel maneja más
eficientemente los estáticos.

76
6

RESULTADOS COMPUTACIONALES

A partir de los datos de entrada organizados de acuerdo con lo mencionado en
el apartado de preprocesamiento de datos y el modelo programado en Xpress.
Las pruebas computacionales que se resolvieron corresponden a cuatro
instancias relacionadas cada una de ellas con las escuelas pertenecientes al
Edificio Camilo Torres de la Universidad Industrial de Santander.
La presentación de los resultados y validación de los mismos se hace para
cada una de las instancias, para las cuales se describen las características
particulares presentadas en la ejecución. Para esto Xpress cuenta con una
herramienta llamada RUN BAR o barra de ejecución, la cual agrupa fichas o
paneles: Output/Input, Stats, Matrix, Objective, MIP search, BB tree, SLP progress,
User graph como se observa en la Figura 3. Xpress
Figura 3. Xpress

Fuente: Xpres-MP
Las cuales permiten hacer seguimiento a la ejecución de los resultados
cuantitativos y gráficos.
El análisis de los resultados que se presentaran para cada una de las
instancias, se apoya en las fichas relacionadas con Ouput/Input y MIP Search,
en las cuales se muestran los resultados impresos y el comportamiento de la
búsqueda respectivamente. El Gap relaciona la aproximación porcentual que
existe respecto a la solución óptima, siendo 0% el resultado del mismo en una
solución óptima. Para este caso particular se establece como criterio de
parada un GAP inferior a 10% y además de este criterio también es posible
tener en cuenta, el tiempo en el cual no se presenta variación en el valor de la
función objetivo que considera para estas instancias una hora como tiempo
mínimo.
En el desarrollo de la validación del modelo se verifica que las restricciones
propuestas se hayan desarrollado de la forma esperada. Para hacer esta
evaluación se procede a determinar la ocupación de cada salón según los
grupos asignados, es decir se presenta el salón con las franjas horarias (ver
77
Figura 4) las cual se van cubriendo a medida que se ingresan los grupos, que
están relacionados con los profesores a través del color del bloque, lo cual se
usa como método de verificación visual.
A través de este proceso se podrá evidenciar que no se tenga más de un
subconjunto de slots factibles asignado por grupo, que los períodos del salón
no se asignen más de una vez y que el profesor no presente conflicto.

Figura 4. Representación Horaria
  
6_7 
7_8 
8_9 
9_10 
10_11
11_12
12_13
13_14
14_15
15_16
16_17
18_19
19_20
20_21

LUNES 
  
  
  
  
  
  
  
  
  
  
  
  
  
  

  
  
  
  
  
  

SALÓN 2
MIÉRCOLES
 
 

 
 

 
 

 
 
 

MARTES 

 
 
 

 

 
  
  
  
  
  
  

 
 

 
 

VIERNES 

JUEVES

  
 
  
  

 
 

 

 
 

 
  
  

Fuente: Autoras
Las instancias se generaron en un computador con procesador Intel Celeron de
2.16 GHz y 250 MB de RAM
6.1

Escuela de Física

La ejecución del modelo de la instancia de generó los resultados presentados
en la Figura 5 y la Tabla 18. Cabe señalar que los resultados no corresponden
a la solución óptima.
Esto se puede comprobar si se observa el valor arrojado por el Gap el cual es
superior al 0%, esto ocurre en instancias donde se requiere realizar un alto
número de iteraciones, por eso se considero apropiado un Gap de 7.5% el cual
se obtiene en un tiempo de ejecución de 1.9 horas, considerándose este como
un tiempo computacional prudente (Figura 7).
Dado que por un rango de 2.6 horas el valor del Gap se mantuvo constante, se
detuvo la ejecución del programa. La cantidad de soluciones encontradas
fueron 2, por ende los resultados corresponden a la segunda solución que
78
alcanza un valor de la función objetivo de 48.7 la cual fue encontrada en un
tiempo de ejecución de 1.9 horas.

Figura 5. Resultados Escuela de Física

Fuente: Xpress-MP
De acuerdo con la solución arrojada, se observa que se asignaron 67 grupos
de un total de 79, es decir se alcanzo un 84.81% de asignaciones.
Los datos del panel stats permiten observar que la función objetivo para la
solución del problema dual simplex (cota superior) es de 51.79 y de acuerdo a
los datos de la instancia el máximo beneficio que se podría obtener si se
ejecutan el total de asignaciones es de 54.3, es decir el modelo en la solución
óptima no alcanzaba al número total de asignaciones, esto debido a que el
espacio de búsqueda se encuentra limitado y no considera asignaciones de
sesiones de clase de un grupo en diferentes aulas, de la misma forma al
establecer las combinaciones de acuerdo con la intensidad no se abarcan el
total del espectro de las posibilidades. En relación con los datos dados por la
oficina de Admisiones y Registro Académico, 6 grupos se encuentran
asignados bajo estas características, tres cuyas sesiones de clase se imparten
en aulas diferentes y los restantes con horarios no contemplados en las
combinaciones. Por esta razón al realizarse la asignación manual la cantidad
de grupos asignados es superior a la realizada por el algoritmo.

79
Figura 6. Stats Escuela de Física

Fuente: Xpress-MP
De acuerdo con la solución arrojada por Xpress la asignación en las aulas
asignadas para esta escuela quedará como se observa en la Figura 8.

Figura 7. MIP Search escuela de Física

Fuente: Xpress

80
Figura 8. Asignación Horaria para los Salones de la Escuela de Física

81
82
Tabla 18. Resultados Escuela de Física
GRUPO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50

SUBCJTO
30
23
151
150
144
57
102
18
52
N/A
84
5
188
67
N/A
106
81
40
204
199
3
144
94
N/A
80
143
10
60
17
147
N/A
196
N/A
7
21
N/A
20
33
34
19
33
28
27
29
39
150
125
125
28
3

122
212
116
235
915
1022
223
426
414

222
312
216
335
1015
1122
233
526
514

SLOTS
132
232
126
245
935
1032
153
436
424

152
332
226
255
945
1132
253
456
524

355
1045
1052

1126
911
1017
316

1226
921
1117
416

1136
1021
1037
336

1236
941
1057
346

1146
1041
1157
446

214
913
324
227
117
323
1116
914

314
1013
334
247
217
423
1216
924

224
933
434
347
137
343
1156
1024

244
953
354
257
237
443

344
1053
454
357
147

934

1034

513
1125
1121
1214
912
1115

613
1225
1221
1234
1012
1155

523
1135
1141
1334
922
1255

623
1235

543
1145

1244
942

1344
1042

417

517

447

457

557

926
1327

1026
1427

946
1337

1046
1437

1321
527
1127
1112
1333
115
313
113
114
545
315
415
111
311

1331
627
1227
1212
1433
215
333
213
134
555
325
515
211
411

1431
537
1137
1142
1343
125
433
123
234
655
425
435
121
321

252
242

556
444

547
1147
1152

647
1247
1252

225
353
143
154

155
453
243
254

345
535
221
421

445
455
151
341

83
GRUPO
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79

SUBCJTO
N/A
4
1
N/A
5
46
43
142
182
N/A
N/A
19
13
37
6
73
22
72
34
42
N/A
N/A
91
124
54
18
9
13
11

SLOTS
521
1211

621
1241

541
1341

322
1014
1124
1215
917

342
1114
1224
1245
927

1011
511
317
431
1113
231
1213
1222
512

534
516
136
412
1326
1336
936

1251

1351

442
1044
1134
1345
1027

352
1144
1154

452
1054
1254

947

1047

1111
551
327
441
1133
331
1313
1232
612

1031
651
427
451
1233
241
1223
1242
542

1131

1051

337

437

1143
251
1323

1243
351
1253

552

652

554
616
236
422
1426
1436
1036

654
546
146
522
1346
1356
956

246
432
1446
1456
1056

156
532

Fuente: Xpress-MP

6.2

Escuela de Biología

A diferencia de la escuela de física esta escuela, encuentra una solución
óptima en un tiempo de 2 segundos, con un valor en la función objetivo de
25.7 como se observa en la Figura 9. Esto debido a que la cantidad de grupos
y salones que se requieren asignar, respecto a las otras escuelas que se
encuentran en el Edificio Camilo Torres es menor, por lo tanto el número de
iteraciones que debe realizar es significativamente más pequeño. En
comparación con la escuela de física el número de iteraciones es del 0.0729%.

84
Figura 9. Stats Escuela de Biología

Fuente: Xpress-MP
La ejecución del modelo de la instancia de Biología generó los resultados
presentados en la Figura 10 y la Tabla 19.
Figura 10. Resultados Escuela de Biología

Fuente: Xpress-MP

85
Tabla 19. Resultados Escuela de Biología
GRUPO

SUBCJTO

SLOTS

1

19

323

423

333

433

2

27

533

633

543

643

3

6

521

621

551

651

4

15

522

622

552

652

5

48

1334

1434

1344

1444

6

4

221

321

241

341

7

24

544

644

554

654

8

44

144

154

254

9

36

1144

1154

1254

10

27

513

613

523

623

11

38

514

614

524

624

12

17

512

612

532

632

13

30

432

442

542

14

26

112

122

222

15

10

114

214

124

224

16

16

324

424

344

444

17

20

724

824

744

844

18

59

1224

1234

1244

19

6

1021

1121

1131

20

6

922

1022

932

1032

21

3

531

631

541

641

22

4

931

1031

941

951

1051

23

17

212

232

332

24

14

1122

1222

1142

25

6

331

431

351

451

411

26

5

1311

1411

1331

27

8

1321

1421

1431

28

19

924

1024

954

1054

29

18

1233

1333

1243

1343

30

10

1314

1414

1324

1424

31

33

213

313

233

32

5

211

311

231

33

16

1332

1432

1322

34

10

1241

1341

1351

35

8

121

151

251

36

21

123

223

133

37

19

352

452

412

38

29

353

453

413

39

37

314

414

454

40

76

734

834

854

41

38

1312

1342

1442

42

26

1313

1413

1323

1422

1412

1423

1433

Fuente: Xpress
86
De acuerdo con la solución arrojada por Xpress la asignación en las aulas
asignadas para esta escuela quedaran como se observa en la Figura 12.
6.3

Escuela de Química

La escuela de química presenta un comportamiento similar a la escuela de
Física, por las características de la instancia la búsqueda de la solución óptima
conduce a un tiempo computacional ineficiente. Por consiguiente esta instancia
se ejecuto durante 3.2 Horas, en las cuales encontró 10 soluciones y no
presento cambios a partir del minuto 32 (Figura 11) donde se obtuvo un Gap de
3,75% (Figura 13).

Figura 11.MIP Escuela de Química

Fuente: Xpress

En la Figura 14 y la Tabla 20 se presentan los resultados de la solución
número 10, la cual alcanzó un Beneficio de 38,3 frente a 40,76 valor arrojado
para la cota superior. Se observa que se asignan 59 grupos y el porcentaje de
asignación fue de 86,76%.

87
Figura 12. Asignación Horaria para los Salones de la Escuela de Biología

88
Los datos del panel stats permiten observar que la función objetivo para el
problema dual es de 40,76 y de acuerdo a los datos de la instancia el máximo
beneficio que se podría obtener si se ejecutan el total de asignaciones es de
45,3, es decir el modelo en la solución óptima no alcanzaba al número total de
asignaciones, esto debido a que el espacio de búsqueda se encuentra limitado
y no considera asignaciones de sesiones de clase de un grupo en diferentes
aulas, de la misma forma al establecer las combinaciones de acuerdo con la
intensidad no se abarcan el total del espectro de las posibilidades. En relación
con los datos dados por la oficina de Admisiones y Registro Académico 10
grupos cuyas sesiones de clase se imparten en aulas diferentes. Por esta
razón al realizarse la asignación manual la cantidad de grupos asignados es
superior a la realizada por el algoritmo.
Figura 13. Stats Escuela de Química

Figura 14. Output Escuela de Química

Fuente: Xpress
89
Tabla 20. Resultados Escuela de Química
SECCION SUBCJTO
1
75
2
50
3
7
4
10
5
20
6
58
7
76
8
16
9
2
10
9
11
N/A
12
33
13
61
14
19
15
24
16
67
17
77
18
29
19
32
20
38
21
12
22
7
23
25
24
20
25
6
26
10
27
13
28
70
29
3
30
N/A
31
20
32
13
33
52
34
24
35
11
36
47
37
5
38
28
39
7
40
2
41
1

445
334
513
914
1022
1115
436
223
521
1123

455
434
613
944
1122
1215
536
233
621
1223

SLOTS
555
354
523
1044
1032
1155
456
333
531
1133

433
326
1212
213
136
126
332
415
1016
1142
422
225
1024
241
932
323
426
321

443
336
1312
313
236
226
432
515
1046
1242
522
235
1124
341
942
423
446
331

453
346
1232
243
156
146
352
425
1146
1152
442
335
1034
251
1042
343
546
431

525
212
516
533
215
134
911
512
624
1121
1111

625
312
616
633
315
234
1011
612
724
1221
1211

545
222
526
543
255
154
921
532
634
1141
1151

553
954
1132
1255
556
631
1233

653
1054

1143

0
253

353

246
452
435
1056
1252
542
245

535
1156
0

351
952

645
322
626
643
355
254
1021
632
734
1241
1251

1052

552

90
SECCION SUBCJTO
42
15
43
46
44
88 915
45
N/A
46
N/A
47
18
48
N/A
49
2
50
2
51
11
52
26
53
N/A
54
38
55
4
56
63
57
2
58
29
59
50
60
6
61
4
62
N/A
63
48
64
14
65
N/A
66
N/A
67
11
68
1

931
214
1015

1031
224
925

SLOTS
941
324
955

1025

1125

1035

1045

421
142
816
1134

451
242
916
1234

551
152
846
1144

252
946
1244

1324
913
926
411
424
614
216
414

1334
1013
1026
511
524
644
316
514

1434
933
936
441
454
744
256
444

1344
1033
1036
541
554
654
356
544

1235
1213

1335
1313

1245
1253

1345
1353

1226
121

1236
221

1336
131

1246
231

1041
244
1055

344

1145

1444

754

1346

Fuente: Xpress-MP
De acuerdo con la solución arrojada por Xpress en las aulas asignadas para
esta escuela quedará como se observa en la Figura 15.
6.4

Escuela de Matemáticas

La escuela de matemáticas es la instancia que presenta mayor
cantidad
grupos a asignar, respecto a las otras escuelas mencionadas anteriormente, de
la misma forma aunque es la escuela que contiene mayor número de salones
asignados, estos recursos son limitados pues lo demanda es superior.
De acuerdo con la información dada por el director de escuela de matemáticas,
es necesario llegar a un acuerdo con las otras escuelas que se encuentran en
el Edificio Camilo Torres a fin de realizar la mayor asignación posible dentro de
este edificio.
91
Figura 15. Asignación Horaria para los Salones de la Escuela de Química

92
93
Sin embargo con la información dada por la Oficina de Admisiones y Registro
Académico se puedo establecer que 54 de los 148 grupos con los cuales
cuenta esta escuela, se encuentran asignados en salones diferentes e incluso
en Edificios como Ingeniería Mecánica o industrial.

Por lo tanto se observa un comportamiento similar a las escuelas de Física y
Química debido a las características de la instancia, la búsqueda de la
solución óptima conduce a un tiempo computacional ineficiente. Por
consiguiente esta instancia se ejecuto durante 3.2 Horas, en las cuales
encontró 7 soluciones y no presento cambios a partir del minuto 20 (Figura 16)
donde se obtuvo un Gap de 7,7259% (Figura 17).

Figura 16. Stats Escuela de Matemáticas

Fuente: Xpress

Es importante mencionar que estas 108 asignaciones se dan dentro del Edificio
Camilo Torres, manteniendo el mismo salón entre las sesiones semanales que
requiere un grupo, esta asignación es superior a la realizada por la Escuela
manualmente.
94
Figura 17. MP seach Escuela de Matemáticas

Fuente: Xpress

En la Tabla 21 y Figura 18 se presentan los resultados de la solución número 7,
la cual alcanzó un Beneficio de 82.9 frente a 91.3 de la cota superior calculad.
Se observa que se asignan 108 grupos y el porcentaje de asignación fue de
72.97%.

Tabla 21. Resultados Escuela de Matemáticas
GRUPO
1
2
3
4
5
6
7
8
9
10
11
12
13
14

SLOTS
N/A
524
N/A
323
N/A
331
934
314
N/A
113
522
311
N/A
N/A

624

554

654

423

333

433

431
1034
414

351
954
344

451
1054
444

213
622
411

143
542
341

243
642
441

95
GRUPO
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58

923
131
1112
1125
425
615
625
225
N/A
435
245
1313
1113
912
322
521
922
334
N/A
N/A
1111
1121
N/A
1122
512
N/A
332
N/A
N/A
N/A
N/A
1115
513
531
313
1123
543
1144
1114
514
112
N/A
124
N/A

SLOTS
1023
231
1212
1225
525
715
725
325

943
151
1142
1145
445
645
635
235

1043
251
1242
1245
545
745
735
335

535
345
1413
1213
1012
422
621
1022
434

455
255
1343
1133
932
342
551
942
354

555
355
1443
1233
1032
442
651
1042
454

1211
1221

1141
1131

1241
1231

1222
612

1132
532

1232
632

432

352

452

1215
613
631
413
1223
643
1244
1214
614
212

1135
523
541
343
1143
553
1154
1124
544
152

1235
623
641
443
1243
653
1254
1224
644
252

224

144

244

96
GRUPO
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102

114
1314
915
935
N/A
1325
123
1324
N/A
N/A
914
1311
N/A
933
1332
N/A
5210
N/A
1118
2210
N/A
439
526
937
1146
1346
N/A
N/A
129
516
147
138
317
5110
527
N/A
948
918
N/A
9110
1128
926
336
117

SLOTS
214
1414
1015
1035

154
1354
945
955

254
1454
1045
1055

1425
223
1424

1345
153
1334

1445
253
1434

1014
1411

924
1321

1024
1421

1033
1432

953
1342

1053
1442

6210

5510

6510

1218
3210

1138
2510

1238
3510

539
626
1037
1246
1446

459
546
957
1156
1356

559
646
1057
1256
1456

229
616
247
238
417
6110
627

139
556
157
158
357
5310
537

239
656
257
258
457
6310
637

1048
1018

958
928

1058
1028

10110
1228
1026
436
217

9310
1148
946
356
137

10310
1248
1046
456
237

97
GRUPO
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146

517
1110
1339
1139
N/A
1127
919
N/A
11410
1317
116
3110
119
N/A
916
1117
929
N/A
318
1116
1329
1318
13310
1328
N/A
337
328
N/A
329
529
316
118
11110
1326
N/A
9210
N/A
N/A
N/A
1129
927
N/A
N/A
126

SLOTS
617
2110
1439
1239

557
1410
1359
1159

657
2410
1459
1259

1227
1019

1137
959

1237
1059

12410
1417
216
4110
219

11510
1337
136
3310
149

12510
1437
236
4310
249

1016
1217
1029

936
1147
949

1036
1247
1049

418
1216
1429
1418
14310
1428

338
1126
1349
1338
13510
1348

438
1226
1449
1438
14510
1448

437
428

347
358

447
458

429
629
416
218
12110
1426

349
549
326
128
11310
1336

449
649
426
228
12310
1436

10210

9510

10510

1229
1027

1149
947

1249
1047

226

146

246

98
GRUPO
147
148

1347
13110

SLOTS
1447
1357
14110
13210

1457
14210

Fuente: Xpress

Se puedo observa en todas las instancias que algoritmo formulado cumple con
las restricciones planteadas en todos los casos. De manera que no se presenta
conflicto de slots, aulas ni profesores y los tiempos computacionales son
inferiores a la dedicación que actualmente se requiere, que en promedio de
acuerdo con la información suministrada por las personas encargadas de este
proceso se encuentra alrededor de quince días.
Es importante aclarar que para hallar el tiempo total del proceso se requiere
tener en cuenta el reprocesamiento de los datos, que varía en cada una de las
instancias, debido a que la cantidad de profesores no es un parámetro
constante y recordemos que como dato de entrada se requiere la matriz de
horarios factibles del profesor.

99
Figura 18. Asignación Horaria para los Salones de la Escuela de Matemáticas

100
101
102
CONCLUSIONES Y RECOMENDACIONES

• El problema de Timetabling se ha abordado a través del tiempo desde
diferentes enfoques, desde la teoría de grafos que se considera el punto
de partida para solucionar el problema de asignación de recursos
limitados, hasta identificarse las técnicas modernas que tratan de
modelar el problema con la combinación de diferentes métodos los mas
antiguos aun siguen vigentes y han evolucionado para formar parte de
las estructuras hibridas, que usualmente están conformadas por los
llamados métodos meta -heurísticos, los cuales se consideran la mejor
propuestas para la resolución de los problemas NP-Completos.
• Durante la recopilación y análisis de la información se evidencio que el
proceso no se encuentra estandarizado, lo cual dificulta establecer los
parámetros e información que se requieren para generar el horario. Por
lo tanto es recomendable estandarizar el proceso.
• Se implemento un modelo matemático que involucró las características
propias de cada instancia, asegurando su adaptabilidad a las escuelas
en cuestión. Con el fin de llevar este modelo a las demás instancia
universitarias es necesario evaluar la necesidad de tener salones de
preferencia o candidatos según las características que tengan y no tan
solo la capacidad, además de considerar dentro del beneficio nuevos
factores como la distancia recorrida, utilización del salón, entre otros que
se identifiquen.
• Se uso como método de optimización el modelamiento exacto, donde se
evidencio que el problema se resuelve rápidamente para las instancias
pequeñas como biología pero que presenta deficiencias al considerar
instancia mayores, se recomienda continuar la línea de investigación
aplicando una metaheurística ya sea esta trayectorial o poblacional con
el fin de llegar a una solución de forma eficiente. Los algoritmos que
generan las combinaciones pueden ser útiles en la generación de la
solución inicial para la resolución por este tipo de métodos.
•

Esta línea de investigación presenta gran acogida a nivel mundial,
específicamente las instituciones universitarias han llegado a nivel de
implementación apoyados en la plataforma tecnológica, por lo tanto
consideramos que la Universidad Industrial de Santander puede
desarrollar este tipo de proyecto en forma interdisciplinaria, mejorando
considerablemente el proceso, el cual actualmente consume recursos
considerables por parte de cada una de las escuelas.

103
BIBLIOGRAFIA
[1] Burke E., Jackson K., Kingston J., Ware R. Automated university timetabling:
The state of the art. The Computer Journal. Vol. 40, No. 9 (1997); p. 565-571.
[2] Deris S, Omatu S., Ohta H., P.A.B.D. Samat. University timetabling by
constraint-based reasoning: A Case Study, The Journal of the Operational
Research Society, Vol. 48, No. 12. (Dec., 1997), pp. 1178-1190
[3] Lewis R. A survey of metaheuristic-based techniques for university
timetabling problems. OR Spectrum, (2007).
[4] Carter M. y Laporte G. Examination timetabling: Algorithmic strategiaes and
applications. Journar of the Operational Reserarch Society. Vol.47, No 3(1996);
p.373-383
[5] Burke E. y Petrovic S. Recent research directions in automated timetabling.
European Journal or Operational Research. Vol. 140, No. 2 (2002); p. 266-280.
[6] Castro E. Heurística basada en programación entera binaria para el
problema de asignación de salones en la Universidad de los Andes. Tesis de
Maestría, Universidad de los Andes (2005).
[7] Marte M. Models and Algorithms for School Timetabling-A ConstraintProgramming Approach. Tesis de Doctorado, Universidad de Munich (2002).
[8] Wren, A. Scheduling, timetabling and rostering – A special relationship? In:
Burke and Ross (1996) pp. 46–75
[9] J. Kingston E. Burker, K. Jackson. Automated timetabling: The state or art.
Technical report, Departament of Computer Science, University of Nottingham,
Uk,, 1996
[10] Schimmelpfeng K. y Helber S. Application of a real world university course
timetabling model solved by integer programming. OR Spectrum, No 29 (2007).
P. 783-803
[11] Schaerf A. A survey of automated timetabling. Artificial Intelligence Review.
Vol. 13, No. 2 (1999); p. 87-127.
[12] Michael W. Carter; Craig A. Tovey. When is the classroom assignment
problem hard, Operations Research, Vol. 40, pp. S28-S39.
[13] Murray K, Muuller T, y Rudova H, Modeling and Solution of a Complex
University Course Timetabling Problem. Lecture Notes in Computer Science,
Lecture Notes in Computer Science. (2007); p.189-209

104
[14] Mulvey J. A classroom/time assignment model. European Journal of
Operational Research. Vol. 9, (1984); p.64-70.
[15] Cetina S. Editor de restricciones para Pathos.Pontificia Universidad
Javeriana.Tesis de Pregrado. Pontificia Universidad Javeriana 2002
[16] D. de Werra. An introduction to timetabling. European Journal of
Operational Research. Vol. 19, (1985); p.151-162.
[17] Velásquez M. y Palacios C. Administración de laboratorios y aulas de
clase. Universidad Manuela Beltran. ADSALON.
Tesis de Pregrado.
Universidad Manuela Beltran (2007).
[18]http://www.javeriana.edu.co/puj/acerca/directrices/VACAsignaci%F3n%20de%20aulas%202005-1.pdf. Consultado octubre 18 de
2007.
[19]correo.umanizales.edu.co/tesis/Ingenieria/cronos_aca.pdf.
octubre 18 de 2007.

Consultado

[20]http://regweb.ucatolica.edu.co/publicaciones/organizacion_y_metodos/p002
pf008.pdf. Consultado octubre 18 de 2007.
[21] Gutiérrez Valentina, Maya Pablo. Validación del uso del modelo
matemático para el problema de programación de cursos en la facultad de
ingeniería de la Universidad de Antioquia.
[22] M.W. Carter and G. Laporte. (1998). Recent developments in practical
course timetabling. The Practice and Theory of Automated Timetabling II:
Selected Papers from 2nd International Conference on the Practice and Theory
of Automated Timetabling (PATAT II), Toronto, Canada, Lecture Notes in
Computer Science 1408, Springer-Verlag. (Editors: E.K. Burke and M. Carter),
pp 3-19.
[23] Michael W. Carter. A Survey of Practical Applications of Examination
Timetabling Algorithms, Operations Research, Vol. 34, No. 2. pp. 193-202
1986
[24] Alvarez-Valdez, Automatrícula por ordenador y calidad de horarios para los
estudiantes 2005
[25] Edmund Burke. Multiple-retrieval case-based reasoning for course
timetabling 2005
[26] Mirrazavi SK, MardleSJ, Tamiz M A two-phase multiple objetive approach
to university timetabling utilising opimisation and evolutionary solution
methodologies. European Journa of Operation Research. Vol 5, Pg 1155-1166
2003

105
[27] Karanik Marcelo, Asignación Dinámica de aulas utilizando algoritmos
genéticos. Universidad Tecnológica Nacional. Chaco-Argentina
[28] Florez P., Brau E., Salazar N., Figueroa J. Cadena E., Lizárraga C.,
Experimentos con algoritmos genéticos para resolver en un problema real de
programación maestros-horarios-cursos 2000
[29] Molina Juan. Algoritmos evolutivos para la resolución de un problema de
tipo timetabling. valparaiso 2007
[30] Erben Keppler (1996) A Genetic Algorithm Solving a Weekly CourseTimetabling Problem
[31] Salwani Abdullah BSc (UTM), MSc (UKM) Malaysia. Heuristic approaches
for University timetabling problems
[32] Mejía Cabellero José. Asignación de horarios de clases universitarias
mediante algoritmos evolutivos. Universidad de la Guajira / Universidad del
Norte Riohacha – la Guajira 2008
[33] Andrés Saldaña Crovo Modelos de programación entera para un problema
de programación de horarios para Universidades. vol. 15 Nº 3, 2007, pp. 245259
[34] R. Lewis. A survey of metaheuristics-based techniques for university
timetabling problems. OR Spectrum, 30:167–190, 2008.
[35] Programación de Horarios de Clases y Asignación de Salas para la
Facultad de Ingeniería de la Universidad Diego Portales Mediante un Enfoque
de Programación Entera. Volumen XXII, A˜no 2008. Rodrigo Hernández, Jaime
Miranda P. Pablo A. Rey
[36] E.H.L. Aarts and J. Korst. Simulated annealing and Boltzmannmachines: a
stochastic approach to combinatorial optimization and neural computing 1.989
[37] Kate A. Smith1, David Abramson, and David Duke.Hopfield Neural
Networks for Timetabling: Formulations, Methods, and Comparative Results.
School of Business Systems, and School of Computer Science and Software
Engineering
[38] Marco Carrasco. Margarida Pato. A Potts Neural Network Heuristic for
theClass/Teacher Timetabling Problem Centro de Investigación Operacional,
University of Lisbon. Portugal 2001
[39] Jorge de Abreu Soares.A Máquina de boltzmann na solução do problema
de timetabling 2002
[40] Pilar Moreno Díaz, Jesús Sánchez Allende, Almudena García Manso.
Aplicación de técnicas de enfriamiento lento el problema de planificación de

106
horarios. Universidad Alfonso X el sabio. Escuela Politécnica Superior
Villanueva de la Cañada (Madrid). 2007
[41] Ruibin Bai, Edmund K. Burke, Graham Kendall, Barry McCollum. A
Simulated Annealing Hyper-heuristic for University Course Timetabling, 2006
[42] Peñuela C, Toro E Gallego R. Colonia de hormigas aplicada a la
programación óptima de horarios de clase. Universidad Tecnológica de Pereira,
2008.
[43] John Fredy Franco Baquero, Eliana Mirledy Toro Ocampo, Ramón Alfonso
Gallego Rendón. Problema de asignación óptima de salones resuelto con
Búsqueda Tabú. Universidad Norte, 2008.
[44] Marcos Gil Tallavo, Amadis Antonio Martinez. Algoritmo basado en Tabú
search para el problema de asignación de horarios de clases. Universidad de
Carabobo, 1999.
[45] Alvarez y crespo. Experiencias de utilización del método de búsqueda
Tabú en la resolución de problemas de organización universitaria. Universidad
de Valencia,1999.
[46] Andrea Schaerf y Luca Di Gaspero. Local search techniques for
educational timetabling problems. Universita Di Udine, 2001.
[47] Saleh Elmohamed m.a. y Geoffrey Fox, “A comparison of Annealing
Techniques for Academic Course Scheduling”. Practice and Theory of
Automated Timetabling II, Selected Papers from the 2nd International
Conference, PATAT97.
[48] Melício F., Caldeira P. y Rosa A. “Implementation aspects of Simulated
Annealing on Timetabling”, 1996.
[49]Julio Brito Santana, Clara Campos Rodríguez, Félix C. García López,
Miguel García Torres, Belén Melian Batista, José A. Moreno Pérez, J. Marcos
Moreno Vega. Metaheurísticas: una revisión actualizada Grupo de
Computación Inteligente. Universidad de La Laguna, 2004.
[50] Salwani Abdullah. HEURISTIC APPROACHES FOR UNIVERSITY
TIMETABLING PROBLEMS. School of Computer Science and Information
Technology, 2006
[51] Juan Jose Pantrigo Fernandez Resolucion de Problemas de Optimizacion
Dinamica mediante la Hibridacion entre Filtros de Particulas y Metaheuristicas
Poblacionales. Universidad Rey Juan Carlos. Escuela Superior de Ciencias
Experimentales y Tecnolog³a.Departamento de Informatica, Estad³stica y
Telematica. Tesis Doctoral,2005
[52] M. Garey. Computers and intractability. A guide to the Theory of NPCompleteness. Bell Telephone Laboratories, 1979.

107
[53] González J. Sánchez A. y Velásquez J. Galve, J. Algoritmica. Diseño y
análisis de algoritmos funcionales e imperativos. Addison Wesley
Iberoamericana, 1993.
[54] Oscar A. Chávez Bosquez, Guillermo de los Santos Torres, José Luis
Gómez Ramos. Búsqueda tabú aplicada a un problema NP-Completo:
Generación de horarios en la DAIS. División Académica de Informática y
Sistemas - Universidad Juárez Autónoma de Tabasco
[56] GRAPS: Procedimiento de búsqueda miopes aleatorizados y
adaptivos.Mauricio G. José V.inteligiencia artificias, revista iberoamericana de
Inteligencia Artificial. No19 (2003) pp.61-74.
[57] Programación de las sesiones de las comisiones ordinarias del congreso
de la república del Perú aplicando búsqueda tabú. Marchan G, Álvarez M.
Universidad Nacional Mayor de San Marcos. Lima, Perú 2008.

108

Más contenido relacionado

PDF
Salud Escolar en Quito - Ecuador. Periodo escolar 2009 - 2010
PDF
Ejemplo plan de negocios
PDF
Tesissss satisfaccccion
PDF
Estudio sector textil
DOCX
Documento portafolio estudiante modificado
DOCX
Brandon luis espinoza canchari
PDF
Formulas
PDF
M.evaluacion sensorial alimentos
Salud Escolar en Quito - Ecuador. Periodo escolar 2009 - 2010
Ejemplo plan de negocios
Tesissss satisfaccccion
Estudio sector textil
Documento portafolio estudiante modificado
Brandon luis espinoza canchari
Formulas
M.evaluacion sensorial alimentos

La actualidad más candente (19)

PDF
4902 evaluacion sensorial
PDF
Ejemplo plan-de-negocios-pizzeria
DOCX
EVALUACION SENSORIAL
DOCX
Drenaje en carreteras
PDF
Informe contenido trienio-vr4_2012
PDF
Dinamica ocupacional lambayeque
DOCX
Banano manual
DOC
Manual del banano UTC
PDF
FGuia operativo familiar_octubre-_diciembre_2014
PDF
1 2044 efectos_salud_campos_magneticos_y_electricos_elf
PDF
Elaboración de Paquete Didáctico para la asignatura de Tecnologías para el Ap...
PDF
7294857 metodologia-investigacion-pedro-a-suarez
DOCX
Proyecto docencia nov 2011
PDF
Proyecto lustrado de calzado
PDF
Derivadas
DOCX
Portafolio de TIC
PDF
Manual completo-2012
PDF
Cd 3396 2
4902 evaluacion sensorial
Ejemplo plan-de-negocios-pizzeria
EVALUACION SENSORIAL
Drenaje en carreteras
Informe contenido trienio-vr4_2012
Dinamica ocupacional lambayeque
Banano manual
Manual del banano UTC
FGuia operativo familiar_octubre-_diciembre_2014
1 2044 efectos_salud_campos_magneticos_y_electricos_elf
Elaboración de Paquete Didáctico para la asignatura de Tecnologías para el Ap...
7294857 metodologia-investigacion-pedro-a-suarez
Proyecto docencia nov 2011
Proyecto lustrado de calzado
Derivadas
Portafolio de TIC
Manual completo-2012
Cd 3396 2
Publicidad

Destacado (20)

PPT
Normativa laboral
PPT
Herramientas web
PDF
Nuestra relacion con los medios
DOCX
Resbalosa
PDF
Mejora de la gestión de tu negocio / Jorge Lizar (Canon)
PPT
Presentaciones Tendencias
PDF
6 errores para empezar una conferencia pymes
PPTX
Presentación proyecto TACCLE2
PPTX
ReestructuracióN
PPT
Convivencia en Valle de Ángeles
PPT
Leccion 12 La Comunidad 2 Q Jac Mr
PPS
Por qué Enviar SMS desde un E-Mail
PDF
Rutas AnapleróTicas Y Ciclo De Glioxilato11
ODP
Comunicación y salud en internet
PDF
Reduce tus costes / Juan Carlos Tena Guerrero (Cables de Comunicaciones Zarag...
PPT
Don quixote. loucura de amar
PPS
Comosereproduceelvirusenun Pc
PPT
escaleras
PPT
Tarea Computacion Semana 3
PPSX
Normativa laboral
Herramientas web
Nuestra relacion con los medios
Resbalosa
Mejora de la gestión de tu negocio / Jorge Lizar (Canon)
Presentaciones Tendencias
6 errores para empezar una conferencia pymes
Presentación proyecto TACCLE2
ReestructuracióN
Convivencia en Valle de Ángeles
Leccion 12 La Comunidad 2 Q Jac Mr
Por qué Enviar SMS desde un E-Mail
Rutas AnapleróTicas Y Ciclo De Glioxilato11
Comunicación y salud en internet
Reduce tus costes / Juan Carlos Tena Guerrero (Cables de Comunicaciones Zarag...
Don quixote. loucura de amar
Comosereproduceelvirusenun Pc
escaleras
Tarea Computacion Semana 3
Publicidad

Similar a 131520 (20)

PDF
Trabajo de grado final
PDF
Produccion agropecuaria
PDF
Produccion agropecuaria
PDF
Produccion agropecuaria
DOC
Tesis mirian y joffre
PDF
Listado proramas
DOCX
62125 r412 libro
PDF
Catalogo de cursos 2017
PDF
Digital 19095
PDF
Modelo educativo del su ay ed aragón (4 dic)
PDF
2017 01-allende-carrion
PDF
Método de estudio universitario
PDF
Tesis Educacion 2
DOCX
EJEMPLO DE INFORME DE PRÁCTICA 2023[1].docx
PDF
136447 MODELO GRONROSS
PDF
1° apunte de fundamentos de economia
PDF
PLAN DE ACCION PARA MEJORAR EL CLIMA ORGANIZACIONAL EN LA CONSTRUCTORA JR S....
PDF
Cuaderno orientación 2015 2016
PDF
000635184
PDF
Eg 1887-quispe loza, juana yhovana
Trabajo de grado final
Produccion agropecuaria
Produccion agropecuaria
Produccion agropecuaria
Tesis mirian y joffre
Listado proramas
62125 r412 libro
Catalogo de cursos 2017
Digital 19095
Modelo educativo del su ay ed aragón (4 dic)
2017 01-allende-carrion
Método de estudio universitario
Tesis Educacion 2
EJEMPLO DE INFORME DE PRÁCTICA 2023[1].docx
136447 MODELO GRONROSS
1° apunte de fundamentos de economia
PLAN DE ACCION PARA MEJORAR EL CLIMA ORGANIZACIONAL EN LA CONSTRUCTORA JR S....
Cuaderno orientación 2015 2016
000635184
Eg 1887-quispe loza, juana yhovana

Más de Hilario Aradiel (11)

PPTX
PPTX
Insertarvideo
PPTX
Insertarvideo
PPTX
Presentacion i
PPTX
Insertarvideo
PPTX
Presentacion i
PPTX
ppt con video
PDF
Libro investigacion
PDF
Indicadores
PDF
DOC
2.informacionalismo
Insertarvideo
Insertarvideo
Presentacion i
Insertarvideo
Presentacion i
ppt con video
Libro investigacion
Indicadores
2.informacionalismo

Último (20)

PDF
Unidad de Aprendizaje 5 de Educacion para el Trabajo EPT Ccesa007.pdf
PDF
2.0 Introduccion a processing, y como obtenerlo
PDF
Punto Critico - Brian Tracy Ccesa007.pdf
DOCX
Informe_practica pre Final.docxddadssasdddddddddddddddddddddddddddddddddddddddd
PPTX
Presentación de la Cetoacidosis diabetica.pptx
PDF
Integrando la Inteligencia Artificial Generativa (IAG) en el Aula
PPTX
Welcome to the 7th Science Class 2025-2026 Online.pptx
PDF
La Evaluacion Formativa en Nuevos Escenarios de Aprendizaje UGEL03 Ccesa007.pdf
PPTX
Doctrina 1 Soteriologuia y sus diferente
PDF
el - LIBRO-PACTO-EDUCATIVO-GLOBAL-OIEC.pdf
PDF
Didactica de la Investigacion Educativa SUE Ccesa007.pdf
PDF
ACERTIJO Súper Círculo y la clave contra el Malvado Señor de las Formas. Por ...
PDF
Crear o Morir - Andres Oppenheimer Ccesa007.pdf
PDF
ciencias-1.pdf libro cuarto basico niños
PDF
Guia de Tesis y Proyectos de Investigacion FS4 Ccesa007.pdf
PDF
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
PDF
Unidad de Aprendizaje 5 de Matematica 1ro Secundaria Ccesa007.pdf
PDF
Gasista de unidades unifuncionales - pagina 23 en adelante.pdf
DOCX
PLAN DE AREA DE CIENCIAS SOCIALES TODOS LOS GRUPOS
DOCX
V UNIDAD - PRIMER GRADO. del mes de agosto
Unidad de Aprendizaje 5 de Educacion para el Trabajo EPT Ccesa007.pdf
2.0 Introduccion a processing, y como obtenerlo
Punto Critico - Brian Tracy Ccesa007.pdf
Informe_practica pre Final.docxddadssasdddddddddddddddddddddddddddddddddddddddd
Presentación de la Cetoacidosis diabetica.pptx
Integrando la Inteligencia Artificial Generativa (IAG) en el Aula
Welcome to the 7th Science Class 2025-2026 Online.pptx
La Evaluacion Formativa en Nuevos Escenarios de Aprendizaje UGEL03 Ccesa007.pdf
Doctrina 1 Soteriologuia y sus diferente
el - LIBRO-PACTO-EDUCATIVO-GLOBAL-OIEC.pdf
Didactica de la Investigacion Educativa SUE Ccesa007.pdf
ACERTIJO Súper Círculo y la clave contra el Malvado Señor de las Formas. Por ...
Crear o Morir - Andres Oppenheimer Ccesa007.pdf
ciencias-1.pdf libro cuarto basico niños
Guia de Tesis y Proyectos de Investigacion FS4 Ccesa007.pdf
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
Unidad de Aprendizaje 5 de Matematica 1ro Secundaria Ccesa007.pdf
Gasista de unidades unifuncionales - pagina 23 en adelante.pdf
PLAN DE AREA DE CIENCIAS SOCIALES TODOS LOS GRUPOS
V UNIDAD - PRIMER GRADO. del mes de agosto

131520

  • 1. DISEÑO Y VALIDACIÓN DE UN MODELO MATEMÁTICO PARA EL PROCESO DE ASIGNACIÓN DE SALONES EN EL EDIFICIO CAMILO TORRES DE LA UNIVERSIDAD INDUSTRIAL DE SANTANDER. JOHANNA PATRICIA DÍAZ SILVA KAREN JULIANA PINTO BOHORQUEZ ESCUELA DE ESTUDIOS INDUSTRIALES Y EMPRESARIALES FACULTAD DE INGENIERIAS FISICO-MECÁNICAS UNIVERSIDAD INDUSTRIAL DE SANTANDER BUCARAMANGA 2009
  • 2. DISEÑO Y VALIDACIÓN DE UN MODELO MATEMÁTICO PARA EL PROCESO DE ASIGNACIÓN DE SALONES EN EL EDIFICIO CAMILO TORRES DE LA UNIVERSIDAD INDUSTRIAL DE SANTANDER. JOHANNA PATRICIA DÍAZ SILVA KAREN JULIANA PINTO BOHORQUEZ Director: JAVIER EDUARDO ARIAS OSORIO M. Sc en Administración ESCUELA DE ESTUDIOS INDUSTRIALES Y EMPRESARIALES FACULTAD DE INGENIERIAS FISICO-MECÁNICAS UNIVERSIDAD INDUSTRIAL DE SANTANDER BUCARAMANGA 2009
  • 7. A Dios por darme la fuerza y constancia para seguir adelante A mis padres por brindarme su amor y paciencia A Sandra, Lina y Diego por su apoyo incondicional y constante Colaboración. A Ana María, Ashley e Isabella por alegrar los momentos difíciles A mis amigos y compañeros por su cariño y las largas jornadas De estudio. A Patricia por hacer de este proyecto una realidad A Diego por su compañía y paciencia durante tanto tiempo. Karen Juliana
  • 8. A Dios por siempre llevarme de su mano A mis padres por hacer de mi lo que soy, en especial a mi mamá Por su apoyo incondicional. A Santiago por su amor, paciencia y ser la motivación de mi vida. A Daniel por compartir su vida conmigo A mis hermanos Sandra, Zunny, Paola, Diego y sobrinos por creer en mí. A Karen por su amistad. Johanna Patricia
  • 9. AGRADECIMIENTOS Las autoras expresan los agradecimientos a: • A la Oficina de Admisiones y Registro Académico de la Universidad Industrial de Santander por la información suministrada. • A los directores de las Escuelas de Física, Química, Matemáticas y Biología por la por su tiempo e información. • Al profesor Pablo Andrés Maya Duque de la Universidad de Antioquia, quien nos acompaño y contribuyo con sus conocimientos a culminar esta etapa de la carrera. • A los profesores de la Escuela de Estudios Industriales y Empresariales por la formación y conocimientos transmitidos. • A aquellos que directa o indirectamente colaboraron para alcanzar éste logro.
  • 10. TABLA DE CONTENIDO Página INTRODUCCIÓN ............................................................................................... 20  1 GENERALIDADES ........................................................................................ 21  1.1  DESCRIPCIÓN DEL TEMA DE INVESTIGACIÓN .............................. 21  1.2  OBJETIVOS DEL TRABAJO DE GRADO ............................................ 22  1.2.1  Objetivo General ............................................................................ 22  1.2.2  Objetivos Específicos ..................................................................... 23  1.3  1.4  2  ALCANCE ............................................................................................. 23  ESTRUCTURA DEL DOCUMENTO. .................................................... 24  ESTADO DEL ARTE ................................................................................... 25  2.1  Eficiencia computacional ...................................................................... 26  2.1.1  Problemas P ................................................................................... 26  2.1.2  Problemas NP ................................................................................ 26  2.1.3  Problemas NP-Completos .............................................................. 27  2.2  Programación de actividades (Timetabling) en instituciones Universitarias .................................................................................................. 28  2.3  Programación de cursos en instituciones universitarias ...................... 29  2.4  Caracterización de las restricciones del problema de asignación de cursos ............................................................................................................. 29  2.5  Estrategias de solución ......................................................................... 32  2.5.1  Métodos Secuenciales ................................................................... 32  2.5.2  Métodos Agrupamiento. ................................................................. 33  2.5.3  Métodos basados en restricciones................................................. 33  2.5.4  Métodos Meta-heurísticos. ............................................................. 34 
  • 11. 2.6  3  Herramienta Informática de Apoyo para el Desarrollo del Proyecto .... 45  DESCRIPCIÓN DE LA INSTANCIA ........................................................... 46  3.1  Procesos de Asignación Horaria .......................................................... 46  3.2  Proceso de Asignación por Escuelas ................................................... 47  3.2.1  3.2.2  Escuela de Física ........................................................................... 48  3.2.3  Escuela de Matemáticas ................................................................ 49  3.2.4  4  Escuela de Química ....................................................................... 48  Escuela de Biología........................................................................ 49  FORMULACIÓN DEL MODELO PARA LA ASIGNACIÓN DE CURSOS .. 50  4.1  4.2  Conjuntos .............................................................................................. 52  4.3  Función sobre slots ............................................................................... 53  4.4  Parámetros............................................................................................ 53  4.5  Variable de decisión .............................................................................. 54  4.6  5  Introducción........................................................................................... 50  Modelo Matemático ............................................................................... 54  IMPLEMENTACIÓN DEL MODELO MATEMÁTICO .................................. 56  5.1  Preprocesamiento ................................................................................. 56  5.1.1  Escuela Química ............................................................................ 60  5.1.2  Escuela de Física ........................................................................... 63  5.1.3  Escuela de Biología........................................................................ 66  5.1.4  Escuela Matemáticas ..................................................................... 69  5.2  6  Modela Matemático en Xpress-MP ....................................................... 75  RESULTADOS COMPUTACIONALES ...................................................... 77  6.1  Escuela de Física .................................................................................. 78  6.2  Escuela de Biología .............................................................................. 84 
  • 12. 6.3  Escuela de Química .............................................................................. 87  6.4  Escuela de Matemáticas ....................................................................... 91  6 CONCLUSIONES Y RECOMENDACIONES............................................... 103  BIBLIOGRAFIA ................................................................................................ 104 
  • 13. LISTA DE TABLAS Página Tabla 1: Codificación .......................................................................................... 57  Tabla 2: Cálculo del tamaño de la matriz HF ..................................................... 58  Tabla 3: Combinaciones de acuerdo con la Intensidad ..................................... 58  Tabla 4. Definición del conjunto de M kg ........................................................ 59  Tabla 5: Valores Establecidos para el cálculo del Beneficio ............................. 59  Tabla 6: Características de los Grupos Escuela de Química ............................ 60  Tabla 7: Relación de Grupos por Profesor escuela de Química ....................... 62  Tabla 8: Características de las aulas escuela de Química ................................ 63  Tabla 9: Características de los Grupos Escuela de Física ................................ 63  Tabla 10 Relación de Grupos por Profesor escuela de Física .......................... 65  Tabla 11: Características de las aulas escuela de Física .................................. 66  Tabla 12: Características de los Grupos Escuela de Biología........................... 67  Tabla 13: Relación de Grupos por Profesor escuela de Biología ...................... 68  Tabla 14: Características de las aulas escuela de Biología .............................. 68  Tabla 15: Características de los Grupos Escuela de Matemáticas ................... 69  Tabla 16: Relación de Grupos por Profesor escuela de Matemáticas .............. 72  Tabla 17: Características de las aulas escuela de Matemáticas ....................... 74  Tabla 18. Resultados Escuela de Física ............................................................ 83  Tabla 19. Resultados Escuela de Biología ........................................................ 86  Tabla 20. Resultados Escuela de Química ........................................................ 90  Tabla 21. Resultados Escuela de Matemáticas ................................................ 95 
  • 14. LISTA DE FIGURAS Página Figura 1. Estructura Básica algoritmo lento simulado ....................................... 39  Figura 2. Codificación......................................................................................... 56  Figura 3. Xpress ................................................................................................. 77  Figura 4. Representación Horaria ...................................................................... 78  Figura 5. Resultados Escuela de Física ............................................................ 79  Figura 6. Stats Escuela de Física ...................................................................... 80  Figura 7. MIP Search escuela de Física ............................................................ 80  Figura 8. Asignación Horaria para los Salones de la Escuela de Física .......... 81  Figura 9. Stats Escuela de Biología ................................................................... 85  Figura 10. Resultados Escuela de Biología ....................................................... 85  Figura 11.MIP Escuela de Química ................................................................... 87  Figura 12. Asignación Horaria para los Salones de la Escuela de Biología ..... 88  Figura 13. Stats Escuela de Química................................................................. 89  Figura 14. Output Escuela de Química ............................................................. 89  Figura 15. Asignación Horaria para los Salones de la Escuela de Química ..... 92  Figura 16. Stats Escuela de Matemáticas ......................................................... 94  Figura 17. MP seach Escuela de Matemáticas.................................................. 95  Figura 18. Asignación Horaria para los Salones de la Escuela de Matemáticas ....... 100 
  • 15. LISTA DE ANEXOS ANEXO 1. Listado de Horario del Aula y Listado General de Horarios  ANEXO 2. Cartas a las instancias  ANEXO 3. Algoritmo para la Generación del Tamaño de la Matriz HF  ANEXO 4.Algoritmo para la Generación de posibles Franjas Horarias  ANEXO 5. Algoritmo Combinación de Aulas Factibles  ANEXO 6.Algoritmo Generación de Patrones de Tiempo  ANEXO 7.Algoritmo Generación de Beneficios  ANEXO 8.Código del modelo en Express GRUPOS CON MAX SLOTS 5 
  • 16. RESUMEN TITULO: DISEÑO Y VALIDACIÓN DE UN MODELO MATEMÁTICO PARA EL PROCESO DE ASIGNACIÓN DE SALONES EN EL EDIFICIO CAMILO TORRES DE LA UNIVERSIDAD INDUSTRIAL DE SANTANDER∗. AUTORES: JOHANNA PATRICIA DIAZ SILVA KAREN JULIANA PINTO BOHORQUEZ∗∗ PALABRAS CLAVES: Problema de asignación, preprocesamiento, validación. modelamiento exacto, algoritmos de DESCRIPCION: El presente trabajo aborda el problema de asignación Timetabling, desarrollando específicamente la asignación de grupos a salones y de grupos a periodos de tiempo. El problema consiste en hallar un salón apropiado para cada uno de los grupos que se programan en el Edificio Camilo Torres de la Universidad Industrial de Santander y que a su vez estos grupos se asignen dentro de las preferencias horarias del profesor. Se propone un modelo matemático que considera: los objetivos de la oficina de admisiones, las preferencias de los profesores por un horario factible, la asignación según el tipo de profesor y la cantidad de períodos requeridos semanalmente por cada grupo, además de presentar las restricciones propias del problema. Para la resolución del mismo se utiliza un modelamiento exacto en la herramienta de optimización Xpress. El enfoque de solución utiliza varios algoritmos de preprocesamiento de datos que proporcionan los inputs para el desarrollo computacional los cuales son: Matriz Mkg, Matriz de Beneficios, Matriz de patrones de tiempo. Se presenta la validación de los resultados computacionales para las cuatro instancias que intervienen en el proceso de asignación en el Edificio Camilo Torres las cuales corresponden a la escuela de Física, Química, Biología y Matemáticas. ∗ Proyecto Grado Facultad de Ingenierías Físico-Mecánicas. Director: Javier Eduardo Arias Osorio. ∗∗ Escuela de Estudios Industriales y Empresariales.
  • 17. ABSTRACT TITLE: DESIGN AND VALIDATION OF A MATHEMATICAL MODEL FOR THE ALLOCATION OF ROOMS IN THE BUILDING CAMILO TORRES OF THE INDUSTRIAL UNIVERSITY OF SANTANDER∗. AUTHORS: JOHANNA PATRICIA DIAZ SILVA KAREN JULIANA PINTO BOHORQUEZ∗∗ KEY WORDS: Assignment problem, accurate modeling, algorithms, pre-processing, validation. DESCRIPTION: This project addresses the assignment problem Timetabling, developing specifically the assignment of groups to rooms and groups to periods of time. The problem is finding an appropriate room for each of the groups that are scheduled in Building Camilo Torres of the Industrial University of Santander, and that in turn these groups are allocated in time preferences of the teacher. It Propose a mathematical model that considers: the objectives of the admissions office, the preferences of teachers for a feasible schedule, the allocation depending on the teacher type and the number of periods required weekly for each group, in addition presents the own restrictions of the problem. To solve the same an exact model is used in the optimization Xpress tool. The solution approach uses several data preprocessing algorithms that provide the inputs to the computational development which are: Matrix Mkg, Benefits Matrix, Matrix time patterns. It presents the validation of computational results for the four authorities involved in the allocation process at Building Camilo Torres which correspond to the School of Physics, Chemistry, Biology and Mathematics. ∗ Project Grade Ability of Physical-Mechanical Engineerings. School of Industrial and Managerial Studies. Director: Javier Eduardo Arias Osorio. ∗∗
  • 18. GLOSARIO ASIGNATURA: Cada una de las materias que conforma el programa o plan curricular de los programas. Se usarán los términos curso y materia como sinónimo. AULA: Espacio físico destinado a la realización de las actividades propias de las sesiones de clase de una asignatura. Se empelará el término SALÓN como sinónimo. CONFLICTO DE PROFESOR: Dícese de la situación en la cual un profesor es designado para dictar más de una sesión de clase en un mismo intervalo de tiempo. CONFLICTO DE ESTUDIANTES: Situación en la cual un estudiante debe asistir a mas de una sesión de clase en un mismo periodo de tiempo. CONFLICTO DE AULA: situación en la cual más de una actividad ha sido asignada para realizarse en dicha aula durante un mismo periodo de tiempo. DOCENTE: Persona a cargo de una sección o grupo de una asignatura, encargado de impartir las sesiones de clases o de coordinar las actividades que en ellas se realiza. Se usará el termino PROFESOR como sinónimo. GRUPO: Opciones en las que se espera se distribuyan los estudiantes que cursan una asignatura específica. Para cada asignatura será necesario definir un número fijo de grupos. Se usará el término SECCIÓN de una asignatura como sinónimo. SESIÓN DE CLASE: Corresponde a los Intervalos de tiempo en los que se imparte a los estudiantes de un grupo los contenidos propios de la asignatura. Podrán definirse asignaturas cuyas secciones o grupos reciban sesiones de clase de una hora, dos horas o intervalos de tiempo de otra longitud. Podrá referirse a este término también simplemente como Sesión. SLOT: Elemento definido a partir de las combinaciones de valores específicos de los recursos, que servirá de unidad básica cuya asignación es demandada por las sesiones de clase. Así por ejemplo, un slot podrá estar definido por la combinación de periodos de tiempo y de aulas (6:00-7:00 am aula X). La
  • 19. definición de slots no es única, podrá involucrar intervalos de tiempo de diferente longitud, e incluir recursos o información adicional. Sin embargo, en el contexto de este proyecto contendrá por lo menos propiedades asociadas al intervalo de tiempo y al aula.
  • 20. INTRODUCCIÓN El proceso de asignación de salones es un trabajo difícil y dispendioso que se debe llevar a cabo al menos dos veces al año y consiste en encontrar un salón apropiado para impartir una serie de sesiones de clase, el tiempo que se invierte en este proceso es significativo debido a que una asignación de salón satisfactoria debe tener en cuenta aspectos relacionados con capacidades de las aulas, preferencias horarias entre otros. La asignación de salones generalmente se desarrolla en un ámbito donde la demanda por salones y horarios de clase particulares, tiende a crecer, los recursos como aulas, son escasos y de capacidades limitadas, y hay objetivos que compiten por estos recursos: el propósito principal de los profesores es satisfacer sus preferencias por un horario y un salón específicos, mientras que uno de los objetivos de la administración, es la utilización eficiente de la planta física. Entonces, el problema de asignación de salones se puede definir a la luz de sus objetivos, recursos limitados y restricciones[21]. Este proyecto aborda el problema de programación de curso en las instancias que se presentan en las Escuelas que pertenecen al Edificio Camilo Torres de la Universidad Industrial de Santander. Abordar estas instancias de manera específica obedece a dos factores: Primero, actualmente el proceso de programación semestral presenta altos niveles de complejidad y demanda grandes de tiempo y esfuerzos administrativos Segundo: considerando que el sistema educativo es diferente en cada Ciudad y que incluso dentro de una misma Universidad la forma en que cada instancia aborda el problema de crear sus horarios difiere significativamente, es necesario evaluar las alternativas de formulación y solución del problema de manera que se incluyan las características propias del sistema real bajo estudio y se pueda desarrollar una herramienta para el apoyo en la toma de decisiones. 20
  • 21. 1 GENERALIDADES 1.1 DESCRIPCIÓN DEL TEMA DE INVESTIGACIÓN La construcción de horarios es un proceso que se adelanta por las diferentes instituciones académicas en un determinado periodo; existe una gran variedad de modelos de calendarios, que van desde el calendario semanal de un colegio, en donde se asignan las materias a sus estudiantes para una determinada jornada, hasta la programación de exámenes, cursos o conferencia en una universidad, en donde la construcción de horarios es definido como el proceso de asignar cursos universitarios (sesiones de clase) a periodos de tiempo específicos en salones apropiados para un número de estudiantes registrados y las necesidades propias de cada curso. [1] La forma en la cual se aborda el problema por las instituciones educativas difiere significativamente. Sin embargo se pueden observar elementos comunes en el planteamiento, formulación y estrategias de solución que han permitido establecer a través de la historia gran cantidad de planteamientos entorno a esta problemática. La construcción de horarios acordes con la disponibilidad de recursos y los requerimientos de las instituciones educativas, es un proceso que se realiza por lo menos dos veces en el año y que demanda gran cantidad de tiempo y esfuerzos por parte de las universidades. Para abordar esta problemática comúnmente las instituciones replican los horarios de periodos anteriores, con pequeños cambios dependiendo de las variaciones de los requerimientos ([4] [6]) como es el caso de la Universidad Industrial de Santander, sin embargo estas modificaciones no garantizan el cumplimiento de las necesidades, debido a que existen dos problemas principales al establecer un horario[21]: • El primero está relacionado con la naturaleza combinatoria del problema que dificulta hallar una solución óptima, ya que el número de variables que se ven involucradas en este proceso es muy alto. • Y el segundo por la naturaleza dinámica de este problema, donde las variables se modifican en el desarrollo de las actividades propias de la institución 21
  • 22. Es por esto que se hace necesaria la creación de nuevas estrategias para el tratamiento de este problema con el fin de brindar un apoyo en el proceso de asignación de salones. En Colombia buena parte de las Universidades [21] replican o se basan en programaciones de periodos anteriores, sin tener en cuenta la calidad en las asignaciones que sirven de base para esta actividad, de manera que no se tiene certeza de la eficiencia de las asignaciones realizadas, sin embargo se destaca el esfuerzo desarrollados por algunas universidades como: Universidad Javeriana, Universidad Nacional- Sede en Medellín y Universidad Católica quienes han documentado el proceso de asignación de aulas. La Universidad Nacional-Sede en Manizales desarrollo el sistema CRONOS [19] al igual que la Universidad Manuela Beltrán con su sistema ADSALON y la Universidad de Antioquia cuenta con la herramienta informática ESPACIOS1 El problema de asignación de horarios en universidades, se puede dividir en dos categorías principales [5]: • Establecer un horario para las distintas sesiones de clase en un periodo determinado. • Y la programación de evaluaciones, las cuales requieren la asignación de salones, en caso de realizarse por escuela. La solución al problema de asignación de salones en el edifico Camilo Torres, pretende generar una programación acorde con las restricciones asociadas a los profesores, aulas de clase, estudiante y demás entidades relacionadas con el problema, de manera que esta sea factible y aceptable por las distintas entidades involucradas en el proceso de decisión, es decir se pretende maximizar el beneficio generado con la asignación, este beneficio involucra satisfacción de la demanda y el aprovechamiento de la infraestructura. 1.2 OBJETIVOS DEL TRABAJO DE GRADO 1.2.1 Objetivo General Diseñar y validar un modelo matemático para el proceso de asignación de salones en el edificio Camilo Torres de la Universidad Industrial de Santander de manera que genere una estrategia de apoyo a la toma de decisiones en la solución de esta problemática. 1 La documentación se encuentra disponible en las páginas Web que se mencionan en la bibliografía para cada una de las universidades. 22
  • 23. 1.2.2 Objetivos Específicos 1. Construir el estado del arte para el problema de construcción de horarios de clase que pretende abordar este proyecto 2. Describir la instancia real del Edificio Camilo Torres de la Universidad Industrial de Santander, generando una revisión detallada del proceso que actualmente se desarrolla para la asignación de salones a las distintas sesiones de clase. 3. Formular un modelo matemático para el problema de construcción de horarios de clase en el Edificio Camilo Torres, el cual involucre las características propias de esta instancia. 4. Implementar en una herramienta de optimización el modelo formulado, haciendo posible su validación mediante la solución de la instancia propuesta, identificando fortalezas y debilidades respecto al proceso de solución actual así como su pertinencia en la generación de apoyo a la toma de decisiones asociadas a esta problemática. 1.3 ALCANCE Este proyecto pretende abordar el problema de asignación de salones a sesiones de clases previamente establecidas para el edificio Camilo Torres de la Universidad Industrial de Santander, evaluando alternativas de formulación del problema que permitan considerar aspectos propios de esta instancia como preferencias horarias y/o aulas para ciertas asignaturas, distribución de salones de acuerdo con los escuelas involucradas, conveniencia de evitar cruces entre horarios de materias del mismo semestre para los diferentes planes curriculares de estudio y el deseo de maximizar el nivel de utilización de la planta física del edificio Camilo Torres de manera que se genere una estrategia de apoyo a la toma de decisiones en la solución de la problemática planteada. 23
  • 24. 1.4 ESTRUCTURA DEL DOCUMENTO. En este capítulo se describe el tema de investigación, al igual que los objetivos y alcance propuesto para este proyecto. En el capítulo 2 se ahonda en conceptos teóricos que se deben manejar en el tema tales como, complejidad computacional, descomposición del problema de asignación, restricciones involucradas, temas de resolución utilizadas y herramientas informatices utilizadas. En el capítulo 3 se realiza una descripción puntual del proceso que siguen las escuelas pertenecientes al edificio Camilo Torres para ejecutar la asignación horaria para un semestre determinado. Para el capítulo 4 se presenta la descripción del problema a través de un modelo matemático, su función objetivo, restricciones y variables. En el Capitulo 5 se presenta la implementación del modelo matemático con la ayuda del la herramienta de optimización Express. En el capítulo 6 se presentan los resultados obtenidos y la validación de los mismos por cada una de las instancias relacionadas. 24
  • 25. 2 ESTADO DEL ARTE Desde los años 70, el tema de asignación de horas y salones ha sido objeto de constante estudio, la programación de actividades o eventos acordes con la disponibilidad de recursos y sus requerimientos [7] es una tarea que deben enfrentar por lo menos dos veces al año los establecimientos educativos particularmente las Universidades, la mayoría de estas instituciones emplea una heurística simple, asistida por un ordenador que consiste en una asignación basada en el orden de llegada de los listados de requerimientos de aulas para cada sesiones que de desea impartir [12] , es también común la práctica de réplicas de programaciones que se han realizado a través de un proceso de asignación de aulas manual, carente del análisis de datos que permita medir el cumplimiento de los objetivos propuestos por las partes involucradas en la asignación de los recursos. Usualmente, cuando se enfrenta el estudio de la programación de las actividades en el contexto descrito, se refiere a él como el Problema del Timetabling. El cual es definido como la asignación, sujeta a restricciones de un conjunto de recursos a objetos ubicados, siendo ubicados en espacios de tiempo, de tal forma que se satisfaga en el mayor grado posible un conjunto de objetivos deseables. [8] La cantidad de factores y restricciones que se involucran en las exigencias horarias hacen que la asignación sea considerada como un problema NP-completo ya que no admite solución eficiente en todos los casos [9]. Carter y Laporte [22] subproblemas: descompone el problema de asignación en cinco 1. La asignación de cursos a horas (Course Timetabling): Esta clasificación indican los cursos que se deben llevar a cabo semanalmente según el número de programas universitarios que necesiten de estas actividades, de tal manera que no se asigne dos cursos a un mismo periodo de tiempo en un salón determinado 2. Los horarios de enseñanza secundaria (Class-Teacher Timetabling): Considera el horario semanal para las sesiones de las asignaturas de una escuela o colegio, consiste en asignar las sesiones a los períodos de tiempo, de tal manera que ningún profesor o asignatura tengan más de una sesión en el mismo periodo 3. La asignación de alumnos a secciones (StudenScheduling): Consiste en la asignación de alumnos a los secciones de tal manera que no se sobrepase la capacidad de las aulas, ni asigne dos sesiones con un mismo periodo a un estudiante. 25
  • 26. 4. La asignación de profesores a secciones (Teacher Assignment): Realiza la asignación de profesores a secciones de clase, teniendo en cuenta preferencias horarias, de tal manera que no se realice la asignación de un mismo profesor a dos secciones que tenga igual hora y día. 5. La asignación de aulas a lecciones (Classroom Assigment): Consiste en asignar las sesiones a las salas con un horario ya determinado. 2.1 Eficiencia computacional Garey [52] menciona que la teoría de la complejidad computacional, como parte de la teoría de la computación, estudia los recursos requeridos por un algoritmo para resolver un problema. Los recursos más estudiados son el tiempo, que se traduce en el número de pasos de ejecución de un algoritmo para resolver el problema y el espacio, que es la cantidad de memoria utilizada para resolver el problema. En este sentido, se pueden clasificar los problemas en tres clases: P, NP y NP-C 2.1.1 Problemas P Según Galve [53] la clase de los problemas que se pueden resolver mediante algoritmos eficientes se denota como P, indicando tiempo polinomial. Se considera que este tipo de problemas se pueden resolver eficientemente, y se encuentra una solución exacta en tiempo razonable. El método exacto consiste en explorar de forma exhaustiva (mediante enumeración) el conjunto de todas las soluciones posibles. Esta técnica puede resultar válida para algunos tipos de problemas o para instancias pequeñas de problemas concretos, pero existen muchos casos en los que es extremadamente ineficiente debido a que el espacio de soluciones de la mayoría de los problemas de interés suele ser de muy alta dimensionalidad 2.1.2 Problemas NP La clase de problemas para la que existe un algoritmo no determinista y cuyo tiempo de ejecución es polinomial respecto al tamaño de los datos de entrada se llama NP. Algoritmo no determinístico es aquel que escoge de forma arbitraria uno de los posibles cursos de acción cada vez que se enfrenta con varias posibilidades. La elección puede pensarse como una pregunta que realiza el algoritmo para saber qué alternativa lo conduce a la solución. Galve 26
  • 27. señala que la importancia de esta clase de problemas de decisión es que contiene muchos problemas de búsqueda y de optimización para los que se desea saber si existe una cierta solución o si existe una mejor solución que las conocidas. Dada su importancia, se han hecho muchos esfuerzos para encontrar algoritmos que decidan algún problema de NP en tiempo polinomial. Sin embargo, pareciera que para algunos problemas de NP, los del conjunto NPcompleto no es posible encontrar un algoritmo mejor que simplemente realizar una búsqueda exhaustiva. 2.1.3 Problemas NP-Completos Es el tipo de problema más difícil, menciona que un algoritmo de fuerza bruta para problemas NP Completos utiliza tiempo exponencial con respecto al tamaño de la entrada. Se desconoce si hay mejores algoritmos, por lo cual se señala que para resolver un problema NP-Completo de tamaño arbitrario se utiliza uno de los siguientes enfoques [54] : • Aproximación: Un algoritmo que rápidamente encuentra una solución no necesariamente óptima, pero dentro de un cierto rango de error. En algunos casos, encontrar una buena aproximación es suficiente para resolver el problema, pero no todos los problemas NP Completos tienen buenos algoritmos de aproximación. • Probabilidad: Una algoritmo probabilístico obtiene en promedio una buena solución al problema planteado, para una distribución de los datos de entrada dada. • Heurísticas: Un algoritmo que trabaja razonablemente bien en muchos casos. En general son rápidos, pero no existe medida de la calidad de la respuesta. El problema de asignación en relación clasifica como un problema NP- completo. a la eficiencia computacional se Para el desarrollo de este proyecto se profundiza en la aplicación de métodos cuantitativos a la programación de asignación de aulas, para esto se realizara una breve descripción de estos temas. 27
  • 28. 2.2 Programación de actividades (Timetabling) en instituciones Universitarias Uno de los aspectos más importante para las instituciones universitarias es la programación de las actividades académicas, para este problema es posible distinguir dos categorías principales: el problema de programación de exámenes y el problema de programación de cursos [5] El problema de programación de exámenes se puede definir [21] como la asignación de un número dado de exámenes dentro de un marco de tiempo, la cual tiene implícita restricciones tales como conflicto de estudiante, aula y profesores. En relación con la programación de cursos, esta pretende programar todas las sesiones de clase de un conjunto de cursos universitarios, intentando disminuir la sobre posición de sesiones con estudiantes en común y haciendo el mejor uso posible de los recursos disponibles [11]. Estos dos problemas difieren entre otras razones porque [10]: 1. Mientras que los exámenes pueden ser programados de modo que no existan estudiantes en común para dos exámenes a la misma hora, las sesiones de clase deben ser programadas, generalmente, antes de conocer los estudiantes que están involucradas en ellas. 2. La restricción que se encuentra relacionada con la asignación de aula en el problema de programación de cursos es más notoria, debido a que una sesión de clase debe ser dictada en un único salón, mientras que para un examen un grupo de estudiantes puede ser dividido en dos aulas diferentes, esta consideración también podría relacionarse con las preferencia por parte de los profesores debido a que la duración de un examen involucra un día mientras que las sesiones se clase se realizan por un semestre. Sin embardo, el objeto principal de este proyecto recae en la programación de cursos debido a que en el caso del edificio Camilo Torres de la Universidad Industrial de Santander, las evaluaciones suelen realizarse en las aulas donde se imparte la sesión de clase, para casos particulares como exámenes por escuela, no se permite que coincidan dos exámenes de escuelas diferentes. 28
  • 29. 2.3 Programación de cursos en instituciones universitarias En la mayoría de las universidades, la programación de los cursos no se hace de manera centralizada, esta se distribuye entre las unidades académicas como facultades, escuelas o departamentos; por esta razón la programación de cursos puede descomponerse [21] como una división en varios subproblemas asociados a cada una de las unidades académica y en los cuales la administración de recursos es distribuida. Para el caso en el cual los programas académicos mantienen esta estructura, el problema adquiere mayor complejidad, puesto que no puede ser descompuesto tan fácilmente en subproblemas para cada unidad [13]. Otro aspecto que adiciona complejidad al problema de programación de cursos es la cantidad de personas que se ven involucradas con la solución del problema. Alguno de estos grupos de personas son [14]: • La administración de la universidad, la cual determina los estándares mínimos que debe cumplir la programación. • Las unidades administrativas (Facultades, Escuelas o Departamentos), las cuales se preocupan por la pertinencia de las aulas asignadas, la distribución de las clases de los mismos niveles del plan curricular, el cumplimiento de las preferencias de los docentes, entre otras. • Los estudiantes, los cuales son en definitiva quienes deben hacer efectivo el programa de cursos construido y que esperan que ese satisfaga sus preferencias respecto a la distribución de los cursos y la posibilidad de acceder a ellos sin que se generen conflictos de horario entre los cursos deseados. 2.4 Caracterización de las restricciones del problema de asignación de cursos Se han propuestos diversos enfoques para el planteamiento y posterior solución de este problema [21], en el cual se establecen un conjunto de limitaciones que pueden variar de una solución a otra. Inicialmente se tratan problemas básicos donde se involucran restricciones que están relacionadas directamente con la programación clase-profesor, posteriormente se incluyeron las restricciones relacionadas con las aulas donde se imparte la sesión de clase, de manera que una primera forma, propuesta por Burke [1], clasifica estas restricciones en siete categorías: 29
  • 30. • Restricciones de asignación de recursos. Limitan la asignación de un recurso a un evento o recurso de otro tipo. Por ejemplo, los laboratorios deben ser asignados en salones con características particulares. • Restricciones asociadas a la asignación en el tiempo. Establecen que un evento, sesión de clase por ejemplo, debe ser asignado a un periodo especifico del tiempo • Restricciones asociadas a la relación temporal entre eventos. Establecen relaciones de precedencia o simultaneidad entre eventos. • Distribución de los eventos. Establecen la distribución apropiada en el tiempo de los diferentes eventos. Por ejemplo, los estudiantes no deben tener más de dos clases consecutivas. • Coherencia de los eventos. Este tipo de restricciones operan en sentido opuesto a la anterior y busca programaciones mas ordenadas y compactas. Por ejemplo, los profesores preferirían dictar sus clases en un mismo día. • Capacidad de las Aulas. • Continuidad. Establecen que ciertas características de la programación permanezcan constantes. Por ejemplo, todas las sesiones de clase de un grupo de cierta asignatura, deben dictarse en la misma aula. Similarmente, otra forma de clasificación propuesta por Corne y retomada por Lewis [9], propone clasificar las restricciones en 5 categorías: • Restricciones que involucran un único evento. Por ejemplo aquellas que especifican un slot de tiempo o aula para un evento particular. • Restricciones binarias para pares de eventos. Establecen por ejemplo relaciones de precedencia y simultaneidad entre eventos Así como aquellas que pretenden evitar programaciones en las que un recurso o un evento esta comprometido más de una vez en un periodo especifico del tiempo. • Restricciones de capacidad. Establecen el cumplimiento de las limitaciones de capacidad de las aulas. • Restricciones de distribución entre eventos. Establecen la distribución apropiada de los eventos, en cuanto a dispersión y coherencia. 30
  • 31. • Restricciones asociadas a los agentes. Pretenden la satisfacción de las preferencias de los distintos agentes, o grupos de individuos, relacionados con los resultados de la programación. Las restricciones, sin importar las categorías en las que son clasificadas, son usualmente divididas en dos grandes grupos: restricciones fuertes y restricciones débiles. Las restricciones fuertes tiene una prioridad más alta y su cumplimiento es obligatorio de no serlo esta solución no se considera factible. A este subconjunto de restricciones pertenecen aquellas que evitan la asignación de unos recursos a más de un evento o un lugar en un mismo periodo de tiempo, tales como ([14], [6]): • Conflicto de profesor: Situación en la cual un profesor es designado para dictar más de una sesión de clase en un mismo intervalo de tiempo. • Conflicto de estudiante: Situación en la cual un estudiante debe asistir a más de una sesión de clase en un mismo periodo de tiempo. • Conflicto de aula: Situación en la cual más de una actividad ha sido asignada para realizarse en dicha aula durante un mismo periodo de tiempo. Las restricciones débiles [21] son aquellas cuyo cumplimiento es deseable pero no esencial, son satisfechas de ser posible y en la mayoría de los problemas reales no pueden ser cumplidas todas simultáneamente; el incumplimiento de este tipo de restricciones penaliza la función objetivo pero las soluciones generadas son factibles; dentro de este grupo se encuentran las restricciones que pretenden la mejor distribución de los eventos, el cumplimiento de las preferencias de profesores y la generación de horarios lo más compactos posibles. En la práctica podría ser necesario otorgar un nivel de importancia diferente a ciertos grupos de restricciones débiles, lo cual usualmente se considera mediante una función de penalización que valora el grado con el cual la programación propuesta incumple el conjunto de restricciones y la importancia otorgada a ello. Para este mismo fin, Murray [13] propone una escala consistente para las restricciones compuesta esta por: Requerido, Fuertemente Deseable, Deseable, Indiferente, Indeseable, Fuertemente Indeseable y Prohibido. La primera y última categoría corresponden a las restricciones 31
  • 32. fuertes, mientras que las restricciones débiles se mueven dentro de las demás categorías. 2.5 Estrategias de solución Históricamente, hasta la década de los años 70, la planeación académica se efectuaba por personas que tenían experiencia en la realización de estos horarios manualmente, donde se utilizaba un incremento sucesivo de condicionamientos. A finales de los años 70 se emplearon algunos métodos para solucionar el problema de asignación horaria [15], uno de ellos hace referencia a la iteración sobre matrices booleanas, este método se encarga de escoger arbitrariamente posibilidades que son factibles y probar por medio de iteraciones si el resto de posibilidades no han sido afectadas, así continua sucesivamente, por esto se considera un método algo ineficiente. A comienzos de los años 80, se discuten métodos de solución basados en redes y grafos, particularmente el algoritmo de coloreado de grafos [16] que para esta época era el más estudiado. Simultáneamente, Carter presenta una clasificación de métodos aproximación a la solución del problema en cuatro tipos ([5], [3]): de 2.5.1 Métodos Secuenciales Estos métodos ordenan los eventos usando heurísticas de dominación y luego asignan los eventos secuencialmente dentro de periodos de tiempo válidos de tal forma que ningún evento en un periodo de tiempo esté en conflicto con otro. En este tipo de métodos el problema de creación de horarios es usualmente representado por medio de grafos, en donde [24] cada vértice simboliza los grupos ofrecidos, los cuales están unidos por aristas en caso de existir relación entre ellos2, el método consiste en asignar un color que representa el periodo de tiempo a cada vértice, de tal forma que no se presenten dos vértices de igual color unidos por una o varias aristas. Con el fin de obtener mejores resultados se han implementado algunas técnicas a través de los años; inicialmente Werra [16] presenta un modelo de asignación para profesores y posteriormente las aulas, del mismo modo en 1988 Selim [23] utiliza esta metodología dividiendo el número de vértices con el fin de reducir el número cromático o colores utilizados. 2 Estudiante o profesor en común 32
  • 33. Los problemas reales de programación difieren del problema de colorear un grafo cuando alguna de las siguientes restricciones adicionales son incorporadas: • Un número limitado de estudiantes o evaluaciones para algún periodo de tiempo • Capacidad limitada de los salones • Restricciones de precedencia entre las secciones. • Preasignación de exámenes • Preferencias de horario • Las evaluaciones de los estudiantes deberían estar dispersas a lo largo de todo el horizonte (conjunto de periodos) de evaluación. De igual forma la solución del problema de timetabling por medio de grafos no se adecúa para problemas de grandes tamaños. Bajo la aplicación de técnicas de descomposición y partición se han obtenido horarios de mayor calidad, con un mayor número de asignaciones que los realizados bajo la técnica convencional de grafos, estos resultados pueden ser un buen punto de partida para realizar una búsqueda local por medio de meta-heurísticas [25]. 2.5.2 Métodos Agrupamiento. El conjunto de eventos es dividido en subgrupos que satisfagan las restricciones fuertes y luego los grupos son asignados a periodos de tiempo que satisfagan las restricciones débiles. 2.5.3 Métodos basados en restricciones. Dentro de esta categoría podemos incluir las técnicas tradicionales, métodos que debido a su forma de buscar, se les denomina métodos completos, ya que recorren todo el espacio de búsqueda, es decir encuentran todas las soluciones posibles a un determinado problema, sin embargo esto depende del número de variables que influyen en el problema. Dentro de este grupo podemos encontrar la Programación entera, programación Lineal entre otras, en donde el problema es modelado mediante un conjunto de variables cuyos valores deben ser asignados de modo que satisfaga ciertas restricciones. 33
  • 34. La literatura encontrada presenta numerosas variaciones del problema de programación de horarios de acuerdo a los requerimientos específicos de cada institución. En particular, más allá de las restricciones de capacidad, no existen otras condiciones que aparezcan en todos los estudios presentados en la literatura [34]. Existen variaciones significativas en el planteamiento de la función objetivo donde es posible que se encuentre en función de maximizar las preferencias de los profesores en horarios y en salas asignadas para su clase [35] o generalizar de manera que se pretenda maximizar el beneficio logrado con la asignación, este beneficio involucra satisfacción de demanda, aprovechamiento de infraestructura entre otros, de igual manera algunos autores involucran dentro de la función objetivo penalización por el incumplimiento de las restricciones débiles [21] Varios autores han modelado el problema de asignación de salones con este enfoque, para el cual definen variables de dominio finito como son los conjuntos de [6]: profesores, secciones, salones y slots (días de la semana, una hora de inicio y una hora de finalización de clase). El desarrollo de este método se puede plantear por medio de la implementación de fases, en donde se tienen en cuenta diferentes parámetros de asignación, de manera que se realice la asignación de aulas en una primera fase y posteriormente la asignación de slots a las clases [26]. De igual manera es posible realizar el agrupamiento de variables con características similares a fin de disminuir el número de restricciones y obtener una solución en menor tiempo computacional [21], [33]. 2.5.4 Métodos Meta-heurísticos. La idea más genérica del término heurística está relacionada con la tarea de resolver inteligentemente problemas reales usando el conocimiento disponible. En Investigación Operativa, el término heurístico se aplica a un procedimiento de resolución de problemas de optimización con una concepción diferente. Se califica de heurístico a un procedimiento para el que se tiene un alto grado de confianza en que encuentra soluciones de alta calidad con un coste computacional razonable, aunque no se garantice su optimalidad o su factibilidad. Las heurísticas para resolver un problema de optimización pueden ser más generales o específicas que otras. Los métodos heurísticos específicos deben ser diseñados a propósito para cada problema, utilizando toda la información disponible y el análisis del modelo, por el contrario las heurísticas más generales se caracterizan por su adaptabilidad, sencillez y robustez. El término metaheurísticas se obtiene de anteponer a heurística el sufijo meta que significa “más allá” o “a un nivel superior”. Las metaheurísticas son 34
  • 35. estrategias inteligentes para diseñar o mejorar procedimiento heurísticos muy generales con un alto rendimiento. En una primera aproximación, se ha decidido separar las metaheurísticas en dos grandes bloque: trayectoriales y poblacionales. Las metaheurísticas trayectoriales manejan en todo momento una sola solución y deben su nombre a que el proceso de búsqueda que desarrollan se caracteriza por una trayectoria en el espacio de soluciones. Es decir, partiendo de una solución inicial, generan un camino en el espacio de búsquela mediante operaciones de movimiento. Dentro de estas metaheurísticas se pueden destacar por su interés: búsqueda tabú, métodos multi-arranque, búsqueda local iterativa. Las metaheurísticas poblacionales implementan el proceso de búsqueda manteniendo simultáneamente un conjunto de soluciones Las metaheurísticas basadas en poblaciones o metaheurísticas poblacionales son aquellas que emplean un conjunto de soluciones (población) en cada iteración del algoritmo, en lugar de utilizar una única solución como las metaheurísticas trayectoríales. Estas metaheurísticas proporcionan de forma intrínseca un mecanismo de exploración paralelo del espacio de soluciones, se contemplan operadores para generar nuevas soluciones a partir de las existentes, y su eficiencia depende en gran medida de como se manipule dicha población [51]. Ejemplos: algoritmos evolutivos, genéticos y meméticos, búsqueda dispersa, optimización por colonia de hormiga Sin embargo, los tipos de metaheurísticas también se pueden clasificar en función del tipo de procedimientos a los que hace referencia de esta manera existen metaheurísticas de: • Relajación: se refieren a procedimiento de resolución de problemas que utilizan relajaciones del modelo original (es decir modificaciones del modo que lo hacen más fácil de resolver), cuya solución facilita la solución del problema original. • Constructivas: se orientan a los procedimientos que tratan de la obtención de una solución a partir del análisis y selección paulatina de las componentes que la forman. • Búsqueda guían los procedimientos que usan transformaciones o movimientos para recorrer el espacio de soluciones alternativas y explotar las estructuras de entornos asociadas. 35
  • 36. • Evolutivas: enfocada a los procedimientos basados en conjuntos de soluciones que evolucionan sobre el espacio de soluciones [49] Los métodos meta-heurísticos más representativos son: • Redes Neuronales: Las redes neuronales artificiales se basan en el comportamiento biológico del cerebro humano, con N neuronas interconectadas. Estos modelos tienen la capacidad de ajustar sus parámetros en respuesta a unas entradas y salidas mejorando alguna función. La mayoría de las redes neuronales aplicadas para resolver problemas de optimización son versiones de la red de Hopfield. La idea básica consiste en transformar el problema de optimización en la minimización de la función de energía de la red de Hopfield y determinar la estructura de una red neuronal de forma que las situaciones de energía mínima correspondan al estado de equilibrio de la red. De esta forma, la red evoluciona hacia el estado de equilibrio proporcionando la solución del problema. Las neuronas tienen un estado y un nivel de salida, reciben señales de otras neuronas (input) y da señales a otras (output), el modelo señala una función que determina la conexión con otras neuronas llamada el peso (w). La relación entre el estado interno y el nivel es determinada por la función de activación que depende directamente del tipo de red (discreta o continua), las neuronas se actualizan por si mismas y tienden a un estado de mínima energía que se considera el optimo de la solución, el cual depende de la selección de el peso y los input. La energía se mide en cada una de las iteraciones a través de una función de energía que se asimila a la función objetivo de los problemas de optimización, a través de la cual también se penaliza el estado de la neurona al incumplir alguna restricción. Las neuronas empiezan en un estado imparcial y a través de las actualizaciones lograran el mínimo de energía, la cual nunca incrementa dentro de los estados de transición. Este método para resolver problemas de optimización combinatoria fue introducido por Hopfield y Tank en 1985, pero fue cuestionada varios años después cuando los resultados iníciales no lograron ser reproducidos y se evidenciaron varias limitaciones al método planteado, entre ellas que se queda en óptimos locales, y su función de penalización conduce a soluciones inviables o de mala calidad. Cabe mencionar que entre sus ventajas se encuentra la rapidez para encontrar las soluciones a través del hardware, llamada esta eficiencia computacional. A pesar de esto se han tratado de superar estas limitaciones. Ha pasado al campo de los métodos combinatorios, donde se asegura que se puede combinar redes neuronales con el método de escalonamiento [36] llegando a generar soluciones de mejor calidad que incluso métodos heurísticos como recocido simulado. 36
  • 37. Las aplicaciones de las redes neuronales al problema Timetabling son muy escasas, situación que se puede relacionar con la poca credibilidad hacia esta técnica. Smith, Abramson & Duke (2003), presentan en su trabajo una propuesta para resolver el problema de asignación a través de la red neuronal de Hopfield presentando varios modelos para resolver el problema, el objetivo del trabajo era demostrar que el rendimiento de la red depende de la formulación utilizada y su rendimiento puede ser comparado con las técnicas heurísticas por ello hace una comparación con las técnicas heurísticas de recocido simulado y búsqueda tabú, para la cual ejecuta veinte (20) corridas, de los cual se concluyó que la aplicación de redes neuronales para resolver el problema de timetabling está a nivel de estas técnicas, mejorando o igualando sus resultados en relación a la calidad de la solución y la eficiencia computacional, para ampliar sobre estos resultados[37] Carrasco y Pati [38], presentan un mejoramiento de la red de Hopfield, aplicado al problema de Class/Teacher Timetabling Problem (CTTP), la mejora consistió en no considerar sólo dos estados de las neuronas sino un POTTS multi-estados, lo cual permitió reducir el número de neuronas necesarias para la codificación, repercutiendo en la formulación del modelo y en la calidad de la solución. Otro modelo basados en redes neuronales aplicadas con éxito a problemas de optimización combinatoria son las máquinas de Boltzman. Las máquinas de Boltzmann son un hibrido entre una red de Hopfield y la técnica de enfriamiento simulado [39] . • Recocido Simulado: Se trata de un problema de resolución para la optimización de problemas de tipo combinatorio con mínimos locales. Su aproximación consiste en generar aleatoriamente una solución cercana a la solución actual y la acepta como buena si logra reducir una determinada función de costo o con una determinada probabilidad de aceptación. La diferencia con otras técnicas como el de escalonamiento radica en que estas técnicas solo aceptan soluciones que mejoren la anterior y pueden estancarse en mínimos locales por limitar el espacio de búsqueda. El algoritmo de enfriamiento lento puede aceptar soluciones que empeoran la solución actual, sólo que esta aceptación dependerá de una probabilidad que depende de la temperatura a la que se encuentre el sistema. Este método trata de asimilarse al proceso metalúrgico llamado ”termalización o recocido“, cuando se enfría un metal fundido suficientemente despacio, tiende a solidificarse en una estructura de mínima energía (equilibrio térmico); según va disminuyendo la temperatura las moléculas del metal tienen menor probabilidad de moverse de su nivel energético 37
  • 38. Los algoritmos de enfriamiento lento simulado tienen algunas ventajas con respecto a otras técnicas de optimización global. De acuerdo con SALEH ELMOHAMED [47] entre las ventajas de estos algoritmos se pueden citar: • Resulta un modelo sobre el que se puede implementar de forma relativamente sencilla este tipo de problemas. • Su aplicabilidad a la mayoría de los problemas de optimización con una estructura combinatoria. • Su capacidad para ofrecer soluciones razonablemente buenas a la mayoría de los problemas, aunque hay una cierta dependencia de la planificación del enfriamiento y los movimientos que se realicen. • La facilidad con la que se puede combinar este tipo de algoritmos con otras técnicas heurísticas como los sistemas expertos, los algoritmos genéticos, las redes neuronales, etc, consiguiendo sistemas híbridos que pueden resultar de gran potencia en la resolución de problemas muy complejos. Por otra parte, también se pueden citar algunos aspectos que pueden limitar su utilización: • Se necesita elegir con mucho cuidado los movimientos que se realizan, así como los parámetros que se van a utilizar para tratarlo, como por ejemplo la tasa de enfriamiento. • Una ejecución del problema puede requerir mucho tiempo de cálculo. • Puede que sea necesario realizar muchas ejecuciones para encontrar una solución satisfactoria. • Dependiendo de los parámetros elegidos, las soluciones que se van encontrando pueden ser poco estables, “saltando” mucho de unas a otras sin encontrar una solución buena con la rapidez suficiente lo que obliga a retocar los parámetros con las distintas ejecuciones. 38
  • 39. El algoritmo de este método puede ser el siguiente: Figura 1. Estructura Básica algoritmo lento simulado Fuente: Tomado de [40] La condición de terminación se establece por el programador pudiendo esta considerar el número de repeticiones del bucle sin que se haya encontrado una nueva solución, o que haya alcanzado un número dado de veces un valor mínimo de coste o cualquier otra que se considere. Dentro del bucle se deja que el sistema evolucione para una determinada temperatura y una vez que se ha dejado evolucionar lo considerado suficiente, se procede a reducir la temperatura. El proceso de actualización puede seguir distintos patrones o algoritmos de enfriamiento. Las soluciones se evalúan en dos sentidos: Si el costo de la solución generada es menor se acepta y se toma como nueva solución para evolucionar. También se toma como solución si el incremento del costo que pueda suponer para la temperatura actual es probabilísticamente aceptable (probabilidad de Boltzmann). En este segundo caso se genera un número aleatorio y se comprueba si su valor es menor que e-∆C/T siendo ∆C el incremento del costo y T la temperatura actual del sistema. De acuerdo con MELÍCIO [48] en el diseño de un algoritmo de enfriamiento lento simulado se deben considerar cinco elementos: • El espacio de búsqueda, es decir, el conjunto de todas las soluciones. • El conjunto de movimiento, es decir, la vecindad de las soluciones. • La función de coste, es decir, un valor que indique la calidad de una solución. • La planificación del enfriamiento, es decir, cómo se enfría el sistema. 39
  • 40. • Las estructuras de datos, es decir, cómo representar el sistema y las soluciones eficientemente. Existen dos alternativas en el sistema de enfriamiento simulado: • Buscar siempre soluciones viables que cumplan las restricciones duras. La desventaja se encuentra que se centra en entornos de soluciones sin considerar otros entornos de acuerdo a la solución de costes • Buscar en el espacio de soluciones sin evitar las soluciones no viables pero aplicándoles un criterio de penalización, el sistema puede utilizar estas soluciones para llegar a otros espacios que de otra forma no serian posibles. Moreno, Sánchez [40], aplicando esta técnica, resuelven el problema de asignación de carga académica a los docentes dados unos grupos de asignaturas con la franja horaria determinada, para la cual se tuvieron en cuenta restricciones fuertes, medias y débiles. El programa se aplicó en Java, con un grupo de 27 profesores (tiempo completo y tiempo parcial), con 42 asignaturas diferentes con un total de 98 grupos distintos, y se llegó a una solución factible. Una de las conclusiones asegura que existe mejora en el rendimiento del algoritmo si se elige una solución inicial buena antes de aplicar las técnicas de enfriamiento, además que es posible mejorar el algoritmo con la combinación de éste y otras técnicas como el algoritmo genético. Bai, Edmund, Kendall y McCollun presentan un modelo el cual desarrolla recocido simulado como un híper-heurístico es decir un heurístico para elegir otro heurístico, para ampliar sobre esta aplicación [41]. • Métodos basados en la Trayectoria de Hormiga: La metaheurística de Sistemas de Hormigas (Ant Systems) empleada estrategias inspiradas en el comportamiento colectivo de las colonias de hormigas para descubrir fuentes de alimentación, estableciendo el camino más corto del hormiguero hasta la fuente de alimentación. Cuando las hormigas se mueven inicialmente lo hacen al azar, dejando por el camino una cierta cantidad de feromonas, las siguientes lo hacen por el camino que mayor cantidad de feromonas tenga. Se trata de una estrategia de búsqueda distribuida en el que un conjunto de agentes coopera en la búsqueda, transmitiendo e intercambiando información al resto. 40
  • 41. Este algoritmo construye una alternativa de solución agregando paso a paso un elemento i entre un conjunto de alternativas N conocido como vecindad del elemento k. Cada elemento tiene consigo una probabilidad pi ( ) de ser elegido. El proceso para construir una alternativa de solución se repite hasta completar varios individuos. Cada uno de ellos produce un incremento o un decremento de feromona sobre los elementos que los forman en forma proporcional a la calidad de la solución. Con base a esta información adicional se genera una nueva población con mejores características. Con el fin evitar el estancamiento del algoritmo en alternativas de baja calidad, el sistema colonia de hormigas efectúa un proceso de evaporación en dos etapas distintas. La primera etapa, conocida como evaporación local se realiza durante la construcción de cada solución. La segunda etapa, conocida como evaporación global se ejecuta luego de realizar los depósitos de feromona. La evaporación global se aplica al final de cada iteración y afecta todos los elementos de todas las alternativas, excepto a la que posea las mejores características. Una alternativa es mejor que otra si: Posee un menor grado de infactibilidad o posee la misma infactibilidad, pero un menor número de restricciones blandas insatisfechas. Para la formación de las alternativas de solución se recurre a dos tipos de matrices de feromonas. La primera matriz relaciona la deseabilidad aprendida de seleccionar el salón para una sección específica, y la segunda matriz relaciona la deseabilidad aprendida de seleccionar el bloque de tiempo para dictar una sección determinada. Para el proceso de asignación de aulas se establece un orden, el cual depende del número de salones donde es factible que un evento se desarrolle, dando prioridad a los eventos con un menos número de opciones factibles, finalizada esta etapa se procede a asignar los bloques de tiempo en los cuales se dictaron las secciones que son impartidas en un mismo salón, cada vez que una sección se asigna a un salón o a un bloque de tiempo disminuye levemente la cantidad de feromona que caracteriza al elemento adicionado. De esta se previene el estancamiento sobre soluciones de baja calidad y se amplía la diversidad de soluciones construidas en cada iteración. Peñuela, Franco & Toro [42], aborda el problema de generación de horarios, programando eventos de clase en 45 horas repartidas en 9 horas para 5 días a la semana, conocido un conjunto de salones, un número de estudiantes que asisten a los eventos y un conjunto de características que requieren los eventos. Se desarrolló un programa computacional en lenguaje Delphi, que implementó la metodología, fue validado a través de tres casos de prueba. En todos los casos de prueba se consiguieron soluciones factibles pero con violación de restricciones blandas. 41
  • 42. • Algoritmos Genéticos: Son algoritmos probabilísticos caracterizados por el hecho de que un número N de posibles soluciones (llamadas individuos) registran el espacio de soluciones en un problema de optimización. Los algoritmos genéticos crean poblaciones iniciales de soluciones que tiene distinto grado de eficiencia la cual es posible evaluar por cumplimiento de las restricciones planteadas [30] de tal manera que se determina si este individuo es solución, o si no lo es, que transformación sufrirá para pasar a la siguiente generación [27]. Los métodos de selección tienen como objeto elegir los individuos más aptos de una población para pasarlos directamente a la siguiente. Entre los métodos más usados se encuentran la selección por ruleta que simula el comportamiento de una ruleta en la cual los individuos más fuertes ocupan un mayor rango es decir poseen mayor probabilidad de reproducirse; el método torneo binario el cual consiste en elegir dos individuos para que compitan de manera que el ganador pasa a la siguiente generación [28], otros métodos que se relacionan en la literatura son: Control sobre un número esperado, elitista y por ranking. Una vez elegido los individuos más aptos se aplica el operador de cruce, que tiene como objeto combinar los individuos y el último operador que se aplica a la población generada es el de mutación. En la inteligencia artificial, se simula el comportamiento de los individuos sobre la teoría de la evolución en la meta-heurística de Algoritmos Genéticos y Algoritmos evolutivos. La diferencia entre estos dos radica principalmente, en la representación del individuo en la población. Los algoritmos genéticos utilizan representación binaria y los evolutivos no binaria [29] . Varios autores han utilizando esta meta-heurística en la solución del problema de timetabling [30] , Erben y Keppler (1996) trataron el problema de programación clase-profesor para una gran muestra de datos demostrando que el algoritmo es capaz de obtener resultados prometedores. En 2001 Ueda Et Al, presenta una estrategia en dos fases del algoritmo genético para la universidad de Hiroshima, inicialmente se desarrolla la asignación de los estudiantes y luego la asignación del aula, demostrando que el algoritmo fue capaz de encontrar una solución viable. En el 2008 se utilizó este algoritmo para la asignación de horarios en la universidad del norte en la Guajira inicialmente se desarrolló la formulación matemática del problema en donde se describen las restricciones a tener en cuenta y posteriormente se utiliza el algoritmo genético, obteniendo un software que permite resolver problemas de gran tamaño en tiempos computacionales razonables y satisfaciendo niveles de calidad deseados. 42
  • 43. • Búsqueda Tabú: La búsqueda tabú es un procedimiento metaheuristico diseñado para encontrar soluciones sub-óptimas en problemas de optimización combinatoria, introducido por Glover en 1986. La búsqueda tabú es una combinación de búsqueda local con un mecanismo de memoria a corto plazo (lista tabú) que impide al proceso estancarse en ciclos, ya que esta guarda la historia reciente de la búsqueda. Elementos claves en búsqueda Tabú: • Restricciones Tabú: restringir la búsqueda al clasificar ciertos movimientos como prohibidos (tabú), para evitar caer en soluciones recientemente generadas. • Criterio de aspiración (aspiration criteria): liberar la búsqueda por medio de una función de memoria a corto plazo (olvido estratégico). Se crea un subconjunto T _ S usando información histórica extendiéndola t iteraciones en el pasado. Las aplicaciones de este método en problemas timetabling son variadas de las cuales vamos a nombrar algunas. Marchan y Alvarez [57] Crean un modelo para la programación de las sesiones del congreso de la República de Perú el cual pretende minimizar a través de la búsqueda tabú el ausentismo y la falta de quórum por los cruces de horarios que tienen los congresistas por el elevado número de comisiones a las que pertenece. El algoritmo de búsqueda tabú fue descrito en c++, los resultados obtenidos fueron buenos se logró disminuir considerablemente los cruces en la programación de las comisiones. Franco y Toro [43] desarrollado para la Universidad del Norte, emplea la metodología para la solución del problema en cuatro fases a saber. En la primera de ellas se obtiene una programación inicial de los eventos por medio de un constructivo, para que los eventos sean programados en salones habilitados, a fin de obtener una configuración inicial con pocas restricciones duras violadas. En la segunda fase se emplea una búsqueda local para disminuir las restricciones duras violadas, en la tercera fase se alcanza una solución factible, en la que se cumplan todas las restricciones duras. En la cuarta fase se usa búsqueda tabú para minimizar las restricciones blandas. Se presenta la configuraciones de vecindad a partir de intercambiar bloque de tiempo del evento con otro suceso en el mismo salón, moviendo el evento a un bloque de tiempo libre en un salón habilitado para esta actividad. Para seleccionar los eventos que sirven para generar la vecindad se usa el índice de sensibilidad que se forma al calcular la función objetivo, el criterio de selección es el mayor valor del índice de sensibilidad. Se utiliza la memoria de corto 43
  • 44. plazo que evita regresar a configuraciones ya visitadas y escapar de óptimos locales. La memoria de corto plazo consiste en un vector (estado _ tabú) que almacena el estado de prohibición de un evento. Cuando se ejecuta un movimiento en el que participa un evento, la posición del vector estado _ tabú asociado a ese evento cambia a un valor _ tabú, el cual corresponde al número de iteraciones en que se prohíben movimientos que involucren al suceso que cambió. También se usa la memoria de largo plazo basada en frecuencia, lo cual permite la exploración de regiones no visitadas por los eventos al modificar aquellos que hayan sufrido menores cambios. A través del modelo propuesto se obtuvieron resultados positivos o soluciones factibles en un tiempo computacional de 400 segundos. Gil y Martínez [44] prueban que en los experimentos realizados, en todos los casos de prueba, el algoritmo basado en Tabú Search encuentra mejores soluciones que las obtenidas con el método manual, en un tiempo de cómputo razonable. Esto lleva a pensar que el algoritmo debe, en general, encontrar buenas soluciones al problema de asignación de horarios de clases en el Departamento de Computación de la Facultad Experimental de Ciencias y Tecnología de la Universidad de Carabobo. Alvarez y Crespo [45] presentan su experiencia para resolver los problemas de asignación, atribuyendo su éxito a la técnica de búsqueda tabú, en este trabajo presentan los diferentes modelos y criterios empleados durante los años de investigación sobre timetabling. Schaerf y Gaspero [46] desarrollan un software de búsqueda local aplicando especialmente search EASYLOCAL++, como una herramienta para la resolución de los problemas de asignación de exámenes, de cursos y el de las escuelas secundarias. • GRASP (Greedy Randomized Adaptive Search Proce Un GRASP es un método multi-arranque, en el cual cada iteración GRASP consiste en la construcción de una solución miope aleatorizada seguida de una búsqueda local usando la solución construida como el punto inicial de búsqueda local. Este procedimiento se repite varias veces y la mejor solución encontrada sobre todas las iteraciones GRASP se devuelve como la solución aproximada [56] 44
  • 45. 2.6 Herramienta Informática de Apoyo para el Desarrollo del Proyecto Xpress-MP es un software de optimización desarrollado por la empresa británica Dash Optimization. Consiste en una familia de herramientas para el modelado y optimización de problemas lineales, cuadráticos y enteros, utilizando técnicas de programación lineal y diversos algoritmos de búsqueda. 45
  • 46. 3 DESCRIPCIÓN DE LA INSTANCIA Un caso particular del problema de asignación horaria, es el que existe en el edificio Camilo Torres de la Universidad Industrial de Santander, en donde la asignación se realiza de forma descentralizada, es decir cada una de las escuelas pertenecientes a este edificio se encarga de hacer la programación de los cursos y asignación de aulas, las cuales ya se encuentran predefinidas para cada una de ellas. Las escuelas que programan sus cursos en el Edificio Camilo Torres son: la Escuela de Física, la Escuela de matemáticas, la Escuela de Química y la Escuela de Biología. El proceso de asignación horaria se ve dividido en dos etapas a saber: 1. Una primera asignación es realizada por cada una de las escuelas, las cuales determinan un horario inicial para la programación de las sesiones que se impartirán en el próximo semestre, este se debe ingresar al sistema académico modulo horarios de acuerdo con las fechas estipuladas por la Universidad. Es de considerar que el proceso de asignación no esta estandarizado y que cada escuela lo realiza según su experiencia y oportunidades, las cuales se describirán mas adelante. 2. Una vez se ha realizado la asignación por parte de las escuelas estas informan a la oficina de admisión y registro académico, sobre las sesiones a los cuales no fue posible asignar aula, para que esta oficina intervenga, lo cual consiste en encontrar un aula para los cursos faltantes, en un proceso de negociación. Este proyecto aborda la instancia que se presenta en la primera etapa descrita anteriormente, es decir, los métodos y resultados que se presenten, serán para el horario inicial, que surge de cada una de las escuelas, ya que son la base para el desarrollo de las etapas posteriores. 3.1 Procesos de Asignación Horaria Inicialmente se determina el número de cursos que se requieren para el semestre en cuestión, para esto cada escuela debe realizar una estimación de 46
  • 47. la demanda. Dicha estimación se construye manualmente, revisando las estadísticas de las deserciones, las cancelaciones y los admitidos cada semestre. Una vez consultadas las estadísticas, éstas se comparan con la programación del semestre anterior para evaluar si tal programación cubre la demanda de grupos, o si es necesario modificarla. De acuerdo con las experiencias del personal de cada escuela, la programación de semestres anteriores para los cursos se preserva en una gran proporción, semestre a semestre, de esta manera se construye una programación inicial de cursos ofertados, esta información se ingresa al “Sistema Académico- Modulo De Horarios”, donde se podrá consultar la información de todos los cursos programados por parte de las escuelas (hora, aula, profesor, capacidad del grupo). Una vez se realiza la matricula de los estudiantes, la Universidad tiene establecido dentro de su calendario académico la primera semana del semestre para hacer el ajuste de matricula, en este instante las escuelas evalúan la opción de cerrar o abrir grupos, según el comportamiento de la demanda, es decir en esta semana los estudiantes pueden incluir o cancelar las materias teniendo en cuenta el reglamento establecido para inclusión y cancelación de materias. Cuando se tiene certeza de la demanda y los grupos que se abrirán en el semestre la oficina de admisión y registro, obtiene la información discriminada de los horarios por escuela, grupo y aula, la cual es consultada en el “Sistema Académico- Modulo De Académico- Listado De Horario De Aula” en donde se muestra la ocupación diaria de las respectivas aulas. Esta es la base para que la oficina de admisión haga la asignación de aulas a los grupos faltantes, a través de la conciliación con las escuelas que tengan aulas disponibles en los horarios necesarios, este proceso tiene una duración aproximada de cuatro semanas. 3.2 Proceso de Asignación por Escuelas Los parámetros que se tienen en cuenta para la asignación de aulas por parte de las escuelas son: • Disponibilidad de los profesores en las tres categorías existentes en la Universidad: • Profesor Planta: Esta modalidad consideran los profesores que laboran tiempo completo, ya sean en áreas académicas o administrativas. 47
  • 48. • Profesor Cátedra: Se vincula al área de docencia por un tiempo semanal de 25 horas máximo. • Estudiante de Maestría: Se vincula al área de docencia por un tiempo semanal de 12 horas máximo. • Aulas disponibles de acuerdo a la asignación previa realizada por la Universidad para cada una de las escuelas. • Cantidad de cursos ofertados por semestre 3.2.1 Escuela de Química La escuela de química determina los cursos a dictar y realiza la asignación de salones, este proceso se basa en gran parte de la información de los horarios del semestre anterior, por último se realiza la asignación del docente encargado la cual tiene como entrada los materias acordadas con los profesores planta. Para los profesores cátedra y maestría la asignación se realiza arbitrariamente de manera homogénea tratando de abarcar las mismas franjas horarias y se publica el horario con el fin de verificar la disponibilidad del profesor cátedra, en caso de presentarse inconformidades se realiza el cambio pertinente ya se con acuerdos entre profesores o cambios de los mismos. 3.2.2 Escuela de Física Para definir los posibles horarios se parte de la información suministrada por el personal docente de la escuela: los profesores planta en reunión con el director de escuela establecen las posibles materias a dictar y horarios disponibles por cada uno de ellos. Los profesores cátedra y maestría informan los horarios en los cuales pueden prestar el servicio a la Universidad y las materias de acuerdo a su preferencia. Para la asignación de materias se da prioridad a las solicitudes realizadas por los profesores planta y en el caso de los profesores cátedra se tiene en cuenta el resultado de la evaluación docente y la demanda existente. 48
  • 49. Ya determinados los cursos a dictar considerando el pronóstico de la demanda y los profesores asignados a cada materia se realiza el proceso de asignación de aulas manualmente. 3.2.3 Escuela de Matemáticas Debido a que la escuela con las aulas asignadas no puede cubrir la totalidad de la demanda se hace necesario habitualmente solicitar el préstamo de aulas a otras escuelas pertenecientes a la Universidad. El proceso de asignación considera inicialmente la disponibilidad de los profesores cátedra y planta3 y los cursos a dictar basados en la demanda, posteriormente realizan la asignación de los grupos en las aulas asignadas y solicita la asignación de los restantes a la división de Admisiones y Registro Académico. 3.2.4 Escuela de Biología El proceso de asignación es similar al realizado por la escuela de química, aunque se presenta una consideración adicional la cual contempla los horarios disponibles de los profesores cátedra. 3 Horario y materia 49
  • 50. 4 4.1 FORMULACIÓN DEL MODELO PARA LA ASIGNACIÓN DE CURSOS Introducción Una vez planteado el problema de asignación horaria en el Edificio Camilo Torres, en este capítulo se propone la formulación de un modelo matemático para el problema que de acuerdo con la clasificación dada por Carter y Laporte podría asociarse con los subproblemas de Course Timetabling y Classroom Assigment, ya que lo que se pretende es la asignación de cursos a períodos de tiempo y aulas. La estrategia de solución utilizada consiste en un modelo basado en restricciones para el problema descrito, que aproxime de la mejor manera algunas de las características propias de la instancia que se aborda. Sin embargo aunque se plantea como método de solución un modelamiento exacto, es posible observar que la búsqueda de la solución se ve limitada por un conjunto de soluciones inicialmente factibles, de manera que el espacio de búsqueda no está compuesto por todas las posibilidades, ya que como se menciono en el estado del arte, el problema de Timetabling debido a la cantidad de factores y restricciones que se involucran en las exigencias horarias hacen que la asignación sea considerado como un problema NPCompleto. A continuación se detallan algunos elementos generales que deben ser considerados al momento de diseñar el modelo. Posteriormente, se propone un modelo que trata el problema de asignación de hora, día y salón para los grupos pertenecientes a las escuelas que conforman el Edificio Camilo Torres. Pueden distinguirse [21] tres conjuntos básicos, cuyos elementos poseen propiedades y características y que en unión con las decisiones asociadas a ellos determinan el proceso de programación de cursos. Son estos conjuntos: • Grupos: Conjunto que contiene todas los grupos que deben ser programados. Note que este conjunto no corresponde exactamente con el conjunto de asignaturas que se impartirán durante el periodo para el cual se está efectuando la programación, esto es debido a que para una asignatura en particular pueden generarse uno o más grupos cada una de las cuales corresponderá a un elemento de este conjunto. 50
  • 51. • Aulas: Corresponde al conjunto de espacios físicos que serán demandados por cada grupo para desarrollar allí, en un horario establecido, las sesiones de clase. • Profesores: Corresponde al conjunto de recursos humanos, representados en docentes, que serán demandados por cada una de los grupos para que se responsabilice del desarrollo de las sesiones de clase. • Intervalos de tiempo: Corresponde a los intervalos de tiempo disponibles, resultado de dividir el periodo de programación en intervalos de longitud apropiada. Note que podría fácilmente asimilase el primer conjunto como un conjunto de clientes o tareas y los dos conjuntos restantes como conjuntos de bienes o recursos que son demandados o requeridos por el primero de ellos. Los elementos de cada uno de los conjuntos descritos tienen propiedades y características propias (que denominaremos parámetros) [21]. Algunas de estas características son, para el conjunto de: • Grupos: Número de estudiantes, Profesor que debe impartirla, escuela que ofrece el curso, intensidad horaria por semana. • Aulas: Capacidad (número de estudiantes que puede albergar), escuela a la que pertenece dicha aula. • Profesores: Grupos que le han sido asignadas, Horarios sugeridos, en cualquiera de las categorías que maneja la Universidad. • Intervalos de Tiempo: Días y horas disponibles para el desarrollo de las sesiones de clase. Es posible observar como algunas de las características de un conjunto están relacionadas con elementos de otros conjuntos, es el caso del profesor asignado a cada grupo y los grupos asignados a un profesor. Así mismo, hay características de diferentes conjuntos que se relacionan posteriormente, como es el caso del número de estudiantes de un grupo y la capacidad del aula que le será asignada. 51
  • 52. El conjunto de intervalos de tiempo no se evidenciara en forma explicita en la formulación, sino que en unión con los elementos del conjunto AULAS constituirán un nuevo conjunto denominado SLOTS. La definición de un slot [21], considera entonces elementos de los conjuntos de AULA y del conjunto de INTERVALOS. Este último conjunto esta definido de forma que el periodo de programación, (Por ejemplo, lunes a viernes de 6 am a 8 pm) se divide en intervalos de longitud apropiada (Por ejemplo de una hora) de modo que se asigna un número consecutivo a dichos intervalos comenzando con el valor de uno para el primero de ellos (Lunes de 6 a 7 am) y finalizando en el n-ésimo valor para el último (viernes 7-8 pm) de acuerdo con el ejemplo Un slot corresponde entonces a un intervalo de tiempo aula de modo que el número de elementos en el conjunto SLOTS está conformado cuando más por todas las posibles combinaciones de los elementos AULAS e INTERVALOS. Con el fin de formular el problema mediante un modelo matemático es necesario considerar las siguientes definiciones de conjuntos, parámetros y variable de decisión. El modelo matemático al igual que la implementación en xpress, está basado en el modelo desarrollado en el proyecto de investigación de asignación de aulas de la Universidad de Antioquia, en el cual una de las autoras4 participó como asistente de investigación, sin embargo se hace necesario establecer una nueva restricción que se encargue de los conflictos de los profesores, ya que para este caso no se trabajará con horarios predefinidos. 4.2 Conjuntos P: Conjunto de profesores indexado con p G: Conjunto de Grupos indexado con g Gp: Conjunto de Grupos dictados por el profesor p A: Conjunto de Aulas indexado con a T: Conjunto de patrones de tiempo, indexado con t t = (día, hora): patrón de tiempo que especifica día y hora 4 Karen juliana Pinto Bohórquez 52
  • 53. S: Conjunto de slots el cual tendrá asociado un patrón de tiempo t y un aula a Mg ⊂ S Subconjunto de slots factibles para el grupo g. Se considera un subconjunto factible aquel que cumpla con la intensidad y capacidad requerida por el grupo y se encuentre dentro del horario factible establecido por el profesor. M g = Conjunto de los subconjuntos de slots factibles para el grupo g M g = {M1g , M 2 g , M3g .........M kg } M kg = K-ésimo subconjunto de slots factibles para el grupo g Por ejemplo, para el grupo g que tiene intensidad de cuatro horas semanales y es dictado por un profesor p que tiene establecido como horario de preferencia la jornada de la mañana para los días jueves y viernes, el k-ésimo subconjunto factible de slots podría ser aquel que indica dos slots continuos los jueves y viernes de 6-8 am en un salón particular. 4.3 Función sobre slots t (s) ∈ T 4.4 es el patrón de tiempo del slot s Parámetros Ca: Capacidad del Aula a indexado con c Dg: Número determinado de estudiantes para el grupo g Bkg: Beneficio que generaría la asignación del subconjunto M kg al grupo g5 5 Este beneficio está relacionado directamente con el profesor asignado al grupo y la intensidad semanal, de manera que se dará mayor prioridad a los profesores planta y aquellos grupos que requieran mayor intensidad, sin embargo para un modelo que considere todos los edificios de la Universidad Industrial de Santander es posible definir este beneficio en términos de utilización, medios con los que cuentan las aulas, distancias y demás. 53
  • 54. 4.5 X Variable de decisión kg 4.6 ⎧1 si el subconjunto k es asignado al grupo g⎫ ⎨ ⎬ ⎩0 e.o.c ⎭ Modelo Matemático De esta forma, podríamos formular el problema de asignación de salones de la siguiente manera: Max ∑ ∑B g∈G k∈M g kg X kg La función objetivo de esta formulación pretende maximizar el beneficio logrado con la asignación S.A 1. Cada slot s será asignado cuando más a la sesión de clase de un grupo g ∑ { ∑ X} g∈G k∈ k:s∈M kg kg ∀s ∈ S ≤1 2. Todo profesor p debe tener asignado a lo más un grupo j en un día y hora del subconjunto ∑ { ∑ X} g∈G p k∈ k :t∈M kg kg M kg ≤1 ∀t ∈ T , p ∈ P 54
  • 55. 3. Para un grupo g debe tener asignado a lo mas un subconjunto factible de slots M kg ∑X ≤1 k∈M g kg ∀g ∈ G La función objetivo representa el propósito principal de las escuelas y la Oficina de Admisiones y Registro académico, de maximizar el número de secciones asignada de manera que se optimice el uso de la planta física y la asignación en primer lugar de los profesores planta, con el fin de satisfacer sus preferencias horarias. 55
  • 56. 5 IMPLEMENTACIÓN DEL MODELO MATEMÁTICO La implementación del modelo matemático descrito anteriormente para la Universidad Industrial de Santander comprende dos etapas a saber: el preprocesamiento de los datos, el cual se programó en Visual Basic de Excel y la solución de la instancia del preprocesamiento en Xpress-MP. En la primera etapa se construye el conjunto de slots factibles M kg , se calculan los beneficios y se determinan los patrones de tiempo asociados al conjunto de slots factibles para cada grupo y en la segunda fase se implementa la formulación en Xpress-MP. 5.1 Preprocesamiento El algoritmo de preprocesamiento de datos requiere los siguientes datos de entrada: • El horario factible de los profesores: Hace referencia a la franja horaria (día-hora) en la cual un profesor prefiere dictar sus sesiones de clase. Para este caso particular se tomó como referencia el horario dispuesto en el primer semestre del 2008 para las escuelas pertenecientes al Edificio Camilo Torres,6 ya que no se dispone de la información del horario factible para cada profesor. Con el fin de determinar dichas franjas se seleccionaron los grupos para las cuales fue asignado un mismo profesor y a partir de estos horarios se estableció el horario factible para cada uno de ellos, más una holgura que considera periodos homogéneos de tiempo entre los días de la semana, a manera de ejemplo: Para el profesor Daniel Miranda de la Escuela de Biología el horario factible de acuerdo con los grupos asignados para el primer semestre del 2008 es: MW8 -10 y WV10 -12, con la holgura el horario factible para este profesor será: MWV 8 -12. De acuerdo con el algoritmo establecido es necesario codificar estos horarios de la siguiente manera: el primer dígito estará asociado a la hora y el segundo al día. Figura 2. Codificación Hora Día 11 Fuente: Autoras 6 Esta información fue suministrada por la Oficina de Admisiones y Registro Académico se encuentra en el ANEXO 1. 56
  • 57. De esta forma: Tabla 1: Codificación 1 2 3 . . 14 6-7 a.m Lunes 7-8 a.m Martes 8-9 a.m Miércoles . Jueves . Viernes 7-8 p.m Fuente: Autoras 1 2 3 4 5 • Disponibilidad del Profesor: Debido a que el beneficio se encuentra asociado con las tres categorías de profesores descritas anteriormente, se requiere especificar para cada profesor a cuál de estas pertenece. • Características de los grupos: Contempla el número de sesiones de clase semanales que se deben impartir y el número de estudiantes para un grupo particular, como ejemplo: para un grupo de Biología para Ingenieros la cantidad de sesiones semanales es tres y el número de estudiantes que se establece, dependiendo de la demanda estimada por la escuela es de 30 estudiantes. • Características propias de cada aula: Se requiere como dato de entrada la capacidad máxima del salón. Para determinar la capacidad de las aulas se tomó como referencia los datos que maneja la oficina de Admisiones y Registro Académico que corresponde al inventario de sillas que se encuentran en cada salón. El algoritmo utilizado en la construcción del conjunto de slots factibles para cada grupo, comprende varias etapas: 1. Se genera a partir del algoritmo descrito en el ANEXO 3 .el tamaño de las matrices asociadas a los horarios factibles para todos los profesores de la instancia que se desee procesar. Los datos de entrada para este algoritmo se relacionan en la Tabla 2. En donde Ip representa la cantidad de horas semanales requeridas por los grupos, la matriz HF el horario factible del profesor. Para este caso particular se obtiene como resultado el valor de cuatro (4) para de n (filas) y m (columnas). 2. Una vez calculado el tamaño de la matriz se genera un segundo algoritmo (ANEXO 4) el cual calcula a partir del horario factible del profesor (matriz HF) y de la cantidad de sesiones de clase requeridas por el grupo (Ip), las 57
  • 58. posibles franjas horarias en las cuales se puede impartir dichas sesiones. De acuerdo con la intensidad horaria semanal requerida se establecieron las siguientes combinaciones como se observa en la Tabla 3 Tabla 2: Cálculo del tamaño de la matriz HF Ip  4  4  4  4  32  42  52  62  33  43  53  63  HF 0 0 0 0 35 45 55 65         No  Profesores 2       n(Filas)  4       m(Colum nas)  4            Fuente: Autoras En caso de requerirse uno o dos bloques de dos sesiones y una sesión en días diferente, esta sesión estará dentro del intervalo del bloque, a manera de ejemplo: Para la asignatura Biología que requiere tres sesiones semanales el horario establecido seria lunes de 6-8 a.m y jueves 6-7 a.m. de igual forma para el caso de cinco horas semanales los dos bloques se encuentran en el mismo horario. Tabla 3: Combinaciones de acuerdo con la Intensidad INTENSIDAD COMBINACIÓN Una sesión diariamente Tres sesiones semanales Un bloque de dos sesiones y una sesión en días diferentes Cuatro sesiones Dos bloques de dos sesiones en días semanales diferentes Cinco sesiones Dos bloque de dos sesiones y una semanales sesión en días diferentes Fuente: Autoras 3. Luego de tener las posibles franjas horarias se realiza la combinación con las aulas, teniendo en cuenta la capacidad de la misma y la demanda estimada (ANEXO 5) de esta forma se obtiene el M kg . Es decir cada grupo se combina con las aulas que tengan mayor o igual capacidad que el tamaño del grupo. Es importante aclara que en las escuelas, los grupos varían en la cantidad de horas semanales requeridas, sin embargo para la validación del modelo en Xpress se requiere que cada elemento que conforma el conjunto de slots factibles tenga el mismo tamaño, para este caso se tomo el valor máximo requerido semanalmente por los grupos, es 58
  • 59. decir cinco horas, esta misma consideración aplica cuando se establezcan los beneficios y los patrones de tiempo. A manera de ejemplo se tiene dos grupos de intensidades de cuatro y tres horas semanales respectivamente, el primer elemento del conjunto M kg estará definido como se observa en la Tabla 4. Tabla 4. Definición del conjunto de GRUPO   1   2  1  521  131  621  141  M kg 2 531  631 151  0 0 0 521 231 621 241 541 251 641 0 0 0 Fuente: Autoras 4. De acuerdo con la restricción número dos descrita en el modelo matemático se requiere establecer el patrón de tiempo (día y hora) asociada a cada uno de los slot que conforman el conjunto de soluciones factibles M kg , estos patrones se obtienen a partir del algoritmo descrito en el ANEXO 6. 5. Por último se calcula el beneficio asociado a cada Mk de cada uno de los grupos (ANEXO 7), el cual está relacionado, para este caso en particular al tipo de profesor asignado y al número de sesiones semanales requeridas. De esta forma el beneficio está definido como: Beneficio = btipoprofesor + bhorasrequeridas Donde btipoprofesor y bhorasrequeridas puede tomar los siguientes valores: Tabla 5: Valores Establecidos para el cálculo del Beneficio TIPO DE PROFESOR Planta Cátedra Maestría BTIPOPROFESOR 0.5 0.4 0.6 HORAS REQUERIDA BHORASREQUERID AS 3 4 5 0.2 0.3 0.4 59
  • 60. 5.1.1 Escuela Química La escuela de Química cuenta con 68 grupos los cuales imparten sus sesiones de clase en el Edificio Camilo Torres, las características de estos grupos se pueden observar en la Tabla 6. Tabla 6: Características de los Grupos Escuela de Química Número 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Nombre de la asignatura QUIMICA ORGANICA I QUIMICA ORGANICA III QUIMICA BASICA QUIMICA BASICA FISICOQUIMICA FISICOQUIMICA QUIMICA II FISIC0QUIMICA IV QUIMICA II BIOCIENCIAS MEDICAS I BIOCIENCIAS MEDICAS I QUIMICA II QUIMICA II QUIMICA II BIOCIENCIAS MEDICAS I QUIMICA II ANALISIS CUANTITATIVO ANALISIS CUANTITATIVO QUIMICA BASICA QUIMICA BASICA QUIMICA II QUIMICA II QUIMICA BASICA QUIMICA DE LOS POLIMEROS QUIMICA ORGANICA II QUIMICA BASICA INSTRUMENTACION QUIMICA I INSTRUMENTACION QUIMICA I QUIMICA INORGANICA I QUIMICA INORGANICA II BIOQUIMICA Ip 3 3 5 5 4 4 4 3 4 5 5 3 4 3 5 3 4 4 5 5 5 4 4 3 4 5 Capacidad grupo 28 40 44 45 40 40 41 35 44 40 40 40 44 41 44 44 34 39 41 42 40 41 43 32 43 41 3 37 3 3 3 4 24 35 42 31 60
  • 61. 32 Número 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 QUIMICA I 4 42 Nombre de la asignatura QUIMICA I QUIMICA I QUIMICA II QUIMICA I QUIMICA I QUIMICA BASICA QUIMICA I QUIMICA I PUBLICACIONES QUIMICAS QUIMICA I QUIMICA BASICA QUIMICA BASICA QUIMICA BASICA QUIMICA BASICA QUIMICA BASICA Ip 4 4 4 4 4 5 4 4 4 4 5 5 5 5 5 Capacidad grupo 43 48 44 42 42 40 41 43 57 43 41 42 42 42 36 QUIMICA BASICA INSTRUMENTACION QUIMICA II QUIMICA GENERAL QUIMICA GENERAL QUIMICA I QUIMICA BASICA QUIMICA BASICA QUIMICA GENERAL QUIMICA I QUIMICA I QUIMICA II QUIMICA BASICA ETICA QUIMICA I QUIMICA BASICA QUIMICA II BIOQUIMICA I BIOCIENCIAS I BIOCIENCIAS I BIOCIENCIAS I QUIMICA GENERAL 5 42 3 4 4 4 5 5 4 4 4 4 5 4 4 5 4 4 5 5 5 4 40 40 33 45 44 45 43 42 44 45 41 42 32 42 40 48 35 31 36 60 Cuenta con un total de 33 profesores de los cuales 17 son planta, 4 de maestría y 12 cátedras. En la Tabla 7 se relacionan los grupos por profesor. 61
  • 62. Tabla 7: Relación de Grupos por Profesor escuela de Química Número 1 2 3 4 5 Tipo profesor P P P P P 6 7 8 9 10 11 12 13 P P P P P P P P 14 15 16 17 18 19 20 21 P P P P C C C C 22 23 24 25 26 27 28 29 30 31 32 33 C C C C C C C C C C C C Nombre Profesor ALIRIO PALMA ANGELA MONTAÑO CLAUDE EWERT ENRIQUE MEJIA GERARDO BAUTISTA HERNANDO MONCALEANO JAIME CAMARGO JORGE AVILA JORGE RAMIREZ JOSE GUTIERREZ JUAN URBINA LUZ CARREÑO LUZ VARGAS MARIANNY COMBARIZA MARTA NIÑO RODRIGO TORRES ROSA LOPEZ ADOLFO POLO CIRO ROZO ELVIRA TIRADO HECTOR DIAZ JESUS ANDELFO PINILLA JOSE CABALLERO JOSE PINTO LUIS BARBOSA LUIS LAZARO MARIO MACIAS NELSON GUALDRON OLGA CELIS SANDRA CADENA MARIA GONZALEZ NASSER GUERRERO HANS CASTRO N grupos 2 2 3 1 3 4 3 2 3 1 1 1 1 1 2 1 3 1 3 2 1 5 2 2 1 3 1 4 1 2 3 2 1 62
  • 63. Las aulas asignadas a esta escuela tienen las siguientes características. Tabla 8: Características de las aulas escuela de Química Aula 202 203 204 210 211 212 Procesados estos datos el máximo Capacidad 80 42 52 45 45 45 M kg que se obtuvo fue de 90 y el número máximo de slots requeridos es de 5 horas semanales. 5.1.2 Escuela de Física La escuela de Física cuenta con 79 grupos con las siguientes características. Tabla 9: Características de los Grupos Escuela de Física Número 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Nombre de la asignatura FISICA III FISICA III FISICA II OPTICA GEOMETICA Y ONDAS FISICA III FISICA III FISICA I FISICA I FISICA I FISICA II FISICA I FISICA I FISICA I FISICA II FISICA II FISICA I FISICA I FISICA III FISICA III Ip Capacidad grupo 5 36 5 36 5 37 4 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 32 36 36 84 84 42 37 21 42 43 36 36 43 42 36 36 63
  • 64. Número 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 Nombre de la asignatura FISICA III MECANICA FISICA III FISICA III FISICA III FISICA III FISICA III FISICA III FISICA III FISICA II FISICA II FISICA II FISICA II FISICA II MECANICA ANALITICA MECANICA ANALITICA MECANICA ANALITICA FISICA II FISICA II FISICA III FISICA I FISICA II FISICA II FISICA I FISICA II FISICA II FISICA II FISICA II FISICA II FISICA II FISICA I FISICA I FISICA I FISICA II FISICA I FISICA II FISICA III FISICA III FISICA II FISICA II FISICA II FISICA II FISICA III Ip 5 4 5 5 5 5 3 5 3 5 5 5 5 3 4 4 4 5 3 5 5 3 5 5 5 5 5 5 5 3 5 3 3 5 5 5 5 5 3 5 5 5 5 Capacidad grupo 36 41 36 36 36 37 36 36 54 36 37 36 36 36 62 60 61 36 36 36 42 36 37 42 40 36 37 36 36 36 21 46 36 36 42 36 36 36 45 37 37 38 36 64
  • 65. Número 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 Nombre de la asignatura FISICA II FISICA III FISICA II FISICA II FISICA II FISICA II FISICA I FISICA I FISICA I FISICA I FISICA I FISICA I FISICA I FISICA III MECANICA ANALITICA MECANICA ANALITICA MECANICA ANALITICA Ip 3 5 5 5 5 3 5 5 5 3 5 3 3 5 4 4 4 Capacidad grupo 42 36 36 36 36 36 42 42 42 45 21 46 46 36 62 61 61 Cuenta con un total de 35 profesores de los cuales 12 son planta cátedras. En la Tabla 10 se relacionan los grupos por profesor. y 23 Tabla 10 Relación de Grupos por Profesor escuela de Física Número 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Tipo profesor P P P P P P P P P P P P C C C C C Nombre Profesor ANCISAR FLOREZ ARTURO PLATA CARLOS BELTRAN ESPERANZA AGUILAR HAROL PAREDES JADER GUERRERO JAIME MENESES LUIS CASTELLANOS LUIS GARCIA MILTON FLOREZ RAFAEL CABANZO RAFAEL TORRES ALEJANDRO MARTINEZ ALVARO BARRERA ANTONIO GUTIERREZ CESAR RIVEROS CESAR SARMIENTO N grupos 2 2 2 2 3 2 1 3 1 2 1 5 2 1 4 3 3 65
  • 66. Tipo profesor Número 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 C C C C C C C C C C C C C C C C C C Nombre Profesor CRISTIAN ARIZA-ESPERANZA AGUILAR ELY DANNIER NIÑO FABIO LORA FERNANDO DURAN HERNANDO ALTAMAR JADER GONZALEZ JAVIER LOPEZ JERSON REINA JOSE HERRERA JOSE PARRA JOSE RIZZO JUAN BARRIOS LIKIDCEN LOPEZ MAO MURILLO MIGUEL PARRA OMAR ESPITIA PAOLO OSPINA YESIT GARCIA N grupos 1 2 1 1 1 4 1 2 2 1 2 5 2 4 4 3 1 3 Las aulas asignadas a esta escuela tienen las siguientes características. Tabla 11: Características de las aulas escuela de Física Aula Capacidad 116 60 403 50 404 50 405 50 201 80 101 180 102 60 Procesados estos datos el máximo M kg que se obtuvo fue de 210 y el número máximo de slots requeridos es de 5 horas semanales. 5.1.3 Escuela de Biología La escuela de Biología cuenta con características. 42 grupos con las siguientes 66
  • 67. Tabla 12: Características de los Grupos Escuela de Biología Número 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 Nombre de la asignatura BIOLOGIA GENERAL BIOLOGIA GENERAL INTRODUCCIÓN A LA INVESTIGACIÓN EVOLUCIÓN BOTANICA ll FLORISTICA lll ZOOLOGIA ll ETICA GENETICA MICROBIANA lll ANALISIS DE LA EXPRESION GENETICA BIOLOGIA CELULAR FISIOLOGIA VEGETAL BIOLOGIA GENERAL BIOLOGIA PARA INGENIEROS ECOLOGIA DE LAS AVES INTRODUCCIÓN A LA INVESTIGACIÓN BIOLOGIA DEL DESARROLLO BIOLOGIA PARA GEOLOGIA BIOLOGIA PARA GEOLOGIA LIMNOLOGIA I ECOLOGIA ll BIOLOGIA CELULAR BIOLOGIA PARA INGENIEROS BIOLOGIA PARA INGENIEROS BIOLOGIA CELULAR BIOLOGIA PARA INGENIEROS BIOLOGIA PARA INGENIEROS BIOLOGIA BIOLOGIA FISIOLOGIA ANIMAL BIOLOGIA PARA INGENIEROS BIOLOGIA PARA INGENIEROS BIOLOGIA CELULAR BIOLOGIA PARA INGENIEROS BIOLOGIA PARA INGENIEROS BIOLOGIA PARA INGENIEROS BIOLOGIA PARA INGENIEROS BIOLOGIA PARA INGENIEROS BIOLOGIA PARA INGENIEROS BIOLOGIA PARA INGENIEROS BIOLOGIA PARA INGENIEROS BIOLOGIA CELULAR Ip 5 5 5 5 5 5 5 5 5 Capacidad grupo 23 30 20 17 33 20 27 25 20 5 5 5 5 5 5 5 5 5 5 5 5 5 2 2 5 2 2 5 5 5 5 2 5 2 2 2 5 2 2 5 5 5 20 30 25 27 30 20 20 27 35 25 20 23 41 26 35 35 37 32 32 32 25 37 37 40 39 36 36 29 25 38 36 37 34 67
  • 68. Cuenta con un total de 20 profesores de los cuales 11 son planta y 9 cátedras. En la Tabla 13 se relacionan los grupos por profesor. Tabla 13: Relación de Grupos por Profesor escuela de Biología Número 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Tipo profesor P P P P P P P P P P P C C C C C C C C C Nombre Profesor DAGOBERTO ARRIETA DANIEL MIRANDA HUMBERTO GARCIA IVAN GUERRERO JAVIER RONDON JORGE FUENTES JORGE HERNANDEZ JOSE MORENO MARTHA RAMIREZ ROSA GAVILAN VICTOR SERRANO ADRIANA JEREZ ALFONSO VILLALOBO ALICIA ROJAS BEATRIZ GUERRA GERMAN PATIÑO HENRRY SUAREZ JUAN CHACON JUAN GUTIERREZ NASSER GUERRERO N grupos 2 2 2 1 1 1 3 3 2 3 1 1 3 2 2 1 3 3 3 3 Las aulas asignadas a esta escuela tienen las siguientes características. Tabla 14: Características de las aulas escuela de Biología AULA 103 401 409 410 Procesados estos datos el máximo CAPACIDAD 60 45 45 45 M kg que se obtuvo fue de 80 y el número máximo de slots requeridos es de 5 horas semanales. 68
  • 69. 5.1.4 Escuela Matemáticas La escuela de Matemáticas cuenta con 148 grupos los cuales imparten sus clases en el Edificio Camilo Torres, las características de estos grupos se pueden observar en la Tabla 15. Tabla 15: Características de los Grupos Escuela de Matemáticas Número 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 Nombre de la asignatura CALCULO I CALCULO I ALGEBRA LINEAL ll ALGEBRA LINEAL ll CALCULO lll ECUACIONES DIFERENCIALES GEOMETRIA EUCLIDIANA CALCULO ll CALCULO lll CALCULO lll ECUACIONES DIFERENCIALES ECUACIONES DIFERENCIALES ANALISIS MATEMATICO l MATEMATICA BASICA ll ECUACIONES DIFERENCIALES CALCULO I ECUACIONES DIFERENCIALES CALCULO lll CALCULO lll CALCULO lll ALGEBRA LINEAL ll TEORIA DE CONJUNTOS ALGEBRA LINEAL l CALCULO I CALCULO I ALGEBRA LINEAL l ALGEBRA SUPERIOR ALGEBRA LINEAL l ECUACIONES DIFERENCIALES DIDACTICA DEL CALCULO TALLER DE LENGUAJE l CALCULO lll CALCULO lll ECUACIONES DIFERENCIALES Ip 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 Capacidad grupo 39 41 28 35 29 33 29 34 33 35 35 34 22 30 35 40 35 34 30 35 34 15 33 40 40 27 37 34 35 13 52 35 33 33 69
  • 70. Número 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 Nombre de la asignatura ECUACIONES DIFERENCIALES ECUACIONES DIFERENCIALES TALLER DE LENGUAJE ll ALGEBRA LINEAL l ALGEBRA LINEAL l ALGEBRA LINEAL l ECUACIONES DIFERENCIALES ECUACIONES DIFERENCIALES ECUACIONES DIFERENCIALES DIDACTICA DE LA ARITMETICA Y EL ALGE ALGEBRA LINEAL l CALCULO ll CALCULO ll CALCULO lll CALCULO lll ALGEBRA LINEAL l ALGEBRA LINEAL l CALCULO lll ALGEBRA MODERNA ALGEBRA MODERNA CALCULO ll CALCULO lll CALCULO lll CALCULO ll ALGEBRA SUPERIOR CALCULO ll CALCULO ll CALCULO ll ALGEBRA LINEAL l CALCULO ll CALCULO ll ALGEBRA LINEAL l ALGEBRA LINEAL l ALGEBRA LINEAL l CALCULO I CALCULO I CALCULO I CALCULO I ALGEBRA LINEAL l MATEMATICA ECONOMICA l MATEMATICA ECONOMICA l CALCULO I Ip 4 4 4 4 4 4 4 4 4 Capacidad grupo 35 30 30 37 33 29 39 36 41 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 30 32 33 36 38 37 36 36 35 15 27 30 30 31 34 30 33 33 35 29 31 32 39 40 32 40 40 40 40 29 39 37 40 70
  • 71. Número 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 Nombre de la asignatura CALCULO I CALCULO I CALCULO ll ALGEBRA LINEAL l CALCULOlll ECUACIONES DIFERENCIALES MATEMATICAS l CALCULO I CALCULO I ALGEBRA LINEAL l ESTADISTICA ECONOMICA ESTADISTICA ECONOMICA ALGEBRA LINEAL l CALCULO I CALCULO I CALCULO I CALCULO ll CALCULO ll ALGEBRA LINEAL l ALGEBRA LINEAL l CALCULO I CALCULO I ALGEBRA LINEAL l CALCULO I ALGEBRA SUPERIOR ALGEBRA LINEAL l ALGEBRA LINEAL l CALCULOlll MATEMATICA ECONOMICA ll MATEMATICA ECONOMICA ll MATEMATICA ECONOMICA lll FUNDAMENTACION DIDACTICA CALCULO ll CALCULO ll CALCULO ll CALCULO I CALCULO I CALCULO I ALGEBRA LINEAL l ALGEBRA LINEAL l CALCULO I CALCULO I ALGEBRA LINEAL l Ip 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 Capacidad grupo 40 40 35 28 37 34 35 40 40 39 33 33 38 40 40 40 40 31 35 33 40 40 33 40 15 34 27 36 35 35 40 23 30 31 31 40 40 40 29 29 40 40 35 71
  • 72. Número 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 Nombre de la asignatura CALCULO I CALCULO I CALCULO I CALCULO I CALCULO I CALCULO I CALCULO I ECUACIONES DIFERENCIALES ECUACIONES DIFERENCIALES ECUACIONES DIFERENCIALES CALCULO I CALCULO lll CALCULO lll PSICOLOGIA DEL APRENDIZAJE PSICOLOGIA EDUCATIVA CALCULO I CALCULO I CALCULO I SEMINARIO l HISTORIA DE LA PEDAGOGIA SEMINARIO l HISTORIA DE LA PEDAGOGIA CALCULO ll CALCULO ll CALCULOlll CALCULO lll CALCULO ll CALCULO ll CALCULO ll ALGEBRA LINEAL l ALGEBRA LINEAL ll Ip 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 Capacidad grupo 40 40 40 40 40 40 40 40 34 38 40 35 39 21 21 40 40 40 4 31 4 4 4 4 4 4 4 4 4 4 30 35 37 37 34 32 35 31 34 33 Cuenta con un total de 57 profesores de los cuales son 20 planta, 3 de maestría y 34 cátedras. En la Tabla 16 se relacionan los grupos por profesor. Tabla 16: Relación de Grupos por Profesor escuela de Matemáticas Tipo profesor Número 1 P 2 3 P P Nombre Profesor ARNOLDO TEHERAN CARLOS RODRÍGUEZ CAROLINA MEJÍA N grupos 4 3 1 72
  • 73. Tipo profesor Número 4 5 P P 6 P 7 P 8 9 10 P P P 11 12 13 14 15 16 P P P P P P 17 P 18 19 20 21 22 23 24 P P P C C C C 25 26 27 28 29 C C C C C 30 31 32 33 34 35 36 37 38 C C C C C C C C C 39 C Nombre Profesor CLAUDIA GRANADOS EDILBERTO REYES ELDER VILLAMIZAR GILBERTO ARENAS GILDARDO GUZMÁN HÉCTOR HIGUERA JORGE FIALLO JORGE VILLAMIZAR JOSÉ MAYORGA JULIO CARRILLO LUIS OÑATE RAFAEL APONTE RAFAEL CASTRO RAFAEL ISAAC RICARDO MONTURIOL SONIA SABOGAL WILSON OLAYA ALBERTO MACÍAS CARLOS FAJARDO CARLOS BAUTISTA CESAR LOAIZA CLAUDIA MONTAÑEZ DANIEL MORENO DANIEL RAMIREZ DEISY VILLALBA DORIS GONZALEZ ENRIQUE ESCOBAR FERNANDO PÉREZ GERMÁN JAIMES GONZALO DÍAZ HILDA DUARTE HUGO GARCÍA JORGE CUPABAN JORGE NORIEGA JORGE PRADA LEONARDO VIRVIESCAS N grupos 4 2 1 2 4 4 1 2 3 2 4 3 3 2 4 2 3 3 2 4 2 4 4 2 2 3 2 2 2 3 2 3 3 3 3 1 73
  • 74. Tipo profesor Número 40 41 42 43 44 45 46 47 48 49 C C C C C C C C C C 50 51 52 C C C 53 54 55 C C C 56 C 57 C Nombre Profesor LIBARDO MORAN LIGIA ARGUELLO LUIS BARRERA LUIS HIJUELOS LUIS ORTIZ MARÍA GOMEZ MARCO MARTÍNEZ MARISELA ARDILA MIGUEL ARAQUE MIGUEL SILVA NÉSTOR QUIÑONEZ OSCAR LOZANO PATRICIA DÍAZ ROSARIO IGLESIAS SANDRO BASTO SOREN ARENAS STERLING CASTAÑEDA ALEXANDER REATIGA N grupos 3 1 4 2 2 3 2 3 2 3 1 2 2 3 2 4 3 2 Las aulas asignadas a esta escuela tienen las siguientes características. Tabla 17: Características de las aulas escuela de Matemáticas AULA 302 303 304 305 311 301 312 313 413 101 Procesados estos datos el máximo CAPACIDAD 50 50 50 50 40 60 50 35 80 40 M kg que se obtuvo fue de 32 y el número máximo de slots requeridos es de 4 horas semanales. 74
  • 75. 5.2 Modela Matemático en Xpress-MP El modelo matemático que se planteó en el capítulo cuatro, se implementó en Xpress-MP. El código se muestra en el ANEXO 8. A continuación se harán algunas aclaraciones necesarias para la implementación en esta herramienta. Los parámetros de entradas se encuentran en un archivo plano (.dat) el cual contiene la siguiente información: • GRUPOS:[ Se enumeran la cantidad de grupos que se requieren asignar] • SLOTS:[ Slots con los que se cuentan en una instancia en particular, el tamaño de este conjunto estará definido por la cantidad de aulas asignadas a la escuela] • PROFESORES:[ Se debe enumerar la cantidad de profesores asignados a los grupos] • PATRONT: [ Patrones de tiempos asociados a los slots, recordemos que un patrón de tiempo está definido como día y hora, por lo tanto este es un dato constante para todas las escuelas] • PARAM_PROF: [ Esta definido como una matriz que tendrá el mismo tamaño en filas que el conjunto de profesores por dos columnas, en esta matriz se establecen el rango de los grupos asignados a dicho profesor, es decir, si el profesor uno tiene asignado 3 grupos y el profesor dos 4, esta matriz estará definida de la siguiente manera: ⎡1 ⎢4 ⎣ 3⎤ 7⎥ ⎦ • PARAM_GRUP: [ Esta definido como una matriz de dos filas y tantas columnas como número de grupos, que contiene en la primera fila la cantidad de horas semanales requeridas por el grupo y en la segunda el máximo M kg para cada grupos] 75
  • 76. • SUBC_SLOTS:[ Esta definida como una matriz de tantas columnas como grupos y la cantidad de filas se determinan a partir de la multiplicación del máximo número de slot requerido por el máximo número de subconjuntos factibles, esta matriz contiene el conjunto de M kg establecido para cada grupo] • SUBC_PT:[ Matriz de igual tamaño que SUBC_SLOTS, contiene los patrones de tiempos asociados a los subconjuntos de slots factibles que se encuentran en SUBC_SLOTS] • BENEFICIOS: [ Esta matriz tendrá tantas columnas como grupos y tantas filas como el máximo número de subconjuntos factibles] Todos los elementos del bloque declarations son dinámicos, pues al momento de su declaración no se conoce su tamaño. El tamaño de los elementos que allí se declaran, solo se definen hasta la ejecución de los bloques de initializations. Las instrucciones finalize (GRUPOS), finalize (SLOTS), finalize (PROFESORES), finalize (PATRONT), convierten los respectivos conjuntos dinámicos, en conjuntos constantes. De esta manera, los arreglos que estos conjuntos indexados, se vuelven estáticos. Siempre que sea posible es mejor usar arreglos estáticos que dinámicos, porque Mosel maneja más eficientemente los estáticos. 76
  • 77. 6 RESULTADOS COMPUTACIONALES A partir de los datos de entrada organizados de acuerdo con lo mencionado en el apartado de preprocesamiento de datos y el modelo programado en Xpress. Las pruebas computacionales que se resolvieron corresponden a cuatro instancias relacionadas cada una de ellas con las escuelas pertenecientes al Edificio Camilo Torres de la Universidad Industrial de Santander. La presentación de los resultados y validación de los mismos se hace para cada una de las instancias, para las cuales se describen las características particulares presentadas en la ejecución. Para esto Xpress cuenta con una herramienta llamada RUN BAR o barra de ejecución, la cual agrupa fichas o paneles: Output/Input, Stats, Matrix, Objective, MIP search, BB tree, SLP progress, User graph como se observa en la Figura 3. Xpress Figura 3. Xpress Fuente: Xpres-MP Las cuales permiten hacer seguimiento a la ejecución de los resultados cuantitativos y gráficos. El análisis de los resultados que se presentaran para cada una de las instancias, se apoya en las fichas relacionadas con Ouput/Input y MIP Search, en las cuales se muestran los resultados impresos y el comportamiento de la búsqueda respectivamente. El Gap relaciona la aproximación porcentual que existe respecto a la solución óptima, siendo 0% el resultado del mismo en una solución óptima. Para este caso particular se establece como criterio de parada un GAP inferior a 10% y además de este criterio también es posible tener en cuenta, el tiempo en el cual no se presenta variación en el valor de la función objetivo que considera para estas instancias una hora como tiempo mínimo. En el desarrollo de la validación del modelo se verifica que las restricciones propuestas se hayan desarrollado de la forma esperada. Para hacer esta evaluación se procede a determinar la ocupación de cada salón según los grupos asignados, es decir se presenta el salón con las franjas horarias (ver 77
  • 78. Figura 4) las cual se van cubriendo a medida que se ingresan los grupos, que están relacionados con los profesores a través del color del bloque, lo cual se usa como método de verificación visual. A través de este proceso se podrá evidenciar que no se tenga más de un subconjunto de slots factibles asignado por grupo, que los períodos del salón no se asignen más de una vez y que el profesor no presente conflicto. Figura 4. Representación Horaria    6_7  7_8  8_9  9_10  10_11 11_12 12_13 13_14 14_15 15_16 16_17 18_19 19_20 20_21 LUNES                                                              SALÓN 2 MIÉRCOLES                   MARTES                                      VIERNES  JUEVES                              Fuente: Autoras Las instancias se generaron en un computador con procesador Intel Celeron de 2.16 GHz y 250 MB de RAM 6.1 Escuela de Física La ejecución del modelo de la instancia de generó los resultados presentados en la Figura 5 y la Tabla 18. Cabe señalar que los resultados no corresponden a la solución óptima. Esto se puede comprobar si se observa el valor arrojado por el Gap el cual es superior al 0%, esto ocurre en instancias donde se requiere realizar un alto número de iteraciones, por eso se considero apropiado un Gap de 7.5% el cual se obtiene en un tiempo de ejecución de 1.9 horas, considerándose este como un tiempo computacional prudente (Figura 7). Dado que por un rango de 2.6 horas el valor del Gap se mantuvo constante, se detuvo la ejecución del programa. La cantidad de soluciones encontradas fueron 2, por ende los resultados corresponden a la segunda solución que 78
  • 79. alcanza un valor de la función objetivo de 48.7 la cual fue encontrada en un tiempo de ejecución de 1.9 horas. Figura 5. Resultados Escuela de Física Fuente: Xpress-MP De acuerdo con la solución arrojada, se observa que se asignaron 67 grupos de un total de 79, es decir se alcanzo un 84.81% de asignaciones. Los datos del panel stats permiten observar que la función objetivo para la solución del problema dual simplex (cota superior) es de 51.79 y de acuerdo a los datos de la instancia el máximo beneficio que se podría obtener si se ejecutan el total de asignaciones es de 54.3, es decir el modelo en la solución óptima no alcanzaba al número total de asignaciones, esto debido a que el espacio de búsqueda se encuentra limitado y no considera asignaciones de sesiones de clase de un grupo en diferentes aulas, de la misma forma al establecer las combinaciones de acuerdo con la intensidad no se abarcan el total del espectro de las posibilidades. En relación con los datos dados por la oficina de Admisiones y Registro Académico, 6 grupos se encuentran asignados bajo estas características, tres cuyas sesiones de clase se imparten en aulas diferentes y los restantes con horarios no contemplados en las combinaciones. Por esta razón al realizarse la asignación manual la cantidad de grupos asignados es superior a la realizada por el algoritmo. 79
  • 80. Figura 6. Stats Escuela de Física Fuente: Xpress-MP De acuerdo con la solución arrojada por Xpress la asignación en las aulas asignadas para esta escuela quedará como se observa en la Figura 8. Figura 7. MIP Search escuela de Física Fuente: Xpress 80
  • 81. Figura 8. Asignación Horaria para los Salones de la Escuela de Física 81
  • 82. 82
  • 83. Tabla 18. Resultados Escuela de Física GRUPO 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 SUBCJTO 30 23 151 150 144 57 102 18 52 N/A 84 5 188 67 N/A 106 81 40 204 199 3 144 94 N/A 80 143 10 60 17 147 N/A 196 N/A 7 21 N/A 20 33 34 19 33 28 27 29 39 150 125 125 28 3 122 212 116 235 915 1022 223 426 414 222 312 216 335 1015 1122 233 526 514 SLOTS 132 232 126 245 935 1032 153 436 424 152 332 226 255 945 1132 253 456 524 355 1045 1052 1126 911 1017 316 1226 921 1117 416 1136 1021 1037 336 1236 941 1057 346 1146 1041 1157 446 214 913 324 227 117 323 1116 914 314 1013 334 247 217 423 1216 924 224 933 434 347 137 343 1156 1024 244 953 354 257 237 443 344 1053 454 357 147 934 1034 513 1125 1121 1214 912 1115 613 1225 1221 1234 1012 1155 523 1135 1141 1334 922 1255 623 1235 543 1145 1244 942 1344 1042 417 517 447 457 557 926 1327 1026 1427 946 1337 1046 1437 1321 527 1127 1112 1333 115 313 113 114 545 315 415 111 311 1331 627 1227 1212 1433 215 333 213 134 555 325 515 211 411 1431 537 1137 1142 1343 125 433 123 234 655 425 435 121 321 252 242 556 444 547 1147 1152 647 1247 1252 225 353 143 154 155 453 243 254 345 535 221 421 445 455 151 341 83
  • 84. GRUPO 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 SUBCJTO N/A 4 1 N/A 5 46 43 142 182 N/A N/A 19 13 37 6 73 22 72 34 42 N/A N/A 91 124 54 18 9 13 11 SLOTS 521 1211 621 1241 541 1341 322 1014 1124 1215 917 342 1114 1224 1245 927 1011 511 317 431 1113 231 1213 1222 512 534 516 136 412 1326 1336 936 1251 1351 442 1044 1134 1345 1027 352 1144 1154 452 1054 1254 947 1047 1111 551 327 441 1133 331 1313 1232 612 1031 651 427 451 1233 241 1223 1242 542 1131 1051 337 437 1143 251 1323 1243 351 1253 552 652 554 616 236 422 1426 1436 1036 654 546 146 522 1346 1356 956 246 432 1446 1456 1056 156 532 Fuente: Xpress-MP 6.2 Escuela de Biología A diferencia de la escuela de física esta escuela, encuentra una solución óptima en un tiempo de 2 segundos, con un valor en la función objetivo de 25.7 como se observa en la Figura 9. Esto debido a que la cantidad de grupos y salones que se requieren asignar, respecto a las otras escuelas que se encuentran en el Edificio Camilo Torres es menor, por lo tanto el número de iteraciones que debe realizar es significativamente más pequeño. En comparación con la escuela de física el número de iteraciones es del 0.0729%. 84
  • 85. Figura 9. Stats Escuela de Biología Fuente: Xpress-MP La ejecución del modelo de la instancia de Biología generó los resultados presentados en la Figura 10 y la Tabla 19. Figura 10. Resultados Escuela de Biología Fuente: Xpress-MP 85
  • 86. Tabla 19. Resultados Escuela de Biología GRUPO SUBCJTO SLOTS 1 19 323 423 333 433 2 27 533 633 543 643 3 6 521 621 551 651 4 15 522 622 552 652 5 48 1334 1434 1344 1444 6 4 221 321 241 341 7 24 544 644 554 654 8 44 144 154 254 9 36 1144 1154 1254 10 27 513 613 523 623 11 38 514 614 524 624 12 17 512 612 532 632 13 30 432 442 542 14 26 112 122 222 15 10 114 214 124 224 16 16 324 424 344 444 17 20 724 824 744 844 18 59 1224 1234 1244 19 6 1021 1121 1131 20 6 922 1022 932 1032 21 3 531 631 541 641 22 4 931 1031 941 951 1051 23 17 212 232 332 24 14 1122 1222 1142 25 6 331 431 351 451 411 26 5 1311 1411 1331 27 8 1321 1421 1431 28 19 924 1024 954 1054 29 18 1233 1333 1243 1343 30 10 1314 1414 1324 1424 31 33 213 313 233 32 5 211 311 231 33 16 1332 1432 1322 34 10 1241 1341 1351 35 8 121 151 251 36 21 123 223 133 37 19 352 452 412 38 29 353 453 413 39 37 314 414 454 40 76 734 834 854 41 38 1312 1342 1442 42 26 1313 1413 1323 1422 1412 1423 1433 Fuente: Xpress 86
  • 87. De acuerdo con la solución arrojada por Xpress la asignación en las aulas asignadas para esta escuela quedaran como se observa en la Figura 12. 6.3 Escuela de Química La escuela de química presenta un comportamiento similar a la escuela de Física, por las características de la instancia la búsqueda de la solución óptima conduce a un tiempo computacional ineficiente. Por consiguiente esta instancia se ejecuto durante 3.2 Horas, en las cuales encontró 10 soluciones y no presento cambios a partir del minuto 32 (Figura 11) donde se obtuvo un Gap de 3,75% (Figura 13). Figura 11.MIP Escuela de Química Fuente: Xpress En la Figura 14 y la Tabla 20 se presentan los resultados de la solución número 10, la cual alcanzó un Beneficio de 38,3 frente a 40,76 valor arrojado para la cota superior. Se observa que se asignan 59 grupos y el porcentaje de asignación fue de 86,76%. 87
  • 88. Figura 12. Asignación Horaria para los Salones de la Escuela de Biología 88
  • 89. Los datos del panel stats permiten observar que la función objetivo para el problema dual es de 40,76 y de acuerdo a los datos de la instancia el máximo beneficio que se podría obtener si se ejecutan el total de asignaciones es de 45,3, es decir el modelo en la solución óptima no alcanzaba al número total de asignaciones, esto debido a que el espacio de búsqueda se encuentra limitado y no considera asignaciones de sesiones de clase de un grupo en diferentes aulas, de la misma forma al establecer las combinaciones de acuerdo con la intensidad no se abarcan el total del espectro de las posibilidades. En relación con los datos dados por la oficina de Admisiones y Registro Académico 10 grupos cuyas sesiones de clase se imparten en aulas diferentes. Por esta razón al realizarse la asignación manual la cantidad de grupos asignados es superior a la realizada por el algoritmo. Figura 13. Stats Escuela de Química Figura 14. Output Escuela de Química Fuente: Xpress 89
  • 90. Tabla 20. Resultados Escuela de Química SECCION SUBCJTO 1 75 2 50 3 7 4 10 5 20 6 58 7 76 8 16 9 2 10 9 11 N/A 12 33 13 61 14 19 15 24 16 67 17 77 18 29 19 32 20 38 21 12 22 7 23 25 24 20 25 6 26 10 27 13 28 70 29 3 30 N/A 31 20 32 13 33 52 34 24 35 11 36 47 37 5 38 28 39 7 40 2 41 1 445 334 513 914 1022 1115 436 223 521 1123 455 434 613 944 1122 1215 536 233 621 1223 SLOTS 555 354 523 1044 1032 1155 456 333 531 1133 433 326 1212 213 136 126 332 415 1016 1142 422 225 1024 241 932 323 426 321 443 336 1312 313 236 226 432 515 1046 1242 522 235 1124 341 942 423 446 331 453 346 1232 243 156 146 352 425 1146 1152 442 335 1034 251 1042 343 546 431 525 212 516 533 215 134 911 512 624 1121 1111 625 312 616 633 315 234 1011 612 724 1221 1211 545 222 526 543 255 154 921 532 634 1141 1151 553 954 1132 1255 556 631 1233 653 1054 1143 0 253 353 246 452 435 1056 1252 542 245 535 1156 0 351 952 645 322 626 643 355 254 1021 632 734 1241 1251 1052 552 90
  • 91. SECCION SUBCJTO 42 15 43 46 44 88 915 45 N/A 46 N/A 47 18 48 N/A 49 2 50 2 51 11 52 26 53 N/A 54 38 55 4 56 63 57 2 58 29 59 50 60 6 61 4 62 N/A 63 48 64 14 65 N/A 66 N/A 67 11 68 1 931 214 1015 1031 224 925 SLOTS 941 324 955 1025 1125 1035 1045 421 142 816 1134 451 242 916 1234 551 152 846 1144 252 946 1244 1324 913 926 411 424 614 216 414 1334 1013 1026 511 524 644 316 514 1434 933 936 441 454 744 256 444 1344 1033 1036 541 554 654 356 544 1235 1213 1335 1313 1245 1253 1345 1353 1226 121 1236 221 1336 131 1246 231 1041 244 1055 344 1145 1444 754 1346 Fuente: Xpress-MP De acuerdo con la solución arrojada por Xpress en las aulas asignadas para esta escuela quedará como se observa en la Figura 15. 6.4 Escuela de Matemáticas La escuela de matemáticas es la instancia que presenta mayor cantidad grupos a asignar, respecto a las otras escuelas mencionadas anteriormente, de la misma forma aunque es la escuela que contiene mayor número de salones asignados, estos recursos son limitados pues lo demanda es superior. De acuerdo con la información dada por el director de escuela de matemáticas, es necesario llegar a un acuerdo con las otras escuelas que se encuentran en el Edificio Camilo Torres a fin de realizar la mayor asignación posible dentro de este edificio. 91
  • 92. Figura 15. Asignación Horaria para los Salones de la Escuela de Química 92
  • 93. 93
  • 94. Sin embargo con la información dada por la Oficina de Admisiones y Registro Académico se puedo establecer que 54 de los 148 grupos con los cuales cuenta esta escuela, se encuentran asignados en salones diferentes e incluso en Edificios como Ingeniería Mecánica o industrial. Por lo tanto se observa un comportamiento similar a las escuelas de Física y Química debido a las características de la instancia, la búsqueda de la solución óptima conduce a un tiempo computacional ineficiente. Por consiguiente esta instancia se ejecuto durante 3.2 Horas, en las cuales encontró 7 soluciones y no presento cambios a partir del minuto 20 (Figura 16) donde se obtuvo un Gap de 7,7259% (Figura 17). Figura 16. Stats Escuela de Matemáticas Fuente: Xpress Es importante mencionar que estas 108 asignaciones se dan dentro del Edificio Camilo Torres, manteniendo el mismo salón entre las sesiones semanales que requiere un grupo, esta asignación es superior a la realizada por la Escuela manualmente. 94
  • 95. Figura 17. MP seach Escuela de Matemáticas Fuente: Xpress En la Tabla 21 y Figura 18 se presentan los resultados de la solución número 7, la cual alcanzó un Beneficio de 82.9 frente a 91.3 de la cota superior calculad. Se observa que se asignan 108 grupos y el porcentaje de asignación fue de 72.97%. Tabla 21. Resultados Escuela de Matemáticas GRUPO 1 2 3 4 5 6 7 8 9 10 11 12 13 14 SLOTS N/A 524 N/A 323 N/A 331 934 314 N/A 113 522 311 N/A N/A 624 554 654 423 333 433 431 1034 414 351 954 344 451 1054 444 213 622 411 143 542 341 243 642 441 95
  • 98. GRUPO 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 517 1110 1339 1139 N/A 1127 919 N/A 11410 1317 116 3110 119 N/A 916 1117 929 N/A 318 1116 1329 1318 13310 1328 N/A 337 328 N/A 329 529 316 118 11110 1326 N/A 9210 N/A N/A N/A 1129 927 N/A N/A 126 SLOTS 617 2110 1439 1239 557 1410 1359 1159 657 2410 1459 1259 1227 1019 1137 959 1237 1059 12410 1417 216 4110 219 11510 1337 136 3310 149 12510 1437 236 4310 249 1016 1217 1029 936 1147 949 1036 1247 1049 418 1216 1429 1418 14310 1428 338 1126 1349 1338 13510 1348 438 1226 1449 1438 14510 1448 437 428 347 358 447 458 429 629 416 218 12110 1426 349 549 326 128 11310 1336 449 649 426 228 12310 1436 10210 9510 10510 1229 1027 1149 947 1249 1047 226 146 246 98
  • 99. GRUPO 147 148 1347 13110 SLOTS 1447 1357 14110 13210 1457 14210 Fuente: Xpress Se puedo observa en todas las instancias que algoritmo formulado cumple con las restricciones planteadas en todos los casos. De manera que no se presenta conflicto de slots, aulas ni profesores y los tiempos computacionales son inferiores a la dedicación que actualmente se requiere, que en promedio de acuerdo con la información suministrada por las personas encargadas de este proceso se encuentra alrededor de quince días. Es importante aclarar que para hallar el tiempo total del proceso se requiere tener en cuenta el reprocesamiento de los datos, que varía en cada una de las instancias, debido a que la cantidad de profesores no es un parámetro constante y recordemos que como dato de entrada se requiere la matriz de horarios factibles del profesor. 99
  • 100. Figura 18. Asignación Horaria para los Salones de la Escuela de Matemáticas 100
  • 101. 101
  • 102. 102
  • 103. CONCLUSIONES Y RECOMENDACIONES • El problema de Timetabling se ha abordado a través del tiempo desde diferentes enfoques, desde la teoría de grafos que se considera el punto de partida para solucionar el problema de asignación de recursos limitados, hasta identificarse las técnicas modernas que tratan de modelar el problema con la combinación de diferentes métodos los mas antiguos aun siguen vigentes y han evolucionado para formar parte de las estructuras hibridas, que usualmente están conformadas por los llamados métodos meta -heurísticos, los cuales se consideran la mejor propuestas para la resolución de los problemas NP-Completos. • Durante la recopilación y análisis de la información se evidencio que el proceso no se encuentra estandarizado, lo cual dificulta establecer los parámetros e información que se requieren para generar el horario. Por lo tanto es recomendable estandarizar el proceso. • Se implemento un modelo matemático que involucró las características propias de cada instancia, asegurando su adaptabilidad a las escuelas en cuestión. Con el fin de llevar este modelo a las demás instancia universitarias es necesario evaluar la necesidad de tener salones de preferencia o candidatos según las características que tengan y no tan solo la capacidad, además de considerar dentro del beneficio nuevos factores como la distancia recorrida, utilización del salón, entre otros que se identifiquen. • Se uso como método de optimización el modelamiento exacto, donde se evidencio que el problema se resuelve rápidamente para las instancias pequeñas como biología pero que presenta deficiencias al considerar instancia mayores, se recomienda continuar la línea de investigación aplicando una metaheurística ya sea esta trayectorial o poblacional con el fin de llegar a una solución de forma eficiente. Los algoritmos que generan las combinaciones pueden ser útiles en la generación de la solución inicial para la resolución por este tipo de métodos. • Esta línea de investigación presenta gran acogida a nivel mundial, específicamente las instituciones universitarias han llegado a nivel de implementación apoyados en la plataforma tecnológica, por lo tanto consideramos que la Universidad Industrial de Santander puede desarrollar este tipo de proyecto en forma interdisciplinaria, mejorando considerablemente el proceso, el cual actualmente consume recursos considerables por parte de cada una de las escuelas. 103
  • 104. BIBLIOGRAFIA [1] Burke E., Jackson K., Kingston J., Ware R. Automated university timetabling: The state of the art. The Computer Journal. Vol. 40, No. 9 (1997); p. 565-571. [2] Deris S, Omatu S., Ohta H., P.A.B.D. Samat. University timetabling by constraint-based reasoning: A Case Study, The Journal of the Operational Research Society, Vol. 48, No. 12. (Dec., 1997), pp. 1178-1190 [3] Lewis R. A survey of metaheuristic-based techniques for university timetabling problems. OR Spectrum, (2007). [4] Carter M. y Laporte G. Examination timetabling: Algorithmic strategiaes and applications. Journar of the Operational Reserarch Society. Vol.47, No 3(1996); p.373-383 [5] Burke E. y Petrovic S. Recent research directions in automated timetabling. European Journal or Operational Research. Vol. 140, No. 2 (2002); p. 266-280. [6] Castro E. Heurística basada en programación entera binaria para el problema de asignación de salones en la Universidad de los Andes. Tesis de Maestría, Universidad de los Andes (2005). [7] Marte M. Models and Algorithms for School Timetabling-A ConstraintProgramming Approach. Tesis de Doctorado, Universidad de Munich (2002). [8] Wren, A. Scheduling, timetabling and rostering – A special relationship? In: Burke and Ross (1996) pp. 46–75 [9] J. Kingston E. Burker, K. Jackson. Automated timetabling: The state or art. Technical report, Departament of Computer Science, University of Nottingham, Uk,, 1996 [10] Schimmelpfeng K. y Helber S. Application of a real world university course timetabling model solved by integer programming. OR Spectrum, No 29 (2007). P. 783-803 [11] Schaerf A. A survey of automated timetabling. Artificial Intelligence Review. Vol. 13, No. 2 (1999); p. 87-127. [12] Michael W. Carter; Craig A. Tovey. When is the classroom assignment problem hard, Operations Research, Vol. 40, pp. S28-S39. [13] Murray K, Muuller T, y Rudova H, Modeling and Solution of a Complex University Course Timetabling Problem. Lecture Notes in Computer Science, Lecture Notes in Computer Science. (2007); p.189-209 104
  • 105. [14] Mulvey J. A classroom/time assignment model. European Journal of Operational Research. Vol. 9, (1984); p.64-70. [15] Cetina S. Editor de restricciones para Pathos.Pontificia Universidad Javeriana.Tesis de Pregrado. Pontificia Universidad Javeriana 2002 [16] D. de Werra. An introduction to timetabling. European Journal of Operational Research. Vol. 19, (1985); p.151-162. [17] Velásquez M. y Palacios C. Administración de laboratorios y aulas de clase. Universidad Manuela Beltran. ADSALON. Tesis de Pregrado. Universidad Manuela Beltran (2007). [18]http://www.javeriana.edu.co/puj/acerca/directrices/VACAsignaci%F3n%20de%20aulas%202005-1.pdf. Consultado octubre 18 de 2007. [19]correo.umanizales.edu.co/tesis/Ingenieria/cronos_aca.pdf. octubre 18 de 2007. Consultado [20]http://regweb.ucatolica.edu.co/publicaciones/organizacion_y_metodos/p002 pf008.pdf. Consultado octubre 18 de 2007. [21] Gutiérrez Valentina, Maya Pablo. Validación del uso del modelo matemático para el problema de programación de cursos en la facultad de ingeniería de la Universidad de Antioquia. [22] M.W. Carter and G. Laporte. (1998). Recent developments in practical course timetabling. The Practice and Theory of Automated Timetabling II: Selected Papers from 2nd International Conference on the Practice and Theory of Automated Timetabling (PATAT II), Toronto, Canada, Lecture Notes in Computer Science 1408, Springer-Verlag. (Editors: E.K. Burke and M. Carter), pp 3-19. [23] Michael W. Carter. A Survey of Practical Applications of Examination Timetabling Algorithms, Operations Research, Vol. 34, No. 2. pp. 193-202 1986 [24] Alvarez-Valdez, Automatrícula por ordenador y calidad de horarios para los estudiantes 2005 [25] Edmund Burke. Multiple-retrieval case-based reasoning for course timetabling 2005 [26] Mirrazavi SK, MardleSJ, Tamiz M A two-phase multiple objetive approach to university timetabling utilising opimisation and evolutionary solution methodologies. European Journa of Operation Research. Vol 5, Pg 1155-1166 2003 105
  • 106. [27] Karanik Marcelo, Asignación Dinámica de aulas utilizando algoritmos genéticos. Universidad Tecnológica Nacional. Chaco-Argentina [28] Florez P., Brau E., Salazar N., Figueroa J. Cadena E., Lizárraga C., Experimentos con algoritmos genéticos para resolver en un problema real de programación maestros-horarios-cursos 2000 [29] Molina Juan. Algoritmos evolutivos para la resolución de un problema de tipo timetabling. valparaiso 2007 [30] Erben Keppler (1996) A Genetic Algorithm Solving a Weekly CourseTimetabling Problem [31] Salwani Abdullah BSc (UTM), MSc (UKM) Malaysia. Heuristic approaches for University timetabling problems [32] Mejía Cabellero José. Asignación de horarios de clases universitarias mediante algoritmos evolutivos. Universidad de la Guajira / Universidad del Norte Riohacha – la Guajira 2008 [33] Andrés Saldaña Crovo Modelos de programación entera para un problema de programación de horarios para Universidades. vol. 15 Nº 3, 2007, pp. 245259 [34] R. Lewis. A survey of metaheuristics-based techniques for university timetabling problems. OR Spectrum, 30:167–190, 2008. [35] Programación de Horarios de Clases y Asignación de Salas para la Facultad de Ingeniería de la Universidad Diego Portales Mediante un Enfoque de Programación Entera. Volumen XXII, A˜no 2008. Rodrigo Hernández, Jaime Miranda P. Pablo A. Rey [36] E.H.L. Aarts and J. Korst. Simulated annealing and Boltzmannmachines: a stochastic approach to combinatorial optimization and neural computing 1.989 [37] Kate A. Smith1, David Abramson, and David Duke.Hopfield Neural Networks for Timetabling: Formulations, Methods, and Comparative Results. School of Business Systems, and School of Computer Science and Software Engineering [38] Marco Carrasco. Margarida Pato. A Potts Neural Network Heuristic for theClass/Teacher Timetabling Problem Centro de Investigación Operacional, University of Lisbon. Portugal 2001 [39] Jorge de Abreu Soares.A Máquina de boltzmann na solução do problema de timetabling 2002 [40] Pilar Moreno Díaz, Jesús Sánchez Allende, Almudena García Manso. Aplicación de técnicas de enfriamiento lento el problema de planificación de 106
  • 107. horarios. Universidad Alfonso X el sabio. Escuela Politécnica Superior Villanueva de la Cañada (Madrid). 2007 [41] Ruibin Bai, Edmund K. Burke, Graham Kendall, Barry McCollum. A Simulated Annealing Hyper-heuristic for University Course Timetabling, 2006 [42] Peñuela C, Toro E Gallego R. Colonia de hormigas aplicada a la programación óptima de horarios de clase. Universidad Tecnológica de Pereira, 2008. [43] John Fredy Franco Baquero, Eliana Mirledy Toro Ocampo, Ramón Alfonso Gallego Rendón. Problema de asignación óptima de salones resuelto con Búsqueda Tabú. Universidad Norte, 2008. [44] Marcos Gil Tallavo, Amadis Antonio Martinez. Algoritmo basado en Tabú search para el problema de asignación de horarios de clases. Universidad de Carabobo, 1999. [45] Alvarez y crespo. Experiencias de utilización del método de búsqueda Tabú en la resolución de problemas de organización universitaria. Universidad de Valencia,1999. [46] Andrea Schaerf y Luca Di Gaspero. Local search techniques for educational timetabling problems. Universita Di Udine, 2001. [47] Saleh Elmohamed m.a. y Geoffrey Fox, “A comparison of Annealing Techniques for Academic Course Scheduling”. Practice and Theory of Automated Timetabling II, Selected Papers from the 2nd International Conference, PATAT97. [48] Melício F., Caldeira P. y Rosa A. “Implementation aspects of Simulated Annealing on Timetabling”, 1996. [49]Julio Brito Santana, Clara Campos Rodríguez, Félix C. García López, Miguel García Torres, Belén Melian Batista, José A. Moreno Pérez, J. Marcos Moreno Vega. Metaheurísticas: una revisión actualizada Grupo de Computación Inteligente. Universidad de La Laguna, 2004. [50] Salwani Abdullah. HEURISTIC APPROACHES FOR UNIVERSITY TIMETABLING PROBLEMS. School of Computer Science and Information Technology, 2006 [51] Juan Jose Pantrigo Fernandez Resolucion de Problemas de Optimizacion Dinamica mediante la Hibridacion entre Filtros de Particulas y Metaheuristicas Poblacionales. Universidad Rey Juan Carlos. Escuela Superior de Ciencias Experimentales y Tecnolog³a.Departamento de Informatica, Estad³stica y Telematica. Tesis Doctoral,2005 [52] M. Garey. Computers and intractability. A guide to the Theory of NPCompleteness. Bell Telephone Laboratories, 1979. 107
  • 108. [53] González J. Sánchez A. y Velásquez J. Galve, J. Algoritmica. Diseño y análisis de algoritmos funcionales e imperativos. Addison Wesley Iberoamericana, 1993. [54] Oscar A. Chávez Bosquez, Guillermo de los Santos Torres, José Luis Gómez Ramos. Búsqueda tabú aplicada a un problema NP-Completo: Generación de horarios en la DAIS. División Académica de Informática y Sistemas - Universidad Juárez Autónoma de Tabasco [56] GRAPS: Procedimiento de búsqueda miopes aleatorizados y adaptivos.Mauricio G. José V.inteligiencia artificias, revista iberoamericana de Inteligencia Artificial. No19 (2003) pp.61-74. [57] Programación de las sesiones de las comisiones ordinarias del congreso de la república del Perú aplicando búsqueda tabú. Marchan G, Álvarez M. Universidad Nacional Mayor de San Marcos. Lima, Perú 2008. 108