Anda di halaman 1dari 57

UNIVERSIDAD AUTNOMA DE CHIHUAHUA

FACULTAD DE INGENIERA
SECRETARA DE INVESTIGACIN Y POSGRADO

MAESTRA EN INGENIERA EN COMPUTACIN

TESIS
META HEURISTCAS PARA EL PROBLEMA DE PLEGAMIENTO DE
PROTENAS

Presenta:
Emmanuel Acosta De Len

Director de Tesis
Dr. Luis Carlos Gonzlez Gurrola

Chihuahua, Chihuahua. Octubre del 2014

META HEURISTICAS PARA EL PROBLEMA DE PLEGAMIENTO DE


PROTEINAS, Examen para obtener el grado de Maestra en Ingeniera en
Computacin presenta Emmanuel Acosta De Len, ha sido revisada y aprobada
para la Facultad Ingeniera de la Universidad Autnoma de Chihuahua por los
miembros del Comit Revisor:

Luis Carlos Gonzlez Gurrola


Asesor principal

_________________

Fernando Martnez Reyes


Sinodal

_________________

Jos Luis Herrera Aguilar


Sinodal

_________________

RESUMEN

META

HEURISTICAS

PARA

EL

PROBLEMA

DE

PLEGAMIENTO

DE

PROTEINAS
Por:
Emmanuel Acosta De Len
Secretara de Investigacin y Posgrado
Facultad de Ingeniera
Universidad Autnoma de Chihuahua
Presidente: Luis Carlos Gonzlez Gurrola
La presente investigacin presenta como objetivo principal encontrar solucin al
problema de plegamiento de las protenas conocido tambin como PFP haciendo
uso de tres meta heursticas distintas siendo estas un algoritmo gentico,
bsqueda por vecindarios variable VNS y bsqueda tab siendo adaptadas al PFP
usando el modelo Hidrofbico-Polar o HP en dos y en tres dimensiones. Para el
conjunto de pruebas se hizo uso de cadenas de entrada de los aminocidos de las
protenas en las cuales ya se ha obtenido el mayor nmero de contactos
topolgicos no covalentes que se encuentran en la literatura los cuales son usados
para encontrar la eficiencia mxima encontrada con cada uno de dichas meta
heursticas de bsqueda aqu propuestas y los resultados se encuentran en un
porcentaje que se pondera con la media de la eficiencia en cada caso de prueba
individual.

Palabras Clave: meta heurstica, plegamiento de protenas

ABSTRACT
By: Emmanuel Acosta De Len

Department of research and postgraduate studies

Universidad Autnoma de Chihuahua

President: Luis Carlos Gonzlez Gurrola


This research has as main objective to find a solution to the protein folding problem
also known as PFP using three different meta heuristics being such a Genetic
Algorithm, Variable neighborhood search and Taboo search VNS being adapted to
using the PFP model Hydrophobic- polar or HP in two and three dimensions. For
all the testing was done using input strings of amino acids of proteins which have
already obtained the largest number of impar-covalent topological contacts found
in the literature, which are used to find the maximum efficiency found with each of
these meta search heuristics proposed here and the results are in a percentage
that is calculated with the average efficiency in each individual test case.
Key words: meta heuristics, protein folding

TABLA DE CONTENIDOS
RESUMEN ......................................................................................................................................... 3
ABSTRACT ....................................................................................................................................... 4
CAPITULO I INTRODUCCIN ..................................................................................................... 8
1.1 Antecedentes. ........................................................................................................................................ 8
1.2 Problema de Investigacin. .................................................................................................................... 8
1.3 Pregunta de Investigacin. ..................................................................................................................... 8
1.4 Objetivo general. ................................................................................................................................... 9
1.4.1 Objetivos especficos ........................................................................................................................... 9
1.5 Justificacin ........................................................................................................................................... 9
1.6 Aportacin practica ................................................................................................................................ 9
1.7 Objeto de estudio ................................................................................................................................ 10
1.8 Idea a defender .................................................................................................................................... 10
1.9 Hiptesis .............................................................................................................................................. 10

CAPITULO II MARCO TEORICO .............................................................................................. 11


2.1 El problema de plegamiento de protenas. ........................................................................................... 11
2.2 El modelo HP ........................................................................................................................................ 12
BSQUEDA POR VECINDARIOS VARIABLE VNS .......................................................................................... 13
Nociones bsicas del VNS........................................................................................................................... 14
Bsqueda Local para el VNS ....................................................................................................................... 15
Algoritmo bsico VNS ................................................................................................................................ 15
Variantes VNS ............................................................................................................................................ 16
Aplicacin de VNS para el PFP .................................................................................................................... 17
Algoritmo general. ..................................................................................................................................... 17

Operadores ................................................................................................................................................ 19
Tipos de operadores. ................................................................................................................................. 19
Mutacin ................................................................................................................................................... 20
Evaluacin de los resultados. ..................................................................................................................... 22

MULTIOBJETIVO ........................................................................................................................ 23
ALGORITMO GENTICO ........................................................................................................... 26
Introduccin. ............................................................................................................................................. 26
Mtodo. ..................................................................................................................................................... 26
Inicializacin del algoritmo gentico. ......................................................................................................... 27
Seleccin .................................................................................................................................................... 27
Operadores genticos. ............................................................................................................................... 28
Tcnicas de cruzamiento. ........................................................................................................................... 28
Mutacin PFP............................................................................................................................................. 28
Aplicacin de algoritmo gentico en PFP. .................................................................................................. 29
Inicializacin del AG para PFP .................................................................................................................... 29
Seleccin AG-PFP ....................................................................................................................................... 29
Cruzamiento AG-PFP .................................................................................................................................. 29
Detalle para la unin de dos soluciones ..................................................................................................... 30
Mutacin AG-PFP ....................................................................................................................................... 34

BUSQUEDA TABU PARA EL PFP ............................................................................................ 35


Introduccin. ............................................................................................................................................. 35
Desarrollo Histrico. .................................................................................................................................. 35
La estructura de la Bsqueda Tab ............................................................................................................ 36
Tipos de memoria ...................................................................................................................................... 37

Intensificacin y Diversificacin ................................................................................................................. 39


Aplicacin en el PFP ................................................................................................................................... 39

CAPITULO III MATERIALES Y MTODOS............................................................................ 41


CAPITULO IV RESULTADOS .................................................................................................... 43
CAPITULO V CONCLUSIONES Y TRABAJO FUTURO......................................................... 53
5.1 Conclusiones para AG-PFP.................................................................................................................... 53
5.2 Conclusiones del uso de VNS para PFP ................................................................................................. 53
5.3 Conclusiones para la bsqueda tab. ................................................................................................... 54
5.4 Trabajo Futuro. .................................................................................................................................... 54

INDICE DE FIGURAS................................................................................................................... 56
BIBLIOGRAFA ............................................................................................................................ 57

CAPITULO I
INTRODUCCIN

1.1 Antecedentes.
El problema de plegamiento de protenas o PFP ha sido un problema
multidisciplinario que lleva siendo estudiado ms de cincuenta aos (Dill &
MacCallum, The Protein-Folding Problem, 50 Years On, 2012) Actualmente la
pregunta de mayor relevancia se define como: Es capaz un algoritmo
computacional encontrar y predecir como una protena se plegara? Hoy en da
gracias a los amplios bancos de prueba se puede tener un conjunto de casos de
prueba suficientes para llevar a cabo esta investigacin.

1.2 Problema de Investigacin.


En la actualidad no se encuentran aplicaciones eficientes para la solucin al PFP
como la aplicacin de ciertas meta heursticas adaptadas especficamente al
mismo como lo son la bsqueda por vecindarios variable, la bsqueda tab y
algoritmos genticos.

1.3 Pregunta de Investigacin.


Cmo elegir un mtodo eficiente para la solucin del problema de plegamiento
de protenas?.
1.3.1 Preguntas especficas

Qu tan tratable es el PFP usando meta heursticas de bsqueda?

Son los algoritmos genticos y la bsqueda tab adecuados para el PFP?

Es el VNS eficiente para el PFP?

1.4 Objetivo general.


Evaluar el rendimiento de meta heursticas de bsqueda aplicadas al problema de
plegamiento de protenas.

1.4.1 Objetivos especficos


Investigar el estado del arte para la solucin al PFP

Implementar y probar un algoritmo gentico y bsqueda tab para el PFP


en dos y tres dimensiones.

Implementar y probar bsqueda por vecindarios variable para PFP en dos


dimensiones.

Crear un conjunto de datos de prueba para la evaluacin del rendimiento de


