Further ¡Improvement ¡in ¡Approximating ¡the ¡ Maximum ¡Duo-‑Preservation ¡String ¡ Mapping ¡Problem ¡
Brian ¡Brubach ¡ University ¡of ¡Maryland, ¡College ¡Park ¡
16th ¡Workshop ¡on ¡Algorithms ¡in ¡BioinformaAcs ¡– ¡WABI ¡2016 ¡
Further Improvement in Approximating the Maximum - - PowerPoint PPT Presentation
Further Improvement in Approximating the Maximum Duo-Preservation String Mapping Problem Brian Brubach University of Maryland, College Park 16 th Workshop on
Brian ¡Brubach ¡ University ¡of ¡Maryland, ¡College ¡Park ¡
16th ¡Workshop ¡on ¡Algorithms ¡in ¡BioinformaAcs ¡– ¡WABI ¡2016 ¡
– Duo-‑preservaAon ¡problem ¡
– String ¡ParAAon ¡problem ¡
– Yuor ¡bairn ¡can ¡slove ¡tshee ¡pbroelms ¡
– Rubert, ¡Feijão, ¡Braga, ¡Stoye, ¡MarAnez ¡(WABI ¡‘16) ¡ – UAlizes ¡an ¡approximaAon ¡algorithm ¡for ¡MCSP ¡
A: ¡ a ¡ b ¡ c ¡ d ¡ d ¡ c ¡ b ¡ a ¡ B: ¡ b ¡ c ¡ a ¡ d ¡ d ¡ c ¡ a ¡ b ¡
number ¡of ¡duos ¡ A: ¡ a ¡ b ¡ c ¡ d ¡ d ¡ c ¡ b ¡ a ¡ B: ¡ b ¡ c ¡ a ¡ d ¡ d ¡ c ¡ a ¡ b ¡
number ¡of ¡duos ¡
A: ¡ a ¡ b ¡ c ¡ d ¡ d ¡ c ¡ b ¡ a ¡ B: ¡ b ¡ c ¡ a ¡ d ¡ d ¡ c ¡ a ¡ b ¡
number ¡of ¡duos ¡
duo ¡in ¡the ¡other ¡string ¡ A: ¡ a ¡ b ¡ c ¡ d ¡ d ¡ c ¡ b ¡ a ¡ 3 ¡duos ¡preserved ¡ B: ¡ b ¡ c ¡ a ¡ d ¡ d ¡ c ¡ a ¡ b ¡
b ¡ c ¡ a ¡ d ¡ d ¡ c ¡ a ¡ b ¡ a ¡ b ¡ c ¡ d ¡ d ¡ c ¡ b ¡ a ¡
ParAAon ¡problem ¡(MCSP) ¡ A: ¡ 3 ¡duos ¡preserved ¡ B: ¡
b ¡ c ¡ a ¡ d ¡ d ¡ c ¡ a ¡ b ¡ a ¡ b ¡ c ¡ d ¡ d ¡ c ¡ b ¡ a ¡
ParAAon ¡problem ¡(MCSP) ¡
– Separate ¡the ¡strings ¡into ¡idenAcal ¡parAAons ¡of ¡min ¡cardinality ¡
A: ¡ 3 ¡duos ¡preserved ¡ B: ¡ 5 ¡substrings ¡
b ¡ c ¡ a ¡ d ¡ d ¡ c ¡ a ¡ b ¡ a ¡ b ¡ c ¡ d ¡ d ¡ c ¡ b ¡ a ¡
ParAAon ¡problem ¡(MCSP) ¡
– Separate ¡the ¡strings ¡into ¡idenAcal ¡parAAons ¡of ¡min ¡cardinality ¡
A: ¡ 3 ¡duos ¡preserved ¡ B: ¡ 5 ¡substrings ¡ 5 ¡+ ¡3 ¡= ¡length ¡
b ¡ c ¡ a ¡ d ¡ d ¡ c ¡ a ¡ b ¡ a ¡ b ¡ c ¡ d ¡ d ¡ c ¡ b ¡ a ¡
ParAAon ¡problem ¡(MCSP) ¡
– Separate ¡the ¡strings ¡into ¡idenAcal ¡parAAons ¡of ¡min ¡cardinality ¡
most ¡k ¡Ames ¡in ¡each ¡string ¡ A: ¡ 3 ¡duos ¡preserved ¡ B: ¡ 5 ¡substrings ¡ 5 ¡+ ¡3 ¡= ¡length ¡
Problem ¡
Authors/year ¡ k-‑MPSM ¡ k2 ¡ Chen, ¡Chen, ¡Samatova, ¡Peng ¡Wang, ¡ and ¡Tang ¡(2014) ¡ MPSM ¡ 4 ¡ Boria, ¡Kurpisz, ¡Leppänen, ¡and ¡ Mastrolilli ¡(2014) ¡ 3.5 ¡ Boria, ¡Cabodi, ¡CamuraA, ¡Palena, ¡ Pasini, ¡and ¡Quer ¡(2016) ¡ 3.25 ¡ This ¡paper ¡(2016) ¡ MCSP ¡ O(log ¡n ¡log*n) ¡ Cormode ¡and ¡Muthukrishnan ¡(2002) ¡ (edit ¡distance ¡with ¡moves ¡problem) ¡
– Goldstein, ¡Kolman, ¡and ¡Zheng ¡(2004) ¡ – Implies ¡Duo-‑preservaAon ¡is ¡also ¡NP-‑hard ¡
– Boria, ¡Kurpisz, ¡Leppänen, ¡and ¡Mastrolilli ¡(2014) ¡
– Duo-‑preservaAon ¡is ¡FPT ¡when ¡parameterized ¡by ¡ number ¡of ¡preserved ¡duos ¡
– Blum, ¡Lozano, ¡Davidson ¡(2015) ¡ – Ferdous, ¡Rahman ¡(2015) ¡
– Chen, ¡Zheng, ¡Fu, ¡Nan, ¡Zhong, ¡Lonardi, ¡Jiang ¡(2005) ¡ – Swenson, ¡Marron, ¡Earnest-‑deyoung, ¡Moret ¡(2005) ¡
– Add ¡edges ¡between ¡idenAcal ¡duos ¡ – Max ¡matching ¡is ¡upper ¡bound ¡on ¡max ¡duo-‑preservaAon ¡
at ¡ tc ¡ ct ¡ ta ¡ aa ¡ at ¡ ta ¡ aa ¡ at ¡ tc ¡
A: ¡ a ¡ t ¡ c ¡ t ¡ a ¡ a ¡ B: ¡ a ¡ t ¡ a ¡ a ¡ t ¡ c ¡
– Add ¡edges ¡between ¡idenAcal ¡duos ¡ – Max ¡matching ¡is ¡upper ¡bound ¡on ¡max ¡duo-‑preservaAon ¡
at ¡ tc ¡ ct ¡ ta ¡ aa ¡ at ¡ ta ¡ aa ¡ at ¡ tc ¡
A: ¡ a ¡ t ¡ c ¡ t ¡ a ¡ a ¡ B: ¡ a ¡ t ¡ a ¡ a ¡ t ¡ c ¡
– Add ¡edges ¡between ¡idenAcal ¡duos ¡ – Max ¡matching ¡is ¡upper ¡bound ¡on ¡max ¡duo-‑preservaAon ¡
– Type ¡1: ¡two ¡edges ¡to ¡the ¡same ¡duo ¡
at ¡ tc ¡ ct ¡ ta ¡ aa ¡ at ¡ ta ¡ aa ¡ at ¡ tc ¡
A: ¡ a ¡ t ¡ c ¡ t ¡ a ¡ a ¡ B: ¡ a ¡ t ¡ a ¡ a ¡ t ¡ c ¡
– Add ¡edges ¡between ¡idenAcal ¡duos ¡ – Max ¡matching ¡is ¡upper ¡bound ¡on ¡max ¡duo-‑preservaAon ¡
– Type ¡1: ¡two ¡edges ¡to ¡the ¡same ¡duo ¡ – Type ¡2: ¡from ¡consecuAve ¡duos ¡to ¡non-‑consecuAve ¡duos ¡
at ¡ tc ¡ ct ¡ ta ¡ aa ¡ at ¡ ta ¡ aa ¡ at ¡ tc ¡
A: ¡ a ¡ t ¡ c ¡ t ¡ a ¡ a ¡ B: ¡ a ¡ t ¡ a ¡ a ¡ t ¡ c ¡
– First ¡find ¡weighted ¡matching ¡on ¡triplets ¡ – Translate ¡to ¡a ¡fracAonal ¡duo ¡matching ¡ – Gives ¡a ¡Aghter ¡upper ¡bound ¡
– Based ¡on ¡local ¡graph ¡structures ¡
– Append ¡special ¡character ¡‘&’ ¡to ¡strings ¡(& ¡≠ ¡&) ¡ – Construct ¡weighted ¡biparAte ¡graph ¡on ¡triplets ¡
– Find ¡a ¡weighted ¡matching ¡on ¡triplets ¡that ¡upper ¡bounds ¡ the ¡max ¡preserved ¡duos ¡
– Use ¡triplet ¡matching ¡to ¡construct ¡a ¡fracAonal ¡duo ¡ matching ¡
– Translate ¡edges ¡into ¡a ¡string ¡mapping ¡that ¡preserves ¡at ¡ least ¡1/3.25 ¡of ¡the ¡max ¡preserved ¡duos ¡
weight ¡1 ¡
both ¡match, ¡add ¡an ¡edge ¡with ¡weight ¡0.5 ¡
&at ¡ atc ¡ tct ¡ cta ¡ taa ¡ aa& ¡ &at ¡ ata ¡ taa ¡ aat ¡ atc ¡ tc& ¡
A: ¡& ¡a ¡t ¡c ¡t ¡a ¡a ¡& ¡ B: ¡& ¡a ¡t ¡a ¡a ¡t ¡c ¡& ¡ = ¡0.5 ¡ = ¡1 ¡ No ¡edge ¡here ¡
maximum ¡number ¡of ¡preserved ¡duos ¡
&at ¡ atc ¡ tct ¡ cta ¡ taa ¡ aa& ¡ &at ¡ ata ¡ taa ¡ aat ¡ atc ¡ tc& ¡
A: ¡& ¡a ¡t ¡c ¡t ¡a ¡a ¡& ¡ B: ¡& ¡a ¡t ¡a ¡a ¡t ¡c ¡& ¡ = ¡0.5 ¡ = ¡1 ¡
– Add ¡0.5 ¡edge ¡for ¡both ¡duo ¡pairs ¡
– Add ¡0.5 ¡edge ¡only ¡for ¡duo ¡pair ¡that ¡matches ¡
A: ¡& ¡a ¡t ¡c ¡t ¡a ¡a ¡& ¡ B: ¡& ¡a ¡t ¡a ¡a ¡t ¡c ¡& ¡ &at ¡ atc ¡ tct ¡ cta ¡ taa ¡ aa& ¡ &at ¡ ata ¡ taa ¡ aat ¡ atc ¡ tc& ¡
A: ¡& ¡a ¡t ¡c ¡t ¡a ¡a ¡& ¡ B: ¡& ¡a ¡t ¡a ¡a ¡t ¡c ¡& ¡ &at ¡ atc ¡ tct ¡ cta ¡ taa ¡ aa& ¡ &at ¡ ata ¡ taa ¡ aat ¡ atc ¡ tc& ¡
at ¡ at ¡ A: ¡& ¡a ¡t ¡c ¡t ¡a ¡a ¡& ¡ B: ¡& ¡a ¡t ¡a ¡a ¡t ¡c ¡& ¡ &at ¡ atc ¡ tct ¡ cta ¡ taa ¡ aa& ¡ &at ¡ ata ¡ taa ¡ aat ¡ atc ¡ tc& ¡
at ¡ at ¡ A: ¡& ¡a ¡t ¡c ¡t ¡a ¡a ¡& ¡ B: ¡& ¡a ¡t ¡a ¡a ¡t ¡c ¡& ¡ &at ¡ atc ¡ tct ¡ cta ¡ taa ¡ aa& ¡ &at ¡ ata ¡ taa ¡ aat ¡ atc ¡ tc& ¡
at ¡ at ¡ A: ¡& ¡a ¡t ¡c ¡t ¡a ¡a ¡& ¡ B: ¡& ¡a ¡t ¡a ¡a ¡t ¡c ¡& ¡ &at ¡ atc ¡ tct ¡ cta ¡ taa ¡ aa& ¡ &at ¡ ata ¡ taa ¡ aat ¡ atc ¡ tc& ¡
at ¡ tc ¡ at ¡ at ¡ tc ¡ A: ¡& ¡a ¡t ¡c ¡t ¡a ¡a ¡& ¡ B: ¡& ¡a ¡t ¡a ¡a ¡t ¡c ¡& ¡ &at ¡ atc ¡ tct ¡ cta ¡ taa ¡ aa& ¡ &at ¡ ata ¡ taa ¡ aat ¡ atc ¡ tc& ¡
at ¡ tc ¡ at ¡ at ¡ tc ¡ A: ¡& ¡a ¡t ¡c ¡t ¡a ¡a ¡& ¡ B: ¡& ¡a ¡t ¡a ¡a ¡t ¡c ¡& ¡ &at ¡ atc ¡ tct ¡ cta ¡ taa ¡ aa& ¡ &at ¡ ata ¡ taa ¡ aat ¡ atc ¡ tc& ¡
at ¡ tc ¡ at ¡ at ¡ tc ¡ A: ¡& ¡a ¡t ¡c ¡t ¡a ¡a ¡& ¡ B: ¡& ¡a ¡t ¡a ¡a ¡t ¡c ¡& ¡ &at ¡ atc ¡ tct ¡ cta ¡ taa ¡ aa& ¡ &at ¡ ata ¡ taa ¡ aat ¡ atc ¡ tc& ¡
at ¡ tc ¡ at ¡ at ¡ tc ¡ A: ¡& ¡a ¡t ¡c ¡t ¡a ¡a ¡& ¡ B: ¡& ¡a ¡t ¡a ¡a ¡t ¡c ¡& ¡ &at ¡ atc ¡ tct ¡ cta ¡ taa ¡ aa& ¡ &at ¡ ata ¡ taa ¡ aat ¡ atc ¡ tc& ¡
at ¡ tc ¡ at ¡ at ¡ tc ¡ A: ¡& ¡a ¡t ¡c ¡t ¡a ¡a ¡& ¡ B: ¡& ¡a ¡t ¡a ¡a ¡t ¡c ¡& ¡ &at ¡ atc ¡ tct ¡ cta ¡ taa ¡ aa& ¡ &at ¡ ata ¡ taa ¡ aat ¡ atc ¡ tc& ¡
at ¡ tc ¡ at ¡ at ¡ tc ¡ A: ¡& ¡a ¡t ¡c ¡t ¡a ¡a ¡& ¡ B: ¡& ¡a ¡t ¡a ¡a ¡t ¡c ¡& ¡ &at ¡ atc ¡ tct ¡ cta ¡ taa ¡ aa& ¡ &at ¡ ata ¡ taa ¡ aat ¡ atc ¡ tc& ¡
at ¡ tc ¡ at ¡ at ¡ tc ¡ A: ¡& ¡a ¡t ¡c ¡t ¡a ¡a ¡& ¡ B: ¡& ¡a ¡t ¡a ¡a ¡t ¡c ¡& ¡ &at ¡ atc ¡ tct ¡ cta ¡ taa ¡ aa& ¡ &at ¡ ata ¡ taa ¡ aat ¡ atc ¡ tc& ¡
&at ¡ atc ¡ tct ¡ cta ¡ taa ¡ aa& ¡ &at ¡ ata ¡ taa ¡ aat ¡ atc ¡ tc& ¡ at ¡ tc ¡ ct ¡ ta ¡ aa ¡ at ¡ ta ¡ aa ¡ at ¡ tc ¡ A: ¡& ¡a ¡t ¡c ¡t ¡a ¡a ¡& ¡ B: ¡& ¡a ¡t ¡a ¡a ¡t ¡c ¡& ¡
– Append ¡special ¡character ¡‘&’ ¡to ¡strings ¡(& ¡≠ ¡&) ¡ – Construct ¡weighted ¡biparAte ¡graph ¡on ¡triplets ¡
– Find ¡a ¡weighted ¡matching ¡on ¡triplets ¡that ¡upper ¡bounds ¡ the ¡max ¡preserved ¡duos ¡
– Use ¡triplet ¡matching ¡to ¡construct ¡a ¡fracAonal ¡duo ¡ matching ¡
– Translate ¡edges ¡into ¡a ¡string ¡mapping ¡that ¡preserves ¡at ¡ least ¡1/3.25 ¡of ¡the ¡max ¡preserved ¡duos ¡
– Selected ¡edge ¡= ¡pair ¡of ¡duos ¡that ¡get ¡mapped ¡to ¡ each ¡other ¡ – Must ¡remove ¡selected ¡edge ¡and ¡conflicAng ¡edges ¡ from ¡the ¡duo ¡matching ¡
i ¡-‑ ¡2 ¡ i ¡-‑ ¡1 ¡ ¡ i ¡ i ¡+ ¡1 ¡ j ¡-‑ ¡2 ¡ j ¡-‑ ¡1 ¡ j ¡ j ¡+ ¡1 ¡ i ¡-‑ ¡1 ¡ i ¡ i ¡+ ¡1 ¡ j ¡-‑ ¡1 ¡ j ¡ j ¡+ ¡1 ¡
i ¡-‑ ¡2 ¡ i ¡-‑ ¡1 ¡ ¡ i ¡ i ¡+ ¡1 ¡ i ¡+ ¡2 ¡ j ¡-‑ ¡2 ¡ j ¡-‑ ¡1 ¡ j ¡ j ¡+ ¡1 ¡ j ¡+ ¡2 ¡ i ¡-‑ ¡1 ¡ i ¡ i ¡+ ¡1 ¡ i ¡+ ¡2 ¡ j ¡-‑ ¡1 ¡ j ¡ j ¡+ ¡1 ¡ j ¡+ ¡2 ¡ i ¡-‑ ¡1 ¡ ¡
– Can ¡this ¡work ¡be ¡combined ¡with ¡local ¡search ¡ techniques ¡of ¡Boria ¡et ¡al ¡(2016)? ¡
– Can ¡only ¡choose ¡one ¡edge ¡for ¡a ¡4-‑mer ¡matching ¡
abcd ¡ abee ¡ ffcd ¡
– Can ¡only ¡choose ¡one ¡edge ¡for ¡a ¡4-‑mer ¡matching ¡ – Duo ¡mapping ¡can ¡match ¡“ab” ¡and ¡“cd” ¡separately ¡
abcd ¡ abee ¡ ffcd ¡