UNIVERSIDADSIMONBOLIVAR …prof.usb.ve/gsanchez//tesis-gustavo sanchez.pdf · En primer lugar a la...
-
Upload
hoangquynh -
Category
Documents
-
view
215 -
download
0
Transcript of UNIVERSIDADSIMONBOLIVAR …prof.usb.ve/gsanchez//tesis-gustavo sanchez.pdf · En primer lugar a la...
UNIVERSIDAD SIMON BOLIVARDECANATO DE ESTUDIOS DE POST-GRADO
DOCTORADO INTERDISCIPLINARIO EN CIENCIAS
NUEVOS OPERADORES GENÉTICOS PARA EL DISEÑO DECONTROLADORES CON MULTIPLES OBJETIVOS Y RESTRICCIONES
NO-CONVEXAS
Tesis Doctoral presentada ante la Universidad Simón Bolívar por
Gustavo Adolfo Sánchez Hurtado
como requisito parcial para optar al grado académico de
DOCTOR EN CIENCIAS
con la asesoría de la profesora
Minaya Villasana
Mayo, 2011
v
AGRADECIMIENTOS
Quisiera manifestar mi agradecimiento a las personas que han colaborado para realizareste trabajo de investigación. En primer lugar a la profesora Minaya Villasana (USB)sin cuya valiosa asesoría hubiese sido imposible llevar a término el proyecto. En segundolugar a los profesores Miguel Strefezza y Ubaldo García Palomares (USB) por sus múltiplesrevisiones y comentarios. A los profesores Oliver Schüetze y Carlos Coello Coello por sucordial recibimiento y ayuda durante el tiempo en que estuvimos trabajando en conjuntoen las instalaciones del CINVESTAV, México. A los profesores Carlos González y OrlandoReyes (USB) por el apoyo recibido, tanto en el ámbito personal y profesional. Por último,a mi esposa, mis hijos, y a toda mi familia por el tiempo, la paciencia y la comprensiónque me han brindado.
vi
UNIVERSIDAD SIMON BOLIVARDECANATO DE ESTUDIOS DE POST-GRADO
DOCTORADO INTERDISCIPLINARIO EN CIENCIAS
NUEVOS OPERADORES GENÉTICOS PARA EL DISEÑO DECONTROLADORES CON MULTIPLES OBJETIVOS Y RESTRICCIONES
NO-CONVEXAS
Por: Gustavo Adolfo Sánchez HurtadoCarnet: 99-80737
Tutora: Prof. Minaya VillasanaFecha: Mayo, 2011
RESUMEN
En determinadas circunstancias, el diseño de un controlador automático debe ser for-mulado como un problema de optimización con múltiples objetivos y restricciones no-convexas. Desafortunadamente, no siempre estos problemas pueden resolverse mediantealgoritmos deterministas que garanticen la convergencia hacia una solución óptima. Enestos casos, los algoritmos aleatorios (y en particular los genéticos) pueden representaruna alternativa cuando se desea obtener mejores resultados. En efecto, la mayoría de losreportes publicados sobre el tema confirman de manera experimental la eficacia de estosalgoritmos para resolver problemas de diseño de controladores automáticos. No obstante,aún persisten en esta área de investigación numerosos aspectos por mejorar e importantesproblemas que considerar. En este contexto, la principal contribución del presente tra-bajo consiste en la propuesta y el análisis de nuevos operadores genéticos, especialmenteconcebidos para intentar obtener mejores aproximaciones de los Conjuntos de Pareto, encomparación con otros métodos competitivos citados frecuentemente en la literatura.
Palabras Claves: operadores de variación, diseño de controladores, optimización multi-objetivo, algoritmos genéticos, restricciones no convexas.
ÍNDICE GENERAL
APROBACIÓN DEL JURADO ii
AGRADECIMIENTOS v
RESUMEN vi
ÍNDICE DE TABLAS xi
ÍNDICE DE FIGURAS xiv
ÍNDICE DE ALGORITMOS xv
ÍNDICE DE SÍMBOLOS Y ABREVIATURAS xvi
1 INTRODUCCIÓN 1
1.1 Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Planteamiento del problema de investigación . . . . . . . . . . . . . . . . . 8
1.2.1 Consideración de las restricciones de diseño. . . . . . . . . . . . . . 8
1.2.2 Representación del espacio de búsqueda . . . . . . . . . . . . . . . . 9
1.2.3 Integración con operadores de búsqueda local . . . . . . . . . . . . 11
1.3 Estructura de la tesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2 SISTEMAS LINEALES REALIMENTADOS 15
2.1 Generalidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2 Índices de desempeño . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2.1 Índices de estabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2.2 Índices de respuesta temporal . . . . . . . . . . . . . . . . . . . . . 19
2.2.3 Rechazo de perturbaciones . . . . . . . . . . . . . . . . . . . . . . . 21
2.2.4 Estabilidad robusta . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3 Controladores PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3.1 Método de Ziegler y Nichols . . . . . . . . . . . . . . . . . . . . . . 23
2.3.2 Método de Hohenbichler y Abel . . . . . . . . . . . . . . . . . . . . 24
2.4 Reubicación de polos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
viii2.5 Diseño de controladores mediante LMIs . . . . . . . . . . . . . . . . . . . . 30
2.5.1 Problema H2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.5.2 Problema H∞ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.6 Resumen del capítulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3 OPTIMIZACIÓN MULTI-OBJETIVO 36
3.1 Definiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.2 Estrategias para resolver un problema multi-objetivo . . . . . . . . . . . . 39
3.2.1 Formulación de preferencias “a priori” . . . . . . . . . . . . . . . . 39
3.2.2 Formulación de preferencias de manera interactiva . . . . . . . . . . 41
3.2.3 Formulación de preferencias “a posteriori” . . . . . . . . . . . . . . 42
3.3 Algoritmos genéticos multi-objetivo . . . . . . . . . . . . . . . . . . . . . . 42
3.3.1 Operadores de variación . . . . . . . . . . . . . . . . . . . . . . . . 44
3.3.2 Esquemas de selección . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.3.3 Métodos de archivo . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.3.4 Tratamiento de las restricciones . . . . . . . . . . . . . . . . . . . . 48
3.3.5 Multi-Objective Genetic Algorithm (MOGA) . . . . . . . . . . . . . 49
3.3.6 Non-dominated Sorting Genetic Algorithm (NSGA-II) . . . . . . . 51
3.3.7 Strength Pareto Evolutionary Algorithm (SPEA2) . . . . . . . . . . 54
3.4 Evaluación de desempeño . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.4.1 Índices de desempeño . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.4.2 Pruebas estadísticas . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.5 Resumen del capítulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4 DISEÑO DE CONTROLADORES PID MULTI-OBJETIVO 63
4.1 Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.2 Método de diseño basado en el cálculo exacto de la región de estabilidad . 64
4.3 Método de diseño basado en la aproximación la región de estabilidad . . . 75
4.4 Resumen del capítulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5 BÚSQUEDA MULTI-OBJETIVO LOCAL 82
5.1 Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
5.2 Ascenso de Colina con Paso Lateral (ACPL) . . . . . . . . . . . . . . . . . 84
5.2.1 Caso sin información de gradientes . . . . . . . . . . . . . . . . . . 84
5.2.2 Caso con información de gradientes . . . . . . . . . . . . . . . . . . 89
5.2.3 Tratamiento de restricciones . . . . . . . . . . . . . . . . . . . . . . 90
5.3 Evaluación del operador ACPL . . . . . . . . . . . . . . . . . . . . . . . . 91
ix5.3.1 Problema convexo sin restricciones . . . . . . . . . . . . . . . . . . 91
5.3.2 Problema convexo con restricciones de intervalo . . . . . . . . . . . 95
5.3.3 Problema no convexo con restricciones de intervalo . . . . . . . . . 99
5.4 Sensibilidad del ACPL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
5.5 Integración SPEA2-ACPL . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
5.5.1 Problema convexo sin restricciones . . . . . . . . . . . . . . . . . . 106
5.5.2 Problema no convexo con restricciones de intervalo . . . . . . . . . 108
5.6 Resumen del capítulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
6 PROBLEMA H2/H∞ 112
6.1 Formulación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
6.2 Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
6.3 Solución mediante LMIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
6.4 Método MOPPEA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
6.5 Resultados numéricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
6.6 Resumen del capítulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
7 CONCLUSIONES 129
APÉNDICE 133
REFERENCIAS 137
ÍNDICE DE TABLAS
1.1 Promedio y desviación standard del valor mínimo alcanzado por cada algo-
ritmo, calculados sobre un total de 100 ejecuciones. Problemas P1 y P2 . . 11
2.1 Frecuencias singulares y ecuaciones de las rectas que delimitan la región de
estabilidad para KP = −4.4, modelo (2.26) . . . . . . . . . . . . . . . . . . 26
3.1 Resumen de ventajas y desventajas de los algoritmos MOGA, NSGA-II y
SPEA2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.2 Resumen de indicadores de desempeño . . . . . . . . . . . . . . . . . . . . 60
3.3 Ejemplo de valores obtenidos para el indicador I correspondientes a 7 eje-
cuciones de los algoritmos A1 y A2 . . . . . . . . . . . . . . . . . . . . . . 60
4.1 Proporción de individuos factibles para distintos valores de L, L . . . . . . 66
4.2 Configuración utilizada para los algoritmos A1 y A2. Problema de diseño
PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
4.3 Resultados obtenidos para el indicador de cobertura. Algoritmos A1 y A2 . 73
4.4 Resultados de los indicadores ESS y DMAX. Algoritmos A1 y A2 . . . . . 73
4.5 P-valores correspondientes a las pruebas de Wilcoxon para determinar las
diferencias que son estadísticamente significativas. Algoritmos A1, A2 . . . 73
4.6 Configuración utilizada por SPEA2 durante la primera etapa del método
de aproximación de la región factible . . . . . . . . . . . . . . . . . . . . . 78
4.7 Resultados del indicador de cobertura. Algoritmos A1, A2 y A3 . . . . . . 80
4.8 Resultados de los indicadores N, ESS y DMAX. Algoritmos A1, A2 y A3 . 80
4.9 P-valores correspondientes a las pruebas de Wilcoxon para determinar las
diferencias que son estadísticamente significativas. Algoritmos A1, A2 y A3 80
5.1 Parámetros que deben ser definidos por el usuario en los casos con y sin
información de gradientes . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5.2 Valores utilizados para los parámetros ACPL . . . . . . . . . . . . . . . . . 92
5.3 Valores utilizados para los parámetros ACPL. Problema P3 . . . . . . . . 100
5.4 Sensibilidad del operador ACPL1 ante variaciones en el vector r . . . . . . 101
5.5 Sensibilidad del operador ACPL1 ante variaciones en el vector Nnd . . . . 103
xi5.6 Configuración utilizada para resolver el problema P4 . . . . . . . . . . . . . 107
5.7 Indicadores GD/IGD obtenidos para el problema P4 . . . . . . . . . . . . 108
5.8 Configuración utilizada para las pruebas del problema P3 . . . . . . . . . . 108
5.9 Indicadores GD/IGD obtenidos para el problema P3 . . . . . . . . . . . . 109
5.10 Indicadores GD/IGD obtenidos para el problema P5 . . . . . . . . . . . . 109
6.1 Datos correspondientes a los problemas COMPleib . . . . . . . . . . . . . 122
6.2 Parámetros utilizados por SPEA2 y SPEA2-ACPL . . . . . . . . . . . . . 126
6.3 Resultados del indicador de cobertura . . . . . . . . . . . . . . . . . . . . . 127
6.4 Resultados de los indicadores ESS y DMAX . . . . . . . . . . . . . . . . . 127
ÍNDICE DE FIGURAS
1.1 Modelo a lazo cerrado en tiempo discreto. Controlador de dos grados de
libertad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 Sistema a lazo cerrado con controlador PID . . . . . . . . . . . . . . . . . 9
2.1 Sistema LTI a lazo abierto . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2 Interconexión Planta/Controlador (lazo cerrado) . . . . . . . . . . . . . . . 18
2.3 Diagrama de polos de un sistema con índices de estabilidad ns = 2, qa = 3 19
2.4 Diagrama de polos de un sistema con índices de estabilidad ns = 1, qa = 2 19
2.5 Indices de desempeño a partir de la respuesta ante un escalón unitario . . . 20
2.6 Lazo de realimentación con incertidumbre no estructurada ∆ . . . . . . . . 22
2.7 Lazo de control con PID ideal . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.8 Respuesta del sistema con los parámetros KD,KP , KI de acuerdo con las
fórmulas de Ziegler y Nichols . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.9 Límites de la región de estabilidad para KP = −4.4 para el modelo (2.26) . 27
2.10 Respuesta al escalón del sistema a lazo cerrado para el modelo (2.26) cor-
respondiente al controlador PID caracterizado por KP = −4.4, KI = 2.2 y
KD = −10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.11 Diagrama de polos (×) y ceros (◦) a lazo abierto para el modelo (2.26) . . 30
2.12 Respuesta al escalón del sistema a lazo cerrado, para el modelo (2.26).
Controlador diseñado mediante reubicación de polos. . . . . . . . . . . . . 30
3.1 Esquema general de un algoritmo genético . . . . . . . . . . . . . . . . . . 43
3.2 Operador discreto de cruce de un punto. El punto de cruce se encuentra en
la mitad del cromosoma. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.3 Operador discreto de cruce de dos puntos. . . . . . . . . . . . . . . . . . . 45
3.4 Ejemplo de cálculo de rango para el algoritmo MOGA . . . . . . . . . . . . 51
3.5 Ejemplo de cálculo de rango para el algoritmo NSGA-II . . . . . . . . . . . 52
3.6 Ejemplo de cálculo de crowding distance para el algoritmo NSGA-II . . . . 53
3.7 Ejemplo de cálculo de S y R para el algoritmo SPEA2 . . . . . . . . . . . 55
3.8 Ejemplo de cálculo de la distancia σ para el algoritmo SPEA2 . . . . . . . 56
xiii3.9 Ejemplo de dos aproximaciones con distintos valores para los indicadores
GD, IGD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.10 Ejemplo de cálculo para el indicador DMAX . . . . . . . . . . . . . . . . 59
3.11 Cálculo de los rangos para la prueba Wilcoxon . . . . . . . . . . . . . . . . 61
4.1 Espacio de controladores PID estabilizantes correspondiente al modeloG0(s)determinado mediante el método de Hohenbichler y Abel (2008) . . . . . . 66
4.2 Selección de un punto al azar en el interior de un polígono convexo . . . . 67
4.3 Lazo con controlador PID . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.4 Ejemplo de las aproximaciones obtenidas por A1 y A2 . . . . . . . . . . . . 71
4.5 Evolución de las aproximaciones de los frentes. Algoritmo A1. Ngen es el
número de generación. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
4.6 Evolución de las aproximaciones de los frentes. Algoritmo A2. Ngen es el
número de generación. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
4.7 Perturbación y ruido que actúan sobre el lazo . . . . . . . . . . . . . . . . 74
4.8 Salida del lazo de control, afectada por perturbación y ruido . . . . . . . . 74
4.9 Ejemplo de aproximación obtenida al final de la primera etapa . . . . . . . 78
4.10 Ejemplo de las aproximaciones que se obtienen mediante A1, A2 y A3 . . . 79
5.1 Situación que se presenta cuando el punto de prueba se encuentra lejos de
un COLP. Cono de descenso amplio (región sombreada). . . . . . . . . . . 85
5.2 Situación que se presenta cuando el punto de prueba se encuentra cerca de
un COLP. Cono de descenso estrecho (región sombreada). . . . . . . . . . . 85
5.3 Verdadero conjunto de Pareto para el problema P1 . . . . . . . . . . . . . . 92
5.4 Verdadero frente de Pareto para el problema P1 . . . . . . . . . . . . . . . 93
5.5 Aproximación del conjunto de Pareto generada por ACPL1. Problema P1 93
5.6 Aproximación del frente de Pareto generada por ACPL1. Problema P1 . . 94
5.7 Aproximación del conjunto de Pareto generada por ACPL2. Problema P1 94
5.8 Aproximación del frente de Pareto generada por ACPL2. Problema P1 . . 95
5.9 Verdadero conjunto de Pareto para el problema P2 . . . . . . . . . . . . . . 96
5.10 Verdadero frente de Pareto para el problema P2 . . . . . . . . . . . . . . . 96
5.11 Aproximación del conjunto de Pareto generada por ACPL1. Problema P2 97
5.12 Aproximación del frente de Pareto generada por ACPL1. Problema P2 . . 97
5.13 Aproximación del conjunto de Pareto generada por ACPL2. Problema P2 98
5.14 Aproximación del frente de Pareto generada por ACPL2. Problema P2 . . 98
5.15 Ejemplo de aproximaciones del frente de Pareto generadas por ACPL1 y
ACPL2. Problema P3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
xiv5.16 Aproximación obtenida mediante ACPL2 con ε1=[0.01, 0.01] . . . . . . . . 101
5.17 Aproximación obtenida mediante ACPL2 con ε2=[0.1, 0.1] . . . . . . . . . 102
5.18 Aproximación obtenida mediante ACPL2 con ε3=[1, 1] . . . . . . . . . . . 102
5.19 Aproximación obtenida mediante ACPL2 con εP = 0.01 . . . . . . . . . . . 103
5.20 Aproximación obtenida mediante ACPL2 con εP = 0.1 . . . . . . . . . . . 104
5.21 Aproximación obtenida mediante ACPL2 con εP = 1 . . . . . . . . . . . . 104
5.22 Aproximaciones obtenidas por ACPL1 para distintos valores del parámetro
Tol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
6.1 Modelo lineal a lazo cerrado . . . . . . . . . . . . . . . . . . . . . . . . . . 113
6.2 Representación genética propuesta. Método MOPPEA . . . . . . . . . . . 118
6.3 Ejemplo de las soluciones obtenidas por A1, A2 y A3. Problema AC1 . . . 123
6.4 Ejemplo de las soluciones obtenidas por A1, A2 y A3. Problema AC6 . . . 124
6.5 Ejemplo de las soluciones obtenidas por A1, A2 y A3. Problema NN10 . . 124
6.6 Ejemplo de las soluciones obtenidas por A1, A2 y A3. Problema WEC1 . . 125
6.7 Ejemplo de las soluciones obtenidas por A1, A2 y A3. Problema AC9 . . . 125
ÍNDICE DE ALGORITMOS
3.1 Extracción del sub-conjunto de soluciones no-dominadas . . . . . . . . . . . 42
3.2 Multi-Objective Genetic Algorithm (MOGA) . . . . . . . . . . . . . . . . . 50
3.3 Asignación de rango NSGA-II . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.4 Non-Dominated Sorting Genetic Algorithm (NSGA-II) . . . . . . . . . . . 53
3.5 Strength Pareto Evolutionary Algorithm 2 . . . . . . . . . . . . . . . . . . 54
5.1 Operador ACPL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
5.2 Retorno a la región factible para el operador ACPL1 . . . . . . . . . . . . . 90
6.1 Generación de una aproximación del Frente de Pareto para el problema mixto
H2/H∞ mediante LMIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
6.2 Generación de un vector de polos aleatorio . . . . . . . . . . . . . . . . . . . 121
ÍNDICE DE SÍMBOLOS Y ABREVIATURAS
LQR Linear Quadratic Regulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
x(t) Vector de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
u(t) Vector de señales manipuladas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
H2 Norma 2 en el espacio de funciones complejas . . . . . . . . . . . . . . . . . . . . . . 3
H∞ Norma infinita en el espacio de funciones complejas . . . . . . . . . . . . . . . . 3
LMI Linear Matrix Inequalities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
PID Proportional Integral Derivative . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
MOEA Multi-Objective Evolutionary Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . .8
MOGA Multi-Objective Genetic Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
G(s) Matriz o función de transferencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
SPEA2 Strength Pareto Evolutionary Algorithm 2 . . . . . . . . . . . . . . . . . . . . . . . . .5
MRCD Multi-objective Robust Control Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
NSGA− II Non-Dominated Sorting Genetic Algorithm . . . . . . . . . . . . . . . . . . . . . . . . 7
λ Vector de auto-valores de un sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
MOPSO Multiple Objective Particle Swarm Optimization . . . . . . . . . . . . . . . . . . .7
MOPPEA Multi-Objective Pole Placement with Evolutionary Algorithms . . . . 13
COMPleib COnstraint Matrix-optimization Problem library . . . . . . . . . . . . . . . . . .13
y(t) Vector de señales medidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
w(t) Vector de señales exógenas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
z(t) Vector de señales controladas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
Ln2 [0,+∞) Espacio lineal de señales de energía finita . . . . . . . . . . . . . . . . . . . . . . . . . 15
R Conjunto de los números reales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
C Conjunto de los números complejos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
nu Dimensión del vector de señales manipuladas . . . . . . . . . . . . . . . . . . . . . 15
nw Dimensión del vector de señales exógenas . . . . . . . . . . . . . . . . . . . . . . . . . 15
xvii
ny Dimensión del vector de señales medidas . . . . . . . . . . . . . . . . . . . . . . . . . 15
nz Dimensión del vector de señales controladas . . . . . . . . . . . . . . . . . . . . . . 15
n Dimensión del vector de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
|X| Número de elementos del conjunto X . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
ncl Grado del sistema a lazo cerrado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
ns Número de polos estables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
qa Abscisa del polo que se encuentra más a la derecha . . . . . . . . . . . . . . . 18
ess Error en estado estacionario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59
tr Tiempo de subida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
ts Tiempo de asentamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Mp Porcentaje de sobre-elongación máxima . . . . . . . . . . . . . . . . . . . . . . . . . . .20
R(s) Conjunto de funciones complejas racionales de coeficientes reales . . 21
KP Constante proporcional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
KI Constante integral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
KD Constante derivativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Tu Período de las oscilaciones críticas. Método de Ziegler-Nichols . . . . .24
Ku Ganancia de la cadena directa. Método de Ziegler-Nichols . . . . . . . . 24
POM Problema de optimización Multi-Objetivo . . . . . . . . . . . . . . . . . . . . . . . . 36
X Espacio factible de variables de decisión . . . . . . . . . . . . . . . . . . . . . . . . . . 36
n Número de variables de decisión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
M Número de funciones objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
x Vector de variables de decisión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
F Espacio Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
z1 z2 z1 domina a z2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37C(x,b) Cono de diversidad de tipo b en x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
COGP Conjunto Óptimo Global de Pareto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38
COLP Conjunto Óptimo Local de Pareto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38
FOGP Frente Óptimo Global de Pareto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
FOLP Frente Óptimo Local de Pareto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38
∇f Gradiente de f . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
xviii
IWTP Interactive Weighted Tchebycheff Procedure . . . . . . . . . . . . . . . . . . . . . . 41
µs Número total de individuos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
λs Número de hijos generados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
GD Distancia generacional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
IGD Distancia generacional inversa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .57
DMAX Distancia máxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .58
C Cobertura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
ESS Espaciado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
H0 Hipótesis nula . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
H1 Hipótesis alternativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
α Nivel de significancia de la prueba de Wilcoxon . . . . . . . . . . . . . . . . . . . 61
L,L Intervalo de variación para cada parámetro PID . . . . . . . . . . . . . . . . . . 65
Ns(L,L) Número de individuos factibles muestreados en L,L . . . . . . . . . . . . . .65
K Conjunto de controladores estabilizantes . . . . . . . . . . . . . . . . . . . . . . . . . .69
Vmax Volumen máximo del espacio de búsqueda . . . . . . . . . . . . . . . . . . . . . . . . 77
B(x0, r) Vecindario de definido alrededor de x0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Nnd Vector de límites para el cálculo de direcciones de diversidad . . . . . . 88
ε Parámetros para calcular la longitud del paso lateral . . . . . . . . . . . . . .88
ab Dirección acumulada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Niter Número de puntos muestreados en el vecindario del punto de origen 88
εP Tolerancia para decidir si un punto pertenece a P∗ . . . . . . . . . . . . . . . . .89
Tol Tolerancia para decidir si un punto es factible . . . . . . . . . . . . . . . . . . . . 90
rmax Cota para delimitar un semi-plano complejo . . . . . . . . . . . . . . . . . . . . . 120
imax Cota para delimitar un semi-plano complejo . . . . . . . . . . . . . . . . . . . . . 120
H2/H∞ Número de iteraciones del algoritmo basado en LMIs . . . . . . . . . . . . 122
∆γ2 Define el incremento en la cota de la inecuación H2 . . . . . . . . . . . . . . 122
∆γinf Define el incremento en la cota de la inecuación Hinf . . . . . . . . . . . . 122
γmin Define la mínima cota de la inecuación H2 . . . . . . . . . . . . . . . . . . . . . . .122γmax Define la máxima cota de la inecuación Hinf . . . . . . . . . . . . . . . . . . . . 122
CAPÍTULO I
INTRODUCCIÓN
El concepto de sistema es tal vez uno de los más fértiles en la historia de la ciencia y la
tecnología (Bertalanffy, 1950). Es posible definir un sistema real (compuesto por equipos,
maquinaria, objetos, etc) como una interconexión de componentes que intercambian infor-
mación, energía y materia, con la finalidad de lograr uno o varios objetivos. Un controlador
automático es un sistema que se interconecta con otro denominado planta, para intentar
que el conjunto se comporte de acuerdo a ciertas especificaciones establecidas previamente,
sin que sea necesario ningún tipo de intervención humana.
Los objetivos técnológicos que justifican la inversión económica que implica el proceso
de diseño, instalación y mantenimiento de un controlador automático pueden ser múltiples:
mejorar el funcionamiento, reducir costos, aumentar la seguridad, disminuir el consumo
de energía y/o la emisión de desechos, etc. Prácticamente todos los sistemas necesarios
para dar soporte a la vida humana moderna necesitan controladores automáticos para su
correcto funcionamiento (fábricas, máquinas, reactores, plantas de tratamiento de agua,
vehículos, turbinas, sistemas de bombeo, computadoras, equipos bio-médicos, etc). En
algunos casos resulta incluso imposible realizar las operaciones en modo manual (sin la
intervención de un controlador automático) debido a la complejidad de los procesos y la
necesidad de precisión y rapidez en la toma de decisiones.
1.1. Antecedentes
Hasta la segunda mitad del siglo XX, los métodos de análisis y diseño de contro-
ladores automáticos se basaban en la interpretación de diagramas y gráficos propuestos por
investigadores pioneros en el área tales como Bode, Evans, Nyquist y Nichols. De manera
sorprendente por su sencillez, estos métodos permitieron controlar sistemas de bajo orden,
de una sola entrada y una sola salida, obteniendo un desempeño aceptable para la época.
2A partir de 1960, la disponibilidad de equipos de computación cada vez más rápidos y
con mayor capacidad de memoria, hizo posible resolver problemas de mayor complejidad,
obteniendo al mismo tiempo mejor desempeño de los lazos de control. El diseño de un
controlador automático comienza a partir de entonces a formularse formalmente como un
problema de optimización con múltiples objetivos y restricciones. Es decir, se considera
que el proceso de diseño termina cuando se ha conseguido una solución que optimiza
un conjunto de funciones y satisface una serie de restricciones expresadas en forma de
desigualdades.
En este sentido, uno de los problemas de diseño multi-objetivo más conocidos es el
Linear Quadratic Regulator (LQR), el cual consiste en diseñar un controlador que estabilice
el sistema a lazo cerrado y que minimice al mismo tiempo dos cantidades: a) la norma
cuadrática de la desviación de los estados con respecto a su estado de reposo y b) la norma
cuadrática del esfuerzo de control (Kalman, 1960).
Considere por ejemplo un sistema lineal descrito por la ecuación de estado
•x(t) = Ax(t) + Bu(t) , x(0) = 0 (1.1)
que se supone controlable y observable. El problema LQR consiste en determinar el vector
de entrada u(t) en función del vector de estados x(t) de forma que la suma ponderada∫ ∞0 x(t)TQx(t)dt +
∫ ∞0 u(t)TRu(t)dt (1.2)
tenga el mínimo valor posible.
En esta formulación, las matrices Q y R juegan un papel importante ya que ayudan
a ponderar la influencia de cada término en el diseño final del controlador. De hecho,
considerar uno solo de estos términos a efectos de la determinación de una estrategia de
control, podría conducir a situaciones catastróficas.
Si se diseña una solución intentando minimizar la energía del vector de estados x(t), es
posible que aumente la energía de la señal de entrada u(t) de manera exagerada, lo cual
pudiera producir daños o al menos saturación de los actuadores.
Si por el contrario diseñamos el controlador intentando minimizar la energía de u(t),
entonces el tiempo de respuesta del sistema pudiera resultar demasiado lento y la acción
del controlador sería inocua. Es importante constatar que las dos cantidades que se desea
3minimizar se encuentran realmente en conflicto puesto que si se logra que una de ellas
disminuya, es probable que la otra aumente al mismo tiempo.
El ejemplo analizado en el párrafo anterior ilustra de manera sencilla la necesidad de
conseguir un compromiso entre diferentes criterios en conflicto, lo cual es un fenómeno am-
pliamente estudiado en ingeniería de control (rápidez vs precisión, desempeño vs robustez)
y en otras áreas tales como la economía (calidad vs costo, costo vs tiempo, etc).
De hecho, durante las últimas décadas se ha dedicado un enorme esfuerzo en el de-
sarrollo de métodos que permitan resolver problemas que involucran objetivos en conflicto,
en particular aquellos formulados en función de la normaH2 oH∞ de las matrices de trans-
ferencia características de un lazo (Apkarian et al, 2008; Boyd et al, 1994; Doyle et al,
1989; Scherer, 1997).
En este contexto, una de las estrategias que cuenta actualmente con mayor aceptación
consiste en reducir el problema (algunas veces al costo de obtener soluciones conservadoras)
a la determinación de la factibilidad de una inecuación matricial lineal (en inglés, LMI).
De acuerdo con el investigador Stephen Boyd (1994), la conexión entre el estudio de
las LMIs y los problemas de control fue establecida por primera vez aproximadamente
en 1892, año en que el matemático ruso Lyapunov demuestra en su tesis doctoral que el
sistema descrito por:
•x(t) = Ax(t) (1.3)
es estable, si y solo si existe una matriz S positiva definida tal que
ATS + SA < 0 (1.4)
Una de las principales ventajas de la formulación del problema de diseño en términos de
LMIs, es que existen herramientas de cómputo muy eficientes para decidir con respecto
a su factibilidad. De hecho, Boyd (1994) es catégorico al afirmar que “gracias a estas
herramientas, el problema teórico de control de sistemas lineales, tal como se planteaba
durante la etapa clásica, se encuentra definitivamente resuelto”.
No obstante, debido a diversas razones técnicas o económicas a menudo es nece-
sario adoptar una estructura pre-establecida para el controlador: Proporcional-Integral-
Derivativo (PID), compensador por adelanto/atraso, control decentralizado, etc. Tam-
bién puede ser necesario considerar índices de desempeño de muy variada naturaleza en
4diferentes canales de la planta (ver capítulo 2). Lo cual finalmente trae como consecuencia
que las funciones que intervienen en el problema de optimización sean no-convexas y que la
aproximación convexa (de tipo LMI por ejemplo) pueda resultar demasiado conservadora.
En estas circunstancias, una alternativa posible consiste en el empleo de algoritmos
aleatorios los cuales pueden ser aplicados para resolver el problema de diseño original,
sin necesidad de introducir aproximaciones conservadoras. De hecho, estos algoritmos
no exigen propiedades matemáticas tales como continuidad o convexidad, ni requieren
información sobre el gradiente de las funciones objetivo para su funcionamiento. Se basan
exclusivamente en el muestreo de un número determinado de puntos en el espacio de
búsqueda, acompañado de algún mecanismo que intenta guiar el proceso de búsqueda
hacia las regiones con mayor potencial para producir buenas soluciones.
En contrapartida, una importante desventaja de los algoritmos aleatorios es que en
general no garantizan convergencia hacia una solución óptima. De hecho, pueden producir
resultados diferentes (aunque bastante aproximados entre sí) cada vez que se ejecutan
a partir de las mismas condiciones iniciales: incertidumbre que genera serias dudas con
respecto a la confiabilidad en un entorno industrial, particularmente cuando se consideran
aplicaciones críticas y decisiones que deben tomarse en tiempo real.
A pesar de estos cuestionamientos, numerosos investigadores coinciden en que los algo-
ritmos aleatorios pueden representar una alternativa válida para intentar obtener mejores
resultados, cuando las soluciones obtenidas previamente por otros métodos no son com-
pletamente satisfactorias.
Dentro de este contexto, un algoritmo genético se define como un tipo de algoritmo
aleatorio que intenta simular el proceso de evolución biológica con el objeto de resolver
un problema de optimización. Desde hace más de una década se han utilizado para
resolver problemas en el área del control de procesos que involucran múltiples objetivos
en contradicción (Fleming, 2001). A continuación se presentan algunas referencias, con el
fin de dar una idea del trabajo desarrollado en esta área.
Uno de los primeros artículos fue presentado por Fonseca y Fleming (1994). Estos au-
tores describen una aplicación del algoritmo Multi-Objective Genetic Algorithm (MOGA)
para el diseño de un regulador lineal de segundo orden, parametrizado por su ganancia,
5sus polos y sus ceros, de la forma
C(s) = K(s + z1) (s + z2)(s + p1) (s + p2) (1.5)
La planta a lazo abierto estudiada tiene como función de transferencia
G(s) =−s + 4
s2 (s + 4)(1.6)
y consideran los siguientes objetivos de diseño:
1. Estabilidad del sistema a lazo cerrado
2. Valor medio cuadrático de la señal de control.
3. Valor medio cuadrático de la señal de salida.
4. Sensibilidad ante perturbaciones.
5. Sensibilidad ante incertidumbres en el modelo.
6. Estabilidad del controlador.
Los autores afirman que su método de diseño permite encontrar soluciones muy cer-
canas a las producidas resolviendo el problema LQR con distintos valores de las matrices
R y Q, pero considerando una estructura de control más sencilla.
Posteriormente, Fonseca (1995) publica su tesis de doctorado, en la cual presenta una
aplicación de MOGA para el control de una turbina de gas caracterizada por un sistema
de ecuaciones diferenciales no-lineales. Para este problema se propuso un controlador
parametrizado por 8 variables de decisión (ganancias) y 7 objetivos de diseño. Este autor
afirma que la presencia de múltiples discontinuidades y amplias mesetas en cada una de las
funciones objetivo, hace que los métodos que utilizan información de gradiente presenten
dificultades cuando se intentan aplicar a esta clase de problemas y justifica por ende el
enfoque genético.
Liu et al (1995) resuelven un problema de diseño con dos grados de libertad, tal como
es posible apreciar en la figura 1.1. El modelo de la planta a controlar viene dado en
tiempo discreto por
G(z) =b+(z)b−(z)
a+(z)a−(z)(1.7)
6
Figura 1.1: Modelo a lazo cerrado en tiempo discreto. Controlador de dos grados delibertad.
donde los polinomios b+(z) y a+(z) contienen los ceros y polos que el controlador puede
cancelar.
El problema consiste en diseñar las dos funciones de transferencia
C1(z) =g(z)a+(z)
(z − 1)d(z)b+(z)(1.8)
C2(z) = a0 +a1z
+a2z2 + . . . +
anzn (1.9)
donde los parametros ai , i ∈ {1, 2, . . . , n} y los coeficientes de los polinomios g(z) y d(z)
son las variables del problema de optimización.
El algoritmo genético que estos autores proponen es similar al Strength Pareto Evolu-
tionary Algorithm 2 (SPEA2) propuesto por Zitzler et al (2001). Comparan sus resultados
con respecto a los obtenidos mediante un método de optimización de tipo quasi-Newton
y en sus conclusiones afirman que logran disminuir los tiempos de subida, establecimiento
y sobre-elongación, utilizando para ello mayor energía en la señal de control.
En su tesis doctoral, Herreros (2000) presenta un estudio sobre el diseño de contro-
ladores robustos multi-objetivo por medio de algoritmos genéticos. Formula un problema
de tipo min-max que tiene como variables de decisión los coeficientes característicos de
la función de transferencia del controlador y del modelo de incertidumbre. Propone
un nuevo algoritmo llamado MRCD (Multi-Objective Robust Control Design) junto con
sus respectivos operadores. Para validar sus resultados, los compara con respecto a los
generados mediante LMIs. De acuerdo con el autor, el algoritmo genético produce mejores
aproximaciones (lo cual se ilustra gráficamente) aunque no presenta pruebas estadísticas
que sustenten esta afirmación.
7En 2002, Liu et al publican una monografía que cubre buena parte de los conceptos
básicos en el área de control multi-objetivo. Como idea novedosa proponen una codificación
genética de los individuos de la forma
p = (λ, R, L) (1.10)
donde λ es el vector de auto-valores, R es la matriz de auto-vectores derechos y L es la
matriz de auto-vectores izquierdos de la matriz de estados a lazo cerrado. Estos autores
consideran como objetivos de diseño las sensibilidades individuales de cada auto-valor.
En (Takahashi et al., 2004) se propone un algoritmo genético que asegura la generación
de un conjunto de soluciones que cumple con las condiciones necesarias para ser un Con-
junto de Pareto. Este algoritmo se aplica al problema de diseño mixto H2/H∞, con-
siguiendo, de acuerdo con los autores, mejores soluciones que las obtenidas mediante LMIs.
Sin embargo estos autores tampoco presentan pruebas estadísticas que sustenten este he-
cho.
En (Tan et al., 2005) se presenta un estudio sobre optimización multi-objetivo evo-
lutiva, con aplicaciones para problemas de ingeniería tales como control de procesos y
programación de horarios. Se presenta además una interfaz de diseño en MATLAB R©llamada MOEA-Toolbox, la cual permite la formulación y ejecución de los programas de
manera amigable (Joos, 2002).
En (Pedersen, 2005) se proponen algunas variaciones del algoritmo Non-Dominated
Sorting Genetic Algorithm (NSGA-II) para adaptarlo al diseño de controladores de bajo
orden en el dominio frecuencial. Se analiza con detalle el problema del escalamiento de las
funciones objetivo y su efecto en la evolución del proceso de búsqueda y en la distribución
final de las soluciones.
En los últimos años se han reportado aplicaciones de diversos conceptos novedosos
relacionados con dominancia y evolución. Por ejemplo, Martinez et al (2006) proponen
una estrategia de optimización multi-objetivo llamada Programación Física (PF) para
resolver problemas de control robusto. Heo et al (2006) utilizan el algoritmo Multiple
Objective Particle Swarm Optimization (MOPSO) para diseñar el controlador de una
planta generadora de energía eléctrica. En (Gambier et al., 2006) se propone un nuevo
método de diseño basado en juegos dinámicos cooperativos. En (Dellino et al., 2007)
se propone una metodología híbrida para resolver problemas de alta complejidad en un
8contexto multi-disciplinario. Finalmente, en (Wang et al., 2009) se presenta un algoritmo
que intenta optimizar la posición de los polos del sistema a lazo cerrado utilizando MOPSO.
1.2. Planteamiento del problema de investigación
A partir del análisis de las referencias presentadas en la sección anterior, es posible
constatar que se ha desarrollado un importante trabajo en el área de la aplicación de
Multi-Objective Evolutionary Algorithms (MOEAs) para resolver problemas de control
automático. En líneas generales, se ha puesto mucho énfasis en ilustrar las ventajas de esta
metodología de forma experimental, mediante casos de estudio y aplicaciones prácticas.
El gran desafío en esta área de investigación, tal como lo plantean en su trabajo Fleming
y Purshouse (2002), consiste en “convencer a los escépticos de que estos nuevos métodos
merecen plena confianza en un entorno industrial”. No obstante, todavía persisten nu-
merosos aspectos prácticamente inexplorados en esta dirección, algunos de los cuales se
introducen brevemente en los siguientes párrafos.
1.2.1 Consideración de las restricciones de diseño.
La restricción de estabilidad, por sólo nombrar un ejemplo, es fundamental para
cualquier diseño. Un sistema inestable no debe funcionar en la práctica, puesto que pueden
producirse daños o incluso destrucción de sus componentes.
El enfoque tradicional para atacar los problemas de control automático mediante algo-
ritmos genéticos consiste en definir una función para penalizar fuertemente a los individuos
inestables, de forma que en el transcurso del proceso evolutivo se logre que la población esté
compuesta por una mayoría de individuos estables. Como ejemplo, considere la función
de penalidad propuesta por Herreros (2000)
f(K) =
0 si max [Re(λ(K))] < 0
max [Re(λ(K))] en caso contrario(1.11)
donde K representa la matriz de transferencia del controlador evaluado y λ es el vector
de autovalores del sistema a lazo cerrado. Con esta función se penalizan los individuos
inestables (no factibles) con una cantidad igual a la mayor abscisa de estabilidad del
sistema a lazo cerrado. Aunque esta estrategia tiene la ventaja de ser muy fácil de im-
plementar, en la práctica puede producir fenómenos indeseados tales como convergencia
9prematura de la población. El reto consiste en explorar métodos alternativos que permi-
tan un manejo más eficiente de las restricciones tales como la generación de individuos
estables por construcción y/o la reparación mediante operadores especiales (ver capítulo
4 y 6).
1.2.2 Representación del espacio de búsqueda
Es posible representar matemáticamente un controlador lineal e invariante en el
tiempo, de una entrada y una salida, de dos formas:
• Mediante una función de transferencia
K(s) =amsm + am−1sm−1 + . . . + a1s + a0sn + bn−1sn−1 + . . . + b1s + b0 (1.12)
• Mediante un par de ecuaciones matriciales de estado
xK(t) = AKxK(t) + BKy(t)
u(t) = CKxK(t) + DKy(t)(1.13)
La ventaja de estas dos representaciones es que son generales y por lo tanto permiten
imponer cualquier estructura deseada para el controlador. Su desventaja es que, desde el
punto de vista de la búsqueda genética, no es sencillo generar y mantener individuos que
satisfagan restricciones de estabilidad. Para ilustrar este fenómeno, considere el modelo
de planta propuesto por Fonseca y Fleming (1993):
G(s) =4− s
s2 (4 + s)(1.14)
Suponga que se desea diseñar un controlador PID ideal mediante un algoritmo genético
y se decide adoptar una representación de los individuos que consiste simplemente en un
vector que contiene los parámetros KD, KP y KI característicos del controlador (ver figura
1.2).
Suponga además que en alguna etapa del proceso de búsqueda se seleccionan los
siguientes padres factibles (estabilizantes)
p1 =(KD1 KP1 KI1 ) =
(3.5 1 2
)(1.15)
p2 =(KD2 KP2 KI2 ) =
(3.5 2 6
)(1.16)
10
Figura 1.2: Sistema a lazo cerrado con controlador PID
los cuales generan los siguientes vectores de polos a lazo cerrado
λp1 =
−0.1781 + 3.5024i
−0.1781− 3.5024i
−0.0719 + 0.8033i
−0.0719− 0.8033i
(1.17)
λp2 =
−0.1972 + 3.0607i
−0.1972− 3.0607i
−0.0528 + 1.5964i
−0.0528− 1.5964i
(1.18)
Mediante el operador de cruce uniforme, estos dos individuos generan el par de hijos
h1 =(
3.5 2 2)
(1.19)
h2 =(
3.5 1 6)
(1.20)
los cuales a su vez generan los siguientes vectores de polos a lazo cerrado
λh1 =
0.0163 + 3.3630i
0.0163− 3.3630i
−0.2663 + 0.7978i
−0.2663− 0.7978i
(1.21)
11
λh2 =
−0.4214 + 3.3099i
−0.4214 + 3.3099i
0.1714 + 1.4582i
0.1714− 1.4582i
(1.22)
Puesto que ninguno de los hijos generados produce un sistema a lazo cerrado estable,
el objetivo que se plantea en este caso consiste en desarrollar representaciones alternas
del espacio de controladores que permitan mejorar el proceso de generación de indi-
viduos factibles y la exploración del espacio de búsqueda mediante operadores de variación
genética especialmente adaptados (ver capítulo 6).
1.2.3 Integración con operadores de búsqueda local
Una de las principales desventajas de los algoritmos genéticos es que no existen
garantías con respecto a la precisión de las soluciones obtenidas. Considere por ejemplo
que se desea resolver el problema de minimización de la función de Rosenbrock (P1)P1 : x1, x2 ∈ [−10, 10]min100(x2 − x21)2 + (1− x1)2 (1.23)
En la tabla 1.1 se muestra un ejemplo de los resultados obtenidos luego de 100 ejecu-
ciones de un algoritmo genético simple (GS) y 100 ejecuciones del algoritmo determinista
BFGS, de tipo quasi-Newton (Broyden, 1970). Se presenta el promedio y la desviación es-
tandard del menor valor de la función objetivo encontrado durante la ejecución de cada al-
goritmo. Para las pruebas se utilizaron poblaciones iniciales aleatorias (en el caso genético)
y punto inicial aleatorio (en el caso BFGS). Note que el promedio de la mejor solución
obtenida por el algoritmo genético es aproximadamente 1000 veces mayor que el promedio
logrado por BFGS.
Tabla 1.1: Promedio y desviación standard del valor mínimo alcanzado por cada algo-ritmo, calculados sobre un total de 100 ejecuciones. Problemas P1 y P2
P1 P2Genético 5.4271(7.3176) 1.1762(0.6551)BFGS 0.0042(0.0151) 42.0898(41.7667)
12Considere ahora el siguiente problema (P2)
P2 : x1, x2 ∈ [−10, 10]min2 + x21 − cos(20πx1) + x22 − cos(20πx2) (1.24)
A partir de la misma configuración utilizada en el caso anterior, se obtienen los resultados
mostrados en la tabla 1.1. Note que ahora el promedio BFGS es aproximadamente 35 veces
mayor que el logrado por el genético, lo cual se explica considerando que el algoritmo
determinista queda “atrapado” en cualquiera de los mínimos locales característicos del
problema P2.Los anteriores ejemplos permiten ilustrar un fenómeno sobre el cual existe bastante
consenso dentro de la comunidad de investigadores en el área: los algoritmos genéticos
facilitan la exploración (búsqueda gruesa), pero presentan serias limitaciones para la ex-
plotación de las regiones (búsqueda fina).
Surge entonces la idea de combinar la capacidad de exploración del algoritmo genético
con la capacidad de explotación de un operador de búsqueda local, para intentar que las
zonas más prometedoras sean correctamente aprovechadas. En la literatura, este tipo de
algoritmos reciben el nombre de meméticos (Moscato, 1989), haciendo referencia a las
unidades de difusión cultural llamadas memes (Dawkins, 1976).
En la actualidad son pocas las publicaciones en las que se reportan aplicaciones de
algoritmos meméticos para problemas de control automático (Caponio et al, 2007; Shyr
et al 2002; Wanner et al, 2008). Un objetivo que se plantea en este trabajo consiste en
producir de manera eficiente mejores soluciones considerando un algoritmo memético (ver
capítulos 5 y 6) en comparación con el genético puro.
1.3. Estructura de la tesis
En los próximos capítulos se presenta un conjunto de operadores, representaciones
genéticas y adaptaciones algorítmicas, especialmente concebidos para intentar obtener
mejores aproximaciones de los Conjuntos de Pareto, en comparación con otros métodos
competitivos citados comúnmente en la literatura.
En el capítulo 2 se introducen conceptos básicos relacionados con el control de sistemas
lineales a lazo cerrado. Se presenta el problema general de control, haciendo énfasis en
su formulación como un problema multi-objetivo. Se describen algunos índices que usual-
mente se utilizan para especificar los requerimientos que debe cumplir un controlador.
13También se repasan algunos métodos clásicos de diseño incluyendo PIDs, reubicación de
polos y LMIs.
En el capítulo 3 se introducen conceptos generales relacionados con la optimización de
múltiples objetivos, conjuntos y frentes de Pareto. Se hace un breve recuento de las ideas
que pueden utilizarse para resolver problemas de esta naturaleza, tomando en cuenta el
archivo de las soluciones no-dominadas y el tratamiento de las restricciones. Seguidamente
se describe el funcionamiento de los algoritmos MOGA, NSGA-II y SPEA2, junto con los
índices de desempeño y las pruebas estadísticas que se han propuesto para su evaluación.
En el capítulo 4 se proponen nuevos operadores de variación para el diseño de con-
troladores PID, basados en la generación y mantenimiento de individuos estables durante
del proceso de búsqueda. Se utiliza el método propuesto en (Hohenbichler & Abel, 2008)
para generar los vértices de la región factible correspondiente al sistema a lazo cerrado.
Adicionalmente se propone un nuevo método para aproximar la geometría de la región
factible, basado en muestreo aleatorio uniforme (Calafiore & Dabbene, 2006). Los resulta-
dos de este capítulo fueron previamente publicados en (Sánchez et al., 2008a) y (Sánchez
et al., 2009).
En el capítulo 5 se presenta un nuevo operador de búsqueda local llamado Ascenso de
Colina con Paso Lateral (ACPL) especialmente diseñado para problemas multi-objetivo.
En caso de no encontrar soluciones dominantes (como en el ascenso de colina tradicional),
el operador utiliza la información recolectada para intentar moverse hacia algún cono de
diversidad (paso lateral). También se presenta un análisis de la sensibilidad del operador
con respecto a sus parámetros característicos. Por último se propone un esquema para
la integración del ACPL con el algoritmo SPEA2, dando como resultado un algoritmo
memético denominado SPEA2-ACPL, para el cual se presentan los resultados obtenidos
durante las pruebas que se realizaron en el caso de un problema convexo y uno no-convexo.
Estos resultados fueron previamente publicados en (Schütze et al., 2008) y (Lara et al.,
2010).
En el capítulo 6 se propone un nuevo método de diseño de controladores llamado Multi-
Objective Pole Placement with Evolutionary Algorithms (MOPPEA), utilizando como
base del proceso de búsqueda a los algoritmos SPEA2 y SPEA2-ACPL. Se presentan los
resultados obtenidos para el diseño mixto H2/H∞ en el caso de cinco modelos extraidos de
COMPleib (Leibfritz, 2004) y se comparan con respecto a los obtenidos mediante LMIs.
14Los resultados del capítulo fueron publicados en (Sánchez et al., 2007) y (Sánchez et al.,
2008b).
Por último, se presentan las conclusiones del trabajo y se describen algunas direcciones
para futuras investigaciones.
CAPÍTULO II
SISTEMAS LINEALES REALIMENTADOS
En este capítulo se introducen algunos conceptos básicos relacionados con el control
de sistemas lineales a lazo cerrado. Se presenta el problema general de control, haciendo
énfasis en su formulación como un problema multi-objetivo. Se definen los índices que
usualmente se incluyen como parte de las especificaciones que debe cumplir un controlador
automático. Por último se realiza un breve repaso de tres estrategias bien conocidas
que se han sido propuestas para resolver problemas de diseño de controladores lineales:
sintonización PID, reubicación de polos mediante realimentación de estados y LMIs.
2.1. Generalidades
Un sistema lineal e invariante (ver figura 2.1) puede definirse mediante las ecua-
ciones de estado
x(t) = Ax(t) + Bww(t) + Buu(t)
z(t) = Czx(t) + Dzww(t) + Dzuu(t)
y(t) = Cyx(t) + Dyww(t) + Dyuu(t)
(2.1)
donde u ∈ Lnu2 [0,+∞) es el vector de señales manipuladas, w ∈ Lnw2 [0,+∞) es el vector
de entradas exógenas (perturbaciones), y ∈ Lny2 [0,+∞) es el vector de señales medidas, z
∈ Lnz2 [0,+∞) es el vector de señales controladas y x ∈ Ln2 [0,+∞) es el vector de estado
(el espacio L2[0,+∞) es definido en el Apéndice).
Figura 2.1: Sistema LTI a lazo abierto
16Las matrices A ∈ Rn×n, Bw ∈ Rn×nw , Bu ∈ Rn×nu, Cz ∈ Rnz×n, Cy ∈ Rny×n, Dzw ∈
Rnz×nw , Dzu ∈ Rnz×nu , Dyw ∈ Rny×nw y Dyu ∈ Rny×nu se denominan matrices de estado
del sistema a lazo abierto.
Un sistema se dice estable en el sentido BIBO (Bounded Input Bounded Output) si
a cualquier entrada acotada, corresponde una salida acotada. Es posible demostrar que
el sistema (2.1) es estable en el sentido BIBO si y sólo si los autovalores de la matriz
A pertenecen a C− (semi-plano abierto complejo izquierdo). En este caso se dice que la
matriz de estado A es de tipo Hurwitz.
Los conceptos de controlabilidad y observabilidad (Kalman, 1963) juegan un papel
importante para el diseño de controladores. Se dice que un sistema es controlable si es
posible transferir un estado inicial a cualquier otro estado finito en un intervalo de tiempo
finito. Si todos los estados son controlables, se dice que el sistema es completamente
controlable.
Por otro lado, un sistema es completamente observable si es posible reconstruir la
información de cada variable de estado en función de las mediciones de las salidas y las
entradas.
De esta forma, el sistema (2.1) se dice completamente controlable y observable si y sólo
si las matrices (Bu ABu · · · An−1Bu ) (2.2)
(Cy CyA · · · CyAn−1 )T
(2.3)
son de rango completo.
La Transformada de Laplace (también definida en el Apéndice) de los vectores y(t) y
z(t) se escribe
Z(s) = Gzw(s)W (s) + Gzu(s)U(s) (2.4)
Y (s) = Gyw(s)W (s) + Gyu(s)U(s)
con
Gzw(s) = Cz(sI − A)−1Bw + Dzw (2.5)
Gzu(s) = Cz(sI − A)−1Bu + Dzu
17Gyw(s) = Cy(sI −A)−1Bw + DywGyu(s) = Cy(sI −A)−1Bu + Dyu
donde Gzw(s), Gzu(s), Gyw(s) y Gyu(s) se denominan matrices de transferencia a lazo
abierto.
La necesidad de interconectar el sistema a lazo abierto con un controlador automático
surge de los siguientes hechos:
• Existen perturbaciones (cuya acción es imposible evitar) que desplazan al sistema
del régimen de operación deseado.
• Es imposible conocer con exactitud la estructura y/o los parámetros del sistema real
(incertidumbre).
• Ante las perturbaciones y en presencia de incertidumbre, el sistema debe reaccionar
de una manera que sería imposible lograr mediante un sistema a lazo abierto (sin
realimentación).
Cuando se interconecta el sistema (2.1) con un controlador lineal (ver figura 2.2)
representado por
xK = AKxK + BKy
u = CKxK (2.6)
el sistema a lazo cerrado resultante se escribe
xcl = Aclxcl + Bclwz = Cclxcl + Dclw (2.7)
donde
Acl =
A BuCK
BKCy AK + BKDyuCK , Bcl =
Bw
BKDyw (2.8)
Ccl =(Cz DzuCK ) , Dcl = Dzw
Por su parte la matriz de transferencia a lazo cerrado puede escribirse como
Gzwcl(s) = Gzw(s) + Gzu(s)K(s)(I −Gyu(s)K(s))−1Gyw(s) (2.9)
18
Figura 2.2: Interconexión Planta/Controlador (lazo cerrado)
con
K(s) = CK(sI − AK)−1BK (2.10)
Es evidente, a partir de estas ecuaciones, que no es trivial la selección de matrices AK, BKy CK tales que el sistema a lazo cerrado sea estable y cumpla con una lista predeterminada
de requerimientos.
2.2. Índices de desempeño
A menudo se requiere que las salidas del sistema a lazo cerrado sigan cierta
dinámica en respuesta a las perturbaciones y en presencia de incertidumbre. En otras
palabras, se requiere dotar a la conexión (figura 2.2) de propiedades que el sistema a lazo
abierto (figura 2.1) no posee de manera aislada.
En el transcurso de las últimas décadas, se han propuesto numerosos criterios o índices
para medir el desempeño de un controlador automático, es decir, para cuantificar que tan
bien cumple con los objetivos para los cuales fue diseñado. A continuación se definen
algunos de los más comunes.
2.2.1 Índices de estabilidad
Sea ncl el grado y λ el vector de polos del sistema a lazo cerrado. Es posible
considerar como índice de estabilidad el número de polos estables
ns = |{λi/Re(λi) < 0}| (2.11)
19o a la abscisa del polo que se encuentre más a la derecha en el plano complejo, sea qa tal
que
qa = maxi Re(λi) (2.12)
En las figuras 2.3 y 2.4 se muestra un ejemplo del cálculo de estos índices para dos
configuraciones de polos distintas. Note que de acuerdo al índice ns el primer sistema
sería mejor que el segundo. Con respecto al índice qa la conclusión sería exactamente la
opuesta.
Figura 2.3: Diagrama de polos de un sistema con índices de estabilidad ns = 2, qa = 3
Figura 2.4: Diagrama de polos de un sistema con índices de estabilidad ns = 1, qa = 2
2.2.2 Índices de respuesta temporal
Cuando el sistema a lazo cerrado es estable, es posible definir índices en función de
su respuesta temporal ante señales de prueba en distintos canales de entrada. Considere
el caso de un sistema de tipo Single-Input Single-Output (SISO).
20Para una entrada de referencia r(t) en forma de escalón, es decir
r(t) =
0 para t < 0
R para t ≥ 0(2.13)
el error en estado estacionario ess se define como:
ess = limt→∞ |r(t)− y(t)| (2.14)
donde y(t) es la respuesta del sistema. Note que de manera similar es posible definir el
error en estado estacionario para entradas más complejas tales como rampas, senoidales,
triangulares, etc.
El tiempo de subida tr al 90%, el tiempo de asentamiento ts al 5% y el porcentaje de
sobre-elongación máxima Mp pueden definirse como se muestra a continuación (ver figura
2.5).
1
1.05
0.95
0.90
ess
t
y(t)
trts
Mp(%)
Figura 2.5: Indices de desempeño a partir de la respuesta ante un escalón unitario
tr(90%) =arg mint {t : y(t) = 0.9× limt→∞ y(t)
}(2.15)
ts(5%) =arg maxt {∣∣∣y(t)− limt→∞ y(t)∣∣∣ ≥ 0.05
}(2.16)
Mp =
‖y(t)‖∞− limt→∞ y(t)‖y(t)‖∞ × 100 si ‖y(t)‖∞ > limt→∞ y(t)
0 en caso contrario(2.17)
21Uno de los conflictos más comunes cuando se analiza la respuesta de un sistema a lazo
cerrado es el que existe entre el tiempo de subida tr y el porcentaje de sobre-elongación
máximaMp. En efecto, si se diseña el controlador para obtener el menor tiempo de subida,
es probable que se obtenga al mismo tiempo una mayor sobre-elongación.
Un problema de diseño multi-objetivo que hiciera intervenir los cuatro índices que se
acaban de definir más la restricción de estabilidad pudiera plantearse como
minK∈R(s)nu×ny ( ess(K) tr(K) ts(K) Mp(K))
sujeto a:
qa(K) < 0
(2.18)
2.2.3 Rechazo de perturbaciones
Sea w(t) una perturbación cuyo efecto sobre la salida z(t) es necesario rechazar y
Gzwcl(s) la matriz de transferencia definida en (2.9). El rechazo de la señal de perturbación
puede medirse en función de una norma (ver Apéndice A) tal como
‖W (s)Gzwcl(s,K)‖i (2.19)
donde i ∈ {1, 2,∞} y la matriz W (s) se incluye de manera arbitraria para ponderar la
importancia de las bandas de frecuencia en las cuales w(t) concentra su mayor energía.
Considere por ejemplo una perturbación en forma de impulso unitario w(t) = δ(t).
Para minimizar la energía de la señal de salida, se debe plantear un problema de la forma
minK∈R(s)nu×ny ‖W (s)Gzwcl(s,K)‖2sujeto a
qa(K) < 0
(2.20)
Si en lugar de minimizar la energía de la señal de salida se necesita minimizar su
máxima amplitud (por ejemplo para prevenir posibles situaciones peligrosas), se debe
entonces plantear el problema
minK∈R(s)nu×ny ‖W (s)Gzwcl(s,K)‖∞sujeto a
qa(K) < 0
(2.21)
222.2.4 Estabilidad robusta
Ningún modelo matemático puede predecir con absoluta certeza la respuesta de
un sistema en condiciones reales de funcionamiento. En consecuencia, cualquier método
de diseño de controladores debe considerar este hecho, introduciendo incertidumbre en el
modelo.
Considere por ejemplo el lazo mostrado en la figura 2.6. La matriz de transferencia
∆(s) representa una incertidumbre no estructurada que se adiciona al modelo de la planta
a lazo abierto G(s). Suponga que ∆(s) esté acotada de forma que se cumpla
‖∆(s)‖∞ ≤ 1 (2.22)
Entonces es posible demostrar que el sistema a lazo cerrado es estable si y sólo si se cumple∥∥K(s) (I + G(s)K(s))−1∥∥∞ < 1 (2.23)
Figura 2.6: Lazo de realimentación con incertidumbre no estructurada ∆
De manera general, se considera que mientras menor sea la norma que aparece en lado
izquierdo de la desigualdad (2.23) más robusto será el lazo de control con respecto las
incertidumbres sobre el modelo de la planta. Sin embargo, a medida que se mejora la
robustez del diseño, es posible que se degrade al mismo tiempo el desempeño del lazo
medido en términos de la norma de otro canal del modelo. De esta forma se constata
nuevamente la necesidad de adoptar un enfoque multi-objetivo en el tratamiento de los
problemas de diseño.
2.3. Controladores PID
De acuerdo con Åström y Hägglund (1995) cerca del 95% de los controladores
instalados en la industria son del tipo Proporcional-Integral-Derivativo (PID). Su principal
23ventaja en la práctica consiste en que vienen pre-programados en los equipos electrónicos
comerciales y por ende son bien conocidos tanto por los ingenieros como por los operadores
y responsables del mantenimiento de las plantas.
Desde un punto de vista teórico, un PID asegura un error en estado estacionario nulo
para una referencia en forma de escalón gracias a su efecto integrador. Por otro lado, la
acción derivativa interviene cuando hay cambios bruscos en el error (si el error cambia
lentamente, la contribución principal se debe a los modos proporcional e integral).
Considerando las ventajas expuestas anteriormente, se entiende la necesidad de veri-
ficar si es posible resolver un problema de diseño mediante una estructura PID (o alguna
adaptación de la misma) antes de considerar soluciones más complejas.
En la literatura es posible encontrar varias formas para expresar la función de trans-
ferencia de un controlador PID. La más simple es la conocida como forma ideal
KPID(s) =KDs2 + KPs + KI
s(2.24)
caracterizada por tres parámetros realesKD, KP , KI que deben ser ajustados por el diseñador
del sistema de control (ver figura 2.7).
Figura 2.7: Lazo de control con PID ideal
2.3.1 Método de Ziegler y Nichols
El investigador Aidan O’Dwyer (2006) ha contabilizado 408 reglas para el ajuste
de los parámetros PID, de las cuales 293 fueron propuestas después de 1992. Una de las
más importantes históricamente fue publicada por Ziegler y Nichols en 1942 y consiste
básicamente en las siguientes fórmulas
KP = 0.6Ku (2.25)
KI = 1.2KuTu
KD = 0.075KuTu
24donde Tu es el período de las oscilaciones que se obtienen a lazo cerrado cuando se in-
crementa progresivamente la ganancia de la cadena directa desde cero hasta el valor Ku.Considere el siguiente modelo a lazo abierto
G(s) =−0.5s4 − 7s3 − 2s + 1
(s + 1)(s + 2)(s + 3)(s + 4)(s2 + s + 1)(2.26)
Para este modelo, las oscilaciones críticas se obtienen para Ku = 6.2 y el período de
las oscilaciones es Tu = 4.2 lo cual, según las fórmulas de Ziegler y Nichols corresponde
a KP = 3.7, KI = 1.8 y KD = 1.95. La respuesta del sistema a lazo cerrado ante una
entrada de referencia en forma de escalón se muestra en la figura 2.8. Para este controlador,
los índices de respuesta temporal tienen los siguientes valores ess = 0, tr(90%) = 24.5,
ts(5%) = 30.9 y Mp = 0.
0 20 40 60 80 100−0.5
0
0.5
1
t
y(t)
Figura 2.8: Respuesta del sistema con los parámetros KD,KP , KI de acuerdo con lasfórmulas de Ziegler y Nichols
Aunque goza de mucha aceptación debido a su sencillez, el ámbito de aplicación del
método de Ziegler y Nichols, y de la mayoría de los métodos similares, es bastante limitado.
Por ejemplo, ninguno garantiza el logro de un compromiso satisfactorio entre un conjunto
de índices de desempeño, en relación con los problemas de diseño multi-objetivo formulados
en la sección anterior.
2.3.2 Método de Hohenbichler y Abel
Cuando se decide adoptar una estrategia de control PID, surge la duda acerca de
cuáles son los valores de los parámetrosKP ,KD, KI (si es que éstos existen) que garantizan
la estabilidad del sistema a lazo cerrado.
25En este sentido, Hohenbichler y Abel (2008) propusieron un método para calcular
los límites de la región de controladores PID estabilizantes en el espacio (KP , KD,KI).
Dado un modelo de planta G(s) a lazo abierto, estos autores demostraron que es posible
determinar los intervalos de la ganancia proporcional KP tales que exista al menos un
plano (KD, KI) estabilizante. La única limitación para este resultado es que el sistema a
lazo abierto no posea ceros en el eje imaginario.
La idea básica de dicho método se fundamenta en el teorema propuesto en (Ackermann
& Kaesbauer, 2003), el cual afirma que las regiones estabilizantes en el planoKI−KD para
unKP fijo, están formadas por polígonos convexos cuyos vértices pueden ser determinados.
Considere una función de transferencia a lazo abierto expresada como:
G(s) =A(s)
R(s), B(s) = sR(s) (2.27)
con
A(s) = amsm + am−1sm−1 + . . . + a1s + a0, am = 0 (2.28)
B(s) = bnsn + bn−1sn−1 + . . . + b1s, bn = 0
y para un valor s = jω, denote:
RA(ω) = Re [A(jω)] , RB(ω) = Re [B(jω)] (2.29)
IA(ω) = Im [A(jω)] , IB(ω) = Im [B(jω)]
Suponga que se interconecta G(s) con un controlador PID ideal de manera que la ecuación
característica del lazo cerrado se escriba como (ver figura 2.7):
P (s) =(KDs2 + KP s + KI)A(s) + B(s) = 0 (2.30)
Ackermann y Kaesbauer (2003) demostraron el siguiente resultado: Para un valor fijo
de KP , la región de estabilidad del polinomio P (s) en el plano KI −KD está compuesta
por polígonos convexos, cuyos vertices se definen mediante la intersección de las siguientes
rectas:
KI = 0 (2.31)
KD =
0 si n < m + 2
− bnam , si n = m+ 2
∞, si n > m+ 2
(2.32)
26
KI = KDω2 − RA(ω)RB(ω) + IA(ω)IB(ω)
R2A(ω) + I2A(ω)(2.33)
donde ω > 0 (denominada frecuencia singular) es solución real de la ecuación
ω =IA(ω)RB(ω)−RA(ω)IB(ω)
KP (R2A(ω) + I2A(ω))(2.34)
Considere la función de transferencia propuesta anteriormente en (2.26). Para KP =
−4.4 las rectas que delimitan la región de estabilidad en el plano KI −KD , junto con sus
respectivas frecuencias singulares, se muestran en la tabla 2.1. En la figura 2.9 se grafican
dichas rectas, de manera que es posible observar los límites de la región de estabilidad
para este valor particular de KP .La respuesta al escalón del sistema a lazo cerrado correspondiente a los valores KP =
−4.4, KI = 2.2 y KD = −10 se muestra en la figura 2.10. En este caso los índices
de respuesta temporal tienen los siguientes valores ess = 0, tr(90%) = 15.9, ts(5%) =
32.6 y Mp = 17%. Note que a diferencia del lazo diseñado mediante Ziegler-Nichols,
esta respuesta presenta mayor sobre-elongación pero en contrapartida presenta un menor
tiempo de subida. Queda claro entonces que el valor de los índices de desempeño del
sistema a lazo cerrado dependen de la posición del vector de parámetros KP ,KI , KD en
el espacio de controladores estabilizantes.
Tabla 2.1: Frecuencias singulares y ecuaciones de las rectas que delimitan la región deestabilidad para KP = −4.4, modelo (2.26)
ω KI −KD- KI = 0- KD = ∞
0.32 KI = 0.1KD + 6.83.65 KI = 24KD − 88.8
27
−70 −60 −50 −40 −30 −20 −10 0
−4
−2
0
2
4
6
8
KD
KI
Figura 2.9: Límites de la región de estabilidad para KP = −4.4 para el modelo (2.26)
2.4. Reubicación de polos
En esta sección suponga que se desea diseñar un controlador para el sistema lineal
x(t) = Ax(t) + Bu(t)
y(t) = Cx(t) + Du(t)(2.35)
que se supone controlable y observable. Considere el cambio de variables de estado definido
mediante
x = Tx, u = Ru+ Fx (2.36)
donde T y R son matrices invertibles. Se obtiene de esta forma una representación
equivalente del sistema a lazo abierto:
·x= (T−1AT + T−1BF )x + (T−1BR)u
y = (CT + DF )x + DRu(2.37)
Por otra parte, si el vector de estados se encuentra disponible y se realimenta mediante
una matriz estática K ∈ Rnu×n de la forma
u = Kx, u = R−1(KT − F )x = Kx (2.38)
tendremos dos representaciones equivalentes a lazo cerrado
x = (A + BK)x
y = (C + DK)x⇔
·x= (A + BK)x
y = (C + DK)x(2.39)
28
10 20 30 40 50 60 70 80 90 100
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
1.2
t
y(t
)
Figura 2.10: Respuesta al escalón del sistema a lazo cerrado para el modelo (2.26)correspondiente al controlador PID caracterizado por KP = −4.4, KI = 2.2 y KD = −10
con
A = T−1AT + T−1BF,B = T−1BR (2.40)
C = (CT + DF ), D = DR (2.41)
y además
A + BK = T−1(A + BK)T (2.42)
En el caso de sistemas de una sola entrada y una sola salida, la transformación definida
por
T =(V V A . . . V An−1 )−1 , R = 1, F = −V AnT (2.43)
donde V es un vector tal que
V Ak−1B = 0, ∀k < n− 1, V An−1B = 1 (2.44)
produce el par(A,B)en la forma controlable
A =
0 1 0 0 . . . 0
0 0 1 0 . . . 0...
......
. . . . . . 0
0 0 0 0 1 0
0 0 0 0 0 0
, B =
0
0...
0
1
(2.45)
29En particular, si se desea que el sistema a lazo cerrado esté caracterizado por el poli-
nomio
p(s) = sn + pn−1sn−1 + pn−2sn−2 + . . . + p1s + p0 (2.46)
basta con seleccionar
K = −(p0 p1 . . . pn−1 ) (2.47)
de donde es posible deducir
K = (RK + F )T−1 (2.48)
Si el vector de estados no se encuentra disponible, es posible realimentar un observador
de la forma ·x= Ax+ Bu+ L(Cx− y) (2.49)
donde (Cx − y) es el término de corrección y L ∈ Rn×ny es la matriz de ganancias del
observador, la cual debe ser calculada de forma que los autovalores de la matriz A + LC
pertenezcan todos a C−. La representación completa en espacio de estados del controlador
diseñado se expresa como
·x= (A + BK + LC)x− Ly
u = Kx(2.50)
Considere el sistema a lazo abierto definido por la función de transferencia (2.26). Para
asegurar un error en estado estacionario nulo ante una entrada de referencia en forma de
escalón unitario, se incluye un polo en el origen en el modelo a lazo abierto. El diagrama
de polos y ceros correspondiente se muestra en la figura 2.11. Suponga que se desea aplicar
el método explicado en esta sección de manera que a lazo cerrado se tenga el siguiente
vector de polos
λK =(−1 −2 −3 −4 −5 −0.5 + 0.866i −0.5− 0.866i
)(2.51)
Es posible verificar que este objetivo se logra mediante el vector de realimentación de
estados
K = −(
10 13.75 14.37 14.84 17.03 11.56 15)
Para completar el diseño es necesario calcular el vector de ganancias del observador L.
Suponga que se desea obtener el vector de polos para el observador λL = λK, lo cual se
logra mediante el vector de ganancias
L = −(
0 0 0 0 0 0 40)T
(2.52)
30La respuesta al escalón del sistema a lazo cerrado se muestra en la figura 2.12. En este caso
los índices de respuesta temporal tienen los siguientes valores ess = 0, tr(90%) = 2.85,
ts(5%) = 10.65 y Mp = 13%, los cuales son bastante mejores que los obtenidos mediante
los controladores PID presentados en la sección anterior. En contrapartida, la complejidad
de este controlador es mucho mayor que la de un PID.
−14 −12 −10 −8 −6 −4 −2 0
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
Figura 2.11: Diagrama de polos (×) y ceros (◦) a lazo abierto para el modelo (2.26)
0 5 10 15−1.5
−1
−0.5
0
0.5
1
1.5
t
y(t
)
Figura 2.12: Respuesta al escalón del sistema a lazo cerrado, para el modelo (2.26).Controlador diseñado mediante reubicación de polos.
2.5. Diseño de controladores mediante LMIs
Una LMI es una inecuación matricial lineal de la forma:
F (x) = F0 +m∑i=1 xiFi > 0 (2.53)
31donde cada xi ∈ R es una variable escalar real y cada Fi ∈ Rn×n es una matriz simétrica
constante. El símbolo de desigualdad en la ecuación (2.53) significa que la matriz F debe
ser positiva definida.
En numerosos problemas de diseño de controladores, las variables de decisión que deben
ser ajustadas son matrices simétricas. Considere por ejemplo la inecuación de Lyapunov
ATX + XA < 0 (2.54)
donde
X =
x1 x2
x2 x3 , A =
a11 a12
a21 a22 (2.55)
la cual puede reescribirse como en (2.53) definiendo F0 = 0 y
−x1F1 − x2F2 − x3F3 > 0 (2.56)
F1 =
2a11 a12
a12 0
(2.57)
F2 =
2a21 a11 + a22
a11 + a22 2a12 (2.58)
F3 =
0 a21
a21 2a22 (2.59)
De esta manera, resolver la inecuación (2.54) equivale a determinar una matriz X
tal que la matriz ATX + XA sea negativa semi-definida. En las próximas secciones se
formulan los problemas de diseño H2 y H∞, de amplia importancia en el área de sistemas
automáticos, los cuales pueden ser resueltos determinando la factibilidad de una LMI.
2.5.1 Problema H2En esta sección se considera el siguiente modelo lineal a lazo abierto:
·x
zjy
=
A Bj B
Cj Dj EjC Fj 0
x
wju
(2.60)
32y un controlador lineal K representado mediante:
·xcu
=
AK BK
CK DK xKy
(2.61)
de forma que a lazo cerrado se tiene
zj = Tjwj =
Aclj Bclj
Cclj Dclj wj (2.62)
con
Acl =
A + BDKC BCK
AK BKC (2.63)
Bclj =
Bj + DKFj
BKFj (2.64)
Cclj =(Cj + EjDKC EjCK ) (2.65)
Dclj = Dj + EjDKFj (2.66)
El problema H2 consiste en diseñar un controlador tal que
‖Tj(s)‖2 ≤ γ2j (2.67)
donde γ2j es el valor deseado para la norma de la matriz de transferencia a lazo cerrado,
el cual debe ser fijado por el diseñador.
Es posible demostrar (Scherer et al., 1997) que la desigualdad (2.67) se cumple si y
sólo si existen matrices X > 0, Y > 0, A, B, C, D tales que:
AX + XAT + BC +(BC)T
AT + A + BDC Bj + BDFj(AT + A + BDC
)TAY + Y AT + BC +
(BC)T
Y Bj + BFj(Bj + BDFj)T (
Y Bj + BFj)T−I
< 0
(2.68)
X I(CjX + EjC)T
I Y(Cj + EjDC)T
CjX + EjC Cj + EjDC Q
> 0 (2.69)
33
traza(Q) < γ2j (2.70)
Dj + EjDFj = 0 (2.71)
Si estas inecuaciones se cumplen, las matrices del controlador correspondiente se cal-
culan mediante las fórmulas:
MNT = I −XY (2.72)
DK = D
CK = (C − DCX)M−TBK = N−1(B − Y BD)
AK = N−1(A−NBcCX − Y BCcMT − Y (A + BDcC)X)M−TConsidere el siguiente modelo a lazo abierto, propuesto en (Scherer et al., 1997):
A B1 B
C1 D1 E1C F1 0
=
0 10 2
−1 1 0
0 2 −5
1
0
1
0
1
0
0 1 0
0 0 1
0
0
0
0
0 1 0 2 0
(2.73)
Para verificar si el anterior conjunto de inecuaciones es o no factible es posible utilizar
la instrucción feasp de MATLAB R©. En este caso, fijando γ21 = 10 las LMIs resultan
factibles y se obtienen los siguientes resultados
X =
473.7130 −24.7516 −6.9934
−24.7516 3.6762 −0.0953
−6.9934 −0.0953 4.2502
(2.74)
Y =
0.9540 1.5255 −4.2185
1.5255 11.8585 −20.8031
−4.2185 −20.8031 115.0885
(2.75)
34
‖T1(s)‖2 = 3.1748 ≤ γ21 (2.76)
y la función de transferencia del controlador correspondiente es
K2(s) = 1206.314(s + 5.008)(s + 1.365)
(s + 460.4)(s + 5.16)(s + 0.6827)(2.77)
2.5.2 Problema H∞De manera análoga a lo planteado en la sección anterior, el problema H∞ consiste
en diseñar K tal que
‖Tj(s)‖∞ ≤ γ∞j (2.78)
lo cual se cumple si y sólo si existen matrices X,Y, A, B, C, D tales que:
AX + XAT + BC +(BC)T
∗ ∗ ∗
(AT + A + BDC)T AY + Y AT + BC +(BC)T
∗ ∗
(Bj + BDFj)T (Y Bj + BFj)T −γ∞jI ∗
CjX + EjC Cj + EjDC Dj + EjDFj −γ∞jI< 0
(2.79)
Con γ∞1 = 10, las LMIs resultan factibles y se obtienen los siguientes resultados
X =
391.3011 −36.2150 −8.0631
−36.2150 56.4724 −4.3847
−8.0631 −4.3847 48.2515
(2.80)
Y =
1.2249 2.2637 −2.5332
2.2637 15.3622 −12.9829
−2.5332 −12.9829 75.7149
(2.81)
‖T1(s)‖∞ = 3.2448 ≤ γ∞1 (2.82)
y el controlador correspondiente es
K∞(s) = 1.225(s− 46.14)(s + 4.799)(s + 2.718)
(s + 13.94)(s + 5.707)(s + 2.351)(2.83)
352.6. Resumen del capítulo
En este capítulo se introdujeron algunos conceptos básicos relacionados con el
control de sistemas lineales a lazo cerrado. Se presentó un breve repaso de tres métodos
que han sido propuestos para el control de sistemas lineales: PID, reubicación de polos
y factibilidad de LMIs. La ventaja de la estructura PID consiste en su sencillez y bajo
orden. Además, la región de estabilidad está perfectamente definida y puede calcularse
a partir del método propuesto por Hohenbichler y Abel (2008). La reubicación de polos
permite, en el caso SISO, seleccionar la posición de los polos a lazo cerrado, lo cual permite
al menos asegurar la estabilidad de la interconexión Modelo Nominal / Controlador. Las
herramientas que permiten resolver LMIs se han convertido en una de las mejores opciones
disponibles en el área del diseño de controladores lineales. En este capítulo se presentó un
conjunto de LMIs que deben ser satisfechas para que las normas H2 y H∞ de una matriz
de transferencia sean acotadas.
También se definieron indicadores de desempeño que pueden adoptarse como medida
de la calidad de una interconexión Planta/Controlador, de tal forma que el diseño puede
a partir de este punto plantearse como la búsqueda de soluciones que representen un buen
compromiso entre distintos indicadores en conflicto, problema que se analiza de manera
detallada en el próximo capítulo.
CAPÍTULO III
OPTIMIZACIÓN MULTI-OBJETIVO
En este capítulo se analizan algunos conceptos relacionados con los problemas de opti-
mización de múltiples objetivos y con las estrategias que pueden plantearse para resolver-
los. Se introduce brevemente el tema de los mecanismos para el archivo de las soluciones
no-dominadas y el tema de las restricciones. Seguidamente se describe el funcionamiento
de tres algoritmos genéticos en particular, a saber: MOGA, NSGA-II y SPEA2. Por úl-
timo, se introduce el tema de la evaluación del desempeño estadístico de estos algoritmos.
3.1. Definiciones
Resolver un problema de optimización multi-objetivo (POM) consiste en mini-
mizar de manera simultánea un conjunto de funciones de la forma
minx∈X f1(x) (3.1)
minx∈X f2(x)
...
minx∈X fM(x)
donde x representa el vector de decisión, X ⊂ Rn el espacio de búsqueda y n ∈ N, n > 0,
el número de variables de decisión (Roy, 1971).
En general, la reducción del valor de una de las funciones objetivo conduce al incre-
mento de otra, por lo cual no existe un x∗ ∈ X que sea mínimo de todas simultaneamente.
Para Osyczka (1985) el símbolo “min” debe ser interpretado en el caso multi-objetivo como
la búsqueda de un conjunto de soluciones que produzcan valores aceptables para todos los
objetivos.
Muchos métodos que se han propuesto para resolver este problema se basan en una
transformación escalar del vector objetivo, de la forma
U : RM → R (3.2)
37con el fin de replantear el problema de optimización en forma escalar, como
minz1,z2,...,zM U(z1, z2, . . . , zM) (3.3)
sujeto a : zi = fi(x) , 1 ≤ i ≤M , x ∈ X
Kalianmoy Deb (2001) considera que reducir el problema vectorial a uno escalar, im-
plica en general alguna pérdida en la calidad de las soluciones que pueden obtenerse. Los
algoritmos que producen una sola solución deben ejecutarse en repetidas ocasiones para
identificar los mejores compromisos, utilizando conocimiento previo sobre el problema para
definir prioridades entre los objetivos.
Un enfoque alternativo consiste en la búsqueda de soluciones especiales llamadas no-
dominadas, de acuerdo con los conceptos que se definen a continuación . Dado el problema
planteado en (3.1), se denomina Espacio Objetivo y se denota F al conjunto definido por
z ∈F ⇐⇒ ∃x ∈ X : z = F(x) =(f1(x) f2(x) ... fM(x)
)T(3.4)
Sean z1 y z2 dos vectores pertenecientes a F . Se dice que z2 es dominado por z1 y se
denota z1 z2 si y solo si
z1i ≤ z2i , i = 1, 2, ...,M (3.5)
∃i ∈ {1, ..,M} : z1i < z2iSi todas las componentes de z1 son estrictamente menores que las de z2 , es decir, si se
cumple
z1i < z2i , i = 1, 2, ...,M (3.6)
se dice entonces que z2 es estrictamente dominado por z1 y se denota z1 ≺ z2. También
puede suceder que los vectores z1 y z2 sean no dominados mutuamente, es decir, tales que
z1 � z2 ∧ z2 � z1 (3.7)
En este caso se dice que z1 y z2 son incomparables y se denota
z1 ‖ z2 (3.8)
Sea BM el conjunto de números binarios de M dígitos tales que
b ∈ BM ⇐⇒
b = bMbM−1 . . . b2b1, bi ∈ {0, 1}, i = 1, 2, . . . ,M
b = 00 . . . 000, b = 11 . . . 111(3.9)
38Se denomina cono de diversidad de tipo b definido en el punto x al conjunto C(x, b) definido
por
y ∈ C(x, b) ⇐⇒
fi(y) ≤ fi(x) si bi = 0
fi(y) > fi(x) si bi = 1para i = 1, 2, . . . ,M (3.10)
Note que el número de conos de diversidad es igual a 2M − 2. Como ejemplo, x1 ∈C(x0, 110) si y sólo si
f1(x1) ≤ f1(x0) (3.11)
f2(x1) > f2(x0)f3(x1) > f3(x0)
Se denomina Conjunto Óptimo Global de Pareto (COGP) y se denota P∗ al conjunto
para el cual se cumple
x∗ ∈ P∗ ⇔ ∄x ∈ X , F(x) F(x∗) (3.12)
De manera similar, se denomina Conjunto Óptimo Local de Pareto (COLP) y se denota
P∗L a cualquier conjunto para el cual se cumple
x∗ ∈ P∗L ⇔ ∄x ∈ XL , F(x) F(x∗) (3.13)
donde XL es un sub-conjunto de X .
Se denomina Frente Óptimo Global de Pareto (FOGP) y se denota PF∗ al conjunto
para el cual se cumple
z∗ ∈ PF∗ ⇔ ∃x∗ ∈ X , z∗ = F(x∗) (3.14)
Se denomina Frente Óptimo Local de Pareto (FOLP) y se denota PF∗L al conjunto para
el cual se cumple
z∗ ∈ PF∗L ⇔ ∃x∗ ∈ XL , z∗ = F(x∗) (3.15)
Note que si todas las funciones objetivo son continuas y derivables, una condición
necesaria para x∗ ∈ P∗ es que se cumpla
∇fi(x∗)Td ≥ 0,∀i ∈ {1, ..,M},∀d ∈ RM (3.16)
De hecho, es posible calcular una dirección de descenso para todas las funciones objetivo
(3.1) a partir de la información sobre los gradientes ∇fi(x), i ∈ {1, ..,M}.
39En efecto, sea x ∈ X y sea d ∈ Rn, d = 0, definida mediante
d = −M∑i=1 α∗i∇fi(x) (3.17)
donde α∗ ∈ RM es solución del problema
minα∈RM ∥∥∥∑Mi=1αi∇fi(x)∥∥∥22
sujeto aM∑i=1αi = 1,αi ≥ 0
(3.18)
entonces Schäffler et al (2002) demostraron que si d es distinto de 0, entonces d es una
dirección de descenso para todas las funciones f1, f2, . . . , fM3.2. Estrategias para resolver un problema multi-objetivo
Una gran cantidad de estrategias se han propuesto para resolver problemas que
involucran objetivos en conflicto. Las preferencias del diseñador pueden ser consideradas
antes, durante o después del proceso de búsqueda. De esta forma es posible establecer la
siguiente clasificación.
3.2.1 Formulación de preferencias “a priori”
El rasgo común a este tipo de métodos es que el diseñador define sus preferencias
antes de ejecutar el algoritmo, ya sea mediante coeficientes de ponderación, metas mínimas
a alcanzar, orden lexicográfico, etc.
Método min-max Consiste en plantear el problema de la forma:
minx∈X maxi∈{1,2,...,M}
c1 (f1(x)− γ1)c2 (f2(x)− γ2)∗
∗
cM (fM(x)− γM)
(3.19)
En esta formulación los ci, γi se eligen para normalizar los valores de las funciones objetivo
y en general se utilizan las fórmulas:
40
ci =1
fimax − fimin (3.20)
γi = fimindonde
fimax = maxx∈X fi(x), i ∈ {1, 2, ...,M} (3.21)
fimin = minx∈X (x), i ∈ {1, 2, ...,M}
Note que de igual forma podría plantearse la minimización de cualquier otra norma para
medir la magnitud del vector de funciones objetivo.
Método de suma ponderada El problema se plantea de la forma
minx∈X M∑i=1 wici (fi(x)− γi) (3.22)
donde los wi son coeficientes que se eligen para ponderar la importancia relativa de cada
función objetivo. La desventaja de este enfoque es que no es sencillo seleccionar los valores
de wi, por lo cual en general se requieren varios intentos de ensayo y error para ajustarlos.
Los parámetros ci, γi se calculan de la misma forma que en el método anterior.
Método de restricción ε Este método se conoce igualmente como método de las de-
sigualdades (Zakian & Al-Naib, 1973). Consiste en resolver el siguiente problema escalar
minx∈X f1(x)
sujeto a:
fi(x) ≤ εi , i ∈ {2, 3, ...,M}
(3.23)
En este caso es necesario experimentar sucesivamente con distintos valores del vector ε,
relajando las restricciones que sean más dificiles de satisfacer, hasta conseguir una solución
satisfactoria.
Programación de metas Consiste en resolver el siguiente problema escalar
minx∈X M∑i=1wipisujeto a:
fi(x)− pi = ti, i ∈ {1, 2, 3, ...,M}
pi ≥ 0
(3.24)
41donde los wi, ti, i ∈ {1, 2, 3, ...,M} son parámetros que deben ser definidos por el diseñador.
Método de optimización lexicográfica En este método se establece un orden de
preferencia (lexicográfico) entre los objetivos. Se resuelve en primer lugar el problema
escalar
minx∈X f1(x) (3.25)
con α1 valor mínimo de f1. En una segunda etapa se intenta resolver el problema
minx∈X f2(x)
sujeto a:
f1(x) = α1 (3.26)
y así sucesivamente.
Por ejemplo, en una tercera etapa se intentaría resolver
minx∈X f3(x)
sujeto a:
f1(x) = α1f2(x) = α2 (3.27)
3.2.2 Formulación de preferencias de manera interactiva
Un ejemplo de este tipo de métodos es el Interactive Weighted Tchebycheff Pro-
cedure (IWTP), el cual consiste en resolver una secuencia de problemas escalares del tipo
minα α
sujeto a:
α ≥ wTF(x)
x ∈ X
(3.28)
Durante el proceso, el diseñador debe interactuar con el algoritmo, proporcionando el
vector de pesos w más adecuado, con el fin de explorar las zonas del espacio objetivo que
sean más interesantes a su criterio.
423.2.3 Formulación de preferencias “a posteriori”
Estos métodos generan un conjunto de potenciales soluciones al problema hasta
que se cumpla alguna condición de parada. Al finalizar la ejecución, el diseñador debe
seleccionar la solución definitiva entre las no-dominadas que se generaron durante el pro-
ceso de búsqueda. Un ejemplo sencillo consiste en generar vectores al azar, uniformemente
distribuidos en el espacio de variables y luego filtrarlos para extraer el sub-conjunto de
soluciones no-dominadas (ver algoritmo 3.1).
Otro ejemplo que puede ser incluido dentro de esta categoría son los llamados algorit-
mos genéticos multi-objetivo, los cuales se describen en la siguiente sección.
Entradas : P : Población generada por un algoritmo de optimizaciónSalidas : A : Conjunto de soluciones no-dominadas extraídas de Pi = 1;1j = 1;2Mientras i ≤ |P | hacer3
p1 ← Pi;4flag ← false;5Mientras (j ≤ |P |) ∧ (flag = false) hacer6
p2 ← Pj;7Si p2 p1 entonces8
flag ← true;9finsi10j = j + 1;11
Fin12Si flag = false entonces13
Incluir p1 en A;14finsi15i = i + 1;16
Fin17Algoritmo 3.1 : Extracción del sub-conjunto de soluciones no-dominadas
3.3. Algoritmos genéticos multi-objetivo
Los Algoritmos Genéticos (AG) ejecutan operaciones aleatorias sobre una población
de individuos, semejantes a las que se realizan durante el proceso de la evolución biológica
(mutaciones y recombinaciones). De manera similar a lo que ocurre en la naturaleza, los
individuos más adaptados tienen mayor probabilidad para sobrevivir y reproducirse con
respecto a los menos aptos. Jimenez y Sánchez (2002) identifican los siguientes elementos
43
Figura 3.1: Esquema general de un algoritmo genético
característicos de un AG (ver figura 3.1):
• Una representación del espacio de soluciones.
• Un método para crear nuevos individuos.
• Un criterio para comparar individuos entre sí, usualmente expresado mediante una
función de adaptación.
• Un método para seleccionar los individuos más adaptados.
• Un conjunto de operadores de variación.
• Un conjunto de parámetros que guían la evolución del algoritmo: tamaño de la
población, número de iteraciones, probabilidades de aplicación de los operadores,
etc.
• Un criterio de parada.
Tradicionalmente se considera que los AG realizan de manera adecuada la búsqueda
global (exploración) pero no son eficientes para la explotación de las soluciones (Hart,
1994). Otra importante desventaja de estos algoritmos es que no existen reglas precisas
para ajustar los parámetros que controlan la dinámica del algoritmo, ni para decidir el
tipo de operador que conviene utilizar (Eiben & Smith, 2003).
No obstante, numerosos autores han publicado reportes en los que afirman que este tipo
de herramientas han permitido resolver problemas de optimización de alta complejidad,
especialmente en aplicaciones de control automático (Fleming & Purshouse, 2002).
443.3.1 Operadores de variación
A continuación se describen algunos operadores de variación que transforman uno
o más vectores reales en otro u otros vectores reales. Cada operador se aplica sobre uno o
varios individuos con una probabilidad, denotada pc en el caso de los operadores de cruce
y pm en el caso de los operadores de mutación.
La terminología que se adopta en este capítulo fue propuesta en (Eiben & Smith, 2003).
En particular, se denomina cromosoma a la estructura que contiene la información genética
de un individuo, la cual puede venir expresada en diversos formatos alfa-numéricos. Cada
cromosoma está compuesto por diversos genes, los cuales se asocian con las variables de
decisión del problema de optimización.
Operadores de cruce
Los operadores de cruce generan nuevos individuos (hijos) a partir de la informa-
ción de dos o más padres. De acuerdo con la naturaleza de la operación que llevan a cabo,
es posible identificar dos tipos:
• Operadores discretos, caracterizados por uno, dos o más puntos de cruce, tal
como se muestra en las figuras 3.2 y 3.3. Cada punto de cruce define una sección de
cromosoma que será heredada por uno de los hijos. En el caso extremo, si cada gen
se elige aleatoriamente a partir del cromosoma de uno de los padres, el operador de
cruce se denomina uniforme.
• Operadores continuos, entre los cuales es posible mencionar el operador arit-
mético. Sean x1 y x2 los cromosomas correspondientes a dos individuos pertenecientes
a la población. El operador de cruce aritmético genera dos nuevos individuos x1 y
x2 mediante
x1 = αx1 + (1− α)x2 (3.29)
x2 = (1− α)x1 + αx2donde α es un escalar aleatorio uniformente distribudo en el intervalo [0, 1]. Note
que si la región factible es convexa y los padres x1,x2 son factibles, los hijos x1,x2generados por este operador son igualmente factibles.
45
Figura 3.2: Operador discreto de cruce de un punto. El punto de cruce se encuentra enla mitad del cromosoma.
Figura 3.3: Operador discreto de cruce de dos puntos.
Un operador continuo citado frecuentemente en la literatura es el Simulated Binary
Cross-Over (SBX) propuesto en (Deb & Agrawal, 1995). Este operador produce dos hijos
a partir de dos padres mediante las ecuaciones :
x1i =1
2(1 + βi)x1i +
1
2(1− βi)x2i (3.30)
x2i =1
2(1− βi)x1i +
1
2(1 + βi)x2i
con
βi =
(2ri) 1ηc+1 , si ri ≤ 12( 12(1−ri)) 1ηc+1 (3.31)
donde ri es una variable aleatoria distribuida uniformemente en el intervalo [0, 1] y ηc es
un coeficiente que regula la distancia entre los cromosomas de los padres y los hijos. Un
valor ηc ≫ 1 produce hijos que con alta probabilidad se encuentran muy cerca de sus
padres en el espacio de variables.
46Operadores de mutación
En el mundo natural, una mutación es un fenómeno poco común. En mamíferos
la tasa de mutación es de 1 en 2.2×109 bases nucleotídicas (Kumar & Subramanian, 2002)
mientras que en los virus es del orden de 1 en 100 (Malpica et al., 2002). En la mayoría de
los casos las mutaciones son letales para los organismos (los mutantes no suelen alcanzar
la edad reproductiva) pero a lo largo del proceso evolutivo, contribuyen a incrementar la
diversidad genética de la especie.
De cualquier forma, el operador de mutación se aplica únicamente a un porcentaje
reducido de los genes totales de la población. Este porcentaje se puede seleccionar de
dos maneras: de forma fija, especificando el mismo porcentaje de mutación en todas
las generaciones del algoritmo genético y de forma variable, por ejemplo reduciendo el
porcentaje de una generación a otra. De esta manera, se intenta realizar una búsqueda
más amplia al principio del algoritmo y más restringida en las generaciones finales.
Un operador de mutación puede ser representado de la forma
〈x1,x2, . . . ,xn〉 → 〈x1,x2, . . . ,xn〉 (3.32)
donde el vector x representa al individuo original y x representa al mutante. Un tipo
común de mutación es la perturbación aletoria, definida mediante
xi = xi + δi , ∀i ∈ {1, 2, . . . , n} (3.33)
donde cada δ es un vector aleatorio de distribución uniforme, gaussiana u otra.
3.3.2 Esquemas de selección
Por convención, se denota µs al número de padres que conforman la población
actual, a partir de los cuales se generan λs hijos. En un algoritmo de tipo (µs, λs) los hijos
son directamente seleccionados para ser parte de la próxima generación (sin competencia
en contra de sus padres). Si λs < µs es necesario completar a partir de los antiguos padres.
Si λs > µs es posible eliminar los peores hijos hasta que queden exactamente µs.Por el contrario, en un algoritmo de tipo (µs + λs) se establece una competencia entre
padres e hijos para seleccionar los µs sobrevivientes.
47Se han propuesto numerosos métodos para la selección de un sub-conjunto de indi-
viduos a partir de una población inicial. La mayoría se basa en la definición de una
función de adaptación (fitness) Fit(i) ≥ 0 para cada individuo i, lo cual permite realizar
comparaciones.
Por ejemplo, el torneo binario consiste en seleccionar al azar (con probabilidad uni-
forme) dos individuos pertenecientes a la población. Sean Fit(i) y Fit(j) los valores de la
función de adaptación correspondientes a los individuos i, j. El torneo binario selecciona
el individuo i si y sólo si se cumple Fit(i) ≥ Fit(j) (se dice en este caso que i está más
adaptado que j). En caso contrario se selecciona el individuo j.
Otro método consiste en asignar a cada individuo i una probablidad de selección pro-
porcional a su función de adaptación de la forma
pi =Fit(i)∑µsi=1 Fit(i) (3.34)
Sin embargo, el método descrito en el párrafo anterior presenta desventajas debido a
que suele conducir a dos situaciones extremas: convergencia prematura o convergencia
lenta. Por esta razón, Eiben y Smith (2003) recomiendan una alternativa basada en el
ordenamiento de la población en valores decrecientes de la función de adaptación y la
asignación de la probabilidad de selección mediante la fórmula
pi =2− s
µs +2(µs − r(i) + 1)(s− 1)
µs(µs + 1)(3.35)
donde r(i) es el rango del individuo en la lista ordenada y s ∈ [1, 2] es un parámetro que
controla la presión de selección. Cuando s se acerca a 2, mayor presión se ejerce para
seleccionar los mejores individuos. Por el contrario, cuando s se acerca a 1, todos los
individuos tienen idéntica probabilidad de selección.
3.3.3 Métodos de archivo
El problema de la gestión de archivo se presenta de manera natural cuando se
intenta generar una aproximación finita, lo más cercana y bien distribuida posible con
respecto al verdadero frente de Pareto. La idea básica para la gestión del archivo consiste
en comparar la solución actual con respecto a las que ya existen en el archivo, para
posteriormente decidir si es conveniente o no incluir la nueva, eliminando las soluciones
dominadas por esta última.
48Para comprobar si una solución pertenece o no al archivo es posible considerar un
criterio de similitud, ya sea en el espacio objetivo o en el espacio de variables. El objetivo
consiste en evitar que se archiven soluciones duplicadas o muy similares, de tal manera
que se preserve la diversidad genética y se mejore la distribución de las soluciones.
También es posible considerar cualquier otro criterio que se estime conveniente para
favorecer el tipo de soluciones que se desea archivar, o utilizar conceptos especiales de
dominancia, que incluyan las preferencias del diseñador. Cuando el archivo sobrepasa
su capacidad máxima es necesario eliminar algunas soluciones, tomando en cuenta por
ejemplo una medida de densidad, para favorecer a las soluciones pertenecientes a las
regiones menos pobladas.
3.3.4 Tratamiento de las restricciones
Un problema de optimización multi-objetivo con restricciones puede plantearse
como sujeto a
minx∈X ( f1(x) f2(x) . . . fM(x))T
sujeto a:
g1(x) ≤ 0
g2(x) ≤ 0...
gR(x) ≤ 0
(3.36)
Una estrategia frecuentemente considerada consiste en transformar el problema en uno
sin restricciones mediante la incorporación de una función de penalidad por cada objetivo,
de la forma
minx∈X f1(x) + p1(x) (3.37)
minx∈X f2(x) + p2(x)
...
minx∈X fM(x) + pM(x)
donde usualmente se toma
pi(x) =R∑j=1 wij [max (0, gj(x))] , i = 1, 2, . . .M (3.38)
49y los parámetros wij son pesos que deben ser ajustados para ponderar el efecto de cada
restricción sobre cada función objetivo. Precisamente, una desventaja de este enfoque es
que puede ser difícil seleccionar estos pesos de manera que el algoritmo explore la región
factible de manera eficiente (Coello et al., 2007).
Algunos investigadores han propuesto transformar las restricciones del problema en R
nuevos objetivos, de manera que el problema se reformula como
minx∈X f1(x) minx∈X g1(x) (3.39)
minx∈X f2(x) minx∈X g2(x)
......
minx∈X fM(x) minx∈X gR(x)
Otra forma de atacar el problema de las restricciones consiste en modificar los esquemas
de selección de individuos, para dar prioridad a los individuos factibles con respecto a los
no factibles. También es posible utilizar operadores de reparación los cuales utilizan algún
mecanismo para transformar un individuo no factible en factible.
En general se recomienda no eliminar por completo a todos los individuos no factibles,
con el objeto de permitir la captura de las regiones del conjunto de Pareto que pertenezcan
a las fronteras de la región de factibilidad.
A continuación se presentan tres algoritmos frecuentemente citados en la literatura y
que, con numerosas variantes y mejoras, conforman el estado del arte en el área de la
optimización genética multi-objetivo.
3.3.5 Multi-Objective Genetic Algorithm (MOGA)
Propuesto originalmente por Fonseca (1995), este algoritmo ha sido utilizado en
numerosas aplicaciones de control (Chipperfield & Fleming, 1996; Chipperfield et al, 1998;
Duarte et al, 2000). Por ejemplo, en (Griffin et al., 2000) se utilizó para resolver un pro-
blema de diseño caracterizado por 10 objetivos y 12 variables de decisión. En (Adra et al.,
2005a) se propuso una versión híbrida para optimizar el sistema de control de una aeronave.
También en (Silva et al., 2008) se utilizó para diseñar el controlador H∞ de una turbina
de gas. Estos autores redujeron los tiempos de simulación mediante aproximaciones del
proceso no-lineal.
50El funcionamiento de MOGA se explica a continuación (ver algoritmo 3.2). A cada
individuo se le asigna un rango rMOGA de acuerdo al número de otros individuos que lo
dominan.
Entradas :P0 : Población inicial N : Número máximo de generacionesµs número de padres que conforman la poblaciónλs número de hijos a ser generadospc probabilidad de crucepm probabilidad de mutaciónσshare : Tamaño deseado para cada sub-poblaciónSalidas : P : Aproximación del Conjunto de Paretok = 1;1Mientras k ≤ N hacer2
Pk = Pk−1;3Calcular la función de adaptación para cada individuo de Pk de acuerdo con la4ecuación 3.41;Seleccionar los padres;5Aplicar los operadores de variación para generar los hijos;6Calcular la función de adaptación para cada individuo de Pk incluyendo a los7hijos generados en el paso anterior;Seleccionar los sobrevivientes y almacenarlos en Pk;8k = k + 1;9
Fin10Algoritmo 3.2 : Multi-Objective Genetic Algorithm (MOGA)
De esta forma, el rango rMOGA de un individuo i ∈ {1, 2, . . . µs} viene dado por:
rMOGA(i) = 1 + psup(i) (3.40)
donde psup(i) es el número de individuos que dominan a i (los no-dominados tendrán rango
1). En la figura 3.4 se muestra un ejemplo del rango correspondiente a una población de
7 individuos, en un problema de dos objetivos.
Para seleccionar los mejores individuos, MOGA adopta un mecanismo llamado fitness
sharing que consiste en calcular la función de adaptación de cada individuo mediante la
fórmula
Fit(i) =µs − rMOGA(i) + 1
µs µs∑j=1 Φ(dij) (3.41)
Φ(dij) =
1−( dijσshare)2 , si dij ≤ σshare
0, si dij > σshare (3.42)
51
Figura 3.4: Ejemplo de cálculo de rango para el algoritmo MOGA
donde
dij =∥∥Fi − Fj∥∥2 (3.43)
F es el vector de funciones objetivo y σshare representa la distancia mínima deseada (en
el espacio objetivo) entre dos soluciones pertenecientes a la aproximación final del Frente
de Pareto.
Este mecanismo penaliza a los individuos que habitan en zonas densamente pobladas,
intentando conservar la diversidad genética y mejorar la distribución.
3.3.6 Non-dominated Sorting Genetic Algorithm (NSGA-II)
Este algoritmo (Deb et al., 2000) es uno de los más ampliamente citados en la
literatura. En cuanto a las aplicaciones de control, en su tesis de doctorado Lagunas
(2004) lo utiliza para sintonizar los parámetros de un controlador PID de dos grados de
libertad. Por su parte, Dupuis et al (2004) presentan el diseño de un controlador PID
cuyos objetivos se plantean en función de las diferencias entre los índices deseados y los
índices simulados. También, Reyes et al (2009) presentan el diseño multi-objetivo de un
controlador difuso caracterizado por 50 variables de decisión.
El NSGA-II asigna un rango rNSGA−II(i) a cada individuo i ∈ {1, 2, . . . µs}, calculadocomo se explica a continuación. En cada iteración j (ver algoritmo 3.4) se determinan los
individuos no-dominados y se les asigna rango j. Seguidamente se eliminan los individuos
no-dominados de la sub-población actual y se comienza una nueva iteración (ver algoritmo
3.3). En la figura 3.5 se muestra un ejemplo de los rangos correspondientes a la misma
población presentada en la figura 3.4.
52
Entradas : P0 : Población inicialSalidas : rNSGA−II : Vector de rangos correspondiente a P0j = 1;1Mientras |Pj| > 0 hacer2
Generar el conjunto Qj de vectores no-dominados pertenecientes a Pj;3Actualizar el vector rNSGA−II asignando rango j a los individuos pertenecientes4a Qj;Pj+1 = Pj/Qj;5j = j + 1;6
Fin7Algoritmo 3.3 : Asignación de rango NSGA-II
Rango 1
Rango 2Rango 3
Figura 3.5: Ejemplo de cálculo de rango para el algoritmo NSGA-II
La preservación de diversidad de NSGA-II se basa en calcular para cada individuo una
cantidad llamada crowding distance, calculada como se explica a continuación (ver figura
3.6). En primer lugar se seleccionan los individuos que tengan el mismo rango. Luego se
ordenan estos individuos en valores crecientes con respecto al objetivo i ∈ {1, 2, . . .M}.
Sea ki el índice que corresponde a un individuo cualquiera en la lista ordenada con respecto
al objetivo i, de forma que sus vecinos más cercanos tengan índices ki − 1 y ki + 1.
53
Entradas :P0 : Población inicial N : Número máximo de generacionesµs número de padres que conforman la poblaciónλs número de hijos a ser generadospc probabilidad de crucepm probabilidad de mutaciónSalidas : P : Aproximación del Conjunto de Paretok = 1;1Mientras k ≤ N hacer2
Pk = Pk−1;3Calcular el vector de rangos y crowding distance para cada individuo en Pk;4Seleccionar los padres mediante torneo binario modificado;5Aplicar operadores de variación;6Calcular el vector de rangos y crowding distance para cada individuo en Pk7incluyendo los hijos generados en el paso anterior;Seleccionar los sobrevivientes mediante torneo binario modificado y8almacenarlos en Pk;k = k + 1;9
Fin10Algoritmo 3.4 : Non-Dominated Sorting Genetic Algorithm (NSGA-II)
d1
d2
crowding distance =
d1 + d2
crowding distance =∞
crowding distance =∞
Figura 3.6: Ejemplo de cálculo de crowding distance para el algoritmo NSGA-II
54El valor del crowding distance se calcula mediante la fórmula:
crowding distance =M∑i=1 Fki+1i − Fki−1i (3.44)
El mecanismo de selección utilizado por NSGA-II es un torneo binario modificado:
entre dos individuos se prefiere al que tenga menor rango. Si los rangos son iguales,
entonces se prefiere al que tenga el mayor valor de crowding distance.
3.3.7 Strength Pareto Evolutionary Algorithm (SPEA2)
Este algoritmo fue propuesto en (Zitzler et al., 2001) como una versión mejorada
del algoritmo SPEA (Zitzler, 1999). Pocas aplicaciones se han publicado en el área de
sistemas de control. Una de ellas fue presentada por Wang et al (2008) en la cual describen
el diseño de un controlador robusto para un sistema de calentamiento a base de vapor.
El SPEA2 utiliza un archivo externo A para almacenar los individuos no dominados
(ver algoritmo 3.5) generados durante el proceso de búsqueda.
Entradas :P0 : Población inicial N : Número máximo de generacionesµs número de padres que conforman la poblaciónλs número de hijos a ser generadospc probabilidad de crucepm probabilidad de mutaciónSalidas : Ak = 1;1Mientras k ≤ N hacer2
Calcular la función de adaptación Fit(i) para los individuos pertenecientes a Pk3y A;Seleccionar los padres mediante torneo binario modificado;4Aplicar operadores de variación;5Calcular la función de adaptación Fit(i) para los individuos pertenecientes a Pk6, A y los hijos generados en el paso anterior;Actualizar el archivo A;7Seleccionar los sobrevivientes mediante torneo binario modificado y8almacenarlos en Pk;k = k + 1;9
Fin10Algoritmo 3.5 : Strength Pareto Evolutionary Algorithm 2
55A cada individuo i se le asigna un valor S(i) llamado fuerza (del inglés, strength) que
se calcula como:
S(i) =∣∣{j : j ∈ P ∪A ∧Fi Fj}∣∣ (3.45)
es decir es el número de individuos que son dominados por i en el conjunto unión de P
y A. Posteriormente se calcula la suma de las fuerzas de los individuos que dominan a i
obteniendo
R(i) =∑j∈P∪P,zj zi S(j) (3.46)
En la figura 3.7 se presenta un ejemplo del cálculo de estos valores.
S=2
R=0
S=3
R=0S=2
R=0
S=3
R=0
S=1
R=2
S=1
R=6
S=1
R=8
S=0
R=13
Figura 3.7: Ejemplo de cálculo de S y R para el algoritmo SPEA2
Por otra parte se calcula un valor de densidad D(i) para cada individuo, definida como:
D(i) =1
2 + σi (3.47)
donde σi corresponde a la distancia entre el individuo i y su k-ésimo vecino más cercano
(ver figura 3.8). El valor de k se toma como el entero más cercano a√|P |+ |A|.
Finalmente, la función de adaptación Fit(i) de cada individuo se obtiene como
Fit(i) =1
R(i) + D(i)(3.48)
Para seleccionar los padres selecionan todos los individuos cuyo Fit(i) sea mayor que 1 (no-
dominados). Si este número es menor que λs, se completa con individuos cuyo Fit(i) sea
el mayor posible. En caso contrario se utiliza un mecanismo para eliminar los individuos
que habiten en las zonas de más alta densidad.
56
k-ésimo vecino más
cercano 1
2
3
σ
Población de 9 individuos → k = 3
distancia
Figura 3.8: Ejemplo de cálculo de la distancia σ para el algoritmo SPEA2
Para finalizar esta sección, en la tabla 3.1 se presenta un resumen de las ventajas y
desventajas de los tres algoritmos descritos anteriormente.
Tabla 3.1: Resumen de ventajas y desventajas de los algoritmos MOGA, NSGA-II ySPEA2
Algoritmo Ventajas DesventajasMOGA Utiliza un mecanismo
de asignación de rangosencillo
El usuario necesita es-pecificar el parámetroσshare
NSGA-II Utiliza un mecanismorápido para laasignación de rango.No necesita especi-ficar parámetrosadicionales
No integra la gestiónde un archivo externopara las soluciones no-dominadas
SPEA2 Utiliza un archivoexterno para alma-cenar las solucionesno dominadas. Nonecesita especi-ficar parámetrosadicionales
Es más lento com-parado con MOGA YNSGA-II
573.4. Evaluación de desempeño
El tema de la evaluación del desempeño de algoritmos multi-objetivo se encuentra
todavía en desarrollo. En esta sección se presentan en primer lugar los indicadores que
serán utilizados en los próximos capítulos. Luego se describe brevemente la prueba de
Wilcoxon, la cual permite la comprobación de hipótesis relacionadas con las medianas de
dos conjuntos de datos.
3.4.1 Índices de desempeño
Básicamente, son tres los aspectos que se miden mediante los índices que se han
propuesto (Coello et al., 2007):
• Cantidad de soluciones no-dominadas.
• Distancia entre las soluciones no-dominadas y las soluciones del COGP.
• Distribución de las soluciones no-dominadas: se desea obtener una distribución lo
más uniforme y completa que sea posible (que cubra la mayor parte del COGP).
Es interesante notar que la evaluación de las aproximaciones es también un problema
de naturaleza multi-objetivo. Por ello, los expertos recomiendan usar varios indicadores
para evaluar los distintos aspectos del desempeño de un algoritmo. En lo que sigue se
denota P a una aproximación cualquiera de P∗ y PF a la aproximación correspondiente
de PF∗.Distancia generacional
Este indicador, denotadoGD, mide la distancia promedio de las soluciones pertenecientes
a la aproximación PF con respecto a PF∗.GD =
1
|PF|
√√√√|PF|∑i=1 |di|2 (3.49)
di = minzk∈PF∗ ∥∥zi − zk∥∥ (3.50)
De igual forma es posible evaluar la Distancia Generacional Inversa (IGD) mediante la
fórmula
IGD =1
|PF∗|√√√√|PF∗|∑i=1 |di|2 (3.51)
58di = minzk∈PF ∥∥zi − zk∥∥ (3.52)
Mientras menores sean ambas medidas, mejor será la aproximación correspondiente.
Sin embargo, estos indicadores no son necesariamente compatibles: si uno tiene un valor
cercano a cero, esto no implica que el otro también lo tenga. En la figura 3.9 se muestran
dos ejemplos para ilustrar esta situación. La gráfica de la izquierda corresponde a un caso
en cual se tendría un valor bajo para GD y alto para IGD. La gráfica de la izquierda
muestra un ejemplo de la situación inversa.
f1
f2
GD ↓ IGD ↑
f1
f2
GD ↑ IGD ↓ Caso:
Caso:
Figura 3.9: Ejemplo de dos aproximaciones con distintos valores para los indicadoresGD, IGD
Distancia máxima
Es la distancia máxima medida entre dos soluciones cualesquiera pertenecientes a
la aproximación. En otras palabras, este indicador mide la extensión de la aproximación
del frente de Pareto (ver figura 3.10).
DMAX = maxzi,zk∈PF ∥∥zi − zk∥∥ (3.53)
Cobertura
Este indicador binario fue propuesto en (Zitzler, 1999), para comparar dos aproximaciones
PF1 y PF2, sin necesidad de conocer el COGP. Se define como sigue a continuación:
C (PF1,PF2) =|{z2 ∈ PF2 tales que ∃z1 ∈ PF1 : z1 z2}|
|PF2| (3.54)
59
f1
f2
DMAX
Figura 3.10: Ejemplo de cálculo para el indicador DMAX
Mide la proporción de elementos de PF2 que son dominados por al menos un elemento
de PF1. Por ejemplo, C(PF1,PF2) = 1 implica que todos los elementos de PF2 son
dominados por al menos un elemento de PF1.Espaciado
Propuesto en (Schott, 1995), este indicador mide la desviación de las distancias
entre los vecinos más cercanos en el espacio objetivo. Se define como sigue a continuación:
ESS =1
|PF|
√√√√|PF|∑i=1 ∣∣di − d
∣∣2 (3.55)
di = minzk∈PF,k �=i ∥∥zi − zk∥∥ , d =1
|PF|
|PF|∑i=1 di (3.56)
En la tabla 3.2 se muestra un resumen de los diferentes indicadores junto con el valor
ideal para cada uno de ellos. El símbolo ∞ significa que mientras más grande es el valor,
mejor es la aproximación con respecto al indicador correspondiente.
60Tabla 3.2: Resumen de indicadores de desempeño
Indicador Símbolo Valor IdealDistancia generacional GD 0
Distancia generacional inversa IGD 0Distancia máxima DMAX ∞
Cobertura C 1Espaciado ESS 0
3.4.2 Pruebas estadísticas
Los algoritmos genéticos pueden ser considerados fundamentalmente como pro-
cesos estocásticos. El mismo algoritmo, partiendo de las mismas condiciones iniciales,
produce resultados distintos cada vez que se ejecuta, lo cual justifica el empleo de me-
didas y pruebas estadísticas para comparar los resultados producidos por dos algoritmos
cualesquiera.
En particular, la prueba de Wilcoxon utiliza como estadístico de decisión W la suma
de los rangos de cada observación, siendo el rango el número que le corresponde a cada
observación cuando se ordenan todas en orden ascendente.
Suponga que se realizan siete ejecuciones de dos algoritmos, A1 y A2, comenzando a
partir de la misma población inicial. Posteriormente se calculan los valores correspondientes
a un indicador de desempeño I obteniendo los resultados de la tabla 3.3.
Tabla 3.3: Ejemplo de valores obtenidos para el indicador I correspondientes a 7 ejecu-ciones de los algoritmos A1 y A2
I A1 A21 0.44 0.502 0.55 0.483 0.61 0.584 0.53 0.525 0.56 0.596 0.45 0.657 0.54 0.70
Promedio 0.52 0.57
La prueba consiste en formular una hipótesis nula de la forma
H0 : IA1 = IA2 (3.57)
61y una hipótesis alternativa
H1 : IA1 = IA2 (3.58)
con un nivel de significancia α, donde IA1 y IA2 son las medianas de cada proceso estocás-
tico. En la figura 3.11 se muestra el cálculo de los estadísticos WA1, WA2 para el ejemplo
de la tabla 3.3.
Figura 3.11: Cálculo de los rangos para la prueba Wilcoxon
Si el p-valor correspondiente a la prueba es menor que α entonces se rechaza la hipótesis
H0. Este valor puede obtenerse mediante la instrucción ranksum de MATLAB R© y es igual
a 0.3829 para este caso, por lo cual no existe evidencia estadística para rechazar la hipótesis
H0 con un nivel de significancia α = 0.05.
3.5. Resumen del capítulo
En este capítulo se definieron algunos conceptos básicos relacionados con el área
de optimización multi-objetivo y algoritmos genéticos, tales como conjunto y frente de
Pareto, dominancia, direcciones de descenso, conos de diversidad, operadores de variación
y esquemas de selección.
Se realizó un breve repaso de las estrategias que pueden ser utilizadas para resolver un
problema de esta naturaleza, las cuales pueden ser agrupadas en 3 categorías:
• Formulación de preferencias a priori
• Formulación de preferencias de manera interactiva
• Formulación de preferencias a posteriori
62Con respecto a esta última categoría, se presentó un breve análisis de los algoritmos
MOGA, NSGA-II y SPEA2, los cuales son los más citados en la literatura y constituyen
el estado del arte en esta área.
Un punto importante para la evaluación del desempeño de estos algoritmos consiste
en la definición de índices para medir la calidad de las aproximaciones generadas. En este
capítulo se definieron índices tales como la distancia generacional, distancia generacional
inversa, cobertura, espaciamiento, etc.
Puesto que el proceso de búsqueda es fundamentalmente estocástico, se hace im-
prescindible el uso de pruebas estadísticas para la correcta evaluación de los resultados.
La prueba de Wilcoxon presentada permite la comprobación de hipótesis relacionadas
con las medianas de dos conjuntos de datos, sin necesidad de conocer las distribuciones
probabilísticas asociadas. Esta prueba será utilizada en los próximos capítulos para evaluar
el desempeño de los algoritmos propuestos.
CAPÍTULO IV
DISEÑO DE CONTROLADORES PID MULTI-OBJETIVO
En este capítulo se proponen nuevos operadores de variación, especialmente conce-
bidos para el diseño de controladores PID mediante algoritmos genéticos. La idea principal
consiste en garantizar la generación y el mantenimiento de una alta proporción de indi-
viduos factibles durante todo el proceso de búsqueda.
En primer lugar se utiliza el método propuesto en (Hohenbichler & Abel, 2008) para
generar los vértices de la región factible correspondiente al sistema a lazo cerrado. Poste-
riormente se propone un nuevo método para aproximar la geometría de la región factible,
basado en muestreo aleatorio uniforme (Calafiore & Dabbene, 2006).
Parte de los resultados presentados en este capítulo fueron previamente incluidos como
parte de las publicaciones (Sánchez et al., 2008a) y (Sánchez et al., 2009).
4.1. Antecedentes
Es posible encontrar en la literatura numerosas referencias de trabajos previos
relacionados con el problema que se intenta resolver en este capítulo, basados tanto en
algoritmos deterministas como aleatorios.
Con respecto a los primeros, Åström et al (1998) utilizaron el algoritmo de Newton-
Raphson para minimizar la energía de la señal de error en un lazo de control PID sujeto
a la acción de una perturbación de salida. Estos autores señalan que el resultado de la
optimización depende fundamentalmente del punto de inicio seleccionado.
Hwang & Hsiao (2002) resuelven el problema no-convexo de la siguiente forma: parten
de un valor arbitrario para la constante derivativa y a partir de allí resuelven el problema
de dos variables (proporcional/integral) incluyendo restricciones para asegurar estabilidad.
64Granado et al (2007) presentan el diseño de un controlador PID multivariable robusto,
el cual garantiza la estabilidad a lazo cerrado de sistemas lineales sujetos a incertidum-
bre poliédrica. El algoritmo de diseño se basa en resolver un conjunto de BMIs (Bilinear
Matrix Inequalities) de manera iterativa. Tal como se mencionó en la introducción, la
desventaja de este tipo de enfoques es que las soluciones encontradas pueden ser en oca-
siones demasiado conservadoras y por otra parte únicamente consiguen una solución en
cada ejecución (ver capítulo 6).
Con respecto al empleo de algoritmos aleatorios, Herreros (2000) propuso dos nuevos
algoritmos en su tesis de doctorado, a saber MRCD y MRCD-min-max. Este autor diseñó
controladores PIDs para los sistemas de ensayo de bajo órden propuestos en (Astrom et
al., 1998), consiguiendo mejores soluciones que las obtenidas mediante LMIs.
En (Dupuis et al., 2004) se reporta el diseño de un PID para controlar la velocidad
de giro de un motor de corriente continua, utilizando el algoritmo NSGA-II. Los obje-
tivos fueron planteados en función de la diferencia entre la dinámica obtenida durante
la simulación y la dinámica deseada. Se tomó en cuenta el criterio de estabilidad de
Routh-Hurwitz a efectos de generar individuos estables.
Por último, en su tesis doctoral Lagunas (2004) utilizó el NSGA-II para diseñar contro-
ladores PIDs en el caso de los sistemas de ensayo SISO propuestos en (Astrom et al., 1998).
Se consideraron los siguientes objetivos: seguimiento de la señal de referencia, rechazo de
perturbación en la carga, atenuación de ruido en la medición, robustez ante variaciones de
los parámetros de la planta y acotamiento de la señal de control.
4.2. Método de diseño basado en el cálculo exacto de la región deestabilidad
Los algoritmos genéticos operan en el interior de un espacio de búsqueda finito,
generalmente definido por el diseñador, el cual debe incluir la región factible para que el
proceso de búsqueda sea capaz de conseguir soluciones válidas.
Típicamente, la población inicial es generada mediante muestreo aleatorio uniforme en
el espacio de búsqueda. Esto significa que cada cromosoma xi, i = 1, 2, . . . µs, es generado
mediante la fórmula
xij = Lj + rj (Lj − Lj) , j = 1, 2, . . . n (4.1)
65donde L,L ∈ Rn son vectores que definen el intervalo de búsqueda para cada variable de
decisión y cada ri es una variable aleatoria distribuida uniformemente en [0, 1].
Sin embargo, este método puede resultar bastante ineficiente para producir una alta
proporción de individuos factibles, en aplicaciones de diseño de controladores. Para ilustrar
este hecho, suponga que se desea generar de manera aleatoria un conjunto de controladores
PID, caracterizados por su función de transferencia
KPID(s) =KDs2 + KPs + KI
s(4.2)
para estabilizar el modelo (Ackermann & Kaesbauer, 2003):
G0(s) =A(s)
B(s)=
−0.5s4 − 7s3 − 2s + 1
(s + 1)(s + 2)(s + 3)(s + 4)(s2 + s + 1)(4.3)
el cual posee una complejidad superior a los que típicamente se han analizado en trabajos
previos (órden 6 y fase no-mínima).
Sean L,L ∈ R3 los vectores que definen el intervalo de variación para cada parámetro
PID, de forma que
KP ∈ [L1, L1] (4.4)
KI ∈ [L2, L2]KD ∈ [L3, L3]
Suponga que se toman N muestras en el interior del volumen definido por L,L y sea
Ns(L,L) el número de individuos factibles correspondiente, es decir:
Ns(L,L) =N∑i=1 St(KPIDi) (4.5)
con
St(KPID) =
0 si max {Re [λ(KPID)]} ≥ −ε
1 en caso contrario(4.6)
donde ε > 0 es un parámetro que define la tolerancia considerada para la región de
estabilidad y λ(KPID) denota el vector de raices de la ecuación
B(s) + KPID(s)A(s) = 0 (4.7)
La tabla 4.1 muestra el promedio de la proporción de individuos factibles NsN para distintos
valores de L,L, calculada para N = 1000, ε = 0.01 y repitiendo el experimento un total
66de 100 veces. Note que la mejor proporción (≈ 40%) se logra en el caso L = [−1,−1,−1]
y L = [1, 1, 1] (el valor mostrado entre paréntesis corresponde a la desviación standard del
cociente NsN ).
Tabla 4.1: Proporción de individuos factibles para distintos valores de L, L
L L NsN[−0.1,−0.1,−0.1] [0.1, 0.1, 0.1] 0(0)
[−1,−1,−1] [1, 1, 1] 0.3871(0.0155)[−10,−10,−10] [10, 10, 10] 0.1440(0.0130)
[−100,−100,−100] [100, 100, 100] 0(0)[−1000,−1000,−1000] [1000, 1000, 1000] 0(0)
Es posible concluir a partir de estos resultados que definir el espacio de búsqueda
de manera arbitraria puede ser muy ineficiente. Precisamente con el objeto de evitar
esta situación, se propone a continuación un método alternativo que permite resolver el
problema de diseño en dos etapas consecutivas.
Figura 4.1: Espacio de controladores PID estabilizantes correspondiente al modelo G0(s)determinado mediante el método de Hohenbichler y Abel (2008)
Durante la primera se determinan los límites de la región de controladores PID esta-
bilizantes (ver figura 4.1) utilizando el método de Hohenbichler y Abel (2008) presentado
en el capítulo 2.
67Durante la segunda etapa se genera una distribución uniforme de individuos en el
interior de los polígonos determinados por los límites calculados durante la etapa anterior,
utilizando el método que se explica a continuación.
La información de base son los vértices de los polígonos de estabilidad. Suponga que
para un polígono de V vértices se ordena esta información de la forma
v1v2...
vV
(4.8)
donde v1 está conectado con v2 y vV , v2 está conectado con v1,v3 y así sucesivamente.
En primer lugar se seleccionan dos aristas del polígono al azar. A su vez, en cada arista
se selecciona un punto al azar, sean xa y xb. Posteriormente se selecciona un punto xcperteneciente al segmento que une xa con xb (ver figura 4.2) mediante la fórmula
xc = αxa + (1− α)xb (4.9)
donde α es un escalar aleatorio perteneciente al intervalo [0, 1].
En el caso de la región estabilizante correspondiente a G0(s) se determinaron 25 polí-
gonos de estabilidad y se generaron 2 individuos al interior de cada uno de ellos, para
obtener una población inicial de 50 individuos.
Figura 4.2: Selección de un punto al azar en el interior de un polígono convexo
En cuanto a los operadores de variación, note que aunque para un mismo valor de KPla región factible es convexa, es posible que al cruzar dos individuos con distinto valor de
68KP se produzcan hijos no factibles. En este caso se propone utilizar el siguiente mecanismo
de reparación:
• Suponga que se conocen los dos padres x1y x2, a partir de los cuales se generan los
descendientes x1 y x2 mediante el operador de cruce aritmético de la forma:
x1 = αx1 + (1− α)x2 (4.10)
x2 = (1− α)x1 + αx2donde α es un escalar aleatorio perteneciente al intervalo [0,1].
• Si cualquiera de los descendientes no es factible, entonces se disminuye α a la mitad
y se genera un nuevo par de hijos.
• La mutación se realiza de forma similar, fijando α = 1 y a partir de un individuo
factible x se genera una mutación mediante
x = x + αδ (4.11)
donde δ es un vector aleatorio de distribución gaussiana. Si el individuo resultante
no es factible entonces se disminuye α a la mitad y se genera una nueva mutación.
Considere el lazo de control mostrado en la figura 4.3. Los bloques Wn(s) y Wd(s)
corresponden a funciones arbitrarias de ponderación en frecuencia. Las variables que
intervienen en el lazo son r(s), d(s) y n(s) como señales de referencia, perturbación y
ruido respectivamente.
Figura 4.3: Lazo con controlador PID
69Tradicionalmente, para el problema de regulación se considera r(s) = 0 y por lo tanto
a lazo cerrado se tiene:
y(s) = −KPID(s)G(s)
1 + KPID(s)G(s)Wn(s)n(s) (4.12)
+1
1 + KPID(s)G(s)Wd(s)d(s) (4.13)
= −T (s)Wn(s)n(s) + S(s)Wd(s)d(s) (4.14)
con
T (s) =KPID(s)G(s)
1 + KPID(s)G(s)(4.15)
S(s) =1
1 + KPID(s)G(s)(4.16)
La función de transferencia S(s) se conoce como función de sensibilidad, mientras
que T (s) se conoce como función de sensibilidad complementaria. Note que siempre
se cumple
S(s) + T (s) = 1 (4.17)
A partir de la ecuación (4.12) se concluye que para compensar los efectos de la perturbación
y del ruido, es necesario diseñar el controlador para que las normas de S(s) y T (s) tengan
el menor valor posible. Sin embargo, la ecuación (4.17) implica que no se puede disminuir
ambas normas simultaneamente.
El modelo de planta a lazo abierto es G0 (ver ecuación 4.3) y los filtros Wn y Wd se
definen como:
Wn(s) = 1, Wd(s) =1
s + 1(4.18)
El problema que se desea resolver se plantea como
minKPID∈K f1(KPID) (4.19)
minKPID∈K f2(KPID) (4.20)
con
f1(KPID) = ‖Wd(s)S(s)‖2 (4.21)
f2(KPID) = ‖Wn(s)T (s)‖2donde K es el conjunto de controladores estabilizantes.
70El problema de diseño que involucra exclusivamente normas H2 en los distintos canales
de la función de transferencia a lazo cerrado, puede ser resuelto de manera eficiente medi-
ante métodos de programación convexa, en caso de que no se imponga ninguna estructura
especial del controlador.
Por ejemplo, Khargonekar y Rotea (1991) resolvieron este problema asumiendo una
estructura de orden completo para los controladores y considerando un único objetivo en
términos de la suma convexa de las normas cuadráticas, de la forma
minαK∈R1×n f1(K) + (1− α)f2(K) (4.22)
donde para cada valor α ∈ [0, 1] se obtiene una solución perteneciente al frente de Pareto
del problema multi-objetivo.
En el presente caso, la dificultad radica en que se desea obtener controladores con una
estructura seleccionada a priori de tipo PID, lo cual dificulta el planteamiento en términos
de programación convexa.
Como base del proceso evolutivo se adopta el algoritmo SPEA2 (ver capítulo 3) con-
siderando que:
• Permite seleccionar la cantidad máxima y las características de las soluciones de la
aproximación, gracias a un manejo adecuado del archivo externo.
• Optimiza la distribución de las soluciones en el frente, sin necesidad de ajustar
parámetros dependientes de su geometría.
• Su desventaja con respecto al NSGA-II y al MOGA es que su tiempo de ejecución,
para un mismo problema, es relativamente más lento. Sin embargo, para el tipo de
problemas que se consideran en este trabajo, la velocidad de cómputo no se considera
una variable determinante.
En concreto, se presentan a continuación los resultados obtenidos a partir de dos ver-
siones de SPEA2:
• A1: El cual opera en un espacio de búsqueda definido de manera arbitraria como
−10 ≤ KP ,KI , KD ≤ 10 (4.23)
y utiliza una función de penalidad en cada objetivo para manejar la restricción de
estabilidad.
71• A2: El cual opera en el espacio de controladores estabilizantes determinado me-
diante el método de Hohenbichler y Abel, utilizando operadores especiales de cruce
y mutación (ver ecuaciones 4.10 y 4.11).
Se realizaron 30 ejecuciones de cada algoritmo y se almacenaron los resultados obtenidos.
En la figura 4.4 se muestra un ejemplo de las aproximaciones del frente de Pareto obtenidas
por cada algoritmo. En dicha figura se puede apreciar que A2 produce individuos (mar-
cados con �) que claramente dominan a las obtenidos por A1 (marcados con ×).
0.66 0.67 0.68 0.69 0.7 0.71 0.720.2
0.25
0.3
0.35
0.4
0.45
0.5
0.55
0.6
0.65
f1
f 2
Aproximación obtenida por A1Aproximación obtenida por A2
Controlador K1
Controlador K2
Figura 4.4: Ejemplo de las aproximaciones obtenidas por A1 y A2
La configuración utilizada para las pruebas de A1 y A2 se muestra en la tabla 4.2. Note
que se permitió un máximo de 2500 evaluaciones, distribuidas durante 50 generaciones,
para cada algoritmo. Esto motivado a que previamente se verificó de manera experimental
que estos números son suficientes para alcanzar una etapa del proceso en la cual las
aproximaciones de los frentes evolucionan lentamente con respecto al inicio.
En las figuras 4.5 y 4.6 es posible apreciar un ejemplo de la evolución de las aproxima-
ciones producidas por A1 y A2 después de haber transcurrido 1,25,40,48 y 50 generaciones.
Note que en ambos casos, las tres últimas generaciones corresponden a aproximaciones muy
parecidas entre sí.
Por otra parte, si se permite una magnitud mayor en el número de evaluaciones (p.ej.
10.000 o más) entonces en la práctica no es posible detectar diferencias significativas entre
los indicadores de desempeño producidos por cada algoritmo y no sería posible evaluar el
efecto de los nuevos operadores propuestos.
72
0.68 0.7 0.72 0.74 0.76 0.78
0.8
0.9
1
1.1
1.2
1.3
1.4
1.5
1.6
1.7
f1
f 2
Ngen = 1Ngen = 25Ngen = 40Ngen = 48Ngen = 50
Figura 4.5: Evolución de las aproximaciones de los frentes. Algoritmo A1. Ngen es elnúmero de generación.
Tabla 4.2: Configuración utilizada para los algoritmos A1 y A2. Problema de diseño PIDParámetro Valor
Representación Números realesOperador de cruce Aritmético (A1) y Aritmético con retorno (A2)
Probabilidad de cruce 0.9Operador de mutación Perturbación gaussiana con retorno a la región factible
Probabilidad de mutación 0.1Condición de parada 50 generaciones
Número máximo de evaluaciones 2500Tamaño máximo del archivo externo 50
Esquema de selección (50+50)
0.65 0.7 0.75
0.25
0.3
0.35
0.4
0.45
0.5
0.55
0.6
f1
f 2
Ngen = 1Ngen = 25Ngen = 40Ngen = 48Ngen = 50
Figura 4.6: Evolución de las aproximaciones de los frentes. Algoritmo A2. Ngen es elnúmero de generación.
73Los resultados obtenidos para los indicadores C,N,DMAX y ESS (definidos en el
capítulo 3) se muestran en las tablas 4.3 y 4.4.
Tabla 4.3: Resultados obtenidos para el indicador de cobertura. Algoritmos A1 y A2C(Ai, Aj) A1 A2
A1 − 0.2043(0.3103)A2 0.5946(0.4552)∗ −
Tabla 4.4: Resultados de los indicadores ESS y DMAX. Algoritmos A1 y A2N DMAX ESS
A1 15.4667(15.1128) 0.1767(0.1559) 0.0118(0.0224)A2 36.5333(14.0804)∗ 0.3692(0.1629)∗ 0.0080(0.0082)
Tabla 4.5: P-valores correspondientes a las pruebas de Wilcoxon para determinar lasdiferencias que son estadísticamente significativas. Algoritmos A1, A2
Hipótesis Nula p− valor ConclusiónC(A1, A2) = C(A2, A1) 7.7540e− 004 Rechazar
N(A1) = N(A2) 1.9066e− 006 RechazarDMAX(A1) = DMAX(A2) 2.4321e− 005 Rechazar
ESS(A1) = ESS(A2) 0.4118 No Rechazar
El indicador N representa simplemente la cantidad de individuos almacenados en el
archivo de soluciones no-dominadas al finalizar la ejecución del algoritmo. El asterisco
corresponde al indicador que es significativamente mejor de acuerdo a la prueba deWilcoxon,
para un nivel de significancia α = 0.05. En la tabla 4.5 se presentan los p-valores cor-
respondientes a la prueba de Wilcoxon, los cuales nos permiten identificar las diferencias
entre los promedios que son significativas desde el punto de vista estadístico. Note que A2
obtiene mejores valores que A1 con respecto a los indicadores C,N y DMAX.
Estos resultados podrían haberse anticipado, puesto que A2 utiliza información especial
para mantener a la población dentro de la región factible durante todo el proceso de
búsqueda. Con respecto al espaciamiento de las soluciones, el indicador ESS no permite
identificar mayores diferencias, lo cual puede constatarse de manera gráfica observando la
figura 4.4.
Para ilustrar lo que representa la diferencia entre las aproximaciones obtenidas por A1
y A2 en términos prácticos, en la figura 4.8 se presenta una simulación del efecto de dos
controladores K1 y K2 (ver figura 4.4) ante la acción de las señales de perturbación y ruido
mostradas en la figura 4.7. En particular, es posible observar una reducción significativa
de los picos de la señal de salida.
74
0 10 20 30 40 50 60 70 80 90
−0.2
0
0.2
0.4
0.6
0.8
1
t
y(t)
Perturbación p(t)Ruido n(t)
Figura 4.7: Perturbación y ruido que actúan sobre el lazo
0 20 40 60 80 100−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
t
y(t)
Respuesta del lazo con controlador K1Respuesta del lazo con controlador K2
Figura 4.8: Salida del lazo de control, afectada por perturbación y ruido
754.3. Método de diseño basado en la aproximación la región de
estabilidad
Tal como hemos visto en las sección anterior, la restricción de estabilidad es fun-
damental para el diseño de controladores automáticos. Cuando se intenta resolver el
problema mediante algoritmos genéticos, es posible utilizar una función auxiliar para pe-
nalizar los individuos inestables (no factibles) y tratar de guiar a la población hacia la
región estabilizante.
Sin embargo, esta estrategia puede conducir a fenómenos no deseados tales como con-
vergencia prematura en caso de que sea difícil encontrar soluciones factibles. Ante esta
situación, los investigadores han planteado dos tipos de enfoque:
• Utilizar un algoritmo que opere en un espacio de búsqueda con límites dinámicos,
que puedan adaptarse para no quedar atrapado dentro de una región no factible.
• Utilizar algun método para obtener información acerca de la geometría de las regiones
factibles.
Varios investigadores han propuesto espacios de búsqueda con límites dinámicos. De
hecho el algoritmo Multi-Objective Robust Control Design (MRCD) propuesto en (Her-
reros, 2000) utiliza límites dinámicos para el espacio de búsqueda y una división de la
población en islotes distribuidos.
En (Arakawa et al., 1998) se propone el algoritmo Adaptive Range Genetic Algorithm
(ARange GA) en el cual se adopta un espacio de búsqueda adaptivo que no necesita
especificar el rango para la población inicial.
En (Khor et al., 2002) se utiliza un enfoque de aprendizaje inductivo/deductivo para di-
rigir a la población hacia zonas que se encuentran fuera de los límites iniciales de búsqueda.
Los autores afirman que su método es capaz de adaptar la precisión de la representación
genética con el fin de mejorar las soluciones.
Otro algoritmo que puede citarse dentro de esta categoría es el Adaptive Range Multi-
Objective Genetic Algorithm (ARMOGA) propuesto en (Sasaki et al., 2002). Este algo-
ritmo calcula estadísticas en función de las muestras que se han tomado para decidir los
límites del espacio de búsqueda que se utilizarán en la siguiente iteración. Los autores
76afirman que su método permite reducir el número de evaluaciones necesarias para obtener
la aproximación de Pareto.
En otro orden de ideas, los métodos aleatorios han ganado aceptación para el estudio
de sistemas inciertos y una cantidad considerable de resultados han sido publicados en la
literatura (Calafiore & Dabbene, 2006). La idea básica consiste en considerar los parámet-
ros inciertos como variables aleatorias, lo que conduce a evaluar su desempeño en términos
de probabilidades. De manera recíproca, la síntesis probabilística consiste en determinar
los valores de los parámetros para que la probabilidad de obtener un buen desempeño sea
alta.
A continuación se propone un método de diseño que intenta determinar una aproxi-
mación de la geometría de la región factible mediante muestreo aleatorio puro. Es necesario
aclarar que el objetivo no es el cálculo de la región estabilizante como tal, ya que en este
caso el algoritmo de Hohenbichler y Abel permite determinarla de manera eficiente como
se mostró anteriormente. El objetivo que se persigue es mostrar que en algunos casos
es posible obtener aproximaciones que permiten mejorar la calidad de los diseños finales
obtenidos por el algoritmo genético.
Durante la primera etapa del método propuesto se resuelve un sub-problema que con-
siste en estimar los vértices del espacio de búsqueda que maximizan simultaneamente el
volumen y la proporción de individuos factibles, muestreados aleatoria y uniformemente.
Durante la segunda etapa se selecciona un conjunto de vértices en particular con el fin de
continuar la búsqueda evolutiva considerando los objetivos de diseño del problema original
y enfocándose en la región seleccionada.
Sea n el número de variables de decisión del problema (4.19) y L,L ∈ Rn vectores
reales que definen el intervalo de variación para cada una de las variables. En el caso del
diseño PID hemos visto que se tiene n = 3 y además
KP ∈ [L1, L1] (4.24)
KI ∈ [L2, L2]KD ∈ [L3, L3]
Consideremos el siguiente sub-problema:
minL,L∈Rn g1(L,L)
g2(L,L)
(4.25)
77con
g1(L,L) = 1−Ns(L,L)
N(4.26)
g2(L,L) =
Vmax − n∏i=1(Li − Li)Vmax (4.27)
y donde Ns es el número de individuos factibles obtenidos mediante muestreo aleatorio
en el interior del volumen definido mediante L,L, ver ecuación (4.5). El número N de
elementos del conjunto de muestreo puede ser estimada mediante la fórmula de Chernoff:
N =1
2ǫ2 ln2
δ(4.28)
y entonces se cumple:
Prob{∣∣∣∣p−
NsN
∣∣∣∣ ≤ ǫ
}≥ 1− δ (4.29)
donde
p = Prob{St(KPID) = 1} (4.30)
con ǫ, δ cantidades positivas que deben ser ajustadas en función de la precisión deseada.
Por otra parte, en la ecuación (4.27) la cantidad Vmax es el volumen máximo del espacio
de búsqueda, calculado como
Vmax = maxL,L∈Rn n∏i=1(Li − Li) (4.31)
Para la pruebas se seleccionaron los valores ǫ = δ = 0.1 lo cual conlleva a un muestreo
de 100 individuos por cada sub-región. Se consideró el mismo modelo a lazo abierto
estudiado en la sección anterior (ver figura 4.3) con Vmax = 20× 20× 20.
En la tabla 4.6 se muestra la configuración utilizada para la ejecución del SPEA2
durante esta primera etapa. Note que para este problema se permitió un total de 1000
evaluaciones de las funciones g1 y g2, lo cual es suficiente para seleccionar una aproximación
de la región factible.
La figura 4.9 permite apreciar un ejemplo del frente obtenido al finalizar esta etapa.
En dicha figura también es posible apreciar los intervalos PID correspondientes a las dos
soluciones extremas del frente de Pareto. Note el conflicto agudo entre los objetivos g1 y
g2, en el cual practicamente no existe solución de compromiso.
78Tabla 4.6: Configuración utilizada por SPEA2 durante la primera etapa del método deaproximación de la región factible
Parámetro ValorRepresentación Números reales
Operador de cruce Aritmético con reparaciónProbabilidad de cruce 0.9Operador de mutación Perturbación gaussiana con reparación
Probabilidad de mutación 0.1Condición de parada 20 generaciones
Número máximo de evaluaciones 1000Tamaño máximo del archivo externo 50
Esquema de selección (50+50)
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
0
0.2
0.4
0.6
0.8
1
1.2
g1
g 2
KP∈ [−4.9,2.4]
KI∈ [0.19,6.24]
KI∈ [−5.9,3.2]
KP∈ [−20,20]
KI∈ [−20,20]
KI∈ [−20,20]
Figura 4.9: Ejemplo de aproximación obtenida al final de la primera etapa
Con respecto a los operadores de variación, a lo largo de esta primera etapa es necesario
utilizar un mecanismo de reparación para corregir los individuos que no correspondan
a un conjunto válido de vértices. Esta reparación consiste simplemente en ordenar la
información contenida en los cromosomas para asegurar que aparezcan en forma ordenada.
Una vez culminada la primera etapa, se selecciona un conjunto de vértices en particular
con el fin de continuar el proceso de búsqueda considerando el problema de diseño original
y enfocándose en la región delimitada por los vértices seleccionados.
A continuación se presentan los resultados obtenidos mediante los siguientes algoritmos:
• A1: que opera en un espacio de búsqueda definido por
KP ,KI , KD ∈ [−10, 10] (4.32)
79• A2: que opera en el espacio de controladores estabilizantes determinado mediante el
método de Hohenbichler y Abel, junto con operadores especiales de variación.
• A3: correspondiente al método de diseño en dos etapas presentado en esta sección,
utilizando los límites
KP ∈ [−4.95, 2.43] (4.33)
KI ∈ [0.19, 6.24]
KD ∈ [−5.97, 3.25]
que corresponden a g1 = 0 y g2 = 0.99 (ver figura 4.9). Estos valores indican que
se le da más importancia al objetivo g1, relacionado con la proporción de individuos
factibles muestreados.
La configuración utilizada para A1, A2 y A3 es idéntica a la mostrada anteriormente
en la tabla 4.2. En la figura 4.10 se puede observar un ejemplo de las aproximaciones que
se obtiene mediante cada uno de los algoritmos. En las tablas 4.7 y 4.8 se presentan los
valores promedios y las desviaciones correspondientes a los indicadores C,N,DMAX y
ESS.
0.66 0.67 0.68 0.69 0.7 0.71 0.720.2
0.25
0.3
0.35
0.4
0.45
0.5
0.55
0.6
0.65
f1
f 2
Aproximación obtenida por A1Aproximación obtenida por A2Aproximación obtenida por A3
Figura 4.10: Ejemplo de las aproximaciones que se obtienen mediante A1, A2 y A3
Como era de esperarse, el algoritmo A2 produce los mejores indicadores en cuanto
al indicador de cobertura, para el cual A1 y A3 son estadísticamente equivalentes. Sin
embargo, A3 produce mejores indicadores que A1, lo cual ilustra la eficacia del método de
aproximación de la región factible para el problema propuesto. En la tabla 4.9 se presentan
los p-valores correspondientes a las pruebas de Wilcoxon para determinar las diferencias
que son estadísticamente significativas.
80
Tabla 4.7: Resultados del indicador de cobertura. Algoritmos A1, A2 y A3C(Ai, Aj) A1 A2 A3
A1 − 0.2043(0.3103) 0.0580(0.1790)A2 0.5946(0.4552)∗ − 0.6074(0.2898)∗A3 0.6483(0.4228) 0.0723(0.1680) −
Tabla 4.8: Resultados de los indicadores N, ESS y DMAX. Algoritmos A1, A2 y A3N DMAX ESS
A1 15.4667(15.1128) 0.1767(0.1559) 0.0118(0.0224)A2 36.5333(14.0804)∗ 0.3692(0.1629)∗ 0.0080(0.0082)A3 26.5333(14.7712) 0.2423(0.1050) 0.0074(0.0076)
Tabla 4.9: P-valores correspondientes a las pruebas de Wilcoxon para determinar lasdiferencias que son estadísticamente significativas. Algoritmos A1, A2 y A3
Hipótesis Nula p− valor ConclusiónC(A1, A2) = C(A2, A1) 7.7540e− 004 RechazarC(A1, A3) = C(A3, A1) 6.0177e− 008 RechazarC(A2, A3) = C(A3, A2) 2.4955e− 009 Rechazar
N(A1) = N(A2) 1.9066e− 006 RechazarN(A1) = N(A3) 9.5896e− 004 RechazarN(A2) = N(A3) 0.0096 Rechazar
DMAX(A1) = DMAX(A2) 2.4321e− 005 RechazarDMAX(A1) = DMAX(A3) 0.0199 RechazarDMAX(A2) = DMAX(A3) 0.0025 Rechazar
ESS(A1) = ESS(A2) 0.4118 No RechazarESS(A1) = ESS(A3) 0.4917 No RechazarESS(A3) = ESS(A2) 0.9352 No Rechazar
814.4. Resumen del capítulo
En este capítulo se presentaron dos nuevos métodos de diseño PID multi-objetivo
que utilizan resultados de la teoría de control y algoritmos genéticos para resolver el
problema de optimización. El primer método determina los límites de la región de contro-
ladores PID estabilizantes utilizando el método propuesto por Hohenbichler y Abel (2008).
Posteriormente genera la población inicial y utiliza operadores especiales de variación para
mantenerse en el interior de la región factible.
El segundo método determina una aproximación de los límites resolviendo previamente
un primer sub-problema: se intenta maximizar simultaneamente el volumen y el número
de individuos factibles muestreados aleatoria y uniformemente.
A continuación se selecciona un conjunto de vértices en particular con el fin de continuar
el proceso de búsqueda considerando los objetivos originales y enfocándose en la región
delimitada por el conjunto de vértices seleccionados.
Las pruebas estadísticas muestran que, en el caso del problema de diseño bajo estudio,
ambos métodos permiten obtener mejores valores de los indicadores de desempeño con
respecto al método tradicional.
CAPÍTULO V
BÚSQUEDA MULTI-OBJETIVO LOCAL
En este capítulo se presenta un nuevo operador genético específicamente diseñado para
la búsqueda local multi-objetivo, llamado Ascenso de Colina con Paso Lateral (ACPL).
En caso de no encontrar soluciones dominantes el operador utiliza la información recolec-
tada para intentar moverse hacia algún cono de diversidad (paso lateral). Se propone un
esquema para la integración del ACPL con el algoritmo SPEA2, generando de esta forma
un algoritmo híbrido (memético) denominado SPEA2-ACPL. Se presentan los resultados
obtenidos cuando se utiliza el operador propuesto para resolver problemas que involucran
funciones convexas y no-convexas.
Parte de los resultados presentados en este capítulo fueron previamente incluidos como
parte de las publicaciones (Schütze et al., 2008) y (Lara et al., 2010).
5.1. Antecedentes
Algunos algoritmos de optimización se caracterizan por lograr buenas propiedades
de convergencia local, lo cual viene asociado al costo de la información sobre las derivadas
de la función objetivo. Por otra parte, los algoritmos genéticos (y muchos otros similares)
permiten explorar el espacio de búsqueda para intentar aproximarse a los mínimos globales.
Los algoritmos meméticos (Moscato, 1989) intentan combinar las ventajas de un al-
goritmo genético y un algoritmo de búsqueda local. Una de las primeras referencias en
el caso multi-objetivo fue presentada por Ishibuchi & Murata (1996) con el nombre de
Multi-Objective Genetic Local Search (MOGLS). Este autor propuso utilizar una función
escalar de ponderación con pesos aleatorios para seleccionar los padres a partir de los
cuales se debe realizar la búsqueda local.
Otro memético importante desde el punto de vista histórico es el M-PAES propuesto
en (Knowles & Corne, 2000). Este algoritmo utiliza dos archivos de almacenamiento:
83uno para las soluciones no-dominadas globales (que funciona de la misma manera que
en el SPEA2 por ejemplo) y el otro para soluciones no-dominadas locales que se emplea
únicamente para decidir si se acepta el individuo producido por la búsqueda local.
En (Murata et al., 2003) se propuso un operador que utiliza una regla generalizada de
dominancia, basada en el número de objetivos que se ven mejorados al aplicar el operador.
Típicamente la estrategia más utilizada consiste en reemplazar el individuo actual por otro
que lo domina en todos los objetivos.
Una de las primeras referencias en el caso de funciones definidas para un rango continuo
es el artículo (Goel & Deb, 2002), en el que un operador de búsqueda local fue combinado
con el NSGA-II. En las primeras pruebas el operador se aplicó al finalizar la ejecución
del NSGA-II (de manera que realmente no hay interacción entre el operador de búsqueda
local y los operadores genéticos). Posteriormente se aplicó el operador de búsqueda local
en cada generación. Los autores encontraron que el operador local mejoraba la calidad de
las soluciones obtenidas, pero aumentando considerablemente el número de evaluaciones
del vector objetivo.
En (Sharma et al., 2007) se combinó una búsqueda local de tipo Sequential Quadratic
Programming (SQP) con los algoritmos NSGA-II y SPEA2 para resolver un conjunto
de problemas benchmark. Los autores afirman que si no hay frentes de Pareto locales,
el algoritmo híbrido converge más rápido hacia un COGP sin perder diversidad en las
soluciones.
En (Adra et al., 2005b) tres métodos de búsqueda local fueron hibridizados conMOGA:
Recocido Simulado, Ascenso de Colina y Búsqueda Tabú. Los tres híbridos fueron com-
parados contra el MOGA tomando en cuenta el mismo número de evaluaciones. Los
autores afirman que el híbrido MOGA - Ascenso de Colina produjo los mejores resulta-
dos. También observaron que el proceso de búsqueda local puede provocar el fenómeno de
convergencia prematura si no se incorpora un mecanismo de preservación de la diversidad.
En (Wanner et al., 2006) el operador de búsqueda local utiliza aproximaciones cuadráti-
cas de todas las funciones objetivo, utilizando la información obtenida a partir del punto
seleccionado. Se presentan los resultados obtenidos mediante la hibridización con el algo-
ritmo SPEA2.
845.2. Ascenso de Colina con Paso Lateral (ACPL)
Sea xk ∈ X a un punto factible a partir del cual se desea llevar a cabo el proceso de
búsqueda local y xk+1 el nuevo punto generado por el operador. En el caso multi-objetivo
sería deseable que esta operación verifique las siguientes propiedades:
1. Si xk se encuentra “lejos” de un COLP, entonces xk+1 debería ser tal que xk+1 xk(descenso en todos los objetivos).
2. En caso contrario, xk+1 debería ser tal que xk+1 ‖ xk, lo cual puede contribuir a la
exploración del COLP.
3. Por otra parte el operador debe ser capaz de utilizar información de gradiente, tomar
en cuenta las restricciones del problema e interactuar fácilmente con un algoritmo
de búsqueda global.
En esta sección se presenta el operador ACPL, especialmente diseñado para proble-
mas multi-objetivo intentando cumplir en la medida de lo posible con las propiedades
antes enumeradas. En caso de no encontrar soluciones dominantes, el operador utiliza la
información recolectada para intentar generar soluciones que pertenezcan a los conos de
diversidad (paso lateral).
La idea principal se inspira en el análisis geométrico realizado por Brown y Smith
(2005). Cuando un punto se encuentra “lejos” de un COLP, los conos de ascenso, descenso
y diversidad presentan aproximadamente el mismo ángulo (ver figura 5.1). Si por el
contrario, el punto se encuentra “cerca” de un COLP, los ángulos de ascenso y descenso
se hacen menores (ver figura 5.2) y como consecuencia es menos probable seleccionar al
azar una dirección en estos conos.
5.2.1 Caso sin información de gradientes
A continuación se describe el funcionamiento del operador, asumiendo que no se
dispone de la información del gradiente de ninguna función objetivo (ver algoritmo 5.1).
Sea x0 ∈ X (con X ⊂ Rn) un punto factible a partir del cual se comienza la búsqueda
local con el objetivo de generar un conjunto Xnd de nuevos puntos factibles no dominados
con respecto a x0.
85
Figura 5.1: Situación que se presenta cuando el punto de prueba se encuentra lejos deun COLP. Cono de descenso amplio (región sombreada).
Figura 5.2: Situación que se presenta cuando el punto de prueba se encuentra cerca deun COLP. Cono de descenso estrecho (región sombreada).
86
Entradas : x0, r,Nnd, ε,NiterSalidas : Xnk = 1;1ab = 0,∀b ∈ BM ;2nb = 0, ∀b ∈ BM ;3Mientras k ≤ Niter hacer4
Seleccionar x1∈B(x0, r);5Si f(x1) f(x0) entonces6
d = x1 − x0;7Calcular t de acuerdo a (5.4);8x2 = x0 + td;9Xnd = Archivar(x2);10ab = 0, ∀b ∈ BM ;11nb = 0, ∀b ∈ BM ;12x0 = x2;1314
sino si f(x0) f(x1) entonces15d = x0 − x1;16Calcular t de acuerdo a (5.4);17x2 = x0 + td;18Xnd = Archivar(x2);19ab = 0, ∀b ∈ BM ;20nb = 0, ∀b ∈ BM ;21x0 = x2;2223
sino24b = tipo de cono de diversidad de x1 con respecto a x0;25nb = nb + 1;26ab = ab + x1−x0‖x1−x0‖ ;27
finsi28k = k + 1;29
Fin30k = 1;31Mientras k ≤M hacer32
Si nb = r,Nndb entonces33Calcular tb de acuerdo a (5.10);34x2 = x0 + tbab);35Xn = Archivar(x2)36
finsi37k = k + 1;38
Fin39Algoritmo 5.1 : Operador ACPL
87En primer lugar se selecciona de manera aleatoria un punto de prueba x1 perteneciente
al vecindario B(x0, r) definido por
B(x0, r) ={x ∈ X : x0i − ri ≤ xi ≤ x0i + ri, i = 1, 2, . . . , n
}(5.1)
En este punto existen varias posibilidades. Si se cumple f(x1) f(x0) entonces se define
la dirección de búsqueda como
d = x1 − x0 (5.2)
Si por el contrario se cumple la condición f(x0) f(x1) entonces es posible realizar la
búsqueda en la dirección inversa d = x0 − x1.El siguiente paso consiste en llevar a cabo una búsqueda lineal multi-objetivo en la
dirección d, resolviendo M sub-problemas de la forma
mintj∈R fj(x0 + tjd), j = 1, 2, . . . ,M (5.3)
para obtener un conjunto de soluciones {t∗1, t∗2, . . . , t∗M}, a partir de las cuales se debe
seleccionar la longitud del paso t (Dennis & Schnabel, 1983). Para intentar garantizar
el descenso de todas las funciones objetivo generalmente la estrategia más conservadora
consiste en seleccionar
t = min {t∗1, t∗2, . . . , t∗M} (5.4)
A continuación se describe un método aproximado con el fin de resolver los sub-
problemas escalares (5.3). Sea f : R → R la función que se desea minimizar. Como
datos de entrada se tienen dos valores t0 < t1 tales que f(t0) < f(t1). Defina
∆ = t1 − t0 (5.5)
tl = t0tm = t1tr = t0 + 2∆
En primer lugar se comprueba la condición de curvatura
f(tm)− f(tl)tm − tl <
f(tr)− f(tm)
tr − tm (5.6)
Si esta condición se cumple, entonces es posible aproximar a f por un polinomio de la
forma
p(t) = at2 + bt + c (5.7)
88cuyos coeficientes a, b, y c pueden ser calculados a partir de los valores p(tl) = f(tl),p(tm) = f(tm) y p(tr) = f(tr). En particular, el mínimo de p(t) se alcanza para
t∗ = −b
2a(5.8)
cantidad que puede servir como estimado de la solución del problema (5.3) para cada
función objetivo.
Si la condición de curvatura (5.6) no se cumple, entonces se puede conjeturar que
todavía es posible dar un paso más grande fijando tl = tm, tm = tr y tr = 2tr. Este
procedimiento puede realizarse tantas veces como sea necesario, aumentando progresiva-
mente la longitud del paso hasta que se cumpla la condición (5.6) o hasta que se llegue a
un punto fuera de la región factible (ver sección de tratamiento de las restricciones más
adelante).
Suponga ahora que x0 y x1 resulten incomparables. El operador ACPL identifica
el tipo de cono de diversidad al cual pertenece x1 con respecto a x0 y almacena esta
información. Seguidamente se selecciona un nuevo punto de prueba x2 en B(x0, r) y se
repite el procedimiento descrito anteriormente para el procesamiento de x1.Si durante este proceso se recolectan nb ≥ Nndb puntos pertenecientes a C(x0, b) en-
tonces se intenta realizar movimientos laterales utilizando las direcciones acumuladas:
ab =1
nb nb∑j∈{índices de los puntos pertenecientes a C(x0,b)} xj − x0‖xj − x0‖ (5.9)
donde los xj que intervienen en la expresión anterior corresponden a la secuencia de puntos
pertenecientes a C(x0, b). El vector Nnd debe ser definido por el usuario, en función del
presupuesto disponible para el número de evaluaciones de las funciones objetivo.
La longitud del paso lateral tb en la dirección ab puede ser calculada mediante la
ecuación
tb =εb
‖ab‖∞ (5.10)
donde ε es un vector de parámetros que regulan la distancia entre dos soluciones vecinas
del conjunto de Pareto, para cada cono de diversidad.
Todo el proceso descrito en los párrafos anteriores se ejecuta la cantidad de Niter veces:
mientras mayor sea este parámetro, mayor número de puntos serán muestreados en el
vecindario del punto de origen.
895.2.2 Caso con información de gradientes
Cuando se tiene acceso a todos los gradientes de las funciones objetivo, es posible
calcular la dirección de descenso propuesta en el capítulo 3 (ver ecuación 3.17). Poste-
riormente se puede calcular la longitud del paso mediante el método que se describió en
la sección anterior o preferiblemente mediante una búsqueda inexacta intentando que se
satisfagan las condiciones de Wolfe para todas las funciones objetivo (Dennis & Schnabel,
1983).
Con respecto al movimiento lateral, en cuanto se detecta la condición
∥∥∥∥∥
M∑i=1 α∗i∇fi(x∗)∥∥∥∥∥22 ≤ εP (5.11)
donde εP > 0 es una cantidad pequeña a definir, se puede conjeturar que el punto actual
se encuentra cerca de un COLP.
En este sentido, un método para intentar obtener puntos incomparables pertenecientes
a un vecindario de x∗ fue propuesto en (Hillermeier, 2001). En primer lugar se determinan
los vectores qi ∈ Rn, i = 1, 2, ...,M − 1 extraídos de las primeras n filas de las M − 1
columnas que conforman la matriz QK ∈ R(M+n)×(M−1), obtenida a su vez a partir de la
factorización ortogonal QR[QN QK ] ∗R = (M ′(x∗,α∗))T (5.12)
donde M ′ ∈ R(M+n)×(M+n) es la matriz jacobiana de
M(x,α) =
∑Mi=1αi∇fi(x)∑Mi=1αi − 1
(5.13)
Note que los vectores qi forman una base ortonormal de un hiperplano de dimensión
M − 1 tangente al COLP en x∗ y por lo tanto pueden ser utilizados (así como cualquier
combinación lineal) como potencial dirección de diversidad. La longitud del paso lateral
se determina como
tb =εb
‖qb‖∞ (5.14)
donde ε es el vector que se introdujo previamente en la ecuación (5.10).
905.2.3 Tratamiento de restricciones
Para el manejo de las restricciones, en el caso en que no se maneja información de
gradientes, se propone adoptar un mecanismo de retorno a la región factible. Suponiendo
que el punto de origen es factible, se realiza una búsqueda lineal multi-objetivo en la
dirección de descenso, tal como se explicó en las secciones anteriores. Si el resultado no
es factible, se ejecuta el algoritmo 5.2, basado en el método de bisección hasta alcanzar la
precisión deseada, especificada mediante el parámetro Tol.
Entradas : x0 ∈ X , x1 /∈ X , TolSalidas : x ∈ x0x1 ∩ X con miny∈∂X ‖y − x‖ ≤ Tolin0 = x0;1out0 = x1;2i = 0;3Mientras ‖outi − ini‖ ≥ Tol hacer4
mi = ini + 12(outi − ini);5Si mi ∈ X entonces6
ini+1 = mi;7outi+1 = outi;8
sino9ini+1 = ini;10outi+1 = mi;11
i = i + 1;12Fin13Algoritmo 5.2 : Retorno a la región factible para el operador ACPL1
Con respecto al caso en que se maneja información de gradiente, al momento en que
se redacta este documento todavía no se cuenta con una versión del operador que tome en
cuenta el gradiente de las funciones de restricción de manera eficiente. No obstante, para
las restricciones de intervalo sobre las variables, del tipo
ximin ≤ xi ≤ ximax (5.15)
se propone utilizar un mecanismo sencillo de proyección a la región factible de la forma
xpi =
xi si ximin ≤ xi ≤ ximaxximin si ximin > xiximax si ximax < xi (5.16)
donde xp es el vector proyectado. Este método tiene como ventaja que no se necesita
especificar ningún parámetro adicional desde el punto de vista del funcionamiento del
operador.
91En la tabla 5.1 se muestra un resumen de los parámetros a ser fijados para el correcto
funcionamiento del operador, en los casos con o sin información de gradiente.
Tabla 5.1: Parámetros que deben ser definidos por el usuario en los casos con y sininformación de gradientes
Parámetro Sin ∇fi(x) Con ∇fi(x)r ∈Rn+ Si No
Nnd ∈N2M−2+ Si Noε ∈R2M−2+ Si SiNiter ∈N+ Si SiεP ∈R+ No SiTol ∈ R+ Si Si
5.3. Evaluación del operador ACPL
5.3.1 Problema convexo sin restricciones
En esta sección considere el siguiente problema
P1 :minx∈R2 (x1 − 1)4 + (x2 − 1)2(x1 + 1)2 + (x2 + 1)2 (5.17)
Las figuras 5.3 y 5.4 muestran el verdadero conjunto y frente de Pareto, obtenidos re-
solviendo el problema escalar
P ′1 :minx∈R2 α [(x1 − 1)4 + (x2 − 1)2]+ (1− α)[(x1 + 1)2 + (x2 + 1)2]
para 1000 valores de α distribuidos uniformemente entre 0 y 1.
A continuación se presentan los resultados obtenidos al aplicar el operador ACPL
sucesivamente a partir de un punto de origen. Para verificar si el operador es capaz de
generar todo el frente, la prueba se divide en tres etapas.
En primer lugar se aplica el operador hasta que se detecta el primer paso lateral.
Inmediatamente se modifica el funcionamiento del operador para aceptar únicamente las
soluciones que mejoren un objetivo, por ejemplo f1. Durante la tercera etapa se aceptan
únicamente las soluciones que mejoren el otro objetivo, por ejemplo f2.Se realizaron pruebas utilizando las dos modalidades del operador: sin información de
gradiente (denotado ACPL1) y con información de gradiente (denotado ACPL2). Para la
92
−1 −0.5 0 0.5 1−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
x1
x 2
Figura 5.3: Verdadero conjunto de Pareto para el problema P1prueba de ambas versiones se utilizó el mismo punto de inicio x0 = [5, 5]. Los valores de
los parámetros característicos del operador se muestran en la tabla 5.2.
Tabla 5.2: Valores utilizados para los parámetros ACPLParámetro Valor
ε [0.1, 0.1]εP 0.01r [0.01, 0.01]
Niter 10Nnd [5, 5]Tol 10−4
En las figuras 5.5 y 5.6 se muestra un ejemplo de apróximación generada por ACPL1,
en el espacio de objetivos y en el espacio de variables respectivamente. En total, ACPL1
requirió 925 evaluaciones de las funciones objetivo y ACPL2 únicamente 143. Sin embargo
ACPL2 empleó 50 evaluaciones de la matriz jacobiana y 50 evaluaciones de las matrices
hessianas. Note que la aproximación producida por ACPL2 es prácticamente idéntica al
frente de Pareto generado mediante escalarización, tal como es posible apreciar en las
figuras 5.7 y 5.8.
93
0 5 10 15 200
1
2
3
4
5
6
7
8
f1
f 2
Figura 5.4: Verdadero frente de Pareto para el problema P1
−1 −0.5 0 0.5 1−1.5
−1
−0.5
0
0.5
1
1.5
x1
x2
Verdadero Conjunto de ParetoAproximación obtenida mediante ACPL1
Figura 5.5: Aproximación del conjunto de Pareto generada por ACPL1. Problema P1
94
0 2 4 6 8 10 12 14 16 180
1
2
3
4
5
6
7
f1
f 2
Verdadero frente de ParetoAproximación obtenida mediante ACPL1
Figura 5.6: Aproximación del frente de Pareto generada por ACPL1. Problema P1
−1 −0.5 0 0.5 1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
x1
x2
Verdadero Conjunto de Pareto
Aproximación obtenidamediante ACPL2
Figura 5.7: Aproximación del conjunto de Pareto generada por ACPL2. Problema P1
95
0 5 10 15 20 250
1
2
3
4
5
6
7
8
f1
f 2
Verdadero frente de ParetoAproximación obtenida mediante ACPL2
Figura 5.8: Aproximación del frente de Pareto generada por ACPL2. Problema P1
5.3.2 Problema convexo con restricciones de intervalo
En esta sección considere el siguiente problema
P2 : minx∈[0.5,1]×[1,2] (x1 − 1)4 + (x2 − 1)2(x1 + 1)2 + (x2 + 1)2 (5.18)
Las figuras 5.9 y 5.10 muestran el verdadero conjunto y frente de Pareto, obtenidos re-
solviendo el problema escalar
P ′2 : minx∈[0.5,1]×[1,2] α [(x1 − 1)4 + (x2 − 1)2]+ (1− α)[(x1 + 1)2 + (x2 + 1)2]
para 1000 valores de α distribuidos uniformemente entre 0 y 1.
Para la prueba de ambas versiones del algoritmo se utilizó el mismo punto de inicio
factible x0 = [1, 2] con los mismos valores de los parámetros mostrados en la tabla 5.2. En
las figuras 5.11 y 5.12 se puede observar un ejemplo del tipo de apróximación que puede
generar ACPL1 en el caso con restricciones. En las figuras 5.13 y 5.14 se observan las
correspondientes a ACPL2. En total, ACPL1 utilizó 2021 evaluaciones de las funciones
objetivo. ACPL2 requirió 103 evaluaciones de las funciones objetivo, 50 evaluaciones de
la matriz jacobiana y 50 evaluaciones de las matrices hessianas.
96
0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1
0.75
0.8
0.85
0.9
0.95
1
1.05
1.1
1.15
1.2
1.25
x1
x 2
Figura 5.9: Verdadero conjunto de Pareto para el problema P2
0 0.01 0.02 0.03 0.04 0.05 0.06
6.4
6.6
6.8
7
7.2
7.4
7.6
7.8
8
8.2
f1
f 2
Figura 5.10: Verdadero frente de Pareto para el problema P2
97
0.5 0.6 0.7 0.8 0.9 10.97
0.98
0.99
1
1.01
1.02
1.03
x1
x 2
Verdadero Conjunto de ParetoAproximación obtenida mediante ACPL1
Figura 5.11: Aproximación del conjunto de Pareto generada por ACPL1. Problema P2
0 0.01 0.02 0.03 0.04 0.05
6.4
6.6
6.8
7
7.2
7.4
7.6
7.8
8
8.2
f1
f 2
Verdadero frente de ParetoAproximación obtenida mediante ACPL1
Figura 5.12: Aproximación del frente de Pareto generada por ACPL1. Problema P2
98
0.5 0.6 0.7 0.8 0.9 1
0.99
0.992
0.994
0.996
0.998
1
1.002
1.004
1.006
1.008
1.01
x1
x 2
Verdadero Conjunto de ParetoAproximación generada popr ACPL2
Figura 5.13: Aproximación del conjunto de Pareto generada por ACPL2. Problema P2
0 0.01 0.02 0.03 0.04 0.05 0.06
6.4
6.6
6.8
7
7.2
7.4
7.6
7.8
8
8.2
f1
f 2
Verdadero Frente de ParetoAproximación generada por ACPL2
Figura 5.14: Aproximación del frente de Pareto generada por ACPL2. Problema P2
995.3.3 Problema no convexo con restricciones de intervalo
En esta sección considere el siguiente problema no convexo propuesto en (Zitzler
et al., 1999)
P3 : min
xi ∈ [−5, 5] , i = 2, 3, . . . , 20
x1 ∈ [0, 1]
x1g(x)
(1−√ x1g(x)) (5.19)
con g(x) = 191 +20∑i=2 (x2i − 10 cos(4πxi))
Este problema posee 2119 frentes locales y el frente global, para el cual g(x) = 1, se obtiene
con xi = 0, i = 2, 3, . . . , 20. Se realizaron pruebas con ambas versiones del operador,
iniciando la búsqueda a partir del punto
x0 =(
0.5 3 3 . . . 3)
(5.20)
En la figura 5.15 se muestra un ejemplo de las aproximaciones que pueden obtenerse
mediante cada versión del operador.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
0
50
100
150
200
250
Aproximación ACPL2Verdadero frente de ParetoAproximación ACPL1
Figura 5.15: Ejemplo de aproximaciones del frente de Pareto generadas por ACPL1 yACPL2. Problema P3
100Los valores de los parámetros empleados se muestran en la tabla 5.3. Como era de
esperar, ambas versiones del operador producen aproximaciones que se encuentran com-
pletamente alejadas del verdadero frente, esto motivado por el gran número de frentes
locales característicos de este problema.
Tabla 5.3: Valores utilizados para los parámetros ACPL. Problema P3Parámetro Valor
ε [0.05, 0.05]εP 1r
(0.01 0.1 0.1 . . . 0.1
)
Niter 20Nnd [5, 5]Tol 10−4
5.4. Sensibilidad del ACPL
El comportamiento del operador ACPL depende de los valores seleccionados para
sus parámetros. En esta sección se considera de nuevo el problema P1 formulado en la
sección anterior.
La influencia del vector r ∈Rn+ se manifiesta en el número de evaluaciones de las
funciones objetivo necesarias para alcanzar el Frente de Pareto. En la tabla 5.4 se presenta
un ejemplo del número de evaluaciones que emplea ACPL1 antes de que se produzca el
primer intento de paso lateral. Note que este número disminuye cuando aumenta ‖r‖.
Mientras menor sea esta norma, menor será el tamaño de los pasos que ejecuta el operador
y en consecuencia se requieren más pasos para cubrir la misma distancia.
Cuando ‖r‖ aumenta a partir de cierto punto, el operador se hace demasiado impreciso,
de manera que se hace muy difícil conseguir direcciones de descenso. En consecuencia, el
número de evaluaciones de las funciones objetivo necesarios para alcanzar el frente de
Pareto aumenta de manera exponencial.
101Tabla 5.4: Sensibilidad del operador ACPL1 ante variaciones en el vector r
r Evaluaciones de las funciones objetivo[0.001, 0.001] 895[0.01, 0.01] 135[0.1, 0.1] 74
[1, 1] 7269
Como se ha visto previamente, el vector ε ∈R2M−2+ regula la distancia entre dos solu-
ciones vecinas del conjunto de Pareto, para cada cono de diversidad. En las figuras 5.16,
5.17 y 5.18 se muestran las aproximaciones obtenidas por ACPL2 a partir de tres valores
del vector ε. En las mismas es posible apreciar que el espaciamiento entre las soluciones
es regulado mediante los valores especificados en el vector ε ∈R2M−2+ .
El valor del parámetro Niter debe ser ajustado en función del número de evaluaciones
que es posible invertir durante la ejecución del operador. Mientras más grande sea Niter,mayor cantidad de puntos vecinos serán muestreados en busca de direcciones de descenso
o de diversidad. Como regla general, esta cantidad debe ser mayor que la mayor de las
cantidades especificadas en el vector Nnd, para permitir que pueda ocurrir al menos un
paso lateral en cualquier cono de diversidad.
Por su parte, la influencia del vector Nnd se manifiesta en el número de pasos laterales
ejecutados por ACPL1 para intentar cubrir el frente de Pareto. En la tabla 5.5 se presenta
el número de pasos laterales que son efectivamente ejecutados para diferentes valores del
vector Nnd, fijando Niter = 20.
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8
−1.5
−1
−0.5
0
0.5
1
1.5
x1
x2
Verdadero conunto de ParetoAproximación generada por ACPL2
Figura 5.16: Aproximación obtenida mediante ACPL2 con ε1=[0.01, 0.01]
102
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8
−1
−0.5
0
0.5
1
x1
x2
Verdadero conunto de ParetoAproximación generada por ACPL2
Figura 5.17: Aproximación obtenida mediante ACPL2 con ε2=[0.1, 0.1]
−1 −0.5 0 0.5 1−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
x1
x 2
Verdadero conjunto de Pareto
Aproximación obtenida mediante ACPL2
Figura 5.18: Aproximación obtenida mediante ACPL2 con ε3=[1, 1]
103Note que mientras menos pasos laterales se ejecutan, menos evaluaciones de las fun-
ciones objetivo se invierten en el funcionamiento del operador y la aproximación de la
dirección de diversidad es más precisa (se promedian más vectores). La contraparte de
esto es que la longitud del frente que se cubre es menor. En efecto, note que en el caso
extremo, cuando Nnd = [20, 20], no se ejecuta ningún paso lateral.
Tabla 5.5: Sensibilidad del operador ACPL1 ante variaciones en el vector NndNnd Número de pasos laterales N◦ de evaluaciones[2, 2] 202 25024[5, 5] 45 5591
[10, 10] 30 3919[20, 20] 0 2000
Las figuras 5.19, 5.20 y 5.21 permiten observar la influencia del parámetro εP en el fun-
cionamiento del operador ACPL2 (la versión que maneja información de gradientes). En
general se aprecia que mientras menor sea el valor de εP , más precisa será la aproximación
del Conjunto de Pareto, pero por otra parte se invertirá un mayor número de evaluaciones
de las funciones objetivo para generarla.
−1 −0.5 0 0.5 1−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
x1
x 2
Verdadero Conjunto de ParetoAproximación generadapor ACPL2
Figura 5.19: Aproximación obtenida mediante ACPL2 con εP = 0.01
104
−1 −0.5 0 0.5 1−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
x1
x 2
Verdadero Conjunto de ParetoAproximación generadapor ACPL2
Figura 5.20: Aproximación obtenida mediante ACPL2 con εP = 0.1
−1 −0.5 0 0.5 1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
x1
x 2
Verdadero Conjunto de ParetoAproximación generadapor ACPL2
Figura 5.21: Aproximación obtenida mediante ACPL2 con εP = 1
105Para finalizar esta sección, considere el problema de optimización con restricciones P2.
La influencia del parámetro Tol se manifiesta en la distancia tolerada para las soluciones
de la aproximación con respecto con respecto al borde de la región factible (ver figura
5.22).
0.5 0.6 0.7 0.8 0.9 1 1.1 1.20.99
1
1.01
1.02
1.03
1.04
1.05
1.06
1.07
1.08
Aproximación obtenidacon ACPL1 para Tol = 0.01
Aproximación obtenidacon ACPL1 para Tol = 0.1
Figura 5.22: Aproximaciones obtenidas por ACPL1 para distintos valores del parámetroTol
5.5. Integración SPEA2-ACPL
Tal como se expuso en la sección anterior, los algoritmos meméticos intentan
combinar las ventajas de un algoritmo genético con las de un algoritmo de búsqueda local.
Sin embargo, no existe en la actualidad un consenso con respecto a la mejor forma de
realizar esta integración. Entre los elementos que deben tomarse en cuenta se encuentran:
• A cuántos y a cuales individuos debe aplicarse el operador?
• En qué momento? Con qué frecuencia? Durante cuántas generaciones?
De acuerdo con la investigación que se ha realizado, estas preguntas no han sido respon-
didas de manera satisfactoria. El compromiso entre búsqueda local vs búsqueda global es
similar al que existe entre individualismo y colectivismo. En efecto, cuando es necesario
asignar recursos limitados a una población, se debe decidir entre si se quiere lograr mejorar
mucho la condición de pocos individuos, o bien mejorar poco la condición de muchos.
En este trabajo, se propone utilizar el operador ACPL como un operador de mutación
especial, el cual se aplica únicamente a los individuos pertenecientes al archivo externo
106actualizado por SPEA2. En lo que sigue se denota SPEA2-ACPL1 a la versión híbrida
correspondiente al SPEA2 en conjunto con ACPL1 (operador que no utiliza información
de gradiente). De forma similar, se denota SPEA2-ACPL2 a la versión híbrida correspon-
diente al SPEA2 en conjunto con ACPL2 (operador que utiliza información de gradiente).
En particular se propone evaluar tres estrategias de integración:
• E1: Aplicar el operador en todas las generaciones con probabilidad pACPL a partir
de la primera generación.
• E2: Aplicar el operador de manera intermitente, una de cada NACPL generaciones,
con probabilidad pACPL.• E3: Aplicar el operador con probabilidad pACPL cuando se haya consumido el 50%
de la cantidad total de evaluaciones disponibles.
Para todas las pruebas que se presentan a continuación se consideró un presupuesto
fijo de 20.000 evaluaciones del vector objetivo. Por una parte esta cantidad de evalua-
ciones permite que las 30 ejecuciones del algoritmo genético no excedan el tiempo máximo
permitido (≈24 horas). Por otra parte esta cantidad de evaluaciones es suficiente para
alcanzar una etapa del proceso en la cual las aproximaciones de los frentes evolucionan
lentamente con respecto al inicio.
5.5.1 Problema convexo sin restricciones
En esta sección considere el siguiente problema convexo
P4 : minx∈R30 (x1 − 1)4 +30∑i=2(xi − 1)230∑i=1(xi + 1)2
(5.21)
el cual involucra 30 variables de decisión. El verdadero frente de Pareto puede ser obtenido
resolviendo el problema escalar
P ′4 : minx∈R30 α[(x1 − 1)4 +30∑i=2 (xi − 1)2] + (1− α)
[ 30∑i=1 (xi + 1)2] (5.22)
con 100 valores de α distribuidos uniformemente entre 0 y 1.
107La configuración utilizada para la ejecución de las pruebas se muestra en la tabla
5.6. En la tabla 5.7 se presenta el valor medio y la desviación estándar calculada para
los indicadores GD, IGD evaluados a partir de 30 ejecuciones de cada algoritmo. El
valor resaltado con un asterisco corresponde al algoritmo que consigue estadísticamente
los mejores valores, de acuerdo con la prueba de Wilcoxon, con un nivel de significancia α
= 0.05.
Note que las versiones híbridas permiten, cualquiera sea la estrategia de integración,
obtener mejores aproximaciones considerando ambos indicadores. Por otra parte, la es-
trategia E1, la cual consiste en aplicar el operador a partir de la primera iteración, es
la que consigue los mejores resultados. Por lo tanto es posible concluir que para este
problema, la mejor opción consiste en utilizar la información de gradiente lo más pronto
posible.
Tabla 5.6: Configuración utilizada para resolver el problema P4Parámetros ValorRepresentación Números reales
Operador de cruce SBXProbabilidad de cruce 0.9Operador de mutación Perturbación gaussiana
Probabilidad de mutación 0.1Probabilidad de aplicación del ACPL 0.5
NACPL 10ε [0.1, 0.1]εP 0.1r [0.01, 0.01]
Niter 20Nnd [10, 3]Tol 10−4
Condición de parada 200 generacionesNúmero máximo de evaluaciones 20.000
Tamaño máximo del archivo externo 100Esquema de selección (100 + 100)
108Tabla 5.7: Indicadores GD/IGD obtenidos para el problema P4
GD IGDSPEA2 10.5563(5.4469) 16.1034(6.6455)
SPEA2-ACPL1E1 : 3.2782(0.3388)∗E2 : 5.8222(1.4305)E3 : 4.6148(0.5481)
E1 : 6.7728(1.8759)∗E2 : 11.6404(3.3716)E3 : 11.0787(2.2915)
SPEA2-ACPL2E1 : 0.6797(0.0284)∗E2 : 0.7679(0.0722)E3 : 0.6645(0.0306)∗ E1 : 0.5350(0.0479)∗
E2 : 2.2375(2.7337)E3 : 0.9584(0.7102)
5.5.2 Problema no convexo con restricciones de intervalo
En esta sección se retoma el problema P3 anteriormente formulado. La configu-
ración utilizada para estas pruebas se muestra en la tabla 5.8. En la tabla 5.9 se presenta
el valor medio y la desviación estándar calculada para los indicadores GD, IGD evaluados
a partir de 30 ejecuciones de cada algoritmo.
Tabla 5.8: Configuración utilizada para las pruebas del problema P3Parámetros ValorRepresentación Números reales
Operador de cruce SBXProbabilidad de cruce 0.9Operador de mutación Perturbación gaussiana
Probabilidad de mutación 0.1Probabilidad de aplicación del ACPL 0.1
NACPL 10ε [0.1, 0.1]εP 0.1r [0.01, 0.01]
Niter 10Nnd [5, 2]Tol 10−4
Condición de parada 200 generacionesNúmero máximo de evaluaciones 20.000
Tamaño máximo del archivo externo 100Esquema de selección (100 + 100)
109Tabla 5.9: Indicadores GD/IGD obtenidos para el problema P3
GD IGDSPEA2 3.6011(1.1629) 3.2091(0.9735)
SPEA2-ACPL1E1 : 3.7380(1.2520)E2 : 3.7443(1.1807)E3 : 3.7047(1.1083)
E1 : 3.2947(1.0338)E2 : 3.3384(0.9472)E3 : 3.3347(0.8820)
SPEA2-ACPL2E1 : 3.1866(0.9524)E2 : 3.6439(1.0985)E3 : 3.3079(1.0496)
E1 : 2.9530(0.8846)E2 : 3.3188(0.9771)E3 : 3.0206(0.9099)
Las pruebas estadísticas indican que no existen diferencias significativas entre los re-
sultados obtenidos por los diferentes algoritmos, independientemente de la estrategia de
evolución que se adopte. Esto se explica por la gran cantidad de frentes locales, lo cual
aumenta la probabilidad de que los operadores de búsqueda local queden atrapados.
Ahora se considera una variación del problema P3 tal como se muestra a continuación
P5 : min
xi ∈ [−5, 5] , i = 2, 3, . . . , 20
x1 ∈ [0, 1]
x1g(x)
(1−√ x1g(x)) (5.23)
con g(x) = 191 +20∑i=2 (x2i − 10 cos(πxi))
Este problema posee 519 frentes locales y el frente global, para el cual g(x) = 1, se
sigue obteniendo con xi = 0, i = 2, 3, . . . , 20. Los resultados se muestran en la tabla 5.10.
Tabla 5.10: Indicadores GD/IGD obtenidos para el problema P5GD IGD
SPEA2 0.0401(0.0099) 0.0503(0.0062)
SPEA2-ACPL1E1 : 0.0443(0.0103)E2 : 0.0430(0.0076)E3 : 0.0426(0.0096)
E1 : 0.0534(0.0063)E2 : 0.0513(0.0052)E3 : 0.0534(0.0054)
SPEA2-ACPL2E1 : 0.0146(0.0080)∗E2 : 0.0272(0.0081)E3 : 0.0375(0.0102)
E1 : 0.0412(0.0035)∗E2 : 0.0460(0.0052)E3 : 0.0509(0.0056)
110Note que para esta variación el algoritmo SPEA2-ACPL2, utilizando la estrategia
de integración E1, es nuevamente capaz de obtener mejores valores de los indicadores
GD/IGD con respecto al SPEA2, a pesar de la gran cantidad de frentes locales.
5.6. Resumen del capítulo
En este capítulo se presentó un nuevo operador local, denominado ACPL, específi-
camente diseñado para la búsqueda multi-objetivo. Las principales bondades del operador
son las siguientes:
1. Si el punto de prueba se encuentra “lejos” de un COLP, entonces se intenta conseguir
una dirección de descenso en todos los objetivos.
2. Si el punto de prueba se encuentra “cerca” de un COLP, entonces se intenta conseguir
una dirección de diversidad, para intentar mejorar la aproximación del frente.
3. El operador es capaz de utilizar la información de gradiente, en caso de que esta se
encuentre disponible.
4. El operador es capaz de tomar en en cuenta las restricciones del problema y de
interactuar fácilmente con un algoritmo de búsqueda global.
Se consideraron dos versiones del operador ACPL1 (la cual no utiliza información
de gradiente) y ACPL2 (que si utiliza esta información). Se presentaron los resultados
obtenidos cuando se utiliza el operador, en sus dos versiones, de manera aislada o integrada
con un algoritmo de búsqueda global para resolver problemas convexos y no convexos.
Se evaluaron tres estrategias de integración que consisten en
• E1: Aplicar el operador en todas las generaciones con probabilidad pACPL a partir
de la primera generación.
• E2: Aplicar el operador de manera intermitente, una de cada NACPL generaciones,
con probabilidad pACPL.• E3: Aplicar el operador con probabilidad pACPL cuando se haya consumido el 50%
de la cantidad total de evaluaciones disponibles.
En el caso del problema convexo P4, ambas versiones del algoritmo híbrido son capaces
de obtener mejores valores para los indicadores GD/IGD con respecto a los obtenidos por
111el SPEA2 de manera aislada, cualquiera sea la estrategia de integración utilizada. No
obstante la estrategia E1 es la que obtiene los mejores resultados.
En el caso del problema P3 con 2119 frentes locales, ninguna versión del algoritmo
híbrido es capaz de mejorar los resultados obtenidos por SPEA2. En el caso del problema
P5 caracterizado por 519 frentes locales, únicamente la versión SPEA2-ACPL2, utilizando
la estrategia E1, logra mejorar los resultados del SPEA2.
CAPÍTULO VI
PROBLEMA H2/H∞El proceso de diseño de un sistema de control tiene como objetivo dotar a la inter-
conexión de propiedades que la planta no posee de manera aislada. En el capítulo 2 se
definieron algunos índices de desempeño que pueden utilizarse para expresar matemática-
mente y verificar en la práctica el cumplimiento de dichas propiedades. Por ejemplo, para
un sistema SISO, la norma H2 mide la energía de la señal de respuesta del sistema ante
un impulso unitario, mientras que la norma H∞ se relaciona con la amplitud máxima de
la misma señal.
En este capítulo se propone un nuevo método de diseño llamado Multi-Objective
Pole Placement with Evolutionary Algorithms (MOPPEA) y se presentan los resultados
obtenidos cuando se aplica dicho método para resolver el problema mixto H2/H∞ en el
caso de cinco modelos extraídos de la biblioteca COMPleib (Leibfritz, 2004). Como base
del proceso de búsqueda se utilizan los algoritmos SPEA2 y SPEA2-ACPL (ver capítulo
4) y se comparan los resultados con respecto a los obtenidos mediante una secuencia de
problemas de factibilidad LMI. Parte de los resultados presentados en este capítulo fueron
previamente publicados en (Sánchez et al., 2007) y (Sánchez et al., 2008b).
6.1. Formulación
Se asume que el modelo de la planta a controlar (ver figura 6.1) es el siguiente:
x = Ax + Iw + Bu
z1 = y = Cx
z2 = Ax
(6.1)
el cual fue propuesto originalmente por Herreros (2000) en su tesis de doctorado, para
comparar los resultados obtenidos por un algoritmo genético con respecto a la solución
calculada mediante LMIs. Una ventaja de este modelo es que únicamente necesita las
113matrices A,B y C para estar completamente definido, sin perder por ello complejidad en
su estructura.
Figura 6.1: Modelo lineal a lazo cerrado
Con el fin de analizar el conflicto entre los objetivos de robustez y desempeño del lazo,
el problema de diseño mixto PH2/H∞ es formulado en este capítulo como:
PH2/H∞ : minKc∈R(s)nu×ny ‖G1(Kc)‖2‖G2(Kc)‖∞ (6.2)
donde G1 y G2 son las funciones de transferencia a lazo cerrado desde w hacia z1 y z2respectivamente.
6.2. Antecedentes
Uno de los primeros artículos en los que se propone un intento de solución para
el problema que nos interesa en este capítulo fue publicado por Khargonekar y Rotea en
1991. Estos autores propusieron un enfoque basado en ecuaciones algebraicas de Riccati
para el problema planteado de la forma
minK∈Rnu×nx ‖G1(K)‖2sujeto a
‖G2(K)‖∞ ≤ γ
(6.3)
donde γ es un escalar positivo.
Doyle et al (1994) formularon las condiciones suficientes y necesarias para la existencia
de soluciones, proporcionando expresiones matriciales explícitas para la determinación de
114los controladores, en el caso de un problema formulado de la forma
minK∈Rnu×ny ‖G1(K)‖2 + γ ‖G2(K)‖∞ (6.4)
donde γ es un escalar positivo.
Posiblemente uno de los artículos que ha tenido más influencia en el campo de las
aplicaciones de LMIs al problema H2/H∞ fue publicado por Carsten W. Scherer en 1995,
el cual de hecho fue previamente mencionado en el capítulo 2. Este artículo ha inspirado
y servido de base para muchos otros (Clement, 2001; Hassibi et al, 1999; Hindi et al, 1998;
Miyamoto 1997).
En cuanto a las soluciones del problema H2/H∞ basadas en algoritmos genéticos,
diversos autores han publicado artículos relacionados con este tema.
En su tesis doctoral, Herreros (2000) presenta un estudio sobre el diseño de contro-
ladores robustos multi-objetivo por medio de algoritmos genéticos. Propone el algoritmo
MRCD, junto con sus respectivos operadores y demuestra de manera gráfica que sus re-
sultados son mejores con respecto a los producidos mediante LMIs.
Como ya se ha mencionado, fue precisamente Herreros quien propuso la estructura
que se presenta en la figura 6.1. De hecho, propone tres diferentes representaciones del
espacio de controladores, con el fin de estudiar la influencia en la convergencia: la forma
canónica controlable, la forma canónica diagonal y una forma canónica balanceada. En sus
conclusiones, afirma que la forma controlable es la más adecuada para la representación del
espacio de controladores ya que tiene más posibilidades de explorar el espacio de búsqueda.
Molina-Cristobal (2005) y Popov (2005) utilizan el algoritmo MOGA para reducir el
orden de los controladores y mejorar las soluciones con respecto a las obtenidas mediante
LMIs. El primero utiliza una representación de los controladores en tiempo discreto, en
forma de ceros y polos:
K(z) = K(z + z1) (z + z2) . . . (z + znz)
(z + p1) (z + p2) . . . (z + pnp)(6.5)
y el segundo una representación polinomial en tiempo continuo
K(s) = Kb0snz + b1snz−1 + . . . + bnz−1s + bnzsnp + a1snp−1 + . . . + anp−1s + anp (6.6)
115Ambos autores señalan que estas representaciones son ineficaces para generar soluciones
factibles, lo cual los obliga a aumentar el tamaño de las poblaciones y en consecuencia el
número de evaluaciones de las funciones objetivo.
Takahashi et al (2004) proponen un algoritmo genético que asegura la generación de
aproximaciones consistentes del Conjunto de Pareto y lo aplican al problema de diseño
H2/H∞. Estos autores se ocupan del problema de la realimentación estática de estados y
proponen una representación de los controladores de la forma
K =(k1 k2 . . . kn ) (6.7)
lo cual les permite utilizar como población inicial la aproximación del Conjunto de Pareto
generada mediante LMIs.
6.3. Solución mediante LMIs
Una posible solución del problema PH2/H∞ consiste en utilizar los resultados del
trabajo de Scherer (1995) para resolver el problema mixto como una secuencia de proble-
mas de factibilidad H2 y H∞, de la manera que se describe en el algoritmo 6.1.
La idea básica consiste en disminuir linealmente el límite superior de una de las
restricciones, aumentando al mismo tiempo el límite de la otra. Note que aunque en
este trabajo se plantea una evolución lineal para el ajuste, bien pudiera utilizarse un poli-
nomio de orden superior u otras funciones monótonas decrecientes y crecientes. En el caso
que nos ocupa, antes de ejecutar el algoritmo 6.1 es necesario seleccionar los valores de los
parámetros NH2/H∞,∆γ2, ∆γ∞, γmin y γmax.El paso más importante consiste en determinar un controlador Kc que satisfaga las
condiciones
‖G1(Kc)‖2 ≤ γ2 (6.8)
‖G2(Kc)‖∞ ≤ γ∞lo cual puede lograrse resolviendo un conjunto de LMIs, tal como fue mostrado en el
capítulo 2.
Para resolver el conjunto de LMIs es necesario igualar las matrices de decisión correspon-
dientes a cada norma, razón por la cual el propio Scherer (1995) reconoce que este en-
foque genera diseños conservadores. Sin embargo argumenta que “el método posee méritos
116
Entradas :G1 : Función de transferencia entre w y z1G2 : Función de transferencia entre w y z2NH2/H∞ : Número de iteraciones∆γ2 : Distancia deseada entre dos soluciones vecinas. Norma H2∆γ∞ : Distancia deseada entre dos soluciones vecinas. Norma H∞γmin : Mínimo valor deseado para la norma H2γmax : Máximo valor permitido para la norma H∞Salidas : Pk = 1;1Mientras k ≤ NH2/H∞ hacer2
Calcule Kkc solución del sub-problema3∥∥G2(Kkc )
∥∥2 ≤ γmin + k∆γ2∥∥G1(Kkc )
∥∥∞ ≤ γmax − k∆γ∞Pk = ActualizarArchivo(Kkc , Pk−1);4k = k + 1;5
Fin6Algoritmo 6.1 : Generación de una aproximación del Frente de Pareto para elproblema mixto H2/H∞ mediante LMIs
valiosos con respecto a las alternativas disponibles, puesto que conduce a problemas que
pueden ser resueltos numéricamente de manera eficiente”.
Dado que las soluciones obtenidas al resolver la secuencia de problemas de factibilidad
LMI no son necesariamente consistentes con una aproximación del Frente de Pareto, se
propone utilizar un mecanismo para archivar las soluciones no-dominadas (ver capítulo
3) lo cual permite introducir en el proceso de búsqueda cualquier requerimiento que se
desee con respecto a la distribución o diversidad deseada en la aproximación del frente.
Es importante resaltar que en la investigación bibliográfica que se ha realizado, no ha
sido posible encontrar referencias previas del empleo de un algoritmo del tipo que aquí se
propone para resolver el problema PH2/H∞.
6.4. Método MOPPEA
Usualmente la representación genética del espacio de controladores se realiza en
formato de función de transferencia
Kc(s) = x1 s2 + x2s + x3s3 + x4s2 + x5s + x6 (6.9)
117o de matrices de estado (forma controlable u otra)
Kc =
Ac Bc
Cc Dc =
x1 x2 x31 0 0
0 1 0
1
0
0
x4 x5 x6 0
(6.10)
donde x1, x2, . . . , x6 ∈ R son las variables de decisión (Cesareo, 1997).
Sin embargo, también se han propuesto representaciones más elaboradas, con el objeto
de hacer el proceso de búsqueda más eficiente. Por ejemplo, Sánchez y Ferrer (2004) pro-
pusieron una representación basada en la parametrización de controladores estabilizantes
de Youla, la cual permite eliminar la restricción de estabilidad en la formulación del prob-
lema de optimización.
Liu et al (2002) incluyen en la representación genética la información correspondiente
a los auto-valores y auto-vectores de la matriz de transferencia a lazo cerrado, de la forma
p = (λ, R, L) (6.11)
donde λ es el vector de auto-valores, R es la matriz de auto-vectores derechos y L es la
matriz de auto-vectores izquierdos de la matriz de estados a lazo cerrado.
Zavala et al (2002) proponen utilizar como variables de decisión la posición de las raices
de los polinomios R(s), S(s) que intervienen en la ecuación diofantina característica de un
lazo, de la forma
F (s) = A(s)S(s) + B(s)R(s) (6.12)
Existen aplicaciones que exigen representaciones muy particulares. Por ejemplo, en
(Andres et al., 2004) se propuso un algoritmo llamado Variable Interval Multi-Objective
(VIM) en el cual se codifica directamente la duración y la amplitud de los intervalos de la
señal de control. También en (Villasana & Ochoa, 2003) se utiliza una representación de
la señal de control basada en intervalos de duración variable.
A continuación se propone un método de diseño, llamado Multi-Objective Pole Place-
ment with Evolutionary Algorithms (MOPPEA) cuya idea principal consiste en asignar
118una estructura de “Observación + Realimentación de Estados” (ver capítulo 2) a cada
individuo, de la forma:
·x= (A + BK + LC)x− Ly
u = Kx(6.13)
donde x es la estimación del vector de estado, K es la matriz de realimentación de esta-
dos y L la matriz de observación. De manera que el problema de diseño PH2/H∞ puede
replantearse como:
minK∈Rnu×n,L∈Rn×ny ‖G1(K,L)‖2‖G2(K,L)‖∞ (6.14)
y por lo tanto la restricción de estabilidad desaparece del problema de optimización: esto
constituye la principal ventaja del método propuesto con respecto a los trabajos de Her-
reros (2000), Molina-Cristobal (2005) y Takahashi et al (2004).
La representación genética propuesta consiste en concatenar las filas de las matrices K
y L correspondientes a cada individuo en un vector de valores reales. De esta manera, el
número total de variables de decisión se calcula mediante la fórmula
nMOPPEA = n× (nu + ny) (6.15)
donde n es el grado, nu el número de entradas y ny el número de salidas del sistema a lazo
abierto (ver figura 6.2).
Figura 6.2: Representación genética propuesta. Método MOPPEA
Esta representación genética permite utilizar los operadores de variación descritos en
el capítulo 3 y el operador de búsqueda local ACPL propuesto en el capítulo 4. Se propone
en particular utilizar el operador de cruce aritmético. Si los padres seleccionados para el
cruce pertenecen a la región de factibilidad, los hijos producidos por este operador son
igualmente factibles.
119Sean (K1, L1) y (K2, L2) las matrices correspondientes a dos individuos estabilizantes,
es decir, tales que
A + BK1 < 0, A + L1C < 0 (6.16)
A + BK2 < 0, A + L2C < 0
Entonces, se cumple que los hijos(K1, L1) y
(K2, L2) generados mediante el operador
aritmético son ambos igualmente estabilizantes.
En efecto, sean(K1, L1) y (K2, L2) las matrices que representan a los hijos generados
a partir de (K1, L1) y (K2, L2), a saber
K1 = αK1 + (1− α)K2 (6.17)
K2 = (1− α)K1 + αK2L1 = αL1 + (1− α)L2L2 = (1− α)L1 + αL2
donde α es un escalar perteneciente al intervalo [0,1]. Posteriormente se multiplican las
ecuaciones (6.16) por α y (1− α) de manera que se obtiene
αA + αBK1 < 0, αA + αL1C < 0 (6.18)
(1− α)A + (1− α)BK2 < 0, (1− α)A + (1− α)L2C < 0
(1− α)A + (1− α)BK1 < 0, (1− α)A + (1− α)L1C < 0
αA + αBK2 < 0, αA + αL2C < 0
las cuales se cumplen si α = 0, α = 1. Note que en los casos α = 0 o α = 1 los hijos son
idénticos a los padres.
Ahora se adicionan las ecuaciones (6.18) para obtener
αA + αBK1 + (1− α)A + (1− α)BK2 < 0 (6.19)
(1− α)A + (1− α)BK1 + αA + αBK2 < 0
αA + αL1C + (1− α)A + (1− α)L2C < 0
(1− α)A + (1− α)L1C + αA + αL2C < 0
lo cual puede reescribirse como
A + BK1 < 0, A + L1C < 0 (6.20)
A + BK2 < 0, A + L2C < 0
120de donde se se deduce que los hijos generados de esta forma son ambos estabilizantes.
En cuanto al operador de mutación, se propone utilizar un esquema similar al presen-
tado en el capítulo 4. La mutación se realiza fijando α = 1 y a partir de un individuo
factible x se genera una mutación mediante
x = x + αδ (6.21)
donde δ es un vector aleatorio de distribución gaussiana. Si el individuo resultante no es
factible entonces se disminuye α a la mitad y se genera una nueva mutación hasta que el
resultado sea factible.
La generación de la población inicial de MOPPEA se basa en el algoritmo recursivo
6.2. Sean pk ∈ Cn , pl ∈ Cn los autovalores de A + BK , A + LC respectivamente. Para
asegurar la condición de estabilidad a lazo cerrado, las matrices K y L deben calcularse
de tal forma que pk y pl pertenezcan al semi-plano C−, lo cual puede lograrse mediante el
método presentado en el capítulo 2, sección 2.4.
La idea principal es decidir al azar si se genera un polo real o un par de polos conjuga-
dos y a partir de allí formular la recursividad. El objetivo consiste en generar individuos
factibles, distribuidos uniformemente en la zona del semi-plano complejo izquierdo delimi-
tada por dos cotas denotadas rmax , imax que deben ser ajustadas en función de la posición
de los polos del sistema a lazo abierto. Dado que en general se recomienda perturbar lo
menos posible las coordenadas de los polos a lazo abierto, es posible calcular las cotas rmax, imax a partir de dichas coordenadas, dejando sin embargo un cierto márgen para que sea
posible la reubicación en caso de que se estime necesario.
Una vez generada la población inicial, la fase de exploración puede realizarse mediante
cualquier algoritmo genético que permita la búsqueda multi-objetivo. En este trabajo se
propone comparar los resultados obtenidos por SPEA2 y SPEA2 - ACPL con respecto al
método basado en factibilidad LMI, tal como se presenta en la próxima sección.
6.5. Resultados numéricos
Los modelos que se estudian en esta sección fueron extraidos de COMPleib, libr-ería que contiene más de 120 sistemas LTI en formato MATLAB R© (Leibfritz, 2004). Una
justificación para esta selección, es que los modelos estudiados previamente por Herreros,
121
Entradas :n : grado del polinomio caracerístico del sistema a lazo cerradormax : cota superior de los polos en el eje realimax : cota superior de los polos en el eje imaginarioSalidas : pSi n = 1 entonces1
p = −rand ∗ rmax;2sino3
Si n = 2 entonces4Si rand < 0.5 entonces5
p1 = −rand ∗ rmax;6p2 = −rand ∗ rmax;7
sino8p1 = −rmax ∗ rand + i ∗ imax ∗ rand;9p2 = −rmax ∗ rand− i ∗ imax ∗ rand;10
finsi11sino12
Si rand < 0.5 entonces13p = [−rmax ∗ rand, genpol(n− 1, rmax, imax)];14
sino15p1 = −rmax ∗ rand + i ∗ imax ∗ rand ;16p2 = −rmax ∗ rand− i ∗ imax ∗ rand;17p = [p1, p2, genpol(n− 2, rmax, imax)]18
finsi19finsi20
finsi21Algoritmo 6.2 : Generación de un vector de polos aleatorio
Molina-Cristobal y Takahashi corresponden a sistemas SISO de bajo orden, más adaptados
a la evaluación de controladores PID, para lo cual de hecho fueron propuestos (Astrom et
al., 1998).
Dado que originalmente COMPleib fue propuesta para la evaluación de soluciones al
problema H∞, para adaptar los modelos al caso H2/H∞ que se estudia en este capítulo, se
propone extraer únicamente las matrices A, B y C, conservando la estructura que aparece
en la ecuación (6.1).
Se propone en concreto evaluar el funcionamiento de tres algoritmos para resolver el
problema PH2/H∞:
122• A1: que corresponde al algoritmo SPEA2 utilizando el método MOPPEA para la
generación y el mantenimiento de individuos estabilizantes.
• A2: que corresponde al algoritmo memético SPEA2-ACPL-E1 (ver capítulo 5) uti-
lizando el método MOPPEA para la generación y el mantenimiento de individuos
estabilizantes.
• A3: que corresponde al algoritmo basado en factibilidad de LMIs (algoritmo 6.1).
En la tabla 6.1 se presentan los datos correspondientes a los modelos seleccionados para
las pruebas. Cada modelo COMPleib se caracteriza por una nomenclatura específica. Para
este trabajo se consideran cinco en particular, a saber: AC1, AC6, NN10, WEC1 y AC9.
Note que los mismos fueron seleccionados de forma que el número de variables de
decisión oscile entre 30 y 90, con el fin de analizar la influencia de esta cantidad sobre los
resultados obtenidos por cada algoritmo.
También se muestran en la tabla 6.1 los valores de los parámetros NH2/H∞,∆γ2, ∆γ∞,
γmin y γmax correspondientes a la configuración del algoritmo basado en LMIs. Los mismos
fueron ajustados mediante ensayo y error tomando en cuenta las soluciones extremas que
se obtienen considerando cada objetivo de manera aislada, utilizando los comandos h2syn
y hinfsyn de MATLAB R©.
Los parámetros rmax , imax que también aparecen en la tabla 6.1 corresponden a las
cotas utilizadas para la generación de la población inicial de MOPPEA, calculadas para
incluir los polos de cada modelo a lazo abierto.
Tabla 6.1: Datos correspondientes a los problemas COMPleibCOMPleib n nu ny nMOPPEA NH2/H∞ ∆γ2 ∆γ∞ γmin γmax rmax imax
AC1 5 3 3 30 100 0.01 0.01 1.5 5.5 10 10AC6 7 2 4 42 100 0.1 1 1 110 20 20NN10 8 3 3 48 100 0.01 0.02 3 15 10 10WEC1 10 3 4 70 100 0.05 1 2 200 100 100AC9 10 4 5 90 100 0.1 0.1 50 100 100 100
123Es importante resaltar que adicionalmente a los algoritmos A1, A2 y A3 antes men-
cionados se realizaron pruebas utilizando la representación tradicional en forma polino-
mial y en espacio de estados. Sin embargo, no fue posible conseguir individuos estables
utilizando estos formatos, por lo cual no se incluyen en los resultados que se presentan a
continuación.
Se realizaron 30 ejecuciones de cada algoritmo. En las figuras 6.3, 6.4, 6.5, 6.6 y 6.7 se
puede apreciar un ejemplo de las aproximaciones obtenidas mediante cada uno.
0.8 1 1.2 1.4 1.6 1.8 21.6
1.7
1.8
1.9
2
2.1
2.2
2.3
2.4
2.5
H2
H∞
Ejemplo de aproximación obtenida con A1Ejemplo de aproximación obtenida con A2Ejemplo de aproximación obtenida con A3
Figura 6.3: Ejemplo de las soluciones obtenidas por A1, A2 y A3. Problema AC1
124
2 3 4 5 6 7 820
40
60
80
100
120
140
160
H2
H∞
Ejemplo de aproximación obtenida con A1Ejemplo de aproximación obtenida con A2Ejemplo de aproximación obtenida con A3
Figura 6.4: Ejemplo de las soluciones obtenidas por A1, A2 y A3. Problema AC6
2.5 3 3.5 4 4.5 58
10
12
14
16
18
20
H2
H∞
Ejemplo de aproximación obtenida por A1Ejemplo de aproximación obtenida por A2Ejemplo de aproximación obtenida por A3
Figura 6.5: Ejemplo de las soluciones obtenidas por A1, A2 y A3. Problema NN10
125
3 4 5 6 7 8
80
100
120
140
160
180
H2
H∞
Ejemplo de aproximación obtenida mediante A1Ejemplo de aproximación obtenida mediante A2Ejemplo de aproximación obtenida mediante A3
Figura 6.6: Ejemplo de las soluciones obtenidas por A1, A2 y A3. Problema WEC1
0 50 100 150 200 250 300 350 400 4500
100
200
300
400
500
600
700
800
H2
H∞
Ejemplo de aproximación obtenida por A1Ejemplo de aproximación obtenida por A2Ejemplo de aproximación obtenida por A3
Figura 6.7: Ejemplo de las soluciones obtenidas por A1, A2 y A3. Problema AC9
126En estas figuras es posible apreciar que entodos los casos A2 produce individuos que
en su mayoría dominan a los de A1. Para el problema AC1 (30 variables), se aprecia
que A2 mejora los resultados de A3. En el caso de AC6, las soluciones de A2 y A3 son
mutuamente no-dominadas.
En los casos NN10, WEC1 y AC9 los resultados del algoritmo basado en LMIs mejoran
claramente los resultados del genético, considerando un presupuesto fijo de 20.000 evalua-
ciones del vector objetivo. Esta cantidad de evaluaciones permite que las 30 ejecuciones
del algoritmo genético no excedan el tiempo máximo permitido para completar el proceso
de diseño (≈24 horas).
La configuración utilizada para la ejecución de las pruebas se muestra en la tabla
6.2. Los resultados obtenidos para los indicadores C,DMAX y ESS se muestran en las
tablas 6.3 y 6.4. Independientemente del problema, es posible observar que los resultados
obtenidos por A2 son mejores que los de A1 con respecto al operador de cobertura, lo cual
ilustra la utilidad del operador ACPL para la búsqueda local en estos casos.
Por otra parte, el algoritmo A2 logra mejorar las soluciones de A3 en el caso del
problema AC1 e igualar en el caso AC6, con respecto al operador de cobertura. En los
otros dos casos, el algoritmo basado en LMIs es claramente superior, tal como fue posible
constatar de manera gráfica.
Tabla 6.2: Parámetros utilizados por SPEA2 y SPEA2-ACPL
Parámetros ValorRepresentación K+L
Operador de cruce AritméticoProbabilidad de cruce 0.9Operador de mutación Gaussiana
Probabilidad de mutación 0.1Probabilidad de aplicación del ACPL 0.25
ε [0.1, 0.1]r [0.1, 0.1]
Niter 10Nnd [5, 5]Tol 10−4
Condición de parada 200 generacionesNúmero máximo de evaluaciones 20.000
Tamaño máximo del archivo externo 20Esquema de selección (100 + 100)
127
Tabla 6.3: Resultados del indicador de cobertura
C(Ai, Aj) A1 A2 A3
A1 −
AC1:0.0200(0.0535)AC6:0.0217(0.0773)NN10:0.3650(0.3996)WEC1:0.2500(0.2603)AC9:0.2978(0.3548)
AC1:0.8619(0.1326)AC6:0(0)NN10:0(0)WEC1:0(0)AC9:0(0)
A2
AC1:0.8517(0.1850)AC6:0.6750(0.2589)NN10:0.4600(0.4438)WEC1:0.3867(0.2846)AC9:0.4850(0.4329)
−
AC1:0.9810(0.0494)AC6:0(0)NN10:0(0)WEC1:0(0)AC9:0(0)
A3
AC1:0(0)AC6:0(0)NN10:1(0)WEC1:1(0)AC9:1(0)
AC1:0(0)AC6:0(0)NN10:1(0)WEC1:1(0)AC9:1(0)
−
Tabla 6.4: Resultados de los indicadores ESS y DMAXDMAX ESS
A1
AC1:0.7589(0.0535)AC6:120.4263(67.0600)NN10:3.5940(0.7046)WEC1:45.3320(7.7541)AC9:564.2026(190.4456)
AC1:0.0190(0.0069)AC6:3.5698(4.0164)NN10:0.1026(0.0407)WEC1:1.0784(0.4881)AC9:21.5037(17.8440)
A2
AC1:0.9638(0.3524)AC6:73.0991(15.1735)NN10:3.7460(0.6381)WEC1:44.4208(6.2985)AC9:261.0278(169.0322)
AC1:0.0253(0.0121)AC6:1.7792(0.5986)NN10:0.0998(0.0298)WEC1:1.0812(0.3809)AC9:14.7817(19.8238)
A3
AC1:0.1618(0)AC6:2.8065(0)NN10:1.0200(0)WEC1:36.0976(0)AC9:59.2017(0)
AC1:0.0122(0)AC6:0.0152(0)NN10:0.0188(0)WEC1:0.1540AC9:3.3800(0)
128De igual forma, con respecto al indicador ESS, el algoritmo A3 logra mejorar los
resultados obtenidos por los otros dos, lo cual se explica por el caracter determinista del
algoritmo basado en LMIs, el cual intenta producir una distribución uniforme en el frente,
caracterizada por los parámetros ∆γ2, ∆γ∞.
En relación con el índice DMAX no se aprecian claras diferencias entre A1 y A2,
aunque ambos algoritmos producen frentes mucho más amplios que A3, para todos los
problemas. Tampoco con respecto a ESS se aprecian notables diferencias entre A1 y A2.
6.6. Resumen del capítulo
En este capítulo se propuso un nuevo método de diseño de controladores multi-
objetivo llamado MOPPEA, que consiste fundamentalmente en:
1. Asignar a cada individuo una representación de la forma (K,L), donde K es la
matriz de realimentación y L es la matriz de observación de estados.
2. Utilizar un algoritmo recursivo para generar la población inicial de individuos factibles.
3. Utilizar un operador de cruce aritmético que permite mantener a la población dentro
de la región factible y un algoritmo genético multi-objetivo para llevar a cabo el
proceso de búsqueda.
En particular se presentó una comparación entre los resultados obtenidos por SPEA2
y SPEA2 - ACPL con respecto al método basado en factibilidad LMI, cuando se intenta
resolver el problema mixto H2/H∞ en el caso de cinco modelos de COMPleib.Las pruebas estadísticas realizadas permiten afirmar que, considerando un presupuesto
fijo de 20.000 evaluaciones, el enfoque genético es eficiente únicamente para los problemas
AC1 y AC6 caracterizados por 30 y 42 variables de decisión respectivamente. Por el
contrario, en el caso de los pro-blemas NN10, WEC1 y AC9 (con 48, 70 y 90 variables)
las soluciones obtenidas mediante LMIs dominan a las producidas por SPEA2 y SPEA2 -
ACPL.
Por otra parte, en todas las pruebas realizadas, los valores del indicador de cobertura
obtenidos por el algoritmo memético SPEA2-ACPL superan a los obtenidos por el SPEA2,
lo cual confirma la conveniencia de utilizar el operador de búsqueda local en esta clase de
problemas.
CAPÍTULO VII
CONCLUSIONES
La principal contribución de este trabajo consiste en la propuesta y el análisis de
nuevos operadores, especialmente concebidos para intentar mejorar el proceso de diseño
de controladores automáticos lineales mediante algoritmos genéticos.
Sin embargo, algunas estrategias pueden ser extrapoladas para resolver problemas de
ingeniería en otras áreas tales como identificación de sistemas y análisis de señales. Por
ejemplo, el operador ACPL puede ser adaptado para intentar resolver otros problemas de
optimización multi-objetivo, previa adecuación de sus parámetros y escalamiento de vari-
ables. En este sentido, se presentaron evidencias que permiten concluir que para problemas
que no poseen muchos frentes locales, la utilización del ACPL conduce a mejoras estadísti-
camente significativas del indicador de cobertura, con respecto al algoritmo genético puro.
Este resultado confirma las conclusiones obtenidas por otros autores en trabajos previos
similares.
También con respecto al operador ACPL, es importante destacar que la codificación
binaria propuesta para la identificación de los conos de diversidad y el cálculo de la di-
rección correspondiente a cada cono son aspectos sobre los cuales no se han conseguido
referencias previas en la revisión bibliográfica realizada. Por otra parte, aunque los mecan-
ismos de integración entre el algoritmo genético y el operador de búsqueda local explorados
en el transcurso de esta investigación fueron muy sencillos, los resultados obtenidos son
prometedores y alientan la continuación en esta línea de investigación.
El método propuesto para el diseño PID basado en el cálculo exacto de la región
estabilizante produjo resultados satisfactorios en un caso de estudio basado en un modelo a
lazo abierto de orden seis y de fase no-mínima, de una complejidad superior a los analizados
por otros autores. Es posible que su aplicación se justifique en un caso práctico, puesto que
permitiría mejorar considerablemente la calidad de las soluciones y disminuir el tiempo del
proceso de diseño. Una extensión posible consiste en evaluar el método en aplicaciones en
130línea (auto-tuning y control adaptivo), puesto que es posible asegurar que los controladores
obtenidos son al menos estabilizantes y por ende no pondrían en riesgo la integridad de la
planta controlada.
El tema de la inestabilidad es un punto sobre el cual se hizo mucho énfasis en este
trabajo. Es curioso que ninguno de los investigadores que adoptaron previamente la
metodología genética para resolver problemas de control haya tomado en cuenta este as-
pecto tan fundamental con mayor interés, optando en la mayoría de los casos por un
enfoque basado en una función de penalidad.
En este sentido, el método MOPPEA permite generar y mantener una población com-
puesta exclusivamente por individuos estabilizantes: algo que, de acuerdo con la revisión
de la literatura realizada, ningún otro algoritmo genético había garantizado plenamente.
Y esto gracias a las ventajas de la representación matricial (K,L) para la exploración del
espacio de controladores estabilizantes, con respecto a la representación polinomial o en
espacio de estados utilizada por otros autores. Las pruebas realizadas confirmaron que en
efecto estas últimas no son nada eficientes en el caso de sistemas MIMO de alto orden.
La representación (K,L) propuesta en este trabajo es preferible ya que toma en cuenta
de manera intrínseca la restricción de estabilidad. Es posible afirmar, a partir de los resul-
tados obtenidos, que la representación genética de los controladores en forma polinomial o
en forma controlable únicamente se justifica si el sistema a lazo abierto es SISO y de bajo
orden.
En nuestro conocimiento, ninguno de los investigadores dedicados previamente al problema
mixto H2/H∞ ha publicado información relacionada con los límites de la eficiencia de los
algoritmos genéticos con respecto a las soluciones LMI. En este trabajo se abordó este
tema a partir de casos de estudio en los cuales el número de variables de decisión oscila
entre 30 y 90, considerando un presupuesto fijo de 20.000 evaluaciones.
Se pudo concluir que MOPPEA es capaz de mejorar las soluciones LMI en el caso del
problema de 30 variables y de igualarlas en el caso de 42 variables. Para un mayor número
mayor de variables las soluciones LMI son claramente superiores, tomando en cuenta el
presupuesto limitado de evaluaciones del vector objetivo.
131Estos resultados confirman que, como era de esperarse, mientras más grande es el
número de variables de decisión, menos competitivo se hace el enfoque genético con
respecto a las LMIs. Queda como punto pendiente analizar lo que sucede si se aumenta
el presupuesto de evaluaciones, para lo cual se requiere la disponibilidad de equipos con
mayor capacidad de cómputo, de manera que se pueda obtener resultados en un tiempo
adecuado. Esto se debe a que es necesario repetir las pruebas tantas veces como sea
posible, con el fin de obtener medidas estadísticamente significativas.
Otro punto de investigación que queda abierto consiste en lograr una formulación
del problema LMI en términos de las matrices K y L de la estructura “Observación
+ Realimentación de Estados”. Esta formulación facilitaría una interacción que podría
conducir a mejores soluciones con respecto a cada método de diseño considerado de manera
aislada.
Una innovación interesante de MOPPEA consiste en el algoritmo recursivo para la
generación de la población inicial. En su versión actual este algoritmo permite generar
lazos cerrados cuyos polos pertenecen a una región rectangular delimitada por dos cotas.
Sin embargo, en el futuro es posible adaptar el algoritmo para que los polos se distribuyan
en otras regiones del plano complejo, tales como discos o conos.
También es importante señalar que aunque los indicadores de desempeño utilizados a
lo largo del trabajo (Cobertura, Distancia Máxima y Espaciado) son ampliamente cono-
cidos por los investigadores en el área de algoritmos genéticos multi-objetivo, tampoco
ha sido posible conseguir referencias previas relacionadas con el cálculo de indicadores de
desempeño y pruebas estadísticas similares a las presentadas en este trabajo, en el caso
de problemas de diseño de controladores. Es recomendable que los procedimientos de
evaluación de las soluciones multi-objetivo se conviertan en un estándar para este tipo de
aplicaciones, ya que permite la comparación entre los resultados obtenidos por diversos
autores.
A lo largo del trabajo se puso mucho énfasis en la generación de la población inicial.
De hecho, en este sentido se propusieron tres novedosos métodos con esta finalidad: el
método exacto que calcula los vértices de la región estabilizante en el caso PID, el método
que calcula una aproximación mediante muestreo aleatorio y el método recursivo para la
generación de individuos factibles (MOPPEA). Es interesante notar que estos métodos
se inspiran de diversas fuentes tales como la teoría clásica de control, la programación
132matemática, la geometría, la topología y los algoritmos genéticos. Cada disciplina fue
abordada intentando obtener lo mejor de cada una para alcanzar el objetivo final, el cual
no es otro que conseguir las mejores soluciones posibles para los problemas de diseño.
De esta forma se ha confirmado la necesidad de incorporar conocimiento específico en las
aplicaciones de los algoritmos genéticos, como consecuencia del famoso teorema “No free
lunch” (Wolpert & Macready, 1997).
Muchos puntos quedan sin embargo por abordar, entre los cuales es posible mencionar
los siguientes:
• Implementar algoritmos genéticos adaptivos, para disminuir la necesidad de ajustes
de parámetros por parte del diseñador.
• Continuar el estudio sobre la interacción de los operadores de búsqueda local con los
operadores de búsqueda global (explotación vs exploración).
• Considerar conceptos novedosos de dominancia, para permitir la inclusión de las
preferencias del diseñador, antes o después del proceso de búsqueda.
• Mejorar las interfaces con el usuario y del proceso de selección de soluciones (toma
de decisiones).
• Desarrollo de métodos multi-objetivo de optimización estructural y mixto-entera.
• Continuar el estudio sobre representaciones del espacio de controladores, principal-
mente en el caso no-lineal de múltiples entradas y salidas.
• Consideración de problemas de modelaje e identificación de la planta en el contexto
del diseño multi-objetivo.
• Resolver problemas de control que necesiten optimización multi-objetivo en línea,
considerando las dificultades tecnológicas que ello implica.
133
APÉNDICE
Se denomina señal a cualquier función f : R → Cn que represente una magnitud
física o lógica variable en el tiempo. A continuación se presentan algunos resultados
teóricos relacionados con señales, operadores y normas en diversos espacios de interés para
el análisis de sistemas dinámicos.
Se denota Ln2(−∞,∞) al espacio lineal compuesto por las señales f : R→ Cn continuas
y deterministas, tales que: +∞∫−∞ f ∗(t)f(t)dt <∞ (7.1)
La función ‖·‖2 : Ln2(−∞,∞) → R+0 tal que
‖f‖2 =
√√√√√+∞∫−∞ f ∗(t)f(t)dt, ∀f ∈ Ln2 (7.2)
define una norma sobre Ln2(−∞,∞). Esta cantidad puede ser interpretada como la energía
total contenida en f .
Se denota C+ al semi-plano complejo abierto derecho y C+
al semi-plano complejo
cerrado derecho, esto es
C+ ≡ {c ∈ C; Re(c) > 0}
C+
≡ {c ∈ C; Re(c) ≥ 0}
Se denota Ln2(jR) al espacio de Hilbert compuesto por las funciones matriciales
f : jR→ Cn (7.3)
dotado del producto interno
⟨f1, f2⟩ =
+∞∫−∞ f ∗1 (jω)f2(jω)dω (7.4)
134El operador lineal acotado Γ : Lp×m2 (−∞,∞) → Ln2(jC) definido por
Γ(f) = f(jω) =
+∞∫−∞ f(t)e−jωtdt (7.5)
se denomina Transformada de Fourier. Γ es un operador unitario e invertible, esto es, Γ
define un isomorfismo entre Ln2(−∞,∞) y Ln2(jC).
Se denota Hp×m2 al espacio de funciones matriciales complejas
f : C+→ Cp×m
tales que:
• f es analítica en C+.
• Para cualquier ω ∈ R , excepto en un conjunto finito {ω1, ω2, ...ωN} , se cumple:
f(jω) = limσ→0+ f(σ + jω) (7.6)
• La siguiente cantidad es finita
supσ≥0 +∞∫−∞ traza[f∗(σ + jω)f(σ + jω)]dω (7.7)
La función ‖·‖2 : Hp×m2 → R+0 tal que
∥∥∥f∥∥∥2 =
√√√√√supσ≥0 1
2π
+∞∫−∞ traza[f ∗(σ + jω)f(σ + jω)]dω (7.8)
∀f ∈ Hp×m2 , define una norma sobre Hp×m2 , denotada H2.Una función matricial f : C
+→ Cp×m se denomina real racional, si cada uno de sus
elementos fij(s) es de la forma:
fij(s) =bnusnu + bnu−1snu−1 + .. + b1s + b0snd + and−1snu−1 + .. + a1s + a0 =
Nij(s)Dij(s) (7.9)
donde todos los coeficientes de los polinomios Nij(s) y Dij(s) son reales.
135El conjunto de funciones matriciales f : C
+→ Cp×m reales racionales se denota
R(s)p×m. Si ∀fij(s), nd ≥ nu , f es llamada propia. Si ∀fij(s), nd > nu , f es lla-
mada estrictamente propia. Para cualquier fij(s), se denomina “polo” a cualquier p ∈ C+
tal que∣∣∣fij(s)∣∣∣ → ∞, cuando s → p. Una función real racional f pertenece a Hp×m2 si y
solo si es estrictamente propia y no posee polos en C+. Se denota RHp×m2 al sub-espacio
de funciones matriciales reales racionales pertenecientes a Hp×m2 .
El operador lineal acotado Λ : Ln2 [0,∞) → Hn2 definido por:
Λ(f) = f(s) =
+∞∫0 f(t)e−stdt (7.10)
se denomina Transformada Unilateral de Laplace. Λ define un isomorfismo entre Ln2 [0,∞)
y Hn2 .Se denota Ln∞(−∞,∞) al espacio lineal de señales continuas y determinísticas, com-
puesto por las funciones f : R+0 → Cn tales que:
ess supt∈(−∞,∞)√f ∗(t)f(t) <∞ (7.11)
La función ‖·‖∞ : Ln∞(−∞,∞) → R+0 tal que
‖f‖∞ = ess supt∈(−∞,∞)√f∗(t)f(t) (7.12)
∀f ∈ Ln∞ define una norma sobre Ln∞(−∞,∞) que puede ser interpretada como el módulo
máximo de la señal f para t ∈ (−∞,∞).
Se denota Hp×m∞ al espacio de funciones matriciales G : C+→ Cp×m tales que:
• G es analítica en C+.
• Para cualquier ω ∈ R , excepto en un conjunto finito {ω1, ω2, ...ωN}, se cumple:
G(jω) = limσ→0+ G(σ + jω) (7.13)
• La siguiente cantidad es finita:
ess sups∈C+ σ[G(s)] (7.14)
136donde σ representa el máximo valor singular de la matriz G(s), es decir,
σ[G(s)] =maxi √λi[G(s)∗G(s)] (7.15)
con,
λi[G(s)∗G(s)] ≡ i-ésimo autovalor de G(s)∗G(s)
La función ‖·‖∞ : Hp×m∞ → R+0 tal que∥∥∥G∥∥∥∞ =supω∈R σ[G(jω)], ∀G ∈ Hp×m∞ (7.16)
define una norma sobre Hp×m∞ denotada H∞. De hecho suponga u ∈ Hnu2 . Entonces, G
∈ Hny×nu∞ se comporta como un operador lineal multiplicativo, esto es, y = Gu ∈ H
ny2 . El
operador G es comunmente llamado “matriz de transferencia” desde u hacia y. Además,
mediante el operador Transformada de Laplace, la matriz G ∈ Hp×m∞ define un operador
lineal acotado y causal G de Lm2 [0,∞) → Lp2[0,∞), de la forma:
G = Λ−1GΛ (7.17)
Una función racional G ∈ R(s)p×m , pertenece a Hp×m∞ si y solo si G es propia y no posee
polos en C+. El conjunto de funciones matriciales racionales pertenecientes a Hp×m∞ se
denota RHp×m∞ .
REFERENCIAS
Ackermann, J. & Kaesbauer, D. (2003). Stable polyhedra in parameter space. Automat-ica, (39):937—943.
Adra, S. ; Amody, A. ; Griffin, I. & Fleming, P. (2005a). A hybrid multi-objectiveevolutionary algorithm using an inverse neural network for aircraft control systemdesign. In Proceedings of the IEEE Congress on Evolutionary Computation, pp 1—8.
Adra, S. ; Griffin, I. & Fleming, P. (2005b). Hybrid multi-objective genetic algorithmwith a new adaptive local search process. In Hans-Georg-Beyer et al. editor, Geneticand Evolutionary Computation Conference GECCO’2005, volume 1, pp 1009—1010.
Andres, B. ; Jiron, J. ; Fernandez, P. ; Lopez, J. & Besada, E. (2004). Multiobjectiveoptimization and multivariable control of the beer fermentation process with the useof evolutionary algorithms. Journal of Zhejiang University - Science, pp 378—389.
Apkarian, P. ; Noll, D. & Rondepierre, A. (2008). Mixed H2/H∞ control via nonsmoothoptimization. SIAM Journal on Control and Optimization, 47(3):1516—1546.
Arakawa, M. ; Nakayama, H. ; Hagiwara, I. & Yamakawa, H. (1998). Multi-objectiveoptimization using adaptive range genetic algorithms with data envelopment analy-sis. In A Collection of Technical Papers of the 7th Symposium on MultidisciplinaryAnalysis and Optimization, pp 2074—2082.
Astrom, K. & Hagglund, T. (1995). PID controllers: theory, design and tuning. Instru-ments Society of America.
Astrom, K. ; Panagopoulos, H. & Hagglund, T. (1998). Design of PI controllers basedon non-convex optimization. Automatica, 34(5):585—601.
Bertalanffy, L. (1950). An outline of general systems theory. British Journal for thePhilosophy of Science, 1(2).
Boyd, S. ; El-Ghaoui, L. ; Feron, E. & Balakrishnan, V. (1994). Linear matrix in-equalities in system and control theory. SIAM Studies in Applied Mathematics.
Brown, M. & Smith, R. (2005). Directed multi-objective optimization. InternationalJournal on Computers, Systems and Signals, 6(1):3—17.
Broyden, C. (1970). The Convergence of a Class of Double-rank Minimization Algo-rithms. Journal of the Institute of Mathematics and Its Applications, 6:76—90.
Calafiore, G. & Dabbene, F. (2006). Probabilistic and randomized methods for designunder uncertainty. Springer-Verlag, London.
138Caponio, A. ; Cascella, G. ; Neri, F. ; Salvatore, N. & Sumner, M. (2007). A fast adap-
tive memetic algorithm for online and offline control design of PMSM drives. IEEETransactions on Systems, Man, and Cybernetics, Part B: Cybernetics, 37(1):28—41.
Cesareo, J. (1997). Estrategias evolutivas y su aplicación en la síntesis de controladores.PhD thesis, Universidad de Vigo. Dpto. de Ingeniería de Sistemas.
Chipperfield, A. ; Bica, B. & Fleming, P. (1998). Fuzzy scheduling control of a gasturbine aero-engine: a multi-objective approach. IEEE Transactions on IndustrialElectronics, 49(3):536—548.
Chipperfield, A. & Fleming, P. (1996). Multi-objective gas turbine engine controllerdesing using genetic algorithms. IEEE Transactions on Industrial Electronics,43(5):583—587.
Clement, B. (2001). Synthese multiobjectifs et sequencement de gains: Application aupilotage d’un lanceur spatial. PhD thesis, Service Automatique de SUPELEC - Gifsur Yvette, France.
Coello, C. ; Lamont, G. & Van-Veldhuizen, D. (2007). Evolutionary algorithms forsolving multi-objective problems. Springer. Genetic and Evolutionary ComputationSeries. Second Edition.
Dawkins, R. (1976). The selfish gene. Oxford University Press.
Deb, K. (2001). Multiobjective optimization using evolutionary algorithms. Jhon Wileyand Sons Ltd.
Deb, K. & Agrawal, R. (1995). Simulated binary crossover for continuous search space.Complex Systems, 9(2):115—148.
Deb, K. ; Agrawal, S. ; Pratab, A. & Meyarivan, T. (2000). A fast elitist non-dominatedsorting genetic algorithm for multi-objective optimization: NSGA-II. In Proceedingsof the Parallel Problem Solving from Nature VI Conference, pp 849—858.
Dellino, G. ; Lino, P. ; Meloni, C. & Rizzo, A. (2007). Enhanced evolutionary algo-rithms for multidisciplinary design optimization: a control engineering perspective.In Hybrid Evolutionary Algorithms - Studies in Computational Intelligence, pp 173—216. Springer Berlin / Heidelberg.
Dennis, J. & Schnabel, R. (1983). Numerical methods for unconstrained optimizationand nonlinear equations. Prentice-Hall. New York.
Doyle, J. ; Glover, K. ; Khargonekar, P. & Francis, B. (1989). State-space solutions tostandard H2 and H∞ control problems. IEEE Transactions on Automatic Control,34(8):831—847.
Duarte, N. ; Ruano, A. ; Fonseca, C. & Fleming, P. J. (2000). Accelerating multi-objective control system design using a neuro-genetic approach. Proceedings of the8th IFAC Symposium on Computer Aided Control Systems Design. University ofSalford, U.K.
Dupuis, A. ; Ghribi, M. & Kaddouri, A. (2004). Multi-loop PI tuning using a multiob-jective genetic algorithm. In Proceedings of the IEEE International Conference on
139Industrial Technology, pp 1505—1510.
Eiben, A. & Smith, J. (2003). Introduction to evolutionary computing. Springer-Verlag.
Fleming, P. (2001). Genetic Algorithms in Control System Engineering. Technical re-port, No. 789. University of Sheffield. UK.
Fleming, P. J. & Purshouse, R. (2002). Evolutionary algorithms in control systemsengineering: a survey. Control Engineering Practice (10), pp 1223—1241.
Fonseca, C. (1995). Multi-objective genetic algorithms with application to control en-gineering problems. PhD thesis, Departement of Automatic Control and SystemsEngineering. University of Sheffield.
Fonseca, C. & Fleming, P. (1994). Multiobjective optimal controller design with geneticalgorithms. In Proc. IEE Control International Conference, volume 1, Warwick,U.K, pp 745—749.
Gambier, A. ; Wellenreuthera, A. & Badreddin, E. (2006). A new approach to designmulti-loop control systems with multiple controllers. In Proceedings of the 45th IEEEConference on Decision and Control. San Diego, CA, USA, pp 416—423.
Goel, T. & Deb, K. (2002). Hybrid methods for multi-objective evolutionary algorithms.In Proceedings of the 4th Asia-Pacific conference on Simulated Evolution and Learn-ing, pp 188—192.
Granado, E. ; Colmenares, W. & Perez, O. (2007). Diseño de PID multivariable usandoLMI iterativas. Revista de la Fac. Ing. UCV, 22(3):5—12.
Griffin, I. ; Schroder, P. ; Chipperfield, A. & Fleming, P. (2000). Multi-objective Opti-mization Approach to the Alstom Gasifier Problem. In Proceedings of the I MECHE Part I Journal of Systems and Control Engineering, pp 453—468.
Hart, W. (1994). Adaptive Global Optimization with Local Search. PhD thesis, Universityof California, San Diego. USA.
Hassibi, A. ; Howy, J. & Boyd, S. (1999). Low-Authority Controller Design via ConvexOptimization. AIAA Journal of Guidance, Control and Dynamics, 22(6):862—872.
Heo, J. ; Lee, K. & Garduno-Ramirez, R. (2006). Multiobjective control of power plantsusing particle swarm optimization techniques. IEEE Transactions on Energy Con-version, 21(2):552—561.
Herreros, A. (2000). Diseño de controladores robustos multiobjetivo por medio de algo-ritmos genéticos. Tesis Doctoral. Departamento de Ingenieria de Sistemas y Auto-matica. Universidad de Valladolid, España.
Hillermeier, C. (2001). Nonlinear multiobjective optimization - A generalized homotopyapproach. Birkhauser.
Hindi, H. A. ; Hassibi, B. & Boyd, S. P. (1998). Multi-objective H2/H∞ optimal con-trol via finite dimensional Q-parametrization and linear matrix inequalities. In Pro-ceedings of the American Control Conference, pp 3244—3249.
140Hohenbichler, N. & Abel, D. (2008). Calculating all KP admitting stability of a PID
control loop. In Proceedings of the 17th World IFAC Congress. Seoul, Korea, July6-11, pp 5802—5807.
Hwang, C. & Hsiao, C.-Y. (2002). Solution of a non-convexoptimization arising in PI-PID control design. Automatica 38, pp 1895—1904.
Ishibuchi, H. & Murata, T. (1996). Multi-objective genetic local search algorithm. InProc. of the IEEE Int. Conf. on Evol. Computation, Nagoya, Japan, pp 119—124.
Joos, H. (2002). A multi-objective optimisation-based software environment for controlsystems design. In Proceedings of the IEEE International Symposium on ComputerAided Control System Design, pp 7—14.
Kalman, R. (1960). Contributions to the Theory of Optimal Control. Boletín de laSociedad Matemática Mexicana, (5):102—119.
Kalman, R. (1963). Mathematical Description of Linear Dynamical Systems. SIAMJournal on Control, 1(2):152—192.
Khor, E. ; Tan, K. & Lee, T. (2002). Learning the search range for evolutionary optimiza-tion in dynamic environments. Knowledge and Information Systems, 4(2):228—255.
Knowles, J. & Corne, D. (2000). M-PAES: a memetic algorithm for multiobjectiveoptimization. In Proceedings of the IEEE Congress on Evolutionary Computation,pp 325—332.
Kumar, S. & Subramanian, S. (2002). Mutation rates in mammalian genomes. In Pro-ceedings of the National Academy of Sciences of the United States of America, pp803—808.
Lagunas, J. (2004). Sintonización de controladores PID mediante un algoritmo genéticomulti-objetivo (NSGA-II). PhD thesis, Departamento de Control Automático. Cen-tro de Investigación y de Estudios Avanzados. México.
Lara, A. ; Sánchez, G. ; Coello-Coello, C. & Schüetze, O. (2010). HCS: A New LocalSearch Strategy for Memetic Multiobjective Evolutionary Algorithms. IEEE Trans-actions on Evolutionary Computation, 14(1):112—132.
Leibfritz, F. (2004). COMPlib - Constrained Matrix-optimization Problem Library.Technical report, University of Trier. Department of Mathematics, Germany.
Liu, G. ; Yang, J. & Whidborne, J. (2002). Multiobjective optimisation and control.Research Studies Press, Baldock, UK.
Liu, T.-K. ; Ishihara, T. & Inooka, H. (1995). Multiobjective Control Systems Design byGenetic Algorithms. In Proceedings of the 34th SICE annual conference. Hokkaido,Japan, pp 1521—1526.
Lyapunov, A. (1892). The general problem of stability motion. PhD thesis, Universityof Kharkov, Russia.
Malpica, J. M. ; Fraile, A. ; Moreno, I. ; Obies, C. I. ; Drakec, J. W. & García-Arenal,F. (2002). The Rate and Character of Spontaneous Mutation in an RNA Virus.
141Genetics, 162:1505—1511.
Martinez, M. ; Sanchis, J. & Blasco, X. (2006). Algoritmos genéticos aplicados al diseñode controladores robustos. Revista Iberoamericana de Automática e Informática In-dustrial, 3(1):39—51.
Miyamoto, S. (1997). Robust control design - a coprime factorization and LMI approach.PhD thesis, University of Cambridge.
Molina-Cristobal, A. (2005). Multi-objective control: linear matrix inequality techniquesand genetic algorithms approach. PhD thesis, University of Sheffield, UK.
Moscato, P. (1989). On evolution, search, optimization, genetic algorithms and martialarts: toward memetic algorithms. Technical report, Caltech Concurrent Computa-tion Program.
Murata, T. ; S.Kaige & Ishibuchi, H. (2003). Generalization of Dominance RelationBased Replacement Rules for Memetic EMO Algorithms. In Proceedings of the Ge-netic and Evolutionay Computation Conference, pp 1234—1245.
O’Dwyer, A. (2006). PI and PID controller tuning rules: an overview and personalperspective. In Proceedings of the IET Irish Signals and Systems Conference, pp161—166.
Osyczka, A. (1985). Multicriteria optimization for engineering design. Academic Press,Cambridge, MA.
Pareto, V. (1906). Manuale di economia politica. Societa Editrice Libraria, Milan, Italy.
Pedersen, G. (2005). Towards Automatic Controller Design using Multi-Objective Evo-lutionary Algorithms. PhD thesis, Department of Control Engineering. Aalborg Uni-versity, Denmark.
Popov, A. ; Farag, A. & Werner, H. (2005). Less Conservative Mixed H2/Hinf Con-trollerDesign UsingMulti-Objective Optimization. Technical report, Technische Uni-versitat Hamburg-Harburg.
Reyes, O. ; Sánchez, G. & Strefezza, M. (2009). Multiobjective GA fuzzy logic controller.In Proceedings of the ICINCO 2009 Conference. Milan, Italy, pp 384—389.
Rotea, M. & Khargonekar, P. (1991). H2-optimal Control with an Hinf-constraint: TheState Feedback Case. Automatica, 27(2):307—316.
Roy, B. (1971). Problems and methods with multiple objective functions. MathematicalProgramming, 1(2):239—266.
Sánchez, G. & Ferrer, J. (2004). A new approach for approximating the free transferfunction in Q-parametrization. In Proceedings of the IEEE Conference ComputerAided Control Systems Design.Taipei,Taiwan, pp 339—343.
Sánchez, G. ; Reyes, O. & Gonzalez, G. (2008a). Diseño de controladores PID multi-objetivo mediante algoritmos genéticos incluyendo el cálculo de los límites de laregión de controladores estabilizantes. In XIII Congreso Latinoamericano de ControlAutomático. 25-28 de Noviembre. Mérida. Venezuela.
142Sánchez, G. ; Reyes, O. & Strefezza, M. (2009). A Muti-objective Approach to Ap-
proximate the Stabilizing Region for Linear Control Systems. In Proceedings of theICINCO 2009 Conference. Milan, Italy, pp 153—158.
Sánchez, G. ; Villasana, M. & Strefezza, M. (2007). Multi-Objective Pole Placementwith Evolutionary Algorithms. Springer-Verlag. Berlin. Series: Lecture Notes inComputer Science, 4403:417—427.
Sánchez, G. ; Villasana, M. & Strefezza, M. (2008b). Solving Multi-Objective LinearControl Design Problems Using Genetic Algorithms. In Proceedings of the 17th IFACWorld Conference, pp 12324—12329.
Sasaki, D. ; Obayashi, S. & Nakahashi, K. (2002). Navier-Stokes optimization of super-sonics wings with four objectives using evolutionary algorithms. Journal of Aircraft,39(4):621—629.
Scherer, C. ; Gahinet, P. & Chilali, M. (1997). Multi-objective output-feedback controlvia LMI optimization. IEEE Transactions on Automatic Control, 42(7):896—910.
Schäffler, S. ; Schultz, R. & Weinzierl, K. (2002). A stochastic method for the solutionof unconstrained vector optimization problems. J. Optimization Theory Applicat.,114(1):209—222.
Schott, J. (1995). Fault tolerant design using single and multicriteria genetic algorithmoptimization. Master’s thesis, Department of Aeronautics and Astronautics, MIT.Cambridge, MA. USA.
Schütze, O. ; Sánchez, G. & Coello, C. A. C. (2008). A New Memetic Strategy forthe Numerical Treatment of Multi-Objective Optimization Problems. Genetic andEvolutionary Computation Conference. July 12-16 ,Atlanta, Georgia, USA.
Sharma, D. ; Kumar, A. ; Deb, K. & Sindhya, K. (2007). Hybridization of SBX basedNSGA-II and sequential quadratic programming for solving multi-objective opti-mization problems. In Proceedings of the IEEE Congress on Evolutionary Computa-tion, Singapore, pp 3003—3010.
Shyr, W.-J. ; Wang, B.-W. ; Yeh, Y.-Y. & Su, T.-J. (2002). Design of optimal PIDcontrollers using memetic algorithm. In Proceedings of the American Control Con-ference, pp 2130—2131.
Silva, V. ; Fleming, P. ; Sugimoto, J. & R.Yokoyama (2008). Multiobjective optimiza-tion using variable complexity modelling for control system design. Applied SoftComputing 8, pp 392—401.
Takahashi, R. ; Palhares, R. ; Dutra, D. & Goncalves, L. (2004). Estimation of Paretosets in the mixed H2/H∞ control problem. International Journal of System Science,35(1):55—67.
Tan, K. ; Khor, E. & Lee, T. (2005). Multiobjective evolutionary algorithms and appli-cations. Springer-Verlag.
Villasana, M. & Ochoa, G. (2003). Heuristic Design of Cancer Chemotherapies. IEEETransactions on Evolutionary Computation, Vol. 8, No. 6.
143Wang, J. ; Brackett, B. T. & Harley, R. G. (2009). Particle Swarm-Assisted State
Feedback Control: From Pole Selection to State Estimation. In Proceedings of theAmerican Control Conference.St. Louis, MO, USA. June 10-12, pp 1493—1498.
Wang, J. ; Wang, S. ; Wang, Z.-P. ; Tao, L. & Chen, J.-J. (2008). Robust controllerdesign for a main steam pressure based on SPEA2. Journal of Zhengzhou University.
Wanner, E. ; Guimaraes, F. ; Takahashi, H. & Fleming, P. (2006). A QuadraticApproximation-Based Local Search Procedure for Multiobjective Genetic Algo-rithms. In IEEE Congress on Evolutionary Computation. Vancouver, BC, Canada,pp 3361—3368.
Wanner, E. ; Guimaraes, F. ; Takahashi, R. & Fleming, P. (2008). Local search withquadratic approximations into memetic algorithms for optimization with multiplecriteria. Evolutionary Computation, 16(2):185—224.
Wolpert, D. & Macready, W. (1997). No free lunch theorems for optimization. IEEETransactions on Evolutinoary Computation, 1(1):67—82.
Zakian, V. & Al-Naib, V. (1973). Design of dynamical and control Systems by themethod of inequalities. Proceedings of the Institution of Electrical Engineers, pp1421—1427.
Zavala, J. ; Stewart, P. & Fleming, P. (2002). Multiobjective automotive drive by wirecontroller design. In Proceedings of the International Conference on Computer aidedControl System Design, Glasgow, Scotland, pp 69—73.
Ziegler, J. & Nichols, N. (1942). Optimum settings for automatic controllers. Transac-tions of ASME, pp 759—768.
Zitzler, E. (1999). Evolutionary algorithms for multiobjective optimization: methods andapplications. PhD thesis, Swiss Federal Institute of Technology. Zurich, Switzerland.
Zitzler, E. ; Deb, K. & Thiele, L. (1999). Comparison of Multiobjective EvolutionaryAlgorithms on Test Functions of Different Difficulty. In Wu, A. S., editor, Proceed-ings of the 1999 Genetic and Evolutionary Computation Conference, pp 121—122,Orlando, Florida.
Zitzler, E. ; Laumanns, M. & Thiele, L. (2001). SPEA2: improving the Strength ParetoEvolutionary Algorithm. Technical report, Computer Engineering and NetworksLaboratory - TIK,ETH Zurich.