• No se han encontrado resultados

APLICACIÓN DE UN ALGORITMO GENÉTICO MULTIOBJETIVO EN LA PROGRAMACIÓN DE TAREAS PARA OPERARIOS EN CULTIVO DE ROSAS EDGAR ANDRÉS GARZÓN MURCIA

N/A
N/A
Protected

Academic year: 2021

Share "APLICACIÓN DE UN ALGORITMO GENÉTICO MULTIOBJETIVO EN LA PROGRAMACIÓN DE TAREAS PARA OPERARIOS EN CULTIVO DE ROSAS EDGAR ANDRÉS GARZÓN MURCIA"

Copied!
97
0
0

Texto completo

(1)

APLICACIÓN DE UN ALGORITMO GENÉTICO

MULTIOBJETIVO EN LA PROGRAMACIÓN

DE TAREAS PARA OPERARIOS

EN CULTIVO DE ROSAS

EDGAR ANDRÉS GARZÓN MURCIA

UNIVERSIDAD DE LA SABANA FACULTAD DE INGENIERÍA

PROGRAMA DE PRODUCCIÓN AGROINDUSTRIAL BOGOTÁ D.C.

(2)

APLICACIÓN DE UN ALGORITMO GENÉTICO

MULTIOBJETIVO EN LA PROGRAMACIÓN

DE TAREAS PARA OPERARIOS

EN CULTIVO DE ROSAS

EDGAR ANDRÉS GARZÓN MURCIA

Proyecto de grado para optar al título de Ingeniero de Producción Agroindustrial

Director

CESAR HERNANDO MESA Magíster en Ingeniería Industrial

UNIVERSIDAD DE LA SABANA FACULTAD DE INGENIERÍA

PROGRAMA DE PRODUCCIÓN AGROINDUSTRIAL BOGOTÁ D.C.

(3)

Nota de aceptación ________________________ ________________________ ________________________ ________________________ Presidente ________________________ Jurado ________________________ Jurado Bogotá D.C., 28 de noviembre de 2003

(4)

A Dios, por permitirme alcanzar exitosamente otro peldaño de mi vida.

A mis padres y mi hermano.

(5)

AGRADECIMIENTOS

Al finalizar el presente trabajo no podía dejar de lado a todas las personas que hicieron posible que se viviera tan enriquecedora experiencia, la cual me permitió el ascenso a un peldaño más en la escalera hacia la superación profesional y personal.

A Cesar Hernando Mesa, Ingeniero Industrial y Director de la Investigación, por sus valiosas orientaciones y colaboración.

A la Dra. María Delfina Merlano, Ingeniera Industrial y Asesora de la Investigación, su colaboración, aportes y comentarios, fueron valiosos, logrando así hacer de este trabajo un documento mejor.

A la Dra. Patricia Jaramillo, Ingeniera Civil, por su apoyo incondicional, sus clases y por el material bibliográfico compartido, el cual constituye la base de esta investigación. Sus aportes fueron fundamentales, más aún cuando el camino se hacía difícil y parecía no tener rumbo.

A William Cruz, Ingeniero Agrónomo, por sus acertadas orientaciones y por su constante motivación en el desarrollo de este trabajo.

Al Departamento Técnico de la empresa G.R.Chía S.A., por su constante motivación y

(6)

RESUMEN

El cultivo de rosas necesita de muchos operarios para que realicen las tareas que se requieren. Por lo general, la distribución de las tareas demandadas por las distintas zonas de producción a cada operario, no es la mas apropiada y esto se ve reflejado, por ejemplo, en atrasos en la ejecución de las tareas. Realizar esta asignación de tareas implica la consideración de varios aspectos como son la cantidad de bloques o invernaderos, camas de estos (subdivisiones de los invernaderos donde se cultivan las plantas), cantidad de operarios, variedades de rosas producidas, etc., con el propósito de alcanzar ciertas metas u objetivos tales como el equilibrio en la carga de trabajo asignada a cada operario, minimizar los desplazamientos que los operarios deban realizar para llegar a sus diferentes áreas asignadas, maximizar el cumplimiento de la demanda de tareas, etc. Se propone en este trabajo un algoritmo combinatorial multiobjetivo para encontrar una solución al problema de programar las tareas a los operarios en un cultivo de rosas. El modelo se basa principalmente en el método de los algoritmos genéticos clásico para un solo objetivo, pero se le adicionaron características para el manejo de varios objetivos. Se muestran algunos resultados y finalmente se presentan algunas conclusiones y recomendaciones.

Abstract: rose cultivar requires a lot of workers to do all the tasks required. Generally,

the distribution of the demanded tasks by the different zones of production to each worker, it’s not the most appropriate and this is reflected, for example, in delays in the execution of the tasks. This assignment of tasks implies consideration of several aspects as they are the amount of greenhouses, beds of these (subdivision of each greenhouse where the plants are cultivated), amount of workers, rose varieties produced, etc., with the aim to reach certain objectives or goals such as the balance of workload assigned to each worker, minimize the displacements that the workers must do to arrive at their different assigned areas, maximize the fulfillment of the demand of tasks, etc. A multiobjective combinatorial algorithm is proposed in this work, to find solutions to the problem of programming tasks in a rose cultivar. The model is based in the classic genetic algorithm methodology for one objective, but some additional characteristics to handle several objectives were added. Some results, conclusions and recommendations are presented.

Keywords: Genetic Algorithm. Multiobjective Optimization. Electre III. Scheduling. Rose Production.

(7)

JUSTIFICACIÓN

El reto de planear la producción y realizar una eficiente asignación de las tareas demandadas tiene una implicación directa en la eficiencia del uso de los recursos de producción.

La carencia de herramientas que faciliten este trabajo trae como consecuencia la planeación basada en la experiencia. El anterior hecho provee un campo de aplicación de técnicas matemáticas que permiten ofrecer soluciones, si bien, no óptimas, si muy cercanas a los valores óptimos que permitan mejorar las condiciones de programación actuales.

Las herramientas de desarrollo matemático proveen un marco de mayor aproximación a la optimización de procesos y al mejoramiento en los niveles de utilización de los recursos. Un sistema de programación de la producción (asignación de tareas), permite maniobrar de manera más efectiva sobre decisiones estratégicas de la empresa, facilitando los procesos de toma de decisiones y ofreciendo una mejora sustentable en la operación de la producción.

La realización completa y oportuna de las diferentes tareas demandadas por un cultivo de rosas es importante tanto para la productividad como para la calidad de las flores de exportación.

En la empresa Flores El Pino Ltda. se notan atrasos importantes en la realización de las tareas y se piensa que las principales causas de este problema radican en:

• Carencia de un método o modelo que permita, en base a las características propias de la empresa, determinar los requerimientos de mano de obra para el cultivo. La empresa utiliza estándares del sector, lo cual no es óptimo ya que cada finca tiene características diferentes como son: las variedades cultivadas, manejos diferentes de producción, productividades, etc.

• Métodos inapropiados de asignación de la mano de obra al área cultivada, ya que se notan desequilibrios en las cargas de trabajo de los operarios, lo que conlleva a que unos operarios tengan más trabajo que otros, y por lo tanto no hay un aprovechamiento óptimo es este recurso.

(8)

Los principales problemas encontrados en las metodologías utilizadas actualmente son:

• La asignación de tareas y la cantidad de mano de obra se consideran constantes a lo largo del año. Tratarlo así no es óptimo para un sistema de producción tan variable como es la producción de flores ya que cada tarea en cada variedad presenta picos a lo largo de todo el año, especialmente en fiestas, en dónde el incremento en volúmenes de producción y de mano de obra son significativos.

• Los métodos de asignación actuales buscan entregar un número igual de camas a cada operario. Se piensa que lo ideal es entregar una cantidad de trabajo aproximadamente igual para todos, en donde seguramente el número de camas para cada uno no será igual debido a las diferencias significativas en carga de trabajo para las diferentes camas.

• Las camas se entregan tanto para la tarea “corte” como para realizar las diferentes tareas de mantenimiento, lo cual, se piensa no es óptimo ya que cada tarea demanda cantidades de trabajo distintas y variables en el tiempo. Por ejemplo, una persona que tiene a su cargo camas en pico de la tarea “corte”, gastará muchas horas en realizar esta tarea y no tendrá oportunidad de realizar completa y oportunamente las demás tareas.

• Algunos métodos de asignación (ver antecedentes) que buscan equilibrar la carga de trabajo entre operarios, requieren recorridos extensos, lo cual puede aumentar la fatiga en los operarios y los tiempos improductivos.

(9)

OBJETIVOS

OBJETIVO GENERAL

