Post on 26-Jan-2016
description
AlgoritmosGenéticos
yPredicción de
Plegamiento de Proteinas
Primera Parte
Descripción del problema y Breve repaso
El problema
Predecir la estructura de una proteina dada la secuencia de aminoácidos que forma dicha proteina.
T C P A G N E G G D E GA
Breve repaso
Aminoácidos y Proteinas
C HH2N+
C OH
O
RGrupo Amino
Residuo
Grupo Carboxido(ácido)
Aminoácidos
C HH2N
C OH
O
R
C HH2N
C OH
O
R
C HH2N
C
OHO
R
C HHN
C OH
O
R
H
Unión Péptida
Proteinas
C H
C
O
R
C HHN
C
O
RHN
C
HN
C
R
Angulos de torsión
C H
C
O
R
C HHN
C
O
RHN
C
HN
C
R
Segunda Parte
Introducción a los Algoritmos Genéticos
Descripción
• Encuentran soluciones “buenas” en un tiempo razonable.
• Representan las posibles soluciones de un problema como genes.
• Los algorítmos genéticos generan una población de genes (posibles soluciones) y los hacen evolucionar para obtener genes mas aptos (mejores soluciones).
Inspiración
• En la naturaleza los individuos compiten por los recursos del medio ambiente. Algunos son mejores que otros, esos son los que tienen mas posibilidades de sobrevivir y propagar su material genético.
• En un AG los genes son evaluados según una función llamada Fitness function y los mejores son los que pasarán a la próxima iteración.
Representación de los genes
Adelante Izquierda Izquierda Atras
1 0 1 1 0 0 1 0
A C C T G C A G G
•En la naturaleza:
Un valor numérico (178) expresado en binario
Una secuencia de movimientos
•En un algoritmo genético (ejemplos):
Una secuencia de nucleótidos
Pasos de un algoritmo genético
1. Generar una población de n genes aleatoreos.
2. Evaluar a todos los individuos según la función de aptitud (fitness function).
3. Generar nuevos individuos utilizando funciones como Mutar, Cruzar (crossover), Variar, etc.
4. Seleccionar a los individuos que formarán la próxima generación. (Seleccionar a los hijos (offsprings) o seleccionar a los n mejores)
5. Volver a 2 hasta que se encuentre un valor predefinido o se hallan cumplido una cantidad predeterminada de iteraciones.
Mutación
1 0 1 1 0 0 1 0
1 0 1 1 1 0 1 0
1. Se decide con alguna probabilidad si se aplica la mutación o no.
2. De aplicarse se selecciona con alguna probabilidad el bit (o item del arreglo) a mutar.
3. De no ser un bit (que sería negado) se elije con alguna probabilidad en que muta.
Cruza
1 0 1 1 0 0 1 0
0 0 1 1 1 0 0 1
1 0 0 1 00 0 1
1 0 1 1 1 0 0 1
Gen A
Gen B
Gen AB
Gen BA
1. Se decide con alguna probabilidad si se aplica la cruza o no.
2. De aplicarse se selecciona con alguna probabilidad la posición del arreglo donde se aplica.
Selección de la pareja
• En función de la función de aptitud.
• Seleccionar de un grupo aleatorio el mas apto.
Existen dos formas de seleccionar la pareja con la cual se va a cruzar un gen:
Variación1. Se decide con alguna probabilidad si se
aplica la funcion o no.
2. De aplicarse se cambia el valor de una de las posiciones del arreglo de forma tal que el dato codificado varíe levemente.
1 0 1 1 0 0 1 0 1 0 1 0
1 0 1 1 0 0 1 1 1 0 1 0
11 2 10
11 3 10
Links
• The Genetic Algorithms Archivehttp://www.aic.nrl.navy.mil/galist/
• Genetic Algorithms and Artificial LifeResourceshttp://www.scs.carleton.ca/~csgs/resources/gaal.html
• Genetic Algorithmshttp://d.felk.cvut.cz/~xobitko/ga/
Tercera Parte
Utilizando Algoritmos Genéticos para Resolver el Problema del Plegamiento de
Proteinas
Simulación de Plegamiento de Proteinas por Optimización del
Campo de Fuerza
Representación de la información (codificación de los genes)
•Coordenadas Cartesianas.
•Ángulos de torsión.
Definición del operador Mutar
Para la definición del operador Mutar se analizaron estadisticamente los ángulos de torsión de 129 proteinas de la base de datos Brookhaven (PDB). Se utilizaron intervalos de a 10° y se tomaron los 10 intervalos que ocurrian con mas frecuencia (cada uno representado por su extremo izquierdo) para utilizar como ángulos a reemplazar por el operador Mutar.
Definición del operador Variar
El operador Variar consta de tres componentes: 1°, 5° y 10°.
Para cada uno de los ángulos de torsión se toman dos decisiones: primero si se aplica o no el operador, y luego, en caso de aplicarse se elije cual de los 3 componentes se utilizará para incrementar o decrementar dicho ángulo de torsión
Definición del operador CruzaEl operador Cruza consta de dos componentes: Cruza uniforme y Cruza de dos puntos.
Los genes son agrupados de a pares y luego se decide si se aplica o no el operador, de aplicarse se decide cual de los dos componentes se utilizará.
La Cruza uniforme consiste en decidir (con probabilidad del 50%) si se intercambia cada uno de los ángulos de torsión de los dos genes.
La Cruza de dos puntos selecciona al azar dos residuos de un individuo e intercambia el fragmento entre los residuos con el otro individuo.
Steric Potential Energy Function(Función de aptitud)
E=Ebond+Ephi+Etor+Eimpr+EvdW+Eel+EH+Ecr+Echpi
Ebond Potencial de la longitud del enlace
Ephi Potencial del ángulo del enlace
Etor Potencial del ángulo de torsión
Eimpr Potencial del ángulo impropio de torsión
EvdW Interacción de van der Waals
Eel Potencial electroestático
EH Enlace de hidrógeno
Ecr Interacción con el solvente
Ecphi Interacción con el solvente
Simplificaciones
• Como suponemos longitudes y ángulos de enlace constantes tenemos que Ebond (Potencial de la longitud del enlace), Ephi (Potecial del ángulo del enlace) y Eimpr
(Potencial del ángulo impropio de torsión) son constantes.
• Se omite EH porque se tendría que haber tenido en cuenta en EvdW y Eel
• Como simulamos el plegamiento de la proteina en el vacio (sin ligadores ni solventes) los valores de Eci y Echpi son constantes.
E=Ebond+Ephi+Etor+Eimpr+EvdW+Eel+EH+Ecr+Echpi
Entropía
• Si utilizamos unicamente Etor , EvdW y Eel no obtendríamos suficiente energía para llevar a la proteina a un estado compacto de plegado.
E=Etor+EvdW+Eel
• Es muy complicado calcular la diferencia de entropia entre un estado plegado y un desplegado (esta relacionado con la interacción entre la proteina y el solvente).
• Para tener esto en cuenta utilizaremos un término ad-hoc (Que tiene en cuenta el diámetro de la proteina obtenido y el esperado)
+Epe
Parametrización
Los parametros controlan el comportamiento del algoritmo. Y pueden variar mientras se el algoritmo se ejecuta.
Estructura del Crambin (estructura determinada con una resolución de 1.5 Ǻ – Tamaño: 46 residuos)
Uno de los plegamientos generados por el algoritmo
Resultados• Ninguno de los 10 individuos
muestra similaridad estructural con la forma del crambin.
• Los resultados obtenidos “tienen forma” de proteina, no tienen nudos ni extremos sobresalientes
• En la última generación se obtuvieron dos familias distintas de estructuras, con valores de rms de aproximandamente 2 entre los miembros de cada familia y de 9 entre las familias
Resultados
Energias en la última generación.Los individuos generados por el AG tienen un mayor potencial electroestático que el cambrin original, esto se debe principalmente a:
El crambin tiene 6 residuos parcialmente cargados que no fueron neutralizados en este experimento
El algoritmo favorese a las configuraciones con menor energia total lo cual es facilmente alcanzable optimizando las contribuciones electroestaticas.
Resultados
• Teniendo en cuenta el tamaño de la población, y el hecho de que en la última generación se encontraron dos familias de conformaciones podemos decir que:Los resultados no fueron tan malos!!!
• Habría que encontrar una función de aptitud que represente mejor las conformaciones.
Optimización Multi-criterio de la Conformación de la Proteina
Nueva función de aptitud
Polar Favorese a los residuos polares en la superficie de la proteina
Hydro Favorese a los residuos hidrofóbicos en el nucleo de la proteina
Scatter Promueve plegamientos compactos tomando en cuenta las distancias entre los C
Solvent Es la superficie accesible al solvente
Crippen Medida empírica que tiene en cuenta la interacción de los átomos en una cierta distancia
Clash Cuenta las colisiones atómicas (cuando dos átomos están a una distancia menor de 3.8Å)
Resultado obtenido utilizando unicamente Polar, Epe, Etor, Eel, Hydro, Crippen y Solvent
r.m.s=6.27Å
Conclusiones• Los AGs probaron ser una herramienta de
busqueda eficiente para la representacion tridimensional de las proteinas.
• Utilzando Campos de fuerza como función de aptitud y una pequeña población el algoritmo genera diversos individuos pero con una funcion de aptitud bastante optima.
• El mayor problema recae en la función de aptitud, ya que no se puede encontrar una lo suficientemente precisa se encuentran soluciones sub-optimas diversas alejadas de la solucion óptima