las tcnicas de bsqueda.

1.5 Justificacin

El problema PFP ha sido demostrado ser un problema NP-Completo (Berger &


Leighton, 1998) que compete tanto a ramas de la biologa como de la
computacin, tambin llamada biocomputacin, pues la necesidad de conocer la
estructura de una protena es esencial para fines taxonmicos, clasificacin,
revisin de funciones entre otras cualidades. Lo que dicta que para este tipo de
problemas es necesario hacer uso de alguna meta heurstica para la optimizacin
combinatoria como lo es la bsqueda por vecindarios variable, la bsqueda tab o
un algoritmo evolutivo como lo es un algoritmo gentico.
1.6 Aportacin practica

Conocer el plegamiento de las protenas ayuda a fines taxonmicos entre s, a


conocer las funciones de las protenas, a su clasificacin y a encontrar una
aplicacin segn sus propiedades.
9

1.7 Objeto de estudio

El plegamiento de protenas.
1.8 Idea a defender

El beneficio de elaborar enfoques prcticos para la solucin del problema de


plegamiento de las protenas no nicamente trae al frente la capacidad de
solventar interrogantes haciendo uso de la computacin, si no que puede traer
potencialmente un beneficio a la humanidad con sus resultados.
1.9 Hiptesis

La aplicacin de meta heursticas de bsqueda al problema de plegamiento de


protenas mejorara la eficiencia en la prediccin del plegamiento.

10

CAPITULO II
MARCO TERICO
2.1 El problema de plegamiento de protenas.

El problema de plegamiento de protenas es la pregunta de cmo la secuencia de


aminocidos de una protena dicta la estructura atmica de la misma (Dill & Chan,
The protein folding problem, 1993) . La nocin del problema se remonta alrededor
de los aos sesentas. Desde entonces, el problema de plegamiento de protenas
ha venido siendo discernido en tres fases:
a) El cdigo de plegamiento: La cuestin de termodinmica de cual balance de
fuerzas interatmicas dicta la estructura de una protena dada su secuencia
de aminocidos.
b) Prediccin de la estructura de protenas: En biologa el proceso de
plegamiento es la conformacin natural de los aminocidos para formar el
estado natural de la protena que estas conforman, en un mapeo
computacional se presenta el problema de como predecir la estructura
nativa de la protena dada la secuencia de aminocidos (entrada) a su
estructura nativa haciendo uso de medios matemticos y computacionales.
c) El proceso de plegamiento: La cuestin cintica que dicta las rutas o
caminos para que sea tan rpida.

El rumbo de esta investigacin se enfoca en el punto b) que es tratar por medio de


computacin encontrar la estructura haciendo uso el modelo Hidofbico Polar
tambin conocido como modelo HP que se encarga de abstraer la representacin
de las protenas a un plano cartesiano en dos y tres dimensiones que permite su
fcil introduccin a un modelo computacional.

11

2.2 El modelo HP

Propuesto por Dill (Dill, Theory for the folding and stability of globular proteins,
1985)es un modelo sumamente simplificado para examinar el plegamiento de las
protenas en el espacio, este modelo se dicta a partir de las observaciones de las
interacciones hidrofbicas entre los aminocidos, mismas interacciones que forzan
a la protena a su estado nativo. Todos los aminocidos se pueden clasificar como
hidrofbicos o polares y la secuencia del plegamiento de la protena se define
como como una caminata autoevitante en un plano en dos o tres dimensiones. El
modelo HP imita el efecto hidrofbico asignando un peso negativo (favorable) a
interacciones entre residuos hidrofbicos no covalentes. Protenas que tienen una
energa, la ponderacin, mnima se consideran estar en su estado nativo.
El modelo HP se puede expresar en 2D o en 3D en un plano de vrtices
cuadradas y aunque este abstrado hasta este punto es aun as un problema NPdificil (Crescenzi, 1998) por lo que es necesario aplicar una meta heurstica de
bsqueda.

12

BSQUEDA POR VECINDARIOS VARIABLE VNS


El PFP ha sido demostrado ser un problema NP-Completo, lo que dicta que para
este tipo de problemas es necesario hacer uso de alguna meta heurstica para la
optimizacin combinatoria como lo es Variable Neighborhood Search (VNS) que
ha demostrado ser til en las siguientes reas (Hansen, Mladenovic, & MorenoPerez, 2009):
Problemas de localidad.
Minera de datos.
Problemas de grafos.
Problema de la mochila.
Problema de rutas de vehculos.
Calendarizacin.
Optimizacin continua.

Variable Neighborhood Search


Es una meta heurstica tanto para optimizacin combinatoria como para problemas
de optimizacin global. Explora vecindarios distantes dentro del espacio de
soluciones y se mueve de uno a otro si se ha hecho alguna mejora. Se utiliza
bsqueda local para obtener soluciones dentro de un vecindario y as obtener
ptimos locales.
VNS ha sido diseado para aproximar soluciones de problemas de optimizacin
tanto continuos como discretos y de acuerdo con estos, se utiliza para resolver
problemas de programacin lineal, programacin entera, programacin mixta, no
lineal entre otros (Hansen, Mladenovic 1997).

13

Nociones bsicas del VNS.

En un panorama general, VNS cambia de vecindario en dos fases, desciende a un


ptimo local y finalmente una perturbacin que le permita salir del valle
correspondiente.

Sistemticamente cambia de vecindario en la bsqueda

No sigue una trayectoria simple pero explora vecindarios distantes

Brinca de una solucin a otra si y solo si hay una mejora

De esta manera mantiene las buenas soluciones (pudiendo encontrarse la


ptima)

Usa bsqueda local para encontrar de cada vecindario su ptimo local.

El VNS est construido bajo las siguientes percepciones:


1. Un ptimo local de un vecindario no es necesariamente un ptimo local de
otro vecindario.
2. Un ptimo global es un ptimo global con respecto a todos los vecindarios.
3. Para muchos problemas, los ptimos locales entre muchos vecindarios son
muy cercanos unos de otros.
De acuerdo con sus autores (Hansen, Mladenovic 1997) el VNS implica muchas
caractersticas presentadas en orden:
1) Simplicidad: Un VNS simplemente claro y universalmente aplicable
2) Precisin: VNS esta formulado en definiciones matemticas precisas
3) Coherencia: Todas las acciones de las heursticas para resolver
problemas siguen los principios del VNS.
4) Efectividad: VNS provee de soluciones ptimas y casi ptimas para
la mayora de las instancias realistas.
5) Eficiencia: VNS toma un tiempo moderado de computacin para
generar las soluciones ptimas y casi ptimas.
14

6) Robustez: El funcionamiento del VNS es coherente a una variedad


de instancias o aplicaciones.
7) Amistoso: VNS no tiene parmetros, es fcil de comprender,
expresar y usar.
8) Innovativo: VNS est generando nuevos tipos de aplicacin.
9) Generalidad: VNS est induciendo buenos resultados para una
amplia variedad de problemas.
10) Interactividad: VNS permite al usuario incorporar su conocimiento
para mejorar el proceso de bsqueda.
11) Multiplicidad: VNS es capaz de producir ciertas soluciones casi
ptimas de las cuales el usuario puede elegir.

Bsqueda Local para el VNS

Por si misma, la bsqueda local es una meta heurstica para solucionar problemas
de optimizacin difciles. La bsqueda local es usada en problemas que puedan
ser formuladas para una solucin que maximiza (o minimiza) un criterio entre
cierto nmero de soluciones candidatas. Los algoritmos de bsqueda local se
mueven de una solucin a otra en el espacio de soluciones candidatas, tambin
llamado nicamente espacio de soluciones, aplicando movimientos o cambios
locales hasta que se encuentra un ptimo adecuado o ha pasado cierto lapso de
tiempo.

Algoritmo bsico VNS

El algoritmo ms bsico del VNS original es el siguiente:

Inicializacin: Seleccionar un conjunto de vecindarios ( = 1, , )


encontrar una solucion inicial establecer = 1 y elegir una condicin de
paro.
15

Paso 1: (Shaking o agitar): Generar () de manera aleatoria.

Paso 2: (bsqueda local): Aplicar el mtodo de bsqueda local empezando


con hasta encontrar el ptimo local .

Paso 3: (Mover o no): Si es la mejor solucin entonces establecer =


y = 1, de otra manera establecer = + 1 (o si = establecer =
1); regresar al paso 1.

Hay que tomar en cuenta que:


1. El VNS bsico es un mtodo de mejora descendente.
2. En el paso 1, es generado de manera aleatoria para evitar ciclos.
3. Los por lo general estn anidados.
4. En el paso 3, si an no se encuentra el ptimo local entonces continuar con
el mismo vecindario, de otra manera ya se puede cambiar al siguiente
vecindario +1

Variantes VNS

Existen extensiones o variantes del VNS en las que se presentan alteraciones que
cambian la manera de cmo se exploran las soluciones.
1. Variable Neighborhood Descent (VND). Es un mtodo que se obtiene si
apartir del VNS se hace un cambio determinista de vecindarios y no cuando
se cumpla la condicin de optimalidad que presenta el VNS.
2. VNS Reducido. Es un mtodo obtenido cuando se seleccionan varios
puntos de () y no se hace ningn descenso, en lugar de eso los puntos
nuevos se comparan con los actuales y se actualizan en los que haya una
mejora. Para la condicin de paro de esta variante se tiene una variable
que es el tiempo del CPU que toma entre iteraciones y entre dos
mejoras de soluciones.
3. Skewed VNS (VNS sesgado). Explora soluciones muy lejanas en el espacio
actual, una vez que una solucin en esa regin ha sido encontrada es
16

necesario obtener una mejora de dicha solucin pues se asume que


soluciones en los vecindarios lejanos pueden ser muy distintos de los
cercanos.
4. VNDS o Variable Neighborhood Decomposition Search. Extiende el VNS a
un VNS de dos niveles, descompone el problema para una fcil
presentacin sin perder la generalidad. Se asume que la solucin
representa un conjunto de elementos, es decir lo multi objetiviza.
Entra otras variantes especficas como lo son:

VNS paralelo

VNS Primal-Dual

Variable Neighborhood Branching

Variable Neighborhood Formulation Space Search

Aplicacin de VNS para el PFP

En esta seccin se explora la adaptacin del VNS especficamente para el


problema de plegamiento de protenas PFP. El algoritmo comienza con la
construccin inicial de la solucin que bsicamente en sus dos versiones de dosy
tres dimensiones construye de forma aleatoria las soluciones utilizando como
representacin listas que contienen los arreglos de las coordenadas y continua por
medio de bsqueda local, en este caso se hace uso del algoritmo hill climber..
Algoritmo general.

1. Crear una solucin inicial aleatoria R1


2. Aplicar mutacin a R1 llamarla S1
3. Aplicar operadores y una bsqueda hill climber para encontrar optimo local
de S1
4. Si ha mejorado, almacenar solucin y repetir desde paso 2, si no ir al paso
1
17

Las condiciones de bsqueda se basan en crear una solucin inicial, o raz, de


manera aleatoria y explotarla haciendo uso de los operadores y mutacin, una vez
que no haya mejora entonces crear una nueva solucin aleatoria y de nuevo
comienza el mismo mtodo.
La generacin de la solucin inicial es de forma aleatoria debido al modelo HP se
hace en 2D y 3D de la siguiente manera:

El primer punto ira en la coordenada (0,0) o (0,0,0) para 2D y 3D


respectivamente.

Generar de forma aleatoria un nmero entre 0 y 1, para 2D hay probabilidad


de 0.25 de ir en direccin arriba, abajo, izquierda o derecha y para 3D hay
una probabilidad de 0.16 debido al eje Z.

Cada paso representa un carcter de la cadena de entrada, por lo tanto


tendr un valor de hidrofbico o polar que deber almacenarse para la
evaluacin de la solucin.

Hay que tomar en cuenta que tanto en 2D como 3D la nica manera en la


que al se pueda elegir una de las 4 o 6 direcciones a tomar es al inicio
cuando el punto inicial est en el punto cero pues despus una de las
posiciones no podr se accedida pues es de donde la solucin origin el
paso anterior y no se puede ocupar.

Se debe tomar en cuenta que al generar una solucin aleatoria puede


ocurrir que la solucin se torne inconsistente pues se pudo generar el
efecto de caracol evitando que la solucin sea capaz de tomar la decisin
de donde colocar el siguiente elemento pues todo a su alrededor est
ocupado. En este caso la solucin inicia de nuevo su proceso de
construccin inicial.

La aplicacin de este algoritmo nos permite explorar el espacio de soluciones


haciendo saltos de vez en cuando pero no sin antes haber encontrado un ptimo
local. Los saltos entre el espacio de soluciones puede ser muy grande pues
generar una solucin aleatoria nos da una variante amplia como se muestra en la
figura N.
18

Figura 1 Exploracin del espacio de soluciones usando VNS (Imagen propia)

Operadores
Los operadores consisten en una serie de movimientos tirar o pull movements
(N.Lesh, M. Mitzenmacher, 2003) que generan pequeos cambios en una solucin
sin alterar su integridad.

Figura 2 Operadores del VNS aplicados (Imagen propia)

Solucin alterada usando operadores, el valor de ambas es el mismo


Tipos de operadores.

Los operadores se dividen en las siguientes categoras.

Orilla

Esquina

Mltiple

El operador esquina se describe como el movimiento de un elemento que no sea


ni el primer ni el ltimo elemento que est en un ngulo de 90, es decir conectado
a la izquierda o derecha con un elemento y arriba o debajo de otro y es tirado
19

hacia su lado libre. La solucin de evala previamente para conocer si es apta


para aplicar este operador.

Figura 3 Operador Esquina aplicado al tercer elemento (Imagen propia)

El operador orilla se aplica nicamente en el ltimo y el primer elemento de la


solucin. Si el elemento est a la derecha o a la izquierda del siguiente entonces
puede levantarse o bajarse 90, si est arriba o debajo de otra del siguiente
elemento

entonces

puede

bajar

90

para

la

derecha

la

izquierda

respectivamente.

Figura 4 Operador orilla(Imagen propia)

Los operadores mltiples son la combinacin de dos movimientos esquina que se


aplican siempre y cuando las condiciones sean las adecuadas, pues se deben
tener los lugares disponibles hacia donde ambos elementos se deben mover.
Mutacin

La mutacin parcial de una solucin es la reconstruccin de manera aleatoria de


una parte de la misma. Se aplica cuando parte de dicha solucin se considera
20

como no tan buena considerando que hay una serie de elementos sin contactos
topolgicos no covalentes.
Para generar una mutacin en una solucin es necesario evaluarla como en la
figura N en donde haya elementos hidrofbicos con contacto topolgico con otros
se les asigna a estos elementos un valor de 1 y 0.5 para los elementos contiguos
a este sin importar si son hidrofbicos o polares.

Los indicadores muestran que es deseable hacer una mutacin en las reas en
donde hay elementos hidrofbicos sin contactos topolgicos no covalentes. La
mutacin solo se hace en una de estas reas a la vez, cuando haya dos o ms
reas se cuenta el total de elementos y se obtiene para cada parte una
probabilidad equivalente. Es decir, en el ejemplo de la imagen hay nueve
elementos en la parte ms grande y tres en la parte pequea, por lo tanto hay un
75% de probabilidad de que la mutacin se haga en la parte grande y un 25% de
que lo haga en la pequea. Ver figura 5.

Figura 5 Partes y porcentajes para la mutacin (Imagen


propia)

21

Iterated hill climber


Hill climber o hill climbing o ascenso en colina es un mtodo de bsqueda local
iterativo que comienza en una solucin arbitraria del problema y luego intenta
encontrar una solucin mejor al problema variando incrementalmente un nico
elemento de la solucin, de ah su nombre. Si el cambio produce una mejor
solucin, otro cambio incremental se le realiza a la nueva solucin repitiendo este
proceso hasta no encontrar mejoras.
El hill climber es eficaz para encontrar ptimos locales del espacio de bsqueda.
La caracterstica de que el ptimo local puede ser garantizado puede ser
remediada usando reinicio al igual que se hace en la bsqueda local repetida, o si
no esquemas ms complejos basado es iteraciones. Aqu se adapt el algoritmo
de bsqueda hill climber haciendo uso de los operadores para intentar encontrar
mejores soluciones, cuando una operador mejoraba la solucin entonces el
cambio de quedaba, cuando un operador empeoraba la solucin entonces se
reverta y cuando uno dejaba la solucin en la misma condicin, es decir que su
funcin de evaluacin segua intacta entonces haba una probabilidad de no
cambiar la solucin.
Evaluacin de los resultados.

La evaluacin de las soluciones se realiza tanto en un enfoque mono objetivo


como uno multi objetivo. En su configuracin mono objetivo nicamente se evala
el total de contactos topolgicos como lo dicta el modelo HP, para crear un
entorno multi objetivo de evaluacin se hace uso de las siguientes funciones (M.
Garza-Fabre, E. Rodriguez-Tello, 2012).

