Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

30
Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional

Transcript of Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Page 1: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Aplicaciones de Algoritmos Genéticos a la Proteómica

Computacional

Page 2: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Angel Kuri

José Galaviz

Oscar Herrera

INAOE

Dic. de 2003

Page 3: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Motivación

La idea básica es lograr compresión de datos sin pérdida de una manera óptima.

Una forma sencilla de tratar de comprimir un conjunto de datos es usando la probabilidad de aparición de c/u de ellos.

Cómo se relaciona este problema con la proteómica computacional se verá más adelante.

Ilustramos con un ejemplo

Page 4: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Compresión sin pérdida

Símbolo P(Si) Suma Código Long Avg(L) StdS1 0.50000000 1.00000 0 1 0.500 3S2 0.25000000 0.50000 10 2 0.500 3S3 0.12500000 0.25000 110 3 0.375 3S4 0.06250000 0.12500 1110 4 0.250 3S5 0.03125000 0.06250 11110 5 0.156 3S6 0.01562500 0.03125 111110 6 0.094 3S7 0.00781250 0.01563 1111110 7 0.055 3S8 0.00781250 1111111 7 0.055 3

SUMA 1.984 3

Page 5: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Motivación

La información de un símbolo, de acuerdo con Shannon, está dada por:

en donde Pi=probabilidad de que aparezca el símbolo Si.

La información promedio (Entropía) está dada por:

)(Plog)I(S i2i

i

ii )I(SPH(S)

Page 6: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Compresión sin Pérdida

Símbolo P(Si) I(Si)Info.

PromedioS1 0.50000000 1.00000 0.50000S2 0.25000000 2.00000 0.50000S3 0.12500000 3.00000 0.37500S4 0.06250000 4.00000 0.25000S5 0.03125000 5.00000 0.15625S6 0.01562500 6.00000 0.09375S7 0.00781250 7.00000 0.05469S8 0.00781250 7.00000 0.05469

Entropía 1.98438

Page 7: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Compresión sin pérdida

Debe notarse que la longitud óptima promedio está acotada por la entropía.

Cuando, como en este caso, las probabilidades son potencias de 2 es posible alcanzar este límite.

Cuando este no es el caso, el límite teórico no puede alcanzarse usando este tipo de codificación llamado de Huffman (por su inventor).

Page 8: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

ErgodicidadUna de las características que se asumen en

las fuentes tales que el método anterior sea efectivo, es que las fuentes sean ergódicas.

De manera intuitiva, una fuente es ergódica si “sus” probabilidades se “establizan” después de un cierto tiempo.

Un ejemplo de no-ergodicidad sería aquel en el que transmitiéramos un bloque de datos de un texto en español, primeramente, y un bloque de datos de una imagen .jpg, seguidamente.

Page 9: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Ergodicidad

En el ejemplo anterior, claramente, las probabilidades del primer bloque serían diferentes de las del segundo.

Enfatizamos que lo que hemos llamado “probabilidades”, en la práctica, se refieren a proporciones obtenidas del análisis estadísticos de los bloques de datos.

Page 10: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Las limitaciones de la Teoría de la información

Una de las premisas tácitas en la TI clásica, es que los “símbolos” son entidades definidas a priori (bytes, palabras, etc.) cuya relación de agrupamiento implica una cercanía topológica.

Por ejemplo, si consideramos pares de letras, normalmente se consideran pares contiguos. En español, el par “qu” establece que P(u|q) es muy alta.

Page 11: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Transformación de Fuentes no-ergódicas en fuentes pseudo-

ergódicas

El objetivo que nos hemos fijado es encontrar conjuntos de símbolos no necesariamente topológicamente vecinos.

Si logramos lo anterior, cada conjunto de símbolos (llamado un meta-símbolo) hará las veces de un símbolo en una fuente ergódica y nos permitirá aplicar técnicas de primer orden a agrupamientos independientes entre si.

Page 12: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Nulo

Page 13: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

La composición de las proteínas

Las proteínas en los seres vivos son las “máquinas” encargadas de ejecutar los comandos que están tácitos en el ADN celular.

En las células existe un mecanismo de

replicación-transcripción-traducción que lleva la información del ADN, vía el ARNm, a cadenas de aminoácidos que llamamos proteínas.

Page 14: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Los nucleótidos

Todos los seres vivos contienen las instrucciones de su operación en el

núcleo de cada una de sus células en cadenas de “bases” o nucleótidos.

Las bases elegidas por la naturaleza son 4:

a) Adenina (A) b) Citosina (C)

c) Timina (T) d) Guanina (G)

Page 15: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

El código genético

Las cadenas de bases forman los genes que se encuentran en el cromosoma

Por ejemplo, una posible cadena genética se describiría así:

GATTACCALo más interesante es que cada tríada de

bases se interpreta como una instrucción.

Page 16: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Segunda Letra

U C A G

U UUU Fen UCU Ser UAU Tir UGU Cis U

UUC Fen UCC Ser UAC Tir UGC Cis C

UUA Leu UCA Ser UAA SI UGA SI A

UUG Leu UCG Ser UAG SI UGG Trp G

C CUU Leu CCU Pro CAU His CGU Arg U

CUC Leu CCC Pro CAC His CGC Arg C

CUA Leu CCA Pro CAA Gln CGA Arg A

Primera CUG Leu CCG Pro CAG Gln CGG Arg G Tercera

Letra A

