Tree Alignment
   HOME

TheInfoList



OR:

In computational phylogenetics, tree alignment is a computational problem concerned with producing multiple sequence alignments, or alignments of three or more sequences of DNA,
RNA Ribonucleic acid (RNA) is a polymeric molecule essential in various biological roles in coding, decoding, regulation and expression of genes. RNA and deoxyribonucleic acid ( DNA) are nucleic acids. Along with lipids, proteins, and carbohydra ...
, or protein. Sequences are arranged into a
phylogenetic tree A phylogenetic tree (also phylogeny or evolutionary tree Felsenstein J. (2004). ''Inferring Phylogenies'' Sinauer Associates: Sunderland, MA.) is a branching diagram or a tree showing the evolutionary relationships among various biological spec ...
, modeling the evolutionary relationships between species or taxa. The edit distances between sequences are calculated for each of the tree's internal vertices, such that the sum of all edit distances within the tree is minimized. Tree alignment can be accomplished using one of several algorithms with various trade-offs between manageable tree size and computational effort.


Definition

Input: A set S of sequences, a
phylogenetic tree A phylogenetic tree (also phylogeny or evolutionary tree Felsenstein J. (2004). ''Inferring Phylogenies'' Sinauer Associates: Sunderland, MA.) is a branching diagram or a tree showing the evolutionary relationships among various biological spec ...
T leaf-labeled by S and an edit distance function d between sequences. Output: A labeling of the internal vertices of T such that \Sigma_ d(e) is minimized, where d(e) is the edit distance between the endpoints of e. The task is
NP-hard In computational complexity theory, NP-hardness ( non-deterministic polynomial-time hardness) is the defining property of a class of problems that are informally "at least as hard as the hardest problems in NP". A simple example of an NP-hard pr ...
.


Background


Sequence alignment

In
bioinformatics Bioinformatics () is an interdisciplinary field that develops methods and software tools for understanding biological data, in particular when the data sets are large and complex. As an interdisciplinary field of science, bioinformatics combi ...
, the basic method of information processing is to contrast the sequence data.
Biologist A biologist is a scientist who conducts research in biology. Biologists are interested in studying life on Earth, whether it is an individual cell, a multicellular organism, or a community of interacting populations. They usually specialize in ...
s use it to discover the function, structure, and evolutionary information in biological sequences. The following analyses are based on the sequence assembly: the phylogenetic analysis, the
haplotype A haplotype ( haploid genotype) is a group of alleles in an organism that are inherited together from a single parent. Many organisms contain genetic material ( DNA) which is inherited from two parents. Normally these organisms have their DNA or ...
comparison, and the prediction of
RNA Ribonucleic acid (RNA) is a polymeric molecule essential in various biological roles in coding, decoding, regulation and expression of genes. RNA and deoxyribonucleic acid ( DNA) are nucleic acids. Along with lipids, proteins, and carbohydra ...
structure. Therefore, the efficiency of sequence alignment will directly affect the efficacy of solving these problems. In order to design a rational and efficient sequence alignment, the algorithm derivation becomes an important branch of research in the field of bioinformatics. Generally, sequence alignment means constructing a string from two or more given strings with the greatest similarity by adding letters, deleting letters, or adding a space for each
string String or strings may refer to: *String (structure), a long flexible structure made from threads twisted together, which is used to tie, bind, or hang other objects Arts, entertainment, and media Films * ''Strings'' (1991 film), a Canadian anim ...
. The multiple sequence alignment problem is generally based on pairwise sequence alignment and currently, for a pairwise sequence alignment problem, biologists can use a dynamic programming approach to obtain its optimal solution. However, the multiple sequence alignment problem is still one of the more challenging problems in bioinformatics. This is because finding the optimal solution for multiple sequence alignment has been proven as an NP-complete problem and only an approximate optimal solution can be obtained.


Distance matrix method