22

Multiobjetivo

Podemos observar que el modelo HP y PFP se tiene un nico objetivo y ese es la


maximizacin de contactos topolgicos no covalentes para minimizar la energa
producida por una estructura de aminocidos, actualmente se ha demostrado que
en lugar de tener un objetivo es ms eficiente y brinda mejores resultado buscar
mltiples objetivos En su documento Multiobjectivizing the HP Model for the
Protein Structure Prediction de Garza-Fabre et al. (Garza, Rodriguez, & Toscano,
2012) Muestran que el proceso de multiobjetivizar, es decir el proceso de
reformular un problema de optimizacin de un solo objetivo en uno de objetivos
mltiples usando dos enfoques distintos, el primero puede ser aadiendo
informacin suplementaria (tambin llamada artificial) como objetivos secundarios
y la otra la descomposicin que es fragmentar el objetivo original en componentes
distintos y cada uno de estos ser tratado con su propia formulacin. Se hace uso
de los siguientes tres mtodos:

Descomposicin por paridad

Descomposicin por localidad

Descomposicin por subconjuntos

El mtodo de descomposicin de Subconjuntos llamados subconjuntos H de


multiobjetivizacin de este problema fue propuesto en el documento descrito
(Garza, Rodriguez, & Toscano, 2012) formula que se necesita separar el objetivo
nico en dos o ms y lo logra creando varios subconjuntos llamados Hk
{1,2,3,,k} que por cada subconjunto se tiene un objetivo distinto.
Para dos subconjuntos se separan todos los aminocidos H de forma aleatoria o
arbitraria formando as H1 y H2 tal que las funciones objetivo quedan de la
siguiente forma:

23

En donde la primera funcin se activa con la adicin de la sumatoria de los


aminocidos que hacen contacto topolgico que pertenecen al subconjunto H1
con los de la sumatoria de los que pertenecen al subconjunto H2 y la segunda
funcin es la sumatoria de los contactos topolgicos que hay entre un residuo que
pertenece al subconjunto H1 y el segundo pertenece al subconjunto H2.
Los otros dos mtodos son parecidos, tanto el de localidad como el de paridad
descompone en subconjuntos de elementos de la misma manera pero con distinto
criterio, para paridad se toma en cuenta si los elementos que se estn evaluando
son elementos pares o elementos impares segn su lugar en la cadena de
entrada, iniciando con 1 el primer elemento y se denota por la siguiente funcin
multi objetivo.

Para la descomposicin basada en localidad se evala si los contactos topolgicos


se encuentran dentro de un permetro delimitado por una constante y se divide
segn lo siguiente:

24

Lo que dicta que para dos contactos en donde la diferencia de sus posiciones es
menor o igual a ocasiona que se active una funcin multiobjetivo, de lo contrario
la otra lo har.
Es importante destacar que las funciones multiobjetivo son una descomposicin
de una funcin de objetivo nico, as que la sumatoria de las funciones
multiobjetivo de uno solo de los enfoques (subconjuntos, paridad, localidad) da
como resultado la funcin original de evaluacin propuesta en el modelo HP. La
principal funcin es crear frentes de Pareto, es decir, encontrar un conjunto de
soluciones que entre ellas no sean unas mejores que otras pero que sean
soluciones con una conformacin distinta y un valor diferente por cada sub funcin
de evaluacin tambin llamadas conjunto de soluciones no dominadas, es decir
que para una solucin domine a una solucin entonces para cada valor que
conforma la solucin debe ser menor o igual a los de la solucin pero al menos
un valor de debe ser menor al de y esto puede verse en la siguiente notacin.

25

ALGORITMO GENTICO

Introduccin.

Adems otro mtodo revisado en el campo de la inteligencia artificial fue el


algoritmo gentico, de la misma forma que el VNS es una meta heurstica de
bsqueda que imita el proceso de la seleccin natural utilizada para la solucin de
problemas de optimizacin combinatoria y problemas de bsqueda. Estos
algoritmos genticos pertenecen a una clase ms grande de algoritmos evolutivos,
los cuales generar soluciones de optimizacin usando tcnicas inspiradas por la
evolucin natural tal como la herencia, mutacin, seleccin y recombinacin o
cruzamiento.
Mtodo.

En un algoritmo gentico o AG, se utiliza una poblacin de soluciones candidatas


llamadas individuos tales que se ven obligadas a evolucionar a mejores
soluciones. Cada individuo tiene un conjunto de propiedades tambin llamadas
cromosomas, que pueden ser alteradas o mutadas.
El proceso usualmente inicia con una poblacin de individuos generados de forma
aleatoria, adems ya que es un proceso iterativo, la poblacin de cada iteracin es
llamada generacin. En cada generacin el fitness o aptitud de cada individuo es
evaluada; usualmente la aptitud es el valor de la funcin objetivo en el problema
de optimizacin que se est resolviendo. Los mejores individuos son
seleccionados de forma estocstica de la poblacin actual y cada individuo es
modificado (recombinado y posiblemente mutado) para formar una nueva
generacin manteniendo as el total de pobladores en un nmero fijo.
Comnmente el algoritmo gentico termina cuando un nmero mximo de
generaciones se ha producido o cuando una aptitud satisfactoria ha sido
encontrada en la poblacin.
26

Un algoritmo gentico requiere:


1. Una representacin gentica del dominio de la solucin.
2. Una funcin de aptitud para evaluar el dominio de la solucin.

Inicializacin del algoritmo gentico.

Inicialmente muchas soluciones son usualmente generadas de manera aleatoria


para la poblacin inicial. El tamao de la poblacin depende de la naturaleza del
problema y va desde cientos a miles individuos. Tradicionalmente se utiliza una
poblacin generada de manera aleatoria para permitir un mayor rango en el
espacio de bsqueda del problema y ocasionalmente se plantan ciertas soluciones
en reas en donde hay una forma potencial de encontrar rpidamente una
solucin ptima.
Seleccin.
La seleccin es una etapa del AG en la cual los individuos se eligen de la
poblacin para su prxima recombinacin.
Un procedimiento tipo ruleta se implementa de la siguiente manera:
1. La funcin de aptitud se evala por cada individuo, despus se normaliza
cada valor, es decir dividir el valor de aptitud entre la suma de las aptitudes
de todos los individuos para que la suma de todas las aptitudes sea igual a
uno.
2. La poblacin se organiza de forma descendiente segn su aptitud.
3. Se calculan los valores de aptitud acumulados, que son la suma de su
propia aptitud ms la de todos los individuos atrs de l (la del ultimo
individuo ser 1).
4. Se genera un numero aleatorio entre 0 y 1 llamado A
5. El individuo seleccionado ser el primero el cual el valor acumulado
normalizado sea mayor que A.
27

Otros mtodos de seleccin son el mtodo por torneo, en el cual de manera


repetida se eligen sub conjuntos de individuos y solo los de mejor aptitud son
seleccionados. Y otros estocsticos en donde solo segn la aptitud dicta la
probabilidad de ser elegidos para la seleccin.
Retener el mejor individuo de cada generacin sin alterar y pasarlo a la siguiente
generacin es llamado elitismo o seleccin elitista.

Operadores genticos.

El cruzamiento o recombinacin es un operador gentico usado para variar un


cromosoma de una generacin a la siguiente. Es anloga a la reproduccin en la
cual los algoritmos genticos se basan. El proceso de cruzamiento es un proceso
que toma ms de una solucin padre y produce una solucin hijo a partir de estos.
Tcnicas de cruzamiento.

Cruzamiento de un solo punto: Un punto nico se elige entre las dos cadenas que
representan los padres, todos los datos de un punto antes de un padre y del otro
despus se unen para formar al nico hijo.
Cruzamiento multipunto: Dos puntos son elegidos entre las cadenas del padre y
del hijo, se intercambian las sub cadenas generadas de la forma que se forman
dos hijos por cada dos padres.
Mutacin PFP.

Para evitar la convergencia prematura, es decir que todos los individuos de una
generacin presenten las mismas caractersticas se introduce la mutacin
estocstica, esta es que con cierta probabilidad una solucin puede ser
reconstruida o mutada para introducir estos nuevos miembros a la generacin.

28

Aplicacin de algoritmo gentico en PFP.

En este problema resulta fcil la representacin de una solucin como un individuo


de una poblacin y cumple las caractersticas necesarias pues los aminocidos
hidrofbicos o polares para ser la representacin de los cromosomas.
Inicializacin del AG para PFP