Diseño de un método de programación de la producción por medio de procedimientos de asignación de tareas a los operarios en un cultivo de rosas utilizando el metaheurístico Algoritmos Genéticos.

OBJETIVOS ESPECÍFICOS

• Selección de la metodología más apropiada a utilizar en el Algoritmo Genético multiobjetivo.

• Selección del método de análisis multiobjetivo que articule la estructura de preferencias del decisor.

• Implementación del modelo utilizando algún lenguaje de programación, medición de su efectividad y viabilidad aplicándolo en un bloque o invernadero de Flores El Pino Ltda., usando datos cercanos a la realidad.

• Análisis de los valores de los diferentes parámetros (tamaño de la población, máximo número de iteraciones, probabilidad de mutación, etc.) que se usen en el Algoritmo Genético en distintos niveles y determinación de los valores más eficientes.

(10)

ANTECEDENTES

Flores el Pino Ltda. fundada en el año 1987, es una empresa productora de rosas tipo exportación, ubicada en el municipio de Cota (Cundinamarca). La empresa en sus inicios cultivaba clavel miniatura pero desde el año 1992 produce solamente rosa. Actualmente se cultivan 13 variedades en un área de 4.5 hectáreas. Aproximadamente el 95% de la producción se exporta a Estados Unidos y el 5% restante que corresponde a producto que no cumple con la especificaciones de calidad requeridas, se vende en el mercado nacional. Desde el año 1995, Flores el Pino entró a formar parte del cluster G.R.Chía S.A., reconocida e importante asociación de empresas florícolas del país. En Flores El Pino el cálculo y la asignación de la mano de obra al cultivo hasta el momento no se ha realizado en base a estudios previos y profundos. A continuación se comentan los planes y estrategias implementadas al respecto por la finca en el último año y medio:

• En enero de 2002 se asignaban en promedio 37 camas a cada operario de cultivo, estas camas se encontraban en un mismo invernadero y casi siempre correspondían a una misma variedad.

Las principales deficiencias detectadas con este método fueron las siguientes:

o Cada variedad requiere un número de horas de mano de obra diferente, si se asigna un número de camas iguales a cada operario, según el anterior criterio, las cargas de trabajo resultantes serán diferentes y no equitativas. Por esto como cada operario en promedio trabajaba una sola variedad y como la demanda de trabajo presenta diferencias significativas entre variedades, el operario que tenía 37 camas de una variedad complicada tenía mucho más trabajo que el que tenía 37 camas de una variedad suave.

o Durante las fumigaciones los operarios tenían que dejar de trabajar en sus camas e ir a trabajar en camas de otros operarios en otros invernaderos. Esta situación generaba atrasos y descoordinación en la realización de las tareas.

• Con el objetivo de mejorar la situación anterior en abril de 2002 se optó por asignar camas a los operarios en dos invernaderos diferentes con el objeto de que cuando tuvieran que dejar uno debido a fumigaciones, pudieran ir al otro a trabajar en sus

(11)

otras camas. Esta distribución permitió también asignar en promedio dos variedades a cada operario lo que conllevó a mejorar el balanceo de cargas por que se trató de entregar una variedad fácil y una difícil a cada operario. Debido a incrementos alcanzados en productividad los cuales aumentan por ende la demanda de trabajo se decidió también reducir el número de camas por operario de 37 a 32.

• Notando nuevamente desequilibrios en la carga de trabajo de los operarios se implementó en el mes de abril de 2003 un sistema de asignación que consiste en asignar dos camas a cada operario cada 26 camas en dos invernaderos como se muestra en la siguiente tabla:

Cama Operario 1 y 2 1 3 y 4 2 5 y 6 3 7 y 8 4 9 y 10 5 11 y 12 6 13 y 14 7 15 y 16 8 17 y 18 9 19 y 20 10 21 y 22 11 23 y 24 12 25 y 26 13 27 y 28 1 29 y 30 2 31 y 32… 3…

Asignación actual del área cultivada en Flores El Pino

La ventaja de este método radica en que todos los operarios tienen camas en todos los sectores de los invernaderos y por lo tanto en promedio todos tienen camas de todas las variedades y en todos los estados de producción mejorando de esta manera el equilibrio en las cargas de trabajo, lo cual ha mejorado significativamente el cumplimiento en la realización de las tareas.

Las deficiencias encontradas en este método de asignación corresponden a recorridos muy largos para realizar los trabajos lo cual aumenta la fatiga en los operarios y los tiempos improductivos. El equilibrio de cargas aunque mejora bastante no es completo

(12)

debido a la distribución de siembras en los invernaderos. Debido a nuevos incrementos en productividad se tomó la decisión de reducir el número de camas por operario de 32 a 29.

Como se puede observar en los diferentes métodos de asignación del área de trabajo, a los operarios no se les tiene en cuenta todas las variables que determinan la demanda de trabajo originando una asignación estática (no cambia en el tiempo), lo cual es ineficiente ya que la demanda es variable.

(13)

CONTENIDO

pág

INTRODUCCIÓN i

1. REVISIÓN BIBLIOGRÁFICA 3

1.1. EL PROBLEMA DEL ANÁLISIS MULTIOBJETIVO 3

1.2. MÉTODOS DE ANÁLISIS MULTIOBJETIVO 6

1.3. MÉTODOS QUE GENERAN UN CONJUNTO DE SOLUCIONES

NO DOMINADAS 6

1.4. MÉTODOS QUE ARTICULAN LA ESTRUCTURA

DE PREFERENCIAS DEL DECISOR 7

1.4.1. Métodos de clasificación 7

1.4.2. Métodos basados en distancias 8

1.4.3. Métodos basados en utilidades o valores 8

1.4.4. Métodos basados en dirección 8

1.4.5. Combinaciones 9

1.5. METAHEURÍSTICAS 9

1.6. ALGORITMOS GENÉTICOS 10

1.6.1. Modelo básico de los algoritmos genéticos 12 1.6.2. Ventajas de los algoritmos genéticos 14 1.6.3. Desventajas de los algoritmos genéticos 15 1.6.4. Algunas aplicaciones de los algoritmos genéticos 15

(14)

1.7. OPTIMIZACIÓN DE MÚLTIPLES OBJETIVOS USANDO

ALGORITMOS GENÉTICOS (MOGA) 16

1.7.1. Transformación de múltiples funciones objetivos a una

función objetivo 17

1.7.2. Vega 18

1.7.3. Ordenamiento lexicográfico 18

1.7.4. Uso de métodos multicriterio discretos como Electre

o Promethee 19

1.7.5. Ordenamiento de Pareto 19

1.7.6. Método que combina el método Vega y la Ordenación

del óptimo de Pareto 20

1.7.7. Método desarrollado por Jaramillo et al 20

2. DESCRIPCIÓN DEL PROBLEMA 23

2.1. PLANTEAMIENTO DEL PROBLEMA 23

2.2. VARIABLES DEL PROBLEMA 25

2.3. PARÁMETROS DEL PROBLEMA 25

2.4. RESTRICCIONES DEL PROBLEMA 27

2.5. FUNCIONES OBJETIVO DEL PROBLEMA 27

2.5.1. Minimizar la cantidad de tareas no programadas 27 2.5.2. Minimizar la variación de la carga de trabajo entre operarios 27 2.5.3. Minimizar el recorrido total de todos los operarios 27 2.5.4. Minimizar la variación de los recorridos entre operarios 28 2.5.5. Minimizar la variación del tiempo de duración de la tarea

Corte para todos los operarios 28

3. METODOLOGÍA DE SOLUCIÓN 29

3.1. DISEÑO DEL ALGORITMO GENÉTICO AL PROBLEMA 29 3.1.1. Codificación (alfabeto utilizado) 29

(15)

3.2. APLICACIÓN DEL MÉTODO ELECTRE III 41

4. ANÁLISIS DE LOS PARÁMETROS QUE CONTROLAN

EL ALGORITMO GENÉTICO 43

4.1. METODOLOGÍA 43

4.2. DESCRIPCIÓN DEL PROBLEMA UTILIZADO EN LAS PRUEBAS 45

4.3. PRUEBAS Y RESULTADOS COMPUTACIONALES 46

4.3.1. Probabilidad de cero 46

4.3.2. Número de iteraciones 47

4.3.3. Tamaño de población 49

4.3.4. Probabilidad de cruce y mutación 51

5. CASO DE APLICACIÓN 57

5.1. DATOS DEL PROBLEMA 57

5.2. RESULTADOS COMPUTACIONALES 61 5.3. ANÁLISIS DE RESULTADOS 62 CONCLUSIONES 64 RECOMENDACIONES 66 GLOSARIO 68 BIBLIOGRAFÍA 69 ANEXOS 71

(16)

