Está en la página 1de 65

Modelo de un Algoritmo Genetico con Seleccion

Discriminatoria de Individuos bajo un Esquema de


Ponderaci on de Probabilidades de Mutacion
Victor Manuel Arroyo Apaza
Orientador: Dr. Yvan Jes us T upac Valdivia
Tesis profesional presentada al Programa Profesional de
Ingeniera Informatica como parte de los requisitos para
obtener el Ttulo Profesional de Ingeniero Informatico.
UCSP - Universidad Cat olica San Pablo
Diciembre de 2013
A Dios, por todo lo que me ha dado,
a mi madre por el apoyo incondicional
brindado todos estos a nos, a mi familia
y a todos los profesores por sus ense-
nanzas.
Agradecimientos
En primer lugar deseo agradecer a Dios por haberme guiado a lo largo de estos cinco a nos
de estudio.
Agradezco a mi madre por el apoyo y esfuerzo brindado para forjarme como un profesional.
Agradezco a la familia Valencia Fern andez-D avila por todos estos a nos de apoyo incondi-
cional.
Agradezco a la universidad, mi alma matter, por haberme cobijado y brindado la formaci on
que ahora me permitira ayudar a construir una mejor sociedad.
Agradezco de forma muy especial a mi asesor Dr. Yv an T upac por haberme guiado en la
elaboraci on de esta tesis.
Deseo agradecer de forma especial a mis docentes: Ernesto Cuadros, Dennis Barrios, Alex
Cuadros, Luis Diaz Basurco, Juan Carlos Gutierrez porque fueron ejemplos que deseo
seguir en mi vida profesional.
Deseo agradecer al personal administrativo de la universidad: Gabriela Valencia y Gonzalo
Villegas. Muchas gracias por la atenci on brindada y porque siempre estuvieron dispuestos
a ayudarnos.
Abreviaturas
AG Algoritmo Genetico
AGs Algoritmos Geneticos
ES Estrategias de Seleccion
SDI Seleccion Discriminatoria de Individuos
ST Seleccion por Torneo
SR Seleccion de Ruleta
SS Seleccion Sexual
SBR Seleccion Basada en Ranking
MPs Matriz de Preferencias
EPPM Esquema de Ponderacion de Probabilidades de Mutacion
AMSG Arquitectura Master-Slave Global
4
Resumen
Un Algoritmo Genetico (AG) posee varios operadores geneticos que pue-
den ser modicados para mejorar su rendimiento. Estos operadores incluyen a
la selecci on, cruzamiento y mutacion. La selecci on es una de las operaciones
m as importantes en el AG. Este trabajo de investigacion presenta un modelo
de AG que implementa un operador de seleccion al que se le denominar a Selec-
ci on Discriminatoria de Individuos (SDI), que se inspira en la discriminacion
de clases que existe en la sociedad, es decir los mejores se reproducen con los
mejores y los peores con los peores.. La estructura de este operador toma como
base el operador de Seleccion Sexual (SS) ya existente. El modelo evolutivo
incluye un Esquema de Ponderacion de Probabilidades de Mutacion (EPPM)
para la asignaci on de probabilidades de mutacion en la poblaci on. Para ve-
ricar la calidad de la evolucion de los operadores propuestos se realizaron
dos casos de uso: solucionar el problema de mejora de calidad en horarios de
trabajo y cuatro funciones Benchmarking. Los experimentos realizados dieron
resultados que muestran una caracterstica exploratoria para el operador de
SDI, mejorando el tiempo de convergencia conforme el tama no de la poblacion
se incrementa.
Abstract
A Genetic Algorithm (GA) has several operators which may be modied
to improve its performance. These operators include selection, crossover and
mutation. Selection is one of the most important operations in the GA. This
research presents a model of GA that implements a selection operator called
Discriminatory Selection of Individual (DSI), which is inspired by discrimina-
tion between classes that exists in society, the best individuals reproduce with
the best and the worst with the worst. The structure of this operator builds
on an existing operator called Sexual Selection (SS). The evolutionary model
includes a Weighted Scheme of Mutation Rates (WSMR) for assigning proba-
bilities of mutation in the population. To verify the quality of the evolution
of the proposed operators two use cases were performed: solve the problem of
quality improvement in working schedules and four Benchmarking functions.
The experiments gave results showing a exploratory feature for DSI operator,
improving convergence time as the size of the population increases.

Indice general
1. Introduccion 14
1.1. Motivacion y Contexto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.2. Estado del Arte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3. Planteamiento del Problema . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.4. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.4.1. Objetivos Especcos . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.5. Organizaci on de la Tesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2. Conceptos Previos 19
2.1. Algoritmo Genetico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.1.1. Codicacion de Problemas . . . . . . . . . . . . . . . . . . . . . . . 21
2.1.2. Funci on de Evaluaci on . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2. Operadores Geneticos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2.1. Operadores de Cruzamiento . . . . . . . . . . . . . . . . . . . . . . 22
2.2.2. Operadores de Mutaci on . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2.3. Operadores de Selecci on . . . . . . . . . . . . . . . . . . . . . . . . 25
2.3. Consideraciones Finales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3. Propuesta 32
3.1. Esquema de Ponderaci on de Probabilidades de Mutaci on . . . . . . . . . . 33
3.2. Selecci on Descriminatoria de Individuos . . . . . . . . . . . . . . . . . . . . 35
7

INDICE GENERAL
4. Casos de Estudio, Pruebas y Resultados 38
4.1. Caso de Estudio 1: Funciones Benchmarking . . . . . . . . . . . . . . . . . 38
4.1.1. Denici on del Individuo . . . . . . . . . . . . . . . . . . . . . . . . 39
4.1.2. Operador de Cruzamiento . . . . . . . . . . . . . . . . . . . . . . . 39
4.1.3. Operador de Mutacion . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.1.4. Parametros del Modelo . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.1.5. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.2. Caso de Estudio 2: Mejora de Calidad en Horarios de Empleados . . . . . . 49
4.2.1. Denici on de Individuo . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.2.2. Operador de Cruzamiento . . . . . . . . . . . . . . . . . . . . . . . 52
4.2.3. Operador de Mutacion . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.2.4. Matriz de Preferencias . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.2.5. Funci on de Evaluaci on . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.2.6. Parametros del Modelo . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.2.7. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5. Conclusiones y Trabajos Futuros 61
5.1. Limitaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5.2. Trabajos futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Bibliografa 64
Ingeniera Inform atica - UCSP 8

Indice de cuadros
3.1. Ejemplo del calculo de las probabilidades de mutaci on por clase donde
n : 16 y PMI : 0,1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.1. Par ametros Caso 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.2. Comparativo del n umero de generaciones que los operadores de Selecci on
necesitaron para converger en la funci on Schwegel. . . . . . . . . . . . . . . 49
4.3. Par ametros Caso 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
9

Indice de guras
1.1. Ciclo basico de un Algoritmo Genetico . . . . . . . . . . . . . . . . . . . . 14
2.1. Esquema basico de un Algoritmo Genetico. . . . . . . . . . . . . . . . . . . 20
2.2. Individuo Genetico Binario. . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3. Cruce de 1 punto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.4. Cruce de 2 puntos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.5. Cruce Uniforme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.6. Reemplazo Aleatorio. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.7. Mutaci on para Representaci on de Orden. . . . . . . . . . . . . . . . . . . . 25
2.8. Ejemplo de la Selecci on de Ruleta. . . . . . . . . . . . . . . . . . . . . . . 26
2.9. Ejemplo de la Selecci on por Torneo. . . . . . . . . . . . . . . . . . . . . . . 27
2.10. Ejemplo de la probabilidad de eleccion de acuerdo al tness. . . . . . . . . 28
2.11. Ejemplo de la probabilidad de eleccion de acuerdo al ranking. . . . . . . . 28
2.12. Separacion de la poblaci on en hembras y machos. . . . . . . . . . . . . . . 30
2.13. Selecci on de hembra no emparejada y seleccion de un macho. . . . . . . . . 30
2.14. Proceso es repetido hasta que todas las hembras hayan sido apareadas. . . 30
3.1. Esquema de un Algoritmo Genetico con el operador propuesto. . . . . . . . 32
3.2. Esquema de los pasos del operador propuesto. . . . . . . . . . . . . . . . . 33
3.3. Separaci on de la poblaci on en dos clases. . . . . . . . . . . . . . . . . . . . 35
3.4. Denir la probabilidad de mutaci on para cada clase. . . . . . . . . . . . . . 36
10

INDICE DE FIGURAS
3.5. Diferenciacion de machos y hembras en cada clase. . . . . . . . . . . . . . 36
3.6. Emparejamiento y producci on de descendencia. . . . . . . . . . . . . . . . 36
4.1. Ejemplo basico del Individuo. . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.2. Cruce Uniforme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.3. Reemplazo Aleatorio. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.4. Comparacion entre Operadores de Selecci on con una Poblaci on de 20 Indi-
viduos al evaluar la Funci on Step. . . . . . . . . . . . . . . . . . . . . . . . 41
4.5. Comparacion entre Operadores de Selecci on con una Poblacion de 100 In-
dividuos al evaluar la Funci on Step. . . . . . . . . . . . . . . . . . . . . . . 42
4.6. Comparacion entre Operadores de Selecci on con una Poblacion de 200 In-
dividuos al evaluar la Funci on Step. . . . . . . . . . . . . . . . . . . . . . . 42
4.7. Comparacion entre Operadores de Selecci on con una Poblacion de 400 In-
dividuos al evaluar la Funci on Step. . . . . . . . . . . . . . . . . . . . . . . 43
4.8. Comparacion entre Operadores de Selecci on con una Poblaci on de 20 Indi-
viduos al evaluar la Funci on Sphere. . . . . . . . . . . . . . . . . . . . . . . 43
4.9. Comparacion entre Operadores de Selecci on con una Poblacion de 100 In-
dividuos al evaluar la Funci on Sphere. . . . . . . . . . . . . . . . . . . . . . 44
4.10. Comparaci on entre Operadores de Selecci on con una Poblaci on de 200 In-
dividuos al evaluar la Funci on Sphere. . . . . . . . . . . . . . . . . . . . . . 44
4.11. Comparaci on entre Operadores de Selecci on con una Poblaci on de 400 In-
dividuos al evaluar la Funci on Sphere. . . . . . . . . . . . . . . . . . . . . . 45
4.12. Comparaci on entre Operadores de Selecci on con una Poblacion de 20 Indi-
viduos al evaluar la Funci on Rosenbrock. . . . . . . . . . . . . . . . . . . . 45
4.13. Comparaci on entre Operadores de Selecci on con una Poblaci on de 100 In-
dividuos al evaluar la Funci on Rosenbrock. . . . . . . . . . . . . . . . . . . 46
4.14. Comparaci on entre Operadores de Selecci on con una Poblaci on de 200 In-
dividuos al evaluar la Funci on Rosenbrock. . . . . . . . . . . . . . . . . . . 46
4.15. Comparaci on entre Operadores de Selecci on con una Poblaci on de 400 In-
dividuos al evaluar la Funci on Rosenbrock. . . . . . . . . . . . . . . . . . . 47
4.16. Comparaci on entre Operadores de Selecci on con una Poblacion de 20 Indi-
viduos al evaluar la Funci on Schwefel. . . . . . . . . . . . . . . . . . . . . . 47
Ingeniera Inform atica - UCSP 11

