Hay varios algoritmos utilizados para inferir árboles filogenéticos, pero los algoritmos más utilizados se dividen en tres categorías principales:
- 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).
- 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”).
- 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.
- ¿Alguien puede ayudarme a dibujar un árbol de recursión para la ecuación [matemáticas] T (n) = T (n-2) + n [/ matemáticas]?
- Cómo llegar a la lógica para construir un método de impresión inversa que imprima los nodos en una lista vinculada usando un enfoque recursivo usando Java
- ¿Es necesario aprender matemáticas discretas antes de comenzar a aprender la estructura de datos y el algoritmo? ¿Y cuál será el mejor libro para hacer lo mismo?
- ¿Cuál es el algoritmo correcto para realizar la diferenciación usando un programa de computadora para cualquier función ingresada por el usuario?
- ¿Qué algoritmos de aprendizaje automático se usan hoy en medicina?