LISTA DE TABLAS

pág

Tabla 1. Ejemplo importancia del objetivo 4 28

Tabla 2. Relación entre los genes y los parámetros del problema 31 Tabla 3. Asignación de puntos proporcional al nivel de separación

entre las camas 35

Tabla 4. Asignación de puntos de acuerdo a la diferencia entre

los números de las camas 35

Tabla 5. Ejemplo cálculo de los puntos correspondientes al

recorrido de un operario 36

Tabla 6. Ejemplos de relaciones de dominación entre alternativas 37 Tabla 7. Resultados parciales pruebas para número de

iteraciones, réplica 1 47

Tabla 8. Resultados parciales pruebas para número de

iteraciones, réplica 2 48

Tabla 9. Resultados finales pruebas para número de

iteraciones, réplica 1 48

Tabla 10. Resultados finales pruebas para número de

iteraciones, réplica 2 48

Tabla 11. Resultados parciales pruebas para tamaño

de población, réplica 1 49

Tabla 12. Resultados parciales pruebas para tamaño

de población, réplica 2 49

Tabla 13. Resultados finales pruebas para tamaño

de población, réplica 1 50

Tabla 14. Resultados finales pruebas para tamaño

(17)

Tabla 15. Resultados parciales pruebas para probabilidad de

cruce y mutación, réplica 1 51

Tabla 16. Resultados parciales pruebas para probabilidad de

cruce y mutación, réplica 2 52

Tabla 17. Resultados finales pruebas para probabilidad de

cruce y mutación, réplica 1 52

Tabla 18. Resultados finales pruebas para probabilidad de

cruce y mutación, réplica 2 53

Tabla 19. Cálculo de suplementos por descanso para las tareas

programadas en el caso de aplicación 60

Tabla 20. Resultados estudio de tiempos para las tareas

programadas en el caso de aplicación 60

Tabla 21. Valores óptimos de los objetivos del problema utilizado en

el caso de aplicación 61

Tabla 22. Alternativas no dominadas encontradas en el caso

de aplicación 61

Tabla 23. Ordenamiento propuesto por el método ELECTRE III en el

caso de aplicación 62

Tabla 24. Alternativas no dominadas encontradas con las pruebas

para número de iteraciones, réplica 1 71

Tabla 25. Alternativas no dominadas encontradas con las pruebas

para número de iteraciones, réplica 2 72

Tabla 26. Alternativas no dominadas encontradas con las pruebas

para tamaño de población, réplica 1 73

Tabla 27. Alternativas no dominadas encontradas con las pruebas

para tamaño de población, réplica 2 74

Tabla 28. Alternativas no dominadas encontradas con las pruebas

para probabilidad de cruce y mutación, réplica 1 75 Tabla 29. Alternativas no dominadas encontradas con las pruebas

(18)

LISTA DE FIGURAS

pág

Figura 1. Representación de las soluciones no dominadas 5 Figura 2. Representación de soluciones en cadenas y variables

en genes 10

Figura 3. Cruzamiento entre cadenas “padre” en el método GA 11

Figura 4. Mutación de cadenas genéticas 11

Figura 5. Esquema del Ordenamiento de Pareto para una población 20 Figura 6. Ejemplo de una programación de tareas en un cultivo de rosas 24 Figura 7. Ejemplo primera parte de la cadena o vector que representa

al problema 31

Figura 8. Ejemplo segunda parte de la cadena o vector que representa

al problema 31

Figura 9. Ejemplo de la cadena genética completa que representa

al problema 32

Figura 10. Distribución típica de camas en un bloque 34 Figura 11. Ejemplo de cruzamiento usando dos puntos

aleatorios de corte 39

(19)

LISTA DE GRÁFICOS

pág

Gráfico 1. Calidad de las soluciones en función de la probabilidad

de cruce, réplica 1 54

Gráfico 2. Calidad de las soluciones en función de la probabilidad

de cruce, réplica 2 54

Gráfico 3. Calidad de las soluciones en función de la probabilidad

de mutación, réplica 1 55

Gráfico 4. Calidad de las soluciones en función de la probabilidad

(20)

i

INTRODUCCIÓN

Uno de los problemas más importantes que afronta un cultivo de flores es la programación de su fuerza laboral, la cual muchas veces se práctica de forma artesanal debido principalmente a falta de investigación. En general, se distribuye el área cultivada entre el número de operarios disponibles, sin contar con las características propias de cada variedad cultivada, ni con las condiciones cambiantes de la producción, lo que puede conllevar por ejemplo a desequilibrios en la carga de trabajo de los operarios, generando atrasos en la ejecución de las tareas, afectando de esta manera la calidad y la productividad de la producción.

A partir de esta idea, el autor de la presente investigación, propone la utilización de técnicas que permiten acercarse, en algún grado a una solución del problema de programación de la fuerza laboral en un cultivo de rosas. El propósito es generar programaciones que alcancen satisfactoriamente ciertas metas u objetivos como pueden ser el equilibrio en la carga de trabajo asignada a cada operario, minimizar los desplazamientos que los operarios deban realizar para llegar a sus diferentes áreas asignadas, maximizar el cumplimiento de la demanda de tareas, etc.

Debido a la complejidad del problema, radicada en la cantidad de variables que se pueden presentar, al carácter entero de éstas, a la inclusión de más de un objetivo, los cuales no son lineales y al elevado costo de paquetes que podrían entregar soluciones de tipo determinístico, como por ejemplo una aplicación de programación matemática entera, se plantea el uso de un método metaheurístico el cual se diferencia de los métodos denominados “exactos” en que no garantiza encontrar el óptimo global, pero es más eficiente y flexible frente a un problema no estructurado o de alta dimensionalidad y a cambio, ofrece soluciones próximas al óptimo, aunque matemáticamente esto suele ser difícil de demostrar.

El estudio se centra en la utilización de una técnica Metaheurística llamada “Algoritmos Genéticos”, la cual está basada en el mecanismo de selección natural de los organismos vivos, para mejorar iterativamente un conjunto de soluciones factibles hasta obtener un conjunto de soluciones que pueda considerarse óptimo o seudo-óptimo. El modelo desarrollado se basa en el método de los algoritmos genéticos clásico para un solo objetivo, pero se le adicionaron características para el manejo de varios objetivos.

(21)

En general, acerca del estado en el que se presenta el problema no existen formulaciones o bibliografía relacionada. Se espera entonces que la implementación ofrezca acercamientos sin que estos sean necesariamente los óptimos.

El documento se divide en cinco capítulos. En el primer capítulo se presenta un marco teórico o revisión bibliográfica, donde se dan los conceptos básicos necesarios para entender el desarrollo de los siguientes capítulos. En el segundo capítulo se realiza una presentación formal del problema de programar las tareas para operarios en un cultivo de rosas, especificando las variables, los parámetros, las funciones objetivos y las restricciones del problema. En el tercer capítulo se presenta el desarrollo del problema, que incluye la descripción completa del algoritmo genético y el uso de un método de análisis multiobjetivo, que selecciona de un conjunto de alternativas propuestas por el algoritmo genético, la alternativa que pueda satisfacer más al decisor, articulando la estructura de preferencias del mismo. En el cuarto capítulo se presentan pruebas computacionales realizadas para analizar los diferentes parámetros que utiliza el algoritmo genético, con el objeto de determinar valores apropiados de los mismos, para de esta manera optimizar el proceso de optimización. En el quinto capítulo se presentan los resultados de la aplicación del algoritmo a un problema con datos cercanos a la realidad, con el objeto de evaluar la efectividad y viabilidad del mismo. Por último se presentan las conclusiones del trabajo y recomendaciones para aquellos que deseen continuar desarrollando alternativas que permitan acercarse a la solución del problema.

(22)

3

CAPÍTULO 1

REVISIÓN BIBLIOGRÁFICA

Este capítulo contiene los conceptos básicos necesarios para entender el desarrollo de los siguientes capítulos. Se empezará describiendo el problema del análisis multiobjetivo, se presentará una clasificación y una breve descripción de los principales métodos desarrollados para resolver este tipo de problemas. Más adelante se hablará de las metaheurísticas, dando especial énfasis al algoritmo genético, base de este trabajo. Finalmente se describirán algunos de los métodos más importantes desarrollados para solucionar problemas de tipo multiobjetivo usando algoritmos genéticos.

La información presente en este capítulo corresponde a la revisión de varias fuentes, las más importantes son Smith1 y Jaramillo23.

1.1 EL PROBLEMA DEL ANÁLISIS MULTIOBJETIVO

