Está en la página 1de 9

4.

1 Mtodos de optimizacin
El diseo molecular es un problema de optimizacin al cual se le ha aplicado la programacin
no lineal con enteros mezclados (MINLP), debido a la alta no linealidad que implican las
restricciones del proceso y la necesidad de usar enteros para representar el nmero de grupos
funcionales que hacen parte de la molcula sometida a diseo. Este problema es altamente no
convexo y es muy difcil obtener derivadas para la funcin a optimizar, lo que contribuye en
gran parte con la complejidad del problema. Por ello, los mtodos determinsticos de solucin
no siempre pueden encontrar el ptimo global y son muy susceptibles a quedar atrapados en
ptimos locales. En contraste, los mtodos estocsticos tienen una mayor probabilidad de
localizar el ptimo global y son mucho ms flexibles en su utilizacin.
4.1.1 Mtodos determinsticos: El trmino determinstico significa que sin importar lo que
haga el algoritmo, slo hay una cosa que puede hacer a continuacin (es decir, el paso
siguiente est determinado por los pasos anteriores). Estos mtodos son sensibles a la
inicializacin y a la no convexidad del problema [157].
Se han utilizado diferentes mtodos determinsticos como el branch and bound [121, 124],
anlisis de intervalos [96], algoritmos de aproximacin externa [120, 133], descomposicin de
Bender [122, 126]. Estos algoritmos utilizan la heurstica o la relajacin de enteros para la
optimizacin discreta y usan los algoritmos tradicionales de programacin no lineal o lineal
para resolver el problema de optimizacin continua. Estos pueden utilizarse slo s la
formulacin del problema es convexa [97]. A continuacin se describirn brevemente algunos
de estos mtodos.
La optimizacin basada en anlisis de intervalos utiliza una reduccin sucesiva del dominio
que elimina porciones del espacio de bsqueda con el fin de mantener una hipercaja final de
dimensiones especficas que contenga la solucin global. Es una tcnica computacionalmente
intensiva pero se han desarrollado algunas tcnicas de aceleracin.
El algoritmo de aproximacin externa fue desarrollado por Duran y Grossmann, ste consiste
de una secuencia de iteraciones de un subproblema no lineal y de un problema global lineal
con enteros mezclados. Inicialmente se resuelve una forma relajada del problema MINLP en el
cual las variables enteras se han considerado como continuas. Si todas las variables en el
vector de variables enteras dejan de serlo esta solucin es ptima para el problema MINLP, si
no, las soluciones no enteras sirven como un estimado inicial para el problema MILP que da un
estimado entero de la solucin. En el MILP las funciones objetivo y de restricciones no
lineales son linealizadas alrededor de la solucin continua actual. El estimado entero obtenido
del MILP es entonces usado en un subproblema no lineal para obtener nuevos valores de las
variables continuas y un nuevo punto para linealizar las funciones no lineales en el siguiente
MILP. Los MILP y NLP son resueltos sucesivamente hasta que haya una disminucin (en el
caso de una maximizacin) en el valor de la funcin objetivo para subproblemas NLP factibles
sucesivos [109].
Para que este algoritmo pudiera tener en cuenta restricciones de igualdad, Kocis y Grossmann
sugieren el algoritmo de aproximacin externa con relajacin de igualdades (las igualdades son
transformadas en desigualdades), que garantiza una solucin global si se cumplen algunos
requerimientos de convexidad. Para suavizar las suposiciones de convexidad, Viswanathan y

Grossmann, proponen otra variante de este algoritmo, el algoritmo de aproximacin externa


con relajacin de igualdades y penalizacin aumentada, que a pesar de todo no garantiza
soluciones ptimas globales. Una debilidad de estos mtodos es que el subproblema no lineal
puede quedarse atrapado en mnimos locales para formulaciones matemticas no convexas
[124, 133].
En un mtodo branch and bound convencional se calculan los lmites superior e inferior de la
funcin objetivo para divisiones sucesivas de la regin de bsqueda, por lo que est constituido
por tres algoritmos: uno para estimar el lmite inferior, otro para estimar el lmite superior y
finalmente uno para particionar la regin factible. Para estimar el lmite inferior se relaja el
problema reemplazando las restricciones y la funcin objetivo no lineal por sub estimadores
lineales, lo que lleva a un problema lineal de enteros mezclados que puede ser resuelto por
cualquier solucionador como lp_solve o OSL. Al generar elementos de particin se van
poniendo en una lista de elementos de particin abierta, que posteriormente son seleccionados
para procesamiento o particin posterior, o borrados cuando sus lmites inferiores no son
menores que el mejor limite superior conocido del problema.
Una aplicacin de este tipo, con herramientas novedosas de reduccin de intervalos, esquemas
de relajacin, y estrategias de ramificacin, es presentada por Tawarmalani y Sahinidis [218]
en el programa BARON (Navegador para la optimizacin por ramificacin y reduccin) para
problemas de optimizacin global no lineal con enteros mezclados. Otro ejemplo lo aportan
Ostrovsky, Achenie y Sinha [219], quienes tambin utilizan esta tcnica de optimizacin
global, para la solucin de un problema de diseo molecular aplicable a modelos en los cuales
el nmero de restricciones lineales es mucho mayor que el de restricciones no lineales. En este
ltimo trabajo, para reducir significativamente la dimensionalidad del espacio de bsqueda se
propone una nueva estrategia de ramificacin.