INDICE DE FIGURAS
4.17. Comparaci on entre Operadores de Selecci on con una Poblaci on de 100 In-
dividuos al evaluar la Funci on Schwefel. . . . . . . . . . . . . . . . . . . . . 48
4.18. Comparaci on entre Operadores de Selecci on con una Poblaci on de 200 In-
dividuos al evaluar la Funci on Schwefel. . . . . . . . . . . . . . . . . . . . . 48
4.19. Comparaci on entre Operadores de Selecci on con una Poblaci on de 400 In-
dividuos al evaluar la Funci on Schwefel. . . . . . . . . . . . . . . . . . . . . 49
4.20. Ejemplo tpico y b asico de un horario de empleados. . . . . . . . . . . . . . 50
4.21. Ejemplo b asico de un Horario Est atico en 2 periodos de tiempo. . . . . . . 50
4.22. Ejemplo b asico de un Horario Din amico en 2 periodos de tiempo donde los
casilleros sombreados indican la variacion entre periodo 1 y periodo 2. . . . 51
4.23. Esquema b asico del Individuo. . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.24. Selecci on de dos columnas aleatoriamente. . . . . . . . . . . . . . . . . . . 53
4.25. Exchange selected columns. . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.26. Selecci on mitad menos signicativa. . . . . . . . . . . . . . . . . . . . . . . 54
4.27. Mutaci on de turnos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.28. Ejemplo b asico de una Matriz de Preferencias. . . . . . . . . . . . . . . . . 55
4.29. Ejemplo b asico de un Horario y su respectiva Matriz de Preferencias. . . . 56
4.30. Valores obtenidos despues de multiplicar posici on por posicion. . . . . . . . 56
4.31. Comparaci on entre Operadores de Selecci on. . . . . . . . . . . . . . . . . . 57
4.32. Comparaci on entre Probabilidades de Cruzamiento y Mutaci on. . . . . . . 58
4.33. Comparaci on entre diferente n umero de Indidivuos en una Poblacion . . . 58
4.34. Comparaci on entre Operadores de Cruzamiento y Mutacion . . . . . . . . 59
4.35. Comparaci on entre diferentes tama nos de clase . . . . . . . . . . . . . . . . 60
4.36. Optimizacion de la Calidad de un Horario. . . . . . . . . . . . . . . . . . . 60
Ingeniera Inform atica - UCSP 12
Lista de algoritmos
1. Algoritmo Genetico Basico . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2. Pseudoc odigo Seleccion de Ruleta . . . . . . . . . . . . . . . . . . . . . . . 26
3. Pseudoc odigo Seleccion por Torneo . . . . . . . . . . . . . . . . . . . . . . 27
4. Pseudoc odigo Seleccion Basada en Ranking . . . . . . . . . . . . . . . . . . 29
5. Pseudoc odigo Seleccion Sexual . . . . . . . . . . . . . . . . . . . . . . . . . 31
6. Pseudoc odigo Seleccion Descriminatoria de Individuos . . . . . . . . . . . . 37
13
Captulo 1
Introducci on
Los Algoritmos Geneticos (AGs) son metodos de optimizacion [Goldberg, 1989] ba-
sados en el paradigma Neo-Darwiniano [Tuttle, 1989], como la vida biol ogica en nuestro
mundo que envuelve los mecanismos de reproducci on, mutacion, competici on y seleccion
natural. En la naturaleza los individuos de una poblacion compiten entre s en la b usque-
da de recursos tales como comida, agua y refugio. Incluso los miembros de una misma
especie compiten a menudo en la b usqueda de un compa nero para producir descendencia.
Aquellos individuos que tienen mas exito en sobrevivir y en atraer compa neros tienen
mayor probabilidad de generar un gran n umero de descendientes. Por el contrario, indivi-
duos poco dotados produciran un menor n umero de descendientes. Esto signica que los
genes de los individuos mejor adaptados se propagar an en sucesivas generaciones hacia un
n umero de individuos creciente. La combinacion de buenas caractersticas provenientes de
diferentes ancestros, puede a veces producir descendientes superindividuos, cuya adapta-
ci on es mucho mayor que la de cualquiera de sus ancestros. De esta manera, las especies
evolucionan logrando unas caractersticas cada vez mejor adaptadas al entorno en el que
viven. La Figura 1.1 muestra el ciclo basico evolucionario de un Algoritmo Genetico (AG)
con sus respectivos operadores.
Poblacin Inicial
Crear una poblacion
inicial de individuos
aleatorios
Evaluacin
Calcular las Iunciones
objetivo de los
candidatos
Asignar Aptitud
A partir de los valores de
de Iuncion objetivo de
los candidatos
Reproduccin
Crear nuevos individuos
usando mutacion y
recombinacion
Seleccin
Escoger los mejores
individuos para su
reproduccion
Figura 1.1: Ciclo b asico de un Algoritmo Genetico
El poder de los AGs proviene del hecho de que se trata de una tecnica robusta, y
pueden tratar con exito una gran variedad de problemas provenientes de diferentes areas,
14
CAP

ITULO 1. Introducci on
incluyendo aquellos en los que otros metodos encuentran dicultades. Si bien no se garan-
tiza que el AG encuentre la solucion optima del problema al nal de las iteraciones, existe
evidencia emprica de que se encuentran soluciones de un nivel aceptable, en un tiempo
competitivo con el resto de algoritmos de optimizaci on combinatoria y adem as en la lite-
ratura se encuentra un analisis matematico que muestra la convergencia al optimo global
para modelos con codicaciones binarias cuando se emplea elitismo [Rudolph, 1994].
Los AGs estan compuestos generalmente de dos procesos. El primer proceso es la selec-
ci on de individuos para la produccion de la siguiente generaci on y el segundo proceso es
la manipulacion de los individuos seleccionados para conformar la siguiente generacion
mediante las tecnicas de cruzamiento y mutaci on. El mecanismo de seleccion determina
cu ales son los individuos seleccionados para la reproducci on. El principio m as importante
de la estrategia de selecci on es mientras mejor sea el individuo, mayor es su probabilidad
de ser padre [Razali and Geraghty, 2011].
El mecanismo de seleccion reduce el area de b usqueda dentro de la poblaci on des-
cartando soluciones pobres, el mecanismo de selecci on debe dar la oportunidad a todos
los individuos ya sean buenos o malos de que puedan reproducirse. Es importante en-
contrar un equilibrio donde las soluciones pobres deben tener la oportunidad de ir a la
siguiente generacion, y las buenas soluciones pasen a la siguiente generaci on con m as
frecuencia que las soluciones pobres. El mecanismo de selecci on debe ser elegido de tal
manera que la convergencia a la soluci on optima global este garantizada. Durante el desa-
rrollo de los AGs, muchas estrategias de selecci on han sido propuestas y utilizadas tales
como: Seleccion de Ruleta (SR), Seleccion por Torneo (ST) [Michalewicz, 1996], Selecci on
Basada en Ranking (SBR) o algunas selecciones aplicadas en estrategias evolucionarias
[Geyer et al., 1999]. Recientemente, la Seleccion Sexual (SS) ha sido propuesta para pro-
veer una clara separacion entre exploraci on y explotacion sin la inconveniencia del ajuste
de parametros [Goh et al., 2003].
1.1. Motivacion y Contexto
En lo que se respecta a los metodos de seleccion, en la literatura se compara los me-
todos de seleccion con mejor rendimiento [Razali and Geraghty, 2011]. Se determina que
el operador de ST obtiene un mejor rendimiento en cuanto a la calidad de la solucion en
comparaci on con la SR y la SBR. Adicionalmente se concluye que la ST es superior a la SR
y SBR en problemas de menor complejidad ya que se vuelve susceptible a la convergencia
prematura conforme la complejidad del problema se incrementa. Las comparaciones entre
los operadores de selecci on que se han realizado ayudan a comprender la relacion del t-
ness y la convergencia. Se concluye que la ST supera a la SBR en terminos de mantener la
presi on constante hacia la convergencia. En las investigaciones sobre los AGs para encon-
trar soluciones de problemas de distintas complejidades y de distintas areas, generalmente
se proponen operadores geneticos de cruzamiento y mutaci on, ademas de la funcion de
evaluaci on. Debido a que estos operadores se centran en explorar el espacio de b usqueda,
nace la necesidad de denir un nuevo operador de selecci on que ayude a explotar mejor el
espacio de b usqueda, es decir, de utilizar todas las soluciones independientemente de su
Ingeniera Inform atica - UCSP 15
1.2. Estado del Arte
calidad. Debido a que el rendimiento de un AG es evaluada en terminos de convergencia
y el n umero de generaciones necesarias para hallar el optimo global, este nuevo opera-
dor debe tener una convergencia uniforme, descartando la convergencia prematura as la
rapidez en alcanzar el optimo global.
1.2. Estado del Arte
Varias investigaciones han estudiado el rendimiento de los AGs usando diferentes
estrategias de selecci on. El rendimiento de los AGs es usualmente evaluada en terminos
de convergencia y n umero de generaciones hasta alcanzar el optimo global.
En el trabajo de investigaci on de [Jadaan et al., 2008] se comparan los resutados
de los operadores de SR y SBR usando varias funciones de optimizaci on matem atica y
determin o que la SBR super o a la SR en cuanto al menor uso de generaciones para hallar
la solucion optima. Observ o que la SBR es m as estable y mas rapida que la SR.
Por otro lado, [Zhong et al., 2005] compara la SR con la ST, con siete funciones de
prueba y concluy o que el algoritmo con la ST es m as eciente en la convergencia que la
SR.
En el trabajo de investigaci on de [Goh et al., 2003] se propone un operador de se-
leccion denominado SS, el cual se inspira en el concepto de selecci on sexual propuesto por
Darwin, y compara este operador con diferentes metodos de selecci on. Se concluye con
que el operador de seleccion propuesto tiene un rendimiento ya sea igual o mejor que la
SR. El nuevo esquema tambien tuvo un mejor rendimiento en comparacion con la ST.
En el trabajo de investigacion de [Cheng et al., 2012] se propone un operador de
Seleccion Bisexual, en donde se propone dividir la poblaci on de individuos en hembras
y machos. Esta propuesta tiende a modicar las preferencias de emparejamiento de los
machos y hembras al punto de que puedan elegir reproducirse con alguien de su mismo
genero. Esto debido a que a veces en la poblaci on generada no habr a un n umero equitativo
de machos y hembras.
Finalmente, en el trabajo de investigaci on de [Razali and Geraghty, 2011] se presen-
ta la comparacion del rendimiento del AG al resolver el problema del vendedor viajero
utilizando diferentes mecanismos de seleccion. Se concluye en el trabajo que la ST ob-
tiene un mejor rendimiento en cuanto a la calidad de la solucion en comparaci on con la
SR y la SBR. Se determina tambien que la ST es superior a la SR y SBR en problemas
peque nos porque se vuelve susceptible a la convergencia prematura conforme el tama no
del problema se incrementa.
Los trabajos de investigaci on mencionados se han realizado para comprender la
relacion del tness y la convergencia. Se concluy o que la ST supera a la SBR en terminos
de mantener la presi on constante hacia la convergencia. El operador propuesto se basa en
la estructura del operador de SS [Goh et al., 2003]. Los operadores de seleccion a utilizar
Ingeniera Inform atica - UCSP 16
CAP

