# Filogenética computacional

La filogenética computacional es la aplicación de algoritmos computacionales, en métodos y programas de análisis filogenético. El objetivo es construir un árbol filogenético que representa una hipótesis evolutiva de un conjunto de genes, especies u otros taxones. Por ejemplo, estas técnicas han sido usadas para explorar el árbol de la familia de los homínidos y las relaciones entre los genes específicos compartidos por muchos tipos de organismos.
La filogenética tradicional usaba datos morfológicos obtenidos mediante la medición y cuantificación de las propiedades fenotípicas de los organismos representativos, mientras que los más recientes campos en filogenética molecular usan secuencias de nucleótidos que codifican genes o secuencias de aminoácidos que forman proteínas como bases de la clasificación. Muchas formas de filogenética molecular están muy relacionadas y hacen un uso extensivo del alineamiento de secuencias en la construcción y redefinición de los árboles filogenéticos usados para la clasificación de las relaciones evolutivas entre los genes homólogos existentes en los genomas de especies divergentes. Los árboles filogenéticos construidos mediante métodos computacionales rara vez reflejan fielmente los árboles filogenéticos que representan las relaciones históricas entre las especies analizadas. El árbol de especies históricas puede diferir del árbol histórico de genes homólogos individuales compartidos por dichas especies.
Producir un árbol filogenético requiere una cuantificación de las homologías entre las características compartidas por los taxones bajo estudio. En estudios morfológicos, esto requiere hacer supuestos explícitos sobre las características físicas a medir y como usarlos para codificar los distintos estados correspondientes a los taxones de entrada. En los estudios moleculares, uno de los problemas básicos es producir un alineamiento múltiple entre las secuencias de interés. Por fuerza, los métodos de alineamiento progresivo producen un árbol filogenético, porque incorporan las secuencias nuevas en el alineamiento calculado por orden de distancia genética. Aunque los árboles filogenéticos puedan ser construidos a partir de un alineamiento múltiple, métodos de inferencia filogenética como la máxima parsimonia y máxima verosimilitud no requieren la producción de un alineamiento múltiple inicial.

## Tipos de árboles filogenéticos

Los árboles filogenéticos generados mediante filogenia computacional pueden ser enraizados o sin raíz, dependiendo de los datos de entrada y el algoritmo usado. Un árbol enraizado es un grafo directo que implícitamente identifica un antecesor común más reciente, usualmente una secuencia imputada que no está representada en la entrada. Las medidas de distancia genética pueden ser usadas para trazar un árbol con las secuencias de entrada como nodos hoja y sus ramas con distancia a la raíz proporcionales a su distancia genética desde el hipotético antecesor común. La identificación de la raíz normalmente requiere la inclusión en los datos de entrada de al menos un grupo externo (en inglés outgroup) que esté relacionado solamente de forma distante con las secuencias en estudio.
Por el contrario, en los árboles sin raíz se trazan las distancias y relaciones entre las secuencias de entrada sin hacer suposiciones en cuanto a sus antecesores. Un árbol sin raíz siempre se puede producir a partir de un árbol enraizado, pero usualmente no es posible hacerlo a la inversa, a menos que se provea información adicional sobre las tasas de divergencia, como al asumir la hipótesis de un reloj molecular.
El conjunto de todos los árboles filogenéticos posibles para un grupo dado de secuencias de entrada puede ser conceptualizado como un "espacio de árboles" discretamente definido y multidimensional, y mediante algoritmos de optimización matemática trazar el árbol adecuado. Aunque contabilizar el número total de árboles para un número no trivial de secuencias de entrada puede ser complicado debido a los distintos tipos de topologías del árbol, también es cierto que el número de árboles enraizados es mayor que el número de árboles posibles sin raíz, para una misma secuencia de entradas y de parámetros.

## Codificando caracteres y definiendo homología
### Análisis morfológico