Dado que las soluciones para el PFP utilizando el modelo HP ya sea en dos o tres
dimensiones por su naturaleza son elementos que no necesitan ser representados
de otra manera pues presentan tanto como cromosomas y una aptitud que es el
total de contactos topolgicos no covalentes por lo tanto la poblacin se genera de
forma aleatoria utilizando la tcnica mencionada en la seccin de VNS para PFP.
No se utilizan tcnicas para mejorar la media de la aptitud de la poblacin, como
sera elegir la mejor de cada cien u otras tcnicas mostradas en las secciones
anteriores. El nmero de pobladores ser de cien por generacin mantenindose
fijo.
Seleccin AG-PFP

Se utiliza la tcnica de seleccin tipo ruleta; se eligen al azar dos soluciones de la


poblacin total y se evala su aptitud, se suman las dos aptitudes y se calcular
que porcentaje cada solucin aport y de ah se formula para la eleccin que
tenga una probabilidad mayor de ser elegida la solucin con mayor aptitud. Si se
tiene la misma aptitud (incluida aptitud cero) entre las dos soluciones se eligen
cualquiera de las dos de forma aleatoria. La seleccin continuar hasta tener de
nuevo cien individuos en la poblacin.
Cruzamiento AG-PFP

Aprovechando las propiedades de las soluciones de hace uso de cruzamiento de


un solo punto:
29

1. Se seleccionan dos soluciones Padre 1 y Padre 2 de manera aleatoria


2. Se elige un punto P de corte entre 2 y el tamao de la solucin (nmero de
elementos) inclusive
3. Para Padre 1 se toman los puntos del 0 hasta P, para Padre 2 se toman de
P + 1 hasta el ltimo elemento.
4. Se unen las dos soluciones extremo con extremo para conservar la
integridad de la solucin
5. Se repite hasta tener de nuevo 100 pobladores

Detalle para la unin de dos soluciones

En dos dimensiones:
Sea Mitad Padre 1 la solucin parcial generada a partir de cortar en el punto P la
solucin Padre 1 y Mitad Padre 2 la solucin parcial de Padre 2 con el mismo
procedimiento. Mitad Padre 1 quedara fijo con los puntos en el espacio que tiene
originalmente mientras de Mitad Padre 2 ser la estructura que este cambiando
para encontrar la forma de unirla.
Para unirla hasta cuatro opciones (una siempre infactible) antes de aplicar una
alteracin siendo estas opciones los lugares que estn disponibles en el ltimo
elemento de Mitad Padre 1 como se muestra en la figura 6.

Figura 6 Opciones de unin de dos soluciones padre (Imagen propia)

Y el procedimiento es el siguiente:
30

1. Intentar unir el primer elemento de Mitad Padre 2 arriba, es decir en la


coordenada original + Y del ltimo elemento de Mitad Padre 1
reorganizando las coordenadas de los elementos de Mitad Padre 2 para
que tengan continuidad.
2. Intentar el mismo procedimiento para los dems lados que son Y, +X y X
3. Si de ninguna de estas maneras se pudo crear una solucin consistente, es
decir que no traslapen ninguno de los elementos de una mitad con otra
entonces se har una de las siguientes modificaciones a la Mitad Padre 2:
a. Rotar la solucin 90 en sentido horario
b. Si la solucin ya ha rotado 3 veces entonces girar la solucin en
espejo y comenzar a rotar de nuevo
4. Si la solucin despus de haber sido girada en espejo y rotado de nuevo
tres veces no encuentra un hijo consistente entonces se realiza el corte P
en otro punto aleatorio y empieza el mtodo de nuevo.

El proceso de cruzamiento se ilustra de la siguiente forma.


Se toma Padre 1 y Padre 2 de forma aleatoria

Figura 7 Soluciones padre (Imagen propia)

31

Se genera un punto P y se hacen los cortes para generar Mitad Padre 1 y Mitad
Padre 2, P = 11

Figura 8 Soluciones parciales padre (Imagen propia)

En este punto es necesario unir las dos soluciones, Mitad Padre 2 intentara unirse
en el ltimo punto de Mitad Padre 2 en +X, -X, +Y y Y, si no lo logra rotara o
girara en espejo y rotara y lo intentara de nuevo. Si no entonces un nuevo corte P.
En este caso Mitad Padre 2 tuvo que girar solo dos veces para encontrar una
solucin factible.

Figura 9 Ejemplo de movimiento giratorio para las soluciones parciales(Imagen propia)

Luego de girar la solucin compatible generada es la siguiente:

32

Figura 10 Solucin hijo generada (Imagen propia)

En tres dimensiones.
Las similitudes entre el cruzamiento de soluciones en dos y tres dimensiones son
muchas. Los nicos cambios para tres dimensiones son los siguientes:

Ahora las mitades de las soluciones se pueden unir en dos puntos ms que
son +Z y Z

En dos dimensiones Mitad Padre 2 giraba en sentido horario y tambin


poda hacer un giro espejo haciendo que se pudieran explorar todas las
combinaciones en solo siete movimientos, es decir solo ocho estados. En
el caso de tres dimensiones hay 24 estados en los que puede estar la
Mitad Padre 2 ya que son movimientos rectos de 90 y vindolo como un
cubo con caras son seis caras por 4 posibles movimientos dando el total de
24 combinaciones estableciendo as los movimientos siguientes:
o Girar hacia abajo la solucin, es decir bajarla en su propio eje 90
mirndola desde el frente
o Girar hacia la izquierda la solucin (en su propio eje)
o Rotar la solucin 90 en sentido horario como se hace en 2D, no se
toma en cuenta eje Z
o Rotar la solucin 90 en sentido anti horario como se hace en 2D, no
se toma en cuenta eje Z

33

Mutacin AG-PFP

Por cada individuo por cada generacin se tiene una probabilidad de mutacin de
0.3% para evitar la convergencia prematura. Al finalizar cada generacin se realiza
este procedimiento y consiste en reconstruir una solucin que haya sido
seleccionada con esa probabilidad. La reconstruccin de la solucin ayuda a crear
diversidad en la poblacin de tal manera que nuevos genes son introducidos.

34

BUSQUEDA TABU PARA EL PFP

Introduccin.

El termino bsqueda tab o tab search fue introducido en 1989 por Fred Glover
en el mismo artculo en el cual acuo el termino metaheurstica. Los principios
fundamentales de la bsqueda fueron elaborados en una serie de artculos de
finales de los aos ochenta y principios de los noventa, que fueron luego
unificados en el libro Tab Search de 1997. El destacado existo de la bsqueda
tab para resolver problemas de optimizacin duros, especialmente aquellos que
surgen en aplicaciones del mundo real, ha causado una explosin de nuevas
aplicaciones durante los ltimos aos.
La bsqueda tab es en si una meta heurstica que gua un procedimiento
heurstico de bsqueda local en la bsqueda de optimalidad local. Su filosofa se
basa en derivar y explotar una coleccin de estrategias inteligentes de resolucin
de problemas basadas en procedimientos implcitos y explcitos de aprendizaje
como se revisara ms delante.

Desarrollo Histrico.

La bsqueda Tab surge, en un intento de dotar de cierta inteligencia a los


algoritmos de bsqueda local. Segn Fred Glover, su primer definidor, la
bsqueda tab gua un procedimiento de bsqueda local para explorar el espacio
de soluciones ms all del ptimo local.
La bsqueda tab toma de la Inteligencia Artificial el concepto de memoria y lo
implementa mediante estructuras simples con el objetivo de dirigir la bsqueda
teniendo en cuenta la historia de sta, es decir, el procedimiento trata de extraer
35

informacin de lo sucedido y actuar en consecuencia. En este sentido puede


decirse que hay un cierto aprendizaje y que la bsqueda es inteligente. La
bsqueda tab permite moverse a una solucin aunque no sea tan buena como la
actual, de modo que se pueda escapar de ptimos locales y continuar
estratgicamente la bsqueda de soluciones an mejores.
Los orgenes de la Bsqueda Tab datan de finales de los 70. Oficialmente el
nombre y la metodologa fueron introducidos por Fred Glover en dos artculos
(1989). En palabras del autor la bsqueda tab tiene sus orgenes en
procedimientos combinatorios aplicados a problemas de cubrimiento no lineales
en los finales de los aos 70 y aplicada subsecuentemente a una diversa
coleccin de problemas que van desde secuenciacin y balance de canales de
computacin hasta anlisis de clusters y planeamiento de espacio.

