Top Banner
Dynamic Programming
20

Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Mar 08, 2018

Download

Documents

doannhan
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Dynamic Programming

Page 2: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Introduction

Page 3: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Assembly line scheduling

Page 4: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Assembly line scheduling

Page 5: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Assembly line scheduling

Page 6: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line
Page 7: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Optimal Substructure

Page 8: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Recursive solution

Page 9: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Assembly line scheduling

Page 10: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Computing the fastest time

Page 11: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Computing the fastest time

Page 12: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Constructing the fastest way

Page 13: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Motivation

• We often want to compare the DNA of two or

more organisms.

• Expressed as a string over the set {A, C, G, T}

• S1=ACCGGTA………..• S1=ACCGGTA………..

• S2=ACCGCTA…………

• How similar are these two strands?

• How long is the longest-common-

subsequence?

Page 14: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Longest common subsequence

Page 15: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Optimal Substructure

Big Idea: The LCS of two sequences contains within it

an LCS of the prefixes of the two sequences.

Page 16: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Recursive formulation

Page 17: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Example

Page 18: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Compute the length of the Optimal

solution

Page 19: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Tables computed by LCS-Length

Page 20: Dynamic Programming - webpages.ursinus.eduwebpages.ursinus.edu/adhawan/algorithms/Dynamic.pdf · Assembly line scheduling. ... Automobile factory with two assembly lines. Each line

Constructing the LCS