B LGORITMOS IOINSPIRADOS - International Center...

42
BIOLOGÍA ↔ ALGORITMOS BIOINSPIRADOS Katya Rodríguez Vázquez IIMAS, UNAM [email protected]

Transcript of B LGORITMOS IOINSPIRADOS - International Center...

BIOLOGÍA ↔ ALGORITMOS BIOINSPIRADOS

Katya Rodríguez Vázquez

IIMAS, UNAM

[email protected]

BIOLOGÍA Y ALGORITMOS BIOINSPIRADOS

Biología

Bioinformática Biología

Algoritmos

Bioinspirados Computación

Computación

ALGORITMOS BIOINSPIRADOS

Algoritmos de optimización y búsqueda los cuales

tratan de imitar el comportamiento de sistemas

biológicos. Como ejemplo tenemos los algoritmos

evolutivos, las colonias de hormigas, optimización

por cúmulos de partículas entre otros.

ALGORITMOS EVOLUTIVOS

Evolutionary

Computing

EC = GA + ES + EP Genetic Algorithms

(Holland, 1975)

Evolution Strategies

(Rechenberg, 1973)

Evolutionary Programming

(Fogel, Owens and Walsh, 1966)

GP Genetic Programming

(Koza, 1992)

La computación evolutiva (CE) imita de

manera parcial los mecanismos de

evolución biológica y selección natural,

y tiene como base un método que se

puede observar en la figura 1.

ALGORITMOS EVOLUTIVOS

ALGORITMOS EVOLUTIVOS

Cada uno de los algoritmos evolutivos trabaja con individuos, que

son representados por estructuras de datos, cada individuo es una

posible solución para el problema que intentamos resolver. La

posible solución que representa cada individuo corresponde a su

genotipo, a partir del cual se obtendrá un fenotipo con el que se

evaluará a cada individuo.

Después de la evaluación, se seleccionarán los individuos que mejor

se aproximen a la solución. A los individuos seleccionados se

aplicarán operadores que modificarán su estructura simulando los

mecanismos de recombinación y mutación que tienen lugar en la

naturaleza (operadores genéticos). Estas acciones se realizarán un

determinado número de veces, dependiendo de un criterio que

permitirá decidir si se finaliza el proceso. Cada ocasión en que se

realizan la evaluación de un individuo y se aplican los operadores

genéticos se conoce como generación.

ALGORITMOS EVOLUTIVOS

Medio Ambiente Problema

Individuo o Fenotipo Solución potencial del

problema

Cromosoma o Fenotipo Cadena de símbolos

Adaptación al medio

ambiente

Aptitud (fitness) o calidad

de la solución

Supervivencia Selección

Reproducción/mutación

(operadores genéticos)

Cruzamiento/Mutación

Sistema Natural Sistema Artificial

ALGORITMOS EVOLUTIVOS

0 1 0 1 0 0 1 0 Binaria (GA)

4 8 1 3 9 5 6 12 Entera (GA)

0.01 1.53 -0.57 0.98 -1.06 -1.35 -0.77 1.08 Real (GA, ES, EP)

4 12 1 3 9 0 0 0 Variable (GA)

Jerárquica-árbol (GP)

EVALUACIÓN Y APTITUD

Mapeo de genotipo (codificación) a fenotipo

(características en el dominio del problema a

resolver)

INDIVIDUO X1 X2 f(X1,X2)

1 6.0844 5.6522 26.0196

2 10.3484 4.3802 7.5800

3 -2.5166 4.3903 19.5263

4 5.2786 5.5934 17.4067

