124
DGIT \ CENTRO NACIONAL DE INVESTIGACIÓN Y DESARROLLO TEdt$OLÓGICO SEP SEIT ’? i\ cenidet c OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN DE LOS SALONES DE CLASES DEL TIPO NP-COMPLETO T E S I S MAESTRO EN CIENCIAS EN CIENCIAS COMPUTACIONALES PARA OBTENER EL GRADO DE: ,. % PRESENTA: JOEL PÉREZ GONZÁLEZ

OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

DGIT \

CENTRO NACIONAL DE INVESTIGACIÓN Y DESARROLLO TEdt$OLÓGICO

SEP SEIT ’? i\

c e n i d e t

c

OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN DE LOS SALONES DE CLASES DEL

TIPO NP-COMPLETO

T E S I S

MAESTRO EN CIENCIAS EN CIENCIAS COMPUTACIONALES

PARA OBTENER EL GRADO DE: , . %

PRESENTA: JOEL PÉREZ GONZÁLEZ

Page 2: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Centro Naclonal de Invesligación y Desarrollo Tecnológico Sistema Nacional de Institutos Tecnológicos

ANEXO No.1 I

ACEPTACI~N DEL DOCUMENTO DE TESIS M10

Cuernavaca, Mor., a 16 de Marzo del 2004

C. Dr. Rodolfo A. Pazos Rangel Jefe del departamento de Ciencias Computacionales Presente.

At’n C. Dr. Gerard0 Reyes Salgado Presidente de la Academia de Ciencias Computacionales

Nos es grato comunicarle, que conforme a los lineamientoc para la obtención del grado de Maestro en Ciencias de este Centro, y después de haber sometido a revisión académica la tesis titulada:

DE CLASES DEL TIPO NP-COMPLETO”, realizada por el C. Joel Pérez González, y dirigida por el Dr. José Torres Jiménez, y habiendo realizado las correcciones que le fueron indicadas, acordamos ACEPTAR el documento final de tesis, así mismo le solicitamos tenga a bien extender el correspondiente oficio de autorización de impresión.

“OPTIMIZACI~N GENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES

Atentamente La Comisión de Revisión de Tesis

~&aqaquín Pérez Ortega Revisor-2 Revisor3

C.C.P. Subdmcción Acadhica Depariamento de Servicios Escolares Directores de tesis Estudiante

12 lvqlm.m ~ ~ ~ “ ~ ~ ~ h c 8 d ~ ~ - dila d. -n dindi. ddc€NIoEl

Page 3: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Centro Nacional de Investigaci6n y Desarrollo Tecnoltgico Sistema Nacional de Institutos Tecnológicos

ANEXO No. 12

MI 1 AUTORIZACI~N DE IMPRESI~N DE TESIS

Cuernavaca, Mor., a 16 de Marzo del 2004

C. Ing. Joel Pérez González Candidato al grado de Maestro en Ciencias en Ciencias Computacionales Presente.

Después de haber atendido las indicaciones sugeridas por la Comisión Reviscjra de la Academia de Ciencias Computacionales en relación a su trabajo de tesis cuyo titulo es: “OPTIMIZACIbN

TIPO NP-COMPLETO”, me es grato comunicarle que conforme a los lineamientos establecidos para la obtención del grado de Maestro en Ciencias en este centro se le concede la autorización para que proceda con la impresión de su tesis.

GENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL

Atentamente

C. Dr. Rod o A. Pazos Rangel Jefe del Departamento de Ciencias Computacionales

C.C.P. Subdirecci6n Académica Presidente de la Academia de Ciencias Computacionales Depaitamento de Servicios Escolares Expediente

Page 4: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

AGRADECIMIENTOS

Al creador:

Por darme lo necesario para lograr mis objetivos.

A mis padres Santos y Lucinda:

A su memoria, por mostrarme el camino, por contar con ellos en todo momento y por la mejor herencia que me pudieron dejar que es la educación.

A mis hermanos:

Aureliano, Paula, José Lino, Reyes, Marco Antonio, Irma Oralia, Adriana, Jesús Manuel, Silverio y Corazón de Jesús, por su ejemplo de honradez y trabajo.

A mi esposa Scherezada Aidee:

Por ser un apoyo y compañera en-los momentos difíciles de la vida.

A mi hijo Emmanuel:

Por ser mi motivación para el logro de mis metas.

Page 5: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

AI Dr. José Torres Jiménez por brindarme su apoyo, su asesoría, sus conocimientos y su experiencia para el mejor desarrollo de este trabajo.

A mis revisores: Dr. Raúl Pinto Elías, Dr. Joaquín Pérez Ortega y M.C. Andrea Magadán Salazar por el interés mostrado y por sus valiosas observaciones en la revisión de esta tesis.

A mi jefe de trabajo Ing. Israel Centeno Fuentes por su apoyo y comprensión.

A mis compañeros de generación que me acompañaron en este largo recorrido por cenidet, por su amistad y compañerismo .

AI Centro Nacional de Investigación y Desarrollo Tecnológico por darme la oportunidad de estudiar.

Gracias al Consejo Nacional de Ciencia y Tecnología Educativa por el apoyo económico que me otorgó para la realización de mis estudios.

Page 6: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

CONTENIDO CONTENIDO

LISTA DE FIGURAS

LISTA DE TABLAS

RESUMEN

CAPITULO 1 INTRODUCCI~N 1.1 Antecedentes. 1.2 Motivación e hipótesis. 1.3 Objetivo general. 1.4 Justificación. 1.5 Contribuciones. 1.6 Organización de la tesis.

CAPíTULO 2 ANÁLISIS Y PLANTEAMIENTO DEL PROBLEMA

2.1 Problemas combinatorios. 2.2 2.3

2.4 2.5. Trabajos relacionados.

Clases de complejidad de los problemas. Descripción del problema de la asignación de los salones de clases. 2.3.1 Formulación matemática del problema. Naturaleza del problema de la asignación de los salones de clases.

CAPíTULO 3 MARCO TEÓRICO Y ESTADO DEL ARTE DE LOS ALGORITMOS GENÉTICOS

3.1 Computación evolutiva.

3.2 Algoritmos genéticos.

3.3 3.4 Algoritmos meméticos.

3.1 .I Algoritmo evolutivo.

3.2.1 Algoritmo genético básico. Aplicaciones de los algoritmos genéticos.

3.4.1 Factores que motivan el uso de los algoritmos meméticos

i

i i

i i i

9

9 11 14 17 23 25

31

31 34 36

45 49 51

3a

Page 7: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

CAPíTULO 4 MÉTODO DE SOLUCIÓN PROPUESTO PARA EL

DE CLASES DELTIPO NP-COMPLETO 52 PROBLEMA DE ASIGNACI~N DE LOS SALONES

4.1 Método tradicional para resolver el problema de la asignación de los salones de clases. 52 4.1.1 Descripción del proceso manual para resolver el problema de la

53 Metodología de solución propuesto para resolver el problema de la

57 4.2.1 El problema de la asignación de los salones de clases a

resolver. 58 4.2.2 Modelo de solución propuesto para resolver el problema de la

asignación de los salones de clases. 58 4.2.3 Codificación de la representación para resolver el problema

59 4.2.4 Operadores genéticos. 65

4.2.4.1 Operadores de mutación para permutaciones. 65 4.2.4.2 Operadores de reparación o de optimización local. 66 4.2.4.3 Operadores de selección. 71 4.2.4.4 Operadores de cruza para permutaciones. 72

4.2.5 Función de aptitud. 74 4.2.6 Algoritmo genético propuesto. 76

asignación de los salones de clases.

asignación de los salones de clases. 4.2

de la asignación de los salones de clases.

CAPíTULO 5 DESCRIPCIÓN DE PRUEBAS Y RESULTADOS 79

5.1 Evaluación de un caso pequeño. 79 5.2 Evaluación de un caso real. a3

5.4 Comentarios finales a cerca de las pruebas realizadas. 90 5.3 Evaluación de instancias de casos de prueba reportadas en internet. 88

CAPíTULO VI CONCLUSIONES

6.1 6.2 6.3 Trabajos futuros.

Principales aportaciones de esta tesis. Principales limitantes de este trabajo.

92

92 94 94

Page 8: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

ANEXO A Recopilación de datos.

ANEXO B

ANEXO C Tablas de datos.

Modelo de base de datos.

ANEXO D

ANEXO E

Aplicaciones de los algoritmos geneticos.

Comparación de los trabajos presentados

REFERENCIAS BIBLIOGRÁFICAS

96

99

1 O0

103

106

1 o9

Page 9: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

LISTA DE FIGURAS

Figura 2.1

Figura 3.1 Figura 3.2 Figura 3.3 Figura 3.4 Figura 3.5 Figura 3.6 Figura 3.7

Figura 4.1

Figura 4.2 Figura 4.3 Figura 4.4 Figura 4.5 Figura 4.6 Figura 4.7 Figura 4.8 Figura 4.9

NP-Cornpletez.

Estructura de un programa evolutivo. Diagrama de flujo para un algoritmo evolutivo. Espacio de búsqueda complejo para un algoritmo genético. Algoritmo genético básico. Cruza de dos estructuras. Ejemplo de mutación de un cromosoma. Ejemplo de inversión de un cromosoma.

Modelo de base de datos para una asignación de salones de clases. Un cromosoma X de n genes. Estructura ASSIGNMENT. Un cromosoma X conteniendo una permutación de eventos. Intercambio de 2 genes de un cromosoma. Inversión de una subcadena de un cromosoma. Algoritmo de reparación de R6. Algoritmo de reparación de R7.

14

34 34 37 39 40 41 41

55 60 63 64 65 66 67 68

Algoritmo de reparación de R8. Figura 4.10 Algoritmo de reparación de R9. Figura 4.1 I Construcción de una secuencia modificada a partir de la

Figura 4.12 Algoritmo genético para resolver el problema de la asignación de los salones de clases.

69 70

secuencia original. 73

77

I

Page 10: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

LISTA DE TABLAS

Tabla 2.1

Tabla 2.2

Complejidad del problema de la asignación de los salones de clases. Resultados del trabajo "Modelo de asignación de carga académica usando algoritmos genéticos".

Tabla 3.1 Probabilidad acumulada.

Tabla 4.1 Tabla de eventos. Tabla 4.2 Tabla 4.3

Timeslot disponibles por salón. Una población X de Individuos.

Tabla 5.1 Tabla 5.2 Tabla 5.3 Tabla 5.4 Tabla 5.5 Tabla 5.6 Tabla 5.7

Tabla 5.8

Tabla 5.9 Tabla 5.10

Tabla de timeslots disponibles de los profesores. Tabla de timeslots disponibles de los salones. Tabla de Eventos. Tabla de Materias Incompatibles. Asignación final del caso pequeño. Métrica para definir la bondad de las soluciones. Instancias obtenidas de los datos de la Facultad de Ingeniería de la Universidad Autónoma de Tamaulipas campus Tampico. Resultados obtenidos al evaluar las instancias reales con el algoritmo genético. Instancias que se reportan en Internet Resultados obtenidos al evaluar las instancias reportadas en Internet.

24

28

43

61 62 64

80 80 81 81 82 84

85

86 88

89

.. I I

Page 11: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

RESUMEN

El problema de la asignación de los salones de clases es un problema

combinatorio perteneciente a la clase de problemas NP-Completos.

El problema de la asignación de los salones de clases consiste en

asignar cada determinada clase, la cual se realiza en diferentes intervalos de

tiempo, a un salón r particular, en un período t considerando las restricciones

y condiciones bajo las cuales se pueda asignar un salón para una clase dada.

El problema de la asignación de los salones de clases normalmente está sujeto

a una serie de restricciones que varía de institución a institución.

Para resolver este problema se pensó en un modelo de optimización

genética mediante programación evolutiva utilizando algoritmos genéticos bajo

el concepto de algoritrnoc rnernéticos, utilizando un operador de optimización

local. En esta investigación se utilizó una codificación del problema basada en

una representación de permutaciones de eventos, bajo esta representación se

reduce el espacio de búsqueda considerablemente al eliminar una gran cantidad

de soluciones inválidas.

Los resultados obtenidos han sido buenos en términos generales ya que

se han logrado resultados del 100% en la calidad de la solución. Sin embargo,

aunque el algoritmo se ha evaluado con un caso real y 5 instancias de prueba,

que varían en tamaño desde 120 hasta 800 eventos, es susceptible de ser

mejorado para resolver instancias de mayor tamaño y complejidad.

..< 111

Page 12: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

CAPíTULO 1

La evolución es una teoría, también es un hecho, y los hechos y las teorías son cosas distintas, no escalones en una jerarquía de certeza creciente. Los hechos son los datos acerca del mundo. Las teorías son estructuras de ideas que explican e interpretan los hechos. Los hechos no desaparecen cuando los científicos debaten teorías rivales para interpretarlos. La teoria de la gravitación de Einstein reemplazó la de Newton en este siglo, pero las manzanas no se quedaron suspendidas en el aire esperando el resultado. Y los humanos evolucionaron de ancestros simiescos ya sea por medio del mecanismo propuesto por Darwin o por otro que falte por descubrirse.

Stephen Jay Gould, "Evolution as Fact and Theory" Science and Creationism, (New York: Oxford University Press, 1984), p. 118.

1.1 Antecedentes

La complejidad computacional estudia la manera de clasificar los algoritmos

como buenos y malos de acuerdo a un criterio especifico y también trata de

clasificar los problemas de acuerdo a la dificultad inherente de resolverlos

agrupándolos en clases de problemas [3].

La clase de problemas NP corresponde a todos los problemas que

pueden ser resueltos por algoritmos no deterministicos con una función de

desempeño polinomial. La clase de problemas NP-Completos consta de los problemas NP más difíciles de resolver.

Resolver un problema de optimización combinatoria consiste en encontrar

la mejor solución, o la solución óptima, entre un conjunto finito o numerable de posibles soluciones alternativas.

1

Page 13: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimizacion Genetica del problema de asignación de los salones de clases del tipo NP-Completo

A lo largo de los años se ha demostrado que muchos problemas de

optimización combinatoria pertenecen a la clase de problemas NP-Completos, es decir, la solución óptima se obtiene usando algoritmos que emplean un

tiempo de computación que crece de forma exagerada, normalmente

exponencial, de acuerdo al tamaño del problema, por consiguiente, en muchos

casos, la solución óptima no puede ser obtenida en un tiempo razonable [37].

Cuando se quiere resolver problemas NP-Completos de gran tamaño se

debe escoger entre dos opciones: elegir un algoritmo que asegure la obtención

del valor óptimo pero con el riesgo de emplear un tiempo de computación

excesivo, a veces no disponible, o elegir un algoritmo que proporcione una

buena solución rápidamente (tiempo de computación polinomial), pero sin la

garantía de que sea la óptima.

En la actualidad no se conocen métodos exactos eficientes para encontrar

una solución óptima de un problema NP-Completo 131, como es el caso del

coloreo de grafos, el agente viajero y el problema de la asignación de salones de

clases, entre muchos más.

En esta tesis se aborda el problema de la asignación de los salones de

clases ya que es un problema combinatorio que llega a ser considerado NP-

Completo [I], y que además se presenta muy frecuentemente en la práctica.

En algunas instituciones educativas de nuestro país, tales como

Universidades e Institutos tecnológicos, se enfrentan al problema de la asignación de los salones de clases cada ciclo escolar, algunas instituciones

resuelven el problema manualmente cada ciclo escolar. Realizarlo de esta

manera requiere de personas experimentadas y de mucho tiempo (de 2 a 3

semanas) y normalmente es susceptible de modificaciones provocando quejas e

imprecisiones. En otros casos, se emplean heuristicas del tipo FIFO (primero en llegar, primero en ser atendido), consecuentemente la gente tiene que aceptar

2

Page 14: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

salones que no cumplen con sus requerimientos y el problema sigue existiendo

periodo tras período.

El problema de la asignación de los salones de clases está sujeto a una

serie de restricciones duras y restricciones suaves o preferencias monotónicas,

de las cuales las restricciones duras son necesarias para que se pueda realizar

una asignación adecuada, y las restricciones suaves no son tan obligatorias,

pero sí son deseables para obtener una asignación Óptima.

Las restricciones duras más comunes son las siguientes:

HRI.

HR2.

HR3.

HR4.

HR5.

HR6.

HR7.

HR8.

Los recursos requeridos no deben ser mayores que los recursos

disponibles (disponibilidad de los salones).

Se deben programar todos los cursos requeridos completamente.

Cada clase es asignada a un salón únicamente en un periodo

determinado.

Cada salón es usado solamente en sus períodos disponibles.

Evitar que cada salón tenga más de una clase asignada en un

período determinado.

Cada profesor sólo es asignado a períodos disponibles por él. No debe haber empalmes de profesores con sus grupos.

No empalme de materias no compatibles en horarios, es decir,

proveer la posibilidad de que los alumnos puedan tomar las

materias que requiera sin que se empalmen sus horarios. 1

Las restricciones suaves o preferencias monotónicas más comunes son las siguientes :

SRI. Evitar tiempos libres de los profesores entre cada clase. SR2. Evitar tiempos libres de los alumnos entre cada clase. SR3. Asignar períodos continuos de las clases.

SR4. Tipo de salones preferidos para realizar las clases.

SR5. Ubicación de los salones

3

Page 15: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

El problema de asignación de los salones de clases consiste en asignar

cada determinada clase, las cuales se realizan en diferentes intervalos de

tiempo, a un salón particulal, en un período t considerando las restricciones y

condiciones bajo las cuales se pueda asignar un salón para una clase dada.

Existe un poco de confusión al considerar qué tan difícil es el problema de

la asignación de los salodes de clases, algunas personas afirman que es

demasiado fácil, mientras otfios piensan que es casi imposible. La dificultad para

resolver el problema de la asignación de los salones de clases no depende sólo del objetivo y del tamaño del problema, sino también de las restricciones a las

cuales está sujeto. I

En la actualidad, la elaboración automática de horarios es considerada

como un área de investigación donde se encuentran trabajando algunos grupos

de investigadores, entre ellos está el grupo WATT, Working Group on Automated

Timetabling, este grupo de trabajo organiza conferencias periódica sobre el tema

(PATAT, Practice and Theory of Automated Timetabling).

I

Existen algunos sistemas automatizados de asignación de salones de

clases [4], [21], [22], [23], [24], [28], [33], donde, en algunos casos, los datos

para ejecutar el algoritmo no son reales [4], o el tamaño y la complejidad del

problema son relativamente pequeños [22], o están diseñados con heuristicas

para resolver el problema de una institución en particular de acuerdo a sus necesidades específicas [28],1 o los resultados dependen del orden de los datos de entada [21], [23].

I

Las técnicas empleadas para resolver el problema de la asignación de los salones de clases han sido ,muy variadas, las más utilizadas son: simulated annealing, tabu search, algoiitmos genéticos, sistemas expertos basados en

reglas, métodos de descomposición y coloreo de grafos.

4

Page 16: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimiración Genetica del problema de asignación de los salones de clases del tipo NP-Completo

Una de las técnicas más robustas para búsquedas estocásticas son los

algoritmos genéticos, cuyo:s métodos de búsqueda se inspiran en algunos

fenómenos naturales comb son la herencia genética y la lucha por la

supervivencia de acuerdo cdn Darwin [30], estos algoritmos estocásticos utilizan

la probabilidad para guiar su búsqueda; una.de las cualidades más importantes

de los algoritmos genéticos es su habilidad para evaluar varias posibles

soluciones simultáneamente (paralelismo implícito) [ IO]. Los algoritmos

genéticos se utilizan para realizar búsquedas eficientes en espacios de solución

altamente complejos y grandes, se trata de algoritmos de búsqueda de

optimización estocástica, y 'representan una técnica de la inteligencia artificial

basada en los mecanismos de selección natural.

1.2 Motivación e Hipótesis

A pesar de que se han realitado varios trabajos previos sobre la asignación de

salones de clases, se dese4 proponer un método que lo resuelva de manera