El problema básico en la filogenia basada en morfología es la construcción de una matriz matemática que contenga valores representativos de cada una de las características fenotípicas usadas como clasificador para cada uno de los taxones en estudio. Los tipos de datos fenotípicos que se usen para construirla dependerán de los taxones involucrados; para estudios dentro de una misma especie, se pueden incluir medidas del tamaño corporal promedio, longitudes o tamaños de ciertos huesos u otros rasgos físicos o incluso conductuales. Como no toda característica fenotípica puede ser medida y codificada para un análisis de esta naturaleza, la selección de los rasgos que se van a medir es uno de los grandes obstáculos inherentes a este método. La decisión de qué rasgos se van a usar en la matriz constituye necesariamente acerca de las características de un taxón entregan información acerca de su evolución. Los estudios morfológicos pueden ser distorsionados por casos de convergencia evolutiva. Uno de los principales desafíos de construir clases útiles es la alta probabilidad de que la distribución de la variación fenotípica se traslape entre taxones. La inclusión de grupos extintos a menudo es difícil, a causa de que no existen registros fósiles o son incompletos, sin embargo, se ha demostrado que tiene un efecto significativo en los árboles producidos; por ejemplo, en cierto estudio morfológico, solo la inclusión de simios extintos produjo un árbol consistente con los producidos a partir de datos moleculares.
Algunas clasificaciones fenotípicas, particularmente aquellas usadas cuando se analizan grupos muy diversos corresponden a variables discretas y no ambiguas. Por ejemplo, el clasificar organismos de acuerdo a la presencia o ausencia de cola es sencillo en la mayoría de los casos, así como lo es hacerlo según el número de ojos o vértebras. Sin embargo, la representación más apropiada de variables fenotípicas continuas es un problema controvertido sin una única solución. Un método común es simplemente agrupar las medidas en dos o más clases, tratando de este modo la variación continua como si fuera discreta (p. ej., los húmeros cuya longitud supera cierta medida son considerados dentro de un estado, y los que no, se agrupan en otro estado). Este método produce un conjunto de datos fácil de procesar, pero se le ha criticado lo poco que ahonda en los fundamentos de la determinación de clases y que desperdicia información si se lo compara con métodos que usan medidas de distribución continua.
En vista de que los datos morfológicos son difíciles de reunir, ya sea de fuentes escritas o de observaciones en terreno, no es raro el uso de matrices de datos compiladas previamente, aunque esto puede ocasionar que los errores del original se propaguen por los sucesivos análisis derivados.

### Análisis molecular

El problema de la codificación de caracteres es muy distinto en los análisis moleculares, pues los caracteres en secuencias biológicas son inmediatos de naturaleza discreta - diferentes nucleótidos en secuencias de ADN o ARN y diferentes aminoácidos en secuencias de proteína. Sin embargo, definir la homología puede ser un reto, debido a las dificultades inherentes al alineamiento múltiple de secuencias. Para un determinado alineamiento con gaps se pueden construir muchos árboles filogenéticos enraizados que difieren en cuáles cambios son "mutaciones" de caracteres ancestrales y cuáles corresponden a inserciones o deleciones de bases. Por ejemplo, con solo un par de secuencias alineadas que contengan un gap, es imposible determinar si una de ellas contiene una inserción o si la otra sufrió una deleción. El problema se magnifica en los alineamientos múltiples con gaps no alineados y no traslapados. En la práctica, al construir árboles filogenéticos deben descartarse regiones importantes de los alineamientos para evitar que se introduzcan distorsiones en el cálculo del árbol.

## Métodos de matriz de distancias

Los métodos basados en distancias permiten construir árboles filogenéticos basados en la distancia genética entre parejas de secuencias de ADN o proteínas, por lo que requieren un alineamiento múltiple como información de entrada. Difieren de los métodos basados en caracteres (Máxima parsimonia, Máxima verosimilitud, Inferencia bayesiana) en que los datos utilizados se presentan en una matriz de distancias obtenida a partir del alineamiento de las secuencias, en lugar de emplear el propio alineamiento como ocurre en el resto de métodos. De esta manera se comparan las secuencias completas, lo que tiene un mayor significado evolutivo y evoca una imagen intuitiva del “grado de parentesco” entre ambas.
La principal ventaja de los métodos basados en distancias es su velocidad, lo que resulta de particular utilidad cuando se tiene un gran número de secuencias. Los problemas más importantes son la pérdida de información del alineamiento múltiple y la generación de un árbol único, por lo que se desechan árboles que podrían ser igualmente válidos y consistentes con los datos. En muchas ocasiones se usan los métodos basados en distancias para generar los árboles de partida necesarios para métodos más complejos, como el de Máxima Verosimilitud. Tras generar el árbol, puede comprobarse su fiabilidad mediante un análisis de bootstrap.

