160 likes | 264 Views
An efficient algorithm for optimizing whole genome alignment with noise. P. Wong, T. Lam, N. Lu, H. Ting, and S. Yiu Department of Computer Science, University of Hong Kong. Presented by Hyun-Chul Chung. Outline. Introduction The optimization problem The MaxMinCluster algorithm
E N D
An efficient algorithm for optimizing whole genome alignment with noise P. Wong, T. Lam, N. Lu, H. Ting, and S. Yiu Department of Computer Science, University of Hong Kong Presented by Hyun-Chul Chung
Outline • Introduction • The optimization problem • The MaxMinCluster algorithm • Finding the k-noisy clusters • Homework
Introduction (1) • Aligning whole genomes of two related species so as to identify regions that possibly contain conserved genes. • Conserved genes • Genes that have the same functionality among species. • Usually corresponds to a sequence of matched substrings that are consecutive and close to both genomes and have sufficient length. • Let’s call this sequence a cluster
Introduction (2) • Conserved Genes (cont’d) • Not every pair of matched substrings correspond to a conserved gene; most of them are noise.
Introduction (3) • Relaxing the definition of cluster to allow noise • k-noisy cluster • Avoid reporting relatively small clusters • We investigate the optimization problem of finding an alignment that maximizes the size of the smallest cluster.
The Optimization Problem • Input is a sequence M=(m1,m2,…,mn) • mi: uniquely matched substrings on two genomes A and B • (ai, bi, li, i) • ai and bi : starting positions on A and B, respectively • li : length of the substring • i : 1 if mi is of same orientation; -1 if mi is of opposite orientation • Assume a1 < a2 < … < an
Noisy Clusters • (mi,mi+1,…,mi+t) : segment of M • A segment is a k-noisy cluster (denoted by C) if we can remove at most k elements from the segment, denoted by X, s.t. the resulting subsequence S satisfies the following conditions: • Same orientation of all matched substrings in S • If i =1, bi’s of S increase; otherwise decrease • For any two consecutive elements mp and mq in S, |ap-aq| Gap and |bp-bq| Gap (distance requirement) • Size(S) defined to be , is at least MinSize (size requirement)
Alignment • Maximal collection of disjoint k-noisy clusters (denote this as A) • Max-Min alignment problem • Among all Xs that makes C qualified as a k-noisy cluster, let Xo be the one with the smallest size • Define w(C), the weight of C, to be Size(C-Xo) • We want to find an optimal alignment A* of M s.t. • : set of all possible alignments of M
The MaxMinCluster Algorithm • Let j be the set of all possible k-noisy clusters whose elements are in (m1,m2,…,mj) • Let j the set of all alignments in j • Define • Let j j where each j has a k-noisy cluster containing mj • Define
Let Sj be the set of the starting positions of all segments which end at position j and which form a k-noisy cluster • Let i* be the largest position in Sj • Let h be the the largest index of the matched substring pair in some alignment Aj - j • Proposition 1. • Assume that W(0)=WI(0)=WE(0)=0. • Then for any j 1,
In Step 3, for each iteration,WI(j) & WE(j) takes O(j) time and W(j) takes O(1) time. So, step 3 takes O(n2) time.
Finding the k-noisy clusters • A set H Mij is said to be a set of noise in Mij if Mij-H satisfies the requirements of a noisy cluster. • Let Nij+(Nij-, respectively) be the set of noise in Mij s.t. all elements in Mij-H have orientation of 1 (-1, respectively). • Proposition 2. • Mij is a k-noisy cluster iff the following expression is at least MinSize
Define for all 1 i j n and 0 x k, • Then where for any i,j < 1 and x < 0,
Let P be the set of matched substring pairs mp=(ap,bp,lp) s.t. the following holds: • mp is of same orientation • max(i, j-x-1) p j-1 • bp < bj • mp and mj satisfy the distance requirement • If X s.t. |X| x-(j-p-1) and Mip-X is a noisy cluster then Mij-X’ is also a noisy cluster where X’=(mp+1, mp+2,…,mj-1) X
Proposition 3. • Time complexity : O(k2n2) • Space complexity : O(kn2) • Space complexity can be reduced to O(k2n)?
Homework #6 • Given M=(m1,m2,…,mn) where miindicates uniquely matched substrings on two genomes A and B, design your own algorithm to find all k-noisy clusters in M. Analyze the time complexity (explain how you obtained the time bound). email : holyboy@tamu.edu