La estructura de la Bsqueda Tab


Las estructuras de memoria de la bsqueda tab funcionan mediante referencia a
cuatro dimensiones principales, consistentes en la propiedad de ser reciente, en
frecuencia, en calidad, y en influencia. Las memorias basadas en lo reciente y en
frecuencia se complementan la una a la otra para lograr el balance entre
intensificacin y diversificacin que todo proceso de bsqueda heurstica debe
poseer.

De esta forma, la memoria puede ser utilizada para la identificacin de elementos


comunes a soluciones buenas o a ciertos caminos que conducen a ellas. La
calidad constituye un fundamento para el aprendizaje basado en incentivos, donde
se refuerzan las acciones que conducen a buenas soluciones y se penalizan
aquellas que, por contra, conducen a soluciones pobres. La flexibilidad de las
estructuras de memoria mencionadas hasta el momento permite guiar la bsqueda
en un entorno multi-objetivo, dado que se determina la bondad de una direccin de
bsqueda particular mediante ms de una funcin. Por ltimo, la cuarta dimensin
36

de memoria, referida a la influencia, considera el impacto de las decisiones


tomadas durante la bsqueda, no solo en lo referente a la calidad de las
soluciones, sino tambin en lo referente a la estructura de las mismas. Este ultimo
uso de memoria es una caracterstica importante de la bsqueda tab que con
frecuencia se olvida, pero que debera ser considerada incluso en los diseos ms
simples como veremos a lo largo de este captulo.

El uso de memoria en la bsqueda tab es tanto explcita como implcita. En el


primer caso, se almacenan en memoria soluciones completas, generalmente
soluciones lite visitadas durante la bsqueda, mientras que en el segundo caso,
se almacena informacin sobre determinados atributos de las soluciones que
cambian al pasar de una solucin a otra. Aunque, en algunos casos, la memoria
explicita es usada para evitar visitar soluciones ms de una vez, esta aplicacin es
limitada dado que es necesario la implementacin de estructuras de memoria muy
eficientes para evitar requerimientos de memoria excesivos. De cualquier manera,
estos dos tipos de memoria son complementarios, puesto que la memoria explicita
permite expandir los entornos de bsqueda usados durante un proceso de
bsqueda local mediante la inclusin de soluciones lite, mientras que la memoria
basada en atributos los reduce prohibiendo determinados movimientos.

Tipos de memoria

Las estructuras de memoria utilizadas en bsqueda tab pueden dividirse en tres


categoras:
A corto plazo: La lista de soluciones considerado recientemente. Si aparece una
posible solucin en la lista tab, no puede ser revisada hasta que alcanza un
punto de caducidad.
Plazo intermedio: Intensificacin normas destinadas a sesgar la bsqueda hacia
zonas prometedoras del espacio de bsqueda.
37

A largo plazo: Normas de diversificacin que impulsan la bsqueda en nuevas


regiones (es decir, con respecto restablece cuando la bsqueda se queda
atrapado en una meseta (o plateu) o un callejn sin salida sub ptima).

Ya sea a corto plazo, a mediano plazo y a largo plazo pueden sustituirse en la


prctica. Dentro de estas categoras, la memoria adicional puede ser diferenciada
a travs de medidas tales como la frecuencia y el impacto de los cambios
realizados. Un ejemplo de una estructura de memoria plazo intermedio es uno que
prohba o aliente a soluciones que contienen ciertos atributos (por ejemplo,
soluciones que incluyen valores indeseables o deseables para ciertas variables) o
una estructura de memoria que impide o induce ciertos movimientos (por ejemplo,
basndose en la memoria de frecuencia aplicado a soluciones que comparten
caractersticas en comn con soluciones poco atractivos o atractivas que se
encuentran en el pasado). En memoria a corto plazo, los atributos seleccionados
en soluciones recientemente visitadas estn etiquetados como "tab-activo." Las
soluciones que contienen elementos tab activo estn prohibidos. Se emplean
criterios de aspiracin que anulan el estado tab de una solucin, incluyendo por
lo tanto la solucin excluidos de otra manera en el conjunto permitido (siempre que
la solucin sea lo suficientemente buena de acuerdo a las restricciones, segn una
medida de la calidad o la diversidad). Un criterio aspiracin simple y de uso comn
es permitir que las soluciones que son mejores que la mejor solucin conocida
actualmente.

La memoria a corto plazo por s solo puede ser suficiente para lograr la solucin
superior a los encontrados por los mtodos convencionales de bsqueda locales,
pero a medio y largo plazo las estructuras son a menudo necesarios para resolver
los problemas ms difciles. La bsqueda tab es a menudo como punto de
referencia frente a otros mtodos de meta heursticas. Tal como recocido
simulado, algoritmos genticos, algoritmos de optimizacin de colonias de
hormigas, optimizacin de bsqueda reactiva, Gua de Bsqueda local. Adems,
38

la bsqueda tab es a veces combinada con otras metaheursticas para crear


mtodos hbridos. El hbrido de bsqueda tab ms comn surge al unir TS con
Scatter Search, una clase de procedimientos basados en la poblacin que tiene
sus races en comn con bsqueda tab, ya menudo se emplea en la solucin de
los grandes problemas de optimizacin no lineal.

Intensificacin y Diversificacin
Las estrategias de intensificacin y diversificacin constituyen dos elementos
altamente importantes en un proceso de bsqueda tab. Las estrategias de
intensificacin se basan en la modificacin de reglas de seleccin para favorecer
la eleccin de buenas combinaciones de movimientos y caractersticas de
soluciones encontradas. Esto implica que es necesario identificar un conjunto de
soluciones elite cuyos buenos atributos puedan ser incorporados a nuevas
soluciones creadas. La perteneca al conjunto de soluciones elite se determina
generalmente atendiendo a los valores de la funcin objetivo comparados con la
mejor solucin obtenida hasta el momento.

Por otro lado, las estrategias de diversificacin tratan de conducir la bsqueda a


zonas del espacio de soluciones no visitadas anteriormente y generar nuevas
soluciones que difieran significativamente de las ya evaluadas.

Aplicacin en el PFP
La aplicacin de la bsqueda tab en el PFP en un formato grfico se realiza de la
siguiente manera:

1. Iniciar con una solucin aleatoria, puede ser una solucin que siga una
lnea recta pudiendo ser horizontal o vertical.
2. Se realiza el primer doblez que consiste en iterar por cada punto y elegir de
manera aleatoria si se realiza un doblez en las direcciones en las que sea
posible hacerlo.
39

3. Si un doblez no es posible entonces esa solucin pasa a ser una solucin


tab (y un movimiento) por lo tanto se introduce en la memoria que en este
caso tendr un buffer de 6 movimientos lo que permite que una solucin
tab pueda ser revisada de nuevo al sptimo movimiento de tal forma que
permitir saber si con los dems movimientos ese mismo ya no es ms
tab.
4. Si todos los movimientos son tab entonces hay dos opciones, la primera
opcin es brincar hasta el ltimo punto e iterar de nuevo, la otra opcin es
brincar solo el punto que mostro todas las soluciones tab y continuar. En
ninguno de los casos la memoria ni el buffer se reiniciaran.

Por lo tanto una transicin de bsqueda se vera de la siguiente manera:

Figura 11 Representacin de los movimientos que genera la bsqueda tab en una solucin (Imagen propia)

40

CAPITULO III
MATERIALES Y MTODOS
En esta seccin se describen los materiales que se utilizaron para llevar a cabo y
dar solucin a los objetivos por medio de actividades que desembocan en una
meta.
3.1 Objetivo especfico 1: Investigar el estado del arte para la solucin al PFP

Objetivo
Investigar el estado del
arte para la solucin al
PFP

Actividades
Herramientas

Bsqueda en revistas de
divulgacin cientfica
artculos relacionados con Revistas de divulgacin
el PFP
cientfica.
Analizar mtodos para su Bases de datos.
solucin encontrados en
Acceso a bases de datos
dichos artculos.
desde exclusivas desde
Definir y acotar el alcance redes escolares.
de la investigacin.

Meta
Obtener un texto
sintentizado de resultados
actuales para el
tratamiento del PFP con
tablas de salidas.

Proceso y resultados para el objetivo especfico 1.


En esta seccin se obtuvo la habilidad y la comprensin de como modelar el
problema, independientemente de su tratamiento, a un entorno computacional. La
representacin del problema se basa en coordenadas pues la naturaleza del
modelo HP lo abstrae de dicha forma. Tambin con los resultados de este objetivo
se obtuvo un punto de control para conocer por lo menos que tan cercanos
debern (o igualar/mejorar) ser los resultados que se obtengan de esta
investigacin.
41