El uso de herramientas de Análisis Multiobjetivo para la selección de alternativas considerando múltiples objetivos en forma simultánea, es algo que ha sido propuesto desde hace ya más de tres décadas. Los planificadores y los organismos encargados de la toma de decisiones han reconocido desde hace muchos años la necesidad de considerar en el proceso de toma de decisiones objetivos adicionales al tradicional de eficiencia económica. Aunque inicialmente se hicieron esfuerzos por incluir estos objetivos en el análisis económico, se ha ido reconociendo la gran dificultad para evaluar, en términos económicos, algunos de los objetivos que se desean o que se deban considerar. Esta situación, ha señalado la necesidad de usar herramientas que permitan incluir múltiples objetivos en forma simultánea, de manera explícita, en el proceso de toma de decisiones. Los métodos de análisis multiobjetivo permiten incluir

1

SMITH, Ricardo et al. Decisiones con múltiples objetivos e incertidumbre. 2 ed. Medellín: UNIVERSIDAD NACIONAL DE COLOMBIA, Facultad de Minas, Posgrado Recursos Hidráulicos, 2000. p. 99 – 107.

2

JARAMILLO, Patricia. Métodos AMO para alternativas combinatoriales. Documento suministrado directamente por la autora, 2002.

3

________ Optimización de múltiples objetivos usando AG (MOGA). Documento suministrado directamente por la autora, 2002.

(23)

en el proceso de toma de decisiones objetivos económicos, sociales, ambientales, financieros, técnicos y de cualquier otro tipo, en donde algunos de ellos podrían estar representados por funciones matemáticas complejas mientras que otros, sólo por expresiones cualitativas.

Un problema de múltiples objetivos se puede representar matemáticamente mediante un vector de p dimensiones, en donde cada dimensión representa una función objetivo, que a su vez es un vector x de n variables. Esto es,

Z(x) = [Z1(x), Z2(x),……, ZP(x)]

El conjunto de las mejores soluciones es el que se denomina, en análisis multiobjetivo,

conjunto de soluciones no dominadas o no inferiores. Tal conjunto está constituido

por aquellas soluciones sobre las cuales no puede decirse que una es mejor que las otras cuando se consideran todos los objetivos propuestos.

Considérese, por ejemplo, el caso de dos objetivos que se quieren maximizar y que están representados por las funciones Z1(x) y Z2(x), en donde x X y X corresponde al

espacio de las posibles soluciones. Se podría entonces tener dos soluciones representadas por los vectores xA y xB para las cuales:

Z1(xA) > Z1(xB)

Z2(xA) < Z2(xB)

En este caso la solución A tiene un mejor valor del objetivo 1 que la solución B, pero esta última tiene un mejor valor del objetivo 2. No se puede decir que la solución A es mejor que la B o viceversa. Aquí aparece la primera gran diferencia entre el análisis del problema de múltiples objetivos y el de un solo objetivo. Si únicamente se estuviera considerando el objetivo 1, la solución A es definitivamente mejor que la solución B, pero si se consideran ambos objetivos las soluciones A y B son indistinguibles. Si cualquier otra solución que se considere tiene peores valores para ambos objetivos que las soluciones A y B, o tiene el valor de un objetivo igual y el del otro peor, se puede decir que las soluciones A y B constituyen el conjunto de soluciones no dominadas o no inferiores.

El conjunto de soluciones no dominadas puede definirse, para el caso en que todos los objetivos se están minimizando, como el conjunto S dado por Goicoechea et al4:

S = { x: x ∈ X, no existe otro x’ ∈ X tal que: Zi(x’) > Zi(x) para algún i {1,2,…, p}

Y Zk(x’) ≥ Zk(x) para todo k ≠ i}

En donde p representa el número de objetivos considerados, Zi(x) es el valor del

objetivo i para la solución x, y X el espacio de soluciones posibles.

4

GOICOECHEA, A., D.H. HANSEN and L. DUCKSTEIN. Multiobjective Decision Analysis with Engineering and Business Applications. New York: John Wiley and Sons, Inc., 1982. Citado por : SMITH et al, Op. cit., p. 100.

(24)

Es evidente entonces, a partir de la definición de S, que si en el espacio de los objetivos uno se mueve de una solución no dominada a otra y una función objetivo mejora, entonces una o más de las otras funciones objetivo deben tener peores valores.

Regresando al ejemplo de los dos objetivos Z1 y Z2, y suponiendo que los objetivos se

pueden dibujar en un plano definido por dos ejes coordenados, como se muestra en la figura 1, en donde, el área sombreada es el espacio de soluciones posibles y, ya que ambos objetivos son maximizados, el conjunto de soluciones no dominadas se define por la curva OABCDG denominada curva de transformación, también conocida como

frontera de Pareto. El punto B con respecto al punto C tiene mayor valor del objetivo 1

pero menor valor del objetivo 2. Los puntos ubicados en el espacio de soluciones posibles y no sobre la curva OABCDG siempre tendrán un punto sobre esa curva que los domina. Por ejemplo, el punto E es dominado por B al tener este último igual valor del objetivo 2 y mejor valor del objetivo 1, y el punto F es dominado por el punto C al tener este último igual valor del objetivo 1 y mejor valor del objetivo 2.

Figura 1. Representación de las soluciones no dominadas5

Los métodos de análisis multiobjetivo, como algoritmos de solución de problemas de optimización de múltiples objetivos, generan el conjunto de soluciones no dominadas. La solución al problema estará constituida por un conjunto de soluciones y no por una única solución. El decisor o la institución que lidera el proceso de toma de decisiones escogerá, del conjunto de soluciones no dominadas, la solución a implementar.

La selección de una solución específica del conjunto de soluciones no dominadas significa que el decisor ha manifestado de alguna manera, su preferencia por esa solución, la cual representa cierta combinación concreta de logros de los diferentes objetivos. En este contexto se podría hablar, en términos generales, de dos procesos en la toma de decisiones utilizando análisis multiobjetivo. En el primero, se define el conjunto de soluciones no dominadas y en el segundo, se selecciona la solución por implementar. Tal selección se hace teniendo en cuenta la estructura de preferencias que tiene el decisor sobre los diferentes objetivos considerados.

5

(25)

1.2 MÉTODOS

DE

ANÁLISIS

MULTIOBJETIVO

En la actualidad, son muchos los métodos de análisis multiobjetivo que se han desarrollado. En términos muy generales, se puede pensar que proponen una estructura de valoración diferente a la estructura económica, tratando de superar las limitaciones de esta última. La diferencia entre las distintas metodologías propuestas se presenta básicamente en dos aspectos: la estructura de valoración y la forma y el momento en el que definen y usan la estructura de preferencias del decisor.

Según Goicoechea et al6 y Duckstein et al7, los métodos se clasifican inicialmente en dos grandes grupos:

• Aquellos que generan el conjunto de soluciones no dominadas o no inferiores.

• Aquellos que articulan la estructura de preferencias del o de los decisores para encontrar una solución o un conjunto más reducido de soluciones.

1.3 MÉTODOS QUE GENERAN UN CONJUNTO DE SOLUCIONES NO

DOMINADAS

Estos métodos identifican, por diferentes procedimientos, un conjunto discreto y preferiblemente pequeño de soluciones factibles, eficientes o no dominadas. Estos métodos no usan las preferencias del decisor. Los métodos más conocidos de este grupo son:

• Método de las ponderaciones

• Método de las restricciones

• Métodos lineal multiobjetivo de Phillips

• Métodos lineal multiobjetivo de Zeleny

Los dos primeros son los más conocidos y aplicados. Ellos, al contrario de los otros métodos mencionados, no requieren que las funciones objetivo y las restricciones sean lineales.

Tanto el método de las ponderaciones como el de las restricciones, convierten el problema multiobjetivo en varios problemas de un solo objetivo variando mecánicamente algunos parámetros para obtener diferentes soluciones eficientes. Los métodos de Phillips y Zeleny actúan directamente sobre el vector objetivo.

6

GOICOECHEA et al, Op. cit. Citado por : SMITH et al, Op. cit., p. 103.

7

DUCKSTEIN, L., y A. TECLE. Multiobjective analysis in water resources : Notes NATO/ASI on “Stochastic Hydrology in Water Resources Systems Simulation and Optimization”. Peñíscola, España, 1989. Citado por : SMITH et al, Op. cit., p. 103.

(26)

1.4

MÉTODOS QUE ARTICULAN LA ESTRUCTURA DE

PREFERENCIAS DEL DECISOR