5 -1.2551 4.7344 25.3411

))20(())4((5.21)( 22112,1 xsenxxsenxxxf

11100101001010101000101101111000011101

SELECCIÓN

Selección proporcional a la aptitud de los individuos.

Los mejor evaluados tendrán mayores probabilidades

de sobrevivir.

MÉTODO DE LA RULETA

4.4% P(0.044) 6.9% P(0.069)

9.2% P(0.092)

10.2%

P(0.102)

15.6%

P(0.156)

21.4%

P(0.214)

32.3%

P(0.323)

OPERADOR DE CRUZAMIENTO

Crossover

1 0 0 1 0

0 1 0 1 1

1 0 0 1 1

0 1 0 1 0

Operador principal

Operador sexual el cual hereda características de los

padres a los hijos

Ejemplo: para cromosomas binarios la cruza en un solo

punto se realizar al seleccionar un punto de cruza aleatorio

e intercambiar las subcadenas entre los padres

OPERADOR DE MUTACIÓN

El operador de cruzamiento permite explotar el espacio de

búsqueda al combinar nociones (subcadenas) para formar

nuevas ideas (nuevas soluciones)

Sin embargo, aunque la cruza busca y recombina

estructuras aptas existentes, se puede perder material

genético y estancarse en un óptimo local (convergencia

prematura)

El operador de mutación es una protección contra esta

pérdida prematura de diversidad en la población

OPERADOR DE MUTACIÓN

La mutación es un proceso en el cual el alelo de un gen es

aleatoriamente reemplazando por otro para producir una

nueva estructura

La probabilidad de mutación Pm en cada gen es pequeña

La mutación de cada posición es independiente de la acción

en otra posición

En el AGS, como se tiene representación binaria, la

mutación altera el contenido de un gen al cambia 1´s por

0´s o viceversa

La mutación es un operador asexual

OPERADOR DE MUTACIÓN

El operador de mutación permite introducir diversidad en

la población

Es un operador que explora el espacio de búsqueda

La combinación de los operadores genéticos de cruzamiento

y mutación:

Explotación y exploración

Mutación

1 0 0 1 0 1 0 1 1 0

OPTIMIZACIÓN POR ENJAMBRES

PSO: Particle Swarm Optimization

Algoritmos inspirados en el comportamiento

colectivo de colonias de insectos sociales u otras

sociedades de animales

R[0,2]

c1, c2[0,1]

11

*1,0*2*1,0*1*1

tvtxtx

txgBestaleactxpBestaleactvRtv

iii

iiiii

OPTIMIZACIÓN POR ENJAMBRES Para cada partícula

Inicializar partícula

Fin

Mientras máximo número de iteraciones o mínimo error

Para cada partícula

Calcular aptitud

Si el valor de aptitud es mejor que el mejor valor

histórico(pBest), definir este valor como el nuevo pBest

Fin

Elegir la partícula con el mejor valor de aptitud de todas las

partículas como el gBest

Para cada partícula

Calcular su velocidad

Actualizar su posición

Fin

Fin

Bioinformática Biología Computación

BIOINFORMÁTICA

La bioinformática es la aplicación de la

ciencia de la computación a la gestión y análisis

de datos biológicos. Los términos

bioinformática, biología computacional y, en

ocasiones, biocomputación son considerados

como sinónimos

ALINEAMIENTO DE SECUENCIAS CON AG

Desarrollo de diversos algoritmos para atacar el problema

Tradicionalmente:

EJEMPLOS DE PROGRAMAS DE ALINEAMIENTO

CLUSTAL (Thompson et al., 1994)

MALIGN (Wheeler and Gladstein, 1991-1998)

DIALIGN (Morgenstern et al., 1998)

DO/IA (Direct Optimization/Implied Alignment: Wheeler et al., 2002)

SAM (Sequence Alignment and Modeling System: Hughey et al., 2000)

MCALIGN (Keightley and Johnson, 2003)

MUSCLE (Edgar, 2004)

ALINEAMIENTO DE SECUENCIAS

ALINEAMIENTO DE SECUENCIAS

ALINEAMIENTO DE SECUENCIAS

seq1 ACTTCCGAATTTGGCT

seq2 ACTCGATTGCCT

e.g., Siddall’s online notes

ACTTCCGAATTTGG-CT

ACT--CGA--TTG-CCT

ACTTCCGAATTTGGCT

ACTC---GATT-GCCT

ACTTCCGAATTTGGCT

ACTC----GATTGCCT

ACTTCCGAATTTGGCT

ACT--CGA--TTGCCT

El objetivo es minimizar de manera lógica y con la implementación de un algoritmo

el número de observaciones variables y el número de eventos para las variables

independientes, para cada terminal y para el alineamiento global

ALINEAMIENTO DE SECUENCIAS

seq1 ACTTCCGAATTTGGCT

seq2 ACTCGATTGCCT

e.g., Siddall’s online notes

ACTTCCGAATTTGG-CT

ACT--CGA--TTG-CCT

ACTTCCGAATTTGGCT

ACTC---GATT-GCCT * * *

ACTTCCGAATTTGGCT

ACTC----GATTGCCT * * * *

Minimiza substituciones

Minimiza indels

Balance entre substituciones e indels

ACTTCCGAATTTGGCT

ACT--CGA--TTGCCT *

Minimiza eventos

4

5

5

3

GLOCSA: GLOBAL CRITERION FOR

SEQUENCE ALIGNMENT

Nueva función de evaluación de la calidad de alineamientos

de múltiples secuencias de ADN

Evalua todas las secuencias del alineamiento a la vez

Toma en cuenta gaps

Tres criterios:

Homogeneidad en columnas

Recíproco del número de gaps

Incremento de columnas

GLOCSA

CIwRGBwMCHwGLOCSA cirgbmch

wmch = 1000

wrgb = 20

wci = -20

GLOCSA: HOMOGENEIDAD o Tiene el propósito de evaluar el grado de diversidad en una posición

del alineamiento (columna)

Da valores más altos a columnas más homogéneas

Similar en concepto a la entropía

GLOCSA: CONCENTRACIÓN DE GAPS

Su propósito es promover un menor número de gaps

Es el recíproco del número de bloques contiguos de gaps

wrgb = 20

GLOCSA: INCREMENTO EN COLUMNAS

Tiene como propósito penalizar el crecimiento en el número de

columnas en un alineamiento

CODIFICACIÓN ÁCIDOS NUCLÉICOS

MATRIZ DE PESOS PARA EL CONTEO DE BASES

CODIFICACIÓN EN AG

AG Y ALINEAMIENTO DE SECUENCIAS

GA:

Población de posibles alineamiento

Punto de partida: Alineamiento generado por Muscle, Clustal

o Kalign

GA para refinar los alineamiento bajo el criterio GLOCSA

Cinco operadores de mutación:

Inserción de bloque de gaps

Incremento de un bloque de gaps

Decremento de un bloque de gaps

Desplazamiento de un bloque de gaps

Deleción de un bloque de gaps

CODIFICACIÓN DE AMINOÁCIDOS

ALINEAMIENTO DE VÍAS METABÓLICAS

PLEGAMIENTO DE PROTEINAS Y PSO

Métodos experimentales para determinar la estructura 3D

de una proteína son caros y tardados

Objetivo: Plegar proteínas a partir de su secuencia de

aminoácidos hacia una estructura 3D mediante PSO

Minimizar de energía con una representación de ángulos de

torsión

Paralelización

PLEGAMIENTO DE PROTEÍNAS

El objetivo es minimizar una función de energía para optimizar la

estructura de la proteína basada en un espacio de ángulos de torsión

tornbe

intraintra EEE

intraE es la energía total

nbe

intraE Es la energía electroestática

torE Es la energía torsional

11

*1,0*2*1,0*1*1

tvtxtx

txgBestaleactxpBestaleactvRtv

ididid

iddidididid

PÉPTIDO LEU-ENKEPHALIN

Ángulos BT AGH PSO PSO1 PSO2 PSO3 DEA

φ -82.928 -168.2 121.73 -86.1 -83.5 94.78 -83.5

ψ 155.392 -35.7 92.56 156.2 155.8 104.21 155.8

ω -173.356 -179.4 120.56 -176.9 -177.2 -179.2 -177.2

Χ1 -171.896 171 190.45 -172.6 -173.2 -165.3 -173.2

Χ2 -106.47 56.4 78.92 -101.3 -100.5 -96.5 79.4

Χ3 10.974 -158.6 35.06 14.1 13.6 71.4 -166.4

φ -148.177 98 143.62 111.89 78.93 -166.3 -154.3

ψ 70.332 43.2 120.63 83.7 86 78.1 86

ω 168.48 168.5 173.78 168.6 168.5 178.2 168.5

φ 85.373 69.8 99.02 83.7 82.9 68.8 82.9

ψ -69.33 -91.3 120.74 -73.9 -75.1 -94 -72.5

ω -171.218 -177.9 156.02 -170 -169.9 179.3 -170

φ -135.494 -90.9 123.96 -137 -136.9 -93 -136.9

ψ 17.363 -32.4 56.28 19.3 19.1 -17.1 19.1

ω -173.684 -173.8 178.43 -174.1 -174.1 173 -174.1

Χ1 58.938 178.9 120.63 58.8 67.92 80.9 58.9

Χ2 94.179 73.9 66.82 -85.4 129.63 -92.9 94.6

φ -161.513 -148 150.83 123.73 -163.5 -74.6 -163.5

ψ 160.391 124.8 178.92 120.74 160.9 131.4 161.2

ω 179.102 -175.1 -178.9 -179.7 177.92 -172.4 -179.8

Χ1 52.272 177.6 -124.93 52.8 68.92 -67 52.9

Χ2 174.335 62.7 67.25 175.3 128.53 -171.6 175.3

Χ3 179.78 52.5 23.82 -179.8 45.92 -178 -179.8

Χ4 -178.69 -58.6 128.2 61.4 134,72 63.6 -58.6

-12.32 -12.32 -12.32 -12.618 -12.621 -13.624 -12.389

BT (Tabu Search [14]), AGH (Hybrid genetic algorithm [20]), PSO (sequential PSO), PSO1 (Master-slave),

PSO2 (Unidirectional ring PSO), PSO3 (Bidirectional ring PSO), DEA (Differential evolution algorithm).

PSO PARALELO

Procesador n

MODELO HP

Modelo HP considera dos tipos de residuos:

hidrofóbicos (H) o polares (P). Una proteína es

considera una secuencia de estos dos tipos de

residuos

Función de energía mide la interacción entre

residuos vecinos y es definido como HH=-1,

HP=PP=0.

Diversos algoritmos bioinspirados han sido

aplicados para resolver este problema.

MODELO HP

HPHPPHHPHPPHPHHPPHPH

Círculos negrso representan aminoácidos

hidrofóbicos, círculos blancos corresponden

a aminoácidos polares.

Líneas punteadas representan contactos

H-H por lo que la energía de esta

conformación es -9.

OTRAS APLICACIONES

Alineamiento y comparación de secuencias de

DNA, RNA y proteínas

Identificación de motivos

Identificación de operones en genomas

Construcción de árboles filogenéticos para el

estudio de relaciones evolutivas

Plegamiento de proteínas

Algortimo Culturales

Colonia de Hormigas

Robótica Evolutiva/Hardware Evolutivo

Sistema Inmune

Cúmulo de Partículas

Evolución Diferencial

Algortimos Genéticos

Programación Genética

Estrategias Evolutivas Redes Neuronales

ALGORITMOS BIOINSPIRADOS

Paralelismo y Multicriterio

GRACIAS