AUU ile ACU Tre AAU Asn AGU Ser U Letra

AUC ile ACC Tre AAC Asn AGC Ser C

AUA ile ACA Tre AAA Lis AGA Arg A

AUG Met ACG Tre AAG Lis AGG Arg G

GGUU Val GCU Ala GAU Asp GGU Gli U

GUC Val GCC Ala GAC Asp GGC Gli C

GUA Val GCA Ala GAA Glu GGA Gli A

GUG Val GCG Ala GAG Glu GGG Gli G

Page 17: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Aminoácidos

Aminoácidos: ala = alanina, arg = arginina, asn = asparagina, asp = ácido aspártico, cis = cisteína, glu = ácido glutámico, gli = glicina, his = histidina, ile = isoleucina, leu = leucina, lis = lisina, met = metionina, fen = fenilalanina, pro = prolina, ser = serina, tre = treonina, tri = triptofano, tir = tirosina, val = valina.

Page 18: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Duplicación y Transcripción

Del ADN se pasa, por un proceso denominado “transcripción” al ARNm.

Las bases se “copian” complementa-riamente: A<->T y G<->C.

Por ejemplo, la cadena GATTACA duplica en ATAATGT, pero se transcribe como AUAAUGU porque en el ARNm la timina se reemplaza por uracilo (U).

Page 19: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Duplicación/Transcripción/TraducciónADN

CAAAGAATCCTCTTTGATCopia

GTTTCTTAGGAGAAACTARNAm

GUUUCUUAGGAGAAACUAProteína

GUU-UCU-UAG-GAG-AAA-CUAAminoácidos

Val-Ser-Si- Glu-Lis-Leu

Page 20: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Proteínas

Una proteína puede ser expresada como una secuencia de aminoácidos. La siguiente secuencia es la expresión de una proteína de E. coli:

MARKTKQEAQETRQHILDVALRLFSQQGVSSTSLGEIAKAAGVTRGAIYWHFKDKSDLFSEIWELFRPCKRCQPEKANAQQHRLDKITHACRLLEQETPVTLEALADQVAMSPFHLHRLFKATTGMTPKAWQQAWRARRLRESLAKGESVTTSILNAGFPDSSSYYRKADETLGMTAKQFRHGGENLAVRYALADCELGRCLVAESERGICAILLGDDDATLISELQQMFPAADNAPADLMFQQHVREVIASLNQRDTPL

Page 21: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Proteínas

Hay un problema fundamental en biología molecular: “¿Cómo se agrupan las proteínas?”

Es decir, qué relación guardan entre sí las proteínas? (Hay miles en un ser vivo).

Page 22: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

ProteínasEn el pasado se ha intentado lograr: La clasificación de secuencias [1] El agrupamiento de patrones de expresión

genéticos [2] La clasificación de secuencias moleculares [3] La inferencia filogenética [4] En todos los casos que hemos logrado identificar,

sin embargo, estos intentos han obedecido a criterios de clasificación y agrupamientos predeterminados.

Page 23: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Hipótesis

Es posible lograr la clasificación de las proteínas de un ser vivo (nos enfocaremos a E. coli y S. cerevisiae) atendiendo solamente a las características estructurales de las proteínas.

Page 24: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Agrupamiento

El primer problema es lograr el agrupamiento automático de las diversas proteínas.

Para ello usaremos mapas auto-organizados en los cuales la determinación de los grupos se logra usando algoritmos genéticos.

Page 25: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Paso 1:

En este mapa

todas las neu-

ronas vecinas

forman parte

de un grupo.

Pero no conoce-

mos los grupos

Page 26: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Paso 2:

En este mapa

las neuronas

han sido etique-

tadas, de mane-

ra que sabemos

a qué grupo per-

tenece cada

una.

Page 27: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Explicación de los Grupos

Con el método anterior es posible encontrar agrupamientos de proteínas de manera no-sesgada.

Para explicar por qué se agrupan de esa manera es factible aplicar los algoritmos de búsqueda de meta-símbolos antes analizados.

Page 28: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Las proteínas como mensajes

Para estos algoritmos una cadena de aminoácidos es indisringuible de una cadena de letras, o de píxeles, o...

De manera que los meta-símbolos embebidos en los grupos nos pueden dar una respuesta a por qué los agrupamientos se presentan como lo hacen.

Page 29: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Conclusiones

Aplicando técnicas de búsqueda originalmente planteadas al problema de la compresión de datos, es factible encontrar las razones por las cuales las proteínas se agrupan en familias

Page 30: Aplicaciones de Algoritmos Genéticos a la Proteómica Computacional.

Referencias

[1] Wu C., Berry M., Fung Y.S., McLarty J., Neural networks for molecular sequence classification, Proc. Int. Conf. Intell. Syst. Mol. Biol., vol. 1, pp. 429-437, 1993.

[2] Wang, H.C., Dopazo, J., de la Fraga, L.G., Zhu, Y.P., Carazo, J.M., Self-organizing tree-growing network for the classification of protein sequences, Protein Sci., pp. 2613-22, 1998.

[3] Ferran, E.A., Ferrara, P., Clustering proteins into families using artificial neural networks,

Comput. Appl. Biosci., pp. 39-44, 1992.

[4] Friedman, N., Ninio, M., Pe'er, I., Pupko, T., A structural EM algorithm for phylogenetic inference, J. Comput. Biol., pp. 331-353, 2002.