Estos métodos, consideran las preferencias del decisor, e intentan definir una solución o un conjunto de soluciones eficientes más reducido que el conjunto de soluciones no dominadas. Consisten en procesos de clasificación más estrictos que los que exigen la sola condición de no dominancia, la cual puede llegar a definir un conjunto con un número muy grande de soluciones, pero el decisor necesita implementar sólo una de esas alternativas. Usando la estructura de preferencias del decisor se selecciona del conjunto de soluciones no dominadas esa alternativa. Duckstein et al8 clasificó los métodos que articulan la estructura de preferencias del decisor teniendo en cuenta la formulación estructural básica del algoritmo. De acuerdo con este enfoque, los diferentes métodos se clasifican en cinco grupos: de clasificación, de distancia, de utilidad, de dirección, y combinaciones de los anteriores. Se presenta a continuación una breve descripción de cada uno de estos grupos y los métodos más importantes en cada uno de ellos.

1.4.1 Métodos de clasificación

Estas técnicas usan relaciones denominadas “de mejor rango” entre un conjunto discreto de alternativas para seleccionar la más satisfactoria para el decisor. Una relación de mejor rango representa el ordenamiento preferencial de un conjunto finito de alternativas. Es estos métodos, los parámetros que permiten establecer las relaciones de mejor rango entre alternativas constituyen la estructura de preferencias del decisor, y usando esas relaciones se define un conjunto de soluciones más reducido que el conjunto no dominado.

De estos métodos de clasificación, entre otros, pueden mencionarse los métodos ELECTRE I, II, III y IV, el método de valoración de preferencias sobre las tasas de intercambio, los Hiper y Meta Juegos, los procesos Analíticos Jerárquicos, el Método de Concordancia, la clasificación Conjuntiva, el Método de Exclusión, y los Métodos PROMETHEE I, II y III. Como se indicó anteriormente estas técnicas presentan características diferentes en cuanto a la complejidad y al proceso mismo de solución, y constituyen una muy buena herramienta para la solución de problemas con objetivos múltiples conflictivos. El punto de partida para la aplicación de estas metodologías es la evaluación de la tabla o matriz de alternativas versus objetivos o criterios, y la definición de la estructura de preferencias del decisor. En general, estos métodos suelen manejar criterios cuya evaluación pueda hacerse cualitativamente.

Entre los métodos de este grupo sobresalen los ELECTRE, no sólo por la forma sencilla de establecer la estructura de preferencias, sino también porque permiten el manejo de objetivos evaluados en términos cualitativos y por incorporar lógica difusa (imprecisa e incierta) en el proceso, como es el caso del ELECTRE III. Los ELECTRE son métodos constantemente referenciados y recomendados en la literatura para la solución de problemas de múltiples objetivos. En la sección 3.2 de este documento se hablará más

8

(27)

explícitamente del ELECTRE III, ya que este fue el método seleccionado para encontrar la solución final al problema del presente estudio.

1.4.2 Métodos basados en distancias

Estos métodos tratan de seleccionar la alternativa factible más cercana a una solución ideal propuesta. La solución ideal es la solución, generalmente no factible, más satisfactoria para el decisor. Para lograr esto, los métodos manejan el concepto de distancia entre los logros de las alternativas propuestas y los logros alcanzados por la solución ideal, la cual es usada como punto de referencia. En este caso el concepto de distancia entre dos puntos es usado como una medida de la preferencia, representando la similaridad o proximidad con respecto a coordenadas, dimensiones o atributos individuales. Los métodos basados en distancias, en general, definen primero el punto de referencia al cual se desea relacionar la solución buscada, y luego mediante algún procedimiento definen o escogen la solución factible buscada por proximidad con el punto de referencia. La diferencia más importantes entre las técnicas basadas en distancias es la forma como relacionan la solución buscada con el punto de referencia. Los métodos más conocidos dentro de este grupo son la Programación de Compromiso, Programación por Metas (Goal Programming) y SEMOPS. El método más utilizado dentro de este grupo es la Programación de Compromiso.

1.4.3 Métodos basados en utilidades o valores

Estos métodos asumen que la estructura de preferencias del decisor puede ser representada formal y matemáticamente por una función de valor si el problema es determinístico, o por una función de utilidad si hay alguna consideración de riesgo en el problema. La definición de la estructura de preferencias del decisor con base en funciones de valor o de utilidad debe cumplir con una serie de axiomas para poder ser aplicada. La mayoría de los métodos dentro de este grupo agregan de alguna manera las funciones individuales de valor o de utilidad de cada objetivo para definir una función de valor o de utilidad multiobjetivo. La alternativa con el mayor valor de esa función es considerada la mejor.

Los métodos más conocidos dentro de este grupo son las funciones de Valor Multiatributo, los Promedios Ponderados, la Teoría del Valor Medible, Método de Geoffrion, Método de Zionts-Wallenius, y los MAUT. De estos métodos los más conocidos en la literatura son los de las Funciones de Valor Multiatributo y los de Promedios Ponderados.

1.4.4 Métodos basados en dirección

Estos métodos son, en general, de tipo interactivo porque el decisor debe establecer una dirección preferida para encontrar una solución de compromiso. Al establecer la dirección de búsqueda no sólo se restringe el espacio del conjunto de soluciones no dominadas donde se debe buscar la solución final, sino que esa dirección representa la estructura de preferencias del decisor. Estos métodos comprenden casi todos los

(28)

métodos en los que se efectúa una articulación progresiva de la estructura de preferencias del decisor.

Los métodos más conocidos de este grupo son los métodos interactivos, los de Búsqueda Adaptiva, PROTRADE, STEP, y de Objetivo de Referencia.

1.4.5 Combinaciones

Además de los cuatro grupos de métodos presentados, existe una serie de métodos que no pueden ser clasificados en los grupos anteriores o que constituyen combinaciones o mezclas de los procedimientos típicos de esos grupos. Estos métodos no son muy conocidos y los más importantes de ellos son el Método Multiobjetivo Basado en Algoritmos Genéticos, el Algoritmo Elipsoide, el MOP Estocástico, el MISE, y el Método Lagrangiano.

1.5 METAHEURÍSTICAS

Existen problemas de la vida real, en los que las variables de decisión deben definirse dentro de un espacio discreto, pero en los que no existen unas pocas alternativas definidas, sino que el número de alternativas posibles es equivalente a todas las posibles combinaciones de todos los posibles valores de las variables. Estos problemas se han definido como problemas combinatoriales y en la última década se han realizado numerosas propuestas de métodos de optimización explícitos para este tipo de problemas. El objetivo de la optimización combinatorial es desarrollar técnicas eficientes para encontrar un mínimo o un máximo valor de una función de muchas variables discretas independientes y con gran cantidad de soluciones, sin tener que conocer los valores del objetivo de todas esas soluciones factibles.

Algunos ejemplos típicos de problemas combinatoriales son: la programación de tareas (por ejemplo, el proceso de producción en una fábrica), la selección de rutas a seguir (por ejemplo, el llamado problema del viajero), problemas de ensamble secuencial (por ejemplo, que orden seguir para colocar las piezas en la fabricación de un automóvil) y la selección de proyectos.

En la actualidad existen técnicas eficientes para encontrar la solución óptima de un problema combinatorial considerando un solo objetivo. La mayoría de estos métodos son de tipo heurístico. Estos se diferencian de los métodos denominados “exactos” en que no garantizan encontrar el óptimo global, pero son más eficientes y flexibles frente a un problema no estructurado o de alta dimensionalidad. A cambio, ofrecen soluciones próximas al óptimo, aunque matemáticamente esto suele ser difícil de demostrar.

Según Jaramillo9 los procedimientos metaheurísticos son una clase de métodos aproximados que están diseñados para resolver problemas difíciles de optimización combinatorial, en los que los heurísticos clásicos no son ni efectivos ni eficientes. Los

9

JARAMILLO, Patricia. Métodos AMO para alternativas combinatoriales. Documento suministrado directamente por la autora, 2002.

(29)

Metaheurísticos proporcionan un marco general para crear nuevos algoritmos híbridos combinando diferentes conceptos derivados de: inteligencia artificial, evolución biológica y/o mecanismos estadísticos.

El objetivo de los Metaheurísticos es desarrollar técnicas eficientes para encontrar una solución cerca al óptimo de una función de muchas variables discretas independientes y con gran cantidad de soluciones, sin tener que conocer los valores del objetivo de todas esas soluciones factibles.

Los métodos heurísticos siguen en general la estrategia de la mejora iterativa, es decir, el proceso comienza con una posible configuración del sistema para la cual se obtiene cierto valor de la función objetivo, se aplica luego una operación estándar de asignar nuevos valores a todas las partes del sistema en turno, hasta que descubre una configuración que mejore la función objetivo. La configuración reasignada se convierte en la configuración actual del sistema. El proceso continúa actualizando de esta forma la configuración hasta que no pueda obtenerse ninguna mejora en la función objetivo. Algunas de estas técnicas catalogadas como de inteligencia artificial (IA) son el recocido simulado, la búsqueda tabú, las redes neuronales y los algoritmos genéticos. Hasta ahora, esta última técnica es la que ha sido más investigada, usada y aplicada en problemas reales.