### Cálculo de las distancias genéticas

La distancia entre dos secuencias (p-distance) se obtiene como la fracción de posiciones en las que existe una diferencia de nucleótidos o aminoácidos. Los gaps pueden ignorarse o contarse como diferencias. Sin embargo, es posible que en una misma posición se hayan producido varias sustituciones a lo largo del tiempo evolutivo, por lo que la distancia observada puede no corresponderse con la distancia real. También existe la posibilidad de que en una posición ocurra la reversión al estado ancestral o que se dé la misma mutación en las dos secuencias comparadas; en ambos casos se supondría una ausencia de cambio. Cuanto menos relacionadas filogenéticamente estén las secuencias, más probabilidad existirá de que hayan ocurrido eventos de sustitución múltiple, ya que han contado con más tiempo para acumular cambios. Otro problema que entorpece la estima de las distancias genéticas es la diferente velocidad de evolución que se observa en los distintos linajes.

### Modelos de sustitución de nucleótidos

Para "corregir" la distancia entre secuencias y estimar el número de sustituciones que realmente han ocurrido, se emplean modelos evolutivos, que pretenden describir, mediante una serie de parámetros, la forma en la que se producen las sustituciones en una determinada secuencia. El modelo escogido debe ser lo más ajustado posible al verdadero comportamiento de la evolución de las secuencias, ya que de ello depende que se realice un buen cálculo de la distancia genética entre ellas, que a su vez es la base para construir un buen árbol filogenético.
Para elegir el modelo evolutivo correcto se puede recurrir a programas como las diferentes versiones de ModelTest, que implementa distintas estrategias de selección (AIC, hLRT, dLRT, BIC, DT). Los modelos evolutivos están definidos por la frecuencia de cada uno de los nucleótidos y las tasas de sustitución de cada tipo (transiciones y transversiones). Existen muchos modelos evolutivos diferentes, desde el más simple, con la misma frecuencia para todos los nucleótidos y las mismas tasas de sustitución en todos los casos (Jukes-Cantor, 1969) hasta otros más complejos como el General Time-Reversible (GTR), que considera distintas frecuencias para cada nucleótido y distinta tasa para cada tipo de sustitución.

### Tipos de métodos basados en distancias

Los métodos de reconstrucción filogenética pueden clasificarse en dos tipos según su forma de proceder. Los primeros son los llamados algorítmicos, que agrupan las secuencias según distintos criterios, creando un nuevo nodo en cada paso, y finalmente obtienen un árbol único, que se considera el más ajustado a los datos. Los segundos son los basados en un criterio de optimización en la búsqueda de árboles, y funcionan generando todos los árboles posibles y eligiendo luego los más adecuados según los datos y otros parámetros previamente establecidos. Existen métodos basados en distancias tanto del primer tipo (UPGMA, Neighbor-joining) como del segundo (Fitch-Margoliash).

#### UPGMA (Unweighted Pair-Group Method with Arithmetic)

Es un método que procede por agrupación de las secuencias que presentan la menor distancia genética. La agrupación de las dos secuencias más relacionadas produce el primer nodo, que se incorpora a una nueva matriz en la que se calcula su distancia a cada una de las secuencias restantes como la media aritmética de las distancias de las dos secuencias componentes del nodo. El proceso se repite hasta que todas las secuencias quedan agrupadas y unidas por nodos internos.
Con este método se obtiene un árbol enraizado y ultramétrico, en el que todas las secuencias presentan la misma distancia al punto de origen, ya que se asume la existencia de un reloj molecular evolutivo. La hipótesis del reloj molecular postula la velocidad constante del cambio evolutivo, reflejada en secuencias genómicas con una tasa de cambio constante, en las que la divergencia a partir de una secuencia ancestral debería ser la misma para todas las secuencias derivadas. Sin embargo, está demostrado que este reloj molecular no existe en la mayoría de los casos, ya que el ritmo de cambio es distinto entre especies y entre las diferentes regiones del genoma.