3.2 Objetivo especfico 2: Adaptar un algoritmo gentico y bsqueda tab para el


PFP en dos y tres dimensiones y Bsqueda por vecindarios variable en dos
dimensiones exclusivo.

Objetivo
Adaptar un algoritmo
gentico y bsqueda tab
para el PFP en dos y tres
dimensiones y Bsqueda
por vecindarios variable en
dos dimensiones exclusivo.

Actividades
Investigar la definicin de
cada meta heurstica.
Definir una representacin
del PFP adecuada a cada
meta heurstica.
Crear los operadores
necesarios para la directa
aplicacin de cada
metaheurstica.

Herramientas
Meta

Artculos de cada una de las


meta heuristicas aplicados a
problemas difciles o
Obtener la aplicacion
aplicados al PFP si hay
funcional de los tres
disponibles.
algoritmos.
Banco de pruebas (Visual C#
- Visual Studio 2013)

Proceso y resultados para el objetivo especfico 2.


En esta seccin se obtuvo el conocimiento para poder implementar el algoritmo
gentico, la bsqueda tab y la bsqueda por vecindarios variables en cdigo,
especficamente Visual C#. (Ms detalles en el captulo IV) y poder comenzar a
probar cmo funcionan los algoritmos para crear modificaciones especficas para
tratar al problema, es decir aadir nuevas reglas para la bsqueda.

42

3.3 Objetivo especfico 3. Crear un conjunto de datos de prueba para la evaluacin


del rendimiento de las tcnicas de bsqueda.

Objetivo
Crear un conjunto de
datos de prueba para
la evaluacin del
rendimiento de las
tcnicas de bsqueda.

Actividades
Herramientas

Probar las tres tcnicas


con el mismo conjunto
de pruebas separando Conjunto de datos de
pruebas previamente
2D y 3D.
Crear un conjunto de usados en los que ya
se conoce la solucin
resultados
ptima.
ponderndolos para
Tablas de resultados
conocer la eficiencia
para comparacin.
de cada tcnica.

Meta
Obtener las tablas de
resultados propia para
comprobar que tan
eficientes fueron las
pruebas y los
algoritmos.

Proceso y resultados para el objetivo especfico 2.


El resultado de este objetivo especfico es la integracin de los resultados de los
primeros dos pues aqu es la conclusin y con las tablas de resultados formadas
se pudo realizar que tan eficientes y adaptables fueron las meta heursticas
utilizadas y que tanta especializacin se gener para poder llevar a cabo la
conclusin del problema.

43

CAPITULO IV
RESULTADOS
La literatura actual ofrece un conjunto de datos de prueba que se han recopilado
entre varios autores y de forma informal han venido siendo los casos clsicos
tanto para dos y tres dimensiones. Aqu se presenta la lista con identificador del
conjunto de pruebas, as como los ptimos que se han encontrado en la
actualidad.
a. El estado del arte del tratamiento al problema PFP

La siguiente tabla muestra el identificador de la cadena, la longitud de entrada y el


ptimo encontrado hasta el momento.
Para 2D
Secuencia

E*

2d1

18

-4

2d2

18

-8

2d3

18

-9

2d4

20

-9

2d5

20

-10

2d6

24

-9

2d7

25

-8

2d8

36

-14

2d9

48

-23

2d10

50

-21

2d11

60

-36

2d12

64

-42

2d13

85

-53

2d14

100

-48

2d15

100

-50

Figura 12 Tabla soluciones ptimas actuales para 2D

44

Para 3D
Secuencia

E*

3d1

20

-11

3d2

24

-13

3d3

25

-9

3d4

36

-18

3d5

46

-32

3d6

48

-31

3d7

50

-32

3d8

58

-44

3d9

60

-52

3d10

64

-55

3d11

67

-56

3d12

88

-72

3d13

103

-56

3d14

124

-71

3d15

136

-80

Figura 13 Tabla soluciones ptimas actuales 3D

b. Aplicacin de las metaheursticas


La aplicacin se describe como una caja negra de la siguiente manera:

Salida:
Entrada:
Cadena de
entrada en texto
plano

Conversion a
coordenadas
mapa cartesiano
para
tratamiento por
la aplicacion

45

Mximo numero de
contactos topologicos
no covalentes (carga
negativa) y los puntos
del plano cartesiano
para formar la
estructura

Se resalta que la complejidad del problema crece de forma exponencial, en


entradas como la 2d1 o 3d1 hasta la 2d10 y 3d10 respectivamente el tiempo
requerido para llegar a un ptimo local comparable al que reporta la literatura era
poco menor a 30 minutos de ejecucin, para los siguientes crece de tal manera
que los de L > 100 consume aproximadamente en promedio 18 horas de
ejecucin.
La aplicacin en C# con usando el entorno Visual Studio 2013 y la muestra de una
salida (explicado su funcionamiento en esta misma seccin):

Figura 14 Salida de la aplicacin mostrando la estructura y el camino a seguir.

La aplicacin toma la representacin de una cadena como texto, es decir la


cadena de entrada PPPHHHPHPPPPHPP se formaba por una lista de tamao
variable de arreglos de enteros, para la generacin de una solucin aleatoria que
fue uno de los mtodos que comparten todas las implementaciones de las meta
heursticas se generan con el siguiente mtodo:

46

Mtodo el cual recibe una lista con coordenadas, que puede ser un camino vaco
(una lista nueva) o uno que ya contenga ciertas coordenadas y de ah contine
generndolo de manera aleatoria. Esto es especialmente til para cuando se
desee generar una mutacin parcial de una solucin. Devuelve un camino
aleatorio o parcialmente aleatorio.
El catlogo de mtodos para el algoritmo gentico en tres dimensiones es el
siguiente y contiene los procedimientos esenciales que el mismo algoritmo implica
siendo los crticos la generacin de poblacin inicial, la seleccin y el cruzamiento
:

47

Para la bsqueda tab se obtienen unos mtodos con nombre igual pues la
bsqueda tab excepto que no hace uso de los mtodos de generar poblacin,
seleccin ni cruzamiento puesto que no existe la necesidad, pero si que hace uso
del mtodo cruzar que toma dos soluciones y con caractersticas de las dos
(descrito en la seccin del algoritmo gentico) forma soluciones y de esta manera
obtennos soluciones tab que son las que empeoran la solucin y bsquedas
aceptadas para poder llenar la memoria.

Y para la bsqueda por vecindarios variable se obtiene el siguiente catalogo que


incluyen los necesarios para la generacin aleatoria de caminos, aplicar
operadores, bsqueda lugares en donde se puede aplicar operadores, mutacin y
funciones de evaluacin de localidad, paridad y subconjuntos.

48

Por ultimo para la generacin de grafico se hace uso de la interfaz de


programacin contenida en la plataforma .NET.

49

c. Conjunto de datos de salida.

Esta seccin muestra los resultados que se obtuvieron con la aplicacin de estas
tres meta heursticas de forma tabular. Para 2D:
Secuencia

E*

AG

VNS

Tabu2D

Pre-NSGA-II

2d1

18

-4

-4

-2

-4

-4

2d2

18

-8

-8

-6

-8

-8

2d3

18

-9

-9

-6

-9

-9

2d4

20

-9

-9

-6

-9

-9

2d5

20

-10

-10

-4

-10

-10

2d6

24

-9

-9

-5

-9

-9

2d7

25

-8

-8

-3

-8

-8

2d8

36

-14

-14

-7

-12

-14

2d9

48

-23

-20

-11

-17

-21

2d10

50

-21

-17

-13

-15

17

2d11

60

-36

-31

-22

-25

-32

2d12

64

-42

-29

-19

-26

-30

2d13

85

-53

-42

-32

-38

-45

2d14

100

-48

-38

-24

-34

-40

2d15

100

-50

-40

-22

-33

-41

90.74%

54.06%

80.79%

92.17%

Figura 15 Tabla de resultados en 2D

Tabla de resultados 2D

50

Para 3D:
Secuencia

E*

AG3D

Tabu3D

3d1

20

-11

-11

-11

3d2

24

-13

-13

-13

3d3

25

-9

-9

-9

3d4

36

-18

-18

-18

3d5

46

-32

-32

-32

3d6

48

-31

-31

-31

3d7

50

-32

-30

-29

3d8

58

-44

-35

-34

3d9

60

-52

-47

-45

3d10

64

-55

-48

-48

3d11

67

-56

-41

-40

3d12

88