1.6 ALGORITMOS

GENÉTICOS

El método de optimización denominado “Algoritmos Genéticos” se basa en el mecanismo de selección natural de los organismos vivos. Fue ideado por Holland en 1975. El proceso busca mejorar iterativamente, mediante técnicas “genéticas”, un conjunto de soluciones factibles hasta obtener un conjunto de soluciones que pueda considerarse óptimo o seudo-óptimo. La técnica logra que ese conjunto inicial diverso converja a una única solución. El modelo concebido inicialmente considera variables de decisión que sólo pueden tomar los valores uno o cero. Versiones posteriores del método lo han ampliado para la resolución de problemas cuyas variables de decisión pueden tomar valores diferentes a uno y cero.

El proceso se inicia generando, en forma aleatoria, un conjunto de vectores o “cadenas” que representan una muestra de la población total de las posibles soluciones. Cada cadena está conformada por “genes” que identifican las variables de decisión y tiene como atributo el valor correspondiente de la función objetivo, el cual se ha denominado “aptitud” o “calidad” de la cadena.

0 1 1 0 1 1

Gen Cadena o cromosoma

(30)

El proceso usa secuencialmente tres operaciones básicas: selección, cruzamiento y mutación. La operación “selección” escoge de la población inicial (o la actual si la iteración es la inicial) las alternativas con mayor “calidad” para, a partir de estas, crear nuevas cadenas y potencializar así sus características dentro de las nuevas poblaciones. Esto se logra mediante la operación de “cruzamiento”, la cual crea nuevas “cadenas” mediante el intercambio genético entre pares de cadenas de muy alta “calidad” (Figura 3).

Padres Hijos

Figura 3. Cruzamiento entre cadenas “padre” en el método GA10

Las nuevas cadenas reemplazan a sus “padres” en la nueva población o “generación”. Debido a que ese tipo de proceso, puede provocar que se presente convergencia prematura a óptimos locales, o pierda diversidad rápidamente, se usa el operador denominado “mutación”, que cambia algunos valores de genes, elegidos aleatoriamente, de cada nueva:

0 1 1 0 1 1

0 1 0 0 1 1

Figura 4. Mutación de cadenas genéticas

Los procesos de selección, cruzamiento y mutación se repiten en varias iteraciones, creando una “generación” en cada una de ellas, con el propósito de mejorar la población. La clave del proceso es que los genes de una cadena seleccionada están agrupados convenientemente para tener un buen valor de la función objetivo. Intercambiando información genética entre cadenas padre, los hijos serán más favorables para la función objetivo que los padres. En teoría, rápidamente la población converge a cadenas resultantes de varias generaciones que tienen información genética idéntica y se obtiene así la solución óptima.

Los algoritmos genéticos permiten optimizar funciones altamente no lineales y no convexas. La exploración se hace simultáneamente entre varias alternativas y no de una en una, aumentando la diversidad en la búsqueda y evitando así que el proceso

10

(31)

converja rápidamente a óptimos locales. Esto hace que el proceso sea muy eficiente en comparación a los otros métodos combinatoriales.

Inicialmente, el decisor debe asignar valores a los diferentes parámetros requeridos para el proceso: El tamaño de la población de cada generación N, el número máximo de iteraciones maxIter, la probabilidad de cruzamiento pcruza, la probabilidad de

mutación pmutación, etc.

1.6.1 Modelo básico de los algoritmos genéticos

A continuación se describe, con mayor detalle, cada uno de los pasos del modelo básico de los algoritmos genéticos que optimiza un solo objetivo, sujeto a múltiples restricciones:

Paso 0: Generación de la población inicial

Se genera aleatoriamente un conjunto de N cadenas binarias correspondientes a alternativas factibles que conforman el conjunto inicial P0: cada cadena se genera

asignando aleatoriamente valores cero o uno a los “genes” o casillas que representan, en código binario, a las variables de decisión y verificando si la alternativa resultante cumple las restricciones. Si no las cumple no se tiene en cuenta esa cadena y se siguen generando cadenas hasta completar el tamaño requerido del conjunto P0.

El tamaño de la población es un factor muy importante para obtener eficiencia. La longitud de las cadenas afecta directamente al tamaño de la población. Largas cadenas precisan mayores poblaciones que cadenas cortas. Esto se debe al mayor número de posibles combinaciones de números enteros (al tener más posiciones la cadena) y a la necesidad de que el algoritmo genético posea una muestra suficientemente variada de soluciones para poder explorar eficientemente todo el espacio formado por las distintas topologías que están representadas por dichas soluciones. Una inadecuada elección en el tamaño de la población puede dar lugar a la obtención de una solución lejana de la óptima. Poblaciones muy pequeñas pueden dar lugar, dependiendo del tamaño del problema que se desea resolver, a la obtención de un mínimo local, siendo en ese caso la mutación quien debe actuar para evitar que el algoritmo se estanque en soluciones lejanas a la buscada.

Los siguientes pasos se repetirán para cada iteración t: Paso 1: Evaluación de la “calidad” de las cadenas

Para cada cadena x del conjunto Pt, se evalúan los valores de la función objetivo Z(x),

de la alternativa correspondiente. Este valor determina a su vez, la calidad de la cadena.

Paso 2: Verificación de fin del proceso

El algoritmo termina cuando la población ha convergido a una única cadena o ya se ha generado un número máximo de iteraciones maxIter o se ha dado un número determinado N de iteraciones sin mejorar la población. Si en la presente iteración no se cumple ninguna de estas condiciones se continúa con el siguiente paso.

(32)

Con base en el valor de la calidad, a cada cadena se le asigna una probabilidad de ser seleccionada para cruzarse con otras alternativas. A mayor calidad, mayor probabilidad de ser seleccionada como “padre”. La suma de las probabilidades asignadas a todas las alternativas es uno.

Paso 4: Generación de un nuevo conjunto Pt+1

Se genera un nuevo conjunto de N cadenas, con base en el actual conjunto Pt,

mediante los siguientes procesos:

Selección y cruzamiento: El modelo elige aleatoriamente de Pt (con base en la

probabilidad asignada en el paso anterior) un par de cadenas. Elige también aleatoriamente el punto en el que se hará un corte para intercambiar bloques binarios entre ellas y crear dos nuevas cadenas que las reemplazaran en la nueva población

Pt+1. al escoger un par de cadenas como “padres”, no necesariamente se cruzarán, sino

que se cruzaran con una probabilidad pcruza dada por el usuario tal que, la mayoría de

las cadenas seleccionadas para procrear sean cruzadas pero no todas. De esta forma algunos “padres” pasan intactos a la nueva población con el fin de evitar pérdida prematura de diversidad.

Mutación: A cada gen de las cadenas generadas se le asigna un número aleatorio de cero a uno considerando una distribución uniforme. Si el valor aleatorio es menor que

pmutación ese gen será mutado, es decir, se invertirá su valor de cero a uno o viceversa.

Una nueva cadena puede tener todos sus genes sin mutar.

En los artículos especializados Grefenstette11 y Bäck12 se señalan los valores adecuados de las probabilidades de cruce y de mutación, indicando unos rangos para dichos parámetros que ofrecen los mejores resultados para determinados problemas de optimización. Estos valores son: Probabilidad de cruce de 40% - 90%, y una probabilidad de mutación de 0.5% - 1%. Los valores dependen del tipo de problema a resolver y del método de eliminación o conservación de soluciones al pasar de una generación a otra. Una probabilidad de cruce de valor muy elevado ralentiza el desarrollo del algoritmo, dando además un sentido de búsqueda dirigida al algoritmo genético, ya que, en cada cruce, la información genética de algunas soluciones es lo que se utiliza para formar otras nuevas. Una probabilidad de mutación elevada produce una búsqueda aleatoria en la que a partir de unas determinadas soluciones se obtienen otras que surgen de la modificación de algunos bits de las primeras. Por estos motivos, es preciso calibrar de forma adecuada estos dos parámetros para evitar que la convergencia hacia una solución sea excesivamente rápida (probabilidad de cruce demasiado elevada) o que no converja (probabilidad de mutación excesivamente grande).

11

GREFENSTETTE, J. Optimization of Control Parameters for Genetic Algorithms. En: IEEE Trans. on Systems, Man, and Cybernetics, (January – February. 1986); p. 122 – 128. Citado Por: BERNAL, José Luis. Aplicación de algoritmos genéticos al diseño óptimo de sistemas de distribución de energía eléctrica. Zaragoza, España, 1998. Tesis Doctoral. Universidad de Zaragoza. p. 76. Citado Por: BERNAL, Op. Cit., p. 76.