ITULO 1. Introducci on
para comparar la propuesta ser an los usados en los distintos trabajos de investigacion, los
cuales son: ST, SR, SBR y la SS.
1.3. Planteamiento del Problema
Generalmente, los operadores de cruzamiento y la mutaci on exploran el espacio de
b usqueda, mientras que la selecci on reduce el area de b usqueda dentro de la poblaci on
descartando soluciones pobres. Sin embargo, los peores individuos no deben ser descarta-
dos y deben tener algunas posibilidades de ser seleccionados, ya que pueden dar lugar a
material genetico util. Un par ametro crtico en el AG es la presi on de selecci on, que es el
proceso de selecci on que selecciona a los individuos mas aptos para la reproduccion. Si la
presi on de selecci on es demasiada baja, entonces la tasa de convergencia hacia la soluci on
optima ser a demasiada lenta. Si la presi on de seleccion es demasiada alta, es probable
que el AG se quede atrapado en un optimo local debido a la falta de diversidad en la
poblaci on [Oladele and Sadiku, 2013]. Una buena tecnica de b usqueda debe encontrar un
buen equilibrio entre la exploraci on y la explotaci on con el n de encontrar un optimo
global [Beasley et al., 1993]. Por lo tanto, es importante encontrar un equilibrio entre la
exploraci on (es decir, soluciones pobres deben tener la oportunidad de ir a la siguiente
generacion) y explotaci on (es decir, las buenas soluciones pasan a la siguiente generaci on
con mas frecuencia que las soluciones pobres) dentro del mecanismo de la selecci on. Cada
estrategia de selecci on utilizada en el proceso de un AG afectar a signicativamente el
rendimiento del algoritmo de una forma diferente. El mecanismo de selecci on debe ser
elegido de tal manera que la convergencia a la solucion optima global este garantizada.
Adem as el proceso de seleccion debido a que es el proceso mas costoso de un AG debe
poseer una caracterstica que lo haga paralelizable para as reducir considerablemente el
tiempo y costo de procesamiento.
1.4. Objetivos
El objetivo principal de esta investigacion es proponer y evaluar un nuevo operador
de selecci on basado en la Selecci on Sexual para un Algoritmo Genetico (AG) el cual
adicionalmente implementa un esquema de probabilidades de mutaci on.
1.4.1. Objetivos Especcos
Los objetivos especcos de esta investigaci on son:
Modelar un nuevo operador de selecci on.
Modelar un esquema de probabilidades de mutacion.
Ingeniera Inform atica - UCSP 17
1.5. Organizacion de la Tesis
Probar el Algoritmo Genetico (AG) con el nuevo operador en un problema de mejora
de calidad de horario de trabajo implementando una estructura adicional.
Probar el Algoritmo Genetico (AG) en optimizacion numerica con Funciones Bench-
mark.
1.5. Organizacion de la Tesis
Este trabajo de investigacion se organiza de la siguiente manera:
El Captulo 2 presenta los conceptos previos sobre AGs y Estrategias de Selecci on
(ES).
El Captulo 3 contiene una descripci on de la propuesta del nuevo operador de selec-
ci on
El Captulo 4 dene los casos de uso a utilizar con sus respectivos experimentos.
Finalmente, en el captulo 5 se mencionan las conclusiones, limitaciones y trabajos
futuros correspondientes a este trabajo de investigacion.
Ingeniera Inform atica - UCSP 18
Captulo 2
Conceptos Previos
En este captulo se especican conceptos que son necesarios para la realizacion de
la propuesta, primeramente se denen a los AGs, seguido de los operadores de selecci on
existentes.
2.1. Algoritmo Genetico
Los AGs son metodos adaptativos que pueden usarse para resolver problemas de
b usqueda y optimizaci on. Est an basados en el proceso genetico de los organismos vivos
[Holland, 1975]. A lo largo de las generaciones, las poblaciones evolucionan en la naturaleza
acorde con los principios de la seleccion natural y la supervivencia de los mas fuertes, los
AGs son capaces de ir creando soluciones para problemas del mundo real. La evolucion de
dichas soluciones hacia valores optimos del problema depende en buena medida de una
adecuada codicaci on de las mismas.
M as formalmente, y siguiendo la denici on dada por Goldberg, Los Algoritmos
Geneticos son algoritmos de b usqueda basados en la mecanica de seleccion natural y de la
genetica natural. Combinan la supervivencia del mas apto entre estructuras de secuencias
con un intercambio de informacion estructurado, aunque aleatorizado, para constituir as
un algoritmo de b usqueda que tenga algo de las genialidades de las b usquedas humanas
[Goldberg, 1989].
Los AGs usan una analoga directa con el comportamiento natural. Trabajan con
una poblacion de individuos, cada uno de los cuales representa una solucion factible a un
problema dado. Luego el AG eval ua cada candidata de acuerdo con la funci on de aptitud.
En un acervo de candidatas generadas aleatoriamente, por supuesto, la mayora no funcio-
nar an en absoluto, y seran eliminadas. Sin embargo, por puro azar, unas pocas pueden ser
prometedoras, aunque s olo sea actividad debil e imperfecta, hacia la soluci on del problema
[Marczyk, 2004]. En la naturaleza esto equivaldra al grado de efectividad de un organis-
mo para competir por unos determinados recursos. Cuanto mayor sea la adaptaci on de
19
2.1. Algoritmo Genetico
un individuo al problema, mayor ser a la probabilidad de que el mismo sea seleccionado
para reproducirse, cruzando su material genetico con otro individuo seleccionado de igual
forma. En la Figura 2.1 se muestra el modelo b asico del AG.
f()
Reproduccion Nueva poblacion
de descendientes
Evaluacion de
la descendencia
Evolucion
Seleccion de
Progenitores
Cruce
Mutacion
Individuo genotipo tness
x
1
100100 1296
x
2
010010 324
x
3
010110 484
x
4
000001 1
Figura 2.1: Esquema b asico de un Algoritmo Genetico.
Durante la ejecucion del algoritmo, los padres deben ser seleccionados para la repro-
ducci on, a continuaci on dichos padres seleccionados se cruzaran generando dos hijos, sobre
cada uno de los cuales actuar a un operador de mutacion. El resultado de la combinacion
de las anteriores funciones sera un conjunto de individuos, los cuales en la evolucion del
AG formaran parte de la siguiente poblacion. A continuaci on se muestra un pseudoc odigo
de un AG basico.
Algoritmo 1 Algoritmo Genetico Basico
generar una poblaci on inicial
evaluacion de tness de cada individuo
mientras condici on de n = falso hacer
para tama no poblacion / 2 hacer
seleccionar dos individuos de la anterior generacion para cruzamiento
cruzar los dos individuos obteniendo dos descendientes
mutar los dos individuos descendientes
evaluar tness de los dos individuos descendientes
insertar los dos descendientes en la nueva generaci on
n para
si poblaci on ha convergido entonces
Terminado := TRUE
n si
n mientras
Ingeniera Inform atica - UCSP 20
CAP

ITULO 2. Conceptos Previos