Estructura inicial del solvente


(Combinacin binaria)

Problema primal descompuesto


Crear
nuevas
variables
binarias

Pruebas de propiedades fsicas


Infactibilidad
Obtener y fijar valores de las
propiedades primarias

Inicializacin del modelo del


proceso y simulacin
Crear
nuevas
variables
binarias

Optimizacin del modelo del


proceso
(Problema primal ODEM)

Obtener lmite
superior y
multiplicadores
de Lagrange

Generar
cortes de
enteros

Infactibilidad

Generar cortes
de enteros
Master
Reducido
Infactible

Problema master
ODEM
ODEM
Master
Infactible

Obtener lmite
inferior y
nuevos valores
binarios
No

Problema master
reducido

Convergencia
Si
Finalizar
Reportar la mejor
solucin

Figura 7. Algoritmo basado en el mtodo de descomposicin (Giovanoglou et al [122])


En la mayora de los problemas MINLP, debido al gran nmero de restricciones involucradas
la regin factible puede ser muy pequea comparada con el espacio de bsqueda. Para resolver
tales problemas es clave identificar rpidamente y evitar la porcin no factible del espacio de
bsqueda, una forma de hacer esto es dividir el problema en subproblemas y resolver primero
los subproblemas que tienen un conjunto de restricciones solamente (ms fciles de resolver),
para evitar que el comportamiento altamente no lineal de estas restricciones dificulte la
convergencia y la eficiencia computacional. Un ejemplo de aplicacin de este mtodo es
representado en la siguiente figura, tomada del trabajo de Giovanoglou et al [122].

All, el problema del diseo de solventes, se descompuso en un subproblema primal, una


optimizacin dinmica y un subproblema master lineal de enteros mezclados. En el problema
primal la estructura del solvente, representada por variables binarias es fija mientras se
optimiza la operacin del proceso, y se generan nuevas estructuras del solvente resolviendo el
problema master. El problema primal es descompuesto en varios pasos que son resueltos en
serie para inicializar el problema primal global. Los dos problemas son resueltos iterativamente
con el mtodo de descomposicin generalizada de Bender, generando lmites superiores e
inferiores, respectivamente, a la solucin del problema global hasta que se logra convergencia.
4.1.2 Mtodos estocsticos: Algunas de las ventajas que presenta el uso de tcnicas
evolutivas para resolver problemas de bsqueda y optimizacin son: su simplicidad conceptual
y amplia aplicabilidad, son superiores a las tcnicas tradicionales en muchos problemas del
mundo real, tienen el potencial para incorporar conocimiento sobre el dominio y para
combinarse con otras tcnicas de bsqueda y/o optimizacin, pueden explotar fcilmente las
arquitecturas en paralelo, no requieren la evaluacin de derivadas, son robustas a los cambios
dinmicos, generalmente pueden auto-adaptar sus parmetros y son capaces de resolver
problemas para los cuales no se conoce solucin alguna [220]. Se han utilizado tcnicas como
el templado simulado [117-119] y los algoritmos genticos [121, 123, 134, 135], stas sirven
para problemas no convexos y no suaves, es decir, en superficies de bsqueda altamente no
lineales e incluso en regiones donde la funcin objetivo es discontinua [97, 164].
4.1.2.1 Templado simulado [157, 160]
Es un mtodo que se fundamenta en los procesos de Markov y en la teora de la probabilidad y
se utiliza para resolver problemas de optimizacin combinatorial. Est basado en la mecnica
estadstica y fue propuesto por Kirkpatrick. El templado simulado hace una analoga al
comportamiento de los sistemas fsicos en presencia de un bao de calor: en el templado fsico,
si la temperatura inicial es suficientemente alta y el enfriamiento es llevado a cabo lentamente,
todas las partculas se arreglan en una formacin retcular que minimiza la cantidad de energa
en el sistema. Para cada temperatura T se permite que el sistema llegue al equilibrio trmico, el
cual se caracteriza por la probabilidad de estar en un estado con energa E dado por la funcin
de distribucin de Boltzmann:

Pr (E ) =

1 E
1

exp
Z
kB T

(67)

Donde 1/Z es un factor de normalizacin y kB es la constante de Boltzmann (1,3806 x 10-23


J/K). El proceso de templado se describe en trminos de estados y movimientos, cada estado se
refiere a un momento de los parmetros del sistema y los movimientos son aplicados
probabilsticamente para transitar de un estado a otro. Una secuencia de estados (niveles de
temperatura), constituyen una cadena de Markov estacionaria, debido a que las probabilidades
de transicin que evolucionan la cadena dependen exclusivamente de la posicin actual y no de
las posiciones previas.
En el templado simulado, la funcin objetivo es la energa del sistema y el objetivo es
minimizarla. Entonces, la optimizacin procede como una serie de cadenas estacionarias, es
decir, simular el comportamiento del sistema se vuelve un asunto de generar una perturbacin

al azar que desplace una partcula moviendo el sistema a otra configuracin. Su convergencia
tiene la propiedad de ergodicidad; para que un proceso estocstico sea ergdico, es esencial
que haya una probabilidad de transicin no nula uniendo todos los estados, como resultado de
esta propiedad el estado final es independiente del estado inicial.
Para la aplicacin de un algoritmo de templado se tienen que definir los estados del problema y
un conjunto de posibles modificaciones (movimientos) que unen unos estados con los otros. El
algoritmo es un proceso iterativo donde los movimientos generan nuevos estados, de acuerdo a
un conjunto de probabilidades de perturbacin. Los nuevos estados son comparados con los
viejos basndose en un criterio de evaluacin probabilstica y las probabilidades de aceptacin
son continuamente actualizadas de acuerdo con el programa de enfriamiento estadstico.
La probabilidad de transicin Ti,j del estado i al estado j es el producto de la probabilidad de
perturbacin Pi,j y la probabilidad de aceptacin Bi,j:

Ti , j ( ) = Bi , j ( )Pi , j

(68)

Las probabilidades de perturbacin controlan la aplicacin del conjunto de movimientos y


permanecen constantes a travs del proceso. Si la configuracin obtenida, que representa un
conjunto de variables de decisin discretas que resultan de los movimientos, tiene un menor
estado de energa, el movimiento es aceptado. Sin embargo, si el movimiento llega a un estado
de mayor energa es aceptado de acuerdo al criterio de Metrpolis:

Fi , j
Bi , j ( ) = exp

Bi , j ( ) = 1

si Fi,j >0

(69)

si Fi,j <0

Bi,j() es la probabilidad de aceptacin para el movimiento del estado i al estado j


Fi,j es la diferencia en la funcin objetivo F que se minimiza con el movimiento

es la temperatura de templado que es un parmetro de enfriamiento estadstico y se


actualiza mediante el siguiente programa de enfriamiento:

k +1

ln (1 + ) k
= 1 +
Fk ,max

(70)

es un parmetro que controla la velocidad del proceso de templado


Fk,max es la diferencia mxima entre los valores de la funcin objetivo
es el objetivo mximo esperado
k
El valor de k es alterado despus de un cierto nmero de movimientos a una temperatura de
templado constante.
Los movimientos hacia arriba pueden ser aceptados si una probabilidad al azar (Pr) es menor
que o igual a la probabilidad de aceptacin Aij. Por ello, el criterio de Metrpolis implica que a
altas temperaturas, un gran porcentaje de los movimientos hacia arriba son aceptados; esos

movimientos no son permitidos en todos los algoritmos de optimizacin. Despus que el


sistema ha llegado al equilibrio trmico a una temperatura dada, se baja la temperatura y el
proceso de templado contina hasta que la temperatura llegue una cierta temperatura
determinada a priori. Entonces, el templado simulado combina mejoras iterativas en reas
locales y saltos al azar para ayudar a asegurar que el sistema no quede atrapado en ptimos
locales.
Debido a que el mtodo de templado simulado es un mtodo probabilstico, este cuenta con
varias funciones de probabilidad al azar: la probabilidad de aceptacin Aij, y una o ms
probabilidades de generacin Gij que crean los movimientos configuracionales. Se sabe que la
eficiencia del algoritmo de templado se afecta poco con el uso de diferentes probabilidades Aij,
sin embargo la funcin Gij si afecta significativamente esta eficiencia. El programa de
enfriamiento que determina la convergencia del algoritmo; es fuertemente dependiente de Gij,
si el enfriamiento es rpido, Gij debera cubrir un intervalo ms amplio del espacio de
configuraciones a cada nivel de temperatura. Generalmente Gij es una distribucin uniforme,
por lo que se han hecho esfuerzos para mejorar este algoritmo, modificando o cambiando Gij y
el programa de enfriamiento.
4.1.2.1.1

