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
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
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: 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
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
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).
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