2.1.1. Codicacion de Problemas
Cualquier solucion potencial a un problema puede ser presentada dando valores a
una serie de par ametros. El conjunto de todos los par ametros (genes en la terminologa
de AGs) se codica en una cadena de valores denominada cromosoma.
El conjunto de los parametros representado por un cromosoma particular recibe el
nombre de genotipo. El genotipo contiene la informacion necesaria para la construcci on
del organismo, es decir, la solucion real al problema, denominada fenotipo. Por ejemplo,
en terminos biol ogicos, la informaci on genetica contenida en el ADN de un individuo sera
el genotipo, mientras que la expresion de ese ADN (el propio individuo) sera el fenotipo.
Desde los primeros trabajos de [Holland, 1975] la codicacion suele hacerse mediante
valores binarios. Se asigna un determinado n umero de bits a cada par ametro y se realiza
una discretizaci on de la variable representada por cada gen. El n umero de bits asignados
depender a del grado de ajuste que se desee alcanzar. Evidentemente no todos los par a-
metros tienen que estar codicados con el mismo n umero de bits. Cada uno de los bits
pertenecientes a un gen suele recibir el nombre de alelo. La Figura 2.2 muestra un ejemplo
de un individuo binario que codica 3 par ametros.
Figura 2.2: Individuo Genetico Binario.
Sin embargo, tambien pueden existir representaciones que codiquen directamente
cada par ametro con un valor entero, real o en punto otante. A pesar de que se acusa a
estas representaciones de degradar el paralelismo implcito de las representaciones binarias,
permiten el desarrollo de operadores geneticos mas especcos al campo de aplicacion del
AG [Gestal, 2010].
2.1.2. Funcion de Evaluaci on
Para el correcto funcionamiento de un AG se debe de poseer un metodo que indique si
los individuos de la poblaci on representan o no buenas soluciones al problema planteado.
Por lo tanto para cada tipo de problema que se desee resolver se deber a derivar a un
nuevo metodo, al igual que ocurrir a con la propia codicaci on de los individuos. De esto
se encarga la funci on de evaluacion, que establece una medida numerica de la bondad de
una solucion. Esta medida recibe el nombre de ajuste.
En la naturaleza el ajuste (o tness) de un individuo puede considerarse como la
Ingeniera Inform atica - UCSP 21
2.2. Operadores Geneticos
probabilidad de que ese individuo sobreviva hasta la edad de reproducci on y se reproduzca.
Esta probabilidad debera estar ponderada con el n umero de descendientes. Evidentemente
no es lo mismo una probabilidad de reproduccion del 0.25 en una poblaci on de un par
de cientos de individuos que esa misma probabilidad en una poblacion de varios millones.
En el mundo de los AGs se empleara esta medicion para controlar la aplicacion de los
operadores geneticos. Es decir, permitira controlar el n umero de selecciones, cruces, copias
y mutaciones llevadas a cabo.
2.2. Operadores Geneticos
Para el paso de una generaci on a la siguiente se aplican una serie de operadores
geneticos. A continuaci on se denen a los operadores de cruzamiento, mutaci on y selecci on.
2.2.1. Operadores de Cruzamiento
Un operador genetico de cruzamiento es un operador empleado para la recombina-
ci on para producir la descendencia que se insertara en la siguiente generacion. Su impor-
tancia para la transicion entre generaciones es elevada puesto que las tasas de cruce con
las que se suele trabajar rondan el 90 % .
La idea principal del cruce se basa en que, si se toman dos individuos correctamente
adaptados al medio y se obtiene una descendencia que comparta genes de ambos, existe
la posibilidad de que los genes heredados sean precisamente los causantes de la bondad
de los padres. Al compartir las caractersticas buenas de dos individuos, la descendencia,
o al menos parte de ella, debera tener una bondad mayor que cada uno de los padres por
separado. Existen multitud de operadores de cruce. Sin embargo los m as empleados son
los que se detallar an a continuacion:
Cruce de 1 punto
Es la mas sencilla de las tecnicas de cruce. Una vez seleccionados dos individuos
se cortan sus cromosomas por un punto seleccionado aleatoriamente para generar dos
segmentos diferenciados en cada uno de ellos: la cabeza y la cola. Se intercambian las
colas entre los dos individuos para generar los nuevos descendientes. De esta manera
ambos descendientes heredan informacion genetica de los padres, tal y como puede verse
en la Figura 2.3.
Ingeniera Inform atica - UCSP 22
CAP

ITULO 2. Conceptos Previos


Individuos antes deI
Individuo 1
Individuo 2
ResuItado despus deI
Hijo 1
Hijo 2




Punto de corte
Figura 2.3: Cruce de 1 punto.
Cruce de 2 puntos
Se trata de una generalizaci on del cruce de 1 punto. En vez de cortar por un unico
punto los cromosomas de los padres como en el caso anterior se realizan dos cortes. Deber a
tenerse en cuenta que ninguno de estos puntos de corte coincida con el extremo de los
cromosomas para garantizar que se originen tres segmentos. Para generar la descendencia
se escoge el segmento central de uno de los padres y los segmentos laterales del otro padre.
(Vease Figura 2.4)
Individuos antes deI
Individuo 1
Individuo 2
ResuItado despus deI
Hijo 1
Hijo 2




IntervaIo de
corte
IntervaIo de
corte
Figura 2.4: Cruce de 2 puntos.
Cruce Uniforme
Consiste en la generacion aleatoria de una m ascara de cruce con valores binarios
[Gestal, 2010]. Si en una de las posiciones de la mascara hay un 1, el gen situado en esa
posici on en uno de los descendientes se copia del primer padre. Si por el contrario hay un 0
en gel se copia del segundo padre. Para producir el segundo descendiente se intercambian
los papeles de los padres, o bien se intercambia la interpretaci on de los unos y ceros de la
m ascara de cruce tal como se puede apreciar en la Figura 2.5.
Ingeniera Inform atica - UCSP 23
2.2. Operadores Geneticos
Individuo 1 Individuo 2
Hijo 1
Hijo 2

Individuo 1 Individuo 2




Figura 2.5: Cruce Uniforme.
2.2.2. Operadores de Mutaci on
Un operador genetico de mutacion permite alcanzar cualquier parte del espacio de
b usqueda de un individuo. La mutacion de un individuo provoca que alguno de sus genes,
generalmente uno s olo, vare su valor de forma aleatoria. Aunque se pueden seleccionar
los individuos directamente de la poblaci on actual y mutarlos antes de introducirlos en la
nueva poblaci on, la mutaci on se suele utilizar de manera conjunta con el operador de cruce.
La probabilidad de mutaci on es muy baja, generalmente menor al 1 %. Esto se debe sobre
todo a que los individuos suelen tener un tness menor despues de mutados. Sin embargo
se realizan mutaciones para garantizar que ning un punto del espacio de b usqueda tenga
una probabilidad nula de ser examinado. Existen multitud de operadores de mutacion.
Sin embargo los mas empleados son los que se detallar an a continuaci on:
Reemplazo Aleatorio
Este consiste en variar aleatoriamente un gen de un cromosoma. Si se trabaja con
codicaciones binarias consistir simplemente en negar un bit. (Vease la Figura 2.6)
Ingeniera Inform atica - UCSP 24
CAP

ITULO 2. Conceptos Previos


Individuo
Individuo despus
de Ia mutacin


Bit modificado
Figura 2.6: Reemplazo Aleatorio.
Mutaci on para Representacion de Orden
Consiste en la seleccion aleatoria de dos puntos en el cromosoma. Estos dos puntos
seleccionados se intercambian en el cromosoma generando un nuevo individuo como se
muestra en la Figura 2.7.
Figura 2.7: Mutaci on para Representaci on de Orden.
2.2.3. Operadores de Seleccion
Los operadores de seleccion ser an los encargados de escoger que individuos van a
disponer de oportunidades de reproducirse y cu ales no. Puesto que se trata de imitar
lo que ocurre en la naturaleza, se ha de otorgar un mayor n umero de oportunidades
de reproduccion a los individuos m as aptos. Por lo tanto la seleccion de un individuo
estara relacionada con su valor de ajuste. No se debe sin embargo eliminar por completo
las opciones de reproducci on de los individuos menos aptos, pues en pocas generaciones
la poblacion se volvera homogenea. Se debe dar una posibilidad de reproducirse a los
individuos menos aptos ya que estos pueden incluir material genetico util en el proceso
de reproducci on. A continuacion se detallar a los operadores de selecci on mayormente
utilizados as como del operador de SS.
Seleccion de Ruleta
Propuesto por DeJong, tambien conocida como Selecci on proporcional a la funcion
de desempe no, es posiblemente el metodo m as utilizado desde los orgenes de los AGs
[Blickle and Thiele, 1995]. A cada uno de los individuos de la poblacion se le asigna una
Ingeniera Inform atica - UCSP 25
2.2. Operadores Geneticos
parte proporcional a su ajuste de una ruleta, de tal forma que la suma de todos los
porcentajes sea la unidad. Los mejores individuos recibir an una porci on de la ruleta mayor
que la recibida por los peores. Generalmente la poblacion est a ordenada en base al ajuste
por lo que las porciones m as grandes se encuentran al inicio de la ruleta. Para seleccionar
un individuo basta con generar un n umero aleatorio del intervalo [0..1] y devolver el
individuo situado en esa posicion de la ruleta. Sea N el n umero de individuos existentes y
f
i
el desempe no del i-esimo individuo. La probabilidad asociada a su selecci on est a dada
por:
p
i
=
f
i

N
j=1
f
j
(2.1)
Esta posicion se suele obtener recorriendo los individuos de la poblacion y acumulan-
do sus proporciones de ruleta hasta que la suma exceda el valor obtenido. (Vease Figura
2.8)
Figura 2.8: Ejemplo de la Selecci on de Ruleta.
A continuaci on se muestra el pseudoc odigo del procedimiento del operador de SR.
Algoritmo 2 Pseudoc odigo Seleccion de Ruleta
Generar el valor de n con un valor de 0
mientras tama no de la poblacion >n hacer
Generar el n umero aleatorio r
Calcular el tness acumulado, tness total (P
t
), y la suma del tness proporcional
(SUM)
si SUM <r entonces
Seleccionar el primer cromosoma, de otra manera, seleccionar el i-esimo cromo-
soma
n si
Incrementar el valor de n en una unidad
n mientras
Devolver los cromosomas con valores de tness proporcionales al tama no de la secci on
de la ruleta seleccionada
Ingeniera Inform atica - UCSP 26
CAP

ITULO 2. Conceptos Previos


Seleccion por Torneo
Esta selecci on se efect ua mediante un torneo (comparacion) entre un peque no sub-
conjunto de individuos elegidos al azar desde la poblacion. Los benecios de este tipo de
selecci on son la velocidad de aplicacion (dado que no es necesario evaluar ni comparar la
totalidad de la poblacion) y la capacidad de prevenir, en cierto grado, la convergencia pre-
matura. La principal desventaja es la necesidad de establecer el par ametro correspondiente
al tama no del subconjunto [Goldberg, 1989].
Variando el n umero de individuos que participan en cada torneo se puede modicar
la presi on de selecci on. Cuando participan muchos individuos en cada torneo, la presi on de
selecci on es elevada y los peores individuos apenas tienen oportunidades de reproduccion.
Un caso particular es el elitismo global. Se trata de un torneo en el que participan todos
los individuos de la poblacion con lo cual la seleccion se vuelve totalmente determinstica.
Cuando el tama no del torneo es reducido, la presi on de seleccion disminuye y los peores
individuos tienen mas oportunidades de ser seleccionados.
En la Figura 2.9 se observa el ejemplo b asico de una ST:
Figura 2.9: Ejemplo de la Selecci on por Torneo.
A continuaci on se muestra el pseudoc odigo del procedimiento del operador de ST.
Algoritmo 3 Pseudoc odigo Seleccion por Torneo
Denir tama no del subconjunto
Calcular el tness acumulado, tness total (P
i
)
mientras tama no del subconjunto >0 hacer
Elegir concursante
n mientras
Ordenar los concursante de acuerdo a su tness y elegir el ganador del torneo
Devolver el cromosoma ganador del torneo
Ingeniera Inform atica - UCSP 27
2.2. Operadores Geneticos
Seleccion Basada en Ranking
Esta selecci on se efect ua mediante la ordenaci on de la poblaci on de acuerdo a su
tness y entonces las probabilidades de seleccion se asignan de acuerdo a su ranking. La
SBR puede evitar la convergencia prematura pero puede ser computacionalmente costosa
por la necesidad de ordenar la poblaci on. La probabilidad asociada a su selecci on esta
dada por:
Ranking
i
= 2 SP + (2.(SP 1)
(Pos 1)
(n 1)
) donde : 1,0 < SP 2,0 (2.2)
Se considera a n como el n umero de individuos en la poblaci on, a Pos como la
posici on de un individuo en la poblacion y la SP como la presion de seleccion. En las
Figuras 2.10 y 2.11 se observa como la probabilidad de eleccion vara con la SBR, evitando
que existan super individuos.
Figura 2.10: Ejemplo de la probabilidad de eleccion de acuerdo al tness.
Figura 2.11: Ejemplo de la probabilidad de eleccion de acuerdo al ranking.
A continuaci on se muestra el pseudocodigo del procedimiento del operador de SBR.
Ingeniera Inform atica - UCSP 28
CAP