12

BÄCK, T. Optimal Mutation Rates in Genetic Search. En: INTERNATIONAL CONFERENCE ON GENETIC ALGORITHMS. (5º : 1993 : San Mateo, CA). Proceedings of the Fifth International Conference on Genetic Algorithms. San Mateo, CA: Stephanie Forrest, 1993. Citado Por: BERNAL, Op. Cit., p. 76.

(33)

Los procesos de selección, cruzamiento y mutación se repiten con todos los pares de cadenas de Pt hasta que el conjunto generado Pt+1 tenga el mismo número de cadenas

que el anterior.

El proceso vuelve al paso 1.

Cuando el proceso termina, la solución es la alternativa correspondiente a la cadena de genes binarios a la que ha convergido la población. Como esto no siempre sucede, si el proceso termina debido a que se cumplió el número máximo de iteraciones o por otra razón, la solución la determina la cadena de la última generación Pmaxiter con mayor

valor de “calidad”.

1.6.2 Ventajas de los algoritmos genéticos

Según Jaramillo13, entre las ventajas de los Algoritmos Genéticos están:

• Permite funciones objetivo altamente no lineales.

• La búsqueda es guiada por información de valores de la función objetivo, que no necesita ser continua, diferenciable o unimodal. Esto es lo opuesto a los métodos de búsqueda basados en derivadas, como el método del gradiente.

• A diferencia de los otros métodos metaheurísticos, los Algoritmos Genéticos buscan en una población y no en un único punto. Esto incrementa la probabilidad de que no quede atrapado en un óptimo local.

• Permite trabajar en paralelo para encontrar a la vez un grupo de soluciones, a diferencia de la mayoría de los métodos clásicos en los que se genera una solución a la vez.

• Permite buscar soluciones en espacios de decisión multimodales complejos.

• Se comporta eficientemente con no convexidades, que generalmente no son manejables por los métodos de optimización tradicionales.

• Usa la función objetivo en si misma y no usa información derivada.

• Usa reglas probabilísticas en vez de determinísticas como la mayoría de métodos tradicionales.

1.6.3 Desventajas de los algoritmos genéticos

Según Jaramillo14, el Algoritmos Genético presenta también ciertas desventajas, pero la mayoría de ellas han sido evitadas con el uso de ciertas técnicas. Algunas son:

• Cómo tratar las restricciones. Según el problema es más conveniente usar solo alternativas factibles o no factibles permitiendo que estas pasen a la próxima

13

JARAMILLO, Patricia. Métodos AMO para alternativas combinatoriales. Documento suministrado directamente por la autora, 2002.

14

JARAMILLO, Patricia. Métodos AMO para alternativas combinatoriales. Documento suministrado directamente por la autora, 2002.

(34)

generación, penalizando su bondad de ajuste en función de la violación a las restricciones. Una buena estrategia es permitir en la población inicial únicamente cadenas que cumplen las restricciones. Usar solo alternativas factibles es útil cuando:

o No hay excesivas restricciones conflictivas, es decir, es fácil obtener aleatoriamente alternativas factibles, porque si no, hay excesivo costo computacional.