Templado estocstico

Esta variante del templado simulado fue propuesta por Diwekar y colaboradores y est
diseada para resolver problemas de optimizacin discreta con incertidumbre. Este algoritmo
busca optimizar eficientemente una funcin objetivo probabilstica balanceando la precisin de
la solucin y la eficiencia computacional. En este algoritmo, el optimizador no solo obtiene las
variables de decisin sino tambin el nmero de muestras requeridas para el modelo. El
templado estocstico usa una funcin objetivo sustituta que tiene en cuenta el verdadero valor
de la funcin objetivo aumentada mediante un trmino de penalizacin que involucra un error
en el muestreo relacionado con el nmero de muestras, entonces el problema estocstico se
modifica a un nuevo, que est formado por la funcin esperada (Ef(x,)) y el trmino de
penalizacin (b(t)):

min z = E f ( x, ) + b(t ) =

f (x, ) + b(t )

N mues

(71)
N mues j =1
La funcin de penalizacin est compuesta por la funcin de ponderacin b(t) y el ancho de
banda del error (intervalo de confianza) del mtodo de muestreo. La funcin b(t) gobernada
por el programa de enfriamiento, puede ser expresada en trminos del nivel de temperatura de
templado (t). A altas temperaturas el tamao de la muestra (Nmues) puede ser pequeo, debido a
que el algoritmo est explorando la topologa funcional en el espacio de configuracin.
Entonces, en sta etapa la eficiencia computacional es ms importante que la precisin de la
solucin. Cuando el sistema se enfra, el algoritmo busca el ptimo global, en consecuencia es
necesario tomar ms muestras para tener objetivos ms reales y correctos. Basado en estas
propiedades se puede proponer una funcin exponencial para b(t):

bo
(72)
kt
bo es una constante pequea (0,001) y k es una constante (0,92) que rige la velocidad de
incremento. Estos dos parmetros empricos dependen del programa de enfriamiento y deben
b(t ) =

ser determinados experimentalmente de forma tal que el trmino de penalizacin sea menor
que el 5% de la funcin objetivo real.
El ancho de banda del error de las muestras al azar puede ser estimado por la siguiente
ecuacin basada en la estadstica clsica. Sin importar la distribucin de x, el teorema del
lmite central permite calcular los anchos de banda sobre el valor esperado de las muestras al


, donde z1-/2 es una variada normal
azar, dado por x z
,x + z

1
1
N
N
2
2
mues
mues

estndar tal que el intervalo (-z1-/2, z1-/2) cubra la probabilidad 1- de la distribucin normal
unitaria. Para un mayor intervalo de confianza como 1-=0,95, la variada normal estndar es
aproximadamente igual a la constante 2 resultando en la siguiente ecuacin:
1
(73)
MCS
N mues
Este ancho de banda del error en la funcin de penalizacin es usado en el algoritmo de
templado, permitiendo as que el templado estocstico controle el nmero de muestras.
El algoritmo detallado se puede encontrar en el trabajo de Kim [160], sin embargo en resumen
se genera una nueva configuracin a partir de la configuracin actual basado en una
probabilidad de generacin dada. El nmero de muestras puede ser aumentado o disminuido
pero es gobernado eventualmente por la funcin de ponderacin usada en el trmino de
penalizacin. Despus que se determinan y generan Nmues muestras inciertas, el modelo corre
Nmues veces con diferentes parmetros inciertos para estimar Ef(x,). Entonces se usa la
siguiente ecuacin para evaluar el efecto de las incertidumbres sobre los problemas de
optimizacin; los pasos restantes son iguales a los del templado simulado.
2

ND
ND
1

2
f ( x, y , ) = i x i
+ i y i cos(4 i y i )
ND
i =1
i =1
i =1
ND

(74)

4.1.2.2 Algoritmos genticos