ITULO 2. Conceptos Previos


Algoritmo 4 Pseudoc odigo Seleccion Basada en Ranking
Generar el valor de n con un valor de 0
mientras tama no de la poblacion >n hacer
Generar el n umero aleatorio r
Ordenar poblaci on de acuerdo a su ranking
Asignar los valores de tness a los individuos de acuerdo a su ranking
Calcular el tness acumulado, tness total (P
t
), y la suma del tness proporcional
(SUM)
si SUM <r entonces
Seleccionar el primer cromosoma, de otra manera, seleccionar el i-esimo cromo-
soma
n si
Incrementar el valor de n en una unidad
n mientras
Devolver los cromosomas con valores de tness proporcionales al tama no de la secci on
de la ruleta seleccionada
Seleccion Sexual
El esquema de Seleccion Sexual [Goh et al., 2003] se inspira en el concepto de selec-
ci on sexual propuesto por Darwin que sugiere que la elecci on de pareja opera a traves de
la elecci on femenina. Esta implementacion consta de 5 etapas principalmente:
1. Separar la generaci on actual en machos y hembras.
2. Seleccionar una hembra no emparejada.
3. Seleccionar un macho a emparejar.
4. Emparejar la hembra y macho para producir descendencia.
5. Vuelva al paso 2 hasta que todas las hembras hayan copulado.
Este dise no asegura que todas las hembras se llegan a reproducir independientemente
de su aptitud y su objetivo es facilitar la exploracion del espacio de b usqueda. Por el otro
lado, el sesgo hacia los machos explota el conocimiento de que la estructura del cromosoma
del individuo es mejor. En las Figuras 2.12, 2.13 y 2.14 se detalla en forma gr aca la SS.
Ingeniera Inform atica - UCSP 29
2.2. Operadores Geneticos
Figura 2.12: Separaci on de la poblacion en hembras y machos.
Figura 2.13: Seleccion de hembra no emparejada y selecci on de un macho.
Figura 2.14: Proceso es repetido hasta que todas las hembras hayan sido apareadas.
A continuaci on se muestra el pseudoc odigo del procedimiento del operador de SS.
Ingeniera Inform atica - UCSP 30
CAP

ITULO 2. Conceptos Previos


Algoritmo 5 Pseudoc odigo Seleccion Sexual
Separar la poblaci on en machos y hembras de acuerdo a su tness
Generar el valor n con valor de tama no de la poblaci on / 2
Calcular el tness acumulado, tness total (P
t
)
mientras n >0 hacer
Seleccionar hembra no emparejada
Seleccionar macho para emparejar de acuerdo a su tness
Decrementar el valor de n en una unidad
n mientras
Devolver las parejas formadas por los inviduos de acuerdo al proceso de seleccion
2.3. Consideraciones Finales
Luego de la especicaci on de los conceptos previos de esta secci on se proceder a a
especicar la propuesta que se basa claramente en la utilizaci on de un AG con un operador
de seleccion bas andose en la estructura de la Selecci on Sexual[Goh et al., 2003], ademas
del uso de un esquema de probabilidades de mutaci on que ayudara a explorar mejor el
espacio de b usqueda. Los operadores de cruzamiento y mutaci on se basan en los operadores
utilizados en estas investigaciones.
Ingeniera Inform atica - UCSP 31
Captulo 3
Propuesta
En este captulo se detalla la propuesta del nuevo modelo del AG incluyendo el
operador de seleccion propuesto as como el esquema de ponderaci on de probabilidades
de mutaci on. La propuesta se basa en la necesidad de un nuevo operador de seleccion que
explore el espacio de b usqueda de un problema, con la caracterstica de que utilice todas
las soluciones, ya sean buenas o malas. Este nuevo operador debe tener una convergencia
uniforme, descartando la convergencia prematura adem as de alcanzar el optimo global en
un menor n umero de generaciones. En la Figura 3.1 se muestra el modelo basico del AG
donde se resalta la parte que modica la propuesta, la cual es el operador de selecci on.
Adem as, en la Figura 3.2 se muestran los pasos que componen este operador de seleccion.
f()
Reproduccion Nueva poblacion
de descendientes
Evaluacion de
la descendencia
Evolucion
Modelo de
Seleccion
Cruce
Mutacion
Individuo genotipo tness
x
1
100100 1296
x
2
010010 324
x
3
010110 484
x
4
000001 1
Propuesto
Figura 3.1: Esquema de un Algoritmo Genetico con el operador propuesto.
32
CAP

ITULO 3. Propuesta
Figura 3.2: Esquema de los pasos del operador propuesto.
Adicionalmente al operador de seleccion, se propone un esquema de probabilidades
de mutacion que sera utilizado por el operador para asignar las probabilidades de mutaci on
a sus diversas clases. Los puntos contenidos en este captulo son los siguientes:
1. Esquema de Ponderaci on de Probabilidades de Mutacion
2. Operador de Seleccion Discriminatoria de Individuos
3.1. Esquema de Ponderacion de Probabilidades de
Mutaci on
Debido a que el operador de selecci on propuesto divide la poblaci on en clases de-
pendiendo de su aptitud, se agrega un esquema donde las probabilidades de mutaci on en
la poblaci on varan dependiendo a que clase pertenecen los individuos. La clase m as alta
posee una probabilidad base inicial de mutaci on mientras que las dem as clases van aumen-
tando su probabilidad en incrementos constantes de tal forma que la ultima clase tiene
Ingeniera Inform atica - UCSP 33
3.1. Esquema de Ponderaci on de Probabilidades de Mutacion
una probabilidad de mutacion de 1. Este aumento de probabilidad se calcula utilizando
la Ecuacion 3.1.
k =
1 PM
0
(n 1)
(3.1)
donde:
n: es el n umero de clases.
PM
0
: es la probabilidad inicial de mutaci on.
k: es el incremento de probabilidad por cada clase.
En el Cuadro 3.1 se muestra un ejemplo de la variaci on de las probabilidad de
mutacion al aplicar la Ecuaci on 3.1 con una probabilidad inicial de 0.10 y un n umero de
16 clases. El valor de k es de 0.06.
Clase Probabilidad
1 0.10
2 0.16
3 0.22
4 0.28
5 0.34
6 0.40
7 0.46
8 0.52
9 0.58
10 0.64
11 0.70
12 0.76
13 0.82
14 0.88
15 0.94
16 1.00
Cuadro 3.1: Ejemplo del calculo de las probabilidades de mutacion por clase donde n : 16
y PMI : 0,1.
Con este esquema se garantiza que las clases m as bajas tengan la oportunidad de
generar descendientes con buen tness, es decir, la alta probabilidad de mutacion ayuda
a explorar el espacio de b usqueda y no solo centrarse en los individuos que pertenecen a
las clases m as altas.
Este esquema elimina la dependencia entre clases al realizar operaciones, un proble-
ma en los operadores de selecci on cl asicos. Al eliminar esta dependencia ayuda a que el
AG pueda ser paralelizable.
Ingeniera Inform atica - UCSP 34
CAP

ITULO 3. Propuesta
3.2. Seleccion Descriminatoria de Individuos
Debido a que surge la necesidad de explotar todos los elementos del espacio de
b usqueda, este operador utiliza el Esquema de Ponderacion de Probabilidades de Muta-
ci on (EPPM) para asignar probabilidades de mutaci on a todos los individuos. Al asignar
diferentes probabilidades de mutacion a las distintas clases generadas, se garantiza que
los individuos pobres tengan la posibilidad de generar un descendiente bueno.
Este operador de seleccion divide la poblaci on en clases de acuerdo a su tness.
Juntando a los mejores individuos con los mejores individuos y a los peores individuos con
los peores individuos. Con la separaci on de la poblaci on en clases, se elimina la dependencia
entre clases. Al eliminar esta dependencia el algoritmo puede ser implementado en un
contexto paralelo. Adicionalmente, este operador se basa en la estructura del operador de
selecci on sexual [Goh et al., 2003]. La Seleccion Discriminatoria de Individuos (SDI) se
compone principalmente en los siguientes pasos:
1. Separar poblaci on en clases de acuerdo a su aptitud.
2. Denir probabilidad de mutaci on para cada clase utilizando el EPPM.
3. En cada clase diferenciar las hembras y los machos.
4. Seleccionar una hembra no emparejada y un macho de la misma clase para empa-
rejar.
5. Emparejar la hembra y macho para producir descendencia.
6. Vuelva al paso 2 hasta que todas las hembras se hayan reproducido.
A continuaci on se mostrara un ejemplo gr aco de la SDI ilustrado en las Figuras
3.3, 3.4, 3.5 y 3.6.
Figura 3.3: Separacion de la poblaci on en dos clases.
Ingeniera Inform atica - UCSP 35
3.2. Selecci on Descriminatoria de Individuos
Figura 3.4: Denir la probabilidad de mutaci on para cada clase.
Figura 3.5: Diferenciacion de machos y hembras en cada clase.
Figura 3.6: Emparejamiento y producci on de descendencia.
A continuaci on se muestra el pseudoc odigo del procedimiento del operador de SSI!
(SSI!).
Ingeniera Inform atica - UCSP 36
CAP