o Es fácil desarrollar operadores reparadores (es decir trucos que a partir de una alternativa no factible puedan volverla factible fácilmente, esto ya depende del problema y del ingenio del desarrollador y en particular para cada problema. Sin embargo dependiendo de la forma en que tales operadores sean usados, pueden causar pérdida de diversidad en la población.

1.6.4 Algunas aplicaciones de los algoritmos genéticos

A continuación se presentan aplicaciones que se han hecho de Algoritmos Genéticos en algunas áreas:

• Medio Ambiente:

o Cuales serán los tamaños de material que deben ser guardados si luego de ellos, serán extraídas porciones más pequeñas

o Encontrar la solución Optima de granjas donde se pueda tirar aguas residuales, de entre todas las granjas que hay en la zona

o Optimización simultánea de plantas químicas

• Mantenimiento de carreteras

• Organización de transporte público

• Biología Molecular y Fisicoquímica:

o Diseño de moléculas, Predicción de estructuras moleculares, problemas relacionados con polímeros.

• Ingeniería estructural:

o Optimización de estructuras

o Optimización de estructuras de acero en techos

• Búsqueda en base de datos:

(35)

1.7

OPTIMIZACIÓN DE MÚLTIPLES OBJETIVOS USANDO

ALGORITMOS GENÉTICOS (MOGA)

El problema de optimizar un único objetivo ha sido tema de interés durante muchísimo tiempo, pero un nuevo paradigma ha tomado gran importancia y es la optimización con múltiples objetivos. La mayor parte de los problemas de la vida real intentan alcanzar múltiples objetivos pero la carencia de metodologías y la dominación ideológica del paradigma mono-criterio (económico) hicieron que sólo el objetivo económico fuera considerado en los problemas de decisión. El interés en investigación sobre este hecho fue realmente tardío, pues sólo en las tres últimas décadas se han hecho desarrollos importantes al respecto. El mayor interés en análisis multiobjetivo ha surgido desde la Ingeniería por el frecuente carácter multicriterio de sus problemas reales.

El problema mayor del paradigma multiobjetivo es que generalmente los objetivos están en competencia. Por ejemplo, cada una de las opciones económicamente muy atractivas para un proyecto, puede causar significativos impactos en el medio ambiente y medio social en que está involucrado. Para el problema de decisión multiobjetivo MO, generalmente no existe una solución x que maximice simultáneamente todos los objetivos y que sea factible. Una salida viable al problema es transformar la búsqueda de la solución “óptima“ en la búsqueda de una solución “satisfactoria“. Esta solución debe ser eficiente aprovechando al máximo los recursos, es decir, si se desea mejorar en algún objetivo, esto sólo podría hacerse a expensas de otro. Existen muchas o infinitas soluciones eficientes, denominadas también no dominadas o no inferiores. Este conjunto de soluciones se denominan Pareto-óptimas. Para seleccionar una solución Pareto-óptima como solución satisfactoria y definitiva para el problema debe involucrarse las preferencias del decisor mediante valoraciones subjetivas. En la práctica se busca encontrar soluciones Pareto-óptimas y de entre ellas, debe hacerse una decisión final usando criterios de preferencia.

Si bien, problemas monocriterio suelen ser complejos por la alta dimensionalidad, se vuelve aún más complejo cuando se desea optimizar varios objetivos simultáneamente. A los problemas inherentes a la optimización debe sumárseles un mayor costo y dificultad computacional.

MOGA (Análisis Multiobjetivo con Algoritmos Genéticos) ha despertado interés desde hace casi 15 años. En la última década se han hecho propuestas muy interesantes con base en Algoritmos Genéticos para la optimización multiobjetivo, pero aún es un área de investigación reciente y con muchas preguntas abiertas.

Métodos MOGA han sido ampliamente usados en problemas de Ingeniería, en los que métodos de optimización clásicos no han sido efectivos. Por ejemplo, Leu et al15 diseñaron un algoritmo genético multiobjetivo para el Balanceo de Líneas de Montaje y

15

LEU, Yow-Yuh; MATHENSON, Lance and REES, Loren. Assembly line balancing using genetic algoritms witn heuristic-generated inicial populations and multiple evaluation criteria. En : Decision Sciences. Vol. 25, No. 4 (1994).

(36)

Jaramillo et al16 usaron MOGA en Planificación de Electrificación Rural. Han sido usados también en diseño de estructuras, diseño de maquinaria, problemas de programación, optimización de despacho de energía, etc.

Diferentes métodos exactos y metaheurísticos pueden adaptarse a varios problemas multiobjetivo para generar soluciones eficientes, pero no siempre es fácil. Lógicamente, lo primero que se pensó fue en usar una función que agrupara todas las funciones objetivo y esta se optimizaba de la misma manera que para un sólo objetivo, introduciendo en ella factores que reflejaran las preferencias del decisor. Esto quiere decir que el proceso genético (que a pesar de sus ventajas, puede ser un proceso de gran costo computacional) sólo obtiene una alternativa no dominada o eficiente. Si al decisor le es claro que, por ejemplo, prefiere evitar el impacto ambiental α veces más que su cuenta bancaria tal vez este sea muy buen método, pero usualmente no es así, y después de usar unos parámetros de preferencia y hacer una complicada y larga búsqueda puede darse cuenta que los resultados no le son muy satisfactorios y quisiera explorar de nuevo con otros parámetros. Es entonces más útil realizar, de una vez, una sola búsqueda en forma multidireccional (y no unidireccional como lo propone la optimización de un sólo objetivo) dentro del espacio de decisión y cada vez que se encuentre una buena alternativa, es decir, no dominada, se use como progenitora para una nueva generación combinándola con otras buenas alternativas con el fin de ir mejorando la población, para que al final se tenga un pequeño grupo de alternativas no dominadas, mucho más fácil de evaluar por algún método multicriterio involucrando, ahora sí, parámetros de preferencias. Es decir, que el proceso parta de un conjunto de alternativas no dominado que se va mejorando mediante técnicas genéticas hasta obtener un conjunto no dominado que no pueda mejorarse.

Existen un gran número de métodos propuestos para adaptar los Algoritmos Genéticos a la optimización multiobjetivo. Ellos pueden clasificarse, entonces, en dos categorías: Unos obtienen una única solución y otros obtienen un conjunto de soluciones Pareto-óptimas. La ventaja de los primeros es su eficiencia y la de los segundos sus múltiples resultados. A continuación se presentan los métodos más conocidos.

1.7.1 Transformación de múltiples funciones objetivo a una función objetivo

Estos métodos optimizan por el Algoritmo Genético clásico una función que agrega en forma ponderada las diferentes funciones objetivo. Esta clasificación conjuga varios de los métodos desarrollados para análisis multiobjetivo Clásico, como el método de los “Factores Ponderantes” que hace una suma ponderada de las funciones objetivo o la “Programación por Metas” que suma las distancias marginales a unos ideales o a unas metas. Estos métodos gozan de gran divulgación por su simplicidad, sin embargo, presentan ciertas dificultades:

• Los pesos tienen que ser preespecificados.

• Sólo ofrece una solución por proceso genético realizado.

16

JARAMILLO, Patricia; SMITH Q., Ricardo y ANDRÉU, Joaquín. Uso de algoritmos genéticos en la planificación de la electrificación rural considerando pequeños desarrollos hidroeléctricos. En : CONGRESO LATINOAMERICANO DE HIDRÁULICA. (19º : 2000 : Córdoba, Argentina).

(37)

• Para poder integrar en una misma función varias funciones, estas deben normalizarse, es decir llevarlas a una escala común para evitar que un objetivo pueda dominar sobre los otros.

• Respecto a la suma ponderada, es posible que no genere soluciones Pareto óptimas en presencia de espacios de búsqueda no convexos. Si se usa la formulación de Programación por Metas se requiere definir una meta por cada objetivo, por lo que se requiere que el decisor tenga un conocimiento anterior de los valores posibles. Puede usarse también la formulación del método de las restricciones el cual optimiza un objetivo y adiciona a las restricciones las demás funciones objetivo imponiéndoles límites máximos en sus logros. Esto consume mucho tiempo y costo computacional y además, tiende ha encontrar soluciones dominadas débilmente.

1.7.2 Vega

El método VEGA, sigue el modelo básico de los Algoritmos Genéticos pero, en cada evaluación de la aptitud de un individuo de la población, se escoge aleatoriamente uno de los objetivos para valorarla considerando únicamente ese objetivo; por ejemplo, si son dos objetivos, p1 es la probabilidad de que la cadena seleccionada sea calificada

por Z1 y (1 - p1) que sea calificada por Z2.

Es decir, diferentes fracciones de la población son seleccionadas de acuerdo a uno de los objetivos. Esas subpoblaciones son luego unidas y mezcladas, para luego aplicarse el cruzamiento y la mutación como se hace usualmente.

El método VEGA se asimila al método que integra en una sola función objetivo la suma ponderada de los objetivos, cuyos factores son las probabilidades asignadas a cada uno de los objetivos, por lo que es muy útil si el decisor tiene clara sus preferencias. Tiene un problema y es que esta técnica selecciona individuos excelentes en una dimensión sin mirar en otras dimensiones. Así, se generan individuos útiles para soluciones de compromiso pero que no sobreviven bajo este esquema de selección, ya que pueden producir valores excelentes para algún objetivo pero no necesariamente buenos para todos.

1.7.3 Ordenamiento lexicográfico

En este método el decisor expresa en orden de mayor a menor preferencia los objetivos, entonces los métodos optimizan el primer objetivo, luego el segundo imponiendo como restricción el valor obtenido para el primer objetivo, etc. Con base en esto Fourman17 propuso un método MOGA: cada par de cadenas se comparan según el objetivo de mayor prioridad. Si el resultado es un empate se usa el objetivo con segundo orden de prioridad y así continua.

Su desventaja es que tiende a favorecer ciertos objetivos y esto tiene la indeseable consecuencia de hacer que la población converja a una solución particular de la

17

FOURMAN M. P. Compaction of symbolic layout using genetic algorithms. En : Genetic Algorithms and their Applications: Proceedings of the First International Conference on Genetic Algorithms. (1º : 1985 : Lawrence Erlbaum). p. 141-153.

(38)

frontera de Pareto, en vez de delinearla completamente. Es útil cuando prima excesivamente un objetivo sobre los otros.

1.7.4 Uso de métodos multicriterio discretos como Electre o Promethee

En este caso al generar una nueva población, se aplica algún método discreto clásico de selección multicriterio como los ELECTRE o PROMETHEE: estos le asignan un número de orden a cada miembro de la población involucrando preferencias de los decisores, y de este orden dependerá su aptitud para la generación de la nueva población.

1.7.5 Ordenamiento de Pareto

Estos métodos, a diferencia de los anteriores, tratan de encontrar en un sólo proceso genético un conjunto de soluciones no dominadas como solución al proceso, pues no se espera que converja en una única solución, sino que el conjunto obtenido en la última iteración sea un conjunto de alternativas no dominadas o Pareto-óptimas.

Para evaluar la calidad de las cadenas, el método evalúa la matriz de pagos. Con base en ésta, a las alternativas que dominan sobre las otras alternativas, se les asocia un orden uno. Los valores de la matriz correspondientes a estas cadenas se remueven y se busca en la nueva matriz, las alternativas que ahora dominan sobre las demás para asociarles el segundo orden. Este proceso continúa de igual forma asignándole a las cadenas restantes órdenes consecutivos. Este proceso termina cuando todas las cadenas son ordenadas. La aptitud de cada cadena está asociada a su orden, es decir, se le asignará una probabilidad de ser seleccionada para combinar su material genético con otra cadena, en virtud del orden establecido: a menor orden, mayor probabilidad. Otra opción es asignar la aptitud de una cadena en función del número de alternativas que domina (Jaramillo18). Esto valora más que el orden de dominancia, su intensidad. En general, estos métodos siguen dos metas (i) encontrar soluciones muy cercanas a las soluciones Pareto-optimas y (ii) encontrar soluciones que difieran ampliamente una de otra, es decir que estén repartidas en la frontera de Pareto. La primera tarea implica satisfacer las condiciones de dominancia y la segunda tarea implica no sesgar las soluciones hacia alguna función objetivo en particular.

Estos métodos tienen una dificultad y es que no son algoritmos eficientes para chequear no dominancia en un conjunto de soluciones.

18

JARAMILLO, Patricia. Desarrollo de un sistema soporte a la decisión para la asignación de recursos naturales con satisfacción de múltiples objetivos y múltiples decisores. Valencia, España, 1999. Tesis Doctoral. Universidad Politécnica de Valencia.

Referencias

Documento similar

La campaña ha consistido en la revisión del etiquetado e instrucciones de uso de todos los ter- mómetros digitales comunicados, así como de la documentación técnica adicional de

Y tendiendo ellos la vista vieron cuanto en el mundo había y dieron las gracias al Criador diciendo: Repetidas gracias os damos porque nos habéis criado hombres, nos

Sanz (Universidad Carlos III-IUNE): &#34;El papel de las fuentes de datos en los ranking nacionales de universidades&#34;.. Reuniones científicas 75 Los días 12 y 13 de noviembre

(Banco de España) Mancebo, Pascual (U. de Alicante) Marco, Mariluz (U. de València) Marhuenda, Francisco (U. de Alicante) Marhuenda, Joaquín (U. de Alicante) Marquerie,

d) que haya «identidad de órgano» (con identidad de Sala y Sección); e) que haya alteridad, es decir, que las sentencias aportadas sean de persona distinta a la recurrente, e) que

La siguiente y última ampliación en la Sala de Millones fue a finales de los años sesenta cuando Carlos III habilitó la sexta plaza para las ciudades con voto en Cortes de

Las manifestaciones musicales y su organización institucional a lo largo de los siglos XVI al XVIII son aspectos poco conocidos de la cultura alicantina. Analizar el alcance y

Las probabilidades de éxito de este procedimiento serán distintas en función de la concreta actuación del reclamante antes de que se produjera la declaración de incons-.. En caso