pattern matching longest common subsequence
DESCRIPTION
Pattern Matching Longest Common Subsequence. Bill Robertson Zac Livingston John Garvin Bradley Wagner Nick Becker. Agenda. Introduction Pattern Matching String Matching Dynamic Programming Longest Common Subsequence Application 1 Application 2 Application n Future Areas of Interest. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/1.jpg)
09/30/03
Pattern MatchingLongest Common SubsequenceBill RobertsonZac LivingstonJohn GarvinBradley WagnerNick Becker
![Page 2: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/2.jpg)
09/30/03
Agenda
• Introduction
• Pattern Matching
• String Matching
• Dynamic Programming
• Longest Common Subsequence
• Application 1
• Application 2
• Application n
• Future Areas of Interest
![Page 3: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/3.jpg)
09/30/03
Introduction
• Present real-world scenario or interesting application• Grab audience
![Page 4: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/4.jpg)
09/30/03
Pattern Matching
• Main objective• Issues to be solved• Basic overview
![Page 5: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/5.jpg)
09/30/03
History
• Timeline preferable• History of problems solved by pattern matching
![Page 6: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/6.jpg)
09/30/03
Areas of Application
• Application areas• Types of pattern matching
![Page 7: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/7.jpg)
09/30/03
String Matching
• History• Overview• Highlight various algorithms with respective applications
• Mention LCS problem briefly but need background on dynamic programming in order to fully understand
![Page 8: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/8.jpg)
09/30/03
Dynamic Programming
• Overview• Motivation of Area• Key requirements• Alternatives (greedy algorithms)
![Page 9: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/9.jpg)
09/30/03
Longest Common Subsequence
• Algorithm intro• Analysis• Correctness? …proofs, etc.
• Walk through pseudocode• Step through example
![Page 10: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/10.jpg)
09/30/03
LCS algorithm, step one
LCS(X=“All your base”, Y=“are belong to us”)
![Page 11: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/11.jpg)
09/30/03
LCS algorithm, step one
LCS(X=“All your base”, Y=“are belong to us”)
“A” + LCS(X=“ll your base”, Y=“re belong to us”)
‘A’=’a’
Len(Y)
Len(X)
![Page 12: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/12.jpg)
09/30/03
LCS algorithm, step one
LCS(X=“All your base”, Y=“are belong to us”)
LCS(X=“ll your base”, Y=“are belong to us”)
LCS(X=“All your base”, Y=“re belong to us”)
max
‘A’≠’a’
Len(Y)
Len(X)
![Page 13: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/13.jpg)
09/30/03
LCS algorithm, step one
LCS(X=“All your base”, Y=“are belong to us”)
“A” + LCS(“ll your base”, “re belong to us”)
LCS(“ll your base”, “are belong to us”)
LCS(“All your base”, “re belong to us”)
Len(Y)
Len(X)
![Page 14: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/14.jpg)
09/30/03
LCS algorithm--building table
LCS-Length:
len[0,length(X)] 0len[length(Y),0] 0for i 1 to length(X):for j 1 to length(Y):
if X[i] = Y[j]:
len[i,j] len[i-1,j-1]dir[i,j] “”
else if len[i-1,j] len[i,j-1]:len[i,j] len[i-1,j]dir[i,j] “”
else:
len[i,j] len[i,j-1]dir[i,j] “”
0 0 0 0 0
0
0
0
0 1 1 1 1
![Page 15: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/15.jpg)
09/30/03
LCS algorithm--finding length
LCS-find:.........
0 0 0 0 0
0
0
0
0 1 1 1 1
![Page 16: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/16.jpg)
09/30/03
Asymptotic complexity
LCS-length:... O(?)... O(?)... O(?)
Total: O(mn)
![Page 17: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/17.jpg)
09/30/03
Asymptotic complexity
LCS-find:... O(?)... O(?)...
Total: O(m+n)
![Page 18: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/18.jpg)
09/30/03
Correctness
• Proof sketch
![Page 19: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/19.jpg)
09/30/03
Applications
• Application 1• Application 2• Application n
• Bioinformatics– Sequence alignment
– Secondary protein structure comparison/prediction
– DNA microarrays (if we have time during presentation. would be good idea)
• Relevance of work and how related to LCS
![Page 20: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/20.jpg)
09/30/03
Future Areas of Interest
• Current areas of research and possible directions for work
• Future of field and extensions of algorithm• Theoretical lower bound of LCS
![Page 21: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/21.jpg)
09/30/03
Conclusion
• Summarize what the audience should have learned
![Page 22: Pattern Matching Longest Common Subsequence](https://reader033.vdocuments.site/reader033/viewer/2022050910/56815a9d550346895dc82158/html5/thumbnails/22.jpg)
09/30/03
Bibliography