ITULO 3. Propuesta
Algoritmo 6 Pseudoc odigo Seleccion Descriminatoria de Individuos
Ordenar la poblaci on de acuerdo a su aptitud
Generar el valor del tama no de clase
Separar la poblaci on en clases de acuerdo a su aptitud
mientras cantidad de clases >0 hacer
Denir probabilidad de mutaci on para cada clase
Separar los individuos de la clase en machos y hembras de acuerdo a su tness
Calcular el tness acumulado, tness total (P
t
) por cada clase
Generar el valor n con valor de tama no de la clase / 2
n mientras
mientras n >0 hacer
Seleccionar hembra no emparejada
Seleccionar macho para emparejar de acuerdo a su tness
Decrementar el valor de n en una unidad
n mientras
Devolver las parejas formadas por los inviduos de acuerdo al proceso de seleccion
Este operador de seleccion permitir a dividir la poblacion en clases de acuerdo a su
aptitud, lo que permitira emparejar a los mejores con los mejores y peores con los peores,
cada clase tiene su propia probabilidad de mutar que es mas baja en las mejores clases
y se incrementa conforme se clasican los dem as individuos. Ademas permitira utilizar
paralelismo para disminuir el costo de c alculo de soluciones.
Ingeniera Inform atica - UCSP 37
Captulo 4
Casos de Estudio, Pruebas y
Resultados
Con la propuesta ya denida en el captulo anterior se procede a realizar los expe-
rimentos y an alisis de los resultados obtenidos. Para las pruebas se tendr an dos casos de
uso, los cuales se detallan a continuacion:
4.1. Caso de Estudio 1: Funciones Benchmarking
Para la obtencion de resultados de este caso de estudio se utilizan 4 funciones
Benchmarking. Digalakis [Digalakis and Margaritis, 2002] resume un conjunto de funcio-
nes Benchmarking. En este conjunto, se seleccionan cuatro funciones, para llevar a cabo
el estudio propuesto, las cuales se mencionan a continuaci on:
Funci on Step : es la representante de la problem atica de las supercies planas,
las cu ales son obst aculos para los algoritmos de optimizaci on debido a que no dan
informaci on acerca de que direccion es favorable para realizar la b usqueda. Su optimo
global es 0.
f
1
=
n

i=1
|x
i
| donde : 5, 12 x
i
5, 12 (4.1)
Funci on Sphere : funcion parab olica, convexa lisa, unimodal, simetrica, y cuya con-
vergencia para el optimo global se consigue facilmente. Su optimo global es 0.
f
2
=
n

i=1
x
2
i
donde : 5, 12 x
i
5, 12 (4.2)
38
CAP

ITULO 4. Casos de Estudio, Pruebas y Resultados


Funci on Rosenbrock: considerada de alto nivel de dicultad. Es una funci on no
convexa usada para realizar pruebas de rendimiento para algoritmos de optimizaci on
denida por Howard H. Rosenbrock en 1960 [Rosenbrock, 1960]. Su optimo global
es 0.
f
3
= 100(x
2
1
x
2
)
2
+ (1 x
1
)
2
donde : 2, 048 x
i
2, 048 (4.3)
Funci on Schwefel: es una funci on multimodal compleja, es decir, tiene varios optimos
locales y solo un optimo global. Su optimo global es 837.966.
f
4
=
n

i=1
(x
i
sin(

|x
i
|)) donde : 500 x
i
500 (4.4)
Este subconjunto de funciones contiene caractersticas importantes que sirven para
resolver problemas de optimizacion, tales como: suavidad, unimodalidad, multimodalidad,
una supercie plana, y tambien muchos optimos locales [Broglio Carvalho et al., 2011].
4.1.1. Denicion del Individuo
Dado que se trabaja con valores enteros, el individuo se representa como un arreglo
binario. (Vease Figura 4.1)
Figura 4.1: Ejemplo basico del Individuo.
4.1.2. Operador de Cruzamiento
El operador de cruzamiento a utilizar seg un [Digalakis and Margaritis, 2002] es el
cruzamiento uniforme que consiste en la generacion aleatoria de una m ascara de cruce con
valores binarios [Gestal, 2010]. Si en una de las posiciones de la mascara hay un 1, el gen
situado en esa posici on en uno de los descendientes se copia del primer padre. Si por el
contrario hay un 0 el gen se copia del segundo padre. Para producir el segundo descendiente
se intercambian los papeles de los padres, o bien se intercambia la interpretacion de los
unos y ceros de la m ascara de cruce tal como se puede apreciar en la Figura 4.2.
Ingeniera Inform atica - UCSP 39
4.1. Caso de Estudio 1: Funciones Benchmarking
Individuo 1 Individuo 2
Hijo 1
Hijo 2

Individuo 1 Individuo 2




Figura 4.2: Cruce Uniforme.
4.1.3. Operador de Mutaci on
El operador de mutaci on a utilizar seg un [Digalakis and Margaritis, 2002] es el re-
emplazo aleatorio el cual consiste en variar aleatoriamente un gen de un cromosoma, como
el individuo es un arreglo de bits se modica el 1 por el 0 o viceversa. (Vease Figura 4.3)
Figura 4.3: Reemplazo Aleatorio.
4.1.4. Parametros del Modelo
Para resolver este problema tomaremos en cuenta los par ametros detallados en
el Cuadro 4.1. Se consideran las probabilidades de cruzamiento y mutacion dadas por
[Srinivas and Patnaik, 1994]. En los resultados el parametro que vara es el tama no de la
poblaci on, debido a que es el unico parametro que afecta los resultados de los experimentos.
La utilizaci on de estos valores como parametros son especicados por [Digalakis and Margaritis, 2002].
Ingeniera Inform atica - UCSP 40
CAP

ITULO 4. Casos de Estudio, Pruebas y Resultados


Parametro Valor
Tama no de poblaci on 20, 100, 200, 400
Probabilidad de cruzamiento 0.65
Probabilidad inicial de mutacion 0.008
Cuadro 4.1: Par ametros Caso 1.
4.1.5. Resultados
Primeramente se muestran los resultados obtenidos al evaluar la funci on Step con
los diferentes tama nos de poblaci on. En la Figura 4.4 se observa que si bien la SDI no
es la mas r apida en converger a su optimo global, posee una curva bien denida. Hay
que considerar que para este experimento se utilizo un valor entero de 5000 al que se le
restaba el resultado hallado por el AG, esto se realiz o solo con el objetivo de visualizar la
curva generada. En la Figura 4.5 se observa una convergencia m as rapida por parte de los
operadores de seleccion utilizados. En la Figura 4.6 se muestra que la curva de la SDI junto
con la ST, la cual vena siendo el operador que converga mas r apido, convergen antes que
los demas operadores. Finalmente se observa que en la Figura 4.7 la SDI converge mas
rapido a su optimo global que los dem as operadores mostrando una curva bien denida.
Figura 4.4: Comparaci on entre Operadores de Selecci on con una Poblaci on de 20 Indivi-
duos al evaluar la Funci on Step.
Ingeniera Inform atica - UCSP 41
4.1. Caso de Estudio 1: Funciones Benchmarking
Figura 4.5: Comparaci on entre Operadores de Selecci on con una Poblaci on de 100 Indivi-
duos al evaluar la Funci on Step.
Figura 4.6: Comparaci on entre Operadores de Selecci on con una Poblaci on de 200 Indivi-
duos al evaluar la Funci on Step.
Ingeniera Inform atica - UCSP 42
CAP

ITULO 4. Casos de Estudio, Pruebas y Resultados


Figura 4.7: Comparaci on entre Operadores de Selecci on con una Poblaci on de 400 Indivi-
duos al evaluar la Funci on Step.
A continuaci on se muestran los resultados obtenidos al evaluar la funci on Sphere.
En la Figura 4.8 se observa que la curva del operador de SS converge mas r apido que los
dem as operadores siendo seguida del operador de SDI. En la Figura 4.9 se observa que
la curva del operador de ST converge m as r apido que los dem as operadores. Finalmente
se muestra en las Figura 4.10 y 4.11 que el operador de SDI converge m as rapido que los
dem as operadores.
Figura 4.8: Comparaci on entre Operadores de Selecci on con una Poblaci on de 20 Indivi-
duos al evaluar la Funci on Sphere.
Ingeniera Inform atica - UCSP 43
4.1. Caso de Estudio 1: Funciones Benchmarking
Figura 4.9: Comparaci on entre Operadores de Selecci on con una Poblaci on de 100 Indivi-
duos al evaluar la Funci on Sphere.
Figura 4.10: Comparaci on entre Operadores de Seleccion con una Poblaci on de 200 Indi-
viduos al evaluar la Funci on Sphere.
Ingeniera Inform atica - UCSP 44
CAP

ITULO 4. Casos de Estudio, Pruebas y Resultados


Figura 4.11: Comparaci on entre Operadores de Seleccion con una Poblaci on de 400 Indi-
viduos al evaluar la Funci on Sphere.
Los resultados obtenidos al ejecutar la funci on de Rosenbrock con los diferentes
tama nos de poblaci on se muestran a continuacion. En la Figura 4.12 se observa que la
convergencia de la SDI es menor a los dem as operadores de selecci on exceptuando al
operador de SR. En la Figura 4.13 se observa que la convergencia del operador de SDI es
mejor que los dem as operadores de seleccion as como tambien alcanza su optimo global
en menos generaciones que los demas operadores. En la Figura 4.14 tambien se observa
una m as rapida convergencia hacia su optimo global. En la Figura 4.15 se observa que la
convergencia del operador de SDI es m as rapido de los demas operadores de selecci on y
se rearma el hecho de que el operador halla el optimo global en menos generaciones.
Figura 4.12: Comparaci on entre Operadores de Seleccion con una Poblacion de 20 Indivi-
duos al evaluar la Funci on Rosenbrock.
Ingeniera Inform atica - UCSP 45
4.1. Caso de Estudio 1: Funciones Benchmarking
Figura 4.13: Comparaci on entre Operadores de Seleccion con una Poblaci on de 100 Indi-
viduos al evaluar la Funci on Rosenbrock.
Figura 4.14: Comparaci on entre Operadores de Seleccion con una Poblaci on de 200 Indi-
viduos al evaluar la Funci on Rosenbrock.
Ingeniera Inform atica - UCSP 46
CAP

ITULO 4. Casos de Estudio, Pruebas y Resultados


Figura 4.15: Comparaci on entre Operadores de Seleccion con una Poblaci on de 400 Indi-
viduos al evaluar la Funci on Rosenbrock.
A continuacion se muestran los resultados obtenidos al probar la funcion Schwefel,
la cual es una funci on multimodal. En la Figura 4.16 se observa que los unicos operadores
que generan una curva denida que converge al optimo global son la SS y la SDI, esto
debido a que esta funci on posee varios optimos locales. En las Figuras 4.17, 4.18 y 4.19
se muestra que la mayora de operadores excepto la SR poseen curvas denidas hacia el
optimo global.
Figura 4.16: Comparaci on entre Operadores de Seleccion con una Poblacion de 20 Indivi-
duos al evaluar la Funci on Schwefel.
Ingeniera Inform atica - UCSP 47
4.1. Caso de Estudio 1: Funciones Benchmarking
Figura 4.17: Comparaci on entre Operadores de Seleccion con una Poblaci on de 100 Indi-
viduos al evaluar la Funci on Schwefel.
Figura 4.18: Comparaci on entre Operadores de Seleccion con una Poblaci on de 200 Indi-
viduos al evaluar la Funci on Schwefel.
Ingeniera Inform atica - UCSP 48
CAP

