Lateness Models
Download
1 / 18

Lateness Models - PowerPoint PPT Presentation


  • 254 Views
  • Updated On :

Lateness Models Contents 1. Lawler’s algorithm which gives an optimal schedule with the minimum cost h max when the jobs are subject to precedence relationship 1 | prec | h max 2. A branch-and-bound algorithm for the scheduling problems with the objective to minimise lateness

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Lateness Models' - libitha


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Slide1 l.jpg

Lateness Models

  • Contents

  • 1. Lawler’s algorithm which gives an optimal schedule with the minimum cost hmax

  • when the jobs are subject to precedence relationship

  • 1 | prec | hmax

  • 2. A branch-and-bound algorithm for the scheduling problems with the objective to minimise lateness

  • 1 | rj | Lmax

  • Literature:

  • Scheduling, Theory, Algorithms, and Systems, Michael Pinedo, Prentice Hall, 1995, Chapter 3.2 or new: Second Addition, 2002, Chapter 3.


Slide2 l.jpg

  • Lawler’s Algorithm

  • Backward algorithm which gives an optimal schedule for

  • 1 | prec | hmaxhmax= max ( h1(C1), ... ,hn(Cn) )

  • hjare nondecreasing cost functions

  • Notation

  • makespan Cmax =  pj completion of the last job

  • J set of jobs already scheduled

  • they have to be processed during the time interval

  • JC complement ofset J, set of jobs still to be scheduled

  • J'  JC set of jobs that can be scheduled immediately before set J (schedulable jobs)


Slide3 l.jpg

Lawler’s Algorithm for 1 | | hmax

Step 1.

J = 

JC = {1,...,n}

k = n

Step 2.

Let j* be such that

Place j* in J in the k-th order position

Delete j* from JC

Step 3.

If JC =  then Stop

else k = k - 1

go to Step 2


Slide4 l.jpg

...

3

5

10

Example (no precedence relationships between jobs)

J = JC={1, 2, 3} jobs still to be scheduled

Cmax = 10

h1(10) = 11

h2(10) =12

h3(10) =10

Job 3 is scheduled last and has to be processed in [5, 10].


Slide5 l.jpg

1

2

3

5

10

2

1

3

5

10

J = {3} JC={1, 2} jobs still to be scheduled

Cmax = 5

h1(5) = 6

h2(5) = 6

Either job 1 or job 2 may be processed before job 3.

or

Two schedules are optimal: 1, 2, 3 and 2, 1, 3


Slide6 l.jpg

Lawler’sAlgorithm for 1 | prec | hmax

Step 1.

J = , JC = {1,...,n}

J' the set of all jobs with no successors

k = n

Step 2.

Let j* be such that

Place j* in J in the k-th order position

Delete j* from JC

Modify J' to represent the set of jobs which can be scheduledimmediately before set J.

Step 3.

If JC =  then Stop

else k = k - 1

go to Step 2


Slide7 l.jpg

...

3

5

10

2

3

2

5

10

1

2

3

5

10

Example. What will happen in the previous example if theprecedence 1  2 has to be taken into account?

J = 

JC={1, 2, 3} still to be scheduled J'={2, 3} have no successors

Cmax = 10

h2(10) = 12

h3(10) = 10

J = {3}

JC={1, 2} still to be scheduled J'={2} can be scheduled immediately before J

Cmax = 5

h2(5) = 6

J = {3, 2} JC={1} J'={1}

h1(2) = 3

Optimal schedule: 1, 2, 3,

hmax= 10

2


Slide8 l.jpg

1 || Lmax is the special case of the 1 | prec | hmax

where hj = Cj - dj

algorithm results in the schedule that orders jobs in increasing orderof their due dates - earliest due date first rule (EDD)

1 | rj | Lmax is NP hard , branch-and-bound is used

1 | rj , prec | Lmax similar branch-and-bound


Slide9 l.jpg

S

S1

S2

Sn

. . .

S12

S13

. . .