Distance method measures the minimum operation number of character
insertion Insertion may refer to: *Insertion (anatomy), the point of a tendon or ligament onto the skeleton or other part of the body *Insertion (genetics), the addition of DNA into a genetic sequence *Insertion, several meanings in medicine, see ICD-10-PCS ...
s,
deletion Deletion or delete may refer to: Computing * File deletion, a way of removing a file from a computer's file system * Code cleanup, a way of removing unnecessary variables, data structures, cookies, and temporary files in a programming language * ...
s, and
substitution Substitution may refer to: Arts and media *Chord substitution, in music, swapping one chord for a related one within a chord progression * Substitution (poetry), a variation in poetic scansion * "Substitution" (song), a 2009 song by Silversun Pi ...
s that are required to transform one sequence ''u'' to the other sequence ''v'' when being operated on a pair of strings. The calculation of edit distance can be based on dynamic programming, and the equation is in O(, u, ×, v, ) time, where , u, and , v, are the lengths of u and v. The efficient estimation of edit distance is essential as Distance method is a basic principle in
computational biology Computational biology refers to the use of data analysis, mathematical modeling and computational simulations to understand biological systems and relationships. An intersection of computer science, biology, and big data, the field also has fo ...
For functions of hereditary properties "symmetrization" can be used. Due to a series of functions being used to calculate edit distance, different functions may result in different results. Finding an optimal edit distance function is essential for the tree alignment problem.


The problem of tree alignment

Tree alignment results in a
NP-hard In computational complexity theory, NP-hardness ( non-deterministic polynomial-time hardness) is the defining property of a class of problems that are informally "at least as hard as the hardest problems in NP". A simple example of an NP-hard pr ...
problem, where scoring modes and alphabet sizes are restricted. It can be found as an algorithm, which is used to find the optimized solution. However, there is an exponential relationship between its efficiency and the number sequences, which means that when the length of the sequence is very large, the computation time required to get results is enormously long. Using star alignment to get the approximate optimized solution is faster than using tree alignment. However, whatever the degree of multiple-sequence similarity is, the time complexity of star alignment has a proportional relationship with the square of the sequence number and the square of the sequence average length. As usual, the sequence in MSA is so long that it is also inefficient or even unacceptable. Therefore, the challenge of reducing the time complexity to linear is one of the core issues in tree alignment.


Combinatorial optimization strategy

Combinatorial optimization is a good strategy to solve MSA problems. The idea of combinatorial optimization strategy is to transform the multiple sequence alignment into pair sequence alignment to solve this problem. Depending on its transformation strategy, the combinatorial optimization strategy can be divided into the tree alignment algorithm and the star alignment algorithm. For a given multi-sequence set S =, find an evolutionary tree which has n leaf nodes and establishing one to one relationship between this evolutionary tree and the set S. By assigning the sequence to the internal nodes of the evolutionary tree, we calculate the total score of each edge, and the sum of all edges' scores is the score of the evolutionary tree. The aim of tree alignment is to find an assigned sequence, which can obtain a maximum score, and get the final matching result from the evolutionary tree and its nodes' assigned sequence. Star alignment can be seen as a special case of the tree alignment. When we use star alignment, the evolutionary tree has only one internal node and n leaf nodes. The sequence, which is assigned to the internal node, is called the core sequence.


The keyword tree theory and the Aho-Corasick search algorithm

When the combinatorial optimization strategy is used to transform the multiple sequence alignment into pair sequence alignment, the main problem is changed from "How to improve the efficiency of multiple sequence alignment" to "How to improve the efficiency of pairwise sequence alignment." The Keyword Tree Theory and the Aho-Corasick search algorithm is an efficient approach to solve the pairwise sequence alignment problem. The aim of combining the keyword tree theory and the Aho-Corasick search algorithm is to solve this kind of problem: for a given long string T and a set of short strings P= (z∈N,z>1), find the location of all P_i in T. The keyword tree produced by set P is used, and then searched for in T with this keyword tree through the Aho-Corasick search algorithm. The total time complexity of using this method to find all P_i's location in the T is O(m+n+k), where m=, T, (the length of T), n=Σ, P_i, (the sum of all P_i's lengths) and k means the sum of occurrence for all P_i in T.


Keyword tree theory