#### Neighbor-joining

Es un método basado en el criterio de mínima evolución (BME: balanced minimum evolution), en el que el mejor árbol es aquel que minimiza la longitud de las ramas internas. Para ello, a partir de un árbol en estrella, se determina la pareja de secuencias más cercanas y se unen mediante un nodo interno. Este proceso se repite con el resto de secuencias hasta que quedan todas unidas por nodos internos que minimizan la longitud de cada una de las ramas internas, aunque no se asegura una longitud mínima global.
Con este método se obtiene un árbol no enraizado y aditivo, en el que la longitud de sus ramas indica cambio evolutivo. Las ramas presentan diferentes distancias al punto de origen porque no asume la existencia de un reloj molecular, y por lo tanto la tasa de cambio varía entre distintos linajes y secuencias. Con estas premisas, el método de Neighbor-joining representa mejor la situación real que el UPGMA, por lo que en la actualidad se utiliza más.

#### Fitch-Margoliash

El método de Fitch-Margoliash emplea cuadrados mínimos ponderados para el agrupamiento basado en distancia genética. A las secuencias relacionadas de manera más estrecha se les asigna una mayor valoración en el proceso de construcción del árbol para contrapesar el aumento de la inexactitud al medir distancias entre secuencias relacionadas de forma distante.
El criterio de los cuadrados mínimos aplicado a estas distancias es más exacto pero menos eficiente que los métodos de neighbor-joining. Encontrar el árbol óptimo mediante cuadrados mínimos con cualquier factor de corrección es un problema NP-completo, así que a través del espacio de árboles se emplean métodos de búsqueda heurística, como aquellos usados en los análisis de máxima parsimonia.

### Uso de grupos externos

Se puede emplear información independiente acerca de las relaciones filogenéticas entre secuencias o grupos para reducir el espacio de búsqueda y enraizar los árboles. En el uso estándar de métodos de matrices de distancia se incluye al menos un grupo externo (en inglés, outgroup), es decir, una secuencia de la que se sabe que solamente está relacionada de forma distante con las secuencias de interés para la investigación. Esta secuencia se puede entender como grupo de control.
Si el grupo externo se elige bien, debería estar separado de los demás por una mayor distancia genética, y por lo tanto, en el árbol será una rama de mucha mayor longitud que el resto y con un nodo más cercano a la raíz. Para escoger un grupo apropiado hay que seleccionar una secuencia que esté relacionada hasta cierto punto con las secuencias de interés: si está demasiado próxima, no cumple bien el propósito de un grupo externo y si está demasiado alejada, distorsiona el análisis.
Un punto que se debe tener en cuenta es que el tomar secuencias procedentes de una especie relacionada de forma distante no asegura el éxito, pues podría suceder que la porción del genoma que se estudia sea una que presenta escasa variación entre linajes. La transferencia horizontal de genes, especialmente ente bacterias que de otro modo no tendrían semejanzas genéticas importantes, también puede afectar el uso de grupos externos.

## Máxima parsimonia

El método de máxima parsimonia (MP) es un método de gran utilidad en diversos campos de la ciencia y uno de los métodos más utilizados en la reconstrucción de árboles filogenéticos, basado en el principio de parsimonia. El método de máxima parsimonia en la reconstrucción filogenética tiene como objetivo la búsqueda e identificación de un posible árbol filogenético que requiera el menor número de eventos evolutivos ( mínimo de cambios evolutivos o pasos de un estado a otro) para dar explicación a los procesos o fenómenos observados. Esta idea fue extraída de la argumentación filosófica de la navaja de Ockham de Guillermo de Ockham en la que defiende que si se parte de dos o más hipótesis que dan lugar a explicaciones igual de válidas para un acontecimiento dado, la hipótesis más simple tiene mayor probabilidad de ser la correcta para explicar el fenómeno.

### Análisis

