the critical-path algorithm - people.hsc.edupeople.hsc.edu/faculty-staff/robbk/math111/lectures/fall...

28
The Critical-Path Algorithm Lecture 30 Sections 8.3 - 8.4 Robb T. Koether Hampden-Sydney College Wed, Nov 13, 2013 Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 1 / 15

Upload: others

Post on 12-May-2020

32 views

Category:

Documents


1 download

TRANSCRIPT

The Critical-Path AlgorithmLecture 30

Sections 8.3 - 8.4

Robb T. Koether

Hampden-Sydney College

Wed, Nov 13, 2013

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 1 / 15

1 Critical Paths

2 The Backflow Algorithm

3 The Critical-Path Algorithm

4 Assignment

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 2 / 15

Outline

1 Critical Paths

2 The Backflow Algorithm

3 The Critical-Path Algorithm

4 Assignment

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 3 / 15

Definitions

Definition (Critical Path for a Vertex)The critical path for a vertex is the path from that vertex to END withthe longest processing time.

Definition (Critical Path for a Project)The critical path for a project is the critical path from START to END.

Definition (Critical Time)The critical time for a vertex or project is the processing time of itscritical path.

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 4 / 15

Example

Start(0)B(5)

D(2)

A(6)

C(7)

End(0)

E(5) H(4)

G(3)

F(3)

The critical time of a project is the shortest possible time requiredto complete the project.

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 5 / 15

Example

Start(0)B(5)

D(2)

A(6)

C(7)

End(0)

E(5) H(4)

G(3)

F(3)

The critical time of a project is the shortest possible time requiredto complete the project.

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 6 / 15

Outline

1 Critical Paths

2 The Backflow Algorithm

3 The Critical-Path Algorithm

4 Assignment

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 7 / 15

The Backflow Algorithm

Definition (The Backflow Algorithm)The backflow algorithm finds the critical path by the following method.

1 Beginning with END and working back to START, find the criticaltime for each vertex. The critical time for a vertex is theprocessing time for that vertex plus the largest critical time of thevertices incident from that vertex.

2 The critical path for the project is the path from START to ENDwhose edges connect each vertex to its successor with thegreatest critical time.

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 8 / 15

The Backflow Algorithm

Example (The Backflow Algorithm)

Start(0)B(5)

D(2)

A(6)

C(7)

End(0)

E(5) H(4)

G(3)

F(3)

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 9 / 15

The Backflow Algorithm

Example (The Backflow Algorithm)

Start(0)B(5)

D(2)

A(6)

C(7)

End(0)

E(5) H(4)

G(3)

F(3)

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 9 / 15

The Backflow Algorithm

Example (The Backflow Algorithm)

Start(0)B(5)

D(5)

A(6)

C(7)

End(0)

E(9) H(4)

G(3)

F(3)

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 9 / 15

The Backflow Algorithm

Example (The Backflow Algorithm)

Start(0)B(14)

D(5)

A(11)

C(16)

End(0)

E(9) H(4)

G(3)

F(3)

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 9 / 15

The Backflow Algorithm

Example (The Backflow Algorithm)

Start(16)B(14)

D(5)

A(11)

C(16)

End(0)

E(9) H(4)

G(3)

F(3)

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 9 / 15

The Backflow Algorithm

Example (The Backflow Algorithm)

Start(16)B(14)

D(5)

A(11)

C(16)

End(0)

E(9) H(4)

G(3)

F(3)

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 9 / 15

Outline

1 Critical Paths

2 The Backflow Algorithm

3 The Critical-Path Algorithm

4 Assignment

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 10 / 15

The Critical-Path Algorithm

Definition (The Critical-Path Algorithm)The critical-path algorithm creates a schedule by the following method.

1 Use the backflow algorithm to find the critical time of every task inthe project.

2 Create a priority list with the tasks listed in order of decreasingcritical time.

3 Use the priority list to create a schedule.

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 11 / 15

Example

Example (The Critical-Path Algorithm)

Start(16)B(14)

D(5)

A(11)

C(16)

End(0)

E(9) H(4)

G(3)

F(3)

The priority list is C, B, A, E , D, H, F , G.

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 12 / 15

Example

Example (The Critical-Path Algorithm)

Start(16)B(14)

D(5)

A(11)

C(16)

End(0)

E(9) H(4)

G(3)

F(3)

Priority list: C, B, A, E , D, H, F , G

0 5 10 15 20

Processor 1Processor 2

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 13 / 15

Example

Example (The Critical-Path Algorithm)

Start(16)B(14)

D(5)

A(11)

C(16)

End(0)

E(9) H(4)

G(3)

F(3)

Priority list: C, B, A, E , D, H, F , G

C(7)

0 5 10 15 20

Processor 1Processor 2

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 13 / 15

Example

Example (The Critical-Path Algorithm)

Start(16)B(14)

D(5)

A(11)

C(16)

End(0)

E(9) H(4)

G(3)

F(3)

Priority list: C, B, A, E , D, H, F , G

C(7)

0 5 10 15 20

B(5)Processor 1Processor 2

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 13 / 15

Example

Example (The Critical-Path Algorithm)

Start(16)B(14)

D(5)

A(11)

C(16)

End(0)

E(9) H(4)

G(3)

F(3)

Priority list: C, B, A, E , D, H, F , G

C(7)

0 5 10 15 20

B(5) A(6)Processor 1Processor 2

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 13 / 15

Example

Example (The Critical-Path Algorithm)

Start(16)B(14)

D(5)

A(11)

C(16)

End(0)

E(9) H(4)

G(3)

F(3)

Priority list: C, B, A, E , D, H, F , G

C(7)

0 5 10 15 20

B(5) A(6)E(5)Processor 1

Processor 2

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 13 / 15

Example

Example (The Critical-Path Algorithm)

Start(16)B(14)

D(5)

A(11)

C(16)

End(0)

E(9) H(4)

G(3)

F(3)

Priority list: C, B, A, E , D, H, F , G

C(7)

0 5 10 15 20

B(5) A(6)E(5)

D(2)Processor 1Processor 2

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 13 / 15

Example

Example (The Critical-Path Algorithm)

Start(16)B(14)

D(5)

A(11)

C(16)

End(0)

E(9) H(4)

G(3)

F(3)

Priority list: C, B, A, E , D, H, F , G

C(7)

0 5 10 15 20

B(5) A(6)E(5)

D(2)H(4)Processor 1

Processor 2

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 13 / 15

Example

Example (The Critical-Path Algorithm)

Start(16)B(14)

D(5)

A(11)

C(16)

End(0)

E(9) H(4)

G(3)

F(3)

Priority list: C, B, A, E , D, H, F , G

C(7)

0 5 10 15 20

B(5) A(6)E(5)

D(2)H(4)

F(3)Processor 1Processor 2

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 13 / 15

Example

Example (The Critical-Path Algorithm)

Start(16)B(14)

D(5)

A(11)

C(16)

End(0)

E(9) H(4)

G(3)

F(3)

Priority list: C, B, A, E , D, H, F , G

C(7)

0 5 10 15 20

B(5) A(6)E(5)

D(2)H(4)

F(3)Processor 1Processor 2 G(3)

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 13 / 15

Outline

1 Critical Paths

2 The Backflow Algorithm

3 The Critical-Path Algorithm

4 Assignment

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 14 / 15

Assignment

AssignmentPage 256: Exercises 49, 52, 53, 56.

Robb T. Koether (Hampden-Sydney College) The Critical-Path Algorithm Wed, Nov 13, 2013 15 / 15