John H. Holland se interes en los 1960s en estudiar los procesos lgicos involucrados en la
adaptacin. Inspirado por los estudios realizados en aquella poca con autmatas celulares y
redes neuronales, Holland se percat de que con el uso de reglas simples se podran generar
comportamientos flexibles y visualiz la posibilidad de estudiar la evolucin de
comportamientos en un sistema complejo [220].
Este sistema fue desarrollado hacia mediados de los 1960s, y se dio a conocer en el libro
Adaptacin en Sistemas Naturales y Artificiales que Holland public en 1975; all fue
denominado plan reproductivo gentico, aunque despus se populariz bajo el nombre de
algoritmo gentico. Aunque fue concebido originalmente para el aprendizaje de mquina, el
algoritmo gentico se ha utilizado mucho en optimizacin y es una tcnica sumamente popular
en la actualidad.
En otras palabras, un algoritmo gentico es un mtodo de optimizacin que est basado en la
teora de Darwin de la seleccin natural. Esta implica que los individuos que ms se adaptan a

su ambiente tienen una mayor probabilidad de sobrevivencia y por tanto pasarn su material
gentico a las siguientes generaciones. Para simular este proceso natural, un algoritmo gentico
necesita contar con una poblacin inicial que pueda ser evolucionada y mediante el criterio de
la supervivencia del ms fuerte seleccionada para reproducirse. Por ello, un algoritmo gentico
consta de los siguientes elementos:
Funcin de evaluacin: Para usar un algoritmo gentico se debe definir una funcin de
aptitud, ya que sta es una medida de que tan cerca se encuentra el individuo del ptimo
buscado. Por tanto, las mejores soluciones al problema deben tener mayores aptitudes y el
algoritmo intentar entonces encontrar el individuo con la mayor aptitud.
Representacin: Cada individuo de la poblacin es representado mediante un cromosoma que
como los cromosomas biolgicos est codificado como una cadena lineal. Cada unidad
separada de informacin en un cromosoma es llamada gen. Para el caso del diseo molecular,
se han usado diferentes esquemas de representacin y uno de los ms populares son las
cadenas binarias, donde cada binario en la cadena representa un gen. Sin embargo, hay otros
mtodos que incluyen los enumerados donde cada gen representa un grupo funcional
especfico y los que utilizan matrices de conectividad que adems de la informacin de los
grupos constituyentes de la molcula incluyen informacin de los enlaces entre estos grupos.
Poblacin: La reproduccin de los cromosomas puede ser manejada en diferentes formas y
dos de las ms usadas son la reproduccin de estado estable y la generacional. En la primera se
crea una generacin completamente nueva a partir de los cromosomas originales, mientras que
en la de estado estable los cromosomas nuevos reemplazarn continuamente a sus cromosomas
padres slo s tienen un valor de aptitud mayor.
Reproduccin: Los cromosomas nuevos son generados por modificacin de los cromosomas
existentes a travs de algunas operaciones como la mutacin, el cruce, la insercin y el
borrado. La mutacin consiste en reemplazar un gen del cromosoma con otro. Durante el cruce
dos cromosomas padres son cortados en puntos especficos y cada parte de un cromosoma es
unida con otra parte del otro cromosoma padre para formar los hijos. Esta es una aproximacin
a la reproduccin sexual de la naturaleza y por tanto cada cromosoma hijo heredar
caractersticas de ambos padres. La seleccin de los cromosomas padres usualmente se hace de
acuerdo a sus valores de aptitud, lo que implica que los cromosomas con mayores aptitudes
tendrn una mayor probabilidad de reproducirse emulando la sobrevivencia del ms fuerte.
El algoritmo gentico enfatiza la importancia del cruce sobre la mutacin y usa seleccin
probabilstica. El algoritmo bsico es el siguiente y est representado en la figura 8:

Generar aleatoriamente una poblacin inicial.


Calcular la aptitud de cada individuo.
Seleccionar probabilsticamente los individuos con base en su aptitud.
Aplicar operadores genticos (cruce y mutacin) para generar la siguiente poblacin.
Repetir hasta que cierta condicin se satisfaga.

Esta es una tcnica de bsqueda multipunto que examina un conjunto de soluciones y no slo
una solucin como otros mtodos, esto y la naturaleza estocstica del algoritmo ayuda para no
quedar atrapado en mnimos locales, adicionalmente, es un mtodo que no est basado en

derivadas lo que evita las dificultades enfrentadas por las tcnicas de programacin
matemtica. Con este mtodo es relativamente fcil expresar la qumica compleja de las
molculas, y se puede integrar cualquier conocimiento heurstico que se tenga sobre el
problema para acelerar el proceso. A pesar de estas ventajas no hay garanta de encontrar la
mejor solucin.
Nueva
Poblacin

Poblacin
inicial

Evaluacin
Aptitud

Seleccin

Aptitud
Adecuada

Si

Figura 8. Algoritmo gentico

No
Operadores

También podría gustarte