<?xml version="1.0" encoding="ISO-8859-1"?><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<front>
<journal-meta>
<journal-id>0120-5609</journal-id>
<journal-title><![CDATA[Ingeniería e Investigación]]></journal-title>
<abbrev-journal-title><![CDATA[Ing. Investig.]]></abbrev-journal-title>
<issn>0120-5609</issn>
<publisher>
<publisher-name><![CDATA[Facultad de Ingeniería, Universidad Nacional de Colombia.]]></publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id>S0120-56092005000300011</article-id>
<title-group>
<article-title xml:lang="es"><![CDATA[Programación de exámenes: un enfoque práctico]]></article-title>
<article-title xml:lang="en"><![CDATA[A practical approach to scheduling examinations]]></article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Astaiza A.]]></surname>
<given-names><![CDATA[Luis Gerardo]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
</contrib-group>
<aff id="A01">
<institution><![CDATA[,Universidad Nacional de Colombia Facultad de Ingeniería ]]></institution>
<addr-line><![CDATA[ ]]></addr-line>
</aff>
<pub-date pub-type="pub">
<day>00</day>
<month>12</month>
<year>2005</year>
</pub-date>
<pub-date pub-type="epub">
<day>00</day>
<month>12</month>
<year>2005</year>
</pub-date>
<volume>25</volume>
<numero>3</numero>
<fpage>92</fpage>
<lpage>100</lpage>
<copyright-statement/>
<copyright-year/>
<self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_arttext&amp;pid=S0120-56092005000300011&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_abstract&amp;pid=S0120-56092005000300011&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_pdf&amp;pid=S0120-56092005000300011&amp;lng=en&amp;nrm=iso"></self-uri><abstract abstract-type="short" xml:lang="es"><p><![CDATA[La programación de exámenes es un problema de optimización combinatoria bien estudiado. A pesar de eso, el número creciente de estudiantes y la incorporación de la modularidad en muchas instituciones de educación superior ha resultado en un incremento significativo en su complejidad, imponiendo aún más dificultades a los administradores de la universidad, quienes deben encontrar una solución, a menudo sin la ayuda de un computador. En este artículo presentamos un enfoque practico para la programación de los exámenes, constituido de varias etapas tales como: una para elaborar la matriz de conflictos, otra para seleccionar los salones apropiados en la programación de los exámenes, una otra conformar grupos de cursos que puedan estar programados a la misma hora sin ningún conflicto, otra para permitir restricciones en exámenes conjuntos para todos los grupos de cualquier asignatura o permitir especificaciones para cualquier examen particular, otra para definir la hora y la asignación del salón, y finalmente, otra para publicar la programación a los usuarios (estudiantes, profesores y administradores).]]></p></abstract>
<abstract abstract-type="short" xml:lang="en"><p><![CDATA[The scheduling of exams is a well-studied combinatorial optimisation problem. However, the growth in student numbers and the advent of modularity in many institutions of higher education has resulted in a significant increase in its complexity, imposing even more difficulties on university administrators who must resolve situations, often without having recourse to any computerised aid. This paper presents a practical approach towards timetabling examinations, consisting of several phases. Such phases would include constructing a conflict matrix, selecting suitable rooms for use when scheduling exams, establishing groups of courses which can be timetabled at the same time so that clashes are not incurred, imposing restrictions for joint exams for all groups from any particular course or specifying an exam in particular, fixing the times and allocating rooms and making the timetable available to students, teachers and administrators.]]></p></abstract>
<kwd-group>
<kwd lng="es"><![CDATA[programación de examen]]></kwd>
<kwd lng="es"><![CDATA[asignación de salones]]></kwd>
<kwd lng="es"><![CDATA[interacción con el usuario]]></kwd>
<kwd lng="es"><![CDATA[sistema basado en hoja electrónica]]></kwd>
<kwd lng="es"><![CDATA[simulación]]></kwd>
<kwd lng="en"><![CDATA[exam scheduling]]></kwd>
<kwd lng="en"><![CDATA[room allocation]]></kwd>
<kwd lng="en"><![CDATA[user interaction]]></kwd>
<kwd lng="en"><![CDATA[spreadsheet based system]]></kwd>
<kwd lng="en"><![CDATA[simulation]]></kwd>
</kwd-group>
</article-meta>
</front><body><![CDATA[  <font size = "2" face = "verdana">     <p>    <center><font size = "4"><b> Programación de exámenes: un enfoque práctico </b></font></center></p>     <p>    <center><font size = "3"><b> A practical approach to scheduling examinations </b></font></center></p>     <p><b> Luis Gerardo Astaiza A.<sup>1</sup> </b></p>     <p>    <br><sup>1</sup> Ingeniero mecánico, M. Sc. en ingeniería de sistemas, M. Sc. en investigación operacional, profesor de la Facultad de Ingeniería, Universidad Nacional de Colombia, e-mail: <a href = "mailto:lgastaizaa@unal.edu.co">lgastaizaa@unal.edu.co</a> </p> <hr size = "1">     <p><b> RESUMEN </b></p>     <p>   La programación de exámenes es un problema de optimización    combinatoria bien estudiado. A pesar de eso, el número creciente de estudiantes    y la incorporación de la modularidad en muchas instituciones de educación    superior ha resultado en un incremento significativo en su complejidad, imponiendo    aún más dificultades a los administradores de la universidad,    quienes deben encontrar una solución, a menudo sin la ayuda de un computador.    En este artículo presentamos un enfoque practico para la programación    de los exámenes, constituido de varias etapas tales como: una para elaborar    la matriz de conflictos, otra para seleccionar los salones apropiados en la    programación de los exámenes, una otra conformar grupos de cursos    que puedan estar programados a la misma hora sin ningún conflicto, otra    para permitir restricciones en exámenes conjuntos para todos los grupos    de cualquier asignatura o permitir especificaciones para cualquier examen particular,    otra para definir la hora y la asignación del salón, y finalmente,    otra para publicar la programación a los usuarios (estudiantes, profesores    y administradores).</p>     ]]></body>
<body><![CDATA[<p> <b>Palabras clave:</b> programación de examen, asignación de salones,    interacción con el usuario, sistema basado en hoja electrónica,    simulación.</p> <hr size = "1">     <p><b> ABSTRACT </b></p>     <p>   The scheduling of exams is a well-studied combinatorial optimisation problem.    However, the growth in student numbers and the advent of modularity in many    institutions of higher education has resulted in a significant increase in its    complexity, imposing even more difficulties on university administrators who    must resolve situations, often without having recourse to any computerised aid.    This paper presents a practical approach towards timetabling examinations, consisting    of several phases. Such phases would include constructing a conflict matrix,    selecting suitable rooms for use when scheduling exams, establishing groups    of courses which can be timetabled at the same time so that clashes are not    incurred, imposing restrictions for joint exams for all groups from any particular    course or specifying an exam in particular, fixing the times and allocating    rooms and making the timetable available to students, teachers and administrators.</p>     <p> <b>Keywords:</b> exam scheduling, room allocation, user interaction, spreadsheet based    system, simulation.</p> <hr size = "1">     <p>Recibido: agosto 25 de 2004    <br>   Aceptado: agosto 26 de 2005</p>     <p><font size = "3"><b> Introducción </b></font></p>     <p>Sin lugar a dudas, uno de los aspectos más importantes de la vida universitaria    es la programación de las actividades académicas, a saber: el    horario de clases y la programación de exámenes. Tanto el primero    como el segundo representan objetos abstractos que ejercen una autoridad absoluta    en la forma como la institución realiza sus actividades. Cualquier persona    que haga parte de la universidad, bien sea como docente o estudiante, debe implícitamente    aceptar el hecho de que sus movimientos y pensamientos podrán estar ampliamente    determinados por cada uno de ellos.</p>     <p>El horario de actividades describe la ubicación de profesores y estudiantes    en el curso de la semana, las actividades pedagógicas (clases magistrales,    conferencias, seminarios, laboratorios, talleres, clínicas y atención    a pacientes), o exámenes que se llevan a cabo y la fecha y hora. Este    puede ser considerado como un conjunto de encuentros. Un encuentro debe presentar    ciertos componentes. En primer lugar, hay la necesidad de la presencia de un    docente; en segundo término, hay una participación de estudiantes    provenientes de diferentes programas curriculares. En tercer lugar, el encuentro    requiere de un espacio docente particular, esto depende del tipo de encuentro.    Finalmente, el encuentro debe realizarse en un horario específico. En    esta forma, el problema puede ser visto como de asignación de recursos,    donde estos son docentes, estudiantes, salones y horarios. Otros recursos podrían    ser la dotación y los implementos docentes de los espacios físicos.</p>     <p>En particular, este artículo detalla la programación de exámenes    (finales, de habilitación, validación etc.), la cual requiere    la asignación de un número dado de exámenes dentro de un    marco de tiempo. Esta programación presenta las siguientes características:    primero, sólo hay un examen para cada curso. Segundo, ningún estudiante    puede tener más de un examen programado en el mismo periodo de tiempo.    Tercero, los exámenes pueden distribuirse en forma tal que los estudiantes    tengan tiempo de estudio. Cuarto, el examen puede programarse específicamente    para un curso, programarse conjuntamente para todos los grupos de un curso o    dejar que el sistema realice la programación intentando inicialmente    una asignación con un horario igual al de clases. Quinto, Hay un número    máximo de exámenes por periodo en consideración al número    finito de espacios.</p>     ]]></body>
<body><![CDATA[<p><font size = "3"><b> Formulación del problema </b></font></p>     <p>El problema de programación en general consiste en asignar un número    de eventos en un número limitado de periodos de tiempo cumpliendo un    conjunto de restricciones estrictas o duras y otro de restricciones deseables    o suaves. Las restricciones estrictas son consideradas fundamentales de cumplir    en términos de desarrollar una programación práctica, así:    ningún recurso puede estar presente en más de un lugar a la vez    y los recursos requeridos no deben exceder los recursos disponibles. De otro    lado, las restricciones deseables o suaves no son esenciales de cumplir, tales    como: horario del examen, restricciones de tiempo entre exámenes, distribución    de los exámenes en el calendario o asignación de recursos entre    otros.</p>     <p>En particular, la programación de exámenes consiste en asignar    un número de exámenes en un número limitado de periodos    de tiempo de forma tal que ningún estudiante requiera presentar más    de un examen a la vez. En dicha programación encontramos los dos tipos    de conflictos:</p>     <p>- Restricciones estrictas. Este término describe situaciones en    las cuales se programan exámenes en conflicto en el mismo periodo. Esta    situación es altamente indeseable, ya que implica que algunos estudiantes    tengan que presentar en el mismo periodo de tiempo dos o más exámenes    de cursos diferentes </p>    <p>   - Restricciones deseables. Representan situaciones donde dos exámenes    en conflicto no se programan en el mismo periodo pero están programados    en periodos demasiado cercanos el uno al otro. Para el caso no deseamos que    haya estudiantes que tengan que presentar dos exámenes en periodos consecutivos,    o en el mismo día. Satisfacer esta restricción es totalmente impráctico,    en cuyo caso es considerado como una restricción suave.</p>     <p>Esto da una idea de los problemas que debe enfrentar el administrador. En un    mundo ideal, podría ser hermoso estar en capacidad de optimizar todos    los criterios. Sin embargo, es necesario un compromiso, ya que el tiempo total    para exámenes es limitado.</p>     <p><font size = "3"><b> Enfoques al problema de programación </b></font></p>     <p>Los diferentes enfoques que han sido empleados en la programación de    exámenes pueden clasificarse en: Métodos secuenciales, de agrupación,    métodos basados en restricciones, metaheurísticos, de criterios    múltiples, y métodos basados en el razonamiento de casos.</p>     <p>Los métodos secuenciales están basados en la coloración    heurística de grafos. Entre las heurísticas utilizadas podemos    citar: en primer lugar, la asignación de los exámenes de mayor    grado de conflictos con otros exámenes. La segunda heurística    utiliza el grado ponderado más grande. Cada conflicto se pondera por    el número de estudiantes involucrados en él. La tercera heurística    selecciona el grado de saturación que corresponde al examen que tenga    el menor número de periodos válidos para su programación.    Finalmente, tenemos la heurística basada en el grado del color, la cual    prioriza aquellos exámenes que tengan el número más grande    de conflictos con exámenes que ya han sido programados.</p>     <p>Los métodos de agrupación utilizan dos ideas. En primer lugar,    el conjunto de exámenes es dividido en grupos que cumplan con las restricciones    estrictas, y en segundo lugar, los grupos son asignados a periodos de tiempo    para satisfacer las restricciones deseables o suaves.</p>     ]]></body>
<body><![CDATA[<p>Los enfoques basados en restricciones consideran que el problema de programación    puede modelarse como un conjunto de variables (v. gr. exámenes) a los    cuales tienen que ser asignados valores (v. gr. recursos tales como periodos    de tiempo y salones) para satisfacer un número de restricciones.</p>     <p>Los enfoques metaheurísticos utilizan las técnicas de recocido    simulado, búsqueda tabú, o de algoritmos genéticos. Más    aún, estos métodos pueden presentar algunas innovaciones tales    como la combinación de algoritmos genéticos, búsqueda local    y heurísticas, dando lugar a lo que se conoce como los algoritmos miméticos.</p>     <p>Finalmente, están los enfoques basados en el razonamiento de casos,    en los cuales los problemas resueltos previamente son utilizados para resolver    nuevos problemas de programación.</p>     <p><font size = "3"><b> Método de solución </b></font></p>     <p>   La elaboración de la programación de exámenes en cada periodo    lectivo es un problema común de todas las instituciones de educación    superior. Generalmente se realiza manualmente, pero dado el incremento de estudiantes    y la flexibilidad curricular, es necesario desarrollar métodos automáticos    que permitan asistir al administrador.</p>     <p>La aplicación de los computadores a los problemas de programación    de horarios tiene una larga y variada historia (Burke). La primera generación    de programas de computador se presentó en los inicios de la década    de los sesenta, los cuales intentaban reducir el trabajo administrativo asociado.    Broker, 1964, y Cole, 1964, presentaron enfoques heurísticos a la programación.</p>     <p>Welsh y Powell, 1967, señalaron la similitud entre este problema y el    de coloración de un grafo. Aquí, los vértices corresponden    a los cursos, y los arcos entre ellos representan los conflictos. Desde las    observaciones realizadas por Welsh y Powell, 1967, muchos algoritmos han sido    diseñados basados en la coloración de grafos como parte fundamental    del sistema.</p>     <p>Desroches, Laporte y Rousseau, 1978, presentaron HOREX, un programa de computador    que seguía una serie de pasos para lograr la programación de exámenes.    El programa inicialmente encuentra una coloración del gráfico    de conflictos, luego trata de igualar el número de exámenes en    cada periodo. Puesto que generalmente no hay una secuencia para los exámenes,    los periodos son ordenados y los fines de semana incorporados de forma tal que    se minimice el número de exámenes consecutivos, los cuales se    asignan a salones para lograr un sistema completo.</p>     <p>Burke, Elliman y Were, 1993, presentaron algoritmos de coloración de    grafos y asignación de salones. Para intentar vencer los problemas intratables    asociaron el modelo a un sistema de hoja electrónica tal que el usuario    pueda guiarse de manera informada y útil.</p>     <p>El proceso de encontrar un periodo para cada examen tal que no haya conflictos,    es equivalente a asignar colores a vértices de un grafo de manera que    vértices adyacentes tengan colores diferentes. Esto a su vez ha demostrado    que corresponde al conjunto de problemas NP-completos, lo cual significa que    la realización de una investigación exhaustiva para su elaboración    no es posible en un tiempo razonable. Muchos algoritmos han sido propuestos,    la mayoría utilizando heurísticas basadas en coloración    de grafos. Estos pueden producir adecuados resultados, pero usualmente ignoran    que haya suficientes asientos para todos los exámenes asignados en un    periodo particular y no permiten la realización de ninguna investigación    del espacio de soluciones.</p>     ]]></body>
<body><![CDATA[<p>Para vencer las dificultades, recurrimos al algoritmo de Burke para la coloración    de grafos con miras a la agrupación de exámenes que se puedan    programar sin conflictos, y descomponemos el proceso en etapas así:</p>     <p>- Definir calendario de exámenes    <br>   - Establecer espacios físicos docentes a utilizar    <br>   - Seleccionar grupos de asignaturas    <br>   - Administrar grupos de asignaturas    <br>   - Elaborar matriz de conflictos    <br>   - Definir grupos de exámenes    <br>   - Proveer análisis de vecindad    <br>   - Establecer día de examen     <br>   - Administrar exámenes conjuntos    ]]></body>
<body><![CDATA[<br>   - Especificar exámenes especiales    <br>   - Asignar hora y salón    <br>   - Administrar programación    <br>   - Proveer reportes consulta    <br>   - Proveer informes</p>     <p><b> Etapa 1. Definir calendario de exámenes </b></p>     <p>En esta etapa se establece el calendario para cada tipo de examen (incluyendo    indicador de día de examen y franja(s) horaria(s) para la programación    de exámenes de una facultad. El indicativo z se reserva para exámenes    que serán programados por el profesor durante la realización de    las clases. </p>    <p>   En cada indicador de día de examen, el usuario puede especificar hasta    seis franjas de examen (hora 1, hora 2,&#8230;hora 6). El dominio del campo    será cualquier valor entre 6:00 a.m. y 20:00 p. m. El valor de omisión    será 00 (no programado).</p>     <p><b> Etapa 2. Definir espacios físicos docentes a utilizar </b></p>     <p>Para la programación de exámenes de una facultad para un periodo    académico es necesario definir la planta física a utilizar. El    usuario debe estar en capacidad de seleccionar la planta física a utilizar    de la base de datos según edificio y tipos de salón (aula teórica,    aula seminario, aula torreón, aula máxima, taller, laboratorio,    etc.). Así mismo, el sistema debe desplegar la lista de salones del edificio    seleccionado, clasificado por tipo de salón y de forma tal que el usuario    marque aquellos salones o espacios que no puede utilizar por tener acceso restringido.</p>     ]]></body>
<body><![CDATA[<p><b> Etapa 3. Seleccionar grupos de asignatura </b></p>     <p>El propósito de esta etapa es seleccionar de la programación    de cursos aquellos que requieren la programación de un tipo de examen    (final, habilitación, validación) en un periodo académico    para una facultad y un nivel de estudios. En esta etapa se deben crear las tablas    requeridas en la base de datos para la programación de exámenes.    Acorde a la especificación de parámetros, se seleccionan los grupos    de asignatura a partir de la programación a la que se le programará    el examen. Para determinar en cuál facultad se programará el examen    se seguirá el criterio de a qué facultad pertenece el plan de    estudios para la cual se programó la asignatura o si no hay especificación    del plan, en la facultad a la cual esté adscrito el departamento que    ofreció la asignatura</p>     <p><b> Etapa 4. Administrar grupos de asignatura </b></p>     <p>En esta etapa se eliminan de las asignaturas y grupos seleccionados aquellos    a los cuales no se les programará examen.</p>     <p><b> Etapa 5. Establecer matriz de conflicto </b></p>     <p>Establecer tabla de matriz de conflictos entre las asignaturas que se seleccionaron    para realizar la programación de un tipo de examen en una facultad y    un nivel de estudios. Para este propósito debe existir un registro por    cada pareja en el cual se presente el número de estudiantes inscritos    simultáneamente en las dos asignaturas.</p>     <p><b> Etapa 6. Definir agrupación de exámenes </b></p>     <p>La definición de grupo de examen se puede lograr utilizando la matriz    de conflictos y un algoritmo de coloración de franjas de exámenes.    Esta definición de grupos de examen implica que las asignaturas pertenecientes    a un grupo puedan programarse de forma simultánea (ejemplo: ningún    estudiante puede estar inscrito simultáneamente en Matemáticas    I y Matemáticas II, dado que la primera es requisito de la segunda o    están en niveles de formación tal que es imposible cursarlas simultáneamente).    Estos grupos tendrán cada uno un identificador.</p>     <p><b> Etapa 7. Proveer análisis de vecindad </b></p>     <p>Con mirar a definir el día de examen de una agrupación es conveniente    realizar un análisis de la cantidad de conflictos que se presentan entre    una agrupación seleccionada y las restantes. Esto permite programar exámenes    de forma tal que exista la menor cantidad de conflictos entre exámenes    programados bien sea anterior o posterior al grupo analizado.</p>     ]]></body>
<body><![CDATA[<p><b> Etapa 8. Establecer día de examen de una agrupación </b></p>     <p>En esta etapa debemos establecer el día de examen de una agrupación    de asignaturas de un tipo de examen para una facultad en un periodo académico. </p>    <p>   Para este caso el sistema basado en los parámetros suministrados por    el usuario debe desplegar las asignaturas que conforman dicha agrupación    incluyendo la especificación del día de examen si este ya ha sido    asignado. </p>    <p>   Finalmente, el usuario debe especificar el nuevo día de examen de los    disponibles (lista informativa) si desea asignar o modificar el día asignado.</p>     <p><b> Etapa 9. Especificar día de examen para una asignatura </b></p>     <p>El propósito de esta etapa es definir el día de examen a una    asignatura considerando la información establecida en la matriz de conflictos    para ella y las fechas de examen utilizadas por las asignaturas con las cuales    existe conflicto. </p>    <p>   El usuario debe especificar periodo, tipo de examen y asignatura. Con base en    esta información, el sistema prepara matriz de fechas de examen según    la información del calendario, procesa la matriz de conflictos y de programación    de examen en relación con las asignaturas en conflicto con la asignatura    especificada y las contabiliza en el día de examen en la cual esté    programada. Finalmente, despliega la información consolidada para que    el usuario seleccione un día de examen.</p>     <p><b> Etapa 10. Administrar exámenes conjuntos </b></p>     <p>En una facultad algunas veces se requiere que todos los grupos de una asignatura    se programen simultáneamente para realizar una prueba única. Para    lograr este propósito es necesario administrar la programación    de exámenes conjuntos (hora de examen). Esta etapa debe permitir: inserciones,    modificaciones, borrados y consultas a la información de exámenes    conjuntos en la programación de exámenes de una facultad en un    periodo académico. El usuario suministrará la información    requerida en la pantalla diseñada para tal efecto.</p>     <p><b> Etapa 11. Especificar exámenes especiales </b></p>     ]]></body>
<body><![CDATA[<p>En algunos casos especiales es necesario especificar la programación    de examen para un grupo de asignatura (horario y espacio físico). Esta    etapa debe permitir establecer la hora y el lugar de examen de un grupo de asignatura    en la programación de un tipo de examen de una facultad en un periodo    académico. El usuario debe especificar periodo, facultad, tipo de examen,    asignatura y grupo. Una vez localizado el registro y desplegada la información    de programación de salones para el día considerado, definir edificio,    salón, hora del examen, y diligenciar el indicativo de especificación    al grabar la información. </p>     <p><b> Etapa 12. Asignar hora y salón </b></p>     <p>Aplicar el algoritmo de asignación de hora y salón para un tipo    de examen para cada grupo de asignatura que requiere programación de    examen. El usuario especifica periodo, facultad, nivel, tipos de examen y de    ejecución (definitiva o simulada) y utilizando las tablas requeridas    se ejecuta el algoritmo de asignación de hora y salón. La opción    de tipo de ejecución simulada es para permitir el análisis de    una posible programación y las modificaciones del caso y luego realizar    la ejecución definitiva. </p>    <p>   Inicialmente se puede realizar la asignación a las asignaturas que correspondan    a un departamento académico utilizando para esto la planta física    correspondiente y luego asignar los salones indistintamente.</p>     <p><b> Etapa 13. Administrar la programación de exámenes </b></p>     <p>Esta etapa debe permitir modificar la programación de examen a un grupo    de asignaturas. Para la toma de la decisión el sistema debe proveer la    cantidad de conflictos del grupo con las otras asignaturas establecidas en la    matriz de conflictos según estén inscritos en el grupo de la asignatura.    El usuario debe especificar, además de la información relacionada    con el examen que se está procesando, el grupo de asignaturas de interés.    El sistema consulta la matriz de conflictos para esta asignatura con el fin    de preparar arreglo el que permita consolidar el número de estudiantes    inscritos en cada una de estas asignaturas y que a la vez están inscritos    en el grupo de asignaturas considerado. Finalmente informa al usuario los datos    consolidados incorporando el día de examen de cada una de ellas (tabla    de examen de asignatura), permitiendo en esta forma que el usuario programe    el grupo de asignaturas.</p>     <p><b> Etapa 14. Proveer reportes consultas </b></p>     <p>El sistema debe permitir entre otras, las siguientes consultas:</p>     <p>- Conflictos de una asignatura    <br>   - Exámenes conjuntos    ]]></body>
<body><![CDATA[<br>   - Especificación de exámenes    <br>   - Ocupación de planta física    <br>   - Exámenes sin asignación de salón    <br>   - Programación de exámenes.</p>     <p>Además de realizar la consulta por pantalla, esta debe poderse enviar    a otro medio de salida. El usuario suministrará la información    requerida en la pantalla diseñada para tal efecto.</p>     <p><b> Etapa 15. Proveer informes </b></p>     <p>El sistema debe suministrar información de la programación de    exámenes vía web a los involucrados en el proceso (docentes, estudiantes,    administradores, etc.) en forma similar al suministro de información    de la programación de cursos.</p>     <p><font size = "3"><b> Algoritmos especiales </b></font></p>     <p><b> Definición de los grupos de examen </b></p>     <p>Con miras a realizar la definición de los grupos de examen de forma    automática, podemos recurrir al algoritmo planteado por Burke, 1993.</p>     ]]></body>
<body><![CDATA[<p><b><i> Definiciones </i></b></p>     <p>Suponga que tenemos una grafica G con vértices x e y. G: xy es la gráfica    obtenida a partir de G al reemplazar x e y por un solo nodo conectado a todos    los nodos adyacentes bien sea a x o y o ambos. Los vértices x e y se    han integrado para producir x&#8217; o ( y&#8217;).</p>     <p>Similarmente G - &#123;<i>x</i>&#125;es la grafica obtenida al remover el vértice x y todos    los arcos que incluye x desde G. Una gráfica nula es aquella sin ningún    vértice o arco. </p>    <p>   Ahora, para cualquier vértice dado x, podemos construir un conjunto de    ternas de vértices como sigue:</p>     <p>    <center><img src="img/revistas/iei/v25n3/3a11e1.gif"></center></p>     <p>donde el primer vértice es adyacente al segundo y el segundo lo es al    tercero (esto podría significar que el tercer vértice es adyacente    a un adyacente al primero).</p>     <p>Podemos asumir que este conjunto no contiene ninguna terna donde el primer    vértice sea adyacente a, o es lo mismo que, el tercero por simplemente    no incorporar tales ternas. Debemos encontrar i tal que <i>m<sub>i</sub></i>=max(<i>m</i><sub>1</sub>,<i>m</i><sub>2</sub>,...,<i>m<sub>n</sub></i>)    y definimos y<sub>i</sub> por <img src="img/revistas/iei/v25n3/3a11e2.gif">. </p>    <p>   Esto no necesariamente es único, pero podemos simplemente seleccionar    a <img src="img/revistas/iei/v25n3/3a11e2.gif"> el que llegue a ser el primer y<sub>i</sub> en    la lista tal que <i>M<sub>i</sub></i>=max(<i>m</i><sub>1</sub>,<i>m</i><sub>2</sub>,...,<i>m<sub>n</sub></i>).</p>     <p><b><i> Algoritmo para obtener la coloración de un grafo dado </i></b></p>     ]]></body>
<body><![CDATA[<p>El algoritmo que se detalla a continuación según Burke, 1993, está    basado en la combinación del algoritmo de Dutton y Brigham, 1981, y el    algoritmo de Tehrani, 1975.</p>     <p>    <center><img src="img/revistas/iei/v25n3/3a11a1.gif"></center></p>     <p>   El algoritmo trabaja de forma recursiva, encontrando cada conjunto de color    sucesivamente removiendo todos los vértices coloreados del grafo y mirando    por un nuevo conjunto en el grafo reducido. Para cada color se selecciona el    vértice remanente de mayor grado y uno a uno los vértices con    el número máximo de vértices comunes adyacente son fusionados    a este. Cuando todos los vértices de la componente actual del grafo estén    coloreados, el proceso se repite de nuevo con las otras componentes iniciando    con el vértice de mayor grado. Ninguno de los vértices fusionados    es adyacente el uno al otro tal que pueden ser considerados un conjunto de color.</p>     <p><b><i> Ejemplo </i></b></p>     <p>Asuma que tiene quince exámenes que requieren ser programados con el    siguiente grafo de conflictos.</p>     <p><a name="fig01"></a></p>     <p></p>     <p>    <center><img src="img/revistas/iei/v25n3/3a11f1.jpg"></center></p>     ]]></body>
<body><![CDATA[<p></p>     <p>Este grafo puede ser coloreado <i>V<sub>1</sub></i> utilizando el algoritmo. Los vértices    5 y 6 tienen grado 6, así que inicie con el vértice 5 como el    vértice <i>V<sub>1</sub></i>.</p>     <p><a name="fig02"></a></p>     <p></p>     <p>    <center><img src="img/revistas/iei/v25n3/3a11f2.jpg"></center></p>     <p></p>     <p>En la <a href="#fig02">Figura 2</a> únicamente los vértices 3, 7 y 11 tienen algún    vértice común adyacente al vértice <i>V<sub>1</sub></i>. Los vértices    7 y 11 tienen un vértice común adyacente con el vértice    <i>V<sub>1</sub></i>, mientras que el vértice 3 tiene dos vértices comunes adyacentes    al vértice <i>V<sub>1</sub></i>, así que seleccione el vértice 3 para integrarlo    con el vértice <i>V<sub>1</sub></i></p>     <p><a name="fig03"></a></p>     <p></p>     ]]></body>
<body><![CDATA[<p>    <center><img src="img/revistas/iei/v25n3/3a11f3.jpg"></center></p>     <p></p>     <p>Continuando en esta forma, seleccione el vértice 11 en la <a href="#fig03">Figura 3</a>,    para integrarlo con el vértice <i>V<sub>1</sub></i>.</p>     <p><a name="fig04"></a></p>     <p></p>     <p>    <center><img src="img/revistas/iei/v25n3/3a11f4.jpg"></center></p>     <p></p>     <p>En la <a href="#fig04">Figura 4</a> seleccione el vértice 4 para integrarlo con el vértice    <i>V<sub>1</sub></i>.</p>     ]]></body>
<body><![CDATA[<p><a name="fig05"></a></p>     <p></p>     <p>    <center><img src="img/revistas/iei/v25n3/3a11f5.jpg"></center></p>     <p></p>     <p>En la <a href="#fig05">Figura 5</a> seleccionamos el vértice 13 para integrarlo con el vértice    <i>V<sub>1</sub></i>.</p>     <p><a name="fig06"></a></p>     <p></p>     <p>    <center><img src="img/revistas/iei/v25n3/3a11f6.jpg"></center></p>     ]]></body>
<body><![CDATA[<p></p>     <p>En la <a href="#fig06">Figura 6</a> todos los vértices son adyacentes al vértice <i>V<sub>1</sub></i>    dando por terminado la conformación de un grupo de examen.</p>     <p><a name="fig07"></a></p>     <p></p>     <p>    <center><img src="img/revistas/iei/v25n3/3a11f7.jpg"></center></p>     <p></p>     <p>En la <a href="#fig07">Figura 7</a> se inicia nuevamente el proceso, seleccione el nodo 6 como el    nodo <i>V<sub>2</sub></i>.</p>     <p><a name="fig08"></a></p>     <p></p>     ]]></body>
<body><![CDATA[<p>    <center><img src="img/revistas/iei/v25n3/3a11f8.jpg"></center></p>     <p></p>     <p>En la <a href="#fig08">Figura 8</a> repitiendo el proceso, seleccionamos los nodos 9, 1, 14, 1,    2 y 12 para integrarlos al nodo <i>V<sub>2</sub></i>. Finalmente quedan los nodos 7, 8, 10 y 15,    los cuales según el procedimiento, conforman el tercer color.</p>     <p><a name="fig09"></a></p>     <p></p>     <p>    <center><img src="img/revistas/iei/v25n3/3a11f9.jpg"></center></p>     <p></p>     <p>En la <a href="#fig09">Figura 9</a>,se presenta la agrupación final, representada en los    tres conjuntos de colores (denotado por tres formas diferentes).</p>     ]]></body>
<body><![CDATA[<p>Así, sin ninguna otra restricción, la programación puede    realizarse en tres periodos, un periodo por color. En este escenario poco probable    e idealista podría haber terminado todo lo que necesitamos hacer. Sin    embargo, este no es el caso en la mayoría de las situaciones. En un caso    simple, como el de este ejemplo, el algoritmo es probable que logre una solución    óptima. Para programaciones o grafos más grandes esto es mucho    menos que probable que llegue a ser el caso, dado que el problema de coloración    del grafo es un problema NP-completo. Sin embargo, el algoritmo podrá    por lo menos dar una coloración razonable si no óptima. </p>     <p>La agrupación de exámenes así elaborada se asocia al día    de examen y se le aplica el algoritmo que se detalla a continuación,    el cual en pocos minutos puede elaborar la programación de una facultad    de aprox. 1.000 cursos y 5.000 estudiantes.</p>     <p><b> Algoritmo de asignación de hora y salón </b></p>     <p>    <center><img src="img/revistas/iei/v25n3/3a11a2a.gif"></center></p>     <p>    <center><img src="img/revistas/iei/v25n3/3a11a2b.gif"></center></p>     <p>    <center><img src="img/revistas/iei/v25n3/3a11a2c.gif"></center></p>     <p><font size = "3"><b> Conclusión </b></font></p>     ]]></body>
<body><![CDATA[<p>Este artículo presenta un enfoque práctico a la programación    de exámenes dada su gran flexibilidad para su utilización por    parte de los administradores. Su implementación en etapas permite tomar    las decisiones adecuadas en cada una de ellas. </p>    <p>   La agrupación de exámenes permite su distribución por días    de examen y por franjas horarias de forma tal que el estudiante no tenga que    presentar más de un examen por franja o inclusive por día de examen.    Así mismo, el análisis de los grupos permite una distribución    que conceda al estudiante mayor tiempo de estudio. Más aún, permite    incorporar la programación de exámenes conjuntos o especificación    del examen para un grupo de asignatura. Adicionalmente, el sistema facilita    asignar hora y salón a cada agrupación dentro de sus franjas horarias    y considerando las restricciones impuestas bien sea de forma simulada o de manera    definitiva. También, el sistema provee informes relacionados con la matriz    de conflictos, ocupación de salones por día de examen, cursos    sin asignación etc, Adicionalmente, este subsistema debe estar incorporado    al Sistema de Información Académica para realizar la integración    con las bases de datos del mismo y así proveer los informes a los usuarios    del sistema (profesores y estudiantes) utilizando la red. Finalmente, esta investigación    continuará considerando otras alternativas o realizando mejoras a esta.</p>     <p><font size = "3"><b> Bibliografía </b></font></p>     <!-- ref --><p>Broders Final Examination Scheduling Comm ACM, 7, 494-498, 1994.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000186&pid=S0120-5609200500030001100001&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>Bullheimer, Bernd, An Examination Scheduling Model to Maximize    Student&acute; Study Time., 2nd international conference on the practice    and theory of Automated Timetabling, 1997.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000187&pid=S0120-5609200500030001100002&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>Burke, E. K., D.G. Elliman y R. Weare., A University Timetabling    System based on Graph Colouring and Constraint Manipulation., Department    of Computer Science, University of Nottingham, UK.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000188&pid=S0120-5609200500030001100003&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>Burke, E. K., P.P. Newall y R. F. Weare, A Memetic Algorithm for    University Exam Timetabling., En Edmund Burke y Peter Ross, editors, The    practice and Theory of Automated Timetabling. Selected Papers from the 1st International    Conference, Lecture Notes in Computer Science, 1153, pp. 241-250, Springer-Verlag,    Berlin, 1996.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000189&pid=S0120-5609200500030001100004&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>Burke, E. K., D.G. Elliman y R. Weare, Automated Scheduling    of University Exams., Proceedings of I.E.E: Colloquium on Resource    Scheduling for Large Scale Planning Systems, Digest No. 1993 /144.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000190&pid=S0120-5609200500030001100005&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>Carter, M. W., G. Laporte y J.W. Chinneck, A General Examination    Scheduling System., Interfaces, 11, pp. 109-120, 1994&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000191&pid=S0120-5609200500030001100006&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>Carter, M. W., A survey of Practical Applications of Examinations    Timetabling Algorithms., OR Practice, 34, pp. 193-202, 1986.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000192&pid=S0120-5609200500030001100007&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>Cole, A. J., The preparation of Examination Timetables using a small Store    Computer., Comp. Jrnl, 7, pp. 117-121, 1964.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000193&pid=S0120-5609200500030001100008&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>Desroches, S., Laporte, G. y Rousseau, J.M., Horex: a Computer Program    for the Construction of Examination Shedules., Infor, 16, pp. 294-298, 1978.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000194&pid=S0120-5609200500030001100009&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>Dutton, R. D., and Brigham R.C., A new Graph Coloring Algorithm., Comp.    Jrnl., 24, pp. 85-86, 1981.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000195&pid=S0120-5609200500030001100010&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>Johnson, D., Timetabling university examinations., Journal    of the Operations Research Society, Vol. 1, No. 41, pp. 39-47, 1990.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000196&pid=S0120-5609200500030001100011&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>Karp, R. M., Reductibility among Combinatorial Problems.,    In Complexity of Computer Computations, Plenum Press, New York, 1972.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000197&pid=S0120-5609200500030001100012&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>Liam, T., G. Merlot, Natashia Boland, Barry D. Huges y Peter J. Stuckey,    A Hibrid Algorithm for the Examination Timetabling Problem., Department    of Mathematics and Statistics and Department of Computer Science and Software    Engineering, The University of Melbourne, Victoria 3010, Australia&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000198&pid=S0120-5609200500030001100013&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>Tehran, I. A., Un Algorithme de Coloration., Cahiers du center d&#8217;études    do Recherche Opérationnelle, 17, pp. 395-398, 1975.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000199&pid=S0120-5609200500030001100014&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>Welsh, D. J. A. and Powell, M. B., An Upper bound for the Chromatic    Number of a Graph and Its Application to Timetabling Problems., Comp. Jrnl.,    10, pp. 85-86, 1967&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000200&pid=S0120-5609200500030001100015&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>Wong, Tony, Pascal, Cote, Paul Gely, Final Exam Timetabling: A practical    Approach., Proceedings of the 2002 IEEE Canadian Conference on Electrical    &amp; Computer Engineering&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000201&pid=S0120-5609200500030001100016&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --> ]]></body><back>
<ref-list>
<ref id="B1">
<nlm-citation citation-type="">
<source><![CDATA[Broders Final Examination Scheduling Comm ACM]]></source>
<year>1994</year>
<volume>7</volume>
<page-range>494-498</page-range></nlm-citation>
</ref>
<ref id="B2">
<nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Bullheimer]]></surname>
<given-names><![CDATA[Bernd]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[An Examination Scheduling Model to Maximize Student´ Study Time]]></article-title>
<source><![CDATA[]]></source>
<year></year>
<conf-name><![CDATA[ 2nd international conference on the practice and theory of Automated Timetabling]]></conf-name>
<conf-date>1997</conf-date>
<conf-loc> </conf-loc>
</nlm-citation>
</ref>
<ref id="B3">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Burke]]></surname>
<given-names><![CDATA[E. K.]]></given-names>
</name>
<name>
<surname><![CDATA[Elliman]]></surname>
<given-names><![CDATA[D.G.]]></given-names>
</name>
<name>
<surname><![CDATA[Weare]]></surname>
<given-names><![CDATA[R.]]></given-names>
</name>
</person-group>
<source><![CDATA[A University Timetabling System based on Graph Colouring and Constraint Manipulation]]></source>
<year></year>
<publisher-name><![CDATA[Department of Computer Science, University of Nottingham]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B4">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Burke]]></surname>
<given-names><![CDATA[E. K.]]></given-names>
</name>
<name>
<surname><![CDATA[Newall]]></surname>
<given-names><![CDATA[P.P.]]></given-names>
</name>
<name>
<surname><![CDATA[Weare]]></surname>
<given-names><![CDATA[R. F.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[A Memetic Algorithm for University Exam Timetabling]]></article-title>
<source><![CDATA[The practice and Theory of Automated Timetabling: Selected Papers from the 1st International Conference, Lecture Notes in Computer Science]]></source>
<year>1996</year>
<page-range>241-250</page-range><publisher-loc><![CDATA[Springer-Verlag ]]></publisher-loc>
<publisher-name><![CDATA[Edmund Burke y Peter Ross, editors]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B5">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Burke]]></surname>
<given-names><![CDATA[E. K.]]></given-names>
</name>
<name>
<surname><![CDATA[Elliman]]></surname>
<given-names><![CDATA[D.G.]]></given-names>
</name>
<name>
<surname><![CDATA[Weare]]></surname>
<given-names><![CDATA[R.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Automated Scheduling of University Exams]]></article-title>
<source><![CDATA[Proceedings of I.E.E: Colloquium on Resource Scheduling for Large Scale Planning Systems]]></source>
<year>1993</year>
<numero>144</numero>
<issue>144</issue>
</nlm-citation>
</ref>
<ref id="B6">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Carter]]></surname>
<given-names><![CDATA[M. W.]]></given-names>
</name>
<name>
<surname><![CDATA[Laporte]]></surname>
<given-names><![CDATA[G.]]></given-names>
</name>
<name>
<surname><![CDATA[Chinneck]]></surname>
<given-names><![CDATA[J.W.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[A General Examination Scheduling System]]></article-title>
<source><![CDATA[]]></source>
<year></year>
</nlm-citation>
</ref>
<ref id="B7">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Carter]]></surname>
<given-names><![CDATA[M. W.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[A survey of Practical Applications of Examinations Timetabling Algorithms]]></article-title>
<source><![CDATA[OR Practice]]></source>
<year>1986</year>
<numero>34</numero>
<issue>34</issue>
<page-range>193-202</page-range></nlm-citation>
</ref>
<ref id="B8">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Cole]]></surname>
<given-names><![CDATA[A. J.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[The preparation of Examination Timetables using a small Store Computer]]></article-title>
<source><![CDATA[Comp. Jrnl]]></source>
<year>1964</year>
<numero>7</numero>
<issue>7</issue>
<page-range>117-121</page-range></nlm-citation>
</ref>
<ref id="B9">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Desroches]]></surname>
<given-names><![CDATA[S.]]></given-names>
</name>
<name>
<surname><![CDATA[Laporte]]></surname>
<given-names><![CDATA[G.]]></given-names>
</name>
<name>
<surname><![CDATA[Rousseau]]></surname>
<given-names><![CDATA[J.M.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Horex: a Computer Program for the Construction of Examination Shedules]]></article-title>
<source><![CDATA[Infor]]></source>
<year>1978</year>
<numero>16</numero>
<issue>16</issue>
<page-range>294-298</page-range></nlm-citation>
</ref>
<ref id="B10">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Dutton]]></surname>
<given-names><![CDATA[R. D.]]></given-names>
</name>
<name>
<surname><![CDATA[Brigham]]></surname>
<given-names><![CDATA[R.C.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[A new Graph Coloring Algorithm]]></article-title>
<source><![CDATA[Comp. Jrnl.]]></source>
<year>1981</year>
<numero>24</numero>
<issue>24</issue>
<page-range>85-86</page-range></nlm-citation>
</ref>
<ref id="B11">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Johnson]]></surname>
<given-names><![CDATA[D.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Timetabling university examinations]]></article-title>
<source><![CDATA[Journal of the Operations Research Society]]></source>
<year>1990</year>
<volume>1</volume>
<numero>41</numero>
<issue>41</issue>
<page-range>39-47</page-range></nlm-citation>
</ref>
<ref id="B12">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Karp]]></surname>
<given-names><![CDATA[R. M.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Reductibility among Combinatorial Problems]]></article-title>
<source><![CDATA[Complexity of Computer Computations]]></source>
<year>1972</year>
<publisher-loc><![CDATA[New York ]]></publisher-loc>
<publisher-name><![CDATA[Plenum Press]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B13">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Liam]]></surname>
<given-names><![CDATA[T.]]></given-names>
</name>
<name>
<surname><![CDATA[Merlot]]></surname>
<given-names><![CDATA[G.]]></given-names>
</name>
<name>
<surname><![CDATA[Boland]]></surname>
<given-names><![CDATA[Natashia]]></given-names>
</name>
<name>
<surname><![CDATA[Huges]]></surname>
<given-names><![CDATA[Barry D.]]></given-names>
</name>
<name>
<surname><![CDATA[Stuckey]]></surname>
<given-names><![CDATA[Peter J.]]></given-names>
</name>
</person-group>
<source><![CDATA[A Hibrid Algorithm for the Examination Timetabling Problem]]></source>
<year></year>
<publisher-loc><![CDATA[^eVictoria Victoria]]></publisher-loc>
<publisher-name><![CDATA[Department of Mathematics and Statistics and Department of Computer Science and Software Engineering, The University of Melbourne]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B14">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Tehran]]></surname>
<given-names><![CDATA[I. A.]]></given-names>
</name>
</person-group>
<article-title xml:lang="fr"><![CDATA[Un Algorithme de Coloration]]></article-title>
<source><![CDATA[Cahiers du center d’études do Recherche Opérationnelle]]></source>
<year>1975</year>
<numero>17</numero>
<issue>17</issue>
<page-range>395-398</page-range></nlm-citation>
</ref>
<ref id="B15">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Welsh]]></surname>
<given-names><![CDATA[D. J. A.]]></given-names>
</name>
<name>
<surname><![CDATA[Powell]]></surname>
<given-names><![CDATA[M. B.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[An Upper bound for the Chromatic Number of a Graph and Its Application to Timetabling Problems]]></article-title>
<source><![CDATA[Comp. Jrnl.]]></source>
<year>1967</year>
<numero>10</numero>
<issue>10</issue>
<page-range>85-86</page-range></nlm-citation>
</ref>
<ref id="B16">
<nlm-citation citation-type="confpro">
<person-group person-group-type="author">
<name>
<surname><![CDATA[Wong]]></surname>
<given-names><![CDATA[Tony]]></given-names>
</name>
<name>
<surname><![CDATA[Cote]]></surname>
<given-names><![CDATA[Pascal]]></given-names>
</name>
<name>
<surname><![CDATA[Gely]]></surname>
<given-names><![CDATA[Paul]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Final Exam Timetabling: A practical Approach]]></article-title>
<source><![CDATA[]]></source>
<year></year>
<conf-name><![CDATA[ IEEE Canadian Conference on Electrical & Computer Engineering]]></conf-name>
<conf-date>2002</conf-date>
<conf-loc> </conf-loc>
</nlm-citation>
</ref>
</ref-list>
</back>
</article>
