Modelo computacional de la evolución de secuencias biológicas basado en la programación celular
Texto completo
(2) RESUMEN. La bioinfonnática es una ciencia interdisciplinaria que trata de solucionar problemas de corte biológico empleando técnicas computacionales.. El. desarrollo de métodos para inferir las relaciones evolutivas entre los distintos organismos ha sido una parte importante de los estudios en biología evolutiva y bioinfonnática.. Un proceso básico en la evolución de secuencias de ADN lo constituye la sustitución de un nucleótido por otro a través del tiempo, también llamado substitución. Para detectar estos cambios es necesario comparar dos o más secuencias que provengan de un ancestro común.. En este trabajo proponemos un método computacional para inferir relaciones evolutivas entre secuencias de ADN basado en la programación celular, la cual combina dos técnicas: los algoritmos genéticos y los autómatas celulares.. Los algoritmos genéticos son métodos de búsqueda que han sido usados exitosamente en un amplia variedad de aplicaciones, incluso la bioinfonnática. Esto debido a su capacidad para analizar espacios de búsqueda que por sus dimensiones resultan prohibitivos para métodos tradicionales. Los autómatas celulares vienen a complementar la labor de los algoritmos genéticos proporcionando un marco para modelar la dinámica evolutiva de las secuencias.. Las secuencias así modeladas nos pueden proporcionar no solo un estimado del número de cambios ocurridos, sino además un mecanismo computacional para inferir cambios nuevos o las estructuras que revelan las relaciones evolutivas bajo este modelo enriquecen las distancias evolutivas entre organismos con el costo computacional involucrado en la evolución de las secuencias.. Luego de probar nuestro modelo computacional, usando el costo computacional que nos proporciona como unidad de medida para la construcción de árboles 5.
(3) filogenéticos. Los resultados fueron alentadores ya que, los árboles generados presentaron una estructura coherente al ser cotejada contra árboles generados con otra técnica.. 6.
(4) ÍNDICE DE CONTENIDO. AGRADECl1\1ENTOS.................................................................. RESUMEN ................................................................................ ÍNDICE DE TABLAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... ÍNDICE DE FIGURAS................................................................... Página 4 5 9. 10. Capítulo 1 INTRODUCCIÓN..................................................................... 1.1 Antecedentes ................................................................ . 1.2 Problema planteado ........................................................ . 1.3 Método propuesto ......................................................... . 1.4 Organización del documento ............................................. .. 2 PANORAMA GENERAL DE LA BIOLOGÍA MOLECULAR ............... . 2.1 Introducción ................................................................. . 2.2 El ADN ...................................................................... . 2.3 Genes y proteínas ........................................................... . 2.3.1 Genes ............................................................ .. 2.3.2 Proteínas ........................................................ .. 2.4 Genética .................................................................... .. 2.4.1 Métodos de alineación de secuencias ....................... .. 2.4.2 Tipos de alineación de Pares de secuencia.................. . 2.4.2.1 Matriz de puntos ..................................... . 2.4.2.2 Algoritmos basados en la programación dinámica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... 2.4.2.3 Métodos de K-tuplas.. .. . .. . .. . .. . .. . . . . .. . .. . .. . .. . . 2.4.3 Alineaciones múltiples.......................................... 2.5 Evolución..................................................................... 2.5.1 Arboles filogenéticos............. .... .. ... .... .. ... . .. . .. . .. .... 2.5.2 Generación de árboles, usando distancia entre parejas de secuencias................................................................ 2.5.2.1 UPGMA y Neighbor-Joining.................... ... 2.5.2.2 Parsimonia.............................................. 2.5.2.3 Métodos probabilísticos.............................. 2.5.2.4 Análisis de los métodos.............................. 3 ELEMENTOS DE LA PROGRAMACIÓN CELULAR......................... 3.1 Introducción ................................................................. . 3 .2 Autómatas celulares ........................................................ . 3.2.1 Definición formal. .............................................. . 3.2.2 No-reversibilidad ............................................... . 3.2.3 Tipos de autómatas celulares ................................. .. 3.2.4 Comportamiento de los autómatas celulares ............... .. 3.3 Algoritmos genéticos ...................................................... . 3.3.1 Un algoritmo genético simple .............................. .. 3.3.2 Ventajas........................................................... 3.4 La programación celular................................................... 7. 15 15 15. 16 17 18 18 19 21 21 22 24 24 25 25 26 27 27 28 28 30 31 32 33 33 35 35 35 37 38 38 39 39 40 44 45.
(5) 4 PLANTEAMIENTO Y MODELO USADO ....................................... 46 4.1 Introducción.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... . . .. 46 4.2 Planteamiento de la hipótesis de trabajo ................................. 46 4.3 El proceso de sustitución de nucleótidos ................................. 46 4.3.1 Revisión del modelo de un parámetro........................ 46 4.3.2 Comparación del modelo de un parámetro y el modelo con autómatas celulares ................................................ 49 4.4 Espacio de búsqueda ........................................................ 51 4.5 Justificación ................................................................... 51 4.6 Modelo propuesto............................................................ 52 4.6.1 Diseño del algoritmo genético ................................. 55 4.6.1.1 Representación binaria ............................... 55 4.6.1.2 Función de aptitud.................................... 55 4.6.1.3 Operadores genéticos................................. 56 4.7 Algoritmo general propuesto .............................................. 57 4.8 Ejemplo práctico............................................................ 58 5 EXPERIMENTOS Y RESULTADOS.............................................. 63 5.1 Introducción .................................................................. 63 5.2 Algoritmos utilizados ....................................................... 64 5.3 Selección de especímenes .................................................. 64 5.4 Experimento 1: Secuencias artificiales ................................... 65 5.4.1 Factor de mutación.............................................. 69 5.4.2 Elitismo ............................................................ 69 5.5 Análisis de resultados...................................................... 69 5.5.1 Colisión de reglas................................................ 69 5.5.2 Aptitud escalonada ............................................... 71 5.6 Cambio de estrategia ........................................................ 71 5.6.1 Parámetros usados en la alineación........................... 73 5.7 Experimentos 2: Utilizando mutaciones puntuales (o BNCs) ........ 74 5.7.1 Genomas completos ............................................. 75 5.8 Grupos de posiciones de mutación adyacentes .......................... 77 5.9 Arboles ....................................................................... 82 5.9.1 Más ejemplos de árboles ........................................ 84 6 CONCLUSIONES..................................................................... 85 7 TRABAJOS FUTUROS ............................................................... 87. ANEXO A................................................................................. 89 ANEXO B................................................................................. 91 B.1. Versión que trabaja con configuraciones completas ................... 91 B.2. Versión que trabaja con bases no-concordantes....................... 92 B.3. Versión que trabaja con bases no-concordantes adyacentes ......... 93 REFERENCIAS.......................................................................... 94. 8.
(6) ÍNDICE DE TABLAS. 3.1 3.2 3.3 3.4. 4.1 4.2. Cálculo de aptitud de una población de cromosomas............................... Resultado de girar 4 veces la ruleta para seleccionar a los padres de la siguiente generación..................................................................... Resultados parciales después de aplicar el cruzamiento ............................ Resultados completos donde se presenta la segunda generación y calculo de su aptitud. A partir de aquí volverá a comenzar el ciclo de nuevo ................. 41 42 43 44. Dimensiones del espacio de búsqueda para el problema usando cuatro caracteres. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Conjunto de reglas de transición para el autómata celular......................... 54. 5.1. Resultado de simulaciones con datos artificiales. Donde Pm es la Probabilidad de mutación y Pe es la probabilidad de Cruce....................... 65. 5.2. Se muestran los valores de los parámetros estándar que utiliza el programa de alineación .................................................................................. 73. 5.3 5.4. Resultados de experimentos con genomas completos .............................. 76 Número de iteraciones observadas.. .. .. .. . .. .. .. .. . .. .. .. .. .. .. .. .. .. . .. .. .. . .. .. .. .. 77. 9.
(7) ÍNDICE DE FIGURAS Figuras. Página. 2.1. En esta gráfica se muestra una representación esquemática de la doble cadena de una secuencia de ADN................................... 20. 2.2. Representación esquemática del proceso de replicación conservativo de las cadenas de ADN. (a). Al punto donde comienza la duplicación, se le llama: "origen de la replicación". (b). Los nucleótidos libres se unen a las bases de las cadenas separadas....................................................................... 20. 2.3. (a) En esta gráfica se muestra el proceso de transcripción.(b) Tras ser copiada la información de la cadena de ADN al mARN, Los ribosomas terminan el proceso traduciendo el código y construyendo las cadenas aminoácidos que formarán las proteínas. En la lamina se muestran 2 de ellos. La fenilalamina (Phe) y la valina (Val).................................................................... 23. 2.4. (a). Alineación Global. (b). Alineación local. Cuando una base de una secuencia empata con la base de la otra secuencia, se dice que ha habido una concordancia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 25. 2.5. En este ejemplo minimalista podemos ver que el segmento ATG, que esta sobre la diagonal, es común a las dos secuencias. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26. 2.6. En este ejemplo, mostramos la ruta que eligió el algoritmo y el resultado de la alineación. Los valores que están en las casillas corresponden a los parámetros que manejamos para calcular el puntaje. Aquí, un par de bases que coinciden agrega al puntaje un valor de 5, por el contrario una no-concordancia resta -2. El puntaje total de esta alineación es igual a. 16 .............................................................................. ... 27. 2.7. . 1o de al'meac1on . ' mu'1tlp . 1e ............................................ . EJemp. 28. 2.8. La gráfica presenta un árbol filogenético mostrando la relación evolutiva entre 4 especies: A,B,C y D. Al ancestro común a todos se le llama raíz. Los nodos terminales se conocen como unidades taxonómicas operacionales (en inglés, OTUs). Los nodos internos que se refieren a inferencias de supuestos antecesores, se les suele llamar unidades taxonómicas hipotéticas (en inglés, HTUs) ......... . 29. 2.9. Árbol filogenético construido a partir de la alineación múltiple de las secuencias presentadas en la figura 2.6.......................... ....... 30. 10.
(8) 2.10. Vemos aquí un ejemplo de cómo funciona el algoritmo UPGMA. (a) Se presentan las secuencias como puntos. (b) Se asocian los puntos más cercanos generando un primer nivel. (c) Se agrupan el primer cúmulo y la distancia restante para así, completar el árbol............................................................................. 31. 2.11. La gráfica muestra un ejemplo de árbol generado con el algoritmo de Neighbour-joining.................... .... .. . . .. . . . . .. . .. . . . . .. . .. . .. . . . . . 32. 2.12. En este ejemplo de la parsimonia, que estamos evaluando los cambios ocurridos a la base de la tercera posición de todas las cadenas. (a) Primero, se colocan como hojas del árbol las bases que se quieran comparar. (b) En este primer árbol, vemos que con un solo cambio se puede llegar de una secuencia a otra. (c). En este árbol requerimos 3 cambios para llegar de la secuencia 1 a la. 4.................................................................................. 32. 3.1 3.2. Tabla de transiciones de un autómata celular unidmensional.......... Configuración inicial del autómata celular del ejemplo.................. 36 36. 3.3. Diagrama de tiempo que muestra tres lapsos de tiempo que muestran otras tantas configuraciones sucesivas......................... 36. 3.4. En esta gráfica aparecen representados los conceptos de población, cromosoma, alelo, cruce y mutación........... . . . . . . . . . . . . . . . . . . . . . . . . .... 40. 3.5. En la gráfica aparecen las casillas que le son asignadas a cada miembro de nuestra población.............................................. 42. 3.6. Aquí se describe el procedimiento de cruzamiento para la primera generación...................................................................... 43. 4.1. En la gráfica se muestra una secuencia de ADN y dos descendientes de la misma. (a). Aquí se observa como se suceden 2 sustituciones de la base original. (b ). En este caso, la sucesión de sustituciones regresa al mismo nucleótido por lo que no sabremos que ocurrió. (c) y (d). Podemos observar que ambas secuencias cambiaron hacia la misma base, por lo tanto tampoco aparecerá en una simple inspección comparativa de las dos secuencias. (e). Las cadenas actuales nos muestran solamente dos puntos divergentes así la historia real de sustituciones no ha sido conservada.. . . . . . . . . . . . . . . . .. .. 47. 4.2. En esta gráfica se muestra que la tasa de sustitución para cada nucleótido es . Dado que el modelo sólo tiene este parámetro de allí su nombre..................................................................... 48. 4.3. Dos secuencias de ADN vistas como arreglos para los autómatas celulares........................................................................ 53 11.
(9) 4.4. Diagrama de tiempo para nuestra secuencia-configuración sobre dos lapsos de tiempo............................................................. 54. 4.5. En esta gráfica se muestra la tabla de mapeo(a). Una tabla de reglas (~) . y el proceso de conversión a la representación b1nana.. .. . . . . .. . . . . .. . .. . .. . . . . .. . . . . .. . .. . .. . . . . .. . .. . .. . . . . .. . . . . . . . .. . .. . ... 55. 4.6. Representación esquemática de la mutación (a) y del cruzamiento (b ). en (c) El cruce eligió una posición que dividió un caracter que fue definido por la función de mapeo.. .. . . . . .. . . . . .. . . . . .. . .. . . . . .. . . . . ... 56. 4.7. Algoritmo general propuesto................................................. 4.8. Dos secuencias de ADN representadas como autómatas celulares de modo que, cada nucleótido representa una célula del autómata........................................................................ 59. 4.9. (a) Una tabla de reglas de transición completa para un autómata celular de radio igual a 1, es decir, solo se toma el vecino izquierdo y el derecho. (b) orden en que se toman las reglas para formar el arreglo. (c) El arreglo obtenido de la operación anterior en convertido a una representación binaria, al finalizar esta ya tenemos codificadas las tablas como cromosomas del algoritmo genético. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . .. 60. 58. 4.1 O La primera generación de cromosomas estará constituida de tablas de transición generadas al azar. Nuestra población esta constituida de 3 elementos: (a), (b) y (c)..... .. . .. . .. . .. . .. . .. . . . . .. . .. . . . . . . . .. . .. . .. . . 60. 4.11. (a) Se muestra la configuración inicial sin modificación. (b)Obtención de puntaje de similaridad basado en la distancia de Hamming. (c) Segunda configuración de la primera tabla de reglas. (d) las configuraciones obtenidas con el segundo conjunto de reglas de transición. (e) Las configuraciones generadas con el tercer conjunto de reglas de transición............................................ 61. 4.12. Luego de la selección de los cromosomas con mejor aptitud, cruzarlos con alguna mutación puntual ocasional, obtenemos a la nueva población de cromosomas, es decir, de tablas de reglas de transición que se probarán con la configuración inicial. Se presentan aquí únicamente los valores que devuelve la tabla de transiciones: (a), (b) y (c).. .. . .. . . . . .. . .. . .. . .. . ... . . . .. . .. . .. . . . . .. . .. . . . . . . . . . . ............ 62. 4.13. Aquí se muestran las configuraciones obtenidas de aplicar las reglas de transición de la nueva población a la configuración inicial......... 62. 12.
(10) 5.1. En la gráfica aparece el resultado de una ejecución típica que no 66 alcanzó el valor óptimo, definido aquí como: Esta simulación tiene los siguientes parámetros: Tamaño de secuencia = 1O, radio = 1, iteraciones del autómata celular = 20, número de generaciones = 64 y tamaño del cromosoma = 128 ........ .. 5.2.. La gráfica nos muestra los valores del máximo, el promedio y peor 67 de la generación, el promedio de la corrida actual. Cabe destacar que la progresión de valores no presentan una evolución sino que simplemente brincan del mínimo al máximo, lo que indica que el individuo se localizó por azar (alcanzado aquí en la generación 47). Esta simulación tiene los siguientes parámetros: Tamaño de secuencia = 1O. Radio = 1, Iteraciones del autómata = 20, Número de generaciones = 64, Población = 256 y Tamaño del cromosoma = 128 ......................................................................... · .. ... 5.3.. Ahora, revisemos la siguiente simulación, la cual tiene los 68 parámetros: Tamaño de secuencia = 100, radio = 1. Iteraciones del autómata = 1OO. Número de generaciones = 100, Población = 256 y Tamaño del cromosoma = 128 ............................................ .. 5.4. Descripción de las colisiones................................................. 5.5. (a). Ejemplo de bases no-concordantes. (b). Un par de los autómatas celulares resultantes.......................................................... 72. 5.6. En esta gráfica podemos ver el resultado de 55 simulaciones en segmentos de ADN real de tamaño 100 y radio igual a 1. En la gráfica se agruparon de izquierda a derecha los fragmentos con menor número de BNCs. Como podemos observar en esta etapa entre menor sea el número de BNCs el algoritmo genético es capaz de obtener un conjunto de reglas de transición capaz de resolverlo... 74. 5.7. En esta gráfica podemos ver el resultado de 61 simulaciones en segmentos de ADN real de tamaño 1000 y radio igual a 1............ . 75. 5.8. La simulación de un número de generaciones considerable venía acompañado de un costo computacional muy alto la ejecución de la que se muestra en la gráfica discurrió en un plazo de 72 horas......... 76. 5.9. En esta tabla podemos observar la evolución de nuestro algoritmo genético usando el arreglo de BNCs. Los parámetros de esta corrida son los siguientes: Tamaño de configuración 9,000 bp. Número de BNC 900. Número de generaciones =1000. Población= 512. Número de reglas = 64. Tamaño de cromosoma= 128 y Radio= 1........................ 79. 13. 70.
(11) 5.10. Los parámetros de esta corrida son los siguientes: Tamaño de configuración 9,000 bp. Número de BNC 900. Número de generaciones = 512. Número de reglas = 1024. Tamaño de cromosoma = 2048 y Radio = 2.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... 80. 5.11. Los paramétros de esta corrida son los siguientes: Tamaño de configuración 9,000 bp. Número de BNC 900. Número de generaciones = 512. Número de reglas = 16384 Tamaño de cromosoma= 32768 y Radio = 3........................................... 81. 5.12. El árbol resultante de analizar un conjunto de 1Osecuencias de HIV. Con nuestro segundo algoritmo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..... 82. 5.13. El árbol resultante de analizar un conjunto de 10 secuencias de HIV. Con el paquete informático. ClustalW......................... . . . . . . . . . . .. 83. 5.14. Otro grupo de secuencias analizadas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..... 14. 84.
(12) CAPÍTULO 1. INTRODUCCIÓN. 1.1 Antecedentes. Desde los orígenes de la vida en la tierra, ésta ha evolucionado en las más diversas formas y es hasta tiempos recientes, que hemos empezado a comprender los procesos que permitieron esta diversificación. Desde el inicio de la civilización humana han existido intentos para clasificar a las distintas especies, primero basándose en estudios morfológicos de los organismos.. A mediados del siglo pasado, se descubrió la estructura de las secuencias de ADN, y a partir de allí,. todas las inferencias sobre relaciones evolutivas entre los distintos. organismos se basaron en datos más exactos y diferenciables como lo es la información genética codificada en el ADN. Sin embargo, la cantidad de información recabada aún para los organismos más simples, rebasaba la capacidad de todos los métodos manuales. Por tanto, los biólogos moleculares se apoyaron en la ciencia de la computación. De allí nace una ciencia interdisciplinaria llamada bioinformática.. 1.2 Problema planteado. Al usar secuencias de ADN, un proceso básico para determinar o medir la evolución de estas secuencias, es la sustitución de un nucleótido por otro durante un lapso de tiempo. Para detectar estos cambios necesitamos comparar dos o más secuencias que provengan de un ancestro común y verificar alteraciones en posiciones similares.. Existe una gran cantidad de métodos para modelar este proceso, estos se dividen en dos vertientes: los que se basan en el cálculo de distancias y los que se basan en la revisión de caracteres. En la actualidad se usan versiones híbridas[5][6] que buscan combinar lo mejores de los métodos disponibles.. 15.
(13) Actualmente no existe un modelo computacional formal para modelar estos cambios. Los métodos actuales pueden proporcionarlos un estimado probabilístico de la manera en que se dieron los cambios o en la que se darán, es decir, cual es la probabilidad de que cierto nucleótido sea sustituido por otro.. Cabe destacar que, todos los métodos tienen puntos débiles. Por ejemplo, algunos no pueden lidiar con tasas de sustitución de nucleótidos variables, otros no pueden aplicarse a cantidades relevantes de secuencias sin presentar un problema de explosión combinatoria, etc., de modo que ninguno de ellos puede decirse el mejor para todas las situaciones.. 1.3 Método propuesto. En este trabajo proponemos un método para inferir relaciones evolutivas entre secuencias de ADN basado en la programación celular, la cual combina dos técnicas: los algoritmos genéticos y los autómatas celulares.. Los algoritmos genéticos son métodos de búsqueda que han sido usados ampliamente en muchos ámbitos, incluso la bioinformática. Esto debido a su capacidad de analizar espacios de búsqueda que por sus dimensiones resultan prohibitivos para los métodos tradicionales. Los autómatas celulares vienen a complementar la labor de los algoritmos genéticos proporcionando un modelo computacional para modelar los cambios en las secuencias.. La idea general es modelar a las secuencias de ADN como autómatas celulares, de modo que las mutaciones (sustitución de nucleótidos) son expresadas como consecuencia de la aplicación de reglas locales a los nucleótidos. La idea posee inspiración biológica ya que la manera en que se realizan procesos como la duplicación o la transcripción de secuencias de ADN es por medio de componentes de la célula (ribosomas) que procesan secuencialmente (a veces en forma paralela) las secuencias de ADN en los procesos corno meiosis y expresión de genes.. Las secuencias así modeladas nos pueden proporcionar no solo, un estimado del número de cambios ocurridos sino además un mecanismo computacional para derivar los cambios anteriores o los nuevos en las secuencias. 16.
(14) Luego de probar nuestro modelo computacional, usando el costo computacional que nos proporciona como unidad de medida, para la construcción de árboles filogenéticos, los resultados fueron alentadores ya que, los árboles generados presentaron una estructura coherente al ser cotejada contra árboles generados con la técnica conocida como alineación múltiple en conjunto con el algoritmo para construir árboles filogenéticos, llamado agrupación por vecindad (en inglés, neighbor-joining) que proporciona el paquete informático: CLUSTALW.. 1.4 Organización del documento. Este documento esta organizado de la siguiente manera: En el segundo capitulo presentamos una introducción a la biología molecular y a conceptos biológicos a los cuales se hará referencia, durante todas las secciones. En el tercer capitulo hablamos de los fundamentos de los algoritmos genéticos y de los autómatas celulares. En el cuarto daremos una explicación tanto informal como formal del modelo propuesto, así como la justificación de su uso. Y en el quinto daremos una explicación de los experimentos realizados.. 17.
(15) CAPÍTUL02. PANORAMA GENERAL DE LA BIOLOGÍA MOLECULAR. 2.1 Introducción La biología molecular ha tenido un desarrollo sin paralelo. En las últimas décadas, el cúmulo de información ha sido impresionante. Al principio, el papel que la ciencia de la computación tenía. era. bastante pasivo, se contentaba con registrar y recuperar. la. información obtenida. Esto, debido a que en un principio los científicos estaban más interesados en la recopilación de la mayor cantidad posible de información, que en su interpretación. Aún hoy, no termina esta etapa, pero se hace mayor énfasis en el análisis de los datos biológicos.. Muchos de los problemas que trata la biología molecular, como la alineación de secuencias, la elaboración de filogenias y la construcción de mapas genéticos; por su complejidad, no pueden resolverse manualmente y debido a esto, los biólogos han recurrido a las computadoras.. Además, modelados adecuadamente, esta clase de procesos pueden concebirse como problemas de optimización y por tanto, se pueden aproximar por medio de los métodos estándares de la computación. Para los científicos computacionales esta es una gran área de oportunidad. No sólo porque se pueden estudiar situaciones que involucran capacidades de cómputo enormes, sino que además les brinda la oportunidad de aportar modelos nuevos, tanto de las estructuras como de los procesos involucrados en la biología molecular.. Esta asociación entre la biología molecular y la computación se conoce como bioinformática[S]. Los retos que tiene esta ciencia comprenden el diseño de nuevos modelos biológicos (como ya hemos mencionado anteriormente), el desarrollo de métodos o técnicas que revelen nuevas relaciones entre genes, ADN y proteínas; y por supuesto, la optimización de los procesos existentes.. 18.
(16) Para la mayoría de los científicos computacionales, el primer problema con el que se enfrentan es la falta de conocimiento, tanto de la terminología como de los rudimentos de la biología molecular. Es la intención de este capitulo, dar al lector una base mínima en que apoyarse y además, presentar conceptos que se tratarán en capítulos subsecuentes.. Invitamos, al lector que pretenda entender con mayor detalle a consultar las referencias [1][2][3] que aparecen al final de este documento.. El resto del capítulo esta organizado de la siguiente manera. En la sección 2.2 describiremos la estructura del ADN. En la sección 2.3 presentamos nociones de los genes. La sección 2.4 versa sobre la genética y la sección 2.5 es acerca de la evolución.. 2.2 El ADN. Todas las formas de vida que conocemos en la tierra se construyen a partir de un mapa maestro llamado genoma. Para poder comprender la información contenida en el genoma, es necesario definir el lenguaje usado por la naturaleza para codificar la vida. Los bloques básicos de este lenguaje son las moléculas del ADN.. Un genoma se compone de ácido desoxirribonucleico (ADN), presente en cada célula del organismo y está constituido de dos cadenas de nucleótidos unidas en espiral. Cada nucleótido es una molécula compuesta de un azúcar, un fosfato y un elemento nitrogenado, llamado base. Hay cuatro bases en el ADN; concretamente: adenina (A), timina (T), citosina. (e) y guanina(G).. Las dos cadenas están entrelazadas en forma de una doble hélice, ligadas por sus bases nitrogenadas, formando los llamados pares de bases (bp ). Las bases no se pueden unir de manera arbitraria. Los únicos emparejamientos permitidos son adenina con timina A-T y guanina con Citosina: G-C.. Estos emparejamientos A-T y G-C son la base del concepto de complementariedad, esto es que para tener la forma de doble hélice las dos cadenas se acomodan antiparalelamente (ver 19.
(17) figura 2.1 ). Esta propiedad proporciona al ADN la habilidad de replicarse a sí mismo. Cada vez que una célula se divide y su genoma completo es duplicado, la molécula de ADN se desenrolla y las cadenas se separan. Entonces, los nucleótidos libres que se encuentran en la célula se unen a las bases complementarias de alguna de las cadenas separadas De esta manera, cada célula nueva recibe una cadena nueva y una vieja de ADN. A este modo de replicación se le conoce como "replicación conservativa" (fig 2.2). Existen además, la replicación semiconservativa y la dispersa [28][29].. Figura 2.1En esta gráfica se muestra una representación esquemática de la doble cadena de una secuencia de ADN.. 1 1 _____ ,. Figura 2.2 Representación esquemática del proceso de replicación conservativo de las cadenas de ADN. (a). Al punto donde comienza la duplicación, se le llama: "origen de la replicación". (b). Los nucleótidos libres se unen a las bases de las cadenas separadas.. La complementariedad asegura, hasta cierto punto, que el genoma resultante sea una copia exacta del genoma original. Sin embargo, es posible que se presenten errores. Por ejemplo, que algunas bases presentes se pierdan o se cambien por otras. Estas alteraciones reciben el nombre de mutaciones[28] y pueden afectar radicalmente al organismo resultante y a sus descendientes. (Si los hay, ya que, las mutaciones en ocasiones suelen ser mortales, para el BIBLIOTECA. 20.
(18) organismo que las sufre). En algunos casos pueden ser inofensivas, o como algunas teorías postulan, pueden dirigir la evolución de las especies[24].. Las células de la mayoría de los organismos superiores son diploides. Es decir, su ADN está organizado en parejas de cromosomas. Los dos cromosomas que forman una pareja son llamados homólogos. Los cromosomas vienen en pares debido a que una copia es heredada por el padre y la otra por la madre. Por el contrario, las células de algunos organismos simples, tales como algunas algas unicelulares tienen una sola copia; células de este tipo se denominan haploides.. El genoma está organizado en una colección de cromosomas, cada uno de los cuales contiene un número determinado de genes de los cuales, hablaremos a continuación.. 2.3 Genes y proteínas.. 2.3.1 Genes. Únicamente una pequeña fracción de las cadenas de ADN codifica información útil. Por ejemplo, en los humanos sólo un 10% del total del ADN contiene información que se expresa en características del organismo[28]. Estas regiones que tienen información codificada están organizadas en genes.. Cada gen tiene una o más tareas especificas como por ejemplo, codificar una proteína. Las secciones de la cadena de ADN que conforman los genes son llamadas exones. Asimismo, existen regiones cuya función aún no ha sido determinada y que en apariencia no tienen influencia conocida, se las conoce como intrones.. El gen es la unidad de la herencia. Actuando sólo o con otros genes, es responsable de una o más características de organismos. Para ejemplificar de una manera más clara estos conceptos, supongamos que se tiene una especie de mosca que tiene un gen. Ga. responsable. del color de los ojos y otro gen Gb que determina el tamaño del insecto. Las formas alternativas que puede tomar un gen son llamadas alelos. Por ejemplo, pudiera ser 21. Ga.
(19) e{blanco,. rojo} y Gi,e{grande, enana}. Se llama fenotipo a cada una de las. posibles combinaciones resultantes de estas características. Cuando el contenido actual de ADN determina un fenotipo especifico es llamado genotipo.. Las posiciones especificas donde aparecen los genes en los cromosomas son llamadas loci. En los organismos diploides, por cada gen en un cromosoma hay un gen similar correspondiente en el cromosoma homólogo. Esta redundancia actúa como un mecanismo de defensa contra los defectos; ya que los organismos pueden sobrevivir aún cuando una copia de un gen sea defectuosa. Un par de genes pueden consistir del mismo alelo en ambos cromosomas, en cuyo caso decimos que el organismo es homozigoto o de diferentes alelos, en este caso se denomina heterozigoto.. Por último, hablaremos de los genes recesivos y los genes dominantes. En un organismo heterozigoto, puede darse el caso de que un alelo sea expresado, mientras que el otro se encuentre desactivado. Al rasgo activo se le llama dominante y al último recesivo. Para que un gen dominante sea expresado en un organismo diploide con cromosomas homólogos, se requiere que las dos copias del alelo especifico sean iguales. Regresando a nuestro ejemplo previo, si el genotipo de una mosca para el gen Gi, es (bl aneo,. rojo). Los. descendientes pueden tener las siguientes las combinaciones de alelos:. (blanco,. blanco), (blanco, rojo), (rojo,. blanco), (rojo, rojo). Si el. descendiente tiene como carga genética (rojo, rojo), la mosca tendrá necesariamente, ojos de color rojo.. 2.3.2 Proteínas.. A pesar de la enorme variedad de formas de vida existentes, el mecanismo básico por el cual son desarrollados morfológicamente en la naturaleza es el mismo para todos los organismos. De hecho, toda la información que describe a un organismo está codificada en su genoma a través de secuencias de ADN, conocidas en su conjunto como el código genético. Este código es usado para describir cómo se construyen las proteínas, las cuales proveen los componentes estructurales de las células y tejidos, así como las enzimas necesarias para reacciones bioquímicas esenciales. 22.
(20) El código genético se confonna de tripletes de bases de ADN conocidos también como codones. Y a que hay 4 bases, que se pueden combinar en tripletes, el número de combinaciones resultante es 43 = 64. Debido a que existen muchos aminoácidos codificados por más de un triplete (llamados sinónimos para ese aminoácido), mientras que unos pocos son identificados por un único codón.. Para construir una proteína, el ADN de un gen es primero copiado a una molécula de ácido ribonucleico llamada ARN mensajero (mARN)[l], el cual servirá como una plantilla para la síntesis de la proteína. En este proceso conocido como "transcripción", solamente los exones son copiados, con una particularidad: la base timina es sustituida por otra base, llamada uracilo.. El proceso continua cuando el mARN sale del núcleo y allí los ribosomas [1] leen los tripletes secuencialmente y los traduce a los aminoácidos correspondientes, los cuales unen en una secuencia que dará como resultado a la proteína. A parte de identificar aminoácidos, existen tripletes con la función de identificar el comienzo y el fin de cada región con infonnación codificada. Por ejemplo, estos codones señalan el fin de sección: UGA, UAA, UAG. Figura 2.3. u. u. u. G. A GATA G A T. A6. u. A. C T T G A. ------goPhe-V<ll ______ y[O. e. G G. u u. A. G A. (b). (a). Figura 2.3 (a) En esta gráfica se muestra el proceso de transcripción.(b) Tras ser copiada la infonnación de la cadena de ADN al mARN, Los ribosomas terminan el proceso traduciendo el código y construyendo las cadenas aminoácidos que fonnarán las proteínas. En la lamina se muestran 2 de ellos. La fenilalamina (Phe) y la valina (Val).. 23.
(21) 2.4 Genética.. En la segunda mitad del siglo XIX, el monje austríaco Gregor Mendel realizó las primeras investigaciones sobre la herencia. Mendel cruzó diferentes plantas y observó los rasgos de los descendientes, y conjeturó que los factores hereditarios (genes) debían existir dos por rasgo. Ya en el siglo XX, el descubrimiento y análisis del ADN le dio la razón a Mendel.. El mecanismo que permite la propagación de la información genética de una generación a otra es la reproducción. Existen dos tipos: sexual y asexual [1][2]. Sin embargo, en la base de la reproducción y la herencia hay un proceso llamado meiosis.. En este proceso, una célula diploide se divide primero en dos células haploides, las cuales a su vez vuelven a dividirse dando como resultado que las dos secuencias que conforman cada cromosoma se separen. Tenemos entonces cuatro gametos que contendrán sólo un gen de cada rasgo y los distintos gametos de un mismo padre podrán contener alelos diferentes.. Durante la primera división de las células en el proceso de la meiosis, los cromosomas homólogos pueden romperse y los segmentos rotos de cada par pueden volver a unirse con partes de otros cromosomas homólogos. Este proceso recibe el nombre de· cruce. En consecuencia la combinación de genes que porta la descendencia es diferente a la paterna.. Este intercambio de material genético es un mecanismo importante, ya que produce nuevos genotipos. Este proceso es uno de los pilares de la evolución. Cuando un gameto (célula sexual) del padre se mezcla con un gameto de la madre, la célula resultante es nuevamente diploide y contiene un juego completo de parejas de cromosomas.. 2.4.1 Métodos de alineación de secuencias.. Una de las herramientas más usadas dentro de los estudios evolutivos para determinar relaciones entre pares de secuencias y grupos de ellas, así como para descubrir información estructural o funcional de las mismas, está constituida por los métodos de alineación. En particular, estos métodos son ampliamente usados para construir árboles filogenéticos. 24.
(22) Podemos definir a una alineación de secuencias como el procedimiento que rios permite comparar dos o más secuencias en busca de patrones comunes en las mismas. Hay dos tipos de alineaciones: global y local. En el primero se trata de encontrar el mayor número posible de concordancias entre los elementos de las secuencias. En el segundo, sólo se busca encontrar regiones especificas, donde se encuentre el mayor número de coincidencias. En la figura siguiente (2.4) podemos ver ejemplos de los tipos de alineación. (o). (e). AGATAGAATAC. -CATA---. 1 1 1 1 1 ACCTAGGCGAG. - - - C A T T - - -. 1 1 1. Figura 2.4 (a). Alineación Global. (b). Alineación local. Cuando una base de una secuencia empata con la base de la otra secuencia, se dice que ha habido una concordancia.. 2.4.2 Tipos de alineación de Pares de secuencia.. La lista siguiente no busca ser exhaustiva. Nuestro interés es revisar algunos de los métodos más utilizados: Análisis de matriz de puntos, Algoritmos basados en programación dinámica y métodos de K-tuplas.. 2.4.2.1 Matriz de puntos.. En el método de la matriz de puntos una secuencia SA es colocada en la parte superior de la matriz, siguiendo la horizontal. La otra secuencia S8 se alinea con respecto a la vertical de la matriz. Comenzando con el primer caracter de la secuencia B, se evalúa la secuencia A y el cualquier lugar donde las bases concuerden, se coloca un punto.. Dentro del patrón de puntos dispersos, aparecerán como líneas sobre la diagonal los segmentos similares en ambas secuencias. Figura 2.5.. 25.
(23) AGATG. A. e A T. G. • •. • •• •. Figura 2.5 En este ejemplo minimalista podemos ver que el segmento ATG, que esta sobre la diagonal, es común a las dos secuencias.. 2.4.2.2 Algoritmos basados en la programación dinámica.. Los métodos basados en programación dinámica fueron introducidos pnmero en el algoritmo de Needleman y Wunsch [6] para realizar alineaciones globales, y luego en las locales por Smith y Waterman [6]. La manera en que trabajan es la siguiente: se comienza en la sección final de ambas secuencias y se intenta empatar el mayor número posible de pares de caracteres entre las secuencias, siguiendo un esquema de puntaje definido por el número de concordancias (pares que coincidieron), no-concordancia y huecos. El procedimiento genera entonces una matriz con las posibles alineaciones y se selecciona la ruta entre las casillas de la matriz que devuelvan el mayor puntaje posible.. En el caso de proteínas se han desarrollado matrices con valores estándares basadas en el estudio de algún número representativo de secuencias. Estos valores ayudan a definir el puntaje. Ejemplo de esto son la matriz PAM250[5] y la PAM62[5].. Estos algoritmos se usan de manera generalizada, de hecho, el algoritmo que usamos en este proyecto es uno de ellos, el algoritmo de alineación de pares de secuencias usado es: El GAP (en inglés, Global Alignment Program ). [31]. Una cuestión a considerar en estos algoritmos es el número de pasos que requieren y que generan un esfuerzo computacional considerable. Uno ejemplo de este algoritmo puede verse en la figura 2.6.. 26.
(24) A. G. A. 5. e. -2 -2 -2. T T A. 5. A. T. A. G. A. T. 1. e. T. T. A. A. ......... -2 ... '"-¡ 5 -2 -2 r -2 • -2 -2 -2 '.._ 5 -2 -2 1 5 " 5 -2 -2 ". 1. 5. -2 -2 -2 5. A 1. A. Figura 2.6 En este ejemplo, mostramos la ruta que eligió el algoritmo y el resultado de la alineación. Los valores que están en las casillas corresponden a los parámetros que manejamos para calcular el pontaje. Aquí, un par de bases que coinciden agrega al pontaje un valor de 5, por el contrario una noconcordancia resta -2. El pontaje total de esta alineación es igual a 16.. 2.4.2.3 Métodos de K-tuplas.. Si deseáramos hacer un estudio comparativo de un número considerable de secuencias, todos los métodos se verían abatidos por el incremento exponencial del costo computacional involucrado en la tarea. Estos métodos primordialmente, buscan K-tuplas idénticas de tamaño reducido en las secuencias y después, usando programación dinámica unen estas tuplas y generan la alineación. Además se incluye el uso de heurísticas, lo cual acelera el proceso pero no garantiza alcanzar valores óptimos de alineación.. 2.4.3 Alineaciones múltiples.. Básicamente, en un alineamiento múltiple, varias secuencias se acomodan una bajo la otra, para construir una tabla de modo que es más fácil observar las regiones comunes que aparecen más conservadas y las divergentes.. Supóngase que las secuencias 81= CTGC, 82= CATAT,. 83= CTAT. y 84= CTGC,. son usadas en una alineación múltiple. La información que nos proporciona la alineación sugiere que: S 1 y 8 4 están relacionadas de manera cercana, ya que presentan un mayor 27.
(25) número de caracteres coincidentes que si se asocian a otra cadena. Lo mismo ocurre con las secuencias. y 8 3 . Figura 2.7.. 82. 81: 82:. 83: 84:. e e A e e -. T T T T. -. G. e. - - - G e. A A. -. T T -. Figura 2.7 Ejemplo de alineación múltiple.. Las alineaciones múltiples se suelen implementar con programación dinámica; siendo ésta una generalización del caso de pares de secuencias.. 2.5 Evolución.. La evolución es el proceso que resulta de aplicar la selección natural 1 a una población de genes. En un punto medio, la selección inducirá una especialización de los miembros de una población, de modo que estén completamente adaptados a su medio ambiente. La especialización llevada al extremo por condiciones como el aislamiento, puede dar como resultado la divergencia de la especie en dos o más, nuevas especies.. Dentro de la genética (específicamente, la genética evolutiva). Se estudian los cambios que han sufrido los genes a lo largo de grandes periodos de tiempo. La principal estructura de información usada para representar relaciones evolutivas es el árbol filogenético.. 2.5.1 Arboles filogenéticos. Los árboles filogenéticos son diagramas que muestran las relaciones evolutivas entre organismos (existentes o extintos). Estas relaciones han sido determinadas usando sus características morfológicas y bioquímicas desde tiempos de Darwin[8]. Sin embargo, en la. 1. Después de su viaje en el velero Beagle por los años 30 del siglo XIX, Charles Darwin trabajó en el problema de la evolución de las especies y llegó a la conclusión de que el motor de la misma es la selección natural. No pudo, sin embargo, explicar como se conservaban las características en la población ni cómo se heredaban las mejores a la descendencia.. 28.
(26) actualidad los árboles filogenéticos son derivados comúnmente de secuencias de ADN y proteínas [6][7]. Ver figura 2.8.. Así que, para estudiar los cambios ocurridos durante la divergencia desde un ancestro común, se estudian las diferencias entre secuencias provocadas por tres posibles operaciones genéticas:. a. Sustitución. En este proceso de alteración una base de una secuencia es reemplazada por otra. b. Inserción. En este proceso se agregan bases a la secuencia biológica en cualquier posición de la secuencia. c. Eliminación. En este proceso se eliminan bases a la secuencia biológica en cualquier posición de la secuencia.. Por ejemplo, a partir de dos secuencias muy similares entre sí, salvo que al final de una de ellas tiene una base que no aparece en la otra, podemos inferir que esta alteración es ya sea una inserción de nuevas características, lo que la hace una secuencia más reciente, o una eliminación de la misma base debido a cambios en el entorno que declinaron su utilidad.. A. @HTU. eon, B. Ralz. e D. Figura 2.8 La gráfica presenta un árbol filogenético mostrando la relación evolutiva entre 4 especies: A,B,C y D. Al ancestro común a todos se le llama raíz. Los nodos tenninales se conocen como unidades taxonómicas operacionales (en inglés, OTUs). Los nodos internos que se refieren a inferencias de supuestos antecesores, se les suele llamar unidades taxonómicas hipotéticas (en inglés, HTUs).. 29.
(27) Por lo general, los árboles se construyen analizando regiones especificas del ADN de las secuencias bajo estudio, por ejemplo, un gen común. Para comparar las cadenas y entender las mutaciones que pudieron haber ocurrido, se utiliza regularmente (pero no de manera exclusiva) una alineación múltiple.. Un posible árbol resultante de la alineación presentada en la figura 2.6, sería el que aparece en la figura siguiente:. .. ,,. I. '. '. ''. . '. ,. .. ''. '. . '. ...'.. .'. ... .. ''. ''. '. '. '. '. . '. , S1. ... '. '. '. ... .... .... .' s.. I. .. .. '. Figura 2.9 Árbol filogenético construido a partir de la alineación múltiple de las secuencias presentadas en la figura 2.6.. Además de la alineación múltiple, la bibliografia existente habla de varios métodos para inferir árboles filogenéticos usando alineaciones de pares de secuencias. Antes de pasar a estos métodos, conviene señalar que, aunque la alineación múltiple parece ser la opción obvia para analizar grupos de secuencias, está no es aplicable a grandes cantidades de las mismas, debido a que su complejidad computacional es muy grande ya que tiene un crecimiento exponencial.. 2.5.2 Generación de árboles, usando distancia entre parejas de secuencias.. Estos métodos se basan en el cálculo de distancias entre pares de secuencias. de un. conjunto de datos dado. La distancia se puede definir de muchas maneras, por ejemplo, uno puede definirla como el porcentaje en que difieren las bases de una secuencia a otra.. 30.
(28) 2.5.2.1 UPGMA Y Neighbor-Joining. Un par de técnicas desarrolladas basadas en esta idea son las técnicas de cúmulos (en inglés, c/usters) UPGMA y Neighbour-joining [6]. En la primera, se construye el árbol en forma ascendente. Primero se asocian las dos secuencias más cercanas y continua así hasta que se termina con los pares, luego se comienza asociar los cúmulos entre sí. Una ventaja de este método es que nos permite crear árboles con raíz, de modo que podemos localizar una secuencia ancestro de todas las demás. Adicionalmente, nos da la posibilidad de visualizar un "reloj molecular", esto es, que las distancias nos pueden permitir inferir los periodos en que se desarrollaron estas secuencias. (Figura 2.1 O).. En la segunda, se aprovecha una propiedad de los árboles que explicaremos a continuación. En un árbol dado, la longitud de sus bordes se dice que es aditiva si la distancia entre cualquier par de hojas es la suma de las longitudes de los bordes en la ruta que los conecta. Usando esta técnica se pueden generar árboles que no tienen raíz. (Figura 2.11).. Cabe señalar que estos métodos pueden fácilmente generar árboles incorrectos, ya que manejan varios supuestos, como que en promedio, los cambios que ocurren en las proteínas tiene un crecimiento constante. Lo cual no es cierto o al menos, es dificil de comprobarlo .. •1. • •3. 1. • 3•. 2. r+l. 1. 5. 2. 4. 1. (a). (b). 2 3 (e). Figura 2.10 Vemos aquí un ejemplo de cómo funciona el algoritmo UPGMA. (a) Se presentan las secuencias como puntos. (b) Se asocian los puntos más cercanos generando un primer nivel. (c) Se agrupan el primer cúmulo y la distancia restante para así, completar el árbol. 31.
(29) 4 1. 5. 2. 3. Figura 2.11 La gráfica muestra un ejemplo de árbol generado con el algoritmo de. Neighbour-joining.. 2.5.2.2 Parsimonia.. Esta familia de métodos es probablemente una de las más usadas para generar árboles filogenéticos. La idea en que se basan, se refiere a encontrar el árbol que pueda "conectar" a las secuencias con un mínimo de sustituciones. En este método, en lugar de construir un sólo árbol, se construyen varios asignándoles un costo. El algoritmo tratará de minimizar ese costo y nos dará como resultado el árbol buscado[6]. Figura 2.12.. (a). --, J 2. 3 4. AG:A:TA AT~:TA 1 1 G A TA G A~ A. :or:. :e :_.!. (b). 1. 3. 2>--<4 (e) A. T. A~T. Figura 2.12 En este ejemplo de la parsimonia, que estamos evaluando los cambios ocurridos a la base de la tercera posición de todas las cadenas. (a) Primero, se colocan como hojas del árbol las bases que se quieran comparar. (b) En este primer árbol, vemos que con un solo cambio se puede llegar de una secuencia a otra. (c). En este árbol requerimos 3 cambios para llegar de la secuencia 1 a la 4.. 32.
(30) 2.5.2.3 Métodos probabilísticos.. En los últimos años se da dado gran impulso a los métodos probabilísticos para encontrar filogenias, esto partiendo del supuesto de que los cambios no pueden ser puntuales, es decir, que los cambios que han sufrido las secuencias a través del tiempo se deben medir de acuerdo a un factor probabilístico. Por ejemplo: la probabilidad de que la pareja de bases AC halla sido sustituida por AT.. Con respecto. a los árboles filogenéticos, el método general habla de definir una. probabilidad para cada árbol de acuerdo a su semejanza entre sí. Algunos de los métodos definidos para usar estas técnicas son las cadenas ocultas de Markov (HMM por sus siglas en inglés)[6], redes neuronales[15] y redes de creencias[6].. Estos métodos están idealmente ajustados para dominios caracterizados por la presencia de grandes cantidades de datos, patrones con ruido y la ausencia de teorías generales. La idea fundamental detrás de estos enfoques es "aprender la teoría automáticamente a partir de los datos"; a través de un proceso de inferencia, ajuste del modelo y aprendizaje a partir de ejemplos. De modo que constituyen un enfoque complementario viable a los métodos convencionales.. 2.5.2.4 Análisis de los métodos. Los métodos antes mencionados tienen tanto ventajas como desventajas, las cuales comentaremos a continuación. El método UPGMA como hemos mencionado antes, no puede manejar tasas distintas de sustitución de nucleótidos y al realizar promedios para asociar a los cúmulos irá perdiendo precisión. Al método Neighbor-Joining no le preocupan las tasas de crecimiento distintas, pero depende para la construcción del árbol que se cumpla la propiedad de adición [6]. La parsimonia no sirve más que para un grupo muy reducido de secuencias ya que el método es muy costoso computacionalmente, ya que no sólo genera un árbol sino un grupo de ellos que ira descartando progresivamente. Por último los métodos probabilísticos aunque menos costosos que la parsimonia, suelen manejar demasiados supuestos lo cual compromete su efectividad. 33.
(31) Nuestro método es un enfoque a medio camino de los métodos de distancia y la parsimonia, pero con un costo computacional mucho menos elevado. Además, nos permite caracterizar el proceso de sustitución de nucleótidos, es decir, devolverá el posible siguiente valor. Lo cual justifica el desarrollo de este proyecto, porque propone una alternativa menos costosa y que aporta nuevos datos.. 34.
(32) CAPÍTUL03. ELEMENTOS DE LA PROGRAMACIÓN CELULAR. 3.1 Introducción. En este capitulo, introduciremos los conceptos del modelo de autómata celular, especialmente los autómatas celulares unidimensionales; luego hablaremos de los algoritmos genéticos y por último de la programación celular. Al igual que en el capítulo anterior, la intención de este es servir de introducción al lector respecto a estos modelos y/o técnicas usados en este trabajo; sin la intención de ser exhaustiva pero sí, suficiente.. 3.2 Autómatas celulares. Los autómatas celulares son modelos matemáticos de sistemas fisicos en los cuales espacio y tiempo son discretos. Un autómata celular está constituido por un arreglo usualmente infinito en su extensión con una variable discreta en cada casilla (célula). El estado (o configuración) de un autómata celular lo especifican los valores de las variables en cada célula. Un autómata celular "evoluciona" en pasos discretos de tiempo. El valor de una célula depende de interacciones locales con las células vecinas en un paso previo de tiempo, es decir, cambia de valor de acuerdo a los valores de las células más próximas. Los autómatas celulares pueden ser de una o más dimensiones.. Los elementos que conforman a un autómata celular son:. a. Estado. Es el conjunto de valores que toman las células en un punto dado. b. Vecindad o radio. Es el conjunto de celdas que interactúan entre sí. c. Reglas. Es el conjunto de condiciones de definen como cambiará una celda de acuerdo a sus vecinos. d. Configuración. Es el conjunto de valores que en un intervalo de tiempo dado presentan la colectividad de células (también llamadas, celdas).. 35.
(33) Veamos ahora un ejemplo sencillo de un autómata celular unidimensional, definido de la siguiente manera:. Posibles estados:. {0,1}. Radio:. 1. (Esto quiere decir que, se considerará una célula a la izquierda y una, a la derecha). Reglas: lzq-Centro-Der Salida. 000. 001. 010. 011. 100. 101. 110. 111. O. 1. 1. O. 1. 1. o. o. Figura 3.1 Tabla de transiciones de un autómata celular unidimensional.. El número de reglas depende de la vecindad o radio que se utilice, en este caso radio. =. 1.. El número de reglas a usar es: 22r+i = 220 >+ 1 = 8 . Donde r =radio.. Utilizaremos como ejemplo un autómata celular de una dimensión[16]. Para mostrar su evolución durante un tiempo finito, se utilizan los denominados diagramas de tiempo. Estos diagramas van colocándose, una bajo la otra, copias del "arreglo" mostrando como se ven afectadas sus células por la aplicación de las reglas definidas para controlarlo, en cada paso de tiempo.. Definimos una configuración inicial del Autómata celular de la siguiente forma:. O 1111. O. 1. 1. o. Figura 3.2 Configuración inicial del autómata celular del ejemplo.. Ahora mostraremos sus cambios respecto al tiempo cada que se aplicaron las reglas que definimos previamente.. o o o o o 1 o o 1 1 1 1 1 o ... ... ... ... ... 1. 1. o. o. 1. 1. 1. 1. o. o o 1 . .. ... ... ... o. Figura 3.3 Diagrama de tiempo que muestra tres lapsos de tiempo que muestran otras tantas configuraciones sucesivas. 36.
(34) Los autómatas celulares fueron introducidos originalmente por Von Newman y Ulam (bajo el nombre de espacios celulares) como una posible idealización de los sistemas biológicos (Von Newman 1963, 1966), con el propósito particular de modelar la auto reproducción biológica[ 16].. 3.2.1 Definición formal. Ahora, proporcionaremos una descripción formal de los autómatas celulares. Dado que trabajaremos con autómatas unidimensionales, nos centraremos en estos.. Un autómata celular lineal puede definirse como una tupla, AC= (A,E,r,f) Donde,. A. Es un arreglo de m celdas de d dimensiones m ~ 1, d. E= {0,1, ... ,k -1}. Es el conjunto de estados que puede tener una celda.. reN. Es el radio de la vecindad.. f. Es la función de transición local.. :E2r+1 ~E. ~. 1. Una configuración de un autómata celular es una función que especifica el estado de cada celda. x :Z. ~. E. y. puede. ser. representada. como. una. secuencia. infinita. x =(... ,x;-n, ... ,x;, .. ,,x;+n' ... ). De modo que el espacio de configuraciones del autómata celular es Ez. La vecindad de la celda i e Z es el vector (i - r, ... ,i, ... ,i + r). La función de transición global del autómata celular, G : Ez ~ Ez, especifica el estado siguiente de cada celda de acuerdo a la función local aplicada a los estados de las celdas en la vecindad (Vi E Z): G;(x) = f(x;-r, .. ,,X¡, .. ,,X;+r).. Cada celda x e A cambia su estado en un periodo de tiempo discreto, agregado la variable ta la función global tenemos:. a:= f(x;~;, ... ,x;-. 1. , .... ,x;;;). donde te {l,2,3, ... ,N}. 37.
(35) Una última consideración es que, si manejamos un arreglo de celda de tamaño finito, el arreglo se puede ver como un arreglo toroidal. Tenemos entonces, que para calcular la vecindad:. Si i = m -1 entonces,. X;+i. =. x0;. Si i = O entonces,. X;_ 1. =. xm-i. Nota: Z ={0,1,2,3, .... }. 3.2.2 No-reversibilidad. Los autómatas celulares despliegan una cantidad n de configuraciones donde n e Z. Usando las reglas del mismo, podemos determinar unívocamente el siguiente paso de una celda en particular. Sin embargo, lo mismo no se aplica a su historial, es decir, no podemos determinar los pasos anteriores que determinaron el estado actual de la celda, a menos que se trate de un caso trivial. A esta limitación se le conoce como no-reversibilidad.. 3.2.3 Tipos de autómatas celulares. Nos hemos centrado en autómatas celulares de una dimensión, pero de hecho, los autómatas celulares pueden ser de 2 o más dimensiones. El conocido juego de la vida de Conway esta construido usando como base una matriz de n x n donde n E Z es un autómata celular de dos dimensiones[ 16].. Otra clase de autómatas celulares que difieren de la definición clásica, la constituyen los autómatas asíncronos. Estos comparten todas las características de los autómatas ya descritos excepto que, el colectivo de celdas no cambia de valor en un mismo lapso de tiempo.. Por último, mencionaremos a los autómatas celulares no-uniformes. Estos en lugar de utilizar una regla universal (que aplique a todas las celdas), se define un conjunto de reglas. 38.
(36) para cada una de las celdas. Esto incrementa el esfuerzo computacional considerablemente, pero se ha probado que este tipo de autómatas celulares es capaz de computo universal [20].. 3.2.4 Comportamiento de los autómatas celulares. Los autómatas celulares presentan un comportamiento bastante complejo y fuera de los casos triviales es muy dificil determinar el comportamiento que presentarán. En algunos casos simplemente se llega a un estado estable donde ya no ha cambio alguno en la estructura del autómata. En otros casos se presenta un comportamiento cíclico, donde el autómata celular transita por un conjunto de configuraciones, una y otra vez. Por último hay algunos autómatas que presentan comportamientos totalmente caóticos o casi-caóticos.. No sabemos aún como producir estos comportamientos a voluntad de modo que, diseñar que un autómata celular para que reproduzca un comportamiento es muy dificil.. 3.3 Algoritmos genéticos. Durante los años cincuentas y sesentas del siglo pasado, investigadores del área de computación, de manera independiente, se interesaron en los mecanismos que gobiernan la evolución en los seres vivos. El interés fundamental fue construir modelos computacionales que sirvieran para desarrollar nuevos métodos de optimización.. Aún y cuando varios científicos trabajaron en varias clases de algoritmos que incluían técnicas evolutivas, fue John Holland quien definió un esquema que incluían los elementos básicos de la selección natural y la genética. Sus descubrimientos fueron descritos en 1975[23]. Fue un alumno de Holland, David Goldberg, quien los aplicó exitosamente a un problema del mundo real: la optimización de líneas de distribución de gas natural[19].. Hoy día, los algoritmos genéticos se utilizan en casi todos los ámbitos de resolución de problemas. Desde aplicaciones en ingeniería[19], economía[19], sistemas sociales y en un curioso giro, para estudiar e interpretar los datos provenientes de los estudios genéticos[30].. 39.
(37) 3.3.1 Un algoritmo genético simple. Aunque pueden vanar, todo algoritmo genético contempla -al menos- los siguientes elementos:. 1. Una población de cromosomas que generalmente se representan por medio de un conjunto de cadenas de caracteres binarios de longitud fija.. 2. La selección, escoge a los cromosomas más aptos para cruzarlos. Cada cromosoma es evaluado por una función de aptitud que determina su desempeño en la resolución de un problema.. 3. La operación de cruzamiento es la combinación de una o más porciones de dos cromosomas para producir nuevos descendientes.. 4. Ocasionalmente, puede darse alguna mutación entre los descendientes. Esta operación se refiere al cambio esporádico de uno o más alelos de los cromosomas que intervinieron en el cruce.. En la figura siguiente aparecen de manera esquemática, algunos de los elementos de un algoritmo genético. Figura 3.4.. Pobladón. Operación de cruce Secuencia A. 1 1. :. 1 1 1 1 1 1 1 1. !111. 1----------------------,L....L....,..L-'-..L-.L.......1---'----'--' ____ ----------- ------. ••••••••. Gen o alelo. Descendiente A'. 1 1 I. Cromosoma. Operación de 1nutadón. Locl. 1 1 1 1 ,---, 1. 1. 1. 1. 1 :1 1:1 1 1 1. 1 1. 1. 'J-'. M11tación p11nt11al. 111111 • • • Dc:scc11dlie11tc B' 11111. l l •. 111. •••. Figura 3.4 En esta gráfica aparecen representados los conceptos de población, cromosoma, alelo, cruce y mutación. 40.
(38) Ahora, revisemos el algoritmo genético simple, pero para hacerlo de manera más explícita trabajaremos un problema específico que ayude a clarificar los conceptos. Supóngase que deseamos optimizar la función Max(x) cuyo único propósito es encontrar el valor más grande dex, codificado en base 2.. a. Iniciamos generando una población aleatoria de cuatro cromosomas de longitud 1O. Y calculamos su aptitud.. # 1 2 3 4. Cromosomas 0010010110 0101010011 0000011001 0001000011. Aptitud 150 339 25. f (x). 67 L= 581 X= 145.25. % del total. 25.81 58.34 4.30 11.53 100. Tabla 3.1 Cálculo de aptitud de una población de cromosomas.. El proceso de selección escogerá a los individuos más aptos para reproducirlos. La manera en que se elige a los cromosomas y qué tantas veces se reproducirá, depende del método de selección usado. Aquí usaremos el popular método de la ruleta descrito por Goldberg [19].. En este método, se le asignan espacios de una ruleta a cada cromosoma (selección proporcional a la aptitud) de acuerdo a su porcentaje de contribución respecto al total de la función de aptitud. Luego, cada vez que necesitemos seleccionar un padre para reproducción, simplemente se hace girar la ruleta. En este esquema, aún cuando algunos miembros de la población cuentan con mayor número de casillas, es probable que debido al factor aleatorio de la elección se elijan padres con menor aptitud, permitiendo una buena diversidad genética. Para nuestro ejemplo, la ruleta de esta primera generación se puede ver en la figura 3.5.. 41.
(39) Figura 3.5 En la gráfica aparecen las casillas que le son asignadas a cada miembro de nuestra población.. Giramos la ruleta 4 veces y obtenemos la siguiente selección de progenitores: # 1 2 3 4. Cromosomas 0010010110 0101010011 0000011001 0010010010. Aptitud 150 339 25 146. f (x). Selección 1 2. o 1. Tabla 3.2 Resultado de girar 4 veces la ruleta para seleccionar a los padres de la siguiente generación.. Al igual que en otros métodos de búsqueda, una temprana selección de valores demasiado altos, puede conducir a óptimos locales, por lo que es mejor usar métodos que nos permitan dar oportunidad a otros miembros de la población, aparentemente menos aptos [19][30].. b. Para crear una nueva generación, se escogerá de manera consecutiva pares de cromosomas hasta completar el total de la población. Para este ejemplo, simplificado en extremo, no consideramos la posibilidad de poblaciones superpuestas, es decir, ningún individuo de la generación previa sobrevivirá.. Por la operación de selección tenemos que la cadena 2 y la cadena 1 son las cadenas previamente escogidas para cruzar. Entonces, el operador de cruzamiento seleccionará un punto de cruce y combinará los cromosomas. La selección de este punto (o puntos de cruzamiento) es un proceso aleatorio, el cual nuevamente refuerza la diversidad de la población. Supongamos, que se elige al azar como punto de cruce la posición 4 de derecha a izquierda.. 42.
(40) Punto de Cruzamiento = 4. 1. 001001b110. 1. 1 1. 1010101~011 1 Produce los descendientes siguientes: # 5 6. 1 1 1 1. Cromosomas 0010010011 0101010110. Aptitud f(x). 147 342. Seleccionaremos ahora la cadena 2 y la 4 y se cruzan. Nuevo punto de Cruzamiento. 1. 0101p10011. 1. 1 1. 10010p100101 1 1. Figura 3.6 Aquí se describe el procedimiento de cruzamiento para la primera generación.. La función de la mutación es producir nuevos puntos a evaluar en el espacio de búsqueda. Supongamos que el alelo 1O, de izquierda a derecha del cromosoma 2 cambia (muta) de 1 a O, el cromosoma entonces seria 0101010010.. Produce los descendientes siguientes: #. 7 8. Cromosomas Aptitud f(x) 0101010010 338 0010010010 146. Tabla 3.3 Resultados parciales después de aplicar el cruzamiento.. 43.
Figure
Documento similar
El nuevo Decreto reforzaba el poder militar al asumir el Comandante General del Reino Tserclaes de Tilly todos los poderes –militar, político, económico y gubernativo–; ampliaba
Sanz (Universidad Carlos III-IUNE): "El papel de las fuentes de datos en los ranking nacionales de universidades".. Reuniones científicas 75 Los días 12 y 13 de noviembre
(Banco de España) Mancebo, Pascual (U. de Alicante) Marco, Mariluz (U. de València) Marhuenda, Francisco (U. de Alicante) Marhuenda, Joaquín (U. de Alicante) Marquerie,
The part I assessment is coordinated involving all MSCs and led by the RMS who prepares a draft assessment report, sends the request for information (RFI) with considerations,
d) que haya «identidad de órgano» (con identidad de Sala y Sección); e) que haya alteridad, es decir, que las sentencias aportadas sean de persona distinta a la recurrente, e) que
La siguiente y última ampliación en la Sala de Millones fue a finales de los años sesenta cuando Carlos III habilitó la sexta plaza para las ciudades con voto en Cortes de
Ciaurriz quien, durante su primer arlo de estancia en Loyola 40 , catalogó sus fondos siguiendo la división previa a la que nos hemos referido; y si esta labor fue de
información que el individuo puede procesar por su sistema nervioso, y los factores relacionados van a influir en las habilidades y destrezas sociales, que pondrá al uso al