22
09/30/03 Pattern Matching Longest Common Subsequence Bill Robertson Zac Livingston John Garvin Bradley Wagner Nick Becker

Pattern Matching Longest Common Subsequence

  • Upload
    creda

  • View
    90

  • Download
    1

Embed Size (px)

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 Presentation

Citation preview

Page 1: Pattern Matching Longest Common Subsequence

09/30/03

Pattern MatchingLongest Common SubsequenceBill RobertsonZac LivingstonJohn GarvinBradley WagnerNick Becker

Page 2: Pattern Matching Longest Common Subsequence

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

09/30/03

Introduction

• Present real-world scenario or interesting application• Grab audience

Page 4: Pattern Matching Longest Common Subsequence

09/30/03

Pattern Matching

• Main objective• Issues to be solved• Basic overview

Page 5: Pattern Matching Longest Common Subsequence

09/30/03

History

• Timeline preferable• History of problems solved by pattern matching

Page 6: Pattern Matching Longest Common Subsequence

09/30/03

Areas of Application

• Application areas• Types of pattern matching

Page 7: Pattern Matching Longest Common Subsequence

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

09/30/03

Dynamic Programming

• Overview• Motivation of Area• Key requirements• Alternatives (greedy algorithms)

Page 9: Pattern Matching Longest Common Subsequence

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

09/30/03

LCS algorithm, step one

LCS(X=“All your base”, Y=“are belong to us”)

Page 11: Pattern Matching Longest Common Subsequence

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

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

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

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

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

09/30/03

Asymptotic complexity

LCS-length:... O(?)... O(?)... O(?)

Total: O(mn)

Page 17: Pattern Matching Longest Common Subsequence

09/30/03

Asymptotic complexity

LCS-find:... O(?)... O(?)...

Total: O(m+n)

Page 18: Pattern Matching Longest Common Subsequence

09/30/03

Correctness

• Proof sketch

Page 19: Pattern Matching Longest Common Subsequence

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

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

09/30/03

Conclusion

• Summarize what the audience should have learned

Page 22: Pattern Matching Longest Common Subsequence

09/30/03

Bibliography