efectiva y que pueda aceptar una variedad de problemas de asignación de

salones de clases de diferentes características.

Uno de los motivos por los que el problema de la asignación de salones

de clases se vuelve un problema muy difícil de tratar es que cada institución

tiene sus propios requerimientos y estos varian mucho de una institución a otra,

aunque comparten muchas situaciones similares. Otra de las razones es que es

un problema cornbinatorio con -un espacio de búsqueda enorme y que :está

sujeto a diversas restricciones.

i Hipótesis: Es posible resolver el problema de la asignación de los

salones de clases medianle un modelo de optimización genética no determinístico, el cual proporciona más de una posible solución de buena

calidad de acuerdo a la optimización de una función objetivo.

, .

5 !

Page 17: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

1.3 Objetivo General

El objetivo general es: Desarrollar un esquema de solución para el problema de

la asignación de los salones de clases del tipo NP-Completo, mediante

algoritmos genéticos aplicando un operador de optimización local.

El esquema de solución desarrollado será evaluado con un caso real y

con casos de prueba reportados y publicados en Internet.

1.4 Justificación

El problema de la asignación de los salones de clases llega a convertirse en un

problema del tipo NP-Completo [I], su dificultad llega a ser muy grande cuando

se torna altamente restringido, por ejemplo, a pesar de que existan los recursos

necesarios se tienen que satisfacer una serie de restricciones que están

interrelacionadas entre sí de tal manera que la modificación de una asignación

de una clase en determinado salón y en determinado período puede afectar a

otra asignación similar; otra causa que lo convierte en un problema difícil es su

tamaño.

1.5 Confribuciones

La aportación de este trabajo es el diseño y desarrollo de un esquema de

solución para el problema de la asignación de los salones de clases.

La metodología de solución del problema de la asignación de los salones de clases es una aportación más de ésta investigación, la metodología de solución está definida en el Capítulo 4.

6

Page 18: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

Otra de las contribuciones es la utilización de la codificación como una

representación de permutacibnes la cual :permite reducir el espacio de búsqueda

eliminando soluciones invalidas, además que opera excelentemente bien con los

operadores de cruza y mutación del algoritmo genético.

I

1.6 Organización de est4 tesis

En el Capítulo 1 se da a conocer la situación real del problema de la asignación

de los salones de clases en nuestro pais y muestra qué tan dificil es, lo cual

motiva para realizar este trabajo de tesis. También se plantea la hipótesis de

trabajo de esta tesis así como el objetivo general y la justificación de realizar

este trabajo de investigación; se describen cuales serán las contribuciones de

este trabajo de tesis.

I

~

En el Capítulo 2 se hace un análisis del'problema de.la asignación de los salones de clases, comienza abordando los problemas combinatorios, se realiza

un estudio de los problemas NP-Completos, se describe la naturaleza del

problema y su complejidad y se lista una relación de trabajos relacionados.

En el Capitulo 3 se describe el estado del arte de los algoritmos

genéticos, se aborda la programación evolutiva para después dar paso al

análisis de los algoritmos genéticos como mecanismos computacionales

estocásticos que permiten realizar búsquedas efectivas en espacios muy

grandes y complejos, y se describe toda su estructura y sus operadores genéticos y finaliza con un listado de aplicaciones de los algoritmos genéticos.

I

I En el Capítulo 4 se piantea el método de solución para el problema de la

asignación de los salones de clases como un modelo de optimización genética y se describen los elementos que integran este modelo y cómo son utilizados, así como algunos algoritmos que son útiles en la solución del problema de

asignación de los salones de clases.

I

I

I 7

Page 19: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

. .

Optimizacion Genetica del problema de asignación de los salones de clases del tipo NP-Completo

En el Capítulo 5 se describen las pruebas realizadas y los resultados , . .

, , obtenidos.

En el Capítulo 6 se presentan las/ conclusiones obtenidas después de

haber realizado este trabajo $e invect¡ga&n, tanto las aportaciones como los trabajos futuros.

Page 20: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

t

Optimización Genetica del problema /de asignación de los salones de clases del tipo NP-Completo

CAPíTULO 2

ANÁLISIS Y PLANTEAMIENTO DEL PROBLEMA

En este capítulo se describe brevemente en que consisten los problemas de

optimización combinatoria, posteriormente se abordan las clases de complejidad

de los problemas y finalmente se describe el problema de asignación de los

salones de clases. Con estos; elementos se ubica el problema de la asignación

de los salones de clases dentro de un contexto que muestra su dificultad.

2.1 Problemas combínatoiios.

En los problemas de decisión que normalmente se presentan en cualquier

ámbito, se parte de una serie de recursos escasos, o bien de unos requisitos

mínimos que hay que cumplir, los cuales condicionan la elección de la mejor

solución para la decisión, por lo general esta decisión ha de tomarse de manera

óptima; esto mismo expresado en términos matemáticos sería optimizar una

función objetivo (la decisión), sujeta a una serie de restricciones (los recursos

escasos o requisitos mínimos).,

Cuando la función objetivo y las restricciones son lineales, este tipo de

problemas tiene solución mediante la programación lineal, dentro de esta

disciplina cabe destacar el algoritmo simplex. Cuando el número de variables

que intervienen en el problema es muy elevado, el algoritmo simplex deja de ser eficiente, debido al tiempo necesario para encontrar la solución óptima del modelo.

En los problemas de optimización combinatoria las variables de decisión son enteras y por lo general el espacio de soluciones está formado por ordenaciones o subconjuntos de números naturales, en estos problemas se trata de hallar el mejor valor entre un número finito de posibilidades, pero la

1 I i

9

Page 21: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

!

I

!

Optimización Genética del problema de asignación $e los salones de clases del tipo NP-Completo

. .

enumeración de este conjunto de posibilidades resulta prácticamente imposible,

aún para instancias de tamafio moderado. I

!

Cuando se intenta resolver un problema de optimización combinatoria se

busca encontrar la mejor soldción en el menor tiempo posible, o en su defecto, si

no se sabe que exista una solución, lo más conveniente es encontrar una

solución cercana a la óptima de entre un conjunto de soluciones posibles.

i

Existen dos métodos ¡de intentar resolver un problema de optimización

combinatoria:

U).-

b).-

El primero es utilizar u'n algoritmo que busque precisamente la solución

óptima, solo que'esto io hará de manera exhaustiva. El problema que se

presenta es que se podrían tener algoritmos de tiempo de ejecución

prácticamente imposible de alcanzar, ejemplo de ellos son los algoritmos de

enumeración y las técnicas de programación dinámica.

El segundo es utilizar ilgoritmos que obtengan una solución con rapidez,

en estos métodos no se garantiza obtener la solución Óptima, ni que no

exista; de esta manera se cae en la suboptimalidad, aquí se encuentra a los

algoritmos de aproximadión o algoritmos heurísticos.

i Existen diferentes tipos de heuristicas tales como los métodos

constructivos, de descomposición, de reducción, de búsquedas por entorno, etc.

Uno de los mayores inconveqientes con los que se enfrentan estos métodos es

la existencia de óptimos locales, es decir, que no sean absolutos, así como

conseguir hacerse independientes de la solución inicial de la que parten.

La tendencia actual es besarrollar métodos generales para resolver clases

o categorías de problemas, conocidos como procedimientos meta heurísticos, estos algoritmos son una clase de métodos aproximados y diseñados para resolver problemas difíciles dB optimización combinatoria donde las heurísticas clásicas no son ni efectivas ni eficientes. Los algoritmos meta heurísticos proporcionan un marco general para crear nuevos algoritmos híbridos

!

10

Page 22: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

i 1

Optimización Genetica del problema de asignación be los salones de clases del tipo NP-Completo

, ,

combinando diferentes conceptos derivados de la inteligencia artificial, de la

evolución biológica y de ids mecanismos estadísticos. Se define una meta heurística como un procesd iterativo que guía a una heurística subordinada

combinando inteligentemente distintos conceptos para explorar el espacio de

búsqueda a partir de solucidnes iniciales (generadas en forma aleatoria o por un

algoritmo diseñado para tal efecto), en cada paso del proceso, se generan

nuevas soluciones.. con base a las obtenidas en las etapas previas, pudiendo

utilizar para ello diversos criterios [34]. Algunos de los principales métodos meta

heurísticos son: algoritmos genéticos, redes neuronales, búsqueda tabú,

GRASP, recocido simulado, .etc.

!

Por lo tanto lo mas recomendable para solucionar problemas de

optimización combinatoria es utilizar métodos meta heurísticos.

2.2

Un área fundamental en la teoría de las ciencias computacionales es la teoría de

la complejidad computacional y el análisis de los recursos necesarios para

resolver problemas computacionales. L a teoría de la complejidad computacional

estudia la manera de clasificar los algoritmos como buenos y malos de acuerdo

a un criterio específico y tahbién trata la manera de clasificar los problemas de acuerdo a la dificultad inhetjente a la búsqueda de su solución. Para darles una

solución existen diferentes tbcnicas de las cuales las más fundamentales son: la máquina determinística y la^ máquina no determinística.

Clases de complejidad de los problemas ~

Máquina determinística: Es aquella en la cual para una misma entrada siempre se obtiene el mismo resultado.

Máquina no determ'inística: Es aquella en la cual para una misma entrada se pueden obtener yesultados diferentes.

I !

0 4 - 8 2 7 0 11

Page 23: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I

tiempo polinomial [35].

La clase de problemas no han podido ser resueltos

Optimiración Genética del problema de asignación de los salones de clases del tipo NP-Completo

NP son los problemas que hasta la fecha todavía de manera exacta por medio de algoritmos

Existen algoritmos determinísticos y algoritmos no determinísticos de

acuerdo con las técnicas usadas [32]; \

I

Los investigadores ed el área de la teoría de las ciencias computacionales

han definido algunos modelgs computacionales, tales como máquina de Turing,

circuitos booleanos, máquiias aleatorias paralelas, etc., también miden los recursos computacionales dales como el tiempo, la cantidad de hardware, etc. Los modelos computacionales deben ser lo suficientemente simples para

permitir el análisis matemájico de los problemas y lo suficientemente generales

para ser utilizados en un coptexto amplio [36].

I

I

Tradicionalmente se han llamado algoritmos eficientes a aquellos cuyo

tiempo de ejecución tiene su límite máximo en una función polinomial

dependiente del tamaño d i la entrada. Debido a la diferencia en la forma de

resolución de los problemas. se han agrupado los problemas en clases. La

definición de clases para 10s diversos problemas es parte de la teoría de la

complejidad computacional.

Una clase de compiejidad computacional es el conjunto de problemas

solubles en un modelo computacional particular y sujeto a recursos

computacionales particulares. Las clases de complejidad en las ciencias

computacionales comprenden dos clases principales, como son la clase P y la clase NP.

1 12

Page 24: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I Optimización Genetica del problema de asignación’delos salones de clases del tipo NP-Completo

. . I

deterministas eficientes, pero que. pueden ser resueltos por algoritmos no-

deterministas y cuya soiucion son de complejidad polinomial en tiempo.

La relación entre la clase P y la clase NP es estrecha: P C NP. Cualquier

problema resuelto por un algoritmo determinístico en tiempo polinomial también

es resuelto por un algoritmoino deterministico en tiempo polinomial. !

Un problema básico es determinar si P = NP o P # NP. La teoría de NP-

completez se basa en el concepto de transformación polinomial.

La clase NP-Completo consta de los problemas NP mas difíciles de

resolver como se muestra en la Figura 2.1, y deben cumplir dos caracteristicas

para ser considerados NP-Completo [32]: I

’ 1.- Un problema X es NP-Completo si X E NP (es decir, si X es un

problema de la clase NP).

2.- Un problema X es NP-Completo si tí X‘ E NP es transformable

polinomialmente a X ( es decir, todos los problemas en NP son reductibles para

la clase NP-Completo mediante una transformación polinomial).

La importancia de resolver un problema NP-Completo radica en que si

algún problema NP-Completo de una determinada clase admitiera una solución

eficiente, cuyo tiempo de !ejecución crece como las funciones polinomiales,

entonces todos los demás problemas de esta clase, también admitirán

soluciones eficientes [3], y debido a este gran reto, en esta tesis se intenta resolver un problema combinatorio especifico de la clase NP-Completo llamado

“Asignación de los salones de clases”.

1

13

Page 25: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I

I

1 : Optimización Genética del problemadeasignación de los salones de clases del tipo NP-Completo

I , Figura 2.1 NP-Completez.

2.3 Descripción del problema de la asignación de los salones de clases

El problema de asignación d e los salones de clases normalmente esta sujeto a

una serie de restricciones que varían de institución a institución, pero se pueden

clasificar de acuerdo a su naturaleza y relevancia, por ejemplo, las restricciones

que se tienen que cumplid necesariamente para que se pueda realizar una

asignación adecuada y se satisfaga la demanda de cursos se pueden clasificar

como restricciones duras.

I

Las restricciones duras más comunes son las siguientes:

R1.- Para cada tipo de salón, los .timeslots o períodos requeridos son

menores o iguales que los hes lo ts o períodos disponibles para ellos,

es decir, los recursos requeridos deben ser menores o iguales que los

R2.- Cada grúpo tien'e el número correcto de timeslots o períodos

asignados, es decir, se deben programar todos los cursos requeridos completamente. ~

R3.- Cada grupo es asignado a un salón particular solamente en un

periodo, es decir,: cada clase es asignada a un salón únicamente en un período determinado.

R4.- Cada salón es ;usado solamente 'en sus timeslots o períodos

I

recursos disponibles. I

!

I

' , ~

disponibles. i

Page 26: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I

1 I Optimización Genética del problema'de asignación de los salones de clases del tipo NP-Completo

I I

I 1

R5.- Dos grupos no soh asignados al mismo salón en el mismo timeslot o

período, es decir,; evitar que cada salon tenga más de una clase

asignada en un período determinado.

R6.- Cada profesor sóid es asignado a timeslots o periodos disponibles por

!

I I

i él.

R7.- No debe haber empalmes de profesores con sus grupos.

R8.- No empalme de m'aterias no compatibles en horarios, es decir, proveer

la posibilidad de 'que los alumnos puedan tomar las materias que

requiera sin que s& empalmen sus horarios.

R9.- ' Tipo de salones p!referidos para realizar las clases.

R10.- Asignar períodos ontinuos entre las clases

Existen otras restricciones menos fuertes las cuales son llamadas

restricciones suaves, aunquk no son tan necesarias o son tomadas en segundo

término para considerar uha asignación adecuada, sí son deseables para

obtener una asignación Óptima, estas restricciones dependen de cada institución

para ser tomadas en cuenta en la asignación de los salones de clases para cubrir sus demandas. ~

Las restricciones suaves más comunes son las siguientes:

R11 Evitar tiempos libres de los profesores entre cada clase.

R12 Evitar tiempos libres de los alumnos entre cada clase.

R13 Ubicación de los salones

I 1

I i

Las restricciones de maestros, clases y salones tienen un tratamiento especial, en el sentido de que se relacionan con una función de costo al realizar

cierta asignación, la cual minimiza la violación de estas restricciones. I . .

Los salones pueden ser preferidos por una serie de razones diferentes: la ubicación es un criterio, algunas personas prefieren salones sin ventanas para propósitos de proyecciones filrnicas o salones con computadoras, etc. El

instructor puede especificar, una lista de salones preferidos, o bien, cada clase I

I

15

Page 27: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Í I

Optimización Genética del problemajde asignación de Íos salones de Clases del tiPo NP-Completo

puede ser asignada a una hita de posibles..salones en el orden de preferencia,

es decir, se establece una jerarquí de preferencias, a este tipo de preferencias

se les denomina preferencias mon tónicas [I]. : I I I I

' I

~

! I i Se pueden seguir defiiniend más restricciones pero cada vez se hará el

problema más complejo de 110 que es debido a que la asignación o modificación

de un evento es altamente dependiente con la asignación de otros eventos (lo

que se conoce en algoritmds genéticos como epistasis). La penalización de la

violación de cada restricción se definirá en una métrica para evaluar la calidad de la solución. !

!

I

I ~

El problema de la asignación de los salones de clases se refiere al hecho

de asignar cada determinada clase, perteneciente a un conjunto dado de clases,

las cuales se realizan en diferentes intervalos de tiempo, a un salón particular

perteneciente a un conjunto de salones de clases descrito, en un período t,

considerando las restricciones y condiciones bajo las cuales se pueda asignar un

salón para una clase dada, he manera que no se violen estas restricciones, o en

su defecto, el costo de vioiar/ias sea mínimo.

!

Los objetivos principales de la asignación de los salones de clases I

son los siguientes: I

1 .- Cada clase debe ser asignada a algún salón.

2.- Evitar que cualquier I salón tenga más de una clase en un tiempo determinado.

Page 28: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

!

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

2.3.1 Formulación matematica del problema

El problema está expresado, en términos de la variable xjjk , valuada en O ó 1

I

1

0 eh otro caso.

si la clase i es asignada al salón j en el periodo k.

xiik

El tiempo será dividido de manera arbitraria en periodos de 60 minutos,

aunque no todos los periodbs tienen que ser de la misma longitud. Cuando se