. . .

  • Branch-and-bound algorithm

  • Search space can grow very large as the number of variables in the problem increases!

  • Branch-and-bound is a heuristic that works on the idea of successive partitioning of the search space.

S = S1 S2... Sn

S1 S2...  Sn = 


Slide10 l.jpg

S

S1

S2

Sn

. . .

S12

S13

. . .

  • We need some means for obtaining a lower bound on the cost for any particular solution (the task is to minimise the cost).

fboundf(x), xS1

fbound f(x), xS2

there is no need to exploreS2


Slide11 l.jpg

Branch-and-bound algorithm

Step 1

Initialise P =  Si(determine the partitions)

Initialise fbound

Step 2

Remove best partition Si from P

Reduce or subdivide Si into Sij

Update fbound

P = PSij

For all SijP do

if lower bound of f(Sij) > fbound then remove Sij from P

Step 3

If not termination condition then go to Step 2


Slide12 l.jpg

*,*,*,*

1,*,*,*

2,*,*,*

n,*,*,*

. . .

1,2,*,*

1,3,*,*

. . .

. . .

Branch-and-bound algorithm for1 | rj | Lmax

  • Solution space contains n! schedules (n is number of jobs).

  • Total enumeration is not viable !


Slide13 l.jpg

*,*,*,*

1,*,*,*

2,*,*,*

n,*,*,*

. . .

1,2,*,*

1,3,*,*

. . .

. . .

1st level

2nd level

Branching rule:

k-1 level, j1, ... , jk-1 are scheduled,

jk need to be considered if no job still to be scheduled can notbe processed before the release time of jk

that is:

J set of jobs not yet scheduled

t is time when jk-1 is completed


Slide14 l.jpg

  • Lower bound:

  • Preemptive earliest due date (EDD) rule is optimal for 1 | rjprmp | Lmax

  • A preemptive schedule will have a maximum lateness not greater than a non-preemtive schedule.

  • If a preemptive EDD rule gives a nonpreemptive schedule then all nodes with a larger lower bound can be disregarded.


Slide15 l.jpg

1

2

12

3

7

2

1

0

5

9

2

1

2

0

3

7

9

Example.

  • Non-preemptive schedules

L1=3

L2=6

Lmax=6

0

L1=5

L2=-1

Lmax=5

  • Preemptive schedule obtained using EDD

L1=3

L2=3

Lmax=3

  • the lowest Lmax !


Slide16 l.jpg

Example

*,*,*,*

L.B. = 5

L.B. = 7

1,*,*,*

2,*,*,*

3,*,*,*

4,*,*,*

job 1 could be processedbefore job 4

1,2,*,*

1,3,*,*

job 2 could be processedbefore job 3

L.B. = 5

L.B. = 6

1,3,4,2


Slide17 l.jpg

*, *, *, *

1,*,*,*

1 [0, 4] L1=-4

3 [4, 5]

4 [5, 10] L4=0

3 [10, 15] L3=4

2 [15, 17] L2=5

2,*,*,*

2 [1, 3] L2=-9

1 [3, 7] L1=-1

4 [7, 12] L4=2

3 [12, 18] L3=7

4,*,*,*

either job 1 or 2can be processedbefore 4 !

3,*,*,*

job 2can be processedbefore 3 !

1,2,*,*

1 [0, 4] L1=-4

2 [4, 6] L2=-6

4 [6, 11] L4=1

3 [11, 17] L3=6

1,3,*,*

1 [0, 4] L1=-4

3 [4, 10] L3=-1

4 [10, 15] L4=5

2 [15, 17] L3=5

Schedule: 1, 3, 4, 2,


Slide18 l.jpg

Summary

  • 1 | prec | hmax , hmax=max( h1(C1), ... ,hn(Cn) ), Lawler’s algorithm

  • 1 || Lmax EDD rule

  • 1 | rj | Lmax is NP hard , branch-and-bound is used

  • 1 | rj , prec | Lmax similar branch-and-bound

  • 1 | rj, prmp | Lmax preemptive EDD rule