ITULO 4. Casos de Estudio, Pruebas y Resultados


Figura 4.19: Comparaci on entre Operadores de Seleccion con una Poblaci on de 400 Indi-
viduos al evaluar la Funci on Schwefel.
Si bien no es posible identicar a simple vista que operador es el que converge
primero al optimo global, en el Cuadro 4.2 se muestra la cantidad de generaciones que
emplea cada operador en converger al optimo global.
Operador de Seleccion Generacion de convergencia
400 Ind 200 Ind 100 Ind
Seleccion por Torneo 356 510 535
Seleccion de Ruleta 418 574
Seleccion Sexual 327 391 562
Seleccion Basada en Ranking 333 551 567
Seleccion Discriminatoria de Individuos 241 275 421
Cuadro 4.2: Comparativo del n umero de generaciones que los operadores de Selecci on
necesitaron para converger en la funci on Schwegel.
Se observa que con esta funcion multimodal la SR no llega a converger, por otro
lado se muestra que la SDI converge m as rapido que los dem as operadores.
4.2. Caso de Estudio 2: Mejora de Calidad en Hora-
rios de Empleados
Un problema adicional abarcado en este trabajo de investigaci on es la mejora de
calidad de un horario de trabajo cuyo tema es abarcado en varios trabajos de investigaci on
Ingeniera Inform atica - UCSP 49
4.2. Caso de Estudio 2: Mejora de Calidad en Horarios de Empleados
utilizando diferentes formas de nombrarlo. Los terminos mas utilizados son: workforce
scheduling, manpower scheduling, sta scheduling, employee timetabling, crew scheduling
[Morz and Nysret, 2004]. La asignaci on de un horario de trabajo a los empleados consiste
en adjudicar a los empleados turnos de trabajo en un periodo previamente denido. En
la Figura 4.20 se muestra un ejemplo de un horario basico utilizado generalmente por
diversas empresas e instituciones, en este ejemplo el periodo es de 7 das.
Figura 4.20: Ejemplo tpico y b asico de un horario de empleados.
Existen basicamente dos tipos de horarios de trabajo: a) los horarios est aticos, los
cuales no varan en los diferentes periodos de tiempo y b) los horarios din amicos que s
varan en cada periodo de tiempo.
A continuaci on en las Figuras 4.21 y 4.22 se muestran dos ejemplos b asicos de
horarios dinamicos y est aticos cuyo periodo es de 7 das.
Figura 4.21: Ejemplo b asico de un Horario Est atico en 2 periodos de tiempo.
Ingeniera Inform atica - UCSP 50
CAP

ITULO 4. Casos de Estudio, Pruebas y Resultados


Figura 4.22: Ejemplo b asico de un Horario Din amico en 2 periodos de tiempo donde los
casilleros sombreados indican la variacion entre periodo 1 y periodo 2.
En este caso de uso se considerara el horario din amico ya que se pretende mejorar la
productividad de los empleados y, al mismo tiempo, tener un mejor impacto de satisfaccion
y salud de los empleados.
Para la obtenci on de resultados en este caso de uso se va a tomar un caso de la
vida real, los horarios de salvavidas de Wilderness Resort, localizado en Wisconsin Dells,
USA, cuyo horario de salvavidas es generado manualmente por 2 personas encargadas que
toman en un tiempo de 4 das calendarios. Este horario tiene un promedio de 50 salvavidas
divididos en 2 turnos. Siendo el trabajo de salvavidas muy crtico debido a que un peque no
descuido puede ocasionar la muerte de alguna persona, los salvavidas deben encontrarse
en su mejor capacidad de respuesta lo cual puede ser afectada por varios motivos como:
Trabajo adicional en altas horas de la noche.
Conictos personales.
Variaci on del ritmo circadiano.
Das seguidos de trabajo.
Para lo cual es importante encontrar un horario que pueda mejorar la productividad
y eciencia de los salvavidas. A continuaci on se denen los individuos, operadores geneticos
y se propone una estructura llamada Matriz de Preferencias (MPs) para solucionar este
problema.
Ingeniera Inform atica - UCSP 51
4.2. Caso de Estudio 2: Mejora de Calidad en Horarios de Empleados
4.2.1. Denicion de Individuo
La denici on del individuo del AG se basa en el individuo utilizado para resolver el
Problem A: curriculum-based course timetabling [Abdullah and Turabieh, 2012].
El individuo es una matriz d e, donde d es el n umero de das y e es el n umero de
empleados disponibles (Vease Figura 4.23). Los valores de esta matriz son los periodos en
que est a compuesto un da de trabajo, en el individuo se esta considerando dos periodos:
am y pm.
Figura 4.23: Esquema b asico del Individuo.
En el AG se genera una poblacion de x individuos, donde cada individuo representa
una posible solucion al problema propuesto.
4.2.2. Operador de Cruzamiento
El operador de cruzamiento propuesto basado en el operador propuesto en el trabajo
de [Abdullah and Turabieh, 2012], consisten en elegir aleatoriamente dos columnas distin-
tas de nuestros individuos para cruzar e intercambiarlas como se muestra en las Figuras
4.24 y 4.25.
Ingeniera Inform atica - UCSP 52
CAP

ITULO 4. Casos de Estudio, Pruebas y Resultados


Figura 4.24: Seleccion de dos columnas aleatoriamente.
En este ejemplo se ha seleccionado aleatoriamente la columna 2 y la columna 5.
Figura 4.25: Exchange selected columns.
Ingeniera Inform atica - UCSP 53
4.2. Caso de Estudio 2: Mejora de Calidad en Horarios de Empleados
Cabe destacar que el operador de cruzamiento podra generar un individuo que sea
incorrecto, lo que podra ocasionar inconsistencias en el algoritmo. Para solucionar este
problema se utilizar a una funci on de comprobacion de individuos, la cual evaluar a el
descendiente con la MPs. Y en caso el individuo sea incorrecto se tomar a al padre del
individuo, caso contrario el descendiente ser a elegido.
4.2.3. Operador de Mutaci on
El operador de mutaci on propuesto consiste en seleccionar la mitad menos signi-
cativa del individuo y aplicar la mutaci on de los turnos como se muestran en las Figuras
4.26 y 4.27.
Figura 4.26: Seleccion mitad menos signicativa.
Figura 4.27: Mutacion de turnos.
Se procede a mutar los turnos de la columna elegida, es decir si el elemento es am
se procede a cambiarlo por pm y viceversa, se podr a mutar un individuo solo si la MPs
tiene un valor diferente a 0 en esa posici on.
4.2.4. Matriz de Preferencias
Para la generaci on de la poblacion de los AGs generalmente se realiza mediante
la generacion aleatoria sin seguir un patron de probabilidades. Debido a esta falta de
especicacion es que se propone una MPs (Vease Figura 4.28) en el AG para la generaci on
de la poblaci on inicial y c alculo de aptitud.
Ingeniera Inform atica - UCSP 54
CAP

ITULO 4. Casos de Estudio, Pruebas y Resultados


Figura 4.28: Ejemplo b asico de una Matriz de Preferencias.
En la matriz denida por cada da se agrega la cantidad de turnos por da, en este
caso cada da tiene dos turnos. Una de las particularidades de esta matriz es que los valores
de cada columna deben de sumar 1. Si un elemento de la columna vara, la diferencia del
valor actual con el anterior se reparte entre los dem as elementos de la columna, ya sea para
agregar o disminuir el valor de los dem as elementos. Si un empleado no puede trabajar en
un turno especicado el valor para esa posicion en la MPs sera de 0.
Esta matriz ayudar a a generar una poblacion inicial con mayor aptitud, por ende con
una mejor calidad de individuos. Cabe resaltar que esta estructura se basa en el modelo
probabilstico al utilizar esta MPs, por lo cual los individuos no seran parecidos ni se
estara forzando una generaci on estandar de individuos.
Los valores de esta matriz varan de acuerdo a valores de eciencia, penalidades
por parte del empleado, etc. Estos valores inuyen para que esta matriz tenga elementos
din amicos, lo que permitira una mayor aleatoriedad de los individuos a generarse en la
poblaci on inicial.
Al modicar un elemento de la MPs los valores de la columna son afectados, de esta
forma se recalcula la MPs para seguir cumpliendo la condici on de que los elementos de
una columna deben sumar 1. Para evitar el hecho de que un elemento pueda ser elegido
varias veces, se normalizara cada columna de la MPs.
4.2.5. Funcion de Evaluaci on
El c alculo de tness del individuo se hara en base a la Ecuacion 4.5 utilizando valores
de la MPs.
f(x) =
n

i=1
n

j=1
M(i, j) I(i, j) (4.5)
Ingeniera Inform atica - UCSP 55
4.2. Caso de Estudio 2: Mejora de Calidad en Horarios de Empleados
donde:
f(x): es la funci on de evaluaci on.
M: es la Matriz de Probabilidades.
I: es el Individuo.
i, j: son las posiciones en la Matriz de Probabilidades y la matriz del Individuo.
Como previamente se ha denido, la MPs tiene una probabilidad por cada turno
posible de cada empleado. Entonces para calcular el tness en funci on de la MPs se mul-
tiplicar a cada posici on de la MPs con la posici on del individuo, es decir si en el individuo
la posici on de turno esta seleccionada, el valor a multiplicar sera 1, caso contrario 0. En
las Figuras 4.29 y 4.30 se muestra un ejemplo basico de c alculo de tness con la MPs.
Figura 4.29: Ejemplo b asico de un Horario y su respectiva Matriz de Preferencias.
Figura 4.30: Valores obtenidos despues de multiplicar posici on por posicion.
Con los valores obtenidos despues de la operaci on de evaluaci on del tness se procede
a sumar estos valores con lo que se obtendra el valor del tness de 7.88.
Ingeniera Inform atica - UCSP 56
CAP

ITULO 4. Casos de Estudio, Pruebas y Resultados


