Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2. OPTIMIZACIÓN MULTIOBJETIVO
La optimización intenta dar respuesta a un tipo general de problemas donde se desea elegir
el mejor entre un conjunto de elementos. En matemáticas, y en un lenguaje coloquial, la
optimización está relacionada con el proceso de obtener el máximo / mínimo de una o más
funciones de evaluación de un sistema, en cuyos casos se habla de optimización de un solo
objetivo u optimización a secas y de optimización multiobjetivo.
f (x ) , con x ∈ Y (2.1)
sujeto a hi ( x ) = 0 y g i ( x ) ≥ 0 , (2.2)
que son restricciones a la evaluación f ( x ) .
3
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
De más está decir que es necesario contar con un modelo matemático del proceso que se
desea optimizar, el cual de alguna manera está “embebido” en estas q funciones de eva-
luación.
Cuando hay un solo objetivo el concepto de óptimo es claro: aquel vector que minimiza
/ maximiza la función objetivo. Cuando hay más de una función objetivo para optimizar,
el concepto de óptimo cambia, ya que lo más probable es que las funciones objetivo
compitan entre sí, por lo cual no es posible encontrar un óptimo sino que se trata de en-
contrar una solución de compromiso o un grupo de soluciones óptimas.
La noción de óptimo en optimización multiobjetivo fue propuesta por Francis Ysidro Ed-
geworth en 1881 y luego generalizada por Vilfredo Pareto en 1896.
4
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
x*≺ x
X P = {x ∈ S / ∃/ x * ∈ S : x * ≺ x} (2.9)
Los vectores x * que están incluidos en el Conjunto óptimo de Pareto se denominan en-
tonces “no dominados” (nondominated) o “no inferiores”. La graficación del conjunto
de funciones cuyos vectores no dominados pertenecen al Conjunto óptimo de Pareto es
llamado Perfil de Pareto. Véase la Fig. 2.2.
5
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
f 1 ( x) = x 2 + 1
f 2 ( x ) = ( x − 2) 4 + 2
sujeto a − 1 ≤ x ≤ 3
A simple vista se puede determinar de la graficación de ambas funciones (Fig. 2.3) que
el Conjunto óptimo de Pareto que cumple con las condiciones (2.7) y (2.8) es
6
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
Intuitivamente se tiende a decir –aunque es falso- que el mejor de todos estos puntos es
el que más se acerca a lo que se define como vector objetivo o vector ideal f * , que es
el conformado por lo óptimos de cada función objetivo considerada independientemen-
te:
[ * *
f * = f 1 , f 2 ,... , f q
*
] (2.10)
Para el caso bajo consideración, f * está conformado por los mínimos de f1(x) y f2(x):
f * = [1, 2]
Por otro lado, un conjunto es no convexo si por lo menos un punto P de S no puede ser
representado como una combinación lineal de puntos de S.
Tomando en cuenta estas definiciones, la Fig. 2.5 muestra conjuntos convexos y la Fig.
2.6 conjuntos no convexos.
7
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
Definición 3
Sea S un subconjunto de ℜ n , convexo y no vacío, y f una función de S en ℜ . La función
f es estrictamente convexa en S sí y solo sí para cualquier par de puntos P1 y P2 ∈ S y
para cualquier λ ∈ [0, 1] se puede probar que f(λ P1 + (1-λ) P2) < λ f( P1) +(1-λ)f(P2).
q
min f ( x) = ∑ wi f i ( x )
x∈S
i =1
Este problema puede ser resuelto por cualquier algoritmo de optimización estándar. El
problema se centra más bien en la elección de los pesos wi.
Para el caso particular, que puede ser graficado, de dos objetivos, se reduce a
min f ( x ) = w1 f1 ( x ) + w2 f 2 ( x )
x∈S
8
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
En el plano (f1 , f2) la ecuación representa una recta L cuya pendiente está definida por
w1 y w2. Geométricamente, el problema puede ser planteado entonces como encontrar el
vector x * que minimice f ( x ) de tal manera que la recta cuya pendiente está definida
por w1 y w2 se acerque hasta tocar tangencialmente al conjunto Ω en el punto
( )
f 1 ( x * ) , f 2 ( x * ) , tal como lo muestra la figura 2.7. Está claro que no se obtiene con este
método el Perfil de Pareto completo sino un punto óptimo. El punto será distinto para
una combinación distinta de w1 y w2.
El método tiene una dificultad adicional: las distintas funciones objetivo habitualmente
tienen valores absolutos muy diferentes unas de otras, por lo cual se debe tener muy en
cuenta la elección de los pesos wi para que tengan el mismo valor relativo dentro de la
suma y sean luego correctamente considerados en la minimización.
2.3.2 Restricción ε
Una forma de resolver al menos parcialmente el problema de la convexidad consiste res-
tringir la evaluación a una sola función objetivo, mientras que a las demás funciones se
las trata como restricciones que no deben superar un cierto valor ε. El problema puede
ser planteado entonces como
Minimizar f i (x )
sujeto a f j ( x ) ≤ ε j j = 1,2,..., q / j ≠ i
9
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
Minimizar γ, con γ ∈ ℜ, x ∈ S
tal que f i ( x ) − wi γ ≤ f i para i = 1,2,…, q
*
*
En esta expresión, f i son las componentes del vector ideal u objetivo f * definido en
(2.10) y wi son pesos para cada uno de los objetivos.
La elección de los pesos wi permite que los q objetivos puedan estar más o menos teni-
dos en cuenta, permitiendo al diseñador ser en principio un tanto impreciso en cuanto a
los objetivos de diseño iniciales.
El término wi γ introduce un cierto grado de elasticidad en el método, sin el cual los ob-
jetivos deberían ser rígidamente cumplidos.
10
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
El funcionamiento del método, que puede ser resuelto con algoritmos de optimización
como SQP (sequential quadratic programming), está descrito geométricamente para el
caso bidimensional en la Figura 2.10.
Los pesos wi definen la dirección de búsqueda desde el vector objetivo f * hacia el espa-
cio factible Ω(γ). Durante la optimización se va cambiando el valor de γ, lo que cambia el
tamaño de la región factible. La restricción impuesta en el planteamiento del método
conduce a un único punto A = f( x * ).
Debe remarcarse que ninguno de los métodos citados hasta el momento da el Perfil de
Pareto en una sola operación, sino que entregan un solo punto. De ahí que para obtener
todo el perfil se debe hacer, al igual que en los métodos anteriormente descriptos, un
barrido de toda la zona factible.
1
La heurística es la ciencia que estudia los procesos de decisión respecto a un campo de conocimiento concreto,
como son las estrategias cognitivas. Su contrapartida formal en computación es el algoritmo.
La palabra heurística proviene de la palabra griega heuriskein (comparte la raíz con eureka) que significa descu-
brir, encontrar. Por heurística entendemos una estrategia, método, criterio o truco usado para hacer más sencilla
la solución de problemas difíciles. El conocimiento heurístico es un tipo especial de conocimiento usado por los
humanos para resolver problemas complejos. En este caso el adjetivo heurístico significa medio para descubrir.
11
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
Los métodos heurísticos con más desarrollo en la actualidad son los siguientes:
Sistemas de colonias de hormigas (Ant colony System, Dorigo y Blum, 2005). Es un al-
goritmo meta-heurístico inspirado en el comportamiento de las colonias de hormigas,
que depositan en el suelo una sustancia denominada feromona. Esta sustancia luego
influencia el comportamiento de otras hormigas, que tienden a tomar los caminos
donde hay mayores cantidades de feromonas.
Algoritmos culturales
Búsqueda tabú
Algoritmos genéticos o evolutivos: sin duda los más usados, y que merecerán un
próximo apartado.
12
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
fuerza bruta con la explotación intensiva en una zona propia de los métodos de progra-
mación matemática basados en el gradiente.
La idea básica es que el conjunto de soluciones factibles S, está constituido por un con-
junto o generación de pop individuos xl = [xl1 , xl 2 , ..., xl j ,... , xln ] . Véase la Figura 2.11.
Se dice que cada uno de los elementos del individuo xl es un cromosoma, y realizando
una codificación binaria de cada elemento, se identifica cada bit con un gen.
A partir de esta idea, el algoritmo genético emula todas las operaciones involucradas en
la reproducción biológica: reproducción, cruzamiento y mutación (Lin y Lee, 1996).
Para cada generación, en la reproducción se seleccionan los individuos más aptos según
su función de costo y, con una cierta probabilidad, se forman parejas (mating), las que
participarán de la próxima etapa: el cruzamiento. En la misma, a la manera en que los
cromosomas de los padres se combinan en un punto pivote compartiendo su información,
dos cromosomas de elementos homólogos de individuos apareados, por ejemplo xlm y xln
pueden cruzarse digitalmente en un punto definido también en forma aleatoria, tal co-
mo se grafica en la Figura 2.12. Por supuesto que, de la misma manera en que biológi-
camente se pueden producir múltiples cruzamientos, también se pueden implementar en
la correspondiente programación del algoritmo genético.
13
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
dentro del dominio que quizás presenten un mejor desempeño en términos de la función
de costo. Véase la Figura 2.13.
En resumen, un seudocódigo muy resumido del algoritmo genético podría ser el siguien-
te:
• loop (generación)
– Evaluar a los individuos
– Reproducción (mating)
– Cruzamiento (crossover)
los individuos más aptos
Formación de una Generación intermedia.
Sobreviven los más aptos, quedando el tamaño de población constante.
– Mutación
Nueva evaluación y supervivencia de los más aptos.
• repetir el loop hasta que se cumpla un criterio
14
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
Existen algoritmos genéticos con una sola función objetivo que resuelven el problema
definido en (2.1) y (2.2). En este caso, una vez que se ha concluido con una cierta canti-
dad de generación que asegura el cumplimiento de un criterio, se elige de la última ge-
neración al individuo que mejor función de evaluación f ( x ) presenta.
El autor ha usado esta herramienta para la estabilización de sistemas controlados con al-
goritmos predictivos GPC multivariables con alta tasa de muestreo (Chuk, 2000), entre-
namiento de redes neuronales (Chuk, 1999), control robusto (Chuk y Núñez, 2003), mí-
nimos cuadrados no lineales (Chuk et al., 2008) y, echando mano del procedimiento de
la suma ponderada detallado en 2.3.1, diseño óptimo multi objetivo de hidrociclones
(Chuk et al., 2004).
Existe una amplia variedad de MOEAs. En este trabajo se ha usado una variante propia
del NSGA II: Nondominated Sorting Genetic Algorithm II, propuesto por Deb et al. (2002).
Se trata de uno de los algoritmos evolutivos más eficientes –computacionalmente
hablando- usados en la actualidad.
Luego, los individuos de los frentes I, II y III tienen muchas más probabilidades de repro-
ducirse en una próxima generación que los restantes.
15
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
Debe notarse en primera instancia que el Conjunto de Pareto XP definido por (2.9) es
único y contiene infinitos puntos en la gran mayoría de los casos. Sin embargo el propósi-
to de los algoritmos de optimización multi objetivo es encontrar un subconjunto finito –
tantos como el tamaño pop de la población P que se defina- de puntos de XP representa-
tivos del mismo distribuidos a lo largo del Perfil, que denotamos como X P´ .
La forma tradicional, como lo expresan entre otros Blasco et. al.(2008), es clasificar el
Perfil de acuerdo a su proximidad al vector ideal f * definido en (2.10). Más adelante,
en el Capítulo 4, se mostrará una ampliación de este concepto que se ha desarrollado en
este trabajo.
Por el momento, baste decir que para esta clasificación, y debido a que los valores abso-
lutos de las distintas funciones objetivo pueden ser muy disímiles y de distintas dimen-
siones, se normalizan los valores de cada función objetivo con respecto a sus valores
máximos y mínimos, que se definen como
16
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
f i M = max´ f i ( x * ) , f i m = min´ f i ( x * ) i = 1, . . . , q
x∈X P x∈X P
m M
Se tiene en consecuencia un vector de mínimos f y uno de máximos f .
fi ( x * ) − fi m
f in ( x * ) = (2.11)
fi M − fi m
fi ( x * ) − fi m fi* − fi m f i ( x * ) − f i*
∆f in ( x ) = f in ( x ) − f =
* * *
in − M = M
fi M − fi m fi − fi m fi − fi m
q
Norma 1: ∆f n ( x * ) =
1
∑ ∆f
i =1
in (x* )
1
k 2
Norma 2 o Norma euclídea: ∆f n ( x ) = ∑ ∆f in ( x * ) 2 *
2
i =1
Norma infinito: ∆f n ( x ) = max{∆f in ( x )}
* *
∞
0 ≤ ∆f n ( x * ) ≤ q
1
0 ≤ ∆f n ( x ) *
≤ q
2
0 ≤ ∆f n ( x * ) ≤1
∞
17
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
1
k 2
∆f n ( x )W
* T
= ∑ wi ∆f in ( x * ) 2 , con W 1
=1 (2.12)
2
i =1
En este esquema de cosas, el Punto A es una solución preferida frente a otros individuos
del Perfil como el Punto B.
f 1 ( H f , E g ) = (c f − 1) 2 y
f 2 ( H f , E g ) = ( R fcf − 1) 2
2
La descripción del proceso se detallará en el Capítulo 5.
3
Para el significado de estas variables e indicadores mineralúrgicos véase el Capítulo 6.
18
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
Una vez realizada la optimización, el perfil de Pareto es el que se grafica en la parte su-
perior de la siguiente Figura, mientras que el conjunto óptimo de Pareto se muestra en
la parte inferior, en el plano de decisión (Hf ,Eg).
Al efectuar una clasificación de los individuos del Perfil de Pareto según la distancia al
vector ideal f * = c f * , R fcf * = [1,1], se los puede distribuir en cuatro grupos asociados a
cuatro colores: los más alejados están graficados en rojo, luego en orden de mayor cer-
canía los graficados en amarillo y en magenta y finalmente –los más cercanos- en verde.
El mejor de estos últimos, o sea el que presenta menor norma 2 al objetivo está marca-
do con un asterisco azul. Como es previsible, la solución preferida marcada con un aste-
risco azul se ubica en los valores más altos tanto de Hf como de Eg.
19
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
En cada iteración i:
• Se toma como vector de partida x0 a la “solución preferida” de la iteración an-
terior.
• Se reduce el universo de búsqueda, definiendo el espacio entre lb y ub como la
mitad del anterior, y centrado en la solución preferida anterior.
• Se reduce la probabilidad de mutación en una forma exponencial:
20
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
pm(i) = 0.2 / e(i-1). Es decir que se parte con una probabilidad de mutación de
0.2 (20%) y en 5 iteraciones (máximo por lo general) se ha reducido a 0.0037.
La Figura 2.17 muestra, para un caso de optimización mono objetivo típico, la conver-
gencia de la Función de evaluación en función de la cantidad de ciclos ejecutados, para
dos probabilidades de mutación iniciales.
< p/10 que están más cerca de x0 –en el sentido de la norma x − xo - , y se los pro-
*
2
media con un peso que es la inversa de la norma 2 de las funciones de costo. De esta
manera, tan solo para el valor que se pasa a la iteración 2 como valor inicial, se calcula
la solución preferida como
p1
1
x m* = 1 p1
1 ∑ ∆f n ( x )
*
xi*
∑
i =1 ∆f n ( x )
*
i =1 i 2
i 2
Como ejemplo, para el caso de la profundidad de espuma Hf, una de las variables de de-
cisión para el caso de la Columna de flotación que se desarrollará en detalle en la se-
21
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
2.6 Aplicación de los conceptos de la búsqueda orientada con algoritmos genéticos multi
objetivo al cálculo óptimo de trayectorias.
En primer lugar se espera que, a los fines de no producir variaciones abruptas en el sis-
tema y evitar asimismo el stress de actuadores, para un cierto intervalo de muestro k el
vector de referencias óptimas x * (k ) no estará muy lejos de su antecesor x * (k − 1) , es-
to en el sentido de la norma x * (k ) − x * (k − 1) . Para asegurar esto, es apropiado pro-
2
poner como valor inicial de búsqueda para el instante de muestreo k la solución preferi-
da anterior
x0 (k ) = x * (k − 1)
En segundo lugar, se puede aplicar la idea de reducción del espacio de búsqueda. Solo
que en este caso es conveniente realizar tal reducción en relación con algún parámetro
de calidad de la solución preferida anterior. Dado que a medida que nos vamos acercan-
do al óptimo la norma ∆f n (x * ) se va haciendo más pequeña, resulta lógico usar esta
2
medida para definir el próximo espacio de búsqueda alrededor del vector de referencias
obtenido en la muestra anterior k-1.
Definido el espacio inicial de búsqueda S por medio de las restricciones (2.4) y (2.5), que
incluyen los límites iniciales lb ini y ub ini , el rango o span inicial de búsqueda es
22
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
A cada intervalo de muestreo k los nuevos límites inferior y superior de búsqueda que
definen un espacio de búsqueda más estrecho Sk se calculan como
constr]
spanconstr = spanMconstr para K span ∆f n ( x * (k − 1)) ∈(spanMconstr , ∞)
2
En estas últimas expresiones spanmconstr y spanMconstr son cotas mínimas y máximas para
spanconstr que suelen ubicarse en 0.2 y 0.6 respectivamente. Es decir que el espacio de
búsqueda Sk (asociado a los valores lb(k ) y ub(k ) que se han definido arriba) oscilará en-
tre el 20% y 60% del conjunto inicial S definido por span ini . Kspan es un factor de propor-
cionalidad.
Por supuesto que una vez definidos para cada k los valores de lb(k ) y ub(k ) se aplica el
procedimiento de búsqueda orientada descripto en el punto 2.5.3 referido a las mejoras
efectuadas al NSGA II.
La gráfica de la Figura 2.18 se amplía con este concepto a la de la siguiente Figura 2.19.
Fig. 2.19: Acotamiento del espacio de búsqueda en función de la norma 2 de las funciones de evaluación.
23
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
En la misma se muestra como los valores definidos de lb(k) y ub(k) para k=2 (signo
+)sufren luego una progresiva reducción en virtud de la búsqueda orientada en 4 itera-
ciones hasta llegar al valor preferido de Hf marcado con un asterisco azul * de mayor
tamaño. En la fracción inferior de la gráfica se aprecia como el valor de la norma 2
∆f n (x * ) decrece para k=3 y por lo tanto los valores iniciales de búsqueda (signo +) in-
2
dicados en la parte superior de la gráfica son más estrechos.
So ⊂ Sk ⊂ S
La Figura 2.21 muestra la evolución de una variable que será objeto de optimización en
el resto del trabajo, la profundidad de espuma Hf, y sus límites de búsqueda inferior lb y
superiro ub – en líneas de trazos- implementados con el procedimiento descripto en esta
sección, y que será aplicado en el desarrollo del próximo capítulo, aunque no se lo cite
explícitamente.
Se aprecia como, dado un espacio Sk inicial que se utiliza en la primera muestra, rápi-
damente a partir de la segunda muestra en k = 2 el espacio Sk se reduce drásticamente,
con lo que aumenta la velocidad de convergencia al poder reducir la cantidad de gene-
raciones necesarias del algoritmo genético.
24
Generación de trayectorias de referencias para
plantas con optimización multiobjetivo de índices
económicos y técnicos 2. Optimización multi objetivo
El tiempo necesario para calcular un vector de referencias para un sistema depende fun-
damentalmente del tiempo necesario ts para simular la respuesta del sistema y calcular
las funciones de evaluación correspondientes, frente a un cierto vector de referencias.
Este valor depende de la complejidad del modelo, del idioma de programación usado y
de la potencia de cálculo del procesador usado.
Los algoritmos genéticos son lentos por naturaleza, en comparación con los métodos ba-
sados en el cálculo del gradiente. Sin embargo, son perfectamente aplicables a la gran
mayoría de los procesos industriales con dinámicas relativamente lentas, usando como
herramienta de cálculo una computadora personal. Particularmente, tiene tiempos de
cálculo aceptables para el proceso de flotación en columna utilizado en la segunda mi-
tad de este trabajo.
25