480 likes | 492 Views
Reconstructing Circular Order from Inaccurate Adjacency Information. Applications in NMR Data Interpretation. Ming-Yang Kao. 160. 520. 540. 220. 190. 480. Problem Description. (160,520). (540,160). (520,220). (190,540). (220,480). (480,190). ?. ?. ?. ?. ?. ?.
E N D
Reconstructing Circular Order from Inaccurate Adjacency Information Applications in NMR Data Interpretation Ming-Yang Kao
160 520 540 220 190 480 Problem Description (160,520) (540,160) (520,220) (190,540) (220,480) (480,190)
? ? ? ? ? ? Problem Description Given Find the correct order (220,480) (160,520) (480,190) (540,160) (520,220) (190,540)
Introduction • Nuclear Magnetic Resonance (NMR)
Introduction • Nuclear Magnetic Resonance (NMR) • Use the strong magnetic wave to align nuclei (isotopes). • When this spin transition occurs, the nuclei are said to be in resonance with the applied radiation.
NMR Measurement • Chemical Shift • ppm • Electrons in the molecule have small magnetic fields • When magnetic field is applied, electrons tend to oppose the applied field • NMR Spectrum
Determining Protein Structure Using NMR • NMR Spectral Data generation • Peak Picking • Peak Assignment • Structural Restraint Extraction • Structure Calculation
NMR Data Interpretation • Peak Assignment. • Map resonance peaks from different NMR spectra to same residue • Identify adjacency relationship • Assign the segments to the protein sequence • Currently done manually • Bottleneck for high throughput structure determination
Our Focus Peak Assignment • Two kinds of information available • Distribution of spin systems for different amino acids • The adjacency information between spin systems
b1 b2 b3 b4 b5 b6 a1 a2 a3 a4 a5 a6 Problem Description (Input) (a1,b1) (a2,b2) (a3,b3) (a4,b4) (a5,b5) (a6,b6)
b1 b2 b3 b4 b5 b6 a1 a2 a3 a4 a5 a6 Problem Description (Output) (a1,b1) (a5,b5) (a3,b3) (a4,b4) (a2,b2) (a6,b6) ?
b1 b2 b3 b4 b5 b6 a1 a2 a3 a4 a5 a6 Problem Description (Output) (a1,b1) (a5,b5) (a3,b3) (a4,b4) (a2,b2) (a6,b6)
b1 b2 b3 b4 b5 b6 a1 a2 a3 a4 a5 a6 Problem Description (Output) (a1,b1) (a5,b5) (a3,b3) (a4,b4) (a2,b2) (a6,b6)
b1 b2 b3 b4 b5 b6 a1 a2 a3 a4 a5 a6 Problem Description (Output) (a1,b1) (a5,b5) (a3,b3) (a4,b4) (a2,b2) (a6,b6)
b1 b2 b3 b4 b5 b6 a1 a2 a3 a4 a5 a6 Problem Description (Output) (a1,b1) (a5,b5) (a3,b3) (a4,b4) (a2,b2) (a6,b6)
b1 b2 b3 b4 b5 b6 a1 a2 a3 a4 a5 a6 Problem Description (Output) (a1,b1) (a5,b5) (a3,b3) (a4,b4) (a2,b2) (a6,b6)
b1 b2 b3 b4 b5 b6 a1 a2 a3 a4 a5 a6 Problem Description (Output) (a1,b1) (a5,b5) (a3,b3) (a4,b4) (a2,b2) (a6,b6)
b5 b1 b6 b2 b3 b4 a1 a3 a6 a4 a2 a5 Problem Description (Output) (a1,b1) (a5,b5) (a3,b3) (a4,b4) (a2,b2) (a6,b6) ≤ ≤ ≤ ≤ ≤ ≤ ≤ ≤ ≤ ≤
v1 v2 v3 v4 v5 v6 u1 u2 u3 u4 u5 u6 Equivalent Problem Description (a1,b1) (a5,b5) (a3,b3) (a4,b4) (a2,b2) (a6,b6)
v1 v2 v3 v4 v5 v6 u1 u2 u3 u4 u5 u6 Cyclic Augmentation (a1,b1) (a5,b5) (a3,b3) (a4,b4) (a2,b2) (a6,b6) A matching M is called a cyclic augmentationif HM forms a hamiltonian cycle.
Cost of an edge in M 270 200 Cost of this edge is 70
Cost of an edge in M 100 1200 Cost of this edge is 1100
v1 v2 v3 v4 v5 v6 u1 u2 u3 u4 u5 u6 Sum of cost of edges Minimum Bipartite Cyclic Augmentation Input: U = {u1, u2,…, un} V = {v1, v2,…, vn} H : a perfect matching between U and V • Output: A perfect matching M such that • HM forms a cycle • ∑(u,v)M|u-v| is minimized
v1 v2 v3 v4 v5 v6 u1 u2 u3 u4 u5 u6 Cost of most expensive edges Bottleneck Bipartite Cyclic Augmentation Input: U = {u1, u2,…, un} V = {v1, v2,…, vn} H : a perfect matching between U and V • Output: A perfect matching M such that • HM forms a cycle • max(u,v)M{|u-v|} is minimized
Outline • MD : the minimum cost matching • We will transform MD to an optimal cost matching using exchange operations • Some properties of an optimal matching to prune down the space of exchanges required • Exchange graph • Optimal matching – MST in exchange graph
MD : the minimum cost matching The minimum cost matching may not be a cyclic augmentation
Exchanges Exchanges between different cycles merges them
Cost of an Exchange x Cost of the exchange is 2.x
Transform MD into a minimum cost cyclic augmentation using exchange operations Which exchanges will yield the optimal cyclic augmentation?
Clusters l1 l2 l3 l4 l5 l6 l7 l8
Exchange Graph l1 l2 l3 l4 l5 l6 l7 l8 67 Nodes ≡ Cycles in MD 12 56 45 78 Edges ≡ Adjacent Clusters in MD 23 34
Exchange Graph l1 l2 l3 l4 l5 l6 l7 l8 67 12 56 Weight on Edges ≡ Cost of corresponding . Exchange 45 78 23 34
Solution Exchanges corresponding to the Minimum Spanning Tree on Exchange Graph yield a minimum cost cyclic augmentation
Results • Minimum Bipartite Cyclic Augmentation • Bottleneck Bipartite Cyclic Augmentation Ω(n log n) 3 approx. algorithm