Writing /var/lib/dokuwiki/data/meta/teaching/ie0117/proyectos2_2016_i/alineamiento_adn.meta failed
teaching:ie0117:proyectos2_2016_i:alineamiento_adn
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
teaching:ie0117:proyectos2_2016_i:alineamiento_adn [2016/07/03 06:08] – ie0117 | teaching:ie0117:proyectos2_2016_i:alineamiento_adn [2022/09/20 00:08] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 5: | Line 5: | ||
* Daniel Díaz Molina B22245 | * Daniel Díaz Molina B22245 | ||
* Luis Fernando Mora B24449 | * Luis Fernando Mora B24449 | ||
- | * Emanuel | + | * Emanuel |
====== | ====== | ||
+ | |||
+ | El presente proyecto tiene el objetivo de crear un segundo acercamiento a la programación en Python, orientado a resolver un problema científico en el campo de la bioinformática, | ||
+ | Se implementará un programa que compare dos secuencias de ADN, las alinee de forma global según el algoritmo Needleman-Wunsch, | ||
+ | Se investigará sobre el algoritmo de alineamiento de secuencias desarrollado por los científicos Saul Needleman y Christian | ||
====== Nota Histórica ====== | ====== Nota Histórica ====== | ||
+ | |||
+ | El estudio moderno de la genética se centra en la síntesis del proteínas, el estudio de | ||
+ | secuencias de ADN y ARN. La proteínas son grandes macromoléculas que cumplen cualquier | ||
+ | cantidad de funciones, se podría decir que enteder las proteinas es enteder el funcionamiento | ||
+ | microscópico de la vida. Las proteinas son sintetizadas a partir del ADN y ARN. Los genes | ||
+ | son en realidad cadenas de bases de ADN, que sintetizan una o más proteínas espećificas. | ||
+ | El ADN está formado por una combinación de 4 bases nitrogenadas: | ||
+ | Citosina y Tiamina. A un grupo de 3 estas bases se le llama codón, y cada uno se traduce | ||
+ | directamente en un aminoácido, | ||
+ | (Orengo, Jones, y Thornton, 2003). Así, se puede entender que el ADN es una receta o macro | ||
+ | de las estructuras más complejas de la vida, verdaderamente un código genético con (casi) | ||
+ | toda la información de un organismo. Es por esta razón que los científicos han dedicado un | ||
+ | gran esfuerzo al estudio de secuencias genéticas, se ha invertido mucho dinero en financiar la | ||
+ | bio-informática y a la búsqueda de patrones y diferencias de estas secuencias entre diferentes | ||
+ | organismos. | ||
+ | Sobre este marco de estudio genético surge la necesidad de encontrar patrones en grandes | ||
+ | cantidades de datos genéticos. El estudio de la genética se combina con la computación y la | ||
+ | informática, | ||
+ | proteínas. El descubrimiento de patrones comunes sugiere ancestros comunes entre especies, | ||
+ | y las diferencias sugieren las mutaciones que han surgido con la evolución. La escala del problema es sumamente grande, y sin algoritmos secuenciadores que sean ejecutables por | ||
+ | implementados por computadoras no sería posible terminar la tarea de comparar las enormes filas de caracteres | ||
+ | |||
====== Marco Teórico ====== | ====== Marco Teórico ====== | ||
===== Secuenciación de ADN y Alineamiento ===== | ===== Secuenciación de ADN y Alineamiento ===== | ||
+ | |||
+ | El ADN (ácido desoxirribonucléico) es una molécula formada por ácido fosfórico, desoxirribosa y bases nitrógenadas. La misma porta toda la información necesaria para el desarrollo y correcto funcionamiento del ser vivo al que pertenece, y a su vez es muy compleja. Por otro lado, las cuatro bases nitrógenadas que ya se mencionaron se encargan de dar estructura y de unir la doble hélice que conforma la molécula entera. Una imagen de una molécula de ADN se aprecia a continuación. | ||
{{ https:// | {{ https:// | ||
+ | |||
+ | Estas cuatro bases son de principal interés para la ciencia de la bio-informática, | ||
+ | |||
+ | {{ https:// | ||
==== Algoritmo Needleman-Wunsch ==== | ==== Algoritmo Needleman-Wunsch ==== | ||
+ | Para analizar similitudes entre diferentes secuencias, se han desarrollado diferentes algoritmos de alineamiento a lo largo de los últimos dos siglos. Uno de ellos es el algoritmo Needleman-Wunsch, | ||
- | ====== Funcionamiento del Software Implementado ====== | + | {{ https:// |
+ | Dicha matriz se comienza a recorrer desde una fila y columna, asignando un puntaje de " | ||
+ | |||
+ | ====== Funcionamiento del Software Implementado ====== | ||
===== Interfaz Gráfica Desarrollada ===== | ===== Interfaz Gráfica Desarrollada ===== | ||
+ | Para el presente proyecto, se implementó una librería disponible en Github, para Python, que implementa el algoritmo needleman-wunsch. El mismo recibe dos secuencias de bases nitrogenadas y las alinea según el mejor puntaje que se obtenga. Para visualizar el proceso de alineamiento, | ||
+ | |||
+ | {{ https:// | ||
+ | |||
+ | Permite seleccionar las secuencias de ADN a analizar de archivos de texto, escoger el algoritmo de alineamiento de una lista de algoritmos disponibles y además tiene espacios para visualizar las secuencias. | ||
===== Pruebas de Velocidad ===== | ===== Pruebas de Velocidad ===== | ||
+ | |||
+ | A continuación se muestran los resultados de las velocidades tardadas por el algoritmo implementado en Python, dicho programa lo que hace es leer las cadenas de un archivo fuente, iniciar el conteo del tiempo antes de llamar a la funciona que las alinea, y cuenta el tiempo nuevamente después de que el algoritmo da el resultado, se saca la diferencia de ambos tiempos y con eso se obtiene el tiempo tardado por el algoritmo al comparar las dos secuencias leídas, el programa reúne los datos en una matriz, donde muestra la longitud de la primera cadena, la longitud de la segunda cadena, y el tiempo tardado en alinearlas. El programa continuara ejecutandose hasta que ya no hayan mas secuencias en el archivo fuente. Para el ejemplo mostrado se usaron dos archivos fuentes distintos con cadenas aleatorias. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | |||
+ | ====== Código Fuente ====== | ||
+ | |||
+ | {{: | ||
+ | |||
+ | {{: | ||
====== Referencias ====== | ====== Referencias ====== | ||
+ | * Orengo, C., Jones, D. T., y Thornton, J. M. (2003). Bioinformatics: | ||
+ | computers. Garland Science. | ||
+ | * Ansorge, W.J. (2009). «Next-generation DNA sequencing techniques.». New Biotechnology 25 | ||
+ | * Needleman, Saul B. & Wunsch, Christian D. (1970). "A general method applicable to the search for similarities in the amino acid sequence of two proteins" |
teaching/ie0117/proyectos2_2016_i/alineamiento_adn.1467526114.txt.gz · Last modified: 2022/09/20 00:08 (external edit)