Desde la década de los 70 el método de máxima parsimonia ha sido uno de los más utilizados para la reconstrucción de árboles filogenéticos. Aunque en la actualidad se utilizan otros métodos con mayor frecuencia tales como el método de máxima verosimilitud (ML), inferencia bayesiana (IB), método de matriz de distancias...; el método de máxima parsimonia sigue siendo de gran utilidad y de suma importancia en el campo de estudio de filogenias moleculares, a pesar de presentar ciertas limitaciones. Los datos que se utilizan para la realización de filogenias moleculares se recogen en una matriz que puede estar formada por secuencias de ADN previamente alineadas, siendo los estados los cuatro diferentes nucleótidos (A,T,C,G) o en una matriz compuesta por secuencias proteicas que recoge los diferentes 20 aminoácidos; es en la matriz donde se asigna uno o varios caracteres a cada taxón.
Una vez obtenidas las diferentes topologías, se le asigna a cada una de ellas un coste, y es el árbol con la topología de menor coste el que se elige como árbol más parsimonioso. Esta forma de búsqueda del árbol más parsimonioso solamente es posible cuando se obtienen un número relativamente pequeño de topologías. El número de topologías posibles depende del número de taxones (nodos terminales) y si el árbol está enraizado o no.
* N.º de topologías posibles para árboles no enraizados:
$N_{u}=(2n-5)!/2^{n-3}(n-3)$
* N.º de topologías posibles para árboles enraizados:
$N_{r}=(2n-3)!/2^{n-2}(n-2)$
Aplicando las fórmulas anteriores se deduce que el número de topologías posibles crece exponencialmente conforme aumenta el número de taxones. Cuando el número de topologías posibles es mayor o igual a 12 se tiene que emplear métodos de búsqueda heurísticas para reducir la complejidad de búsqueda (resulta imposible calcular todos los árboles posibles), ya que identificar el árbol más parsimonioso es un problema debido a NP-hard;. Tanto el método de máxima parsimonia, como el método de máxima verosimilitud y el método de matriz de distancias son métodos que se basan en criterios de optimización, es decir se centran en la búsqueda de árboles que presenten una topología óptima. Teniendo en cuenta que el número de topologías crece exponencialmente conforme aumenta el número de taxones, este tipo de métodos basados en criterios de optimización son mucho más lentos que los métodos basados en algoritmos como el método del vecino más cercano (en inglés neighbor-joining (NJ) o UPGMA. Aunque el proceso de estos métodos sea más lento, hay que destacar que son más precisos matemáticamente a diferencia de los métodos algorítmicos, ya que se puede decir al menos que la topología del árbol resultante es la mejor que se puede encontrar de acuerdo con el criterio establecido, y por tanto se puede explicar y aclarar por qué se eligió esa topología. Los árboles filogenéticos reconstruidos por medio del método de máxima parsimonia proporcionan más información a partir de los datos obtenidos y resulta fácil su interpretación que otro métodos. Además este método no requiere de modelos evolutivos previos para su realización. Aunque hay que tener en cuenta que los resultados obtenidos por este método pueden ser erróneos si se trata de homoplasias.

#### Problema de la parsimonia

Encontrar un árbol filogenético óptimo a partir de un conjunto de secuencias alineadas basándose en el mínimo número de eventos evolutivos a menudo puede resultar ser tarea difícil presentando los siguientes problemas:
1. Determinación de la cantidad de cambios que se dan en el carácter/es y la longitud del árbol.
2. La búsqueda del árbol con mínima longitud entre una amplia gama de topologías posibles.
La resolución del último problema es lento y costoso ya que la cantidad de posibles topologías aumenta de forma exponencial a medida que aumentan los taxones.

##### Cálculo de la longitud de un árbol

Para el cálculo de la longitud de una topología de árbol (τ) binario sin raíz, compuesto por n nodos terminales, n-2 nodos internos y 2n-3 ramas encargadas de unir los pares de nodos, que se ha elegido de forma aleatoria de todos los árboles posibles se obtiene por medio de:
$L\tau \ =\sum _{j=1}^{N}l_{j}$
siendo N el número de caracteres empleados en el alineamiento y lj (longitud de cada sitio de j, valor obtenido por medio de algoritmos) cantidad de cambios de los caracteres que se han tomado por la reconstrucción de parsimonia que asigna un estado de carácter Xij, donde i representa cada nodo y j representa cada sitio. La asignación del estado del carácter para los nodos terminales se fija por medio de la entrada de datos. Por lo tanto, para el cálculo de la longitud de un árbol basado en criterios de parsimonia se aplica la siguiente fórmula:
$l_{j}=\sum _{k=1}^{2N-3}C_{a(k),b(k)}$
los estados asignados a los nodos terminales de la rama k se representa por a(k) y b(k), siendo c$_{xy}$ el costo correspondiente al cambio del estado x al estado y.
Los costes de cambio entre un estado y otro se pueden representar por medio de una matriz de coste o una matriz de paso. La matriz de coste suele ser en general simétrica, c$_{xy}$ = c$_{xy}$, obteniendo la misma longitud en los árboles independientemente de la posición de la raíz. En el caso de que la matriz de coste no sea simétrica, c$_{xy}$ ≠ c$_{xy}$, la longitud de los árboles es diferente y la búsqueda de árboles se tiene que realizar a partir de árboles enraizados. Por medio de esquemas de costes desiguales el carácter llega a ser informativo ya que se puede discriminar que árboles tienen mejor longitud que otros. Por lo que el uso de esquemas de costes desiguales puede proporcionar más información para la reconstrucción filogenética que esquemas de costes iguales. Una vez calculadas las longitudes de los árboles, se elige aquel árbol que minimiza la longitud total. Pero el problema radica cuando el número de topologías posibles es muy elevado, por lo que se necesita otra forma de determinar la longitud mínima de los árboles sin que requiera la evaluación de todas las reconstrucciones. Este problema se ha intentado solventar a partir de dinámicas de programación algorítmica. A partir de algoritmos se trata de resolver un conjunto de subproblemas y evaluar una serie de soluciones de forma que garantice la optimización de todo el problema en conjunto. Se pueden emplear diferentes tipos de algoritmos dependiendo del tipo de topología del árbol y de la forma de ajustar los cambios de los diferentes estados. Entre los algoritmos utilizados, destacan:
* Algoritmo de Fitch: para árboles bifurcados y los cambios entre diferentes estados se ajustan por medio de la misma ponderación.
* Algoritmo de Fitch-Hartigan: para árboles multifurcados.
* Algoritmo de Sankoff: la ponderación se realiza de forma diferente entre los cambios de los distintos estados.

##### Ramificación y acotación (método branch and bound)

El algoritmo de ramificación y acotación o poda (en inglés, branch and bound) es un método que se usa para aumentar la eficiencia de búsquedas de soluciones cuasi-óptimas en problemas NP-hard aplicándose por primera vez en reconstrucciones filogenéticas a principios de la década de 1980. Este método se basa en la evaluación de forma implícita de todos los árboles posibles a partir de un camino trazado. A partir del recorrido establecido se emprende la búsqueda del árbol, deteniéndose en ciertas secciones del recorrido cuando se determina que ese camino no lleva a árboles óptimos, es decir subdivide el espacio del problema en regiones más pequeñas. Como su nombre dice, requiere de una orden de entrada de ramificación y una de acotamiento (una regla que excluya ciertas regiones del espacio de búsqueda, asumiendo por lo tanto que la solución óptima no puede encontrarse en esa región); al acotar el camino de esta forma, grandes tramos de búsqueda del árbol pueden ser evitados procediendo el algoritmo a atravesar el resto del trayecto, cortando otros caminos cuando sea posible y almacenando árboles óptimos cuando los encuentra, ahorrándose por tanto, tiempo en la búsqueda. El algoritmo termina la búsqueda cuando la raíz ha sido visitada por última vez, siendo en ese momento cuando todos los árboles óptimos se habrán podido identificar. Identificar un buen acotamiento en el recorrido es lo más difícil a la hora de aplicar el algoritmo. Una forma simple de definir el acotamiento es establecer un número máximo de cambios evolutivos permitidos por árbol, es decir aplicando un límite superior a la longitud del árbol óptimo. Un conjunto de criterios conocidos como reglas de Zharkikh limita de forma severa el espacio de búsqueda mediante la definición de características compartidas por todos los árboles que podrían ser el más parsimonioso. Las dos reglas más básicas ordenan la eliminación de todas las secuencias redundantes excepto una (para casos en que observaciones múltiples han producido datos idénticos) y la eliminación de sitios en que dos o más estados no ocurren en al menos dos especies. Bajo condiciones ideales, estas reglas y los algoritmos asociados a ellas servirían para definir totalmente a un árbol. Este método también se puede utilizar en máxima verosimilitud y en algunos criterios de matriz de distancias.

### Algoritmo Sankoff-Morel-Cedergren

El algoritmo Sankoff-Morel-Cedergren estuvo entre los primeros métodos para producir al mismo tiempo MSA y un árbol filogenético. Emplea un cálculo de máxima parsimonia junto con una función de puntuación que penaliza los gaps y los desajuestes en el alineamiento, favoreciendo de este modo a aquellos árboles que contienen un número mínimo de estos eventos. Las secuencias introducidas en los nodos internos del árbol se puntúan y suman en todos los nodos de cada árbol posible. El árbol con el puntaje final más bajo entrega por lo tanto, el árbol óptimo y el alineamiento múltiple óptimo de acuerdo a esta función de puntuación. En vista de que el método demanda muchos recursos computacionales, existe un método aproximativo en el cual los supuestos iniciales para los alineamientos interiores son refinados un nodo por vez. Tanto el método completo como el aproximativo son calculados mediante programación dinámica.

### MALIGN y POY

Los métodos filogenéticos más recientes usan la heurística para identificar árboles con buen puntaje, aunque no necesariamente óptimos. El método MALIGN utiliza una técnica de máxima parsimonia para calcular un alineamiento múltiple mediante la maximización del puntaje de un cladograma, y el programa relacionado POY usa un método iterativo que aúna la optimización del árbol filogenético con mejoras en el alineamiento correspondiente. Sin embargo, se ha criticado el sesgo que tienen estos métodos al construir hipótesis evolutivas, pues llevan a la construcción de árboles que contengan el mínimo de eventos.

## Máxima verosimilitud

La máxima verosimilitud es uno de los métodos basados en caracteres empleados para realizar inferencias filogenéticas, a través del cual se busca determinar la organización de las ramas de un árbol filogenético y su longitud, para evaluar las hipótesis evolutivas de un grupo de taxones, o OTUS como también suelen ser denominados los extremos de las ramas. Este método usa técnicas estadísticas estándar para inferir la distribución de probabilidad, al asignar probabilidades a posibles árboles. Actualmente la máxima verosimilitud se emplea para analizar secuencias alineadas de nucleótidos, aminoácidos y proteínas. Una de las características principales del método, es que requiere un modelo de sustitución de bases, o modelo evolutivo para establecer la probabilidad de cada tipo de mutación en las secuencias; en términos generales se puede decir que un árbol que requiere más mutaciones en sus nodos internos, para explicar los datos observados, es menos verosímil. Este hecho hasta cierto punto es similar a la máxima parsimonia, pero difiere en que la máxima verosimilitud tiene mayor flexibilidad estadística, permite diferentes tasas de evolución tanto en los linajes como en los sitios de las secuencias, así como también presenta bajas varianzas con respecto a otros métodos. Mientras al obtener una probabilidad alta, dará lugar al estado actual de las relaciones entre los OTUS y esta será una hipótesis más veraz que una con una baja probabilidad de alcanzar el estado de las relaciones de los datos observados.
Algunas de las principales ventajas de este método es que todos los sitios de las secuencias son informativos y permite estudiar la información que mejor se ajuste a los datos observados. Además, debido a que requiere que la evolución de diferentes sitios y entre distintos linajes sea estadísticamente independiente, es apropiado para el análisis de secuencias relacionadas de forma distante; en adición resiste las tasas de heterogeneidad y sustitución, así como también tiene menos efectos por errores de muestreo. No obstante presenta ciertas limitaciones con respecto a los demás métodos; ya que dependiendo del número de secuencias que se deseen analizar, generalmente si son más de 10 taxones o OTUS, los requerimientos computacionales se incrementan y puede ser un proceso demasiado lento, puesto que estimar las numerosas hipótesis alternativas, resulta ser una tarea dispendiosa. Otra limitante que presenta es que no se pueden incluir datos morfológicos, los cuales en muchos casos son de utilidad en la reconstrucción filogenética de un grupo, y contribuiría a dar más soporte a la elección de la mejor hipótesis; así como también, tiende a presentar inconvenientes cuando taxones muy cercanos presentan ramas de gran longitud.
Por otra parte, el método es robusto debido a que las topologías generadas necesitan de un modelo evolutivo particular, ya que el modelo se obtiene por la observación de las secuencias y la probabilidad de los datos bajo el modelo elegido; así en algunos casos los modelos suelen asumir hechos que pueden ser desatinados, puesto que muchos interpretan distribuciones idénticas en algunos lugares, incluso si no lo son, debido a que estos se basan en las características de los lugares donde se tiene la certeza del proceso de substitución, y asumen substituciones en otros lugares que tienen elementos en común, incluso si no son totalmente idénticos Por ello los componentes que determinan la evolución de secuencias puede estar regido bajo pocos parámetros; sin embargo, si la elección del modelo es incorrecto, el árbol generado también lo será.
El cálculo de verosimilitud es una probabilidad condicional de obtener una hipótesis verdadera a partir de los datos observados, así para evaluar la verosimilitud de un árbol, se estima la probabilidad de que este pueda haber generado los datos obtenidos bajo el modelo elegido. Por otra parte, la verosimilitud del árbol es independiente de la localización de la raíz, así si los sitios de los nucleótidos evolucionan independientemente, se puede calcular la verosimilitud de cada sitio y combinar las verosimilitudes parciales en un valor total. Para calcular una posición se deben considerar todos los posibles escenarios, y cada uno tiene una probabilidad de generar un patrón de nucleótidos observado, así el nodo de la raíz puede presentarse en cualquier posición. Una vez calculada la verosimilitud de cada lugar, se une a la probabilidad que el árbol y el modelo genera sobre todos los sitios, y es computado como el producto de las verosimilitudes individuales. Debido a que la probabilidad de alguna observación es pequeña en número, esta se expresa siempre en términos de logaritmo, así la verosimilitud es calculada como la suma de los logaritmos.
Para reducir el espacio de búsqueda mediante el cálculo eficiente de la verosimilitud de los subárboles, se emplea un algoritmo "de poda", una variante de la programación dinámica. El método calcula la verosimilitud de cada sitio de forma "lineal", empezando en un nodo cuyos únicos descendientes son hojas, es decir, las ramas terminales de un árbol; y trabajando hacia atrás, hacia los nodos más cercanos a la raíz, en conjuntos anidados. Sin embargo, los árboles producidos por el método solo se enraízan si el modelo de sustitución es irreversible, lo cual no es generalmente verdadero para los sistemas biológicos. La búsqueda de los árboles con máxima verosimilitud contiene un componente de optimización de la longitud de las ramas que es difícil de mejorar mediante algoritmos; y a veces se usan herramientas genéricas de optimización global, como el método de Newton-Raphson. La búsqueda de topologías de árboles por máxima verosimilitud no se ha probado que sea NP-completa, pero sigue siendo extremadamente difícil pues el buscarlas por ramificación y acotamiento todavía no es efectivo para árboles definidos de este modo. Las desventajas de este método es que puede ser un proceso demorado, en función de la profundidad de la búsqueda y de la capacidad de los equipos computacionales de los cuales se disponga.

## Inferencia bayesiana

La inferencia bayesiana puede usarse para producir árboles filogenéticos de un modo muy cercano al de los métodos de máxima verosimilitud. Los métodos bayesianos una distribución de probabilidades previa de los posibles árboles, que puede ser simplemente la probabilidad de un árbol entre todos aquelpodrían generarse a partir de los datos, o puede ser una estimación más sofisticada, derivada del supuesto de que eventos de divergencia como la especiación ocurren como procesos estocásticos. La elección de la distribución previa es tema de debate entre los usuarios de este método.
La utilización de inferencia bayesiana en filogenias generalmente recurre al algoritmo de muestreo de cadenas de Markov a través del método de Monte Carlo.