4.2.6. Parametros del Modelo
Para resolver este problema tomaremos en cuenta los par ametros detallados en el
Cuadro 4.3.
Parametro Valor
Tama no de poblaci on 448
Probabilidad de cruzamiento 0.7
Probabilidad inicial de mutacion 0.1
Tama no de clase 4
Cuadro 4.3: Par ametros Caso 2.
4.2.7. Resultados
Es interesante vericar el desempe no de este operador de SDI en el AG, a continua-
ci on en la Figura 4.31 se muestra la comparacion de los operadores de selecci on.
Figura 4.31: Comparaci on entre Operadores de Selecci on.
Analizando la Figura 4.31 para los distintos operadores de selecci on se observa que el
operador de selecci on propuesto tiene una curva mejor denida en comparaci on a los dem as
operadores de selecci on, aunque no presente la misma rapidez de convergencia, mostrando
una caracterstica exploratoria. La curva denida se da por el equilibrio entre exploracion
y explotaci on de las posibles soluciones. En la Figura 4.32 se observa la evaluacion de
Ingeniera Inform atica - UCSP 57
4.2. Caso de Estudio 2: Mejora de Calidad en Horarios de Empleados
las distintas probabilidades de cruzamiento y mutacion para los operadores evolutivos
propuestos.
Figura 4.32: Comparaci on entre Probabilidades de Cruzamiento y Mutacion.
Las probabilidades optimas de cruzamiento y mutacion seg un [Srinivas and Patnaik, 1994]
son de 0.65 y 0.008, en la Figura 4.32 se observa que las probabilidad 0.7 y 0.1 son mas
optimas para este caso de uso. Debido a que el operador de SDI separa en clases a la po-
blacion de individuos, se realizaron pruebas con diferentes cantidades de poblaci on para
hallar la mejor y utilizarla como par ametro del algoritmo (Vease Figura 4.33).
Figura 4.33: Comparaci on entre diferente n umero de Indidivuos en una Poblaci on
Se observa que conforme el n umero de individuos aumenta, tiende a encontrar una
mejor solucion a nuestro problema hasta que llega al maximo de 448, despues de este n u-
Ingeniera Inform atica - UCSP 58
CAP

ITULO 4. Casos de Estudio, Pruebas y Resultados


mero de individuos el m aximo tiende a disminuir. Como parte de ese objetivo especco
tambien se propone un operador de cruzamiento y mutacion adecuado para nuestro ope-
rador de seleccion propuesto. En la Figura 4.34 se observa la evaluacion de los distintos
operadores de cruzamiento y mutaci on para encontrar el m as apropiado para la propuesta.
Figura 4.34: Comparaci on entre Operadores de Cruzamiento y Mutacion
En la Figura 4.35 se observan los resultados al modicar el tama no de las clases en
nuestro algoritmo. Se observa que mientras el tama no de la clase sea mayor, menor sera
su eciencia al momento de converger en la solucion de nuestro caso de uso.
Ingeniera Inform atica - UCSP 59
4.2. Caso de Estudio 2: Mejora de Calidad en Horarios de Empleados
Figura 4.35: Comparaci on entre diferentes tama nos de clase
A continuaci on en la Figura 4.36 se muestra la evoluci on de la calidad del horario
generado conforme las generaciones son ejecutadas.
Figura 4.36: Optimizaci on de la Calidad de un Horario.
Ingeniera Inform atica - UCSP 60
Captulo 5
Conclusiones y Trabajos Futuros
Se model o un nuevo operador de seleccion denominado operador de SDI, el cual est a
basado en un EPPM. Adicionalmente se prob o el nuevo operador con cuatro funciones
Benchmarking y un problema de mejora de calidad en los horarios de trabajo.
Analizando los resultados obtenidos, se comprueba que :
El operador de SDI propuesto en este trabajo de investigaci on genera una curva
denida independientemente del tama no de la poblaci on.
Por los resultados obtenidos, se observa que este operador de SDI no converge m as
rapido que los demas operadores en una poblaci on peque na por lo que muestra una
caracterstica exploratoria.
Al incrementar el tama no de la poblaci on. el operador de SDI tiende a mejorar
considerablemente su eciencia en cuanto a convergencia y el n umero de generaciones
a ejecutar para encontrar la soluci on al problema atacado.
El operador de SDI muestra una curva de convergencia uniforme, es decir no tiene el
problema de la convergencia prematura. El esquema de ponderacion propuesto para
la mutaci on en este algoritmo ayuda a que se explore nuevas soluciones a costa de los
individuos menos aptos, este esquema ayuda a explorar en el espacio de b usqueda
cuando el tama no de la poblaci on sea peque na.
Si bien no existe otro modelo que utilice una estructura que almacene valores de
productividad o probabilidades para comparar los resultados de la calidad del hora-
rio obtenido, se observa que la propuesta obtiene un horario que mejora la calidad
de acuerdo a la MPs.
61
5.1. Limitaciones
5.1. Limitaciones
Las probabilidades y operadores de cruzamiento y mutaci on utilizados en este tra-
bajo no siempre ser an los m as optimos, esto vara seg un el problema a resolver. Si bien,
conforme aumenta el tama no de poblaci on el rendimiento del operador de SDI mejora.
Cuando el espacio de b usqueda de un problema es peque no, el operador de SDI no muestra
una mejora signicativa en comparaci on con los operadores de selecci on existentes.
5.2. Trabajos futuros
En base a la propuesta del AG con el operador SDI y el EPPM que se propone en este
trabajo de investigacion. Para poder ser implementado en un contexto paralelo al quitar
la dependencia entre las clases de la poblaci on, un trabajo futuro es la implementaci on de
este algoritmo en un contexto masivamente paralelo (GPU) utilizando una Arquitectura
Master-Slave Global (AMSG).
Ingeniera Inform atica - UCSP 62
Bibliografa
[Abdullah and Turabieh, 2012] Abdullah, S. and Turabieh, H. (2012). On the use of
multi neighbourhood structures within a tabu-based memetic approach to university
timetabling problems. Information Sciences, 191:146168.
[Beasley et al., 1993] Beasley, D., Bull, D. R., and Martin, R. R. (1993). An overview of
genetic algorithms: Part 1, fundamentals.
[Blickle and Thiele, 1995] Blickle, T. and Thiele, L. (1995). A comparison of selection
schemes used in genetic algorithms. Technical report, Gloriastrasse 35, CH-8092 Zu-
rich: Swiss Federal Institute of Technology (ETH) Zurich, Computer Engineering and
Communications Networks Lab (TIK.
[Broglio Carvalho et al., 2011] Broglio Carvalho, D., Nunes Bittencourt, J. C., and
DMartin Maia, T. (2011). The simple genetic algorithm performance: A comparative
study on the operators combination. In INFOCOMP 2011, The First International
Conference on Advanced Communications and Computation, pages 2024.
[Cheng et al., 2012] Cheng, R., Yao, M., Xue, X., and Shen, B. (2012). Bisexual evolution:
A novel bisexual evolutionary framework based on the shers runaway process. In
Evolutionary Computation (CEC), 2012 IEEE Congress on, pages 18.
[Digalakis and Margaritis, 2002] Digalakis, J. G. and Margaritis, K. G. (2002). On bench-
marking functions for genetic algorithms. International Journal of Computer Mathe-
matics, 79(4):403416.
[Gestal, 2010] Gestal, M. (2010). Introduccion a los algoritmos geneticos.
[Geyer et al., 1999] Geyer, H., Ulbig, P., and Schulz, S. (1999). Use of evolutionary al-
gorithms for the calculation of group contribution parameters in order to predict ther-
modynamic properties: Part 2: Encapsulated evolution strategies. Computers and Che-
mical Engineering, 23(7):955 973.
[Goh et al., 2003] Goh, K. S., Lim, A., and Rodrigues, B. (2003). Sexual selection for
genetic algorithms. Articial Intelligence Review, 19(2):123152.
[Goldberg, 1989] Goldberg, D. E. (1989). Genetic Algorithms in Search, Optimization
and Machine Learning. Addison-Wesley Longman Publishing Co., Inc., Boston, MA,
USA, 1st edition.
63
BIBLIOGRAF

IA
[Grobner and Wilke, 2001] Grobner, M. and Wilke, P. (2001). Optimizing employee sche-
dule by a hibrid genetic algorithm. Applications of Evolutionary Computing. Lecture
Notes in Computer Science (2001), pages 463472.
[Holland, 1975] Holland, J. H. (1975). Adaptation in Natural and Articial Systems. Uni-
versity of Michigan Press, Ann Arbor, Michigan, rst edition.
[Jadaan et al., 2008] Jadaan, O. A., Rajamani, L., and Rao, C. R. (2008). www.jatit.org
improved selection operator for ga.
[Marczyk, 2004] Marczyk, A. (2004). Genetic algorithms and evolutionary computation.
[Michalewicz, 1996] Michalewicz, Z. (1996). Genetic algorithms + data structures = evo-
lution programs (3rd ed.). Springer-Verlag, London, UK, UK.
[Montana et al., 1998] Montana, D., Brinn, M., Moore, S., and Bidwell, G. (1998). Ge-
netic algorithms for complex, real-time scheduling. In Systems, Man, and Cybernetics.
IEEE International Conference on (1998), pages 22132218.
[Morz and Nysret, 2004] Morz, M. and Nysret, M. (2004). Genetic algorithm for rotating
workforce scheduling problem. In Computational Cybernetics, 2004. ICCC 2004. Second
IEEE International Conference (ICCC 2004), pages 121126.
[Oladele and Sadiku, 2013] Oladele, R. O. and Sadiku, J. S. (2013). Article: Genetic algo-
rithm performance with dierent selection methods in solving multi-objective network
design problem. International Journal of Computer Applications, 70(12):59. Published
by Foundation of Computer Science, New York, USA.
[Razali and Geraghty, 2011] Razali, N. M. and Geraghty, J. (2011). Article: Genetic al-
gorithm performance with dierent selection strategies in solving tsp. International
Journal of Computer ApplicationsProceedings of The World Congress on Engineering
2011, 2:11341139.
[Rosenbrock, 1960] Rosenbrock, H. H. (1960). An automatic method for nding the grea-
test or least value of a function.
[Rudolph, 1994] Rudolph, G. (1994). Convergence analysis of canonical genetic algo-
rithms. Neural Networks, IEEE Transactions on, 5(1):96101.
[Srinivas and Patnaik, 1994] Srinivas, M. and Patnaik, L. M. (1994). Adaptive probabi-
lities of crossover and mutation in genetic algorithms. IEEE Transactions on Systems,
Man and Cybernetics (1994).
[Tuttle, 1989] Tuttle, R. H. (1989). Arguments on evolution. a paleontologists perspec-
tive. American Journal of Physical Anthropology, 80(3):405406.
[Zhong et al., 2005] Zhong, J., Hu, X., Gu, M., and Zhang, J. (2005). Comparison of
performance between dierent selection strategies on simple genetic algorithms. In
Computational Intelligence for Modelling, Control and Automation, 2005 and Inter-
national Conference on Intelligent Agents, Web Technologies and Internet Commerce,
International Conference on, volume 2, pages 11151121.
Ingeniera Inform atica - UCSP 64

También podría gustarte