fija el número de periodosi se refiere a este caso como un problema de k períodos con las siguientes [estricciones matemáticas:

1

R1.- Para cada tipo ;de salón, los timeslots o periodos requeridos son

menores o iguales que los (heslots o períodos disponibles.para ellos, es decir,

los recursos requeridos .deben ser menores o iguales que los recursos

disponibles

VI

E

= Violaciones a ía restr/cción RI.

= Total tipo de salones. i

t

kre = Número de periodos para el tipo de salón e requerido

kae = Número de periodok para el tipo de salón e disponible.

Page 29: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I

Optimización Genética del problema de asignación de los, salones de clases del tipo NP-Completo

R2.- Cada grupo tiene el número correcto de timeslots o períodos

asignados, es decir, se ;deben programar todos los cursos requeridos

v2

n

m = Total salones.

K = Total periodos.

= Violaciones a la resti

= Total de clases soli

R3.- Cada grupo e: período, es decir, cada cla:

determinado.

v3

n

m = Total salones.

K = Total períodos.

= Violaciones a la res

= Total de clases soli

g( i ) = -

ción R2.

adas.

asignado a un salón particular solamente en un

es asignada a un salón únicamente en un período

x ión R3.

adas.

m K

j=l k=l ( c c X q d =I

En caso contrario

18

Page 30: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problem

R4.- Cada salón es u disponibles.

v4

m = Total salones.

K = Total periodos

cvk = Salón j requerido I:

Cajk = Salón j disponible

= Violaciones a la re:

R5.- Dos grupos no I

período, es decir, evitar quc

período determinado.

1

v5 = Violaciones a la re:

n = Total de clases soli

m = Total salones. K = Total períodos.

ie asignación de los salones de clases del tipo NP-Completo

,do solamente en sus timeslots o periodos

cción R4.

.iodo k.

?ríodo k.

n asignados al mismo salón en el mismo”times/ot o

:ada salón tenga más de una clase asignada en un

icción R5.

adas.

n K

( E E x i jk ) =I i=l k=l

En caso contrario.

19

Page 31: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

i

I

Optimización Genética del problei

R6.- Cada profesor

por él.

V6

T = Total profesores.

K = Total períodos.

= Violaciones a la re

trjk = profesor t requeric

tajk = profesor t disponi

R7.- No debe habei

q = Violaciones a la re

T = Total profesores.

K = Total períodos.

tvk = profesor t requerii

e asignación de los salones de clases del tipo NP-Completo

o es asignado a timeslots o períodos disponibles

:cion R6.

eríodo k.

período k.

ipalmes de profesores con sus grupos

. ... , ., . ..._. ./_- , ....

/.

''. a, .: !/. '

, . . . trtk ) - q (t,kj

. .*< -. * d.

- , . .

xión R7.

leríodo k

En caso contrario.

CENTRO DE INFORMACION """I SEP CENIDET

20

Page 32: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

! Optimización Genética del problema/de asignación de los salones de clases del tipo NP-Completo

~

, .

R8.- No empalme de materias no compatibles en horarios, es decir,

proveer la posibilidad de que los alumnos puedan tomar las materias que

requiera sin que se empalmen sus horarios. !

I

I v8

U = Total materias. i n = Total clases solicitadas.

K = Total períodos. I

= Violaciones a la restcción R8 j

!

i Si la c¡ase i pertenece ala materia u y está asignada en el período k. en caso contrario.

Xiuk =

1

0

Si la clase I pertenece ala materia v y está asignada en el período k. en msn contrario

f l v k = !

Si la materia u es incompatible con al materia v.

en cann contrario suv =

R9.- Tipo de salones I preferidos para realizar las clases.

vg

n = Total clases solicitaidas.

= Violaciones a la restiicción ~ 9 .

m = total salones. K = Total períodos.

~

I 21

Page 33: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I

Optimización Genética del problem< de asignación de los salones de clases del tipo NP-Completo i

1 Si la clase i es asignada en el salón j en el periodo k. Xyk = I

L n en caso cnntrarin i

1

n en c a w cnntrarin

SI salon j es el salón preferido de la clase i I I t-,=

R10.- Asignar periodos continuos entre las clases.

D G

( X g d h Ygdf - Ogd VIO = d=l g=l

-

V I 0

D

G

Xgdh = timeslot inicial h de la primera clase del grupo g e n el día d.

= Violaciones a la redtricción R10

= Total días de clases

= Total grupos de materias

1

I

I Ygdf = timeslot final f de laiúltima clase del grupo g en el día d.

Ogd = Total de clases del grupo g asignadas en el día d

Se definen tres objetivos para el problema de la asignación de los salones de clases [I]: 1

i

* Factibilidad: ‘Hay una Solución factible que cumpla con las restricciones matemáticas anteriores?. i ,

* Satisfactibilidad: Dado, para cada clase i, un conjunto de salones Si que

sean satisfactorios, ¿Existe una solución factible para las restricciones

i

I 22

Page 34: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I

I

1 : I

!

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo ! I

! matemáticas anteriores que coloque cada clase en un salón satisfactorio de

acuerdo con una lista de preierencias?.

Optimización: Se asume :la existencia de un modelo de costo lineal que describa adecuadamente el Problema y refleje preferencias razonables sobre los

salones, donde la cantidad be violaciones vr de cada una de las restricciones

planteadas tiene un valor de/ penalización Pr . El objetivo es minimizar:

!

j

El costo de asignar I& clase i al salón j está definido como la suma de

todas las restricciones duras y restricciones suaves violadas, las cuales se

miden con una penalización de acuerdo a cada una de las restricciones según

se defina la prioridad entre las restricciones.

!

I

j

2.4 Naturaleza del problema de la asignación de los salones de clases

Existen dos versiones del problema de la asignación de los salones de clases,

dependiendo de cómo se inierpreta la palabra clase.

Considérese'a la primera versión como el "problema de un día o de

intervalo". Comúnmente, e$ esta versión del problema, todas las clases de un ~ grupo se realizan en un is010 día de la semana, durante varios periodos

consecutivos. En este caso la clase requiere el uso de un salón durante un intervalo. de aquí el nombre! alternativo "programación de intervalos".

I

!

I

Pero las clases puedLn llevarse a cabo en más de un dia de la semana, algunas instituciones requieren que cada clase deba realizarse en el mismo salón. Llamemos a esta versión el "problema multidía o de no-intervalo".

I 23

Page 35: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

, I Optimización Genetica del problem? de asignación de los salones de clases del tipo NP-Completo

El objetivo de Factibiljdad del problema de la asignación de los salones

de clases es NP-Completo buando se desea asignar el mismo salón para cada

clase, la cual se realiza Gn más de un día de la semana. El objetivo de

Satisfactibilidad para este j problema es NP-Completo aún cuando existen

solamente dos períodos. buando el problema está además restringido a

funciones de preferencias m'onotónicas, resulta un problema NP-Completo.

!

~

i

La Tabla 2.1 rnuestrzi la complejidad de los problemas de asignación de

salones de clases según su clasificación y objetivos [I]:

1 Tabla 2.1 Complejidad ,del problema de la asignación de los salones de

clases. i

Fac. fácil Sat. NPC Fac. fácil Sat. NPC

Fac. fácil Sat. NPC

Fac. fácil Sat. NPC

, Donde Fac. Significa Factibilidad, Sat. es igual a Satisfactibilidad y NPC quiere decir NP-Completo.

!

24

Page 36: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

i ~

Optirnización Genética del p rob led 1 de asignación de los salones de clases del tipo NP-Completo

! ! (

I

I

En resumen, el problema de la asignación de los salones de clases es un

problema difícil de resolver por su naturaleza de ser un problema NP-Completo

además de lo complicado qhe resulta debido a sus restricciones y a su tamaño

en sí; sin embargo, es posibje aportar métodos de solución aceptables. I

2.5 Trabajos relacionados !

¿ Qué se ha hecho hasta; ahora respecto al problema de asignación de los

salones de clases?. Exis(en varios trabajos desarrollados con relación al

problema de asignación de los salones de clases, se han reportado algunos

resultados obtenidos mediarite el uso de técnicas de inteligencia artificial:

I

i

!

i I. En 1985 se encuentra "rimetabling problem for university assignment of

activities to resources" [1151.

2. Más tarde en 1987 se presenta "Scheduling jobs with fixed start and

3. Posteriormente en 199b "Optimizing a presentation timetable using

evolutionary algorithms" i l7].

4. Existen trabajos desarrollados para resolver problemas de optimización como

el mostrado en 1995 en! "Allocation data and operations to nodes in

distributed database design" [20].

I I

end times" [16]. ~

I ~

j

Los trabajos presentados más recientemente a partir de 1996 son:

1. "Optimización de la asignación de salón-horario-grupo mediante

recocido simulado", [4] !en 1996 donde se reporta .que el problema de asignación de salones del ITESM Campus Monterrey, en particular, es de magnitud muy grande, ya hue cuenta con más de 2500 grupos, más de 950

I

I

Page 37: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I

Optimizacion Genética del problema de asignación de los salones de clases del tipo NP-Completo ! I I i

materias que ofrecen los departamentos académicos, y 182 salones para hacer

la asignación [4]. Los resultados obtenidos fueron los siguientes: ,

I l

a).- Los datos que SI utilizaron para realizar las pruebas no son reales,

fueron generados partiend; de una cantidad de grupos muy similar al proceso

de asignación realizado en bl ITESM campus Monterrey.

b).. La validación del las soluciones obtenidas se hizo directamente como

sigue: si existen “muchos; empalmes la solución no es válida, si son “pocos“,

es posible hacer una perdutación manual para resolver el problema. Aquí, el

detalle está en los términos muchos y pocos, no está precisado cuánto es cada

cantidad, además se requie‘re de una permutación adicional para su solución.

I

c).- La validación de una solución de este tipo, no se hizo comparándola

con una asignación previalde semestres anteriores, debido a la saturación de

trabajo del departamento de Servicios de Información Escolar y la falta de tiempo

de los investigadores, el trabajo fue desarrollado sólo en 5 semanas.

~

~

2. Un trabajo presentado bor Colorni A., M. Dorigo & V. Maniezzo en 1998 es

“Metaheuristics for highjschool timetabling” [24]. Presenta la comparación

de tres métodos meta heurísticos para resolver problemas de asignación de

horarios. Compara los resdltados obtenidos mediante simulated annealing, tabu

search y algoritmos geneticos, los resultados muestran que los algoritmos

genéticos con búsqueda ~ local y tabu search se desempeñan mejor que simulated annealing y la realización manual de la asignación, para realizar esta

comparación se usó la construcción de una asignación de horarios para una , escuela de nivel medio superior (high school) con datos reales, la idea central

es que se pueda utilizar este concepto para problemas de mayor complejidad.

,

I

, ~

I

! I ! !

Page 38: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

~

Optimizaclón Genética del problema de asignacion de los salones de clases del tipo NP-Completo

! I

3. El estado del arte reporta! el trabajo realizado por Pablo Gervás Y Beatriz San

Miguel en 1999 titulado “;Un sistema experto basado en reglas para la automatización de la elaboración de horarios para un conjunto de

restricciones particulares/’ [21]. Es un sistema experto basado en reglas que

razonan hacia adelante, este sistema se evalúa enfrentandolo a distintas

colecciones de datos de ejtrada y son aprobados por el experto en la materia

pero no ha sido utilizado en! la práctica. Sus características son las siguientes:

i

i

I

I

a).. Evalúa un cam$o.de acción de 2 carreras de 10 y 6 semestres respectivamente. j

b).- Maneja horarios compactos.

c).- Depende del orden de los datos de entrada I

d).- Aun no se han: implementado todas las reglas o restricciones y

criterios del experto. i

e).- El sistema produce una primera solución y el experto la mejora.

f).- La solución que de obtiene no es la mejor de todas las posibles.

g).- Emite sólo una solución. I

h).- La versión definitiva del sistema esta en fase de desarrollo.

,

4. En la literatura se encuentran otros trabajos como el que presenta Bruno

López Takeya en el atio;2000 titulado “Modelo de asignación de carga

académica usando a lgor ihos genéticos” 1221 el cual reporta lo siguiente:

a).- El caso de estudio corresponde a los primeros 4 semestres del área de ISC como muestra representativa del proceso completo.

Page 39: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

~

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo I

b).- La evaluación de !un cromosoma se realiza por medio de un conjunto

básico de penalizaciones 1 de acuerdo a las restricciones fundamentales:

empalmes de grupos, empalhes de profesores y evitar períodos inactivos.

i c).- No reporta uso de preferencia monotónicas.

d).- Los resultados 10s comparan con un proceso realizado manualmente

y resultó ser mejor el algoritmo según su criterio como se puede observar en la

Tabla. 2.2 i

i i

!

Tabla 2.2 Resultado4 del trabajo “Modelo de asignación de carga

académica usando algoritmos genéticos”.

<‘,,W.“* . . ,

r l1 i Proceso Manual I / O 93

Algoritmo genético o - - r 10 . . . . , !

5. Otro de los trabajos desarrollados y reportados recientemente en el año 2000 es “A multi-stage evolutionary algorithm for the timetabling problem” [23]

implementado por E. K. Burke y J. P. Newall, en el cual se presenta un método

de descomposición de un problema grande en componentes más pequeños,

sus características son las Siguientes: I

a).- Utiliza una heutktica para definir que tan difícil es programar un

b).- Utiliza BacMracking.

evento y de esta manera dade prioridad para considerarlo en la primera etapa.

c).- Utiliza algoritmos, i meméticos y operadores de hill-climbing. I

d).- Se evalúa sobre iatos experimentales.

i

Page 40: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I

i Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

i

fases, que cuando se considera el problema en general. i

e).- Reporta que se deduce el tiempo de ejecución cuando se ataca por

f).- Corre el riesgo de !obtener eventos no programados.

g).- NO garantiza encintrar la mejor solución. I I

6. Un trabajo mas recientemente realizado en el 2002 es “El problema de la

programación de horario& con coloreo de grafos” [28] desarrollado en el

Instituto Tecnológico de C l . Madero en Tamaulipas por Federico Alonso Pecina

y Luis Alberto Ramirez Gómez, asesorados por la M.C. Laura Cruz Reyes. I

En este trabajo se propone resolver un caso particularmente complejo de

programación de horarios mediante su modelado como coloreo de grafos y su

resolución con algoritmos pieviamente desarrollado para este tipo de problema.

Se define el mét6do de solución de programación de horarios

específicamente para e! departamento de Ingeniería en Sistemas

Computacionales del Instituto Tecnológico de CD. Madero, se pretende

.proporcionar una base para el desarrollo de un sistema aún mas complejo para

la programación de horario!s de’ los profesores de todos los departamentos de

esta institución.

~

I !

~

1

Existe un software cbmercial llamado HORW versión 7.0, el cual, es de

carácter interactivo desarrollado por Isaac Ferrer García y Jerónimo Ferrer

Rodriguez en Sevilla España en el 2002. La idea central del funcionamiento es

que la computadora sirva de ayuda al directivo que debe confeccionar el horario,

de forma que el horario 101, realice el usuario, con el apoyo y la potencia que proporcionan los procesos /informáticos. La referencia en la lnternet se puede consultar en [12].

~

i I

I Existe un considerable cuerpo de desarrollo en el campo de la elaboración automática de ~ horarios, durante los últimos años, este campo ha sido el origen de un impohante grupo de trabajo (WATT, Working group on automated timetabling) y !de una serie de conferencias periódica asociada a

!

I 29 1

Page 41: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

dicho grupo de trabajo /(PATAT, Practice and theory of automated

timetabling). Estas conferencias se realizan de manera bianual como un foro

para intercambio de ideas para investigadores y practicantes.

i . De acuerdo a estos antecedentes es posible observar que el campo de

investigación y desarrollo sobre timetabling o asignación de horarios escolares aún está abierto! y en pleno desarrollo habiendo mucho trabajo por

realizar

AI realizar un ani

presentados aquí, se p

significativas, resaltando I entrada, número de restric

jis comparativo de los 6 trabajos mas recientes

:den ver en el ANEXO E las diferencias mas

características de Tamaño del problema, Datos de

mes, calidad de la solución:

Page 42: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

1 Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

i CAPíTULO3

MARCO TEÓRICO Y ESTADO DEL ARTE LOS ALGORITMOS GENÉTICOS

I

1 I I

I En este capítulo se obser?a cómo la computación evolutiva se I

DE

inspira en la

evolución de los seres vivos para resolver problemas complejos. Una técnica

muy eficaz de la programación evolutiva son los algoritmos genéticos. Los

algoritmos genéticos permiten realizar búsquedas eficientes en espacios ~

I

complejos y grandes ya que mantienen una población de soluciones potenciales,

cuentan con un mecanismolde selección y un conjunto de operadores genéticos.

La aplicación más común ide los algoritmos genéticos ha sido la solución de

problemas de optimización. j i

I

i 3.1 Computación evolutiva

I

i

En la naturaleza todos los seres vivos se enfrentan a problemas que deben

resolver con éxito para sodrevivir, como conseguir más luz del sol, o cazar una

mosca, etc., de tal manera /que desarrollen nuevas habilidades que les permitan

adaptarse a su medio ambiente. La capacidad de la naturaleza para resolver

problemas radica en la evolución, producida por la selección natural, que

favorece la perpetuación ~ de los individuos más adaptados a su entorno. Tomando en cuenta el cbmportamiento .de la naturaleza, la Computación Evolutiva interpreta la na’turaleza como una inmensa máquina de resolver problemas, y trata de encontrar el origen de dicha potencialidad para utilizarla en los algoritmos computacionales [18]. Para emular el comportamiento de la

~ naturaleza se emplean los digoritrnos evoiitivos.

!

i

I

1

! i

I

Un algoritmo evolutjvo es una técnica de resolución de problemas inspirada en la evolución de los seres vivos; en un algoritmo evolutivo se define

una estructura de datos que admite todas las posibles soluciones a un

~

I ,

! 31

Page 43: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I

Optimización Genética del problemi de asignación de los salones de clases del tipo NP-Completo i I

I

problema y cada uno de 1;s posibles conjuntos de datos admitidos por esa

estructura será una solucibn a/ problema, unas soluciones serán mejores y

otras peores. I

Solucionar un problem'a a través de un algoritmo evolutivo consistirá en

encontrar la solución óptima con relación a una función objetivo, y por tanto, los

algoritmos evolutivos soni en realidad un método de búsqueda muy especial,

en el que las posibles soluciones al problema son capaces de reproducirse entre

sí, combinando sus caractetísticas y generando nuevas soluciones.

i

I

En cada ciclo se seleccionan las soluciones que más se acercan al objetivo

buscado, eliminando el resto de las soluciones. Las soluciones seleccionadas se

reproducirán entre sí, permitiendo de vez en cuando alguna mutación o

modificación al azar durante la reproducción.

I

I

Los algoritmos evoluhos han demostrado ser efectivos para resolver

problemas de optimización kombinatoria difíciles en varios campos (la industria,

economía, ciencia, etc.), ljor ejemplo los problemas de transporte, el agente

viajero y diseño de redes ehtre otros.

I

I

Durante las tres última$ décadas, el interés por los sistemas de solución de

problemas basados en los/ principios de la evolución y la herencia ha crecido

enormemente, tales sistemas mantienen una población de soluciones

potenciales, codificadas de acuerdo a la representación que mejor describa el problema o la más adecuada para ser manipulada por los operadores evolutivos.

Tienen un mecanismo de 4elecciÓn basado en la aptitud de los individuos, esta aptitud define qué individuos son más aptos para sobrevivir, y cuentan con un

conjunto de operadores genéticos que serán aplicados a los elementos de la

población, los operadores! provocan la recornbinación y modificación de los

individuos de tal manera quk se mezclen sus características y mejoren en cuanto

i

a su aptitud [30]. i

I 32 I

Page 44: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I

i Optimización Genética del problem; de,asignación de los salones de clases del tipo NP-Completo

i

Haciendo una clasificación de tales sistemas de solución de problemas

basados en los principios be la evolución y la herencia [30], se tendrían las I

siguientes clases: !

1. Estrategias Evolut$as: Son algoritmos que se inspiran en la evolución

2. Programación evolutiva de Fogel: Es una técnica para realizar

búsquedas a través be un espacio de máquinas de estado finito.

3. Técnicas de Búsqueda Dispersa de Glover: Mantiene una población de

puntos de referedcia y genera descendientes por medio de

combinaciones iineales ponderadas de estos puntos

natural para problemas de optimización de parámetros.

I

4. Algoritmos genéi

posibles solucionf

operadores genéti

nueva población b:

5. Programación Gs computadora más un enfoque evoluti]

os de Holland: Trabajan sobre una población de

para un problema dado, y por medio de sus

IS de cruza, mutación e inversión produce otra

I un criterio de selección.

Stica de Koza: Pretende obtener los programas de

Idos para resolver un problema en particular utilizando

Page 45: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

~

Optirnización Genetica del problema de asignación de los salones de clases del tipo NP-Completo !

3.1.1 Algoritmo evolutivo

La estructura de un programa evolutivo se presenta en la Figura 3.1 y en la

Figura 3.2 [30].

Procedure Evolution Program begin

t + o Initialize P(tj evaluate P(tj while ( not termination-condition ) do begin

t e t + I select P(tj from P(t- I) alter P(t) evaluate P(tj

End

Figura 3.1 Estructura de un programa evolutivo. i i

Figura 3.2 Diagrama de flujo para un algoritmo evolutivo.

Page 46: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problei

Este programa evolu

mantiene una población de

Población(t)

para un tiempo t

Donde cada individuc

específico y cada individuc

individuo es evaluado par:

es.respecto a los demás o

Después se crea ur

selección de los individuos

la nueva población sufri

genéticos para formar nue

Existen operadores u solo individuo de la poblac

operadores de transform

x S 3 S), que operan sob

individuos a partir de las c.

AI inicio de cada población y se espera qu generaciones y que el mi

cercana a la óptima.

le asignación de los salones de clases del tipo NP-Completo

es un algoritmo estocástico [30] que inicia y

fividuos denotadas por:

representa una posible solución para un problema

;tá representado con una estructura de datos, cada

itener una medida de su aptitud (que tan aceptable

forma absoluta).

t

)oblación nueva para el tiempo t + 1, a través de la

is aptos (fase de selección). Algunos miembros de

transformaciones por medio de los operadores

i soluciones (fase de alteración).

rios del tipo mutación, los cuales operan sobre un

, introduciendo cambios pequeños en el individuo, y

ión de orden superior como la cruza ( Cj: S x . . . !arios individuos de la población, generando nuevos

cterísticas de los individuos seleccionados [30].

lo se evalúa la aptitud de los individuos de la I algoritmo converja después de algún número de individuo represente una solución razonable muy

35

Page 47: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

!

Opiimización Genética del problema de asignación de los salones de clasesdel tipo NP-Completo

Algunos programas evolutivos pueden ser formulados para resolver un

problema dado [30] y pueden diferir en muchas maneras:

~ I. Usan diferentes estructuras de datos para representar un individuo'como I posible solución.

2. Pueden usar diferentes operadores para transformación de los individuos.

3. Utilizan diferentes métodos para crear la población inicial.

4. Aplican diferentes metodos para manejar las restricciones impuestas al

problema.

5. Varían los parametros del algoritmo (tamaño de la población, probabilidad

para aplicar los diferentes operadores, criterios de selección, etc.).

Sin embargo, comparten un principio común, una población de individuos

sufre algunas transformac)ones, y durante este proceso de evolución, los

individuos compiten por sobrevivir. I . . I

3.2 Algoritmos geneticos

La teoría de la evolución y la computación han llegado a unirse en los

algoritmos genéticos. La teoría de la evolución fue desarrollada por Charles

Daiwin en la década de 1830. Uno de los fundadores de la computación moderna de hoy en día, Charles Babbage, desarrolló su máquina de

computación analítica alrededor de 1833 [5].

La clave de la evolución natural reside en una sencilla relación entre cambio y selección. LOS organismos en la naturaleza se enfrentan a un ambiente que no pueden controlar, prosperando aquellos individuos que presenten cambios que /es proporcionen una ventaja a ellos y a sus

descendientes, mientras que tenderán a morir los individuos que sufran cambios

desfavorables. El ambiente natural selecciona a favor de los organismos mejor dotados y en contra de los peor dotados, esto se conoce como selección

I

I natural [38]. ~

36

Page 48: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

!

La cruza y la mutación pueden producir variaciones que son heredadas

de padres a hijos. Los iniividuos con las variaciones mas favorables tienen

mayor probabilidad de sobrevivir y de tener descendencia, por lo que los

individuos más aptos (o sus características) tienen mayor probabilidad de pasar ~ de generación a generación.

Se podría .decir que los. organismos vivos son perfectos al realizar la cruza,

pero ocasionalmente se producen mutaciones, es decir material genético que no

estaba presente en los padies es pasad’o a los hijos. La frecuencia con la cual se

dan las mutaciones es muylbaja [Ill. I

i Los algoritmos geneticos tratan de imitar lo que la naturaleza hace a

través de la simulación de s’us procesos de selección y reproducción y todo su

mecanismo de evolución. 1 I

Los algoritmos genétibos son mecanismos computacionales estocásticos

que permiten una búsqueda efectiva en espacios de búsqueda muy grandes y

complejos, como se muestra en la Figura 3.3; se rigen por la analogía entre un

proceso de optimización/ combinatoria con un intercambio de información

estructurada y aleatoria a la vez, y la evolución de organismos basada en el

principio de la selección de las especies de Darwin [I I].

I

I I I ~

I

Figura 3.3 Espacio de busqueda complejo para un algoritmo genético.

Page 49: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo I i

Los estudios de los algobtmos genéticos se remontan a finales de la década

de 1950 [ l l ] , donde algur/os biólogos emprendieron el estudio a través de

experimentos con aplicaciones computacionales de sistemas genéticos. Holland

[7] en 1975 desarrolló la ieoría de sistemas adaptativos y definió las bases

teóricas de los algoritmos genéticos y cómo implementarlos computacionalmente

en forma eficiente, también; definió que, el dominio de acción de nuestro plan

adaptativo debe ser codificado para trabajar sobre él dado un esquema de

representación, tal esquema puede ser binario o n-ario.

I

I

i

3.2.1 Algoritmo genético lbásico I

!

La solución a un piar) adaptativo inicia con la creación de una población

finita de estructuras 1lamada;s cromosomas, cada cromosoma está compuesto de

la concatenación finita de genes cuyos alelos pertenecen al esquema de

representación, un cromosoma representa una solución al plan adaptativo; más

formalmente, una poblaciónlen un tiempo t.

I

t > Población(f) = xl x2 , . . . , X" t

I r301.

1

donde Población (f) es la población creada en un tiempo f y xi son las

estructuras que representan cada una de las posibles soluciones a nuestro plan

adaptativo, Xi = xf xz 1 . . xj donde xj E V, tal que Ves el conjunto de

valores de atributos para algún detector el cual está comprendido dentro de un

rango (P.e. V = [O, I]).

I

I

~

1 I

i i

Page 50: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

~

. 8

optimización ~ ~ ~ é t i ~ ~ del problema/de asignación de los salones de Clases del tiPo NP-ComPleto

~

4. Evalúa la población Pob/ación(t)

9. Evalúa Pob/aciÓn(t)

Figura 3!.4 Algoritmo genético básico.

Las características fund!amentales de dicho algoritmo [I I] son:

1 Utiliza una codificación de los parámetros de un problema como una

cadena de unos y ceros. Dicha codificación viene a representar el equivalente a

un cromosoma que define a un individuo. Cada bit de la cadena es equivalente

a un gen y el valor particulad del bit (un 1 ó un O) representa un alelo.

2 Los operadores geneticos se definen de la siguiente manera:

Cruza: es el operador: más importante del algoritmo genético, tiene una probabilidad muy alta de skr aplicado (mayor o igual que 0.8), permite generar

nuevos individuos a partir de un par de individuos padres. Consiste en

determinar un punto de cruce en los dos cromosomas padres y generar dos nuevas soluciones hijos. En/el proceso de cruza, dos estructuras X y X:

x=xf xz . . .1xj Y x = x', x i . . . x;

Page 51: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I ~

Optirnizacion Genética del problemd de asignación de los salones de clases del tipo NP-Completo !

I son seleccionadas aleatoriamente de la población Población (f), donde x, y x ;

E V, y un punto de cruza 6 E 7, 2, ..., j es seleccionado aleatoriamente, y

dos nuevas estructuras son creadas a partir de Xy X compartiendo los atributos

del lado izquierdo de uno d e los padres y las del lado derecho del otro padre

desde la posición C, como se observa en la Figura 3.5. I

I

I X" = x j x i . . . xc xctr ... xi

x,' = x ; x i . . . x', x;+j ... x ; I 1

[ POSiC16N DE CRUZA

! I

Figura 3.5 Cruza de dos estructuras.

~

! ! 1 Mutación: es un operador que permite introducir nueva información a la

población, para su aplicación se determina una posición C dentro del

cromosoma X y el valor be x, E V es reemplazado por un valor x C 2 xc

seleccionado aleatoriamente, como se muestra en la Figura 3.6. I !

I I ~

i

Page 52: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I I I

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo í I

Figura 3.6 Ejemplo de mutación de un cromosoma. t I

I

inversión: introduce al sistema capacidad de exploración, se selecciona

un cromosoma X aleatoriamente de la población Población (t), se determinan

dos puntos C7 y C2 E I, 2, ... , i) y C7 < c2),

entonces todos los alelos lxi que se encuentran entre los dos puntos son

invertidos creando una nueva estructura X .

aleatoriamente (C7, C2

después de aplicar la invers'ión,

x'= x1 ... x c z XCZ.1 xcz-2 ... xcr +1 xc1 xi,

I por ejemplo: !

Figura 3.7 Ejemplo de inversión de un cromocoma. 1 I

Page 53: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

i

I I i

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

3 La selección de los :individuos que pasarán de una generación a otra,

debe hacerse considerando la aptitud de cada individuo y la aptitud promedio de

la población actual, de mod'o que los individuos con una aptitud mayor que la

aptitud promedio de la población tienen una alta probabilidad de sobrevivir y los

individuos con una aptitud inferior a la aptitud promedio tienen una alta

probabilidad de morir. i

4 En los algoritmos genéticos, la función de evaluación es la más

importante para poder seleccionar los mejores individuos que más se aproximen

a la solución global de alg,un problema desarrollado bajo este paradigma. La

función de aptitud permite d'iscriminar entre soluciones de bajo desempeño y de

alto desempeño. Puede se< una medida cuantitativa o cualitativa de la bondad

de una pasible solución, es ¡a base para determinar qué soluciones tienen mayor

o menor probabilidad de sobrevivir. Por otro lado la función de aptitud permite

discriminar entre soluciones que no violen restricciones y soluciones que violan

restricciones, la cual es fundamental para poder operar en la misma población

con soluciones válidas e inválidas.

!

Para el proceso de sekcción uno de los mecanismos que más se emplean

es el mecanismo de la rueda de la ruleta, con slots de acuerdo al tamaño de su

aptitud. Este mecanismo e4 uno de los más utilizados debido a su sencillez y

facilidad de implementación. En [Ill se define este mecanismo en el que se

calcula para cada uno de los individuos de la población una probabilidad

acumulada de ser seleccionado, y a través de la generación de un número aleatorio uniformemente distribuido se selecciona una determinada solución.

I I

I

En la Tabla 3.1 se ilustra cómo calcular la probabilidad acumulada para un problema de minirnizacion, considerando para esta tabla que el número aleatorio obtenido es 0.357,jse selecciona la solución 1.

I

Page 54: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I

Optimización Genética del problemaide asignación de los salones de clases del tipo NP-Completo

Tabla 3.h Probabilidad acumulada.

,NUMERO

DE

INDIVIDUO

APTITUO APTITUD PROBABILIDAD PROBABILIDAD

Afuxii~io'- V a l q ACUMULADA

2 i'r obabilidud, j d

15

20

10

25. MÁXIMO

20

Para tratar de evitar

i n 0.2

5 o. I 15 0.3

O 0.0

5 o. I SUMA=~O

0.5

0.6

0.9

0.9

I .o

I convergencia prematura que se puede dar por

algunos individuos con dese'mpeño superior se han propuesto varios métodos de

selección que limitan el numero de copias que logra un individuo. De estos

métodos se comentaran doc: !

* Selección por torneo: Este método se basa en formar tantos grupos de k

individuos como el tamaño de la población lo permita. El mejor de cada grupo es

introducido en la nueva población.

* Selección por rango: En:este método se ordenan los individuos de acuerdo a

su aptitud y el número de^ copias que recibe cada individuo depende de su posición y no del valor de su aptitud.

5 La condición de terminación es la medida a través de la cual se

establece que ya se ha llegado a la solución del problema, o el algoritmo ha convergido en un valor donbe difícilmente se pueda mejorar, es decir que haya

convergido en un óptimo! local, a este caso se le llama convergencia

, I

i !

43

Page 55: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I

Optimiración Genética del problema de asignación de los salones de clases del tipo NP-Completo

~

prematura. La condición de terminación ideal es cuando se ha encontrado la

solución deseada. !

! ~

Para que 10s algoritmos benéticos superen a 10s algoritmos más similares en cuestión de robustez, deben diferir de alguna manera muy fundamental. Los

algoritmos genéticos difiereh de los procedimientos de búsqueda y optimización

normales de 4 maneras [I I]. I

c,).-Los algoritmoskgenéticos proceden sobre una codificación del conjunto de

los parámetros más no sobre los parámetros mismos.

&Los algoritmos genéticos realizan la búsqueda a partir de una población

de cromosomas, cada &romosoma representa un elemento del dominio de

posibilidades, más no a' partir de un solo elemento como en las búsquedas

locales. I

c).-Los algoritmos geneticos van guiando su búsqueda por medio de la

función objetivo, para medir la cercanía de las soluciones parciales a las

soluciones deseadas, contrariamente a otros métodos que hacen uso de

derivadas o de infor(nación numérica más compleja para guiar las

d).-Los algoritmos geneticos usan reglas de transición probabilísticas más

que deterministicas. Cada nueva población que resulte de la aplicación de

los operadores de transición, es llamada una generación. Si todo va bien, se

espera que en cada generación la evolución genética apunte hacia la

solución del problema. !

i

~

1

, búsquedas. ~

I

I Algunas características kíe los algoritmos genéticos [ I O ] son:

u).-Paralelismo irnplíci'to: E s la cualidad más importante y radica en su

habilidad para evaluar varias posibles soluciones parciales en cada

b).-Robustez: Los algoritmos genéticos operan bien en espacios de

búsqueda que tengan hhecos. saltos o ruido.

i generación. j

I .

44

Page 56: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

i

c).- Otros Beneficios: Los algoritmos genéticos también se desempeñan

bien en problemas cuya !complejidad se incrementa exponencialrnente con el

número de parámetros die entrada. j

3.3 Aplicaciones de 1os:algoritmos geneticos

La aplicación más común :de los algoritmos genéticos ha sido la solución de

problemas de optimizacióh, en donde han mostrado ser muy eficientes y

confiables. Sin embargo, n6 todos los problemas pudieran ser apropiados para la

técnica, se recomienda tonjar en cuenta las siguientes características del mismo

antes de intentar usarla: ,

!

I

I

Su espacio de búsqiileda (sus posibles soluciones) debe estar delimitado

dentro de un cierto rango.

Debe poderse definir una función de aptitud que indique qué tan buena o mala es una cierta rkspuesta.

Las soluciones deben codificarse de una forma que resulte relativamente

fácil de implementar bn la computadora.

I

!

El primer punto es muy importante, y lo más recomendable es intentar

resolver problemas que tengan espacios de búsqueda discretos -aunque éstos sean muy grandes-. Sin embargo, también podrá intentarse usar la técnica con

espacios de búsqueda continuos, pero preferentemente cuando exista un rango

de soluciones relativamente pequeño [44]. 1

Los algoritmos genéticos han sido aplicados a varias clases de problemas de

optimización, incluyendo $roblemas NP-Completos, como el problema del agente viajero, el problema de la satisfacibilidad, etc., todos ellos con buenos resultados, las siguientes aplicaciones se encuentran descritos en [5].

Page 57: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

i

I

Optimización Genética del problem; de asignación de los salones de clases del tipo NP-Completo

* Reconocimiento de criminales: En "Tracking a criminal suspect

through 'face space' wi th a genetic algorithm" (1991), C. Caidwell y V.5. Johnston describen una aplicación altamente creativa el uso de algoritmos

genéticos para ayudar a ¡os testigos en la identificación de sospechosos ~ criminales. I

.

* ' Composición de musica: A. Homer y D. E. Goldberg, en "Genetic

algorithms and compute(-assisted music composition", (1 989), proponen una aplicación llamada thematic bridging, en la cual un patrón particular de

entrada es gradualmente transformado a un patrón de salida deseado sobre una

cantidad de tiempo especifi4ada.

Programación de horarios: "A system for learning routes and schedules

with genetic algorithms": (1989), por P. S. Gabbert, D. E. Brown, B. P. Markowicz, y DE. E. Sappington. Describe como un algoritmo genético puede

ser usado para explorar problemas de ruteo y programación.

* Apuesta de carreras üe caballos: M.' de la Maza examinó el uso de los

algoritmos geneticos para desarrollar reglas que seleccionen los ganadores de

una carrera de caballos. !

I

1

I

* Optimización de consultas en bases de datos: Los sistemas manejadores

de bases de datos (SMBD) modernos, han llegado a incrementar su

complejidad. K. Bennett, M. C. Ferris, y Y. E. loonnidis desarrollaron un algoritmo

genético para optimización de consulta de bases de datos, el cual describieron en un articulo publicado en'1989.

I

* Diseño de aeronaves:'En el diseño de aeronaves intervienen una serie de parámetros que tienen un amplio rango de valores posibles, esto significa que el

problema de diseño paramétrico es un problema de optirnización combinatorio.

* Reglas de clasificación: Una de las áreas más exitosas en aplicaciones reales, dentro del aprendizaje automático, es la inducción de árboles o reglas

Page 58: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema~de asignación de los salones de clases del tipo NP-Completo 1

! I

I I

I j I

clasificatorias a partir de ejemplos. Se ha usado la técnica de los algoritmos

genéticos en la construcción de sistemas clasificadores, este trabajo lo

desarrolló Alma Ríos Flores $el ITESM Campus Morelos en 1995 (131.

*

algoritmos genéticos para solucionar sistemas de ecuaciones no lineales 161.

I I

! !

i

Sistemas de ecuaciones no lineales: Carlos Cantú Aguillen aplicó los

* Diseño de vigas de concreto: Para este trabajo se utilizó el algoritmo

genético simple propuesto por Goldberg, experimentando con varios esquemas

de representación 1141. i

De igual manera los algoritmos genéticos se han aplicado a un gran

número de problemas de búsqueda y de optirnización [39]:

Optimización de funciones matemáticas.

Optimización de planeamiento.

Problema de optimización de rutas de vehiculos.

Optimización de redes de distribución.

Optimización en negocios. Síntesis y ubicación de circuitos electrónicos.

A continuación se presenta una relación de trabajos realizados utilizando algoritmos genéticos: I

I

1. “Aplicación de los algoritmos geneticos a la búsqueda de parámetros en modelos de calidad de aguas superficiales” [40] en el año 2002.

Page 59: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

!

I

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

I

2. “Aplicación de algo(itmos genéticos y técnicas evOiUtjVaS en la

compresión fractal de imágenes digitales mediante IFS”. En este

proyecto se pretendió investigar las aplicaciones de las nuevas técnicas de

optimización conocida< como algoritmos genéticos y estrategias evolutivas

en el tratamiento y la compresión de imágenes digitales definidas por medio

de sistemas de funciones iteradas (IFS). Los IFS son sencillos modelos

matemáticos formados por un número finito de transformaciones en el

plano, a partir de ellos ‘se pueden determinar imágenes de alta complejidad

variando un conjunto1 relativamente pequeño de parámetros. Los IFS

pueden ser vistos como modelos de aproximación genéricos que, eligiendo

el número de transformaciones y sus parámetros óptimos, permiten

obtener una imagen fractal aproximada para una imagen dada. .As¡, los

parámetros del sistema dan una versión comprimida de la imagen de

interés. Una vez logrados esos parámetros (lo que significa resolver una

optimización de una función tipo distancia) la recuperación de la imagen es

hoy muy eficiente con ¡os algoritmos existentes [41].

!

3. “Algoritmos genéticos y su aplicación en optirnización de redes”. Este

trabajo realizado en 1998, hace un análisis de los algoritmos genéticos que

se diseñan para resolver problemas de optimización, que involucran no sólo

funciones objetivo continuas y derivables sino aplicados a funciones con

puntos de discontinuidad o de no derivabilidad. Asimismo se aplican a

problemas de secuenciación en donde el espacio de soluciones está

determinado por un conjunto de secuencias, una de las cuales es la óptima, presentes en muchos ‘problemas de optimización en redes. En este tipo de

problemas están presentes las permutaciones y su representación

intrínseca ha constituido un reto para los algoritmos genéticos [42].

I

I

4. “Aplicación de algoritmos genéticos a la coordinación hidrotérmica

de corto plazo”. Realizado en el año de 2002. Las técnicas emergentes de

optimización en sus diferentes variantes han sido aplicadas al problema del I

48

Page 60: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problemaide asignación de los salones de clases del tipo NP-Completo

despacho económico de un sistema de potencia con resultados

promisorios. El objetivo del trabajo es presentar una evaluación del

comportamiento de un j algoritmo genético desarrollado para resolver el

problema de la coordinación hidrotérmica de corto plazo de un sistema de

prueba modelado a partir del sistema interconectado de la provincia de

Córdoba, Argentina [31]. !

5. “Algoritmos genétic&s aplicados al problema cuadrático de asignación de facilidaües (QAP)”. Realizado en el año de 2002. El QAP

es un problema combinatorio, considerado por algunos autores como NP- Completo, en este trabejo se propone un algoritmo genético para tratar un

caso particular del QAP, en el cual se quiere obtener la asignación de

máquinas en línea para minimizar el número de pasos en reversa o

backtracking de trabajo; entre las máquinas [29].

Se han realizado vaiias publicaciones científicas de aplicaciones de

algoritmos genéticos como se muestra en el Anexo D.

En resumen, los algoritmos genéticos se han aplicado para resolver diversos

problemas de optimización y I o búsqueda en diversas áreas, desde la segunda

mitad de la década de 1980 hasta la fecha, sin embargo, es posible mejorar su

funcionamiento combinándolos con alguna .heurística de búsqueda local; el

hecho de introducir un opejador de optimización local en un algoritmo genético

lleva al concepto de algorithos meméticos.

i

3.4 Algoritmos meméticos

Los algoritmos rneméticos también son procedimientos basados en población y se han mostrado como técnicas más rápidas que los algoritmos genéticos simples para algunos tipos! de problemas. Los algoritmos meméticos combinan

procedimientos de búsqueda local con operadores de cruza y mutación, por lo

que algunos investigadores los han visto como algoritmos genéticos híbridos,

I

49

Page 61: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

,\ , I los algoritmos meméticos fueron descritos originalmente por Pablo Moscato en

1989 [27].

El enfoque memético toma el concepto de la evolución como lo hacen los

algoritmos genéticos, sin embargo, donde un algoritmo genético se inspira en la

evolución biológica, los algoritmos meméticos se inspiran en la evolución cultural

[19][30], o la evolución de :las ideas. Las ideas pueden ser combinadas para

formar nuevas ideas, pueden ser mutadas, y las buenas ideas son más

deseables para ser usadas que las malas ideas. La principal diferencia entre

este modelo y el modelo bio~lógico es que las ideas pueden ser rnejoradas por su

propietario o poseedor, esta mejora se obtiene incorporando búsqueda local en

el algoritmo genético [25]. ~

I

I

En esencia, un algoriho memético, es un algoritmo evolutivo que utiliza

búsqueda local en alguna! medida, el concepto de memético se origina de

Dawkins [I91 quien describió el “meme” como una idea o concepto que es

pasada a través de la sociedad. Los individuos pueden adaptar sus ideas para

mejorar su medio ambiente, contrario a los genes los cuales son pasados por

completo y no pueden ser modificados por su recipiente o contenedor. Los algoritmos meméticos fuiron propuestos como una alternativa para 10s algoritmos genéticos por Moscato [26][19].

La principal rnotivacion del enfoque .de los algoritmos meméticos es que

mediante la aplicación de Jn operador de ascensión de colinas ( Hill-Climbing )

después de cada operador: genético, se puede considerar el proceso como una búsqueda a través del óptimo local, más que a través del espacio de búsqueda completo, la aplicación de’ un operador de búsqueda local causará que cada

generación tome más tiempo en ser evaluada pero esto puede ser justificado si

no se utilizara búsqueda I(ca1 1231.

~

I

se logra avanzar más en la, I búsqueda del valor óptimo en cada generación que si

,

i

50

Page 62: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

3.4.1 Factores que motivan el uso de los algoritmos meméticos

El operador de Cruza o recombinación de un algoritmo genético básico, no

necesariamente garantiza generar nuevos individuos mejores que los que fuero

seleccionados para recombinarse, en cambio, existe la posibilidad de que IOC

nuevos individuos sean de calidad peor que sus progenitores, por el contrario, un

operador de optimización local siempre intenta mejorar cada individuo en

cuestión, difícilmente lo empeora.

Las razones por las cuales se seleccionaron los algoritmos meméticos

para ser utilizados en esta tesis son las siguientes:

Proporcionan mayor explotación de las soluciones parciales escalando

mas rápidamente hacia los óptimos locales.

El uso de un operador de optimización local acelera la evolución de la

población de individuos, es decir, convergen más rápidamente que un

algoritmo genético simple.

El uso de un operador de optimización local no requiere de un tamaño de

población muy grande para influir en la calidad de los individuos, por el

contrario, se desempeña eficientemente con tamaños de población

relativamente pequeños, por ejemplo, 50 individuos en la población. Reduce significativamente el numero de iteraciones para la búsqueda

global, por lo tanto se reduce también el tiempo de procesamiento.

Page 63: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

CAP~TULO 4

MÉTODO DE SOLUCIÓN PROPUESTO PARA EL PROBLEMA DE ASIGNACIÓN DE LOS SALONES

DE CLASES DEL TIPO NP-COMPLETO

En este capítulo se muestra el método tradicional que se lleva a cabo para

realizar una asignación de salones de clases y el enfoque de solución que se

utilizó para resolver el problema basado en la aplicación de la técnica de

algoritmos genéticos. Los casos de prueba que se utilizaron para evaluar el

algoritmo genético fueron: un caso real y 5 instancias de prueba reportadas en

Internet [9].

4.1 Método tradicional para resolver el problema de la asignación de

salones de clases

Se realizó una investigación de campo para recabar información sobre el

proceso para resolver el problema de la asignación de los salones de clases, con

base a esta investigación se logra comprender el proceso de asignación de los

salones de clases que se realiza en algunas instituciones educativas de México.

La asignación de salones de clases y horarios que se realizan en algunas

instituciones de nivel superior del país. se realiza de forma manual; este proceso comienza con la información previa que se tiene con relación al número de

materias y grupos que se impartirán el próximo período escolar, así como los

recursos disponibles como son: profesores, salones de clases y su disponibilidad, y los planes de estudios de cada carrera. En otras palabras, se

debe considerar la demanda de carga académica requerida y los recursos

disponibles para satisfacer la demanda.

Page 64: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

4.1.1 Descripción del proceso manual para resolver el problema de la

asignación de los salones de clases

El proceso de la asignación de los salones de clases, de acuerdo con la

investigación, se realiza en 2 etapas principales: la definición de la demanda

académica y la asignación de salones de clases y horarios.

a).- Definición de la demanda académica

La dirección académica de la institución recibe de la coordinación de cada

área o departamento (por ejemplo: Ingeniería en sistemas computacionales,

Ingeniería civil, Ingeniería industrial) la siguiente información:

Su solicitud de asignación de salones de clases y horarios para satisfacer la demanda académica de su departamento.

Sus recursos docentes y de instalaciones de su departamento.

Sus planes de estudios y restricciones a las que están sujetas las

materias y grupos, (aquí se incluyen maestros ya asignados a sus

grupos, tiempo disponible por cada profesor, salones preferidos para

cada grupo, etc.).

0

La asignación de maestros a grupos se realiza en cada departamento o

área académica, tomando en cuenta los siguientes criterios:

Se considera en primer término al profesor titular de cada materia

para asignarle un grupo de su materia.

Los grupos se asignan a cada profesor según su experiencia en la

materia en cuestión, esto incluye en primer término si están

impartiendo esta materia actualmente y en segundo término si la han impartido con anterioridad.

Se toma en cuenta a los profesores de tiempo parcial antes que a los

profesores de tiempo completo, debido a la disponibilidad de tiempo de los profesores.

Page 65: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

La asignación de salones de clases también se realiza en la coordinación

de cada area académica, considerando los siguientes criterios:

. De acuerdo a la materia que se imparta se define el tipo de salón

adecuado para realizar la clase, por ejemplo, si es una materia que

tiene horas de prácticas puede requerir de un laboratorio. . Un factor importante es la capacidad del salón de clases, en

ocasiones hay grupos numerosos por coincidencia de alumnos en

cierto curso, por ejemplo, cuando se juntan los alumnos que van a

tomar por primera vez un curso y los que lo van a tomar por segunda

vez.

Una vez que se tienen los datos y características de la demanda

académica se clasifica la información para generar un modelo que muestre la

relación entre ellos, en el esquema de base de datos de la Figura 4.1. se

observa la relación entre los datos.

El modelo muestra las relaciones de las tablas generadas a partir de la

información recopilada, con la finalidad de crear una asignación que satisfaga las

demandas y no viol6 restricciones o su costo de violarlas sea mínimo.

Este modelo se tomó como base del articulo “Modeling of Classroom Assignment Problem” [2], presentado por José Torres Jiménez y Joel Pérez

González, por tal motivo los nombres de los campos aparecen en Inglés ya que se le dio continuidad a este articulo.

54

Page 66: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

I I

, I 'I

1

Figura. 4.1 Modelo de base de datos para una asignación de salones de clases.

55

Page 67: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimizacion Genetica del problema de asignación de los salones de clases del tipo NP-Completo

b).- Asignación de salones de clases y horarios

El experto en la elaboración de la asignación de los salones de clases y

sus horarios emplea su experiencia y su intuición en este proceso, aplica

algunos conceptos como son:

= Reglas y criterios así como las restricciones a las que está sujeta una

asignación, por ejemplo, asignar cada grupo a un salón y horario

particular que no se empalmen con otros grupos no compatibles en

ese período. 1 Asignar solamente un grupo en un salón a la vez. . Seleccionar los profesores con menos tiempo disponible (profesores

de tiempo parcial) para darle prioridad y postergar los profesores de

tiempo completo para tener mayor libertad de cambiarlos de horario.

Identificar los grupos confiictivos en salón y horario para plantear

alternativas de solución, etc.

9

Teniendo todo esto en cuenta, el experto empieza a iterar en la búsqueda

de alguna posible solución, modificando y haciendo ajustes constantemente en

etapas experimentales, esto le crea muchos problemas, pues una modificación

afecta a otras asignaciones previas que ya se hayan corregido. Obviamente,

este proceso lleva varios días y hasta semanas, y al final no están al 100%

satisfechas todas las demandas y se tienen que hacer ajustes y violar algunas

restricciones, o un su defecto realizar cambios drásticos, por ejemplo, contratar

otro profesor para cubrir algunos grupos no programados por conflictos de horarios o aulas no disponibles, o también se tiene que cambiar a un profesor para cubrir otra materia que no le es afín a su área, etc.

Page 68: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética de¡ problema de asignación de los salones de clases del tipo NP-Completo

4.2 Metodologia de solución propuesto para resolver el problema de la

asignación de los salones de clases

La intención de este trabajo es realizar la tarea que lleva a cabo el experto en la

elaboración de las asignaciones de salones de clases de manera automatizada.

Uno de los principales beneficios será la reducción considerable del tiempo, otro

de los beneficios es que se elimina el desgaste fisico y mental de las personas

involucradas en la elaboración de la asignación y finalmente la calidad de la

solución se espera que sea mejor que la obtenida por el experto.

1. Recopilar la información acerca de la demanda académica solicitada por

los departamentos o áreas académicas de la institución en cuestión.

2. Recopilar información de los recursos disponibles para satisfacer la

demanda académica de la institución.

3. Recopilar la información acerca de la asignación de los profesores a sus

grupos.

4. Capturar la información de acuerdo al modelo de base de datos mostrado

en el ANEXO B, utilizando las tablas del ANEXO C. 5. Definir las restricciones bajo las cuales se generará la asignación de los

salones de clases.

6. Definir la métrica para medir la bondad de las soluciones obtenidas por el

algoritmo genético y de esta manera guiar la búsqueda hacia la mejor

solución.

7. Aplicar el algoritmo genético bajo el concepto de algoritmo mernético a la

información obtenida en las tablas del ANEXO C.

El algoritmo genético es como se muestra en la Figura 4.12.

Page 69: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

4.2.1 El problema de la asignación de los salones de clases a resolver

La situación de la Facultad de lngenieria de la Universidad Autónoma de

Tamaulipas Campus Tampico es la siguiente:

Cuenta con 3 carreras de nivel licenciatura: Ingenieria en sistemas

computacionales (ISC), lngenieria civil (IC) e Ingenieria industrial (U). Cuenta con

un total de 72 profesores de los cuales el 50% son de tiempo completo y el resto

son de tiempo parcial, cuenta con 10 salones para cada carrera, un laboratorio

para cada carrera, una sala audiovisual, un laboratorio de dibujo y un laboratorio

de computación. Se Manejan dos turnos en 5 días de la semana de lunes a

viernes de 7:OO a.m. a 14:OO p.m. y de 15:OO p.m. a 22:OO p.m. respectivamente,

cada clase tiene un tiempo mínimo de duración de 1 hora y un tiempo máximo

de 2 horas.

Las principales restricciones que se requieren satisfacer para obtener una

asignación de los salones de clases que cubra la demanda solicitada son las

mostradas en la sección 2.3.

Las siguientes restricciones suaves o ligeras no se tomarán en cuenta

para afectar la calidad de la solución:

R11. Evitar tiempos libres de los profesores entre cada clase.

R12. Evitar tiempos libres de los alumnos entre cada clase.

R13. Ubicación de los salones.

4.2.2 Modelo de solución propuesto para resolver el problema de la asignación de los salones de clases

El algoritmo genético propuesto comienza con una población inicial [7] que

consistente en un conjunto de soluciones generadas aleatoriamente. Dependiendo del plan reproductivo, los genes experimentan evolución durante

58

Page 70: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

un número de generaciones. El plan reproductivo consiste esencialmente de una

estructura de dos operadores geneticos denominados cruza y mutación.

El operador de cruza genera nuevos genes recombinando dos genes

padres participantes en la operación, esto ayuda a la explotación en el espacio

de búsqueda, es decir, obtener individuos cada vez mejores, pero sólo en un

espacio reducido.

La mutación es utilizada para perturbar una o más soluciones, de esta

manera favorece la exploración de mayor diversidad de individuos.

Después de cada generación, los genes son evaluados usando un criterio

de aptitud [8]. Dependiendo de la política de selección y del valor de aptitud se

seleccionan los genes para la siguiente generación. Este proceso de evolución

continúa por un número de generaciones. Con base en algún criterio de

terminación (podría ser un número máximo de generaciones, o un número

máximo de generaciones sucesivas sin mejorar, etc.) el algoritmo termina.

La razón de utilizar algoritmos genéticos es que realizan explotación y

exploración en una población de posibles soluciones pertenecientes a un

espacio de búsqueda de gran tamaño, por lo tanto, se escalan entre soluciones

para conseguir las más cercanas a la óptima, además proporcionan un conjunto

de posibles soluciones que pueden ser muy diversas y muy cercanas a la

solución óptima, incluyéndola como posible solución.

4.2.3 Codificación de la representación para el problema de la asignación de los salones de clases

La codificación de los parámetros de un problema es la primera decisión que se

debe tomar para poder aplicar el enfoque de algoritmos genéticos a la solución

59

Page 71: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

de un problema, entonces se parte de la siguiente pregunta ¿Es la codificación

de este problema adecuada para un algoritmo genético?

Después de un análisis minucioso, se llegb a la conclusión de que la mejor

codificación para el problema de la asignación de los salones de clases es una

representación de permutaciones, debido a que presenta las siguientes

características: es compacta y proporciona un alto grado de semántica, la desventaja es que también presenta un alto grado de epistasis, es decir, la

modificación del valor de uno de sus parámetros afecta grandemente a otros

parámetros (existe un alto grado de interacción entre los valores de los

parámetros), por lo que un algoritmo genético experimentará serias dificultades

para lograr converger hacia un óptimo global, para evitar esta situación se utiliza

un operador de optimización local.

Para representar un cromosoma de genes (cada cromosoma es un

individuo en la población), el cual simboliza una posible solución para el

problema a resolver, se utiliza la estructura mostrada en la Figura 4.2.

xi x2 x1 . . xn.2 Xn-r X"

Figura 4.2 Un cromosoma X de n genes.

Cada una de las posiciones xi se denomina gen y representa un timeslot o

período t válido para un Único salón r, es decir que el salón r está disponible en

el período t , no se incluyen los períodos no disponibles para ese salón.

Un timeslot corresponde a un período de tamatio)fijo (puede ser de 60

minutos o de 30 minutos), en este caso será de 60 minutos.

La longitud n del cromosorna X es igual a la surna.de todos los períodos disponibles para cada salón, no necesariamente son los mismos períodos

disponibles para todos los salones.

60

Page 72: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tip0 NP-Completo

El valor que cada gen almacena se denomina alelo y en este caso

representa un evento, el cual se define como una clase o lectura de un grupo

(un grupo tiene varias clases o períodos), asignado a un profesor, por ejemplo,

en la Tabla 4.1 el evento 7 corresponde a periodo número 2 del grupo numero

2 de la materia número 10, el cual prefiere el salón 7 y tiene asignado el profesor

3

Tabla 4.1 Tabla de eventos.

Donde un grupo g consta de p periodos o clases, normalmente son 5 horas a la semana, en este caso cada período consta de 1 hora, entonces cada evento representa un período o lectura de un grupo el cual tiene asignado un profesor, lo que falta definir es en qué salón y en qué período o timeslot será asignado sin que viole ninguna restricción.

La tabla dice que:

61

Page 73: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

El evento 1 corresponde al período 1 del grupo 1 de la materia 21, que

tiene asignado al profesor 5 y que prefiere el salón 3 y espera ser asignado en

su salon preferido en un timeslot válido que no se empalme con otro grupo.

El siguiente ejemplo muestra la composición de un cromosoma el cual se

observa finalmente en la Figura 4.4.

Sea la tabla Table-R-TS-A la tabla de salones por período disponible

como se muestra en la Tabla 4.2.

Tabla 4.2 Timeslot disponibles por salón.

La tabla dice que:

El salón 7 en el timeslot o período 7 si está disponible (Available = 1)

El salón 7 en el timeslot o período 2 si está disponible (Available = 1)

El salón 7 en el timeslot o período 3 no está disponible (Available = O)

La estructura del cromosoma contiene posiciones que representan timeslot validos para cada salón y son Únicos, pero no proporciona información sobre que timeslot y salón esta representando, por este motivo el cromosoma utiliza una

mascara o plantilla llamada ASSIGNMENT que se define como se muestra en la figura 4.3.

62

Page 74: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de ¡os salones de clases del tipo NP-Completo

1 2 3 "-1 " EventlD

RoomAssignment

TimeSlot-Assignment

Figura 4.3 Estructura ASSIGNMENT.

La estructura ASSIGNMENT es un registro o estructura que consta de tres

campos, cada uno de ellos es un arreglo de tamaño igual a la longitud n del

cromosoma. Cada columna representa una combinación única de EventlD[i],

Room-Assignment[¡] y Timeslot-Assignment[¡], en cada posición se

almacena información relacionada al evento asignado, el salón asignado a esa

posición y el timeslot en el cual está siendo asignado este evento, cada posición

coincide con las posiciones del cromosoma, por lo tanto podemos saber que

evento esta siendo asignado en que salón y en que período relacionando las

posiciones del cromosoma con las posiciones de la estructura ASSIGNMENT.

Cada cromosoma es una permutación de valores comprendida entre 7 y

la longitud n del cromosoma, es decir, la suma de todos los períodos disponibles

por cada salon, normalmente esta longitud debe ser mayor o igual al número de

eventos por asignar, quiere decir que se deben tener mas recursos que

requerimientos para que un problema tenga una posible solución aceptable.

Para llenar un cromosoma se genera una permutación aleatoria de estos valores

que representan cada uno de los eventos por asignar, los valores mayores que el número total de eventos por asignar se consideran como eventos ficticios, es

decir, sobran o están de más, pero son necesarios para rellenar las posiciones,

de tal manera que cada posición almacena un evento válido o ficticio y no puede

estar vacío, pero cada evento aparece solamente una vez y nada más.

Page 75: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Opiimizacion Genetica del problema de asignacih de 1% salones de clases del tipo NP-Completo

Ejemplo de un cromosoma:

XI x2 x3 . X"2 X"., X"

T"~i;o~i-i3T;-T;-izi;;-i.l61 Figura 4.4 Un cromosoma Xconteniendo una permutación de eventos.

Donde la longitud del cromosoma n = 72 para este ejemplo

Una colección de tamaño SIZE-POPULAilON de estos individuos o

cromosomas se agrupan para formar una población, obtenida mediante un mecanismo de generación de permutaciones, ya sea aleatoriamente o definido

específicamente para este fin.

Ejemplo de una población de cromosomas:

Tabla 4.3 Una población X de Individuos.

Donde cada Individuo representa un cromosoma o viceversa.

Page 76: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación IÓS salones de clases del tipo NP-Completo

A cada individuo de esta población se' le aplica el operador de mutación

que es una perturbación mínima en algunos de sus genes para introducir

información que no está presente en el cromosoma, también se le aplica un

mecanismo de reparación para corregir algunas de las violaciones de las

restricciones, este mecanismo de reparación convierte al algoritmo genético en

un algoritmo memético. Finalmente se calcula su aptitud con base en una

función de aptitud la cual define cuantas violaciones se están realizando de las

restricciones a las que está sujeto el problema, quien tenga menos violaciones

será más apto.

4.2.4 Operadores genéticos

A continuación se describen los operadores genéticos que serán utilizados en el

algoritmo genético para resolver el problema de la asignación de los salones de

clases.

4.2.4.1 Operadores de mutación para permutaciones

El operador de mutación para esta representación funciona intercambiando 2

genes como se muestra en la Figura 4.5,

\' /

_ _ _ _ _ _ . , I Figura 4.5 Intercambio de 2 genes de un cromocoma.

Page 77: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignacion de ios salones de clases del tipo NP-Completo

Una variante de la mutación es la inversión que funciona invirtiendo una

subcadena dentro del cromosoma como se muestra en la Figura. 4.6.

x, x2 x3 x X"2 %., X"

FpprppFppFrF-71 Figura 4.6 Inversión de una subcadena de un cromosoma.

4.2.4.2 Operadores de reparación u optimización local

El operador de reparación u optimización local consiste en corregir algunas

posiciones dentro del cromosoma que estén violando algunas restricciones, las

reparaciones que se utilizan en este algoritmo son: violación de tiempo

disponible de maestros (R6), violación de horario de maestros con sus grupos

empalmados (R7), violación de materias no compatibles en horario (R8) y

violación de salones preferidos por las clases (R9). La restricción de períodos

continuos de las clases (R10) no se repara, se le dejan al algoritmo genético para que obtenga las mejores soluciones con respecto a esta restricción.

El algoritmo para reparar la restricción R6 se muestra en la Figura 4.7.

66

Page 78: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de IÓs salones de clases del tipo NP-Completo

Para cada gen7 que contenga un evento e7 válido (no ficticio) y el profesor

t7 asignado a este evento no esté disponible en este timeslot ts7.

Se busca otro gen2 que contenga un evento ficticio e2 y que el

profesor t7 del primer gen7 esté disponible en el timeslot ts2.

Si no viola restricciones el profesor t7 en el timeslot ts2 (no debe haber empalme de sus grupos, no debe haber

empalme de grupos de materias no compatibles y no debe

haber dos grupos asignados al mismo salón en el mismo

período).

se intercambian de posición el gen7 y el gen2.

Figura 4.7 Algoritmo de reparación de R6.

Page 79: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

El algoritmo para reparar la restricción R7 es como se muestra en la Figura 4.8.

t l asignado a este evento si esté disponible en este timeslot fsl.

Figura 4.8 Algoritmo de reparación de R7.

Se busca otro gen2 que contenga un evento e2 válido y que el

timeslot tsl sea el mismo que ts2 y el profesor t7 sea el mismo

profesor t 2 .

Se busca otro gen3 que contenga un evento ficticio e3 y que el timeslot ts2 sea diferente del timeslot ts3y

que el profesor t2 del segundo gen 2 esté disponible en este

otro timeslot ts3.

Si no viola restricciones el profesor t2 en el timeslot

ts3 (no debe haber empalme de sus grupos, no debe

haber empalme de grupos de materias no compatibles y no debe haber dos grupos asignados al mismo salón en

el mismo período).

se intercambian de posición el gen2 y el gen3.

Page 80: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimizacion Genética del problema de asignación de los salones de clases del tipo NP-Completo

El algoritmo para reparar la restricción R8 es como se muestra en la Figura

4.9.

Para cada gen7 que contenga un evento e7 valido (no ficticio) y que la

materia asignada s7 no viole la restricción R8 (que no colisione con ninguna

materia no compatible).

Se busca otro gen2 con un firneslof ts2, que contenga un evento e2

válido y que la materia asignada s2 si viole la restricción R8 .

Se busca otro gen3 que contenga un evento ficticio e3 y que el

timeslot ts2 sea diferente al timeslot fs3 y que el profesor f2 del

segundo gen2 esté disponible en este otro timeslot ts3.

Si no viola restricciones la materia s2 en el timeslot

ts3 (no debe haber empalme de sus grupos, no debe

haber empalme de grupos de materias no compatibles y

no debe haber dos grupos asignados al mismo salón en

el mismo período).

se intercambian de posición el gen2 y el gen3.

Figura 4.9 Algoritmo de reparación de R8.

69

Page 81: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo - ~~

El algoritmo para reparar la restricción R9 es como se muestra en la Figura

4.10.

Para cada gen7 que contenga un evento e7 vá/ido (no ficticio) y si el salón

asignado ra7 no es el salón preferido rp7 asignado a este evento e7 en el

timeslot f s 7 .

Se busca otro gen2 que contenga un evento e2 y que el salón

asignado ra2 a ese gen2 sea igual al salón preferido rp7 por el evento

e7 en el timeslot fs?.

se intercambian de posición el gen7 y el gen2.

Figura 4.10 Algoritmo de reparación de R9.

Después de aplicar los operadores de mutación y reparación en la

población actual, se calcula la aptitud de cada individuo de acuerdo a una

función de aptitud, y con base en un esquema de selección se eligen a los

individuos más aptos para formar parte de la nueva generación de individuos.

Para generar la siguiente población se toma como base la población actual,

en esta población actual se seleccionan los elementos más aptos por medio de

un mecanismo de selección, a estos individuos seleccionados se les puede

copiar íntegros a la siguiente población, o se les puede aplicar el operador de cruza a dos individuos seleccionados para generar dos descendientes que

contengan características de ambos padres seleccionados, se espera que sean

de mejor la aptitud los descendientes ya que sus padres son de los mas aptos, los dos descendientes de la cruza serán insertados en la nueva población.

Page 82: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

4.2.4.3 Operadores de selección

El operador de selección toma en cuenta la aptitud de los individuos dentro de

la población, por lo tanto, los individuos de’mayor aptitud serán seleccionados

para formar parte de la nueva población y los de menor aptitud irán siendo

eliminados.

Los métodos de selección que aquí se utilizan son el método selección de

la rueda de la ruleta y el método de selección por torneo, se utilizan en

combinación para evitar la convergencia prematura, es decir, que todos los

individuos de la población sean iguales y que el algoritmo quede atrapado en un

óptimo local del que no pueda salir.

El mecanismo de selección de la rueda de la ruleta utiliza la probabilidad

acumulada de sus individuos para generar slots de tamaño proporcional a su

aptitud como se mostró en la Tabla 3.1. A través de la generación de un número

aleatorio uniformemente distribuido se selecciona un determinado individuo, este

método de selección es muy propicio para la convergencia prematura ya que

selecciona a los mejores individuos para predominar en la población.

El mecanismo de selección por torneo selecciona al azar tantos

individuos como se deseen y de entre ellos se elige a los de mayor aptitud para

ser seleccionados, este método evita caer en la convergencia prematura en gran

medida.

Los individuos seleccionados pueden pasar directamente a formar parte de la nueva generación, copiándolos íntegramente en la nueva población, o se les

aplica un operador de cruza junto con otro individuo seleccionado para generar dos descendientes nuevos para la nueva población.

71

Page 83: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimiracion Genética del problema de asignacion de los salones de clases del tipo NP-Completo

4.2.4.4 Operadores de cruza para permutaciones

Se han desarrollado varios operadores de cruza para permutaciones [30], como son el operador de cruza ordenada OX, el operador de cruza cíclica CX, y el operador de cruza de mapeo parcial PMX.

Operador genético de cruza ordenada (OX). Este operador se basa en el

principio de copiar una subcadena de un padre al hijo y los elementos faltantes

son copiados del otro padre conservando su orden relativo.

Operador genético de cruza Cíclica (CX). Este operador se basa en la

construcción de dos subconjuntos a partir de uno de los padres y completar las

posiciones utilizando el otro padre, la construcción de los subconjuntos toma en

cuenta las posiciones en conflicto de los padres.

El operador genético de cruza de mapeo parcial (PMx).- Este operador se

basa en el principio de copiar una subcadena de un padre al hijo y los elementos

faltantes son copiados del otro padre a través de un reordenamiento de los

elementos.

El operador de cruza tradicional definido la Figura 3.5 y la Figura 3.6 de

la sección 3.2.1 del Capítulo 3, no se puede aplicar directamente a una

codificación de permutaciones, pero se puede transformar la secuencia normal

de la codificación de permutación a una secuencia modificada de la codificación

de permutaciones y aplicar el operador tradicional de cruza directamente a la

secuencia modificada, posteriormente se tendrá que transformar nuevamente de

la secuencia modificada a la secuencia normal.

El método que se utilizó en esta tesis es el de la secuencia modificada, el cual consiste en transformar la secuencia normal de la representación de permutación en una secuencia modificada para aplicar el operador de cruza tradicional. -

72

Page 84: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de ¡os salones de clases del tipo NP-Completo

Para transformar la secuencia normal de la codificación de permutación a

una secuencia modificada de la codificación de permutación se toma como base

la permutación original de un cromosoma, se puede sustituir el evento i-esimo

por la posición ordinal del evento i-esimo en una lista auxiliar decreciente, como

se muestra en la Figura 4.1 1.

EXPLiCACióN I PERMUTACION ~ ORIGINAL

(I a 5 3 7 2 4 6 El evento 1 ocupa la posición O [ E i E i T ~ ~ en la lista auxiliar El evento 8 ocupa la posición 6 en la lista auxiliar 1 a 5 3 7 2 4 6

I El evento 5 ocupa la posición 3 en la lista auxiliar 1 5 3 7 2 4 6

! El evento 3 ocupa la posición 3 en la lista auxiliar 1 3 7 2 4 6

Figura 4.11 Construcción de una secuencia modificada a partir de la

secuencia original.

Si consideramos que N representa el número de eventos totales, incluyendo los eventos ficticios, la secuencia modificada tiene como propiedad

que el primer elemento toma valores de O a N-I, el segundo elemento del O a N-2, . . . , el penúltimo elemento toma valores de O a 1 y el último elemento,solo

puede tomar el valor de O. Esta secuencia modificada tiene la atractiva propiedad de tolerar la utilización de los operadores genéticos tradicionales de

Holland.

Page 85: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

Para poder evaluar la aptitud de un cromosorna se requiere un esfuerzo

doble ya que tenemos que convertir la secuencia normal en secuencia

modificada para aplicar el operador de cruza tradicional y viceversa para aplicar

el operador de mutación e inversión se tiene que convertir la secuencia

modificada a secuencia normal, sin embargo, produce muy buenos resultados.

Una vez completada la siguiente generación, se vuelve a realizar el mismo

procedimiento mutación, reparación, evaluación de aptitud, selección y

cruza para obtener la siguiente generación.

4.2.5 Función de aptitud

La función de aptitud no es más que la función objetivo de nuestro problema de

optimización. El algoritmo genético únicamente maximiza, pero la minimización

puede realizarse fácilmente utilizando el recíproco de la función maximizante

(debe cuidarse, por supuesto, que el recíproco de la función no genere una

división por cero). Una caracteristica que debe tener esta función es que tiene

que ser capaz de "castigar" a las malas soluciones, y de "premiar" a las buenas

soluciones, de forma que sean estas últimas las que se propaguen con mayor

rapidez.

Solamente los individuos más aptos o de mejor aptitud irán predominando

en cada generación para guiar la búsqueda hacia los mejores individuos que

satisfagan las restricciones del problema.

Para obtener la aptitud de cada cromosoma se utiliza una función de

aptitud, la cual evalúa cuantas veces se está violando cada una de las

restricciones, a esta cantidad de violaciones se le multiplica por la penalización correspondiente a cada restricción, la penalización está definida como el peso que tiene la restricción con relación a las demás restricciones.

74

Page 86: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

. .

La función de aptitud se define"para cada individuo de la población con la

siguiente formula: - fitness¡ -

Donde i = 1,2, . . . , MAX-IN1

R = Total de restricciones evalua

V, = Número de violaciones de la I

fr = Penalización de la violación d

La formula de fífnessj corresponi

equivale a la inversa de la sumatoria

multiplicadas por sus penalizaciones, es

es 1.

Las restricciones que se evalúa

asignación de los salones de clases son I

La restricción R1 se evalúa antes d

es decir, se puede saber con anticip,

comparamos los periodos o fimeslof di:

requeridos para cada salón. Para que e: períodos disponibles debe ser igual o IT

cada salón.

1

R

r = l

S.

,tricción r.

a restricción r.

a una función de minimización y

las violaciones de las restricciones

formula se minimiza cuando su valor

para resolver el problema de la

que se plantean en la sección 2.3.

:omenzar la búsqueda de la solución,

ón. Para evaluar la restricción R1 mibles con los períodos o fimeslot :a una solución'factible el número de 'or que los períodos requeridos para

En la codificación del problema, es decir, en la representación de permutaciones. se incluyen todos los eventos requeridos, o sea, cada periodo de cada grupo está incluido como un evento válido, solo falta asignar este evento a

75

Page 87: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

un salón en un período determinado; por,lo tanto se garantiza que la restricción

R2 se satisface, a menos que no se cumpla la restricción R I . i

En la representación se garantiza que cada período disponible de un salón

aparece una sola vez, por lo tanto también se garantiza que las restricciones R3,

R4 y R5 se satisfacen.

En la restricción R6 se revisan uno por uno los eventos asignados para

evaluar si en el período en que está asignado ese evento su profesor asociado

esta disponible, si no es así ocurre una violación a la disponibilidad del profesor.

Para evaluar la restricción R7 también se revisa uno a uno los eventos

asignados, para verificar si eventos pertenecientes a grupos que tienen el mismo

profesor no estén asignados en el mismo período.

La restricción R8 hace una revisión exhaustiva que verifica si cada evento

que está asignado a un período no se empalma con otro evento que

pertenezcan a un grupo del mismo semestre, o pertenezcan a materias no

compatibles (por ejemplo cuando se desea que las clases de grupos de una

misma materia no se realicen al mismo tiempo).

La restricción R9 se evalúa comparando si el salón asignado a una clase

es el salón preferido por esa clase.

La restricción R10 se evalúa verificando que los períodos de una clase en

un día sean consecutivos, tomando en cuenta el número minimo y máximo de

periodos consecutivos de cada clase. j

4.2.6 Algoritmo genético propuesto

El algoritmo genético propuesto para resolver el problema de la asignación de los salones de clase se muestra en la Figura 4.12.

Page 88: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

1 .-

2.-

3.-

3.1.-

3.2.- Mutación por inversión.. . '

4.- 4.1.-

4.2.-

4.3.-

4.4.-

5.-

6.-

Cargar datos desde las tablas del ÁNEXO C.

Crear la población inicial aleatoriamente

Operadores genéticos de Mutación .alternadamente

Mutación de intercambio de 2 genes

I

Operadores de Reparación (optimización local)

Reparación de la restricción R6

Reparación de la restricción R7 Reparación de la restricción R8

Reparación de la restricción R9

Evaluar población ( aplicar función de aptitud )

Mientras no se cumpla'la condición de terminación hacer lo siguiente

6.1.-

6.1.1.-

6.1.1.1.-

6.1.1.2.-

6.1.2.- 6..1.3.-

6.1.3.1 .-

6.2.-

6.2.1.-

6.2.2.-

6.3.-

6.3.1 .-

6.3.2.-

6.3.3.-

6.3.4.-

6.4.-

Generar la siguiente población

operadores de selección alternadamente

Operador de selección de Rueda de la Ruleta Operador de selección por Torneo

Reproducción directa Operadores de cruza

Método de la 'secuencia modificada con el operador de

cruza tradicional

Operadores genéticos de Mutación alternadamente

Mutación de intercambio de 2 genes

Mutación por inversión

Operadores de Reparación (optimización local)

Reparación de la restricción R6

Reparación de la restricción R7

Reparación de la-restricción R8 Reparación de la restricción R9

Evaluar población ( aplicar función de aptitud )

I Figura 4.12 Algoritmo genético para resolver el problema de la asignación de los salones de clases.

77

Page 89: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

, I,.,>. i.1, 6 ' Optimizacion Genética de\ problema de asignation de los salones de clases del tipo NP-Completo

La condición de terminación sera definida por diferentes situaciones

según sea conveniente, por ejemplo: por la función de aptitud, en la medida que

se logre alcanzar el valor óptimo, o cuando se alcance un número máximo de

generaciones evaluadas en el algoritmo genético, o cuando el algoritmo haya

llegado a una en convergencia prematura, o cuando se haya alcanzado un

tiempo limite de procesamiento.

La convergencia prematura es un problema de los algoritmos genéticos, la

cual consiste en que todos los individuos son iguales entre si, de tal manera que

no se pueda mejorar la aptitud de cada uno de ellos, esto significa que el

algoritmo ha quedado atrapado en un óptimo local, y en consecuencia, la

posibilidad de saltar a otra área del espacio de búsqueda para realizar

exploración es muy remota. Para evitar una convergencia prematura en el algoritmo empleado se utilizan varios mecanismos:

a Se alternan los operadores de mutación utilizando el operador de

mutación de intercambio de 2 genes y el operador de mutación por

inversión de una subcadena del cromosoma.

4 Otro mecanismo, el cual es muy importante por el beneficio que

proporciona, es alternar los métodos de selección, utilizando el método de

la rueda de la ruleta y el método de selección por torneo.

. Una tercera alternativa es aplicar un operador de optimización local para

mejorar la aptitud de algunos individuos de la población.

También se puede experimentar variando los parámetros del algoritmo genético. por ejemplo, la probabilidad de cruza, la probabilidad de mutación, el número de individuos en la población, etc.

Page 90: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

~ : > : < , , : I / I ::zn

Optimización Genética del problema de asiijnaboh de los salones de clases del tipo NP-Completo

CAPíTULO 5

DESCRIPCIÓN DE PRUEBAS Y RESULTADOS

En este capítulo se reportan los casos de prueba y sus resultados al ser

evaluados por el algoritmo de optimización genética de la asignación de los

salones de clases.

5.1 Evaluación de un caso pequeño

Como ejemplo se utiliza un caso pequeño, el cual se resuelve de manera

manual.

Sean 5 grupos g7, 92, 93, 9 4 y g5 cada uno de ellos pertenece a la

materia s7, s2, s3, s4, s5 respectivamente.

Sean 3 profesores fl, f2, f3.

Sean 3 salones r l , r2, r3.

Sean 7 horas diarias durante 5 días.

Sean las materias incompatibles SI can s2 y s5, s2 con s4 y s3 con s5.

Un evento esta definido como una sesión o lectura de un grupo gi el cual

pertenece a una materia Si y tiene asignado a un profesor fj y se desea asignar

en un salón rj.

A continuación se puede ver la tabla de timeslots disponible para los

profesores en la Taba1 5.1.

79

Page 91: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

y :. v..k;.,;,: ' . 'k, $1' i

Optimización Genética del problema de asigtiacion ae los salones de clases del tipo NP-Completo

Tabla 5.1 Tabla de timeslots disponibles de los profesores.

En esta tabla se muestran 3 recuadros, uno para cada profesor, en el

renglón superior se muestran los timeslots numerados correspondientes a cada

profesor para un día de la semana, en la columna de la izquierda se ubican cada

uno de los días de la semana. La intersección de cada renglón y columna

muestra si un profesor está disponible en el timeslot correspondiente, las celdas

con valor de cero son timeslots no disponibles para ese profesor.

A continuación se observa la tabla de timeslots disponible para los

salones en la Tabla 5.2.

Tabla 5.2 Tabla de timeslots disponibles de los salones.

~ ~ ~ ~ ~~

En esta tabla se muestran 3 recuadros, uno para cada salón, en el renglón superior se muestran los timeslots numerados correspondientes a cada

salón para un día de la semana, en la columna de la izquierda se ubican cada

uno de los días de la semana. La intersección de cada renglón y columna muestra si un salón esta disponible en el timeslot correspondiente, las celdas con valor de cero son timeslots no disponibles para ese salón.

Page 92: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas
Page 93: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

El objetivo final es asignar cada evento en un saltin y timeslot que no viole

las restricciones establecidas previamente en la sección 2.3.

Finalmente se muestra en la Tabla 5.5 la asignación resultante después

de evaluar que no se violaran las restricciones a las que esta sujeta.

Tabla 5.5 Asignación final del caso pequeño.

En esta tabla se muestran los eventos asignados a un salón particular en

un periodo específico, por ejemplo, el primer recuadro corresponde a los

timeslots del salón r l de Lunes a Viernes, en el timeslots 6 (columna 6 del

primer recuadro) del día Lunes está asignado el evento 6.

En esta asignación resultante no hay violaciones a las restricciones

planteadas previamente, por ejemplo, el evento 8 está asignado en el timeslot 6

del salón r l el día Miércoles, este evento tiene asignado el período p7 del grupo

92 de la materia s2, al profesor t l y esta demandando se asigne al salón r l ; el

evento 8 no tiene empalmes de grupo, de profesor, de salón o de materias

incompatibles, además los timeslots para el profesor t7 y el salón rl están

disponibles. En general, la calidad de la asignación es evaluada de acuerdo al objetivo del problema que consiste en evitar cualquier violación de las restricciones planteadas, por lo tanto, si no existe violación alguna es una

asignación óptima.

82

Page 94: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

5.2 Evaluación de un caso real

El desemperio del algoritmo se verificó con un caso de prueba real obtenido en

la Facultad de Ingeniería de Universidad Autónoma de Tamaulipas campus

Tampico, la asignación de los salones de clases de dicha Facultad se generó

en un tiempo de 3 semanas, en el periodo escolar Ago-Dic de 1997 en las

carreras de lngenieria en sistemas cornputacionales, Ingenieria civil e Ingenieria

industrial.

La información obtenida para poder evaluar los casos de prueba fue la

siguiente:

El número de carreras.

El plan de estudios para cada carrera.

El número de grupos para cada materia.

El número de salones y sus horarios disponibles.

El número de profesores y sus horarios disponibles.

La asignación previa de cada profesor a sus grupos.

Salones preferidos por cada grupo.

La asignación real realizada de ese período escolar.

Un punto muy importante fue la revisión del proceso manual que se sigue

para generar la asignación de los salones de clases.

Con los datos que se recopilaron se clasificó la información, como.se

muestra en el Anexo A, para generar un modelo que muestre la relación entre ellos como se muestra en la Figura 4.1 en el capítulo IV.

El modelo muestra las relaciones de las tablas generadas a partir de la

información recopilada, con la finalidad de crear una asignación que satisfaga las demandas y no viole restricciones o su costo de violarlas sea mínimo. Bajo este

modelo se permite evaluar las restricciones a las que está sujeto el problema de

la asignación de los salones de clases, definidas en la sección 2.3.

83

Page 95: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NPCompleto

Las penalizaciones por violar algunas de estas restricciones se definen

por medio de la métrica para evaluar la aptitud de cada posible solución es como

se muestra en la Tabla 5.6.

Tabla 5.6 Métrica para definir la bondad de las soluciones.

Las restricciones R I , R2, R3, R4 y R5 se evalúan antes de ejecutar el

algoritmo, es decir, se pueden conocer con anticipación, ya que la

representación así lo permite. Los pesos que se les dan a cada una de las

restricciones violadas se definen por lo que significa cada una de ellas con

relación a las demás y la importancia que tienen dentro del la asignación de los

eventos, por ejemplo:

Para la restricción R I , si se puede saber que no hay suficientes recursos,

se puede saber con seguridad que no habrá una solución factible que satisfaga

las restricciones, de ahí que su peso sea mayor. De esta manera se puede

conocer cual será el valor limite de la función objetivo de minimización definida

por la función de aptitud (fitness).

Para la restricción R2, la cual depende de la restricción R1, se deben de

programar todas las clases de cada grupo, e n este caso todos los eventos se

programan, pero pueden estar violando las restricciones R6, R7, R8, R9 y R10, por lo tanto este peso debe ser mínimo ya que se incrementaria con las

violaciones de las restricciones relacionadas.

Para las restricciones R3, R4 y R5, el peso es nulo debido a que la

representación garantiza que no se violen estas restricciones.

a4

Page 96: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

Para la restricción R6, el peso es relativamente bajo ya que involucra

solamente el tiempo disponible del profesor en un período determinado.

Para la restricción R7, el peso es relativamente mayor que en R6 ya que

involucra dos grupos y es una forma de violar la restricción R2.

Para la Restricción R8, su peso es relativamente medio debido a que se

afecta un plan curricular.

Para la restricción R9 y R10, los pesos son relativamente bajos debido a

que son restricciones que el algoritmo genético puede ir corrigiendo con su

proceso de selección.

En el ANEXO C se muestran el formato de las tablas que conforman los

casos a evaluar, estas tablas forman parte del modelo de base de datos

mostrado en la Figura 4.1.

Para evaluar el caso real de la Facultad de Ingeniería de la

Universidad Autónoma de Tarnaulipas campus Tarnpico, se definen las

instancias que se desean resolver para la asignación de los salones de clases

como se muestra en la Tabla. 5.7.

Tabla 5.7 Instancias obtenidas de los datos de la Facultad de Ingeniería de la Universidad Autónoma de Tamaulipas campus Tampico.

-+,A--. - i i

85

Page 97: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimiración Genética del problema de asignación de los salones de clases del tipo NP-Completo

En todos los casos se tomaron 5 días a la semana con 7 horas hábiles

por día, de las 7:OO horas a las 14:OO horas.

Cada una de las instancias obtenidas se evaluaron con diferentes

parámetros del algoritmo genético y sus mejores resultados fueron los que se

muestran en la Tabla. 5.8.

Tabla 5.8 Resultados obtenidos al evaluar las instancias reales con el algoritmo genético.

Cada renglón es una instancia, de la segunda a la cuarta columna son los

parámetros utilizados en el algoritmo genetico. la quinta y sexta columna son los valores de los parámetros consumidos al final de la ejecución del algoritmo , en

la sección de violaciones de restricciones se muestra que no existió ninguna

violación a las restricciones planteadas, de tal manera que la calidad de la solución obtenida en cada caso es la óptima de acuerdo a la función objetivo.

Las penalizaciones para las violaciones de cada restricción se definieron

en la Tabla 5.6.

El resultado de cada instancia se comparó con el resultado que se obtuvo manualmente en la misma Universidad. en todos los casos se utilizaron datos

86

Page 98: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

reales y las instancias definidas se derivan de los datos reales y también se

alcanzó la solución óptima.

Se realizaron varios experimentos con los parámetros del algoritmo

genético, por ejemplo, el porcentaje de Cruza varió en un rango de 60% a 90%,

resultando el más adecuado de 85%, sin embargo en la instancia 4 se utilizó un

porcentaje de 80%; el porcentaje de Mutación varió en un rango del 5% al 30%,

el porcentaje más aceptable fue de 30%.

El tamaño de la población también varió desde un tamaño mínimo de 50

hasta 500 individuos en la población, al aumentar el tamaño de la población

también aumenta considerablemente el tiempo de ejecución ya que se realiza el

proceso de optimización local teniendo un costo de ejecución de O(n3) en cada

generación. Los algoritmos meméticos no requieren un tamaño de población

muy grande para desempeñarse de manera efectiva, por lo tanto el tamaño de la

población para las instancias pequeñas es de 50 individuos y para las instancias

grandes es de 100 individuos.

La condición de paro se determina de 4 maneras

1 .- Numero máximo de 100,000 Generaciones

2.- Tiempo Máximo de 8 horas de ejecución.

3.- Porcentaje del 95% de convergencia prematura.

4.- Calidad Mínima del 95 % de la mejor solución.

Los requerimientos de equipo son los siguientes:

1.- PC Compaq Procesador fenfium 4,256 Mb de memoria, 1500 MHz.

2.- Compilador de lenguaje C Dev-C++ 4.9.3.0.

Page 99: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

5.3 Evaluación de Instancias de casos de prueba reportadas en Internet

Para evaluar los casos de prueba, se utilizaron las instancias que se reportan en

Internet [9], las cuales se desean resolver para la asignación de los salones de

clases, sus datos son como se muestran en la Tabla 5.9.

Tabla 5.9 instancias que se reportan en Internet.

Estas instancias fueron diseñadas para ser altamente restringidas, cada

clase, cada profesor y cada salón son requeridos para cada período, es decir, el

número de recursos solicitados es exactamente el mismo que el número de

recursos disponibles, todos los recursos disponibles serán utilizados en su

totalidad. La función objetivo para cada instancia es que no haya empalmes de

ningún tipo de acuerdo a las restricciones propuestas en esta tesis.

Para estas instancias se evalúan las mismas restricciones que en el caso

real, los resultados reportados para estas instancias son de cero empalmes, es

decir, todas las instancias tienen solución satisfactoria, de esta manera se tiene

un punto de comparación.

Los resultados obtenidos al aplicar el algoritmo genético para las

instancias mencionadas en la Tabla 5.9 son los resultados mostrados en la Tabla 5.10.

Page 100: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

68

Page 101: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

1 ,- Numero máximo de 100,000 Generaciones.

2.- Tiempo Máximo de 8 horas de ejecución.

3.- Porcentaje del 95% de convergencia prematura.

4.- Calidad Minima del 95 % de la mejor solución

Los requerimientos de equipo son los siguientes:

1 _- PC Cornpaq Procesador Pentiurn 4, 256 Mb de memoria, 1500 MHz

2.- Compilador de lenguaje C Dev-C++ 4.9.3.0.

5.4

Los casos de prueba que se utilizaron aqui contienen instancias altamente

restringidas, por ejemplo, en el caso real de la Universidad se generó la solución

final de manera manual en un periodo de 3 semanas alterando los datos iniciales

gradualmente; en las instancias reportadas en internet se especifica que son

altamente restringidas.

Comentarios finales a cerca de las pruebas realizadas

Las pruebas realizadas para evaluar el algoritmo propuesto

proporcionaron resultados de óptima calidad, por lo tanto , en todos los casos se

logró alcanzar el objetivo final, el cual consiste en encontrar una asignación que

no viole ninguna de las restricciones propuestas.

Una de las caracteristicas del algoritmo es que a medida que aumenta el

número de eventos (número de variables a evaluar) aumenta el tiempo de ejecución.

Los valores propuesto para la métrica que penaliza las violaciones de las restricciones violadas pueden variar, en estos casos de prueba se definieron las

90

Page 102: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

penalizaciones como se muestra en la Tabla 5.6, pero también se pueden definir

de tal manera que el algoritmo fuera ajustando las soluciones parciales de

acuerdo a aquellas restricciones que le cuestan más trabajo corregir, o de

acuerdo a algún orden jerárquico de importancia o preferencia.

91

Page 103: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

CAPíTULO 6

CONCLUSIONES

En este capítulo se presentan las conclusiones del trabajo realizado para

resolver el problema de la asignación de los salones de clases, sus limitaciones

y alcances, as¡ como los trabajos futuros de investigación.

En esta tesis se mostró la factibilidad de automatizar el sistema de

asignación de los salones de clases para una institución de educación superior

de gran magnitud y sujeto a un conjunto de restricciones. El problema de la

asignación de los salones de clases es un problema NP-completo. El problema

es difícil de abordar y la dificultad no solo depende del objetivo y del tamaño del

problema, sino también de las preferencias de las clases sobre los salones [I]

(capacidad del salón, recursos, etc.). Los resultados obtenidos en esta tesis han

sido muy buenos en términos generales ya que se alcanzaron soluciones de

calidad aceptables tiempos razonables, sin embargo, el método propuesto puede

ser mejorado en gran medida.

6.1

J

J

Principales aportaciones de esta tesis

Las principales aportaciones son las siguientes:

La aportación e innovación de este trabajo es el diseño y desarrollo de un

esquema de solución para un problema muy difícil de resolver, así como el empleo de una técnica en un área donde se presenta un espacio de

búsqueda muy complejo y grande.

Se presenta un esquema de solución mediante algoritmos genéticos, basado en el concepto de algoritmos meméticos, mediante un operador de optirnización local, el cual consiste en reparar algunas violaciones a las

restricciones propuestas.

Page 104: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

J El resultado obtenido consiste en un conjunto de soluciones muy cercanas

al valor Óptimo, incluyendo este valor, no está limitado a una sola solución.

El algoritmo planteado en este trabajo de investigación utiliza una función

de aptitud para dirigir su búsqueda; por lo tanto no requieren ningún

conocimiento especifico del espacio de búsqueda del problema.

J

J La codificación del problema se representa como una permutación de

eventos, con la cual garantiza no violar algunas restricciones tales como

R2, R3, u4 y R5.

R2. Cada grupo tiene el número correcto de timeslots asignados.

R3. Cada grupo es asignado a un salón particular solamente en un

periodo.

R4. Cada salón es usado solamente en sus timeslots disponibles.

R5. Dos grupos no son asignados al mismo salón en el mismo timeslot o periodo, es decir, evitar que cada salón tenga más de una clase

asignada en un periodo determinado, no hay colisión de salones

Por lo tanto, reduce considerablemente el espacio de búsqueda,

eliminando un considerable número de soluciones invalidas y le da mayor poder

de exploración y explotación de las soluciones parciales obtenidas en un

determinado momento en la ejecución del algoritmo propuesto.

J El Tiempo de ejecución del algoritmo propuesto es mayor comparado con

otros algoritmos [4][28], Pero presenta varias ventajas, los resultados

proporcionados son satisfactorios, el tamaiío del problema a solucionar es

relativamente grande (3 carreras), el número de restricciones a evaluar es de 10, los datos de entrada son reales, los resultados se compararon con la solución manual.

Se trabajó con datos reales y se pudo comparar la mejor solución obtenida por el algoritmo con la solución obtenida de manera manual, la cual se

utilizó en la práctica, aunque fue distinta, la calidad fue la misma, es decir, fue una solución óptima.

J

93

Page 105: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

J El resultado de las soluciones obtenidas no depende del orden de entrada

de los datos, es completamente aleatorio, cada corrida que se haga del

algoritmo genético con los mismos datos, es independiente de las

anteriores.

6.2 Principales limitantes de este trabajo

Las principales limitantes son las siguientes:

J Evalúa las principales restricciones o las mas comunes, sin

embargo, no evalúa restricciones más finas por estar consideradas entre

las restricciones más suaves o de menor importancia, estas restricciones

pueden ser las siguientes :

R11. Evitar tiempos libres de los profesores entre cada clase

R12. Evitar tiempos libres de los alumnos entre cada clase.

R13. Ubicación de los salones.

J La granularidad de los timeslots es la más común, es decir, el tamafio

mínimo de una clase es de una hora, pudiendo ser de 30 minutos o menos.

6.3 Trabajos futuros

Se proponen los siguientes trabajos futuros:

J Aumentar número de timeslot disponibles en un día, es decir, cubrir ambos turnos, por la mañana y por la tarde, para que haya la posibilidad de satisfacer la demanda de los alumnos.

Aumentar la granularidad de los fimeslots para que haya mayor cantidad de

posibles soluciones a costa de mayor espacio de búsqueda y mayor tiempo de ejecución del algoritmo genético. Incorpora las restricciones suaves a costa del tiempo de ejecución y la

posibilidad de no obtener una solución óptima.

J

J

94

Page 106: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

J Incorporar un mecanismo que evalúe que posibilidades de éxito tenemos o

que nos dé un acotamiento de la calidad de las soluciones de acuerdo a los recursos disponibles.

De acuerdo al esquema de solución, diseñar un método para agregar

restricciones modularmente que se adapten a la representación de la

solución y a las tablas de datos

J

En resumen, el trabajo desarrollado presenta muchos beneficios, que se

pueden aprovechar y explotar, aunque hay muchas cosas por hacer, sin

embargo, se ha demostrado que es posible aplicar la técnica de algoritmos

genéticos para resolver este problema de asignación de salones de clases y

cabe la posibilidad de generalizarlo si se plantea como un esquema de solución

que en vez de tratar de adaptar el algoritmo a la situación particular de cada

institución, sea la situación de la institucion la que se adapte al esquema del

algoritmo.

Page 107: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NPCompleto

ANEXO A

Parte de la información recopilada y clasificada en la Facultad de

Ingeniería de la Universidad Autónoma de Tamaulipas Campus Tampico.

KindRoom Career Descn tion

1 COMMON REACOMUN

2 ISC INGENIERIA EN SISTEMAS COMPUTACIONALES 2 LABORATORIO

3 IC INGENIERIA CIVIL 3 AUDIOVISUAL

4 I1 INGENIERIA INDUSTRIAL 4 AUDITORIO

5 GENERAL

~ ~~

Room Room

24

25 26 27 28 29

30 31

32

33

34

35 36 31 38

39

42

40

41

43 44

45 46 47

96

Page 108: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

40

Group

ING02 1

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 - -

44 45

Teacher

ISCO4 ECO5 I

ETNOI

48

Teacher

ISCO8 1

TeacherlD

49 50

ISC09

lSCl0 1

:; 43 ISC03

51 MATO1 I

47 ISC07 46

55 56

MAT05 MAT07 I 1

57 MATO8 I ETN03

HID01

HID03 IC-or 1-02

IC-O3

I C 0 5 IC-O6

11-03

II 04 I I 72 TOP01 I 97

Page 109: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

I

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

1

2 3

4

5 6

7

a 9

10

11

12

13

14

15 16

17

18 19

20 I.

R TC A T TS A

98

Page 110: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

ANEXO B

Modelo de base de datos que muestra la relación entre los datos para

solucionar el problema de la asignación de los salones de clases.

.~ Kindlo Description

I I Table KindRoom i--"

SubiectD CareeiD-item Description Pieview-l_ilem Preview-Z-ilem New-1-item NeKZ-item Semester Total-Hours H-Theory H-Prauice Labaratary_item KindlD-item R w m ~ P r e f e r r e U m Students- Grwps

Table Plan

I 4

GrOUr>lD Subjectpitem 1 1 TeachlD_iiem Capauiy I e Table-Group

l - 1

L EvenüD GrouplD-item

Subjectiü-iiem Period

!oomlD KindlOJem Capacity RoomlD item

TimeSlotsID item

Table R TS A WLi" Timeslots Hour Day

Segment

RaimPrefetred_Peri~-ilem

TimeSlotlD

Table Event

C I

d Table Teacher h Table T i S A

Modelo ELKA Para una Base de Datos usada en el Problema de Asignación de Salones de Clases

99

Page 111: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

ANEXO C

Definición de las tablas del modelo de base de datos del problema de la

asignación de los salones de clases

Nombre de la Tabla: Información que contiene: Fuente : Descripción : CareerlD Description

Nombre de la Tabla: Información que contiene: Fuente : Descripción : KindlD Description

Nombre de la Tabla: Información que contiene: Fuente : Descripción : RoomlD

KindlD Capacity

CareerlD

Nombre de la Tabla : Información que contiene: Fuente : Descripción: Teacher Name

Nombre de la Tabla : Información que contiene: Fuente: Descripción: TimeSlotlD Hour Day

Table-Career Las carreras que se ofrecen Planes de estudio

Clave de la carrera Nombre de la carrera

Table-KindRoom Los tipos de salón con que se cuenta Coordinación Académica de las carreras

Clave tipo de salón TiDo de salón

Table-Room Los salones con que se cuenta Coordinación Académica de las carreras

Clave del salón Clave tipo salon Capacidad del salón Clave carrera a la que pertenece

Table-Teacher Los maestros con que cuenta la Facultad Coordinación Académica de las carreras

Clave del Profesor Nombre del profesor

Table-TimeSlot Los TimeSlots o períodos disponibles Coordinación Académica de las carreras

Clave del TirneSlot Hora del día Día de la semana

roo I

I

Page 112: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

Dia 1 si O en

Nombre de la Tabla: Información que contiene: Fuente: Descripción: SubjectlD CareerlD Description Preview-1 Preview-2 Next-1 Next-2 Semester Total-Hours H-Theory H-Practice Laboratory KindiD Room-Preferred Students Groups

de la semana está disponible en este TimeSlot, otro caso

Nombre de la Tabla : Información que contiene: Fuente : Descripción: TeacherlD TimeSlotlD Hour

Available Day

Nombre de la Tabla: Información que contiene: Fuente : Descripción: RoomlD TimeSlotlD Hour Day Available

Page 113: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

Nombre de la Tabla: Información que contiene: Fuente : Descripción: GrouplD SubjectlD TeacherlD; Capacity

Nombre de la Tabla: Información que contiene: Fuente : Descripción : EventlD GrouplD SubjectlD Period Room-Preferred-Period

Table-Group Grupos necesarios solicitados Coordinación Académica de las carreras

Clave del grupo Clave de la material del grupo Clave del profesor asignado al grupo Capacidad máxima de alumnos

Table-Event Eventos a asignar Tablas Definidas anteriormente

Clave del evento Clave del grupo al que pertenece Materia a la que pertenece Periodo del grupo (clase o lectura) Salón preferido para este periodo

102

Page 114: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

ANEXO D

Publicaciones científicas de aplicaciones de algoritmos geneticos reportados en [43].

1. “Una modelización para emplazamiento óptimo de un vertido de aguas residuales con ajuste de velocidades de corrientes a datos y uso de algoritmos genéticos”, B . González, B. Galván, XVI Congreso de ecuaciones diferenciales y aplicaciones, VI Congreso de matemática aplicada, Septiembre de 1999, Las Palmas de G. C., España.

2. “Optimising the determination of multiple waste disposal sites in offshore waters using genetic algorithms”, B. Gonzalez, G . Winter, European congress on computational methods in applied sciences and engineering, ECCOMAS 2000, Septiembre de 2000, Barcelona, España.

3. “Aplicación de los algoritmos genéticos en problemas de optimización de estructuras de pórticos planos y nudos rígidos”, D. Greiner, Tutores: G.Winter, J.M Emperador, Proyecfo fin de carrera, Enero de 2000, Las Palmas de G.C., España.

4. “Multiobjective optimization of bar structures by Pareto-GA”, D. Greiner, J.M. Emperador, G. Winter, European congress on computational methods in applied sciences and engineering ECCOMAS 2000, Septiembre de 2000, Barcelona, España, ISBN 84-89925-70-4.

5. “Optimal scheduling of power generation by evolutionary algorithms”, G. Winter, M. Cruz, B. Galván, D. Greiner, European congress on computational methods in applied sciences and engineering ECCOMAS 2000, Septiembre de 2000, Barcelona, España, ISBN 84-89925-70-4.

6. “Emplazamiento Óptimo de múltiples puntos de vertido de aguas residuales en dominios acuáticos con métodos evolutivos de optimización global‘: B. González, G. Winter, B . Galván, XVli congreso de ecuaciones diferenciales y aplicaciones, VI/ congreso de matemática aplicada, Septiembre de 2001, Salamanca, España.

7. “Optimal placement of wastewater outfalls by a flexible evolution algorithm”, B. Gonzalez, B. Galván, G. Winter, Evolutionary methods for design, Optimisation and control with applications to industrial problems - EUROGE 2007, Septiembre de 2001, Athens, Greece, pp. 436-441.

103

Page 115: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

8. “Optimising frame structures by different strategies of genetic algorithms”, D. Greiner, G. Winter, J . M. Emperador, Finite elements in analysis and design, Septiembre de 2001, Volume 37 (5), pp. 381402, ISBN 01 68-874~.

9. “Safety system design optimization using genetic algorithms with incomplete information in evolutionary methods for design, optimization and control”, B. Galvan, D. Marin, E. Benitez, S . Alonso, J. Javier, EUROGEN 2007 Conference, Septiembre de 2001, Athens, Greece, pp. 385- 390.

1 O. “Aplicación de los algoritmos geneticos en optimización de funciones de valor estimado”, B. Galván, D. Marín, E. Benítez, S. Alonso, CEDYA, Septiembre de 2001, Salamanca.

11. “Métodos evolutivos de optimización global multiobjetivo y aplicaciones en ingeniería”, B . Galván, D. Greiner, G. Winter, J . Bravo de Laguna, VI congreso internacional métodos numéricos en ingeniería y ciencias aplicadas (ClMENlCS 2002), Abril de 2002, Caracas, Venezuela.

12. “Evolving from genetic algorithms to flexible evolution agents”, G. Winter, B. Galván, S. Alonso, B. Gonzalez, Late-Breaking papers of the genetic and evolutionary computation conference (GECCO - 2002), Julio de 2002, New York, EE.UU., pp. 466-473.

1 3. “Optimización multiobjetivo en sistemas de seguridad: una comparativa entre NSGA-I1 y SPEAZ”, D. Greiner, G. Winter, B. Galván, IV Jornadas en fiabilidad y confiabilidad, Septiembre de 2002, Las Palmas de G.C., España.

14. “A comparative analysis of controlled elitism in the nsga-ii applied to frame optimization”, D. Greiner, G. Winter, J . M. Emperador, B. Galván, lUTAM (International union of theorical and applied mechanics) / lSSM0 (International society of structural and multidisciplinary optimisation) Symposium on evolutionary methods in mechanics, Septiembre de 2002, Cracovia, Polonia.

15”New trends. in safety systems design optimization”, B. Galván, J. L. Doreste, S. Alonso, D. Marín, E. Benítez, Fifth world congress on computational mechanics 2002 (WCCM V), Julio de 2002, Vienna, Austria.

16. “Flexible evolution, in evolutionary methods for design, optimization and control”, G. Winter, B. Galvan, P. Cuesta, S.. Alonso, EUROGEN 2007 conference, Septiembre de 2002, Athens, Greece, pp. 89-94.

104

Page 116: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

17. "Comparando búsqueda tabú y algoritmos geneticos en la optimización del diserio de sistemas de seguridad/protección", J. L. Doreste, IV Jornadas de fiabilidad y confiabilidaá, Septiembre de 2002, Las Palmas de G. C.

18. "Parallel evolutionary computation for solving complex cfd optimization problems", G. Winter, J. Periaux, D. Greiner, lnternafional conference parallel compufafionalFluid dynamics (PCFD), Mayo de 2002, Kansai City, Japan.

19. "Localización óptima de vertidos de aguas residuales usando un algoritmo de evolución flexible", B. Gonzalez, B. Galván, G. Winter, V Congreso de métodos numéricos en ingeniería, Junio de 2002, Madrid.

Page 117: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimiracion Genética del problema de asignación de los salones de clases del tipo NP-Completo

ANEXO E

Caracteristicas de los trabajos mas significativos recientemente

presentados.

1 .- “Optimización de la asignación de salón-horario-grupo mediante

recocido simulado” [4]:

Tamaño: Datos: No son reales. Validación: Comparación: No menciona. Dependen del Orden de entrada: Si. Restricciones: No menciona cuantas. Calidad de solución: Regular. Soluciones Solo una.

Muy grande, 250 grupos y 182 salones

Relativa, muchos o pocos empalmes.

2.- “Metaheoristics for high-school timetabling” [24]:

Tamaño: Datos: Si son reales. Validación: No menciona. Comparación: Con la solución manual. Dependen del Orden de entrada: No menciona. Restricciones: No menciona cuantas. Calidad de solución: No menciona. Soluciones 3.

pequeño, caso de una High-school

3.- “Un sistema experto basado en reglas para la automatización de la

elaboración de horarios para un conjunto de restricciones particulares”

[21]:

Tamaño: Mediano, 2 carreras. Datos: Si son reales. Validación: Por el experto. Comparación: Por el experto. Dependen del Orden de entrada: Si. Restricciones: No menciona cuantas. Calidad de solución: No menciona. Soluciones No menciona cuantas.

Page 118: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NP-Completo

4.- “Modelo de asignación de carga académica usando algoritmos

genéticos” 1221:

Tamaño: Datos: si son reales. Validación: Comparación: Con la solución manual. Dependen del Orden de entrada: No menciona. Restricciones: 3. Calidad de solución: relativamente buena. Soluciones No menciona cuantas.

Pequeño, 1 carrera de 4 semestres.

Bajo criterio, número de empalmes.

5.- “A multi-stage evolutionary algorithm for the timetabling problem” [23]:

Tamaño: Grande, 500 clases. Datos: No son reales. Validación: No menciona. Comparación: No menciona. Dependen del Orden de entrada: Si. Restricciones: 3. Calidad de solución: Regular. Soluciones No menciona cuantas.

6.- “El problema de la programación de horarios con coloreo de grafos”

[28]:

Tamaño: Grande, 2 Carreras. Datos: Experimentales. Validación: Por el experto. Comparación: Por el experto. Dependen del Orden de entrada: No. Restricciones: 8. Calidad de solución: Soluciones factibles. Soluciones No menciona cuantas.

Page 119: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

7.- El trabajo desarrollado en esta tesis:

Tamaño: Grande, 3 Carreras. Datos: Reales Validación:

Comparación: Con la solución manual. Dependen del Orden de entrada: No. Restricciones: 1 o. Calidad de solución: Soluciones satisfactorias. Soluciones

Mediante la métrica establecida para la función de aptitud.

Las 10 Mejores soluciones obtenidas.

Page 120: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

Referencias Bibliográficas:

Carter, Michael W., Tovey, Craig A., "When is the classroom assignment problem hard?", Operation research; Vol. 40; Supp. No 1, pp 28-39;January-february 1992.

Torres Jiménez, José, Perez González, Joel, "Modeling of the classroom assignment problem"; Proceeding of the 2nd international conference on the practice and theory of automated timetabling, 1997, University of Toronto, Canada, ISBN 0-7727-6703-3

Garey, M. R., Johnson, D. S., "Computers and Intractability: A Guide to the theory of NP-Completeness", W. H. Freeman , New York, 1979.

Martinez Alfaro, Horacio, "Optimización de la asignación de salón- horario-grupo mediante recocido simulado", XXVl Reunión de investigación y desarrollo tecnológico del sistema ITESM, Monterrey, N. L., 1996, México.

Bauer, Richard J. Jr., "Genetic algorithms and investment strategies ", Ed. John Wiley & sons, 1994, ITESM, México.

Cantú Aguillen, Carlos, "Solución a sistemas de ecuaciones no lineales aplicando algoritmos geneticos" Tesis: Maestría en ciencias especialidad en ciencias computacionales; ITESM, Monterrey, N. L., México, 1992.

Holland, J. H., "Adaptation in natural and artificial system", Ann abort, MI: The University of Michigan, 1975.

S. Chattopadhyay, S., Pal Chaudhuri, "Synthesis of highly testable fixed-polarity and-xor canonicals nefworks, a genetic algorithm based approach", IEEE Transaction on computers, Vol. 45,No. 4, 1996.

OR-Library, http://mscmqa.ms.ic.ac.uk/ieb/orlib/tableinfo.htmI.

Grant, Keith, "An introduction to genetic algorithms", CI C++ User Journal Algorithms, Vol. 13, Num. 3, March 1995.

Goldberg, David E., "Genetics algorithms in search, optimization & machine learning", Addison Wesley Publishing Company, Inc. 1989.

Programas de Horarios Horw.exe, Mayo 2003, España, http://clientes. vianetworks.eslpersona1 /horarios/

1 o9

Page 121: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

[13] Rios Flores, Alma, "Sistema basado en algoritmos genéticos para encontrar reglas de clasificación" Tesis: Maestría en ciencias especialidad en ciencias computacionales; ITESM, México, 1995.

Coello Coello, Carlos, Santos Hdz., Filiberto, "Diseño optimo de vigas de concreto reforzado mediante algoritmos genéticos", 2'. Congreso internacional de investigación en ciencias computacionales, CllCC'95, Instituto tecnológico de Zacatepec, 1995, México.

[14]

[15] Ferland, J. A., Roy, S., "Timetabling problem for university assignment of activities to resources", Comput. Res., Vol. 12, pp. 207- 218,1985.

[16] Arkin, E. M., Silverberg, E. B., "Scheduling jobs with fixed start and end times ", Discret appl. Math., Vol. 18, pp. 1-8, 1987.

Paechter, B., "Optimising a presentation timetable using evolutionary algorithms", AISB, pp. 264-276, 1994.

De la Herrán Gascón, Manuel, "Computación Evolutiva", Red cientifica: Ciencia Tecnología y Pensamiento, 1999, http://www.redcientifica.com/ gaia/ce/ce c.htm.

Moscato P., "On evolution, search, optimization, genetic algorithms and art martial: towards memetic algorithms", Caltech concurrent computation program, C3Preport 826, 1989.

March, Salvatore T., Rho, Sangkyu, "Allocation data and operations to nodes in distributed database design", IEEE Transaction on knowledge and data engineering, Vol. 7, No. 2, 1995, ISBN 10414347;

Gervás, Pablo, San Miguel, Beatriz, "Un sistema experto basado en reglas para la automatización de la elaboración de horarios para un conjunto de restricciones particulares", Departamento de inteligencia artificial, Universidad Europea de Madrid, http://calísto.sip.ucm.es/ people/pablo/papers/qervasCAEPlA/999.pdf, 1999, España.

López Takeyas, Bruno, Johnston Barrientos, Jaime David, "Modelo de asignación de carga académica usando algoritmos genéticos", Instituto Tecnológico de Nuevo Laredo, http://www.itnuevolaredo.edu. mx/takevas/, 2000, México.

[17]

[I81

[I 91

[20]

[21]

[22]

Page 122: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

Burke, E. K., Newall, J. P., “A multi-stage evolutionary algorithm for the timetable problem”, Automated scheduling and planning group, Department of computer science, University of Nottingham, http://www. asap.cs.nott.ac.uk/publications/pdf/ipn iee ec 99.pdf, 2000, Nottingham.

Colorni A., M. Dorigo, V. Maniezzo (1998)., “Mefaheuristics for high- school timetabling”, Computational optimization and applications, 9, 3, 277-298. http://iridia.ulb.ac.be/-mdoriqo/publications.html#Theses. ftp://iridia.ulb.ac.be/pub/mdoriqo/iournals/lJ. 19-COA97.pdf.

Burke, E. K., Smith, A. J., “Hybrid evolutionary techniques for the maintenance scheduling problem”, the IEEE Transactions on power systems, Vol. 15 Number 1, February.2000, pp. 122-128, ISSN 0885- 8950. http://www.asap.cs.nott.ac.uk/publications/iour-papers.shtml#2002. http://www.asap.cs.nott.ac.uk/publications/pdf/ais99 ieee.pdf.

Moscato P., Norman, M. G., “A memetic approach for the traveling salesmen problem , implementation o f computational ecology on message passing system”, Parallel computing and transputer applications, pp. 187-194, 1991, IOS press (Amsterdam).

Pacheco, Joaquín A,, Alegre, Jesús F., Delgado, Cristina R., “Uso de búsqueda tabu y algoritmos memeticos en e l diseño de calendarios de transporte de componentes de automoviles”, Universidad de Burgos, Depto. de economía aplicada, htt~://l50.214.55.1OO/ase~urna/ laspalmas2001 /laspalmas/lnvo09.pdf

Alonso P., Federico, Ramírez G., L. A., “El problema de la programación de horarios con coloreo de grafos”, Instituto politécnico nacional, 3er. congreso estudiantil de computación, México, D.F., 2002, http://iupiter.cic.ipn.rnxlcore/.

Maneiro M, Ninoska, “Algoritmos genéticos aplicados a l problema cuadrático de asignación de facilidades (QAP)”, Departamento de investigación operativa, Escuela de ingeniería industrial, Universidad de Caraboto, Valencia, Venezuela, 2002, http://www.unrc.edu.ar/hoias/ grupos/ trabaios.htm.

Michalewics, Zbigniew, “Genetic algorithm + data structure = evolution program”, Springer-Verlag Berlin Heidelberg, New York, 1992.

111

Page 123: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genetica del problema de asignación de los salones de clases del tipo NP-Completo

Moitre, D.. Hernández, José L., Aromataris, Luis, Rodriguez Gustavo, “Aplicación de algoritmos genéticos coordinación hidrotermica de corto plazo”, Universidad Nacional de Rio Cuarto, Córdoba - Argentina, 2002, http://www.unrc.edu.ar/hoias/qrupos/temuco.doc, http://www.unrc. edu.ar/hoias/qrupos/trabaios. htm.

Fraustro S., Juan, “Complejidad Computacional”, Instituto Tecnológico de Monterrey Campus Morelos, http://w3.mor.itesm.mx/-~frausto/ alqoritmosl material/compleiidadl .O.ppt.

Ferrer G., Isaac, Ferrer R., Jerónimo, “HORW” versión 7.0, Sevilla, España, 2002. http://www.interbook.neüpersonaI/horarios/lnicioll .htm.

Osrnan, I. H., Kelly, J. P. “Meta-heuristic: theory and applications”, 39 Kluwer Academic Publisher, 1996.

Lenstra J. K., Rinnoo y Kan A.H.G., “The traveling salesman problem: a guided tour of combinatorial optimization”, A Wiley-Interscience Publication, 1985.

Mix Barringion, D. A,, lmmerman N., “Computational complexity theory”, Department of computer science, University of Massachussets, EUA, 2003, http://www.cs.urnass.edu/-immerman/complexity theory. htrnl.

Pacheco Bonrostro, J. A,, “Concentración heurística: descripción y comparación con otros meta heurísticos”, Facultad de ciencias económicas y empresariales, Universidad de Burgos, España, http://www.uv.es/asepuma/iornadas/santiaqo/38.PDF, http://www.uv.es/ asepuma.

Holstein, Diana, Moscato, P., “Una meta heurística co-evolutiva para el problema del agente de comercio”, http://www.densis.fee.unicarnp.br/- moscato/papers/HolsteinThesis. pdf.

Vera, Diana F., “Computacion evolutiva: algoritmos geneticos”, Universidad Nacional de Colombia, 2002, http://www.densis.fee.unicarnp. br/-rnoscato/paDers/HoIsteinThesis. pdf

Mar, Carlos A,, López J., Amparo, “Aplicación de los algoritmos genéticos a la búsqueda de parárnetros en modelos de calidad de aguas superficiales”, Instituto tecnológico del agua (O.P.V.I.) Mecánica de fluidos, VI Congreso nacional del medio ambiente. Madrid, España, 2002, htt~://www.conama.es/viconarna/ct/pdfs/ResurnenCT20.pdf, http:// www.conarna.es/viconama/cü.

Page 124: OPTIMIZACIÓN GENÉTICA DEL PROBLEMA DE ASIGNACIÓN … Joel Perez Gonzalez 2004.pdfGENÉTICA DEL PROBLEMA DE ASIGNACI~N DE LOS SALONES DE CLASES DEL Atentamente ... La clase de problemas

Optimización Genética del problema de asignación de los salones de clases del tipo NPCompleto

Gutiérrez LL., José M., “Aplicación de algoritmos genéticos y técnicas evolutivas en la compresión fractal de imágenes digitales mediante IFS”, Universidad de Cantabria - España, 2002, http://www.uarq. unpa. edu.ar/ proy invectlproyectos/nro29-aO7O.htmI

Hernández, José L., “Algoritmos genéticos y su aplicación en opfimización de redes”, 1998, Universidad nacional de la Plata, http://~ournal.info.unlp.edu.ar/postqrado/tesic/GENETICOS-APLICACION- REDES.doc.

Instituto de sistemas inteligentes y aplicaciones numéricas en Ingeniería (IUSIANI), “Publicaciones científicas”, Universidad de Las Palmas de Gran Canaria, 2003, http://ceani.ulpqc.es/publicaciones/index.php? clase=l.

Pozos Nava, Raquel, ” Algoritmos genéticos” , Facultad de informatica, Universidad de Sevilla, 1998, liti~://www.cs.us.es/-delia/sia/htm198-99/pap- alumiios/webl l/indice.htrnl

0 4 - 0 2 7 0 CENIMT

1gNTRO DE INFORMACDN

113