-72

-48

-46

3d13

103

-56

-41

-40

3d14

124

-71

-51

-49

3d15

136

-80

-52

-50

86.72 %

81.14%

Figura 16 Tabla de resultados 3D

Tabla de resultados 3D

Un anlisis rpido de estos resultados nos resaltan que el algoritmo gentico es el


ganador de estas pruebas, normalmente podemos atribuir esto a tanto la
naturaleza del algoritmo como a su operador. Recordemos que se tratan de meta
heursticas que se usan para problemas de bsqueda y optimizacin sin embargo
notamos que resaltan los resultados del VNS; el VNS no haba sido utilizado en
este problema actualmente y se genera la pregunta Qu es lo que fue mal?.
Pues bien como an no hay trabajos que lo respalden se deduce que los
operadores

de

bsqueda

que

utiliza

no

son

los

adecuados

para

la

perturbacin/alteracin de las soluciones lo que imposibilita una correcta


bsqueda en el espacio de soluciones. Recordando la bibliografa (Mladenovic &
Hansen, 1997) sabemos que este mtodo es muy eficiente pues la bsqueda local
51

genera el trabajo pesado en este enfoque se nota que la bsqueda llego


nicamente a ptimos locales y por la naturaleza de los valles y montes no pudo
lograr salir de estos.
Ahora pasando a la discusin de los resultados del algoritmo gentico y la
bsqueda tab notamos una gran diferencia. Ambos algoritmos trabajan de
manera parecida aunque uno de forma procedimental sin factores estocsticos
que es la bsqueda tab y otro de una forma con factores aleatorios y
probabilsticos siendo el algoritmo gentico. Los dos hacen uso del mismo
operadores que trata de formar soluciones mejores a partir de la cruza entre ya
sea si mismo (BT) y entre una generacin (AG) lo que da como resultado buenas
soluciones. La diferencia es si bien mnima, notable pues con 12 y 5% entre dos y
tres dimensiones respetivamente concluimos que los factores aleatorios y
probabilsticos mejoran la capacidad de explorar el espacio de bsqueda de una
manera ms eficiente.

52

CAPITULO V
CONCLUSIONES Y TRABAJO FUTURO
5.1 Conclusiones para AG-PFP

Aunque el algoritmo gentico ha encontrado las mejores soluciones para la


mayora de las pruebas hechas existen ciertas limitantes que lo hacen costoso
computacionalmente hablando pues evaluar una funcin de aptitud de manera
repetitiva para encontrar la solucin ptima toma mucho tiempo sin tomar en
cuenta las dems acciones y operaciones como parte del mismo AG se estn
llevando a cabo.
Tambin existe otro problema pues al parecer el algoritmo gentico si bien fue
muy bueno para encontrar los ptimos en soluciones de complejidad menor
(entradas de menor longitud) al parecer no escala bien a mas grande sea la
entrada.
Una gran ventaja que tuvo el algoritmo gentico frente a los otros enfoques para
PFP fue el de encontrar rpidamente mejores soluciones (no las ptimas) en corto
tiempo puedo generar un conjunto de soluciones con valores iniciales muy buenos
teniendo una media de poblacin aceptable por generacin.
5.2 Conclusiones del uso de VNS para PFP

El uso de VNS para el problema del plegamiento de protenas es una opcin


fiable, aunque muchas veces a partir de la solucin inicial es difcil encontrar la el
ptimo local, por su naturaleza. Hacer uso de los operadores brinda una manera
fcil de agitar la solucin para crear nuevas soluciones que puedan ser
rpidamente evaluadas.
El mayor problema que represento el VNS fue el atasco de soluciones en el
ptimo local, se debe recordar que la condicin de si elegir o no una peor solucin
a una anterior es estocstica y depende de que tanto empeore la solucin por lo
53

que muchas veces la solucin se quedaba en un valle y jams pudo salir de ah,
de ah los resultados pobres mostrados por este algoritmo. Tambin se destaca
que es la primera vez que se utiliza en este problema ya que al menos para la
fecha de creacin de esta investigacin no se encontr evidencia de que haya sido
anteriormente aplicado.
5.3 Conclusiones para la bsqueda tab.

Recordemos que hay un amplio nmero de problemas al mundo real que no


pueden darse solucin usando mtodos analticos y aqu es en donde la bsqueda
tab nos brinda un enfoque prctico ya que su filosofa consiste en el uso del
contexto del problema y de la historia del proceso de ah que el algoritmo tiene
memoria.
Aplicndose al PFP obtenemos resultados mucho mejores que el VNS (alrededor
de 30% de mejora) y aproximndose al algoritmo gentico. Los resultados se
amparan bajo la metodologa usada para la seccin de bsqueda local usada en
este mtodo pues esta ofrece un dinamismo para la exploracin en el espacio de
soluciones eficiente y en la parte que ms desfavorece es la poltica estricta en el
tratamiento de las soluciones infactibles que bien dndoles oportunidad, no de ser
seleccionadas, si no de ser atravesadas para llegar a una solucin mejor y factible,
fueron totalmente descartadas.
5.4 Trabajo Futuro.

Queda aun sin establecerse las razones de por qu el VNS sigue siendo un
decadente rival contra los otros mtodos, adems de esto quedan pendientes
ciertos puntos a analizar:

Qu pasara si se utiliza un mtodo de bsqueda local como el aplicado en


la bsqueda tab para el VNS

54

En el algoritmo gentico es necesario aplicar una cruza multi punto para


analizar si existe mejora de los resultados, pues de acuerdo a la literatura
es posible mejorar.

Para la bsqueda tab es necesario implementar una memoria que acepte


soluciones infectables para despus pasar a ser consideradas no como los
resultados aceptables si no como un candidato para ser perturbado an
ms all y encontrar una solucin factible y posiblemente mejor.

Qu pasara si el modelo HP presentara movimientos en diagonal para


formar soluciones poligonales no cuadradas nicamente.

Para el algoritmo gentico aun es necesario aplicar el algoritmo NSGA-II


completo y ver cmo es que el elitismo que este propone ayuda a mejorar
los resultados a actuales.

55

INDICE DE FIGURAS

Figura 1 Exploracin del espacio de soluciones usando VNS............................... 19


Figura 2 Operadores del VNS aplicados ............................................................... 19
Figura 3 Operador Esquina aplicado al tercer elemento ....................................... 20
Figura 4 Operador orilla ........................................................................................ 20
Figura 5 Partes y porcentajes para la mutacion .................................................... 21
Figura 6 Opciones de unin de dos soluciones padre ........................................... 30
Figura 7 Soluciones padre..................................................................................... 31
Figura 8 Soluciones parciales padre ..................................................................... 32
Figura 9 Ejemplo de movimiento giratorio para las soluciones parciales .............. 32
Figura 10 Solucin hijo generada .......................................................................... 33
Figura 11 Representacin de los movimientos que genera la bsqueda tab en
una solucin .......................................................................................................... 40
Figura 12 Tabla soluciones optimas actuales para 2D .......................................... 44
Figura 13 Tabla soluciones ptimas actuales 3D ................................................. 45
Figura 14 Tabla de resultados en 2D .................................................................... 50
Figura 15 Tabla de resultados 3D ......................................................................... 51

56

BIBLIOGRAFA

Berger, B., & Leighton, T. (1998). Protein folding in the hydrophobic-hydrophilic


(HP) model is NP-complete. Journal of Computational Biology.
Crescenzi, P. (1998). On the complexity of protein folding. Journal of computational
biology.
Dill, K. A. (1985). Theory for the folding and stability of globular proteins.
Biochemistry 24.
Dill, K. A., & Chan, H. (1993). The protein folding problem. Denison.edu.
Dill, K. A., & MacCallum, J. (2012). The Protein-Folding Problem, 50 Years On.
ScienceMag.
Garza, F. M., Rodriguez, T. E., & Toscano, P. G. (2012). Multiobjectivizing the HP
Model for the Protein Structure Prediction. Springer.
Glover, F. (1986). Future Paths for Integer Programming and Links to Artificial
Intelligence. Computers & Operations Research.
Glover, F. (1989). Tabu search. ORSA Journal on computing.
Glover, F., & Laguna, M. (1999). Tabu Search. Springer.
K Deb, A. P. (2002). A fast and elitist multiobjective genetic algorithm: NSGA-II.
IEEE.
Mitchell, M. (1998). An introduction to genetic algorithms.
Mladenovic, N., & Hansen, P. (1997). Variable neighborhood search. Computers &
Operations Research.

57

Anda mungkin juga menyukai