¿Qué algoritmos se utilizan para construir árboles filogenéticos?

Hay varios algoritmos utilizados para inferir árboles filogenéticos, pero los algoritmos más utilizados se dividen en tres categorías principales:

  1. Los algoritmos de distancia utilizan una métrica de distancia relevante (distancia de Hamming, identidad de 1 secuencia, nivel de expresión, etc.) para construir una matriz que muestre la distancia por pares entre todos los organismos / genes en un conjunto de datos. Esta matriz se usa para construir un árbol, con organismos / genes que aparecen en los nodos terminales (puntas), de modo que la distancia entre las puntas en el árbol es igual (o al menos cercana) a la distancia entre los organismos / genes en el matriz. Un ejemplo de esto es el algoritmo de unión de vecinos. Los algoritmos de distancia son superados por otros métodos en términos o precisión (deduciendo la filogenia * verdadera *), pero los investigadores todavía los emplean hoy porque funcionan rápidamente y pueden usarse como punto de partida para otros algoritmos de “refinamiento” (por ejemplo, máxima verosimilitud).
  2. Los algoritmos de parsimonia máxima intentan encontrar árboles con la puntuación de parsimonia más alta para un conjunto de datos dado. Si el conjunto de datos es una alineación de secuencia, entonces el árbol de parsimonia máxima es el que nos permite producir todas las secuencias en la alineación a partir de una única secuencia ancestral en la raíz de dicho árbol utilizando el menor número de mutaciones individuales . (Es importante destacar que puede haber múltiples árboles de parsimonia máxima para el mismo conjunto de datos). Una desventaja de este método es que es inconsistente (infiere fuertemente el árbol * incorrecto *) bajo ciertas condiciones, es decir, al comparar organismos / genes de genes altamente divergentes linajes (un problema conocido como “atracción de rama larga”).
  3. Los algoritmos de probabilidad vienen en dos sabores distintos: 1) probabilidad máxima y 2) inferencia bayesiana. Ambos enfoques implican calcular la “probabilidad” de filogenias (es decir, la probabilidad de observar la alineación de su secuencia dado que las secuencias evolucionaron a lo largo de un árbol específico de acuerdo con un modelo de evolución), y se usan casi exclusivamente en conjuntos de datos moleculares (modelos morfológicos de evolución son a menudo demasiado difíciles de producir).
    • Los algoritmos de máxima verosimilitud (ML) suelen emplear una estrategia de “escalada”:
      • 1) Calcule la probabilidad de un árbol inicial, T1.
      • 2) Calcule la probabilidad de todos los árboles en el “vecindario” de T1 (Tn), es decir, todos los árboles que pueden transformarse en T1 mediante una modificación de un solo paso (generalmente un intercambio vecino más cercano).
      • 3) Si T1 tiene la mayor probabilidad en ({T1} [matemáticas] \ cup [/ matemáticas] {Tn}), entonces devuelve T1. De lo contrario, si Ti [matemática] \ en [/ matemática] Tn tiene una probabilidad más alta que T1, configure T1 = Ti y vuelva a “1)”.
      • (Para un ejemplo de no escalada, ver GARLI, que utiliza un algoritmo genético).
    • Los programas de inferencia bayesiana (BI) usan un algoritmo de la cadena de Markov Monte-Carlo (MCMC) para estimar la distribución posterior de filogenias mediante el muestreo de árboles en proporción a su probabilidad (es decir, los árboles de alta probabilidad se encuentran en la cadena con mayor frecuencia) a través de una metrópoli -Hastings paso. La cadena resultante se puede resumir en un árbol de consenso de reglas mayoritarias hecho de particiones compatibles (“divisiones”) que se encuentran entre los árboles de la cadena.

* Es importante destacar que ninguno de estos métodos está garantizado para producir la verdadera filogenia (la verdadera historia evolutiva del conjunto de datos). Además, a excepción de las alineaciones trivialmente pequeñas, ni siquiera se garantiza que los algoritmos de máxima probabilidad encuentren el árbol de máxima probabilidad. Sin embargo, las aplicaciones de ML y BI tienden a funcionar muy bien y son robustas frente a muchos de los problemas de consistencia que sufren los algoritmos de distancia y parsimonia.

Espero que ayude.

En general, los árboles filogenéticos no se forman utilizando métodos computacionales; Sin embargo, esto ha estado cambiando. Actualmente, los 3 conceptos algorítmicos principales involucrados son la parsimonia, la máxima verosimilitud y la inferencia bayesiana.

La parsimonia es esencialmente solo elegir el árbol que involucra el nodo más bajo y la complejidad del clado (la distancia más corta)

La máxima verosimilitud y la inferencia bayesiana usan un árbol de entrada combinado con otros datos (alineaciones, morfología, etc.) para crear una distribución posterior (un conjunto de probabilidades de que diferentes árboles filogenéticos sean correctos)

Otra cosa a tener en cuenta es cómo entra en juego el modelo Markov Monte Carlo Chain, pero eso es para otro momento.

El uso de modelos matemáticos hace suposiciones, a menudo aquellas que son matemáticamente convenientes y se supone que son lo suficientemente cercanas. Un ejemplo es el modelo de precios de opciones de Black Scholes increíblemente útil utilizado en Wall Street todo el tiempo en varias formas. Ahora los comerciantes saben muy bien que el modelo no representa la realidad, SABEN que los precios de las acciones no siempre son aleatorios, sino que tienen varios patrones … pero los modelos siguen siendo útiles para quienes conocen los entresijos. En biología evolutiva aún no han llegado a ese punto … en realidad piensan que las suposiciones en los modelos (como las mutaciones aleatorias) son ciertas … desconfían de las construcciones matemáticas en biología … los sistemas biológicos son inteligentes y no de naturaleza aleatoria.


Espero que ayude

More Interesting

¿Qué es un algoritmo de hashing seguro?

Cómo construir un gráfico si se proporciona el recorrido DFS y el recorrido BFS

¿Desarrolla algoritmos comerciales después de volver a probar los datos históricos? ¿O debería buscar a través de datos históricos patrones utilizando un algoritmo?

Si solo pudieras usar un algoritmo de Machine Learning para el resto de tu vida, ¿cuál sería?

¿Cómo se puede usar un algoritmo genético para clasificar las soluciones candidatas?

¿Cuál es la mejor manera de escribir un programa Java que pueda encontrar la derivada de una ecuación a partir de una cadena?

¿Existe un algoritmo más rápido que O (kn ^ 2) para calcular las rutas más cortas k-step de una sola fuente en un gráfico ponderado?

¿Por qué las personas usan mid = low + (high-low) / 2 en lugar de (low + high) / 2?

¿Hay alguien que enseñe estructuras de datos y algoritmos aquí en Hyderabad?

¿Cuál es el propósito del binario?

¿Cuáles son las diferencias entre algoritmos y pseudocódigo?

¿Qué se siente al resolver bien los problemas de programación dinámica?

¿Hay alguna manera de extraer la palabra principal de una lista de sinónimos que representa la lista?

¿Cuáles son los usos del algoritmo simplex en la programación competitiva? He visto muchos equipos superiores con el algoritmo simplex en sus cuadernos de equipo. ¿Hay algunos lugares específicos donde se puede usar simplex?

¿Puedo encontrar el camino hamiltoniano más corto en un gráfico completo ponderado no dirigido en tiempo polinómico (donde todos los pesos no son negativos)?