The keyword tree of the set P= (z∈N,z>1) is a rooted tree, whose root denoted by K, and this keyword tree satisfies: (1): Each edge clearly demarcates one letter. (2): Any two edges separated from the same node are to correspond to different letters. (3) Each pattern P_i (i=1,2,...,z) corresponds to a node v, and the path from the root K to the node v can exactly correctly spell the string P_i. For each leaf node of this K tree, it corresponds to one of the certain patterns of set P. L(v) is used to represent the STRING which is connected from the root node to the node v. Lp(v) will then be used to represent the length of the longest suffix (also, this suffix is the prefix of one of patterns in the set P). Searching this prefix from the root node in the keyword tree, and the last node denoted by n_v when the search is over. For example, the set P=, and the keyword tree is shown on the right. In that example, if L(v)=potat, then Lp(v)=, tat, =3, and the failure link of the node v is shown in that figure. Establishing a failure link is the key to improve the time complexity of the Aho-Corasick algorithm. It can be used to reduce the original polynomial time to the linear time for searching. Therefore, the core of keyword tree theory is to find all failure links (which also means finding all n_vs) of a keyword tree in the linear time. It is assumed that every n_v of all nodes v, whose distance from the root node is less than or equal k, can be found. The n_v of the node v whose distance from the root node is k + 1 can then be sought for. Its parent node is v', and the letter represented by the node v and v', is x. (1): If the next letter of the node n_v' is x, the other node of this edge can be set as w, and n_v=w. (2): If all letters are not x by searching all edges between n_v' and its child nodes, L(n_v) is a suffix of L(n_v' ) plus x. Because this suffix matches the STRING beginning with the root node (similar to prefix), the x after n_v' can be detected or not. If not, this process can be continued until x or the root node is found.


Aho-Corasick search algorithm

After establishing all failure links in the keyword tree, the Aho-Corasick search algorithm is used to find the locations of all P_i (i=1,2,...,z) in the linear time. In this step, the time complexity is O(m+k).


Other strategies

In MSA, DNA, RNA, and proteins, sequences are usually generated and they are assumed to have an evolutionary relationship. By comparing generated maps of RNA, DNA, and sequences from evolutionary families, people can assess conservation of proteins and find functional gene domains by comparing differences between evolutionary sequences. Generally, heuristic algorithms and tree alignment graphs are also adopted to solve multiple sequence alignment problems.


Heuristic algorithm

Generally, heuristic algorithms rely on the iterative strategy, which is to say that based on a comparison method, optimizing the results of multiple sequence alignment by the iterative process. Davie M. proposed using the particle swarm optimization algorithm to solve the multiple sequence alignment problem; Ikeda Takahiro proposed a heuristic algorithm which is based on the A* search algorithm; E. Birney first proposed using the hidden Markov model to solve the multiple sequence alignment problem; and many other biologists use the
genetic algorithm In computer science and operations research, a genetic algorithm (GA) is a metaheuristic inspired by the process of natural selection that belongs to the larger class of evolutionary algorithms (EA). Genetic algorithms are commonly used to gene ...
to solve it. All these algorithms generally are robust and insensitive to the number of sequences, but they also have shortcomings. For example, the results from the particle swarm optimization algorithm are unstable and its merits depend on the selection of random numbers, the runtime of the A* search algorithm is too long, and the genetic algorithm is easy to fall into local excellent.


Tree alignment graph

Roughly, tree alignment graph aims to align trees into a graph and finally synthesize them to develop statistics. In biology, tree alignment graphs (TAGs) are used to remove the evolutionary conflicts or overlapping taxa from sets of trees and can then be queried to explore uncertainty and conflict. By integrating methods of aligning, synthesizing and analyzing, the TAG aims to solve the conflicting relationships and partial overlapping taxon sets obtained from a wide range of sequences. Also, the tree alignment graph serves as a fundamental approach for
supertree A supertree is a single phylogenetic tree assembled from a combination of smaller phylogenetic trees, which may have been assembled using different datasets (e.g. morphological and molecular) or a different selection of taxa. Supertree algorithms ...
and
grafting Grafting or graftage is a horticultural technique whereby tissues of plants are joined so as to continue their growth together. The upper part of the combined plant is called the scion () while the lower part is called the rootstock. The succ ...
exercises, which have been successfully tested to construct supertrees by Berry. Because the transformation from trees to a graph contain similar nodes and
edges Edge or EDGE may refer to: Technology Computing * Edge computing, a network load-balancing system * Edge device, an entry point to a computer network * Adobe Edge, a graphical development application * Microsoft Edge, a web browser developed by ...
from their source trees, TAGs can also provide extraction of original source trees for further analysis. TAG is a combination of a set of aligning trees. It can store conflicting hypotheses evolutionary relationship and synthesize the source trees to develop evolutionary hypotheses. Therefore, it is a basic method to solve other alignment problems.Stephen A. Smith, Joseph W. Brown, analyzing and synthesizing phylogenies using tree alignment graphs, PLoS Computational Biology 9(9).


See also

*
Generalized tree alignment In computational phylogenetics, generalized tree alignment is the problem of producing a multiple sequence alignment Multiple sequence alignment (MSA) may refer to the process or the result of sequence alignment of three or more biological sequenc ...


References

{{DEFAULTSORT:Tree Alignment Computational phylogenetics