
Parallel Multiple Sequence Alignment with Local Phylogeny Search by Simulated Annealing∗ Jaroslaw Zola1, Denis Trystram1, Andrei Tchernykh2, Carlos Brizuela2 1Laboratoire ID–IMAG 2Computer Science Department 51 av. J. Kuntzmann CICESE Res. Center 38330 Montbonnot, France Ensenada, BC, 22860, Mexico {zola,trystram}@imag.fr {chernykh,cbrizuel}@cicese.mx Abstract phylogeny reconstruction (e.g. minimum parsimony or maximum likelihood methods) require MSA as an in- The problem of multiple sequence alignment is one of put data. Moreover, the quality of the trees recon- the most important problems in computational biology. structed by these methods depends on the quality of In this paper we present a new method that simultane- the input alignment [11]. On the other hand, looking ously performs multiple sequence alignment and phy- for similarities among sequences we should be aware logenetic tree inference for large input data sets. We of the fact, that they are a result of some complex describe a parallel implementation of our method that evolutionary process. Thus, in the optimal case, we utilises simulated annealing metaheuristic to find lo- should know their relationship which is described by cally optimal phylogenetic trees in reasonable time. To some phylogenetic tree. validate the method, we perform a set of experiments In our previous contributions [19, 26] we have re- with synthetic as well as real–life data. ported a new heuristic to solve GTA problem in paral- lel. In this paper, we extend this approach by adding a simulated annealing (SA) metaheuristic to find optimal 1 Introduction partial phylogenetic trees during a phylogenetic analy- sis step of our method. The results we report show that application of SA allows running time of our software Multiple sequence alignment (MSA) is undoubtedly to be decreased by several orders of magnitude while the most commonly performed task in the computa- preserving a good quality of final solutions. tional biology. It is an essential prerequisite of many The remainder of this paper is organised as follows: other complex problems like, for example, database In Section 2 we provide a brief overview of the Par- search or phylogenetic analysis [1, 12]. Unfortunately, allel PhylTree method. Section 3 contains description finding an accurate multiple alignment is a hard op- of our strategy to infer local phylogenetic tree by SA. timisation problem. Firstly, because it is difficult to In Section 4 we show some experimental results with provide a formalisation which would be satisfactory actual biological data. Finally, possible extensions of from the biological viewpoint. Secondly, having a good this work are discussed in Section 5. model usually means it is algorithmically very hard to find the best (or optimal) alignment. Indeed, the Gen- eralized Tree Alignment Problem (GTA), which seems 2 Parallel multiple sequence alignment to be the most accurate formalisation of MSA, has been shown to be Max–SNP–Hard [13]. 2.1 The PhylTree method Multiple sequence alignment and phylogenetic tree reconstruction are typically considered separately, The PhylTree method is a generic, parallel multiple however, both these problems are directly linked. For sequence alignment procedure which has been proposed instance, most of the character based approaches to the recently [19, 26]. As it has been presented in detail ∗This work has been supported by the LAFMI project in our previous papers, we provide here only its basic (http://lafmi.imag.fr). concepts with no technical details. 1-4244-0054-6/06/$20.00 ©2006 IEEE The PhylTree method was designed to build a multi- Master Worker ple alignment and the corresponding phylogenetic tree sequences simultaneously. It can be characterised as an iterative compute pairwise clustering method whose principle is to group closely distances alignment related sequences [10]. It consists of two successive assembly distance phases: first it generates a distance matrix for all in- matrix 1st phase put sequences (based on the all–to–all pairwise align- create 2nd phase ments). Then, it searches for the optimal partial so- neighbourhoods tree topologies find lutions which are later combined to obtain the final optimal optimal trees tree phylogenetic tree and multiple alignment. repeat find The method uses two principles: neighbourhood and clusters new taxa cluster.Aneighbourhood is a set of k closely related update k distance taxa, where is an input parameter of the PhylTree matrix procedure and is a constant integer value (typically, k ≥ 4, not larger than 10). A cluster is a group of m ≤ k taxa which creates a part of the final phylogeny. Figure 1. General scheme of the Parallel Phyl- To determine the clusters the PhylTree algorithm Tree method. generates a neighbourhood for every input sequence, then it finds the best phylogenetic tree for each neigh- bourhood, and finally, it analyses all the found trees scheduling strategy [20]. Such approach allows the load to extract their common subtrees. These subtrees de- imbalance imposed by the heterogeneous environment scribe a set of highly related taxa and correspond to to be minimised. Please note that heterogeneity may clusters. The above process is iterative. be the result of high diversity in the length of input The accuracy of the method depends mostly on the sequences, and not only differences in the hardware ar- parameter k. Increasing k will widen the search space chitectures. Processing the distance matrix, a worker analysed to find the clusters. Unfortunately, while this analyses its efficiency by measuring the number of base improves the accuracy of the final solution, it also in- pairs aligned per second. Thanks to this analysis, the creases the number of computations required to process master node can rank all the workers accordingly to a single neighbourhood. Basically, to process a neigh- (2k−2)! their efficiency. In the second phase, only the process- bourhood we have to compute all possible k−1 2 (k−1)! ing of the neighbourhoods is parallelised. That is: at trees to find the optimal one. each iteration, the master determines the neighbour- An important property of PhylTree is its general- hood sets, and then it starts to generate all possible ity, which means that the method can use different tree topologies for each neighbourhood. Each worker alignment algorithms and different scoring functions. receives its part of the generated topologies and looks Moreover, it is possible to use various definitions of a for one with the highest alignment score. At this point neighbourhood and neighbourhoods of variable size (a we assume that for each neighbourhood an optimal par- variant called QuickTree has been proposed as a way of tial solution must be generated. To achieve this objec- rapid solving large instances with decreased accuracy). tive, worker has to compute MSA for every single topol- ogy. Because the number of created tree topologies for 2.2 Parallelisation scheme all neighbourhoods is usually much greater than the number of workers, again dynamic scheduling is used. Due to high time complexity of the PhylTree method However, at this stage, the host priorities computed in we have implemented its parallel version based on the the first phase are utilised. Half of the total number of decentralised cache of alignments [26]. topologies is distributed proportionally to the workers’ The Parallel PhylTree method takes advantage of priorities. Then, the other part is distributed using the the inherent parallelism of the original algorithm, and guided self–scheduling. When a worker completes its it utilises master–worker architecture combined with part of the computations it sends back the resulting the cache system working in the peer–to–peer manner. best tree topology and the corresponding alignment The Parallel PhylTree method proceeds as follows to the master. To complete an iteration, the master (see Figure 1): First, the master processor reads the computes the clusters and updates the distance matrix input sequences and broadcasts them to all workers. accordingly. Next, each worker receives a part of the distance ma- Since neighbourhoods of sequences may overlap, and trix to compute. At this stage, we use the guided self– pairwise alignments computed in the first phase of the method are reused in the second phase, the Phyl- we provide scoring functions based on the parsimony Tree method exhibits high redundancy of computa- criterion with linear gap penalties but also basic sum tions. Therefore, in the parallel version we provide de- of pairs function, and consistency based function COF- centralised cache of alignments [26]. Our cache stores FEE [18]. all intermediate results of alignment, and is organised While the ability to use various scoring schemes ex- into content addressable network [21]. Thanks to this tends possible applications of PhylTree, it makes diffi- a significant speedup can be achieved even in a single cult to apply faster than exact trees enumeration search run of the Parallel PhylTree. techniques. For instance, to find an optimal tree un- der parsimony criterion a branch and bound strategy 2.3 Related work could be used, whereas it is not necessarily true for other scoring functions. Both multiple sequence alignment and phylogeny are of great importance to biologists, but at the same 3.1 The simulated annealing approach time these problems are very computationally demand- ing. That is why parallel and distributed programming To improve efficiency of the PhylTree we have de- is often used to improve the efficiency of existing bioin- cided to apply metaheuristic search approach based formatics applications. on simulated annealing [14]. Our solution is based In the last few years several popular MSA packages on the observation that groups of closely related ele- have been parallelised, for example DiAlign [23] or Pra- ments, which are recognised as phylo–clusters, should line [15]. Yet, most of the attention was focused on be detectable even when suboptimal trees for anal- the ClustalW tool. There are numerous parallel ver- ysed neighbourhoods will be found.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages8 Page
-
File Size-