scheduling theory and applications...2017/04/24  · outlinei 1 aboutorsot laboratory 68 projects 2...

312
Scheduling Theory and Applications Alexander Lazarev Lomonosov Moscow State University National Research University Higher School of Economics Moscow Institute of Physics and Technology (State University) V.A. Trapeznikov Institute of Control Sciences of Russian Academy of Sciences (ICS RAS) [email protected] www.orsot.ru Alexander Lazarev Scheduling Theory and Applications 1 / 210

Upload: others

Post on 04-Oct-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Scheduling Theory and Applications

Alexander Lazarev

Lomonosov Moscow State University

National Research University Higher School of Economics

Moscow Institute of Physics and Technology (State University)

V.A. Trapeznikov Institute of Control Sciences of Russian Academy of Sciences (ICS RAS)

[email protected]

www.orsot.ru

Alexander Lazarev Scheduling Theory and Applications 1 / 210

Page 2: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Outline I1 About ORSOT

Laboratory №68Projects

2 History of Scheduling TheoryGantt chartScheduling theory term

3 Pioneers of scheduling theoryJ. R. Jackson. Scheduling a production to minimize maximumtardiness.W. E. Smith. Various optimizers for single-stage production.S. M. Johnson. Optimal two-and-three-stage production scheduleswith set-up times included.

4 Problem of two production lines5 NP-hard problems

Computational complexity6 Problem classification in scheduling theory

Alexander Lazarev Scheduling Theory and Applications 2 / 210

Page 3: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Outline II7 Problem 1|rj |Lmax

Minimizing maximum latenessSolvable casesAlgorithmsPareto optimal schedules

8 MetricMetric + ApplicationAbsolute error

9 Linear programming problem10 Any not decreasing penalty functions

Dual problem11 GCTC

Problem statementVolume planning problemTimetabling problem

12 Railway schedulingAlexander Lazarev Scheduling Theory and Applications 3 / 210

Page 4: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Outline IIIRailway scheduling pioneersExisting approaches and solution methodsLaboratory projects in railway scheduling

13 Single track railway scheduling problemDynamic programming approachSolution algorithm

14 Resource Constrained Project Scheduling Problem

15 Open problems??? problemP. Baptiste’s problem

16 Conclusion

Alexander Lazarev Scheduling Theory and Applications 4 / 210

Page 5: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

orsot.ru

Laboratory’s site

Alexander Lazarev Scheduling Theory and Applications 5 / 210

Page 6: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Laboratory №68 "Scheduling theory and DiscreteOptimization"

Laboratory №68 of Scheduling Theory and Discrete Optimization wasfounded in 2009 at Institute of Control Sciences. Head of the laboratory isprofessor Alexander Lazarev. Currently it is the only laboratory in Russiastudying problems of Scheduling Theory.

Our site orsot.ru (Operation Research Scheduling OptimizationTimetabling)

Alexander Lazarev Scheduling Theory and Applications 6 / 210

Page 7: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Projects

Optimization problems in astronauticsScheduling for ISS (International Space Station)missionsPlanning of cosmonauts training programManaging railroad trafficManaging railcar fleetsOperative managementMinimizing lateness and travel timeStrategical planning of manufacturingLong-term and short-term planningMinimizing production timeUniform resource load

Alexander Lazarev Scheduling Theory and Applications 7 / 210

Page 8: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Projects

Transport logisticsForming trains and routes

Optimizing assembly linesBalancing and rebalancing assembly linesDistributing operations

Composing study schedulesProgram product on 1C platform

Alexander Lazarev Scheduling Theory and Applications 8 / 210

Page 9: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Gantt chart

Henry Laurence Gantt (1861-1919), Americanmechanical engineer and management consultantwho is best known for his work in the development ofscientific management. In the 1903 he introduced agraphical method of project schedule representationknown as the Gantt chart (Gantt diagram).

"A graphical daily balance in manufacture"(1903)"Organizing for Work"(1919)

Alexander Lazarev Scheduling Theory and Applications 9 / 210

Page 10: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Gantt chart

An example of Gantt chart

Alexander Lazarev Scheduling Theory and Applications 10 / 210

Page 11: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Scheduling theory term

Richard Ernest Bellman (1920–1984), Americanapplied mathematician, famous for his work ondynamic programming and numerous importantcontributions in other fields of mathematics. In the1954 he introduced the term "scheduling theory.

"Mathematical Aspects of Scheduling Theory"(1955)

Alexander Lazarev Scheduling Theory and Applications 11 / 210

Page 12: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Pioneers of scheduling theory. First results.

J. R. Jackson. Scheduling a production to minimize maximum tardiness.Research Report 43, Management Science Research Project, University ofCalifornia at Los Angeles, 1955

W. E. Smith. Various optimizers for single-stage production. NavalResearch Logistic Quarterly, 3:59-66, 1956

S. M. Johnson. Optimal two-and-three-stage production schedules withset-up times included. Naval Research Logistics Quarterly, 1:61-68, 1954

Alexander Lazarev Scheduling Theory and Applications 12 / 210

Page 13: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Pioneers of scheduling theory in USSR.

Tanaev, V.S. and Shkurba, V.V. Vvedenie v teoriyuraspisanii (Introduction to the Scheduling Theory),Moscow: Nauka, 1975

Alexander Lazarev Scheduling Theory and Applications 13 / 210

Page 14: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson.Scheduling a production to minimize maximum tardiness. 1955.

Alexander Lazarev Scheduling Theory and Applications 14 / 210

Page 15: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

1 machine

n jobs, N = {1, 2, 3, . . . , n}rj — release timepj — processing timedj — due date, Dj — deadline.The due dates are allowed to be violated, but the deadlines are not.Schedule π (permutation of jobs)

Alexander Lazarev Scheduling Theory and Applications 15 / 210

Page 16: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

1 machinen jobs, N = {1, 2, 3, . . . , n}

rj — release timepj — processing timedj — due date, Dj — deadline.The due dates are allowed to be violated, but the deadlines are not.Schedule π (permutation of jobs)

Alexander Lazarev Scheduling Theory and Applications 15 / 210

Page 17: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

1 machinen jobs, N = {1, 2, 3, . . . , n}rj — release time

pj — processing timedj — due date, Dj — deadline.The due dates are allowed to be violated, but the deadlines are not.Schedule π (permutation of jobs)

Alexander Lazarev Scheduling Theory and Applications 15 / 210

Page 18: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

1 machinen jobs, N = {1, 2, 3, . . . , n}rj — release timepj — processing time

dj — due date, Dj — deadline.The due dates are allowed to be violated, but the deadlines are not.Schedule π (permutation of jobs)

Alexander Lazarev Scheduling Theory and Applications 15 / 210

Page 19: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

1 machinen jobs, N = {1, 2, 3, . . . , n}rj — release timepj — processing timedj — due date, Dj — deadline.The due dates are allowed to be violated, but the deadlines are not.

Schedule π (permutation of jobs)

Alexander Lazarev Scheduling Theory and Applications 15 / 210

Page 20: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

1 machinen jobs, N = {1, 2, 3, . . . , n}rj — release timepj — processing timedj — due date, Dj — deadline.The due dates are allowed to be violated, but the deadlines are not.Schedule π (permutation of jobs)

Alexander Lazarev Scheduling Theory and Applications 15 / 210

Page 21: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

Note: There are two most common ways of schedule representation:

— The schedule is represented by a permutation of jobs (in what order thejobs should be processed, one after one), for example, π = (6, 3, 2, 1, . . . )means that firstly job 6 is processed, then job 3, then 2 and so on.— The schedule is represented by a vector of job start times Sj , for exampleπ = (10, 0, 11, 5, 6, 4, . . . ) means that job 1 starts at t = 10, job 2 starts att = 0, 3 starts at t = 11 and so on.

Depending on the formulation of considered problem, one method oranother may be more convenient to implement.

Alexander Lazarev Scheduling Theory and Applications 16 / 210

Page 22: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

1 machinen jobs, N = {1, 2, 3, . . . , n}rj — release timepj — processing timedj — due date, Dj — deadline.The due dates are allowed to be violated, but the deadlines are not.Schedule π (permutation of jobs)

Cj (π) — completion time of job j

Alexander Lazarev Scheduling Theory and Applications 17 / 210

Page 23: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

1 machinen jobs, N = {1, 2, 3, . . . , n}rj — release timepj — processing timedj — due date, Dj — deadline.The due dates are allowed to be violated, but the deadlines are not.Schedule π (permutation of jobs)Cj (π) — completion time of job j

Alexander Lazarev Scheduling Theory and Applications 17 / 210

Page 24: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

1 machinen jobs, N = {1, 2, 3, . . . , n}rj — release timepj — processing timedj — due date, Dj — deadline.The due dates are allowed to be violated, but the deadlines are not.Schedule π (permutation of jobs)Cj (π) — completion time of job j

Alexander Lazarev Scheduling Theory and Applications 17 / 210

Page 25: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

Lateness of job j : Cj (π)− dj

Alexander Lazarev Scheduling Theory and Applications 18 / 210

Page 26: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

Lateness of job j : Cj (π)− dj

Alexander Lazarev Scheduling Theory and Applications 18 / 210

Page 27: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

Lateness of j-th job Cj (π)− dj

The goal is to construct a schedule with minimal value of maximumlateness:

minπ

maxj∈N{Cj (π)− dj}

Think, how you would solve this problem.

Jackson’s result: if all release times are zero, ∀j ∈ N rj = 0, thenoptimal schedule π∗ = (j1, j2, . . . , jn) consists of jobs that are sortedaccording to non-decrease of their due dates:

dj1 ≤ dj2 ≤ · · · ≤ djn

Optimal schedule can be obtained by using sorting algorithm withO(n log n) operations

Alexander Lazarev Scheduling Theory and Applications 19 / 210

Page 28: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

Lateness of j-th job Cj (π)− dj

The goal is to construct a schedule with minimal value of maximumlateness:

minπ

maxj∈N{Cj (π)− dj}

Think, how you would solve this problem.Jackson’s result: if all release times are zero, ∀j ∈ N rj = 0, thenoptimal schedule π∗ = (j1, j2, . . . , jn) consists of jobs that are sortedaccording to non-decrease of their due dates:

dj1 ≤ dj2 ≤ · · · ≤ djn

Optimal schedule can be obtained by using sorting algorithm withO(n log n) operations

Alexander Lazarev Scheduling Theory and Applications 19 / 210

Page 29: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

Jackson’s algorithm requires that all the jobs are accessible from thebeginning (∀j ∈ N rj = 0).

What if this requirement is not met (∃ j ∈ N rj 6= 0)?

Alexander Lazarev Scheduling Theory and Applications 20 / 210

Page 30: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

J. R. Jackson. Scheduling a production to minimizemaximum tardiness.

Jackson’s algorithm requires that all the jobs are accessible from thebeginning (∀j ∈ N rj = 0).What if this requirement is not met (∃ j ∈ N rj 6= 0)?

Alexander Lazarev Scheduling Theory and Applications 20 / 210

Page 31: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

W. E. Smith.Various optimizers for single-stage production. 1956

Alexander Lazarev Scheduling Theory and Applications 21 / 210

Page 32: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

W. E. Smith. Various optimizers for single-stage production.

1 machine

n jobs, N = {1, 2, 3, . . . , n}rj = 0, ∀j ∈ N — all jobs are released at t = 0pj — processing timeSchedule π (permutation of jobs)Cj (π) — completion timeObjective function: minimum total completion time

minπ

∑j∈N

Cj (π)

Alexander Lazarev Scheduling Theory and Applications 22 / 210

Page 33: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

W. E. Smith. Various optimizers for single-stage production.

1 machinen jobs, N = {1, 2, 3, . . . , n}

rj = 0, ∀j ∈ N — all jobs are released at t = 0pj — processing timeSchedule π (permutation of jobs)Cj (π) — completion timeObjective function: minimum total completion time

minπ

∑j∈N

Cj (π)

Alexander Lazarev Scheduling Theory and Applications 22 / 210

Page 34: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

W. E. Smith. Various optimizers for single-stage production.

1 machinen jobs, N = {1, 2, 3, . . . , n}rj = 0, ∀j ∈ N — all jobs are released at t = 0

pj — processing timeSchedule π (permutation of jobs)Cj (π) — completion timeObjective function: minimum total completion time

minπ

∑j∈N

Cj (π)

Alexander Lazarev Scheduling Theory and Applications 22 / 210

Page 35: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

W. E. Smith. Various optimizers for single-stage production.

1 machinen jobs, N = {1, 2, 3, . . . , n}rj = 0, ∀j ∈ N — all jobs are released at t = 0pj — processing time

Schedule π (permutation of jobs)Cj (π) — completion timeObjective function: minimum total completion time

minπ

∑j∈N

Cj (π)

Alexander Lazarev Scheduling Theory and Applications 22 / 210

Page 36: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

W. E. Smith. Various optimizers for single-stage production.

1 machinen jobs, N = {1, 2, 3, . . . , n}rj = 0, ∀j ∈ N — all jobs are released at t = 0pj — processing timeSchedule π (permutation of jobs)

Cj (π) — completion timeObjective function: minimum total completion time

minπ

∑j∈N

Cj (π)

Alexander Lazarev Scheduling Theory and Applications 22 / 210

Page 37: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

W. E. Smith. Various optimizers for single-stage production.

1 machinen jobs, N = {1, 2, 3, . . . , n}rj = 0, ∀j ∈ N — all jobs are released at t = 0pj — processing timeSchedule π (permutation of jobs)Cj (π) — completion time

Objective function: minimum total completion time

minπ

∑j∈N

Cj (π)

Alexander Lazarev Scheduling Theory and Applications 22 / 210

Page 38: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

W. E. Smith. Various optimizers for single-stage production.

1 machinen jobs, N = {1, 2, 3, . . . , n}rj = 0, ∀j ∈ N — all jobs are released at t = 0pj — processing timeSchedule π (permutation of jobs)Cj (π) — completion timeObjective function: minimum total completion time

minπ

∑j∈N

Cj (π)

Alexander Lazarev Scheduling Theory and Applications 22 / 210

Page 39: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

W. E. Smith. Various optimizers for single-stage production.

Smith’s result: in optimal schedule π∗ = (j1, j2, . . . , jn) jobs are sortedaccording to non-decrease of their processing times:

pj1 ≤ pj2 ≤ · · · ≤ pjn

Optimal schedule can be obtained by using sorting algorithm withO(n log n) operations

Alexander Lazarev Scheduling Theory and Applications 23 / 210

Page 40: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

W. E. Smith. Various optimizers for single-stage production.

Smith’s result: in optimal schedule π∗ = (j1, j2, . . . , jn) jobs are sortedaccording to non-decrease of their processing times:

pj1 ≤ pj2 ≤ · · · ≤ pjn

Optimal schedule can be obtained by using sorting algorithm withO(n log n) operations

Alexander Lazarev Scheduling Theory and Applications 23 / 210

Page 41: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

W. E. Smith. Various optimizers for single-stage production.

In Smith’s problem all jobs are released at t = 0 (∀j ∈ N rj = 0).

What if this requirement is not met (∃ j ∈ N rj 6= 0)?

Alexander Lazarev Scheduling Theory and Applications 24 / 210

Page 42: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

W. E. Smith. Various optimizers for single-stage production.

In Smith’s problem all jobs are released at t = 0 (∀j ∈ N rj = 0).What if this requirement is not met (∃ j ∈ N rj 6= 0)?

Alexander Lazarev Scheduling Theory and Applications 24 / 210

Page 43: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson.Optimal two-and-three-stage production schedules with set-up

times included. 1954

Alexander Lazarev Scheduling Theory and Applications 25 / 210

Page 44: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

2 machines

N12 jobs with processing order "Machine 1 → Machine 2p1

j , p2j — processing times of job j on machines 1 ("set-up time") and

2 ("actual"processing time), respectivelyC 1

j (π),C 2j (π) — completion times on machines 1 and 2 respectively

Schedule π (permutation of jobs, each job should be processed onmachine 1 first)Objective function: minimum total processing time (makespan)

minπ

maxj∈N{C 2

j (π)}

Alexander Lazarev Scheduling Theory and Applications 26 / 210

Page 45: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

2 machinesN12 jobs with processing order "Machine 1 → Machine 2

p1j , p

2j — processing times of job j on machines 1 ("set-up time") and

2 ("actual"processing time), respectivelyC 1

j (π),C 2j (π) — completion times on machines 1 and 2 respectively

Schedule π (permutation of jobs, each job should be processed onmachine 1 first)Objective function: minimum total processing time (makespan)

minπ

maxj∈N{C 2

j (π)}

Alexander Lazarev Scheduling Theory and Applications 26 / 210

Page 46: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

2 machinesN12 jobs with processing order "Machine 1 → Machine 2p1

j , p2j — processing times of job j on machines 1 ("set-up time") and

2 ("actual"processing time), respectively

C 1j (π),C 2

j (π) — completion times on machines 1 and 2 respectivelySchedule π (permutation of jobs, each job should be processed onmachine 1 first)Objective function: minimum total processing time (makespan)

minπ

maxj∈N{C 2

j (π)}

Alexander Lazarev Scheduling Theory and Applications 26 / 210

Page 47: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

2 machinesN12 jobs with processing order "Machine 1 → Machine 2p1

j , p2j — processing times of job j on machines 1 ("set-up time") and

2 ("actual"processing time), respectivelyC 1

j (π),C 2j (π) — completion times on machines 1 and 2 respectively

Schedule π (permutation of jobs, each job should be processed onmachine 1 first)Objective function: minimum total processing time (makespan)

minπ

maxj∈N{C 2

j (π)}

Alexander Lazarev Scheduling Theory and Applications 26 / 210

Page 48: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

2 machinesN12 jobs with processing order "Machine 1 → Machine 2p1

j , p2j — processing times of job j on machines 1 ("set-up time") and

2 ("actual"processing time), respectivelyC 1

j (π),C 2j (π) — completion times on machines 1 and 2 respectively

Schedule π (permutation of jobs, each job should be processed onmachine 1 first)

Objective function: minimum total processing time (makespan)

minπ

maxj∈N{C 2

j (π)}

Alexander Lazarev Scheduling Theory and Applications 26 / 210

Page 49: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

2 machinesN12 jobs with processing order "Machine 1 → Machine 2p1

j , p2j — processing times of job j on machines 1 ("set-up time") and

2 ("actual"processing time), respectivelyC 1

j (π),C 2j (π) — completion times on machines 1 and 2 respectively

Schedule π (permutation of jobs, each job should be processed onmachine 1 first)Objective function: minimum total processing time (makespan)

minπ

maxj∈N{C 2

j (π)}

Alexander Lazarev Scheduling Theory and Applications 26 / 210

Page 50: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

Example of a feasible schedule:

Alexander Lazarev Scheduling Theory and Applications 27 / 210

Page 51: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

Constraints:1 Each machine may process only one job at a time

2 Each job may be processed at machine 2 only after it was processed atmachine 1, i.e. moment of processing completion of job j at machine 1cannot exceed moment of processing initiation of the same job atmachine 2

3 Processing of any job cannot be interrupted: if processing of job i onmachine j was initiated at the moment of time t , it should remainprocessing on the same machine until the moment of time t + pj

i

Alexander Lazarev Scheduling Theory and Applications 28 / 210

Page 52: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

Constraints:1 Each machine may process only one job at a time2 Each job may be processed at machine 2 only after it was processed at

machine 1, i.e. moment of processing completion of job j at machine 1cannot exceed moment of processing initiation of the same job atmachine 2

3 Processing of any job cannot be interrupted: if processing of job i onmachine j was initiated at the moment of time t , it should remainprocessing on the same machine until the moment of time t + pj

i

Alexander Lazarev Scheduling Theory and Applications 28 / 210

Page 53: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

Constraints:1 Each machine may process only one job at a time2 Each job may be processed at machine 2 only after it was processed at

machine 1, i.e. moment of processing completion of job j at machine 1cannot exceed moment of processing initiation of the same job atmachine 2

3 Processing of any job cannot be interrupted: if processing of job i onmachine j was initiated at the moment of time t , it should remainprocessing on the same machine until the moment of time t + pj

i

Alexander Lazarev Scheduling Theory and Applications 28 / 210

Page 54: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Johnson’s algorithm:

Algorithm 1. Input: set N12 of jobs. Output: permutation π.Step 1 ∀i ∈ N12 pi := min{p1

i , p2i }

Sorting jobs according to increase of their processing duration

pi1 ≤ pi2 ≤ · · · ≤ pin

Step 2 π1 := ∅ π2 := ∅Step 3 Let N be a set of jobs sorted according to Step 1.If N = ∅, go to step 4.Otherwise, let’s denote the first element of N as i1. If pi1 = p1

i1, add it

to π1: π1 := π1∪ i1, otherwise, if pi1 = p2i1, add it to π2: π2 := i1 ∪π2

Step 4 π := π1 ∪ π2End.

Alexander Lazarev Scheduling Theory and Applications 29 / 210

Page 55: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Johnson’s algorithm:

Algorithm 1. Input: set N12 of jobs. Output: permutation π.Step 1 ∀i ∈ N12 pi := min{p1

i , p2i }

Sorting jobs according to increase of their processing duration

pi1 ≤ pi2 ≤ · · · ≤ pin

Step 2 π1 := ∅ π2 := ∅

Step 3 Let N be a set of jobs sorted according to Step 1.If N = ∅, go to step 4.Otherwise, let’s denote the first element of N as i1. If pi1 = p1

i1, add it

to π1: π1 := π1∪ i1, otherwise, if pi1 = p2i1, add it to π2: π2 := i1 ∪π2

Step 4 π := π1 ∪ π2End.

Alexander Lazarev Scheduling Theory and Applications 29 / 210

Page 56: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Johnson’s algorithm:

Algorithm 1. Input: set N12 of jobs. Output: permutation π.Step 1 ∀i ∈ N12 pi := min{p1

i , p2i }

Sorting jobs according to increase of their processing duration

pi1 ≤ pi2 ≤ · · · ≤ pin

Step 2 π1 := ∅ π2 := ∅Step 3 Let N be a set of jobs sorted according to Step 1.If N = ∅, go to step 4.Otherwise, let’s denote the first element of N as i1. If pi1 = p1

i1, add it

to π1: π1 := π1∪ i1, otherwise, if pi1 = p2i1, add it to π2: π2 := i1 ∪π2

Step 4 π := π1 ∪ π2End.

Alexander Lazarev Scheduling Theory and Applications 29 / 210

Page 57: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Johnson’s algorithm:

Algorithm 1. Input: set N12 of jobs. Output: permutation π.Step 1 ∀i ∈ N12 pi := min{p1

i , p2i }

Sorting jobs according to increase of their processing duration

pi1 ≤ pi2 ≤ · · · ≤ pin

Step 2 π1 := ∅ π2 := ∅Step 3 Let N be a set of jobs sorted according to Step 1.If N = ∅, go to step 4.Otherwise, let’s denote the first element of N as i1. If pi1 = p1

i1, add it

to π1: π1 := π1∪ i1, otherwise, if pi1 = p2i1, add it to π2: π2 := i1 ∪π2

Step 4 π := π1 ∪ π2End.

Alexander Lazarev Scheduling Theory and Applications 29 / 210

Page 58: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Johnson’s algorithm:

Algorithm 2. Input: permutation of jobs π. Output: feasible schedule.Step 1 Moment of processing initiation of 1st job on machine 1 is 0.Moment of processing initiation of each subsequent job on machine 1equals to moment of processing completion of previous job onmachine 1.

Step 2 Moment of processing initiation of 1st job on machine 2matches its moment of processing completion on machine 1. Momentof processing initiation of each subsequent job on machine 2 equals tomaximum of two moments: moment of its processing completion onmachine 1 and moment of processing completion of previous job onmachine 2.End.Thus, overall computational complexity of Johnson’s algorithm islimited by computational complexity of sorting algorithm implementedin Algorithm 1 at Step 1, i. e. O(n log n) in case of "quick-sort

Alexander Lazarev Scheduling Theory and Applications 30 / 210

Page 59: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Johnson’s algorithm:

Algorithm 2. Input: permutation of jobs π. Output: feasible schedule.Step 1 Moment of processing initiation of 1st job on machine 1 is 0.Moment of processing initiation of each subsequent job on machine 1equals to moment of processing completion of previous job onmachine 1.Step 2 Moment of processing initiation of 1st job on machine 2matches its moment of processing completion on machine 1. Momentof processing initiation of each subsequent job on machine 2 equals tomaximum of two moments: moment of its processing completion onmachine 1 and moment of processing completion of previous job onmachine 2.

End.Thus, overall computational complexity of Johnson’s algorithm islimited by computational complexity of sorting algorithm implementedin Algorithm 1 at Step 1, i. e. O(n log n) in case of "quick-sort

Alexander Lazarev Scheduling Theory and Applications 30 / 210

Page 60: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Johnson’s algorithm:

Algorithm 2. Input: permutation of jobs π. Output: feasible schedule.Step 1 Moment of processing initiation of 1st job on machine 1 is 0.Moment of processing initiation of each subsequent job on machine 1equals to moment of processing completion of previous job onmachine 1.Step 2 Moment of processing initiation of 1st job on machine 2matches its moment of processing completion on machine 1. Momentof processing initiation of each subsequent job on machine 2 equals tomaximum of two moments: moment of its processing completion onmachine 1 and moment of processing completion of previous job onmachine 2.End.Thus, overall computational complexity of Johnson’s algorithm islimited by computational complexity of sorting algorithm implementedin Algorithm 1 at Step 1, i. e. O(n log n) in case of "quick-sort

Alexander Lazarev Scheduling Theory and Applications 30 / 210

Page 61: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Johnson’s algorithm:

Algorithm 2. Input: permutation of jobs π. Output: feasible schedule. Here,schedule is described by an array of numbers: for each job j , processing starttimes S1

j and S2j on machines 1 and 2 are assigned: C i

j = S ij + pi

j , i = 1, 2,π = (j1, j2, , . . . , jn)

Alexander Lazarev Scheduling Theory and Applications 31 / 210

Page 62: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Johnson’s algorithm:

Algorithm 2. Input: permutation of jobs π. Output: feasible schedule. Here,schedule is described by an array of numbers: for each job j , processing starttimes S1

j and S2j on machines 1 and 2 are assigned: C i

j = S ij + pi

j , i = 1, 2,π = (j1, j2, , . . . , jn)

Alexander Lazarev Scheduling Theory and Applications 31 / 210

Page 63: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Johnson’s algorithm:

Algorithm 2. Input: permutation of jobs π. Output: feasible schedule. Here,schedule is described by an array of numbers: for each job j , processing starttimes S1

j and S2j on machines 1 and 2 are assigned: C i

j = S ij + pi

j , i = 1, 2,π = (j1, j2, , . . . , jn)

Alexander Lazarev Scheduling Theory and Applications 31 / 210

Page 64: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Exercise 1.

j 1 2 3 4 5 6 7

p1j 5 7 4 3 5 7 6

p2j 6 5 6 7 4 6 8

π = ( , , , , , , )π1 = ()π2 = ()

Final schedule π will be composed of two parts: π = π1 ∪ π2. π1 containsjobs that should be performed on machine 1 first. After all the jobs from π1have been processed on machine 1, jobs from π2 may start processing onthat machine.

Alexander Lazarev Scheduling Theory and Applications 32 / 210

Page 65: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Exercise 1.

j 1 2 3 4 5 6 7

p1j 5 7 4 3 5 7 6

p2j 6 5 6 7 4 6 8

π = (4 , , , , , , )π1 = (4)π2 = ()Exclude job 4 from the list of pending jobs

Alexander Lazarev Scheduling Theory and Applications 33 / 210

Page 66: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Exercise 1.

j 1 2 3 5 6 7

p1j 5 7 4 5 7 6

p2j 6 5 6 4 6 8

π = (4 , , , , , , )π1 = (4)π2 = ()

Alexander Lazarev Scheduling Theory and Applications 34 / 210

Page 67: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Exercise 1.

j 1 2 3 5 6 7

p1j 5 7 4 5 7 6

p2j 6 5 6 4 6 8

π = (4 , , , , , , 5)π1 = (4)π2 = (5)Exclude job 5 from the list of pending jobs

Alexander Lazarev Scheduling Theory and Applications 35 / 210

Page 68: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Exercise 1.

j 1 2 3 6 7

p1j 5 7 4 7 6

p2j 6 5 6 6 8

π = (4 , 3 , , , , , 5)π1 = (4, 3)π2 = (5)Exclude job 3 from the list of pending jobs

Alexander Lazarev Scheduling Theory and Applications 36 / 210

Page 69: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Exercise 1.

j 1 2 6 7

p1j 5 7 7 6

p2j 6 5 6 8

π = (4 , 3 , , , , , 5)π1 = (4, 3)π2 = (5)

Alexander Lazarev Scheduling Theory and Applications 37 / 210

Page 70: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Exercise 1.

j 1 2 6 7

p1j 5 7 7 6

p2j 6 5 6 8

π = (4 , 3 , , , , 2 , 5)π1 = (4, 3)π2 = (2, 5)Exclude job 2 from the list of pending jobs

Alexander Lazarev Scheduling Theory and Applications 38 / 210

Page 71: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Exercise 1.

j 1 6 7

p1j 5 7 6

p2j 6 6 8

π = (4 , 3 , 1 , , , 2 , 5)π1 = (4, 3, 1)π2 = (2, 5)Exclude job 1 from the list of pending jobs

Alexander Lazarev Scheduling Theory and Applications 39 / 210

Page 72: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Exercise 1.

j 6 7

p1j 7 6

p2j 6 8

π = (4 , 3 , 1 , 6 , 7 , 2 , 5) π1 = (4, 3, 1, 6) π2 = (7, 2, 5)

π = π1⋃π2

O(n log n)

Alexander Lazarev Scheduling Theory and Applications 40 / 210

Page 73: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

So far we have only considered the case in which all the jobs haveprocessing order "Machine 1 → Machine 2"(further, we will denote itsimply as "1 → 2").

Let us consider a bit more complicated problem. What if there are notonly jobs with a processing order "1 → 2 but also with processingorders "2 → 1 "1"and "2"? (In the latter two cases, the jobs shouldonly be processed on their respective machines).How could we apply Johnson’s algorithm to this problem?

Alexander Lazarev Scheduling Theory and Applications 41 / 210

Page 74: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

So far we have only considered the case in which all the jobs haveprocessing order "Machine 1 → Machine 2"(further, we will denote itsimply as "1 → 2").Let us consider a bit more complicated problem. What if there are notonly jobs with a processing order "1 → 2 but also with processingorders "2 → 1 "1"and "2"? (In the latter two cases, the jobs shouldonly be processed on their respective machines).

How could we apply Johnson’s algorithm to this problem?

Alexander Lazarev Scheduling Theory and Applications 41 / 210

Page 75: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

So far we have only considered the case in which all the jobs haveprocessing order "Machine 1 → Machine 2"(further, we will denote itsimply as "1 → 2").Let us consider a bit more complicated problem. What if there are notonly jobs with a processing order "1 → 2 but also with processingorders "2 → 1 "1"and "2"? (In the latter two cases, the jobs shouldonly be processed on their respective machines).How could we apply Johnson’s algorithm to this problem?

Alexander Lazarev Scheduling Theory and Applications 41 / 210

Page 76: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

2 machines

N1 jobs with processing order "1"N2 jobs with processing order "2"N12 jobs with processing order "1 → 2"N21 jobs with processing order "2 → 1"p1

j , p2j — processing times of job j on machines 1 and 2 respectively

(consider ∀j ∈ N1 p2j = 0, ∀j ∈ N2 p1

j = 0)C 1

j (π),C 2j (π) — completion times on machines 1 and 2 respectively

Schedule π = (π1, π2) (two schedules, for machines 1 and 2respectively)Objective function: minimum total processing duration (makespan)

minπ

maxi∈{1,2}, j∈N

{C ij (π)}, N = N1 ∪2 ∪N12 ∪ N21

Alexander Lazarev Scheduling Theory and Applications 42 / 210

Page 77: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

2 machinesN1 jobs with processing order "1"N2 jobs with processing order "2"N12 jobs with processing order "1 → 2"N21 jobs with processing order "2 → 1"

p1j , p

2j — processing times of job j on machines 1 and 2 respectively

(consider ∀j ∈ N1 p2j = 0, ∀j ∈ N2 p1

j = 0)C 1

j (π),C 2j (π) — completion times on machines 1 and 2 respectively

Schedule π = (π1, π2) (two schedules, for machines 1 and 2respectively)Objective function: minimum total processing duration (makespan)

minπ

maxi∈{1,2}, j∈N

{C ij (π)}, N = N1 ∪2 ∪N12 ∪ N21

Alexander Lazarev Scheduling Theory and Applications 42 / 210

Page 78: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

2 machinesN1 jobs with processing order "1"N2 jobs with processing order "2"N12 jobs with processing order "1 → 2"N21 jobs with processing order "2 → 1"p1

j , p2j — processing times of job j on machines 1 and 2 respectively

(consider ∀j ∈ N1 p2j = 0, ∀j ∈ N2 p1

j = 0)

C 1j (π),C 2

j (π) — completion times on machines 1 and 2 respectivelySchedule π = (π1, π2) (two schedules, for machines 1 and 2respectively)Objective function: minimum total processing duration (makespan)

minπ

maxi∈{1,2}, j∈N

{C ij (π)}, N = N1 ∪2 ∪N12 ∪ N21

Alexander Lazarev Scheduling Theory and Applications 42 / 210

Page 79: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

2 machinesN1 jobs with processing order "1"N2 jobs with processing order "2"N12 jobs with processing order "1 → 2"N21 jobs with processing order "2 → 1"p1

j , p2j — processing times of job j on machines 1 and 2 respectively

(consider ∀j ∈ N1 p2j = 0, ∀j ∈ N2 p1

j = 0)C 1

j (π),C 2j (π) — completion times on machines 1 and 2 respectively

Schedule π = (π1, π2) (two schedules, for machines 1 and 2respectively)Objective function: minimum total processing duration (makespan)

minπ

maxi∈{1,2}, j∈N

{C ij (π)}, N = N1 ∪2 ∪N12 ∪ N21

Alexander Lazarev Scheduling Theory and Applications 42 / 210

Page 80: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

2 machinesN1 jobs with processing order "1"N2 jobs with processing order "2"N12 jobs with processing order "1 → 2"N21 jobs with processing order "2 → 1"p1

j , p2j — processing times of job j on machines 1 and 2 respectively

(consider ∀j ∈ N1 p2j = 0, ∀j ∈ N2 p1

j = 0)C 1

j (π),C 2j (π) — completion times on machines 1 and 2 respectively

Schedule π = (π1, π2) (two schedules, for machines 1 and 2respectively)

Objective function: minimum total processing duration (makespan)

minπ

maxi∈{1,2}, j∈N

{C ij (π)}, N = N1 ∪2 ∪N12 ∪ N21

Alexander Lazarev Scheduling Theory and Applications 42 / 210

Page 81: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

2 machinesN1 jobs with processing order "1"N2 jobs with processing order "2"N12 jobs with processing order "1 → 2"N21 jobs with processing order "2 → 1"p1

j , p2j — processing times of job j on machines 1 and 2 respectively

(consider ∀j ∈ N1 p2j = 0, ∀j ∈ N2 p1

j = 0)C 1

j (π),C 2j (π) — completion times on machines 1 and 2 respectively

Schedule π = (π1, π2) (two schedules, for machines 1 and 2respectively)Objective function: minimum total processing duration (makespan)

minπ

maxi∈{1,2}, j∈N

{C ij (π)}, N = N1 ∪2 ∪N12 ∪ N21

Alexander Lazarev Scheduling Theory and Applications 42 / 210

Page 82: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

Without going into any deep detail on this problem, let us formulatethe following theorem:

Theorem. Let π12 be a permutation of jobs obtained by applyingAlgorithm 1 to set of jobs N12, let π21 be a permutation of jobsobtained by applying Algorithm 1 to set of jobs N21 (by swapping themachines), and let π1 and π2 be two arbitrary permutations of jobsfrom sets N1 and N2. Then the optimal solution to of this problemwould consist of two sequences of jobs: π1 = (π12, π1, π21) for machine1 and π2 = (π21, π2, π12) for machine 2. Computational complexity ofthis algorithm is O(n log n), where n is total number of jobs.

Alexander Lazarev Scheduling Theory and Applications 43 / 210

Page 83: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

Without going into any deep detail on this problem, let us formulatethe following theorem:Theorem. Let π12 be a permutation of jobs obtained by applyingAlgorithm 1 to set of jobs N12, let π21 be a permutation of jobsobtained by applying Algorithm 1 to set of jobs N21 (by swapping themachines), and let π1 and π2 be two arbitrary permutations of jobsfrom sets N1 and N2. Then the optimal solution to of this problemwould consist of two sequences of jobs: π1 = (π12, π1, π21) for machine1 and π2 = (π21, π2, π12) for machine 2. Computational complexity ofthis algorithm is O(n log n), where n is total number of jobs.

Alexander Lazarev Scheduling Theory and Applications 43 / 210

Page 84: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

Schedule π1 = (π12, π1, π21) for machine 1Schedule π2 = (π21, π2, π12) for machine 2

Alexander Lazarev Scheduling Theory and Applications 44 / 210

Page 85: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

Suppose that there are more than 2 machines, for example, 3machines, and some jobs have processing orders such as "1 → 2 →3 "2 → 3 → 1"and so on.

Is it possible to use Johnson’s algorithm in that case?

Alexander Lazarev Scheduling Theory and Applications 45 / 210

Page 86: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. M. Johnson. Optimal two-and-three-stage productionschedules with set-up times included.

Suppose that there are more than 2 machines, for example, 3machines, and some jobs have processing orders such as "1 → 2 →3 "2 → 3 → 1"and so on.Is it possible to use Johnson’s algorithm in that case?

Alexander Lazarev Scheduling Theory and Applications 45 / 210

Page 87: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Computational complexity of Jackson’s, Smith’s andJohnon’s problems

The following problems:— Smith’s problem with non-zero release times (∃ j ∈ N rj 6= 0)— Jackson’s problem with non-zero release times (∃ j ∈ N rj 6= 0)— Johnson’s problem with more than 2 machinesare known to be at least NP-hard.

Alexander Lazarev Scheduling Theory and Applications 46 / 210

Page 88: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Meaning of the objective function in a problem

As we have discussed before, Jackson’s, Smith’s and Johnson’sproblems have objective functions Lmax ,

∑Cj and Cmax ,

correspondingly.

Now, take a moment and try to answer the following question:What sense do these objective functions make in real life?

Alexander Lazarev Scheduling Theory and Applications 47 / 210

Page 89: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Meaning of the objective function in a problem

As we have discussed before, Jackson’s, Smith’s and Johnson’sproblems have objective functions Lmax ,

∑Cj and Cmax ,

correspondingly.

Now, take a moment and try to answer the following question:What sense do these objective functions make in real life?

Alexander Lazarev Scheduling Theory and Applications 47 / 210

Page 90: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem of two production lines

Alexander Lazarev Scheduling Theory and Applications 48 / 210

Page 91: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem of two production lines

2 production lines that have n workplaces denoted as S11, . . . ,S1n andS21, . . . ,S2n, i ∈ {1, 2}, j ∈ {1. . . . , n}

1 job (product) that should pass all the n workplaces (stages ofproduction) according to their order. Between stages of production theproduct may be transferred to another production line, i.e. differentstages may be processed at different production lines.aij — processing time at workplace Sij

tij — transfer time from workplace Sij at production line i to (j + 1)thworkplace at the other production line; j ∈ {1, . . . , n − 1}. Transfertimes between adjacent workplaces on the same production line areequal to 0.Schedule π (each stage of the job is assigned to a workplace at thecorresponding production line)

Alexander Lazarev Scheduling Theory and Applications 49 / 210

Page 92: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem of two production lines

2 production lines that have n workplaces denoted as S11, . . . ,S1n andS21, . . . ,S2n, i ∈ {1, 2}, j ∈ {1. . . . , n}1 job (product) that should pass all the n workplaces (stages ofproduction) according to their order. Between stages of production theproduct may be transferred to another production line, i.e. differentstages may be processed at different production lines.

aij — processing time at workplace Sij

tij — transfer time from workplace Sij at production line i to (j + 1)thworkplace at the other production line; j ∈ {1, . . . , n − 1}. Transfertimes between adjacent workplaces on the same production line areequal to 0.Schedule π (each stage of the job is assigned to a workplace at thecorresponding production line)

Alexander Lazarev Scheduling Theory and Applications 49 / 210

Page 93: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem of two production lines

2 production lines that have n workplaces denoted as S11, . . . ,S1n andS21, . . . ,S2n, i ∈ {1, 2}, j ∈ {1. . . . , n}1 job (product) that should pass all the n workplaces (stages ofproduction) according to their order. Between stages of production theproduct may be transferred to another production line, i.e. differentstages may be processed at different production lines.aij — processing time at workplace Sij

tij — transfer time from workplace Sij at production line i to (j + 1)thworkplace at the other production line; j ∈ {1, . . . , n − 1}. Transfertimes between adjacent workplaces on the same production line areequal to 0.Schedule π (each stage of the job is assigned to a workplace at thecorresponding production line)

Alexander Lazarev Scheduling Theory and Applications 49 / 210

Page 94: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem of two production lines

2 production lines that have n workplaces denoted as S11, . . . ,S1n andS21, . . . ,S2n, i ∈ {1, 2}, j ∈ {1. . . . , n}1 job (product) that should pass all the n workplaces (stages ofproduction) according to their order. Between stages of production theproduct may be transferred to another production line, i.e. differentstages may be processed at different production lines.aij — processing time at workplace Sij

tij — transfer time from workplace Sij at production line i to (j + 1)thworkplace at the other production line; j ∈ {1, . . . , n − 1}. Transfertimes between adjacent workplaces on the same production line areequal to 0.

Schedule π (each stage of the job is assigned to a workplace at thecorresponding production line)

Alexander Lazarev Scheduling Theory and Applications 49 / 210

Page 95: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem of two production lines

2 production lines that have n workplaces denoted as S11, . . . ,S1n andS21, . . . ,S2n, i ∈ {1, 2}, j ∈ {1. . . . , n}1 job (product) that should pass all the n workplaces (stages ofproduction) according to their order. Between stages of production theproduct may be transferred to another production line, i.e. differentstages may be processed at different production lines.aij — processing time at workplace Sij

tij — transfer time from workplace Sij at production line i to (j + 1)thworkplace at the other production line; j ∈ {1, . . . , n − 1}. Transfertimes between adjacent workplaces on the same production line areequal to 0.

Schedule π (each stage of the job is assigned to a workplace at thecorresponding production line)

Alexander Lazarev Scheduling Theory and Applications 49 / 210

Page 96: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem of two production lines

2 production lines that have n workplaces denoted as S11, . . . ,S1n andS21, . . . ,S2n, i ∈ {1, 2}, j ∈ {1. . . . , n}1 job (product) that should pass all the n workplaces (stages ofproduction) according to their order. Between stages of production theproduct may be transferred to another production line, i.e. differentstages may be processed at different production lines.aij — processing time at workplace Sij

tij — transfer time from workplace Sij at production line i to (j + 1)thworkplace at the other production line; j ∈ {1, . . . , n − 1}. Transfertimes between adjacent workplaces on the same production line areequal to 0.Schedule π (each stage of the job is assigned to a workplace at thecorresponding production line)

Alexander Lazarev Scheduling Theory and Applications 49 / 210

Page 97: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem of two production lines

Cj (π) — completion time of stage j according to schedule π

Objective function: minimum total processing duration (makespan):

minπ{Cn(π)}

Alexander Lazarev Scheduling Theory and Applications 50 / 210

Page 98: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem of two production lines

Cj (π) — completion time of stage j according to schedule πObjective function: minimum total processing duration (makespan):

minπ{Cn(π)}

Alexander Lazarev Scheduling Theory and Applications 50 / 210

Page 99: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem of two production lines

Cj (π) — completion time of stage j according to schedule πObjective function: minimum total processing duration (makespan):

minπ{Cn(π)}

Alexander Lazarev Scheduling Theory and Applications 50 / 210

Page 100: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solution. Dynamic programming.

Let us suppose that the job is now at the stage j at production line 1, i.e.the product is at workplace S1j . Let us also suppose that the currentschedule π is optimal.In order to proceed to stage j , the job must have first gone through stagej − 1, which means that the product came to workplace S1j either fromworkplace S1(j−1) or S2(j−1). Suppose it came from workplace S1(j−1).According to our supposition that current schedule is optimal (which meansthat product got to workplace S1j in the fastest possible way), the productmust have gotten to workplace S1(j−1) in the fastest possible way, too. Thismeans that the optimal solution of the problem for the first j workplacesincludes optimal solution of the problem for the first j − 1 workplaces.This property of the solution is called optimal substructure.

Alexander Lazarev Scheduling Theory and Applications 51 / 210

Page 101: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solution. Dynamic programming.

Recursive algorithm: According to the optimal substructure of the problem,let us calculate consequently C i

j — the least moments of time in which theproduct could have gone through stage j , being at the moment ofcompletion of this stage at production line i .

C 11 := a11

C 21 := a21

for j := 2 to n do

begin

C 1j := min

{C 1

j−1,C2j−1 + t2(j−1)

}+ a1j

C 2j := min

{C 2

j−1,C1j−1 + t1(j−1)

}+ a2j

end

These equations are the simplest case of Bellmann equations.

Alexander Lazarev Scheduling Theory and Applications 52 / 210

Page 102: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solution. Dynamic programming.

Total processing duration is Cn := min{C 1

n ,C2n

}i.e. it doesn’t matter at

which production line the product finished processing.Recovering the schedule itself is a fairly easy task: we just have to"remember"from which workplace the product came to the currentworkplace.Total computational complexity of this algorithm is O(n) operations.

Alexander Lazarev Scheduling Theory and Applications 53 / 210

Page 103: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Elements of computational comlexity theory. Classes P and NP.

Alexander Lazarev Scheduling Theory and Applications 54 / 210

Page 104: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

S. A. Cook. The complexity of theorem-proving procedures. In Proceedingsof 3rd Annual ACM Symposium on Theory of Computing, pg. 151-158.ACM-Press 1971.

Alexander Lazarev Scheduling Theory and Applications 55 / 210

Page 105: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Computational complexity

Suppose we are examining some instance of a recognition problem.

Let us denote as n a numerical characteristic of input data that affectscomputational complexity of this problem in the most significant way(usually it is either the amount of input data itself, or dimensionalityof the problem — the number of variables, equations and inequalitiesthat define an instance of the problem).Suppose we also know some sort of algorithm that can be used tosolve this problem within a finite time period.

Alexander Lazarev Scheduling Theory and Applications 56 / 210

Page 106: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Computational complexity

Suppose we are examining some instance of a recognition problem.Let us denote as n a numerical characteristic of input data that affectscomputational complexity of this problem in the most significant way(usually it is either the amount of input data itself, or dimensionalityof the problem — the number of variables, equations and inequalitiesthat define an instance of the problem).

Suppose we also know some sort of algorithm that can be used tosolve this problem within a finite time period.

Alexander Lazarev Scheduling Theory and Applications 56 / 210

Page 107: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Computational complexity

Suppose we are examining some instance of a recognition problem.Let us denote as n a numerical characteristic of input data that affectscomputational complexity of this problem in the most significant way(usually it is either the amount of input data itself, or dimensionalityof the problem — the number of variables, equations and inequalitiesthat define an instance of the problem).Suppose we also know some sort of algorithm that can be used tosolve this problem within a finite time period.

Alexander Lazarev Scheduling Theory and Applications 56 / 210

Page 108: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Computational complexity

• If computational complexity of the algorithm that solves the problemis O(nk ) operations, where k is some constant number independentfrom n, then this problem is called solvable in polynomial time.Algorithms to the 4 problems mentioned before (Jackson’s, Smith’s,Johnson’s problems and the problem of two production lines) arepolynomial.

• All problems that are solvable within polynomial time formulate aclass of problems denoted as P . Algorithms with correspondingcomputational complexity are called polynomial .• If complexity of the algorithm depends on the values of numericalparameters of an example, for example, O(nA), then this algorithm iscalled pseudo-polynomial .• If complexity of the algorithm has the form of O(nxyn), where xand y are some constants, then this algorithm is called exponential .

Alexander Lazarev Scheduling Theory and Applications 57 / 210

Page 109: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Computational complexity

• If computational complexity of the algorithm that solves the problemis O(nk ) operations, where k is some constant number independentfrom n, then this problem is called solvable in polynomial time.Algorithms to the 4 problems mentioned before (Jackson’s, Smith’s,Johnson’s problems and the problem of two production lines) arepolynomial.• All problems that are solvable within polynomial time formulate aclass of problems denoted as P . Algorithms with correspondingcomputational complexity are called polynomial .

• If complexity of the algorithm depends on the values of numericalparameters of an example, for example, O(nA), then this algorithm iscalled pseudo-polynomial .• If complexity of the algorithm has the form of O(nxyn), where xand y are some constants, then this algorithm is called exponential .

Alexander Lazarev Scheduling Theory and Applications 57 / 210

Page 110: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Computational complexity

• If computational complexity of the algorithm that solves the problemis O(nk ) operations, where k is some constant number independentfrom n, then this problem is called solvable in polynomial time.Algorithms to the 4 problems mentioned before (Jackson’s, Smith’s,Johnson’s problems and the problem of two production lines) arepolynomial.• All problems that are solvable within polynomial time formulate aclass of problems denoted as P . Algorithms with correspondingcomputational complexity are called polynomial .• If complexity of the algorithm depends on the values of numericalparameters of an example, for example, O(nA), then this algorithm iscalled pseudo-polynomial .

• If complexity of the algorithm has the form of O(nxyn), where xand y are some constants, then this algorithm is called exponential .

Alexander Lazarev Scheduling Theory and Applications 57 / 210

Page 111: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Computational complexity

• If computational complexity of the algorithm that solves the problemis O(nk ) operations, where k is some constant number independentfrom n, then this problem is called solvable in polynomial time.Algorithms to the 4 problems mentioned before (Jackson’s, Smith’s,Johnson’s problems and the problem of two production lines) arepolynomial.• All problems that are solvable within polynomial time formulate aclass of problems denoted as P . Algorithms with correspondingcomputational complexity are called polynomial .• If complexity of the algorithm depends on the values of numericalparameters of an example, for example, O(nA), then this algorithm iscalled pseudo-polynomial .• If complexity of the algorithm has the form of O(nxyn), where xand y are some constants, then this algorithm is called exponential .

Alexander Lazarev Scheduling Theory and Applications 57 / 210

Page 112: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Class NP

Suppose that we have a computer that includes a special"guessing"component (oracle). The oracle, given correct input data(the solution exists), provides some (possibly correct) output data.The output data provided by oracle needs to be verified, i. e. weshould construct an algorithm that checks if the output data containsa correct solution that is in accordance with provided input data.

Alexander Lazarev Scheduling Theory and Applications 58 / 210

Page 113: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Class NP

Class NP includes all the problems that, for each instance that has asolution, may be guessed by an oracle, and the answer provided byoracle is such that:

• the amount of data in solution provided by oracle is limitedpolynomially• the solution provided by oracle could be verified in polynomial time.

Alexander Lazarev Scheduling Theory and Applications 59 / 210

Page 114: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Class NP

Class NP includes all the problems that, for each instance that has asolution, may be guessed by an oracle, and the answer provided byoracle is such that:• the amount of data in solution provided by oracle is limitedpolynomially

• the solution provided by oracle could be verified in polynomial time.

Alexander Lazarev Scheduling Theory and Applications 59 / 210

Page 115: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Class NP

Class NP includes all the problems that, for each instance that has asolution, may be guessed by an oracle, and the answer provided byoracle is such that:• the amount of data in solution provided by oracle is limitedpolynomially• the solution provided by oracle could be verified in polynomial time.

Alexander Lazarev Scheduling Theory and Applications 59 / 210

Page 116: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Reduction of one problem to another

It is said that problem A can be reduced to problem B in polynomialtime (A ∝ B), if a modification algorithm exists, such that thisalgorithm follows two next conditions:

• The algorithm transforms any given instance IA of problem A into acorresponding instance IB of problem B in polynomial time• The answer to received instance IB of problem B is ”YES”if and only if the answer to the corresponding instance IA ofproblem A is ”YES” , too. (or, less strictly, the solutions ofcorresponding instances IA, IB of problems A, B always match)

Alexander Lazarev Scheduling Theory and Applications 60 / 210

Page 117: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Reduction of one problem to another

It is said that problem A can be reduced to problem B in polynomialtime (A ∝ B), if a modification algorithm exists, such that thisalgorithm follows two next conditions:• The algorithm transforms any given instance IA of problem A into acorresponding instance IB of problem B in polynomial time

• The answer to received instance IB of problem B is ”YES”if and only if the answer to the corresponding instance IA ofproblem A is ”YES” , too. (or, less strictly, the solutions ofcorresponding instances IA, IB of problems A, B always match)

Alexander Lazarev Scheduling Theory and Applications 60 / 210

Page 118: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Reduction of one problem to another

It is said that problem A can be reduced to problem B in polynomialtime (A ∝ B), if a modification algorithm exists, such that thisalgorithm follows two next conditions:• The algorithm transforms any given instance IA of problem A into acorresponding instance IB of problem B in polynomial time• The answer to received instance IB of problem B is ”YES”if and only if the answer to the corresponding instance IA ofproblem A is ”YES” , too. (or, less strictly, the solutions ofcorresponding instances IA, IB of problems A, B always match)

Alexander Lazarev Scheduling Theory and Applications 60 / 210

Page 119: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem classification in scheduling theory

Alexander Lazarev Scheduling Theory and Applications 61 / 210

Page 120: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem classification in scheduling theory

In scheduling theory, problems are classified according to:• Type of solution• Type of objective function• Way input data is provided• Subfields of Scheduling Theory

Alexander Lazarev Scheduling Theory and Applications 62 / 210

Page 121: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem classification in scheduling theory

Problem classification according to the type of solution:• Arrangement problems• Matching problems• Distribution problems

Alexander Lazarev Scheduling Theory and Applications 63 / 210

Page 122: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem classification in scheduling theory

Problem classification according to the type of objective function:• Problems with summary optimization criteria• Problems with min-max optimization criteria• Multicriterial optimization problems• Problem on constructing a feasible schedule

Alexander Lazarev Scheduling Theory and Applications 64 / 210

Page 123: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem classification in scheduling theory

Problem classification according to the way input data is provided:• Deterministic problems (offline)• Dynamic problems (online)

Alexander Lazarev Scheduling Theory and Applications 65 / 210

Page 124: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem classification in scheduling theory

Problem classification according to subfields of Scheduling Theory:• Project scheduling (PS)• Machine scheduling (MS)• Timetabling• Shop-floor scheduling• Transport scheduling and vehicle routing• Sports scheduling

Alexander Lazarev Scheduling Theory and Applications 66 / 210

Page 125: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Denotations in Scheduling Theory

In Scheduling Theory, tasks are referred to as requests or jobs. Parametersof requests:

• rj — release time• pj — processing time• dj — due date (may be violated, but a penalty is issued)• Dj — deadline (should never be violated)• wj — job weight

Alexander Lazarev Scheduling Theory and Applications 67 / 210

Page 126: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Denotations in Scheduling Theory

Additional denotations:• pmtn — preemptive scheduling is allowed• prec — precedence relations between the jobs are defined (also: tree,out − tree, in − tree, chain)• batch — the batching problem is considered (jobs are grouped intobatches)

Alexander Lazarev Scheduling Theory and Applications 68 / 210

Page 127: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Denotations in Scheduling Theory

Objective functions:• Cj — completion time• Lj = Cj − dj — lateness• Tj = max{0, Cj − dj} — tardiness• Ej = max{0, dj − Cj} — earliness• Uj — equals 1 if job j is late (Cj > dj) and 0 in the opposite case

If request weights wj are provided, all of the previous objective functionsare called weighed, and are multiplied by the value of request weight (ex.,weighed tardiness wjTj is calculated as wj max{0, Cj − dj})

Alexander Lazarev Scheduling Theory and Applications 69 / 210

Page 128: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Denotations in Scheduling Theory

Optimization criteria:1. min-max criteria• Cmax → min — minimizing maximum completion time(makespan), Cmax = max

j∈NCj . These problems are also called

performance problems.• Lmax → min — minimizing maximum lateness Lmax = max

j∈NLj

2. summary criteria•∑j∈N

Cj → min — minimizing total completion time

•∑j∈N

Tj → min — minimizing total tardiness

•∑j∈N

Uj → min — minimizing total number of late jobs

Also, problems of maximizing these objective functions are considered (ex.,∑j∈N

Tj → max).

Alexander Lazarev Scheduling Theory and Applications 70 / 210

Page 129: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Project scheduling

Alexander Lazarev Scheduling Theory and Applications 71 / 210

Page 130: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Resource-Constrained Project Scheduling Problem (RCPSP)

• Set of n requests N = {1, . . . , n}• k renewable resources K = 1, . . . ,Qk

• pi — processing time of request i , ∀i ∈ N.• During processing of request i amount qik ≤ Qk of resource k isused, k = 1, . . . , n.• Some requests are bound by precedence relations:i → j meansrequest j cannot start processing before request i has finishedprocessing, i , j ∈ N.

Alexander Lazarev Scheduling Theory and Applications 72 / 210

Page 131: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Resource-Constrained Project Scheduling Problem (RCPSP)

The goal is to find processing start times Si for all requests i ∈ N so thatminimum makespan Cmax is achieved:

Cmax = maxi∈N{Ci}, Ci = Si + pi , Cmax → min

Obtained schedule should comply to the following conditions:• Resource constraints are not violated:∀ t ∈ [0,Cmax ), ∀ k = 1, . . . ,K

n∑i=1

qikϕi (t) ≤ Qk

• Precedence relations are not violated:∀ i , j ∈ N : if i → j , then Si + pi ≤ Sj

It is necessary to notice that RCPSP is not the only problem in projectscheduling, though it is the main one. For example, some resources can benon-renewable, such as money, fuel, oils and so on.

Alexander Lazarev Scheduling Theory and Applications 73 / 210

Page 132: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Machine scheduling

Alexander Lazarev Scheduling Theory and Applications 74 / 210

Page 133: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Machine scheduling

In Project Scheduling, processing of each request requires participation ofseveral processors (renewable resources could be viewed as equipment).In Machine scheduling, usually each request is processed by only oneprocessor at a time.Processors can also be referred to as machines or devices. If not specifiedotherwise, machines are considered equivalent.

Alexander Lazarev Scheduling Theory and Applications 75 / 210

Page 134: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Machine scheduling

• Single-machine problems: only one request can be processed at atime.• Parallel machines’ problems: each request can be processed by anyof the machines. Machines can be non-equivalent (processing time canvary). Precedence relations can be specified.• Shop scheduling : m, machines M1, . . . ,Mm. Each request j ∈ Nincludes a number of stages (”operations”) O1, . . . ,Onj j . Precedencerelations between operations can be specified. Each operation Oij isassigned to a machine µij that it should be processed on. For eachrequest, only one operation can be processed at a time. Each machinecan only process one operation at a time.• Job-shop: Precedence relations between operations areO1j → O2j → · · · → Onj j . No precedence relations between requests.Number of operations may vary between requests.

Alexander Lazarev Scheduling Theory and Applications 76 / 210

Page 135: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Machine scheduling

• Flow-shop (”Conveyor problem”): Each request contains the samenumber of operations: ∀ j ∈ N nj = m. Same operations are assignedto the same machine: µij = Mi , i = 1, . . . ,m, j = 1, . . . , n.• Open-shop: same as Flow-shop, but no precedence relations betweenoperations.• Other problems: batching problems, multiprocessor problems, . . .

Alexander Lazarev Scheduling Theory and Applications 77 / 210

Page 136: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Classification of problems in Machine scheduling

Alexander Lazarev Scheduling Theory and Applications 78 / 210

Page 137: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Classification of problems in Machine scheduling

Each problem is denoted as α|β|γ, where• α describes characteristics of the problem that are related tomachines• β describes constraints and conditions of processing of requests.• γ describes objective function.

Alexander Lazarev Scheduling Theory and Applications 79 / 210

Page 138: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Classification of problems in Machine scheduling

α describes characteristics of the problem related to machines. Possiblevalues of α:

• 1 — single machine• Pm — parallel machines• Qm — parallel machines (non-equivalent)• Fm — Flow-shop problem• Om — Open-shop problem• Jm — Job-shop problem• Other values: na, nd , . . .

Alexander Lazarev Scheduling Theory and Applications 80 / 210

Page 139: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Classification of problems in Machine scheduling

β describes constraints and conditions of processing of requests. Possiblecontents of field β:

• rj — release dates are specified• dj — due dates are specified• Dj — deadlines are specified• prec — precedence relations are specified• pmnt — preemption is allowe• batch — batching problem: groups of requests (batches) can beprocessed simultaneously.• Other values: pj = p, . . .

γ describes objective function (ex., Cmax).

Alexander Lazarev Scheduling Theory and Applications 81 / 210

Page 140: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Classification of problems in Machine scheduling

Thus, record F2|rj |Cmax denotes problem of minimizing makespan inFlow-shop system with two machines in case of non-simultaneousadmission of requests. Other examples: 1|pj = p, rj |

∑wjTj ,

Pm|rj , pmtn|∑

Cj , . . .

Let’s review some of previously considered problems in terms ofmachine scheduling:• 1|rj |Lmax (Jackson’s problem with non-zero release times)is NP-hard in the strong sense• 1|rj |

∑Cj (Smith’s problem with non-zero release times)

is NP-hard• F3||Cmax (Johnson’s problem with more than 2 machines)is NP-hard in the strong sense

Alexander Lazarev Scheduling Theory and Applications 82 / 210

Page 141: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Classification of problems in Machine scheduling

Thus, record F2|rj |Cmax denotes problem of minimizing makespan inFlow-shop system with two machines in case of non-simultaneousadmission of requests. Other examples: 1|pj = p, rj |

∑wjTj ,

Pm|rj , pmtn|∑

Cj , . . .

Let’s review some of previously considered problems in terms ofmachine scheduling:• 1|rj |Lmax (Jackson’s problem with non-zero release times)is NP-hard in the strong sense• 1|rj |

∑Cj (Smith’s problem with non-zero release times)

is NP-hard• F3||Cmax (Johnson’s problem with more than 2 machines)is NP-hard in the strong sense

Alexander Lazarev Scheduling Theory and Applications 82 / 210

Page 142: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Minimizing maximum lateness

1|rj |Lmax

Single machine, n jobsrj – release time;pj > 0 – processing time;dj – due date.j ∈ N = {1, 2, . . . , n}

Preemptions of a job are not allowed. The machine can process at mostone job at any time.

Graham R.L., Lawler E.L., Lenstra J.K., Rinnooy Kan A.H.G. 1979

Alexander Lazarev Scheduling Theory and Applications 83 / 210

Page 143: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Minimizing maximum lateness

1|rj |Lmax

Single machine, n jobsrj – release time;pj > 0 – processing time;dj – due date.j ∈ N = {1, 2, . . . , n}

Preemptions of a job are not allowed. The machine can process at mostone job at any time.

Graham R.L., Lawler E.L., Lenstra J.K., Rinnooy Kan A.H.G. 1979

Alexander Lazarev Scheduling Theory and Applications 83 / 210

Page 144: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Minimizing maximum lateness

1|rj |Lmax

Single machine, n jobsrj – release time;pj > 0 – processing time;dj – due date.j ∈ N = {1, 2, . . . , n}

Preemptions of a job are not allowed. The machine can process at mostone job at any time.

Graham R.L., Lawler E.L., Lenstra J.K., Rinnooy Kan A.H.G. 1979

Alexander Lazarev Scheduling Theory and Applications 83 / 210

Page 145: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

0

π i

pi

Cidiri

j

pj

Cj djrj

F (π) = maxj∈N{Cj − dj} → min

π

NP-hard in strong sense

Lenstra J.K., Rinnooy Kan A.H.G., Brucker, P. 1977

Alexander Lazarev Scheduling Theory and Applications 84 / 210

Page 146: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

0

π i

pi

Cidiri

j

pj

Cj djrj

F (π) = maxj∈N{Cj − dj} → min

π

NP-hard in strong sense

Lenstra J.K., Rinnooy Kan A.H.G., Brucker, P. 1977

Alexander Lazarev Scheduling Theory and Applications 84 / 210

Page 147: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

1|rj |Lmax

Alexander Lazarev Scheduling Theory and Applications 85 / 210

Page 148: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

1|rj |Lmax

Alexander Lazarev Scheduling Theory and Applications 85 / 210

Page 149: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

1|rj |Lmax

Alexander Lazarev Scheduling Theory and Applications 85 / 210

Page 150: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

1|rj |Lmax

Alexander Lazarev Scheduling Theory and Applications 85 / 210

Page 151: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

1|rj |Lmax

Alexander Lazarev Scheduling Theory and Applications 85 / 210

Page 152: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solvable cases:

1) rj = 0,∀ j ∈ N. O(n log n)Jackson J.R. 1955

1’) dj = const,∀ j ∈ N. O(n log n)

1”) pj = const,∀ j ∈ N.Simons B. 1983. O(n log n)

2) O(n3 log n){d1 ≤ d2 ≤ · · · ≤ dn;d1 − r1 − p1 ≥ d2 − r2 − p2 ≥ · · · ≥ dn − rn − pn.

(1)

2’) dj = rj + pj + const,∀ j ∈ N. O(n3 log n)

{1,P,Q,R}|rj |{Lmax,Cmax} O(n3 log n)

Lazarev A.A., Sadykov R.R., Sevastyanov S.V. 1988-2007

Alexander Lazarev Scheduling Theory and Applications 86 / 210

Page 153: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solvable cases:

1) rj = 0, ∀ j ∈ N. O(n log n)Jackson J.R. 1955

1’) dj = const,∀ j ∈ N. O(n log n)

1”) pj = const,∀ j ∈ N.Simons B. 1983. O(n log n)

2) O(n3 log n){d1 ≤ d2 ≤ · · · ≤ dn;d1 − r1 − p1 ≥ d2 − r2 − p2 ≥ · · · ≥ dn − rn − pn.

(1)

2’) dj = rj + pj + const,∀ j ∈ N. O(n3 log n)

{1,P,Q,R}|rj |{Lmax,Cmax} O(n3 log n)

Lazarev A.A., Sadykov R.R., Sevastyanov S.V. 1988-2007

Alexander Lazarev Scheduling Theory and Applications 86 / 210

Page 154: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solvable cases:

1) rj = 0, ∀ j ∈ N. O(n log n)Jackson J.R. 1955

1’) dj = const,∀ j ∈ N. O(n log n)

1”) pj = const,∀ j ∈ N.Simons B. 1983. O(n log n)

2) O(n3 log n){d1 ≤ d2 ≤ · · · ≤ dn;d1 − r1 − p1 ≥ d2 − r2 − p2 ≥ · · · ≥ dn − rn − pn.

(1)

2’) dj = rj + pj + const,∀ j ∈ N. O(n3 log n)

{1,P,Q,R}|rj |{Lmax,Cmax} O(n3 log n)

Lazarev A.A., Sadykov R.R., Sevastyanov S.V. 1988-2007Alexander Lazarev Scheduling Theory and Applications 86 / 210

Page 155: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solvable cases:

3) maxk∈N{dk − rk − pk} ≤ dj − rj ,∀ j ∈ N. O(n2 log n)

Hoogeveen J. A. 1996

4) NP-hard in ordinary sense O(n2P + npmaxP)d1 ≤ d2 ≤ · · · ≤ dn;r1 ≥ r2 ≥ · · · ≥ rn;rj , pj , dj ∈ Z+, ∀ j ∈ N.

(2)

Lazarev A.A., Schulgina O.N. 1998

P = rmax +n∑

j=1pj − rmin, rmax = max

j∈Nrj , rmin = min

j∈Nrj , pmax = max

j∈Npj

Alexander Lazarev Scheduling Theory and Applications 87 / 210

Page 156: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solvable cases:

3) maxk∈N{dk − rk − pk} ≤ dj − rj ,∀ j ∈ N. O(n2 log n)

Hoogeveen J. A. 1996

4) NP-hard in ordinary sense O(n2P + npmaxP)d1 ≤ d2 ≤ · · · ≤ dn;r1 ≥ r2 ≥ · · · ≥ rn;rj , pj , dj ∈ Z+, ∀ j ∈ N.

(2)

Lazarev A.A., Schulgina O.N. 1998

P = rmax +n∑

j=1pj − rmin, rmax = max

j∈Nrj , rmin = min

j∈Nrj , pmax = max

j∈Npj

Alexander Lazarev Scheduling Theory and Applications 87 / 210

Page 157: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solvable cases:

3) maxk∈N{dk − rk − pk} ≤ dj − rj ,∀ j ∈ N. O(n2 log n)

Hoogeveen J. A. 1996

4) NP-hard in ordinary sense O(n2P + npmaxP)d1 ≤ d2 ≤ · · · ≤ dn;r1 ≥ r2 ≥ · · · ≥ rn;rj , pj , dj ∈ Z+, ∀ j ∈ N.

(2)

Lazarev A.A., Schulgina O.N. 1998

P = rmax +n∑

j=1pj − rmin, rmax = max

j∈Nrj , rmin = min

j∈Nrj , pmax = max

j∈Npj

Alexander Lazarev Scheduling Theory and Applications 87 / 210

Page 158: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solvable cases:

5)

d1 ≤ d2 ≤ · · · ≤ dn;d1 − αr1 − βp1 ≥ d2 − αr2 − βp2 ≥ · · · ≥ dn − αrn − βpn;α ∈ [1,∞), β ∈ [0, 1].

(3)

5’)dj = αrj + βpj + const, ∀ j ∈ N, α ∈ [1,∞), β ∈ [0, 1]. 2009

O(n3 log n)

Alexander Lazarev Scheduling Theory and Applications 88 / 210

Page 159: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solvable cases:

5)

d1 ≤ d2 ≤ · · · ≤ dn;d1 − αr1 − βp1 ≥ d2 − αr2 − βp2 ≥ · · · ≥ dn − αrn − βpn;α ∈ [1,∞), β ∈ [0, 1].

(3)

5’)dj = αrj + βpj + const, ∀ j ∈ N, α ∈ [1,∞), β ∈ [0, 1]. 2009

O(n3 log n)

Alexander Lazarev Scheduling Theory and Applications 88 / 210

Page 160: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solvable cases:

5)

d1 ≤ d2 ≤ · · · ≤ dn;d1 − αr1 − βp1 ≥ d2 − αr2 − βp2 ≥ · · · ≥ dn − αrn − βpn;α ∈ [1,∞), β ∈ [0, 1].

(3)

5’)dj = αrj + βpj + const, ∀ j ∈ N, α ∈ [1,∞), β ∈ [0, 1]. 2009

O(n3 log n)

Alexander Lazarev Scheduling Theory and Applications 88 / 210

Page 161: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solvable cases:

5)

d1 ≤ d2 ≤ · · · ≤ dn;d1 − αr1 − βp1 ≥ d2 − αr2 − βp2 ≥ · · · ≥ dn − αrn − βpn;α ∈ [1,∞), β ∈ [0, 1].

(3)

5’)dj = αrj + βpj + const, ∀ j ∈ N, α ∈ [1,∞), β ∈ [0, 1]. 2009

O(n3 log n)

Alexander Lazarev Scheduling Theory and Applications 88 / 210

Page 162: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Algorithm 1. O(n log n)Step 0) ω = �; t = −∞;Step 1) f := f (N, t) and s := s(N, t);

f (N, t) = arg minj∈N{dj | rj (t) = r(N, t)},

s(N, t) = arg minj∈N\{f }

{dj | rj (t) = r(N \ {f }, t)},

rj (t) = max{rj , t}, r(N, t) = minj∈N{rj (t)}.

Step 2) if df ≤ ds thenbeginω := (ω, f ); N := N \ {f }, t := rf (t) + pf and goto Step 1)endelse RETURN.

Alexander Lazarev Scheduling Theory and Applications 89 / 210

Page 163: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Algorithm 2. α ∈ [1,∞), β ∈ [0, 1] O(n2 log n)1 | di ≤ dj , di − αri − βpi ≥ dj − αrj − βpj ; Lmax ≤ y | Cmax

Step 0) θ := ω(N, t); if Lmax(θ, t) > y then θ := � and RETURN.

Step 1) N := N \ {θ}; t := Cmax(θ);ω1 = (f , ω(N \ {f }, rf (t) + pf );ω2 = (s, ω(N \ {s}, rs(t) + ps);

if Lmax(ω1, t) ≤ y then θ := (θ, ω1) and goto Step 1);

Step 2) if Lmax(ω1, t) > y and Lmax(ω2, t) ≤ y then θ := (θ, ω2) and gotoStep 1);

Step 3) if Lmax(ω1, t) > y and Lmax(ω2, t) > y then θ := � and RETURN.

Alexander Lazarev Scheduling Theory and Applications 90 / 210

Page 164: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Algorithm 3. α ∈ [1,∞), β ∈ [0, 1] O(n3 log n)1 | di ≤ dj , di − αri − βpi ≥ dj − αrj − βpj | Lmax

Step 0) y := +∞; π∗ := ω(N, t); Φ := �; m := 0; N ′ := N \ {π∗};t ′ := Cmax(π∗); if N ′ = � then Φ := Φ ∪ (π∗);m := 1 and RETURN.

Step 1) if Lmax(ω1, t ′) ≤ Lmax(π∗) then π∗ := (π∗, ω1); N ′ := N \ {π∗};t ′ := Cmax(π∗); goto Step 1);

Step 2) if (Lmax(ω1, t ′) > Lmax(π∗))&(Lmax(ω1, t ′) < y) thenθ := θ(N ′, t ′, y ′), y ′ := Lmax(ω1, t ′);if θ = � then π∗ := (π∗, ω1); goto Step 1) else π′ := (π∗, θ);if Cmax(πm) < Cmax(π′) then m := m + 1; πm := π′; Φ := Φ ∪ (πm);y = Lmax(πm) else πm = π′; goto Step 1);

Step 3) if (Lmax(ω1, t ′) ≥ y)& (Lmax(ω2, t ′) < y) then π∗ = (π∗, ω2); gotoStep 1) else π∗ = π′m and RETURN.

Alexander Lazarev Scheduling Theory and Applications 91 / 210

Page 165: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Pareto optimal schedules for1 | di ≤ dj , di − αri − βpi ≥ dj − αrj − βpj | Lmax,Cmax

d1 ≤ d2 ≤ · · · ≤ dn;d1 − αr1 − βp1 ≥ d2 − αr2 − βp2 ≥ · · · ≥ dn − αrn − βpn;α ∈ [1,∞), β ∈ [0, 1].

(4)

1 | di ≤ dj , di − αri − βpi ≥ dj − αrj − βpj | Lmax,Cmax

1 ≤|| Φ(N, t) ||≤ n

O(n3 log n)

Alexander Lazarev Scheduling Theory and Applications 92 / 210

Page 166: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Pareto optimal schedules for1 | di ≤ dj , di − αri − βpi ≥ dj − αrj − βpj | Lmax,Cmax

1 ≤|| Φ(N, t) ||= m ≤ n

O(n3 log n)

Alexander Lazarev Scheduling Theory and Applications 93 / 210

Page 167: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Any instance is point in m = 3n-dimension space.

A – "hard" instance

0

polynomially (pseudo-polynomially) solvable cone

Bρ(A,B) = FA(πB)− FA(πA)

Alexander Lazarev Scheduling Theory and Applications 94 / 210

Page 168: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Any instance is point in m = 3n-dimension space.

A – "hard" instance

0

polynomially (pseudo-polynomially) solvable cone

Bρ(A,B) = FA(πB)− FA(πA)

Alexander Lazarev Scheduling Theory and Applications 94 / 210

Page 169: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Any instance is point in m = 3n-dimension space.

A – "hard" instance

0

polynomially (pseudo-polynomially) solvable cone

B

ρ(A,B) = FA(πB)− FA(πA)

Alexander Lazarev Scheduling Theory and Applications 94 / 210

Page 170: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Any instance is point in m = 3n-dimension space.

A – "hard" instance

0

polynomially (pseudo-polynomially) solvable cone

Bρ(A,B) = FA(πB)− FA(πA)

Alexander Lazarev Scheduling Theory and Applications 94 / 210

Page 171: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Metric

1|rj |Lmax

0 ≤ ρ(A,B) = FA(πB) − FA(πA) ≤(max{rA

j − rBj } −min{rA

j − rBj }) +

(∑|pA

j − pBj |) +

(max{dAj − dB

j } −min{dAj − dB

j })

Property of metric

ϕ(A) = maxj∈N

(rAj )−min

j∈N(rA

j ) + maxj∈N

(dAj )−min

j∈N(dA

j ) +∑j∈N

|pAj | ≥ 0.

ϕ(A) = 0⇐⇒ A ≡ 0;ϕ(αA) = αϕ(A);ϕ(A + B) ≤ ϕ(A) + ϕ(B).

(5)

||A|| = ϕ(A) ρ(A,B) = ||A− B||.

Alexander Lazarev Scheduling Theory and Applications 95 / 210

Page 172: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Metric

1|rj |Lmax

0 ≤ ρ(A,B) = FA(πB) − FA(πA) ≤(max{rA

j − rBj } −min{rA

j − rBj }) +

(∑|pA

j − pBj |) +

(max{dAj − dB

j } −min{dAj − dB

j })

Property of metric

ϕ(A) = maxj∈N

(rAj )−min

j∈N(rA

j ) + maxj∈N

(dAj )−min

j∈N(dA

j ) +∑j∈N

|pAj | ≥ 0.

ϕ(A) = 0⇐⇒ A ≡ 0;ϕ(αA) = αϕ(A);ϕ(A + B) ≤ ϕ(A) + ϕ(B).

(5)

||A|| = ϕ(A) ρ(A,B) = ||A− B||.

Alexander Lazarev Scheduling Theory and Applications 95 / 210

Page 173: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Metric + Application

||A|| = ϕ(A) ρ(A,B) = ||A− B||

Polynomially (pseudo-polynomially) solvable case

AR + BP + CD ≤ H

A, B, C – matrixes, R,P,D,H – vectors.

Alexander Lazarev Scheduling Theory and Applications 96 / 210

Page 174: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Metric + Application

||A|| = ϕ(A) ρ(A,B) = ||A− B||

Polynomially (pseudo-polynomially) solvable case

AR + BP + CD ≤ H

A, B, C – matrixes, R,P,D,H – vectors.

Alexander Lazarev Scheduling Theory and Applications 96 / 210

Page 175: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Absolute error approximate solution of the problem 1|rj |Lmax

Polynomially (pseudo-polynomially) solvable case

AR + BP + CD ≤ H

A, B, C – matrixes, R,P,D,H – vectors.

Projection of an instance A to a polynomially (pseudo-polynomially)solvable caseThe minimum absolute error among all instances from solvable area,–instance B .

O(n log n)

ρ(A,B) = (xr − yr ) +∑

(xp − yp) + (xd − yd )→ min

yr ≤ rAj − rB

j ≤ xr , ∀ j ;

−x jp ≤ pA

j − pBj ≤ x j

p,∀ j , x jp ≥ 0;

yd ≤ dAj − dB

j ≤ xd ,∀ j ;

ARB + BPB + CDB ≤ H.

Alexander Lazarev Scheduling Theory and Applications 97 / 210

Page 176: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Absolute error approximate solution of the problem 1|rj |Lmax

Polynomially (pseudo-polynomially) solvable case

AR + BP + CD ≤ H

A, B, C – matrixes, R,P,D,H – vectors.

Projection of an instance A to a polynomially (pseudo-polynomially)solvable caseThe minimum absolute error among all instances from solvable area,–instance B .

O(n log n)

ρ(A,B) = (xr − yr ) +∑

(xp − yp) + (xd − yd )→ min

yr ≤ rAj − rB

j ≤ xr , ∀ j ;

−x jp ≤ pA

j − pBj ≤ x j

p,∀ j , x jp ≥ 0;

yd ≤ dAj − dB

j ≤ xd , ∀ j ;

ARB + BPB + CDB ≤ H.Alexander Lazarev Scheduling Theory and Applications 97 / 210

Page 177: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Linear programming problem

ρ(A,B) = (xr − yr ) +∑

j(x j

p − y jp) + (xd − yd )→ min

xr ,yr ,xjp ,xd ,yd ,

rBj ,p

Bj ,d

Bj ,∀ j

yr ≤ rAj − rB

j ≤ xr ,∀ j ;

−x jp ≤ pA

j − pBj ≤ x j

p,∀ j , x jp ≥ 0;

yd ≤ dAj − dB

j ≤ xd ,∀ j ;

dB1 ≤ dB

2 ≤ · · · ≤ dBn ;

dB1 − αrB

1 − βpB1 ≥ dB

2 − αrB2 − βpB

2 ≥ · · · ≥ dBn − αrB

n − βpBn ;

α ∈ [1,∞), β ∈ [0, 1].

4 + 4n variables, 8n − 2 inequalities O(n log n)

Alexander Lazarev Scheduling Theory and Applications 98 / 210

Page 178: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Any penalties

Initial problem

µ∗ = minπ∈Π(N)

maxk=1,n

ϕjk (Cjk (π)), (6)

Not decreasing functions ϕj (Cj (π))

Dual problem

ν∗ = maxk=1,n

minπ∈Π(N)

ϕjk (Cjk (π)). (7)

rj = 0, ∀ j ∈ NConway R.W., Maxwell W.L., Miller L.W. Theory of Scheduling //Addison-Wesley, Reading, MA. 1967.

Alexander Lazarev Scheduling Theory and Applications 99 / 210

Page 179: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Any penalties

Initial problem

µ∗ = minπ∈Π(N)

maxk=1,n

ϕjk (Cjk (π)), (6)

Not decreasing functions ϕj (Cj (π))

Dual problem

ν∗ = maxk=1,n

minπ∈Π(N)

ϕjk (Cjk (π)). (7)

rj = 0, ∀ j ∈ NConway R.W., Maxwell W.L., Miller L.W. Theory of Scheduling //Addison-Wesley, Reading, MA. 1967.

Alexander Lazarev Scheduling Theory and Applications 99 / 210

Page 180: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Any penalties

Initial problem

µ∗ = minπ∈Π(N)

maxk=1,n

ϕjk (Cjk (π)), (6)

Not decreasing functions ϕj (Cj (π))

Dual problem

ν∗ = maxk=1,n

minπ∈Π(N)

ϕjk (Cjk (π)). (7)

rj = 0, ∀ j ∈ NConway R.W., Maxwell W.L., Miller L.W. Theory of Scheduling //Addison-Wesley, Reading, MA. 1967.

Alexander Lazarev Scheduling Theory and Applications 99 / 210

Page 181: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Dual problem

ν∗ = maxk=1,n

minπ∈Π(N)

ϕjk (Cjk (π))

νk = minπ∈Π(N)

ϕjk (Cjk (π)), k = 1, 2, . . . , n. (8)

ν∗ = maxk=1,n

νk . (9)

Alexander Lazarev Scheduling Theory and Applications 100 / 210

Page 182: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Dual problem

ν∗ = maxk=1,n

minπ∈Π(N)

ϕjk (Cjk (π))

νk = minπ∈Π(N)

ϕjk (Cjk (π)), k = 1, 2, . . . , n. (8)

ν∗ = maxk=1,n

νk . (9)

Alexander Lazarev Scheduling Theory and Applications 100 / 210

Page 183: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Dual problem

ν∗ = maxk=1,n

minπ∈Π(N)

ϕjk (Cjk (π))

νk = minπ∈Π(N)

ϕjk (Cjk (π)), k = 1, 2, . . . , n. (8)

ν∗ = maxk=1,n

νk . (9)

Alexander Lazarev Scheduling Theory and Applications 100 / 210

Page 184: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Lemma

ϕj (t), j = 1, 2, . . . , n, any not decreasing functions 1 | rj | ϕmax,∀ k = 1, 2, . . . , n, νn ≥ νk , ν∗ = νn.

Algorithmπr = (i1, i2, . . . , in), ri1 ≤ ri2 ≤ · · · ≤ rin ;πk = (πr \ ik , ik), k = 1, 2, . . . , n, ϕik (Cik (πk));ν∗ = max

k=1,nϕik (Cik (πk)).

O(n2)

Alexander Lazarev Scheduling Theory and Applications 101 / 210

Page 185: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Lemma

ϕj (t), j = 1, 2, . . . , n, any not decreasing functions 1 | rj | ϕmax,∀ k = 1, 2, . . . , n, νn ≥ νk , ν∗ = νn.

Algorithmπr = (i1, i2, . . . , in), ri1 ≤ ri2 ≤ · · · ≤ rin ;πk = (πr \ ik , ik ), k = 1, 2, . . . , n, ϕik (Cik (πk ));ν∗ = max

k=1,nϕik (Cik (πk )).

O(n2)

Alexander Lazarev Scheduling Theory and Applications 101 / 210

Page 186: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Lemma

ϕj (t), j = 1, 2, . . . , n, any not decreasing functions 1 | rj | ϕmax,∀ k = 1, 2, . . . , n, νn ≥ νk , ν∗ = νn.

Algorithmπr = (i1, i2, . . . , in), ri1 ≤ ri2 ≤ · · · ≤ rin ;πk = (πr \ ik , ik ), k = 1, 2, . . . , n, ϕik (Cik (πk ));ν∗ = max

k=1,nϕik (Cik (πk )).

O(n2)

Alexander Lazarev Scheduling Theory and Applications 101 / 210

Page 187: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Initial problem

µ∗ = minπ∈Π(N)

maxk=1,n

ϕjk (Cjk (π)), (10)

Not decreasing function ϕj (Cj (π))

Dual problem

ν∗ = maxk=1,n

minπ∈Π(N)

ϕjk (Cjk (π)). (11)

Theorem

ϕj (t), j = 1, 2, . . . , n, any not decreasing functions 1 | rj | ϕmax,∀ k = 1, 2, . . . , n, µ∗ ≥ ν∗.

Branch and bounds

Alexander Lazarev Scheduling Theory and Applications 102 / 210

Page 188: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Initial problem

µ∗ = minπ∈Π(N)

maxk=1,n

ϕjk (Cjk (π)), (10)

Not decreasing function ϕj (Cj (π))

Dual problem

ν∗ = maxk=1,n

minπ∈Π(N)

ϕjk (Cjk (π)). (11)

Theorem

ϕj (t), j = 1, 2, . . . , n, any not decreasing functions 1 | rj | ϕmax,∀ k = 1, 2, . . . , n, µ∗ ≥ ν∗.

Branch and bounds

Alexander Lazarev Scheduling Theory and Applications 102 / 210

Page 189: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Initial problem

µ∗ = minπ∈Π(N)

maxk=1,n

ϕjk (Cjk (π)), (10)

Not decreasing function ϕj (Cj (π))

Dual problem

ν∗ = maxk=1,n

minπ∈Π(N)

ϕjk (Cjk (π)). (11)

Theorem

ϕj (t), j = 1, 2, . . . , n, any not decreasing functions 1 | rj | ϕmax,∀ k = 1, 2, . . . , n, µ∗ ≥ ν∗.

Branch and bounds

Alexander Lazarev Scheduling Theory and Applications 102 / 210

Page 190: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Initial problem

µ∗ = minπ∈Π(N)

maxk=1,n

ϕjk (Cjk (π)), (10)

Not decreasing function ϕj (Cj (π))

Dual problem

ν∗ = maxk=1,n

minπ∈Π(N)

ϕjk (Cjk (π)). (11)

Theorem

ϕj (t), j = 1, 2, . . . , n, any not decreasing functions 1 | rj | ϕmax,∀ k = 1, 2, . . . , n, µ∗ ≥ ν∗.

Branch and bounds

Alexander Lazarev Scheduling Theory and Applications 102 / 210

Page 191: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Preceding, Dual problemG single machine O(n2)G many machines NP-hard

Not decreasing penalty functions ϕj (Cj (π))

Alexander Lazarev Scheduling Theory and Applications 103 / 210

Page 192: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Cosmonauts Training Scheduling Problem

Alexander Lazarev Scheduling Theory and Applications 104 / 210

Page 193: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem statement

• Set of on-board systems.• Sets of cosmonauts and crews.• Set of resources (equipment, teachers, etc.).• Dates of starts.

It is necessary to prepare appropriate crews to dates of their starts.

Alexander Lazarev Scheduling Theory and Applications 105 / 210

Page 194: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Our goals

• to develop mathematical model• to find approaches to solve it• to implement Planner system• to reduce labor costs• to form new and reschedule available timetable

Alexander Lazarev Scheduling Theory and Applications 106 / 210

Page 195: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Cosmonauts Training Scheduling Problem

Mathematical formulation — RCPSP (Resource-Constrained ProjectScheduling Problem).• Resource constraints.• Precedence constraints.• More than 4000 publications are devoted to this problem at

scholar.google.ru.• NP-hard in strong sense, there are no pseudo-polynomial algorithms.

Alexander Lazarev Scheduling Theory and Applications 107 / 210

Page 196: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Methods for solving RCPSP

• Dynamic programming.• Methods of Integer Linear Programming.• Methods of Constraint Programming.• Heuristic algorithms.

Alexander Lazarev Scheduling Theory and Applications 108 / 210

Page 197: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Volume planning problem

Problem statement• set of on-board systems (near 140);• required number of cosmonauts of different skills for each on-board

system.

Goal: to distribute training qualifications between cosmonauts, minimizingthe difference between the maximum and minimum total time of training ofcosmonauts.

Results• heuristic greedy algorithm;• branch and bound method (CPLEX).

Alexander Lazarev Scheduling Theory and Applications 109 / 210

Page 198: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Initial datafor volume planning problem

Alexander Lazarev Scheduling Theory and Applications 110 / 210

Page 199: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

The experimental resultsfor volume planning problem

Measure of unsolvability

Alexander Lazarev Scheduling Theory and Applications 111 / 210

Page 200: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Timetabling problem

• Planing horizon is about 3 years.• Each cosmonaut has an individual learning plan.• 10 crews are studying simultaneously.• There are main and backup crews.

Alexander Lazarev Scheduling Theory and Applications 112 / 210

Page 201: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Review of other space agencies systems

NASA – TAMS, FOCAS, STAR

KAREN AU, SAMUEL SANTIAGO, RICHARD PAPASIN, MAY WINDERM, TRISTAN LE. Streamlining Space

Training Mission Operations with Web Technologies. An Approach to Developing Integral Business Applications for

Large Organizations // IEEE 4th International Conference on. Space Mission Challenges for Information Technology

(SMC-IT), 2011, pp.159-166.

Alexander Lazarev Scheduling Theory and Applications 113 / 210

Page 202: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

ЕКА

SPAGNULO, M., FLEETER, R., BALDUCCINI, M., NASINI, F. Space Program Management : Methods and Tools

// Spagnulo, M., Fleeter, R., Balduccini, M., Nasini, F., Springer-Verlag New York - 2013. - 352 с.

Alexander Lazarev Scheduling Theory and Applications 114 / 210

Page 203: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem statement

K – a number of cosmonauts;Jk – each cosmonaut k has his own set of training tasks;pj – execution time of task j ∈ J;R – set of resources.

The goal isto form a training schedule for each cosmonaut

Alexander Lazarev Scheduling Theory and Applications 115 / 210

Page 204: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Time intervals

W – set of planning weeks, where |W | = 156 weeks (3 years);Dw = {1,2,3,4,5} – set of work days per week, w ∈W ;Hwd = {1, ..., 18} – set of half-hour intervals of day d ∈ Dw of weekw ∈W .

Y = {(w , d , h)|w ∈W , d ∈ Dw , h ∈ Hwd}, |Y | ≈ 14040

t(w , d , h) – considering time moment.

Alexander Lazarev Scheduling Theory and Applications 116 / 210

Page 205: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Variables

xjwdh =

1, iff task j is started

from interval h of day d of week w ;0, else.

Alexander Lazarev Scheduling Theory and Applications 117 / 210

Page 206: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Constraints

Precedence relations between the tasks (academic plan)∑(w ,d ,h)∈Y

t(w , d , h)(xj2wdh − xj1wdh) ≥ pj1 , (12)

∀(j1, j2) ∈ Γk .

The resource limits (teachers, simulators, trainers)∑j∈J

rc jr

∑h′ > 0,

h − pj + 1 ≤ h′ ≤ h

xjwdh′ ≤ rarwdh, (13)

∀r ∈ R, ∀(w , d , h) ∈ Y . |Y | ≈ 14040, |R| ≈ 100.

Alexander Lazarev Scheduling Theory and Applications 118 / 210

Page 207: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Constraints

No more than ... (frequency of classes)∑j∈JF

∑d∈Dw

∑h∈Hwd

xjwdh ≤ 2, ∀w ∈W . (14)

Each cosmonaut may have no more than 2 physical trainings per week.

Excluding some time intervals∑j∈J[h1;h2]

∑h1−pj +1≤h≤h2

xjwdh = 0, (15)

∀w ∈W , ∀d ∈ Dw ;

[h1; h2] – time period when performing task j is forbidden.

It is forbidden to practice in the hyperbaric chamber after lunch.

Alexander Lazarev Scheduling Theory and Applications 119 / 210

Page 208: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Comparison of two approaches to solvingthe scheduling problem for 1 crew

N CPLEX MIP CPLEX CPTime, с Var. Constr. Iter. Time, с Var. Constr. Branch.

1 09.06 26820 37620 21922 0.250 291 2170 12722 30.75 52680 60066 54234 0.329 363 2788 15123 559.84 73500 87846 5019412 0.438 492 3548 20084 375.834 108720 121578 2032790 0.703 606 4263 27845 374.63 115200 125466 2022320 0.610 642 4348 29127 346.30 144480 157920 820534 0.640 654 4374 264810 6657.98 204000 210646 16 917 014 1.317 852 5738 3 448

N is a number of on-board systems.

Alexander Lazarev Scheduling Theory and Applications 120 / 210

Page 209: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Conclusion

Our resultsSchedule for 1 crew for 1 year 3 moths

Our plansSchedule for 2 crew for 2 year

Alexander Lazarev Scheduling Theory and Applications 121 / 210

Page 210: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Railway scheduling pioneers

Frank, O., Two-Way Traffic on a Single Line of Railway, Oper. Res., 1966,vol. 14, no. 5, pp. 801–811.

Szpigel, B., Optimal Train Scheduling on a Single Line Railway, Oper. Res.,1973, pp. 344–351.

Relation between railway planning problems and classical schedulingproblems• track segments = «machines»• trains = «jobs»

Alexander Lazarev Scheduling Theory and Applications 122 / 210

Page 211: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Existing approaches and solution methods

1. Considering in terms of job-shop.

Szpigel B. Optimal train scheduling on a single line railway. Oper Res, 344 - 351,1973.

Sotskov Y. Shifting bottleneck algorithm for train scheduling in a single-trackrailway. Proccedings of the 14th IFAC Symposium on Information ControlProblems. Part 1. Bucharest/Romania. 87 - 92. 2012.

Gafarov E.R., Dolgui A., Lazarev A.A. Two-Station Single-Track RailwayScheduling Problem With Trains of Equal Speed. Computers and IndustrialEngineering. 85:260 - 267. 2015.

Harbering J., Ranade A., Schmidt M. Single Track Train Scheduling. Institute ofNumerical and Applied Mathematics. preprint. 18. 2015.

Alexander Lazarev Scheduling Theory and Applications 123 / 210

Page 212: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Existing approaches and solution methods

2. Integer linear programming

Brannlund U., Lindberg P.O, Nou A. and Nilsson J.E.Railway Timetabling Using Lagrangian Relaxation.Transportation Science 32(4):358 - 369. 1998.

Lazarev, A.A. and Musatova, E.G.Integer Formulations of the Problem of Railway Train Formation and Timetabling,Upravlen. Bol’shimi Sist., 2012, no. 38, pp. 161–169.

Alexander Lazarev Scheduling Theory and Applications 124 / 210

Page 213: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Exicting approaches and solution methods

3. Heuristics

Sotskov Y.Shifting bottleneck algorithm for train scheduling in a single-track railway.Proccedings of the 14th IFAC Symposium on Information Control Problems. Part1. Bucharest/Romania. 87 - 92. 2012.

Mu S., Maged D.Scheduling freight trains traveling on complex networks.Transportation Research Part B: Methodological. 45(7):1103 - 1123. 2011.

Carey M., and Lockwood D.A model, algorithms and strategy for train pathing.The Journal of Operational Research Society. 8(46):988 - 1005. 1995.

Alexander Lazarev Scheduling Theory and Applications 125 / 210

Page 214: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Exicting approaches and solution methods

Allocation of polynomially solvable cases of railway scheduling problems

Gafarov E.R., Dolgui A., Lazarev A.A.Two-Station Single-Track Railway Scheduling Problem With Trains of EqualSpeed.Computers and Industrial Engineering. 85:260 - 267. 2015.

Harbering J., Ranade A., Schmidt M.Single Track Train Scheduling.Institute of Numerical and Applied Mathematics. preprint. 18. 2015.

Disser Y., Klimm M., Lubbecke E.Scheduling Bidirectional Traffic on a Path.In Proceedings of the 42nd International Colloquium on Automata, Languages,and Programming (ICALP). 406 - 418. 2015.

Alexander Lazarev Scheduling Theory and Applications 126 / 210

Page 215: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Laboratory projects in railway scheduling

Small-scale problems• Scheduling problem on single railway tracks.• Goal – the development of exact polynomially solvable algorithms with

small computational complexity.• Solution approach – dynamical programming.

Large-scale problems• The freight car routing problem.• Goal – the construction of operational plan with feasible solution time.• Solution approach – integer linear programming, LP-relaxation,

column generation.

Alexander Lazarev Scheduling Theory and Applications 127 / 210

Page 216: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Single track railway scheduling problem

N1→ ←N2

St. 1 St. 2p

Initial data• |N1| = n, |N2| = n′, N = N1 ∪ N2, |N| = n + n′.• All trains have equal speed, track traversing time – p.• Minimal time between the departure of two trains from one station – β.

• The transportation starts at time t = 0.

Denote the problem as STR2 (Single Track Railway Scheduling Problem).

Alexander Lazarev Scheduling Theory and Applications 128 / 210

Page 217: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Problem formulation

ScheduleIn schedule σ, for each train i ∈ N

Si (σ) – it’s departure time;

Ci (σ) – arrival time, Ci (σ) = Si (σ) + p.

Objective function

Family of objective functions.

The approach will be demonstrated on the maximum lateness objectivefunction Lmax (σ),

Lmax (σ) = maxi∈N

Li = maxi∈N{Ci (σ)− di}.

Alexander Lazarev Scheduling Theory and Applications 129 / 210

Page 218: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Dynamic programming approach

AssumptionWe will consider schedule schedule σ which possess the following property: forany point in time t such that 0 ≤ t ≤ Cmax (σ) there exists at least one traini ∈ N satisfying the condition Si (σ) ≤ t ≤ Ci (σ).

-tStation 1

Station 2

����������

����������

����������

����������

����������A

AAAAAAAAA

AAAAAAAAAA

AAAAAAAAAA -�

p

AAAAAAAAAA

AAAAAAAAAA

-�β

-�β

Alexander Lazarev Scheduling Theory and Applications 130 / 210

Page 219: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Dynamic programming approach

AssumptionTrain departure order is specified.

Maximum lateness Lmax

For objective function Lmax (σ) = maxi∈N{Ci (σ)− di} there exists an optimal

schedule σ in which trains depart from each station in a nondecreasingorder of due dates di .

Numbering of trainsOn each station trains are numbered in the decreasing order of theirdeparture times, i > j implies that, in any schedule σ, Si (σ) < Sj (σ).

Alexander Lazarev Scheduling Theory and Applications 131 / 210

Page 220: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Dynamic programming approach

Subproblem P(𝒌𝟏, 𝒌𝟐, 𝒔)

set of unsent trains on station 1,

𝑘1 ∈ {0,1,2, … , 𝑛} ∈ 𝑁1

set of unsent trains on station 2,

𝑘2 ∈ {0,1,2,… , 𝑛′} ∈ 𝑁2

additional condition: first train depart from

station s∈ {1,2}

Number of different subproblems ‒ O((n+n’)2)Optimal value of the objective function for P(k1, k′2, s)

f (k1, k′2, s) = F (σ∗),

where σ∗ is an optimal schedule for P(k1, k′2, s).

Alexander Lazarev Scheduling Theory and Applications 132 / 210

Page 221: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solution algorithm

-tStation 1

Station 2

Siding

����������

f (k1, k′2, 1)

-tStation 1

Station 2

Siding

AAAAAAAAAA

f (k1, k′2, 2)

f (k1, k′2 + 1, 2) = ?

Alexander Lazarev Scheduling Theory and Applications 133 / 210

Page 222: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solution algorithm

-tStation 1

Station 2

����������

f (k1, k′2, 1) + p

max{f (k1, k′2, 1) + p, p − dk ′

2+1}

-�

pAAAAAAAAAA

p − dk ′2+1

-tStation 1

Station 2 AAAAAAAAAA

f (k1, k′2, 2) + β

max{f (k1, k′2, 2) + β, p − dk ′

2+1}

-�β

AAAAAAAAAA

p − dk ′2+1

f (k1, k′2 + 1, 2) = max{f (k1, k

′2, 1) + p, p − dk ′

2+1}

Alexander Lazarev Scheduling Theory and Applications 134 / 210

Page 223: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Dynamic programming approach

f (k1, k′2 + 1, 2) = max

p − dk ′

2+1;

min

{f (k1, k

′2, 1) + p;

f (k1, k′2, 2) + β;

for each k ′2 ∈ {1′, ..., n′ − 1′}, k1 6= 0.

Alexander Lazarev Scheduling Theory and Applications 135 / 210

Page 224: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Dynamic programming approach

Setting

f (1, 0′, 1) = p − d1

f (0, 1′, 2) = p − d1′

Bellman equation

f (k1 + 1, k ′2, 1) = max

p − dk1+1;

min

{f (k1, k

′2, 1) + β;

f (k1, k′2, 2) + p.

k1 ∈ {1, ..., n − 1}, k ′2 6= 0′

f (k1, k′2 + 1, 2) = max

p − dk′

2+1;

min

{f (k1, k

′2, 1) + p;

f (k1, k′2, 2) + β.

k ′2 ∈ {1′, ..., n′ − 1′}, k1 6= 0

Alexander Lazarev Scheduling Theory and Applications 136 / 210

Page 225: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Dynamic programming approach

Optimal objective function value of the original problem

min{f (n, n′, 1), f (n, n′, 2)}

Computational complexity

O((n + n′)2)

Value of f (k1, k′2, s) is computed for:

each pair of k1, k1 ∈ {1, ..., n}), and k ′2, k2 ∈ {1, ..., n′}.

Alexander Lazarev Scheduling Theory and Applications 137 / 210

Page 226: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Dynamic programming approach

Other objective functionsThis solution procedure can applied to a set of objective functions, forexample for ∑

wiCi (σ) =∑i∈N

wiCi (σ)

Condition"Shifted" schedule σt of schedule σ, Ci (σ)− Ci (σt) = t for all i ∈ N.There exists G (k1, k

′2, s) so that F (σt) = F (σ) + G (k1, k

′2, t).

for Lmax : G (k1, k′2, t) = t;

for∑

wiCi (σ): G (k1, k′2, t) =

∑k1i=1 wi t +

∑k ′2j=1′ wj t.

Alexander Lazarev Scheduling Theory and Applications 138 / 210

Page 227: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Dynamic programming approach

General form of objective functions⊙i∈N

ϕi (Ci (σ)),

whereϕi (·) – nondecreasing function, defined for each train i ∈ N,� – some commutative and associative operation such,for any numbers a1, a2, b1, b2, � satisfy a1 ≤ a2 and b1 ≤ b2,

a1 � b1 ≤ a2 � b2.

Alexander Lazarev Scheduling Theory and Applications 139 / 210

Page 228: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Dynamic programming approach

Solution procedure

STR2||⊙i∈N

ϕi (Ci (σ))

Specified train departure order on each station.Polynomial set of possible departure times T , |T | = O((n + n′)2).Subproblem: P(k1, k

′2, s, t), f (k1, k

′2, s, t) is calculated for

each pair of k1, k1 ∈ {1, ..., n};each pair of k ′2, k2 ∈ {1, ..., n′};all t ∈ T .

Computational complexity – O((n + n′)4).

Alexander Lazarev Scheduling Theory and Applications 140 / 210

Page 229: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Dynamic programming approach

Minimization of maximum cost functions

Fmax (σ) = maxi∈N

ϕi (Ci (σ))

No specified order of train departure on each station.

Iterative optimization proceduredynamic programming algorithm for STR2||Lmax

general optimisation scheme, presented by Zinder and Shkurba1

1Zinder, Y. and Shkurba, V. Effective iterative algorithms in schedulingtheory. Cybernetics, 21(1), 86–90. 1985.

Alexander Lazarev Scheduling Theory and Applications 141 / 210

Page 230: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Dynamic programming approach

Iterative optimisation procedure

Computational complexityO((n + n′)5 log(n + n′))

Alexander Lazarev Scheduling Theory and Applications 142 / 210

Page 231: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Conclusion

Dynamic programming procedure for a set of objective functions

F (σ) =⊙i∈N

ϕi (Ci (σ))

Computational complexity is O((n + n′)4),can be reduced for a subset of objective functions – O((n + n′)2).

Iterative optimisation procedure for maximum cost functions

Fmax (σ) = maxi∈N

ϕi (Ci (σ))

Computational complexity is O((n + n′)5 log(n + n′)).

Alexander Lazarev Scheduling Theory and Applications 143 / 210

Page 232: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Single track railway scheduling problem

Solution algorithm complexity

Problem ComplexitySTR2 | |Lmax O(n2)

STR2 | |∑

wjCj O(n2)STR2 | |max

j∈Nϕj (Cj (σ)) O(n5 log n)

STR2 |p(j), λ |Lmax O(nλ)STR2 |p(j), λ |

∑wjCj O(nλ)

STR2 |p(j), λ |∑

Uj (σ) O(n2λ)

STR2 |p(j), λ |⊙

j

ϕ(Cj ) O(nα2+αnλ)

STR2 |p(j), λ,V |maxj∈N

ϕj (Cj (σ)) O(q2 log qn2α2+2α+1nλ log n)

λ – the number of subsets with possible fixed departure order p(j) – differenttrain traversing times V – feasible intervals of movement

Alexander Lazarev Scheduling Theory and Applications 144 / 210

Page 233: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Single track railway scheduling problem with a siding

What is the siding?

Additional track

Main track

Alexander Lazarev Scheduling Theory and Applications 145 / 210

Page 234: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Single track railway scheduling problem with a siding

N1→ ←N2Siding

St. 1 St. 2p1 p2

Initial dataOne siding, capacity is one train.|N1| = n1, |N2| = n2, all trains have equal speed.Traversing times: p1, p2, p1 ≥ p2.For each train i from station s, i ∈ Ns , s ∈ {1, 2}, due date d i

s and costcoefficient w i

s are given;

Release times: r is = 0, i ∈ Ns , s ∈ {1, 2}.

Denote the problem as STRSP2 (Single Track Railway SchedulingProblem).

Alexander Lazarev Scheduling Theory and Applications 146 / 210

Page 235: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Single track railway scheduling problem with a siding

ScheduleWe need to construct optimal schedule σ, i.e. to set for each train number imoving from station s, i ∈ Ns , s ∈ {1, 2}, it’s departure time S i

s(σ), stop time inthe siding τ i

s (σ) and arrival time C is (σ).

Objective functionMinimizing maximum lateness

Lmax = maxi∈Ns ,s∈{1,2}

{Lis},

whereLi

s = C is − d i

s ,

and weighted sum of arrival moments∑wjCj =

∑i∈Ns , s∈{1,2}

w isC

is .

Alexander Lazarev Scheduling Theory and Applications 147 / 210

Page 236: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Schedule properties for presented model

ExpressExpress is the train i moving from station s, i ∈ Ns , s ∈ {1, 2}, if it doesn’tstop in the siding, i.e. τ i

s = 0.

-tStation 1

Station 2

SidingAAAAAAA

AAA

����������

����������

����������

����������

����������A

AAAAAAAAA

AAAAAAAAAA

AAAAAAAAAA

Alexander Lazarev Scheduling Theory and Applications 148 / 210

Page 237: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Schedule properties for presented model

-tStation 1

Station 2

SidingAAAAAAA

AAA

����������

����������

����������

����������

����������A

AAAAAAAAA

AAAAAAAAAA

AAAAAAAAAA

Feasible schedule

-tStation 1

Station 2

SidingAAAAAAA

AAA

����������

����������

����������

����������

����������A

AAAAAAAAA

AAAAAAAAAA

AAAAAAAAAA

Left-shifted schedule

Alexander Lazarev Scheduling Theory and Applications 149 / 210

Page 238: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Schedule properties for presented model

-tStation 1

Station 2

SidingAAAAAAA

AAA

����������

����������

����������

����������

����������A

AAAAAAAAA

AAAAAAAAAA

AAAAAAAAAA

Left-shifted schedule

-tStation 1

Station 2

SidingAAAAAAA

AAA

����������

����������

����������

����������

����������A

AAAAAAAAA

AAAAAAAAAA

AAAAAAAAAA

Regular schedule

τ is = mβ

-�β

Alexander Lazarev Scheduling Theory and Applications 150 / 210

Page 239: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

States

-tStation 1

Station 2

Siding

����������

����������

����������

����������

����������

1) Batch moving from station 1 with empty siding.

Alexander Lazarev Scheduling Theory and Applications 151 / 210

Page 240: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

States

-tStation 1

Station 2

Siding

AAAAAAAAAA

AAAAAAAAAA

AAAAAAAAAA

AAAAAAAAAA

AAAAAAAAAA

2) Batch moving from station 2 with empty siding.

Alexander Lazarev Scheduling Theory and Applications 152 / 210

Page 241: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

States

-tStation 1

Station 2

SidingAAAAAAA

AAA

����������

����������

����������

����������

����������

3) Batch moving from station 1 with occupied siding.

Alexander Lazarev Scheduling Theory and Applications 153 / 210

Page 242: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

States

-tStation 1

Station 2

Siding

�������

���A

AAAAAAAAA

AAAAAAAAAA

AAAAAAAAAA

AAAAAAAAAA

AAAAAAAAAA

4) Batch moving from station 2 with occupied siding.

Alexander Lazarev Scheduling Theory and Applications 154 / 210

Page 243: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

States

Express state (𝒔, 𝒃)

express departure station, 𝑠 ∈ {1,2}

Alexander Lazarev Scheduling Theory and Applications 155 / 210

Page 244: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

States

Express state (𝒔, 𝒃)

express departure station, 𝑠 ∈ {1,2}

«0»

Alexander Lazarev Scheduling Theory and Applications 156 / 210

Page 245: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

States

Express state (𝒔, 𝒃)

express departure station, 𝑠 ∈ {1,2}

«0» «1»

Alexander Lazarev Scheduling Theory and Applications 157 / 210

Page 246: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

States

Express state (𝒔, 𝒃)

express departure station, 𝑠 ∈ {1,2}

«0» «1»«1»…

Alexander Lazarev Scheduling Theory and Applications 158 / 210

Page 247: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

States

Express state (𝒔, 𝒃)

express departure station, 𝑠 ∈ {1,2}

«0» «1»«1»… «2»

Alexander Lazarev Scheduling Theory and Applications 159 / 210

Page 248: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Regular schedule and expresses states sequences

Theorem 1.For each regular schedule there exists one and only one sequence ofexpresses states.

-tStation 1

Station 2

Siding

�������

���A

AAAAAAAAA

AAAAAAAAAA

AAAAAAAAAA

AAAAAAA

AAA

����������

����������

����������

���������� A

AAAAAAAAA

(2,1) (2,1) (2,2) (1,1) (1,1) (1,1) (1,2) (2,0)

Alexander Lazarev Scheduling Theory and Applications 160 / 210

Page 249: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

States

(1,0)

t

(1,0)

(2,0)

(1,1)

(2,1)

(1,2)

(2,2)

(2,0)

(1,0)

(2,0)

(1,1)

(2,1)

(1,2)

(2,2)

(1,2)

(1,0)

(2,0)

(1,1)

(2,1)

(1,2)

(2,2)

(2,2)

(1,0)

(2,0)

(1,1)

(2,1)

(1,2)

(2,2)

(1,1)(1,1)

(1,2)(2,1)

(2,1)

(2,2)

Alexander Lazarev Scheduling Theory and Applications 161 / 210

Page 250: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

States

-tStation 1

Station 2

Siding

����������A

AAAAAAAAA �

��������� A

AAAAAAAAA

(2,2) (1,0) (2,0)

Alexander Lazarev Scheduling Theory and Applications 162 / 210

Page 251: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solution algorithm

Subproblem P(𝒌𝟏, 𝒌𝟐, 𝒔, 𝒃)

number of unsent trains

on station 1, 𝑘1 ∈ {0,1,2,… , 𝑛1}

number of unsent trains on

station 2, 𝑘2 ∈ {0,1,2,… , 𝑛2}

additional condition:state of the first express,

s∈ {1,2}, 𝑏 ∈ {0,1,2}

Number of different subproblems ‒ O(n2)

Alexander Lazarev Scheduling Theory and Applications 163 / 210

Page 252: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solution algorithm

(n1,n2,1,0)

(n1,n2,2,0)

(n1,n2,1,1) . . .

(1,0,1,0)

(2,0,1,0)(1,1,2,0)

(2,1,1,2)

t

(n1,n2,2,1)

(n1,n2,1,2)

(n1,n2,2,2)

(2,1,2,2)

(0,1,2,0)

(1,1,1,0)

(0,2,2,0)(1,2,1,2)

(1,2,2,2)

(1,1,1,2)(2,1,1,0)(1,2,2,0)(2,1,1,1)

(1,1,2,2)(2,1,1,0)(1,2,2,0)(1,2,2,1)

Alexander Lazarev Scheduling Theory and Applications 164 / 210

Page 253: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solution algorithm

Initial values

F (1, 0, 1, 0)) = p1 + p2 − d11 ;

F (0, 1, 2, 0)) = p1 + p2 − d12 ;

F (1, 1, 1, 2) = max

{2p1 − d1

2 ;

p2 + p1 − d11 ;

F (1, 1, 2, 2) = max

{2p2 − d1

1 ;

p2 + p1 − d12 .

Exclusion of impossible subtasksF (0, k2, 1, 0) =∞;F (k1, 0, 2, 0) =∞;F (k1, k2, s, b) =∞ if k1 = 0 or k2 = 0, where (s, b) /∈ {(1, 0), (2, 0)}.

Alexander Lazarev Scheduling Theory and Applications 165 / 210

Page 254: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solution algorithm

Bellman equationOptimal objective function value in the subproblem P(k1, k2, s, b)

F (k1, k2, s, b) = min(k ′1,k

′2,s′,b′)∈T (k1,k2,s,b)

max

{H(k1, k2, s, b);

F (k ′1, k′2, s′, b′) + g((s, b), (s ′, b′));

Objective function value of express in state (s, b) and skipping train

H(k1, k2, s, b) =

{max{p1 + p2 − dks

s ; 2ps − dkss }, if b = 2,

p1 + p2 − dkss otherwise.

Alexander Lazarev Scheduling Theory and Applications 166 / 210

Page 255: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Solution algorithm

Algorithm for∑

wjCj

For objective function∑

wjCj algorithm is the same, some operations andvariables changes.

Alexander Lazarev Scheduling Theory and Applications 167 / 210

Page 256: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Single track railway scheduling problem with a siding

ResultsExact solution algorithm based on the dynamical programmingmethod was proposed for the described problem.Presented algorithm allows to construct set of optimal schedules inO(n2) operations.

Alexander Lazarev Scheduling Theory and Applications 168 / 210

Page 257: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

The freight car routing problem: overview

Alexander Lazarev Scheduling Theory and Applications 169 / 210

Page 258: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Specificity of freight rail transportation in Russia

Freight carblockingFreight trainschedulingLocomotivesmanagementPersonnelmanagement

The state company

Assignment oftransportationdemands to freightcarsFreight car routing

Independent freight carmanagement companies

Transp. costs matrix (M)Transp. times matrix (D)

car movements

Distances are large, and average freight train speed is low (≈ 300 km/day):discretization in periods of 1 day is reasonable

Alexander Lazarev Scheduling Theory and Applications 170 / 210

Page 259: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

The freight car routing problem: input and output

InputRailroad network (stations)Initial locations of cars (sources)Transportation demands and associated profitsCosts: transfer costs and standing (waiting) daily rates;

Output: operational planA set of accepted demands and their execution datesEmpty and loaded cars movements to meet the demands (car routing)

ObjectiveMaximize the total net profit

Alexander Lazarev Scheduling Theory and Applications 171 / 210

Page 260: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Similar works in the literature

[Fukasawa, Poggi, Porto, Uchoa, ATMOS02]Train schedule is knownCars should be assigned to trains to be transportedDiscretization by the moments of arrival and departure of trains.Smaller time horizon (7 days)

Other works[Holmberg, Joborn, Lundren, TS98][Lobel, MS98][Campetella, Lulli, Pietropaoli, Ricciardi, ATMOS06][Caprara, Malaguti, Toth, TS11]

Alexander Lazarev Scheduling Theory and Applications 172 / 210

Page 261: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Data: overview

T — planning horizon (set of time periods);I — set of stations;C — set of car types;K — set of product types;Q — set of demands;S — set of sources (initial car locations);M — empty transfer cost function;D — empty transfer duration function;

Alexander Lazarev Scheduling Theory and Applications 173 / 210

Page 262: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Demands data

For each order q ∈ Q

origin and destination stations;product typeset of car types, which can be used for this demand — Cq ⊆ C

maximum (minimum) number of cars, needed to fulfill (partially) thedemand — nmax

q (nminq )

time window for starting the transportationprofit vector (for delivery of one car with the product), depends on theperiod on which the transportation is startedtransportation time of the demanddaily standing rates charged for one car waiting before loading (afterunloading) the product at origin (destination) station

Alexander Lazarev Scheduling Theory and Applications 174 / 210

Page 263: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Sources and car types data

For each source s ∈ S

station where cars are locatedtype of carsperiod, starting from which cars can be useddaily standing rate charged for carstype of the latest delivered productnumber of cars in the source — ~ns ∈ N

For each car type c ∈ C

Qc — set of demands, which a car of type c can fulfillSc — set of sources for car type c

Alexander Lazarev Scheduling Theory and Applications 175 / 210

Page 264: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Commodity graph

Commodity c ∈ C represents the flow (movements) of cars of type c .

Graph Gc = (Vc ,Ac) for commodity c ∈ C :

· · ·

· · ·

· · ·

station 1

station 2

station 3

· · · · · · · · · · · ·

· · · · · · · · · · · ·waiting arc

empty transfer arc

loaded transfer arc

time

Each vertex v ∈ Vc represent location of cars of type c on a certain stationat a certain time standing at a certain ratega — cost of arc a ∈ Ac

Alexander Lazarev Scheduling Theory and Applications 176 / 210

Page 265: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Multi-commodity flow formulation

Variablesxa ∈ Z+ — flow size along arc a ∈ Ac , c ∈ C

yq ∈ {0, 1} — demand q ∈ Q is accepted or not

min∑c∈C

∑a∈Ac

gaxa∑c∈Cq

∑a∈Acq

xa ≤ nmaxq yq ∀q ∈ Q

∑c∈Cq

∑a∈Acq

xa ≥ nminq yq ∀q ∈ Q

∑a∈δ−(v)

xa −∑

a∈δ+(v)

xa = ~nv ∀c ∈ C , v ∈ Vc

xa ∈ Z+ ∀c ∈ C , a ∈ Vc

yq ∈ {0, 1} ∀q ∈ Q

We concentrate on solving its LP-relaxationAlexander Lazarev Scheduling Theory and Applications 177 / 210

Page 266: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Multi-commodity flow formulation

Variablesxa ∈ Z+ — flow size along arc a ∈ Ac , c ∈ C

yq ∈ {0, 1} — demand q ∈ Q is accepted or not

min∑c∈C

∑a∈Ac

gaxa∑c∈Cq

∑a∈Acq

xa ≤ nmaxq yq ∀q ∈ Q

∑c∈Cq

∑a∈Acq

xa ≥ nminq yq ∀q ∈ Q

∑a∈δ−(v)

xa −∑

a∈δ+(v)

xa = ~nv ∀c ∈ C , v ∈ Vc

xa ∈ Z+ ∀c ∈ C , a ∈ Vc

yq ∈ {0, 1} ∀q ∈ Q

We concentrate on solving its LP-relaxationAlexander Lazarev Scheduling Theory and Applications 177 / 210

Page 267: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Multi-commodity flow formulation

Variablesxa ∈ Z+ — flow size along arc a ∈ Ac , c ∈ C

yq ∈ {0, 1} — demand q ∈ Q is accepted or not

min∑c∈C

∑a∈Ac

gaxa∑c∈Cq

∑a∈Acq

xa ≤ nmaxq yq ∀q ∈ Q

∑c∈Cq

∑a∈Acq

xa ≥ nminq yq ∀q ∈ Q

∑a∈δ−(v)

xa −∑

a∈δ+(v)

xa = ~nv ∀c ∈ C , v ∈ Vc

0 ≤ xa ∀c ∈ C , a ∈ Vc

0 ≤ yq ≤ 1 ∀q ∈ Q

We concentrate on solving its LP-relaxationAlexander Lazarev Scheduling Theory and Applications 177 / 210

Page 268: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Path reformulation

Ps — set of paths (car routes) from source s ∈ S

Variablesλs ∈ Z+ — flow size along path p ∈ Ps , s ∈ S

min∑c∈C

∑s∈Sc

∑p∈Ps

gpathp λp∑

c∈Cq

∑s∈Sc

∑p∈Ps : q∈Qpath

p

λa ≤ nmaxq yq ∀q ∈ Q

∑c∈Cq

∑s∈Sc

∑p∈Ps : q∈Qpath

p

λa ≥ nminq yq ∀q ∈ Q

∑p∈Ps

λp = ~ns ∀c ∈ C , s ∈ Sc

λp ∈ Z+ ∀c ∈ C , s ∈ Sc , p ∈ Ps

yq ∈ {0, 1} ∀q ∈ QAlexander Lazarev Scheduling Theory and Applications 178 / 210

Page 269: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Column generation for path reformulation

Pricing problem decomposes to shortest path problems, one for eachsource

slow: number of sources are thousands

To accelerate, for each commodity c ∈ C , we search for a shortestpath in-tree to the terminal vertex from all sources in Sc

drawback: some demands are severely “overcovered”, badconvergence

We developed iterative procedure which removes covered demands andcars assigned to them, and the repeats search for a shortest pathin-tree

Alexander Lazarev Scheduling Theory and Applications 179 / 210

Page 270: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Column generation for path reformulation

Pricing problem decomposes to shortest path problems, one for eachsource

slow: number of sources are thousandsTo accelerate, for each commodity c ∈ C , we search for a shortestpath in-tree to the terminal vertex from all sources in Sc

drawback: some demands are severely “overcovered”, badconvergence

We developed iterative procedure which removes covered demands andcars assigned to them, and the repeats search for a shortest pathin-tree

Alexander Lazarev Scheduling Theory and Applications 179 / 210

Page 271: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Column generation for path reformulation

Pricing problem decomposes to shortest path problems, one for eachsource

slow: number of sources are thousandsTo accelerate, for each commodity c ∈ C , we search for a shortestpath in-tree to the terminal vertex from all sources in Sc

drawback: some demands are severely “overcovered”, badconvergence

We developed iterative procedure which removes covered demands andcars assigned to them, and the repeats search for a shortest pathin-tree

Alexander Lazarev Scheduling Theory and Applications 179 / 210

Page 272: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Flow enumeration reformulation

Fc — set of fixed flows for commodity c ∈ C

Variablesωf ∈ {0, 1} — commodity c is routed accordity to flow f ∈ Fc or not

min∑c∈C

∑f ∈Fs

gflowf ωf∑

c∈Cq

∑f ∈Fc

∑a∈Acq

faωf ≤ nmaxq yq ∀q ∈ Q

∑c∈Cq

∑f ∈Fc

∑a∈Acq

faωf ≥ nminq yq ∀q ∈ Q

∑f ∈Fc

ωf = 1 ∀c ∈ C

ωp ∈ {0, 1} ∀c ∈ C , f ∈ Fc

yq ∈ {0, 1} ∀q ∈ Q

Alexander Lazarev Scheduling Theory and Applications 180 / 210

Page 273: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Approach CGEF

Pricing problem decomposes to minimum cost flow problems, one foreach commodity

slow: very bad convergence

“Column generation for extended formulations” (CGEF) approach: wedisaggregate the pricing problem solution to arc flow variables, whichare added to the master.The master then becomes the multi-commodity flow formulation withrestricter number of arc flow variables, i.e. “improving” variables aregenerated dynamically

<+-> If an arc flow variable x has a negative reduced cost, there exists anegative reduced cost pricing problem solution in which x > 0.(consequence of the theorem in [S. and Vanderbeck, 13])

Alexander Lazarev Scheduling Theory and Applications 181 / 210

Page 274: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Approach CGEF

Pricing problem decomposes to minimum cost flow problems, one foreach commodity

slow: very bad convergence“Column generation for extended formulations” (CGEF) approach: wedisaggregate the pricing problem solution to arc flow variables, whichare added to the master.

The master then becomes the multi-commodity flow formulation withrestricter number of arc flow variables, i.e. “improving” variables aregenerated dynamically

<+-> If an arc flow variable x has a negative reduced cost, there exists anegative reduced cost pricing problem solution in which x > 0.(consequence of the theorem in [S. and Vanderbeck, 13])

Alexander Lazarev Scheduling Theory and Applications 181 / 210

Page 275: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Approach CGEF

Pricing problem decomposes to minimum cost flow problems, one foreach commodity

slow: very bad convergence“Column generation for extended formulations” (CGEF) approach: wedisaggregate the pricing problem solution to arc flow variables, whichare added to the master.The master then becomes the multi-commodity flow formulation withrestricter number of arc flow variables, i.e. “improving” variables aregenerated dynamically

<+-> If an arc flow variable x has a negative reduced cost, there exists anegative reduced cost pricing problem solution in which x > 0.(consequence of the theorem in [S. and Vanderbeck, 13])

Alexander Lazarev Scheduling Theory and Applications 181 / 210

Page 276: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Tested approaches

Direct: solution of the multi-commodity flow formulation by the ClpLP solver

Problem specific solver source code modificationsProblem specific preprocessing is applied (not public)Tested inside the company

ColGen: solution of the path reformulation by column generation(BaPCod library and Cplex LP solver)

Initialization of the master by “doing nothing” routesStabilization by dual prices smoothingRestricted master clean-up

ColGenEF: “dynamic” solution of multi-commodity flow formulationby the CGEF approach (BaPCod library, Lemon min-cost flow solverand Cplex LP solver)

Initialization of the master by all waiting arcsOnly trivial preprocessing is applied

Alexander Lazarev Scheduling Theory and Applications 182 / 210

Page 277: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Tested approaches

Direct: solution of the multi-commodity flow formulation by the ClpLP solver

Problem specific solver source code modificationsProblem specific preprocessing is applied (not public)Tested inside the company

ColGen: solution of the path reformulation by column generation(BaPCod library and Cplex LP solver)

Initialization of the master by “doing nothing” routesStabilization by dual prices smoothingRestricted master clean-up

ColGenEF: “dynamic” solution of multi-commodity flow formulationby the CGEF approach (BaPCod library, Lemon min-cost flow solverand Cplex LP solver)

Initialization of the master by all waiting arcsOnly trivial preprocessing is applied

Alexander Lazarev Scheduling Theory and Applications 182 / 210

Page 278: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Tested approaches

Direct: solution of the multi-commodity flow formulation by the ClpLP solver

Problem specific solver source code modificationsProblem specific preprocessing is applied (not public)Tested inside the company

ColGen: solution of the path reformulation by column generation(BaPCod library and Cplex LP solver)

Initialization of the master by “doing nothing” routesStabilization by dual prices smoothingRestricted master clean-up

ColGenEF: “dynamic” solution of multi-commodity flow formulationby the CGEF approach (BaPCod library, Lemon min-cost flow solverand Cplex LP solver)

Initialization of the master by all waiting arcsOnly trivial preprocessing is applied

Alexander Lazarev Scheduling Theory and Applications 182 / 210

Page 279: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

First test set of real-life instances

Instance name x3 x3double 5k0711qNumber of stations 371 371 1’900Number of demands 1’684 3’368 7’424Number of car types 17 17 1Number of cars 1’013 1’013 15’008Number of sources 791 791 11’215Time horizon, days 37 74 35Number of vertices, thousands 62 152 22Number of arcs, thousands 794 2’846 1’843Solution time for Direct 20s 1h34m 55sSolution time for ColGen 22s 7m53s 8m59sSolution time for ColGenEF 3m55s >2h 43s

Alexander Lazarev Scheduling Theory and Applications 183 / 210

Page 280: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Real-life instances with larger planning horizon

1’025 stations, up to 6’800 demands, 11 car types, 12’651 cars, and 8’232sources.Up to ≈ 300 thousands nodes and 10 millions arcs.

80 100 120 140 160 1800

20

40

60

80

planning horizon length, days

solutio

ntim

e,minutes

DirectColGen

ColGenEF

Horizon Direct ColGenEF80 5m24s 1m52s90 7m05s 1m47s

100 9m42s 2m19s110 13m38s 3m11s120 17m19s 3m57s130 25m52s 5m03s140 35m08s 5m25s150 44m58s 7m02s160 57m11s 8m19s170 1h13m58s 10m53s180 1h26m46s 12m16s

Convergence of ColGenEF in less than 15 iterations.About 3% of arc flow variables at the last iteration.

Alexander Lazarev Scheduling Theory and Applications 184 / 210

Page 281: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Conclusions

Three approaches tested for a freight car routing problem on real-lifeinstancesApproach ColGen is the best for instances with small number ofsourcesProblem-specific preprocessing is important: good results for Direct

Approach ColGenEF is the best for large instancesCombination of ColGenEF and problem-specific preprocessingwould allow to increase discretization and improve solutions quality

Alexander Lazarev Scheduling Theory and Applications 185 / 210

Page 282: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Perspectives

Some practical considerations are not taken into account:Progressive standing daily ratesSpecial stations for long-time stay (with lower rates)Compatibility between two consecutive types of loaded products.Penalties for refused demandsGroups of cars are transferred faster and for lower unitary costs.

Alexander Lazarev Scheduling Theory and Applications 186 / 210

Page 283: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

RCPSP

Resource Constrained Project Scheduling Problem (RCPSP)Considers resources of limited availability and activities of known durationsand resource requests, linked by precedence relations. The problem consistsof finding a schedule of minimal duration by assigning a start time to eachactivity such that the precedence relations and the resource availabilitiesare respected.

Alexander Lazarev Scheduling Theory and Applications 187 / 210

Page 284: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

RCPSP

Examples of RCPSPPlannig of production and maintenance processes on the enterprise.Software development tasks distribution.Planning of training processes.

Number of publications in last 5 years

Keyword GoogleScholar Science DirectRCPSP 1 560 161project scheduling 73 300 63 694

Alexander Lazarev Scheduling Theory and Applications 188 / 210

Page 285: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Classical RCPSP formulation

Set of renewable resources Rci – capacity of resource Xi ∈ R .

Set of activities N = {A1, . . . ,An}|N| = n;G (N,E ) – precedence relations graph;rj – release time of Aj ∈ N;pj – processing time of Aj ∈ N;aji – amount of resource Xi ∈ R required to process Aj ∈ N.

All variables belong to Z+.

Alexander Lazarev Scheduling Theory and Applications 189 / 210

Page 286: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Classical RCPSP formulation

Schedule πSj (π) – start time of activitiy Aj ∈ N under π;Cj (π) = Sj (π) + pj – completion time of task Aj ∈ N under π.

Feasible schedules Π(N ,R)

Sj (π) ≥ rj holds for any Aj ∈ N, π ∈ Π(N,R) – release times notviolated;Cj (π) ≤ Sk (π) for any ejk ∈ E – precedence relations satisfied;∑j∈N:Sj (π)≤t<Cj (π)

aji ≤ ci for any Xi ∈ R, t ≥ 0 – resource capacity not

violated.

Alexander Lazarev Scheduling Theory and Applications 190 / 210

Page 287: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Classical RCPSP formulation

Problem statementThe RCPSP is the problem of finding a feasible schedule of minimalmakespan subject to precedence constraints and resource constraints, i.e.

minπ∈Π(N,R)

maxAj∈N

Cj (π).

ComplexityProblem is NP-complete in a strong sense (Garey, Johnson 1975).

Alexander Lazarev Scheduling Theory and Applications 191 / 210

Page 288: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Example

Problem data2 resources X1 and X2 with capacities c1 = 7 and c2 = 4;10 activities.

Aj A1 A2 A3 A4 A5 A6 A7 A8 A9 A10

pj 6 1 1 2 3 5 6 3 2 4aj1 2 1 3 2 1 2 3 1 1 1aj2 1 0 1 0 1 1 0 2 2 1

Alexander Lazarev Scheduling Theory and Applications 192 / 210

Page 289: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Example

Precedence relations

Alexander Lazarev Scheduling Theory and Applications 193 / 210

Page 290: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Example

Schedule with minimal makespan

Alexander Lazarev Scheduling Theory and Applications 194 / 210

Page 291: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

RCPSP

Decision variant of RCPSPThe decision variant of the RCPSP is the problem of determining whethera schedule π of makespan not greater than H subject to precedence andresource constraints exists or not.

NP-complete in a strong senseGarey and Johnson (1975) have shown that the decision variant of theRCPSP with a single resource and no precedence constraints, called theresource-constrained scheduling problem, is NP-complete in the strongsense by reduction from the 3-partition problem.

Alexander Lazarev Scheduling Theory and Applications 195 / 210

Page 292: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

RCPSP

Exact solution methods for RCPSPThere is a variety of methods to find the exact solutions. Most of them arebased on the following ideas.

Branch-and-Bound approach;Column Generation;Constraint Programming.

Alexander Lazarev Scheduling Theory and Applications 196 / 210

Page 293: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Makespan lower bound

Correct makespan lower boundLB – amount of time which is not higher than makespan value for anyschedule π ∈ Π(N,R), i.e.

LB ≤ maxAj∈N

Cj (π).

Alexander Lazarev Scheduling Theory and Applications 197 / 210

Page 294: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Existed lower bound estimation methods

Critical pathPmax – length of the longest path in graph G (N,E ).Makespan is not lower than critical path length for any π ∈ Π(N,R).

Pmax = LBP .

Alexander Lazarev Scheduling Theory and Applications 198 / 210

Page 295: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Existed lower bound estimation methods

Resource loadRLi =

∑Aj∈N

pjaji – total amount of reource Xi required for the project.

Then, under any feasible schedule makespan value should be enough to userequred amount of any resource Xi ∈ R subject to its capacity, i.e.

LBR = dmaxi∈R

RLi

cie.

In our exampleRL1

c1=

607

= 847,RL2

c2=

294

= 714,

LBR = d847e = 9.

Alexander Lazarev Scheduling Theory and Applications 199 / 210

Page 296: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Existed lower bound estmiation methods

Destructive lower bound techniquesDeals with decision variant of RCPSP. The objective is to prove that fordefined horizon H there are no feasible schedule with makespan not higherthan H:

desjunctive lower bounds i.e. maximum clique computation;Linear Programming (LP) relaxations;relaxations of decision variant of RCPSP to Cumulative SchedulingProblem (CuSP);other constraint programming based approaches;exact methods of solving decision variant of RCPSP.

Alexander Lazarev Scheduling Theory and Applications 200 / 210

Page 297: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Existed lower bound estmiation methods

Satisfiability tests (SAT)1. Find makespan lower bound LB and upper bound UB using algorithms

with low computational complexity.2. Consider time horizon H such as LB ≤ H ≤ UB and use some of

destructive lower bound techniques to check the existance of feasibleschedule with makespan not lower than H.

3. Use logarithmic search to find the highest horizon H∗ which not allowsthe existance of feasible schedule.

4. Set the lower bound equals to H∗ + 1.

Alexander Lazarev Scheduling Theory and Applications 201 / 210

Page 298: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Existed lower bound estmiation methods

Satisfiability tests (SAT)1. Find makespan lower bound LB and upper bound UB using algorithms

with low computational complexity.2. Consider time horizon H such as LB ≤ H ≤ UB and use some of

destructive lower bound techniques to check the existance of feasibleschedule with makespan not lower than H.

3. Use logarithmic search to find the highest horizon H∗ which not allowsthe existance of feasible schedule.

4. Set the lower bound equals to H∗ + 1.

Alexander Lazarev Scheduling Theory and Applications 201 / 210

Page 299: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Existed lower bound estmiation methods

Satisfiability tests (SAT)1. Find makespan lower bound LB and upper bound UB using algorithms

with low computational complexity.2. Consider time horizon H such as LB ≤ H ≤ UB and use some of

destructive lower bound techniques to check the existance of feasibleschedule with makespan not lower than H.

3. Use logarithmic search to find the highest horizon H∗ which not allowsthe existance of feasible schedule.

4. Set the lower bound equals to H∗ + 1.

Alexander Lazarev Scheduling Theory and Applications 201 / 210

Page 300: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Existed lower bound estmiation methods

Satisfiability tests (SAT)1. Find makespan lower bound LB and upper bound UB using algorithms

with low computational complexity.2. Consider time horizon H such as LB ≤ H ≤ UB and use some of

destructive lower bound techniques to check the existance of feasibleschedule with makespan not lower than H.

3. Use logarithmic search to find the highest horizon H∗ which not allowsthe existance of feasible schedule.

4. Set the lower bound equals to H∗ + 1.

Alexander Lazarev Scheduling Theory and Applications 201 / 210

Page 301: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Existed lower bound estmiation methods

Satisfiability tests (SAT)1. Find makespan lower bound LB and upper bound UB using algorithms

with low computational complexity.2. Consider time horizon H such as LB ≤ H ≤ UB and use some of

destructive lower bound techniques to check the existance of feasibleschedule with makespan not lower than H.

3. Use logarithmic search to find the highest horizon H∗ which not allowsthe existance of feasible schedule.

4. Set the lower bound equals to H∗ + 1.

Alexander Lazarev Scheduling Theory and Applications 201 / 210

Page 302: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Existed lower bound estmiation methods

Satisfiability tests (SAT)1. Find makespan lower bound LB and upper bound UB using algorithms

with low computational complexity.2. Consider time horizon H such as LB ≤ H ≤ UB and use some of

destructive lower bound techniques to check the existance of feasibleschedule with makespan not lower than H.

3. Use logarithmic search to find the highest horizon H∗ which not allowsthe existance of feasible schedule.

4. Set the lower bound equals to H∗ + 1.

Alexander Lazarev Scheduling Theory and Applications 201 / 210

Page 303: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Existed lower bound estmiation methods

Satisfiability tests (SAT)1. Find makespan lower bound LB and upper bound UB using algorithms

with low computational complexity.2. Consider time horizon H such as LB ≤ H ≤ UB and use some of

destructive lower bound techniques to check the existance of feasibleschedule with makespan not lower than H.

3. Use logarithmic search to find the highest horizon H∗ which not allowsthe existance of feasible schedule.

4. Set the lower bound equals to H∗ + 1.

Alexander Lazarev Scheduling Theory and Applications 201 / 210

Page 304: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Existed lower bound estimation methods

Constraint Propagation to tighten the problemThese approaches makes an interval [rj ,Dj ] of possible processing ofactivity Aj ∈ N tighter and improve the performances of algorithms. Themost popular approaches are:

timetabling techniques are based on the computation of anaggregation of the resource demand at every time-point;edge finding and activity intervals techniques rely on the analysis ofthe resource demand over time intervals;conjunctive reasoning with temporal constraints are based on ananalysis of the current temporal constraint network.

Alexander Lazarev Scheduling Theory and Applications 202 / 210

Page 305: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Existed lower bound estmiation methods

Trivial algorithmsAdvantages: low calculation complexity, algorithms can be applied forlarge-scaled problems.Disadvantages: low precision of obtained bound.

Advanced algorithmsAdvantages: high precision of obtained bound.Disadvantages: exponential complexity decrease the efficiency of obtainedbound and make algorithms not possible to be applied for somelarge-scaled problems.

Problem!There is a strong need in the method which can obtain suitable lowerbound for large-scaled instances!

Alexander Lazarev Scheduling Theory and Applications 203 / 210

Page 306: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

RCPSP

Some generalizations of RCPSPRCPSP with time-dependent resource capacities.RCPSP with minimal and maximal time lags (RCPSP/max) –generalized precedence relations express relations of start-to-start,start-to-end, end-to-start, and end-to-end times between pairs ofactivities.Multi-Mode RCPSP (MRCPSP) – activities can be processed inseveral modes each of which charachterized by processing time andrequired amounts of resources.RCPSP with flexible resource profile (FRCPSP) – only total amountsof required resources are given for activies instead, processing timesare not defined.

Alexander Lazarev Scheduling Theory and Applications 204 / 210

Page 307: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

RCPSP

PSPLIB benchmarkThe library of instances of problems RCPSP, RCPSP/max, MRCPSP,MRCPSP/max, FRCPSP and others.Website: http://www.om-db.wi.tum.de/psplib/main.html

Kolisch, R. and A. Sprecher (1996)PSPLIB - A project scheduling library // European Journal of OperationalResearch, Vol. 96, pp. 205–216.

R. Kolisch, C. Schwindt und A.Sprecher (1999)Benchmark instances for project scheduling problems In: Kluwer; Weglarz,J. (Hrsg.): Handbook on recent advances in project scheduling, pp.197-212.

Alexander Lazarev Scheduling Theory and Applications 205 / 210

Page 308: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Our publications

Лазарев А.А., Бронников С.В., Герасимов А.Р., Мусатова Е.Г., Петров А.С., Пономарев К.В.,Харламов М.М., Хуснуллин Н.Ф., Ядренцев Д.А. Математическое моделирование планированияподготовки космонавтов // Управление большими системами, 2016 (принято к печати)

Musatova E., Lazarev A., Ponomarev K., Yadrentsev D., Bronnikov S., Khusnullin N. A Mathematical Modelfor the Astronaut Training Scheduling Problem // IFAC-PapersOnLine, Volume 49, Issue 12, 2016, Pages221-225.

Бронников С.В., Долгий А.Б., Лазарев А.А., Морозов Н.Ю., Петров А.С., Садыков Р.Р., Сологуб А.А.,Вернер Ф., Ядренцев Д.А., Мусатова Е.Г., Хуснуллин Н.Ф. Approaches for planning the ISS cosmonauttraining. Preprint Nr. 12. Magdeburg: Institut fur Mathematische Optimierung, 2015. – 33 с.

С.В.Бронников, А.Р.Герасимов, А.А.Лазарев, Е.Г.Мусатова, А.С.Петров, К.В.Пономарев,М.М.Харламов, Н.Ф.Хуснуллин, Д.А.Ядренцев. К решению задачи автоматизации планированияподготовки космонавтов для работы на МКС / Труды 7-й Международной научной конференции«Теория расписаний и методы декомпозиции. Танаевские чтения» (Беларусь, Минск, 2016). Минск:ОИПИ НАН Беларуси, 2016. C. 23-27.

Alexander Lazarev Scheduling Theory and Applications 206 / 210

Page 309: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Our publications

Бронников С.В., Лазарев А.А., Морозов Н.Ю., Харламов М.М., Ядренцев Д.А. Mathematical modelsand approaches in problem of volume planning of ISS cosmonauts trainings / Abstracts of the 28thConference of the European Chapter on Combinatorial Optimization (Catania, 2015), 2015. С. 61.

Бронников С.В., Лазарев А.А., Петров А.С., Ядренцев Д.А. Models and Approaches for Planning the ISSCosmonaut Training / Труды VI International Conference on Optimization Methods and Applications.(OPTIMA-2015, Petrovac). М.: ФГБУН ВЦ им. А.А.Дородницына РАН, 2015. С. 196-197http://www.cima.uevora.pt/optima2015/Optima2015.pdf.

Лазарев А.А., Петров А.С., Сологуб А.А., Гущина В.П., Морозов Н.Ю. Модели и алгоритмы решениязадач объёмно-календарного планирования подготовки экипажа МКС / Тезисы докладовВсероссийской молодёжной научно-практической конференции «Космодром «Восточный» иперспективы развития российской космонавтики» (Благовещенск, 2015). Благовещенск: СГАУ, 2015.С. 200-201.

Ядренцев Д.А., Бронников С.В., Лазарев А.А., Мусатова Е.Г., Хуснуллин Н.Ф. Календарноепланирование подготовки космонавтов к выполнению космического полета / Материалы 11-йМеждународной научно-практической конференции "Пилотируемые полеты в космос"(Звездныйгородок, 2015). Звездный городок: ФБГУ ЦПК им. Ю.А. Гагарина», 2015. С. 95-96.

Alexander Lazarev Scheduling Theory and Applications 207 / 210

Page 310: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Open problems

1 machine2 jobsrj — release timespj — processing timesdj — due dates. . . and so on — we assume that all parameters of the jobs are knownbeforehand.k known schedules π−k , π−k+1, . . . , π−1 that are optimal accordingto an unknown objective functionThe goal is to construct a new schedule π that would be optimalaccording to the same objective function, or at least wouldapproximate the optimal. Perhaps the discrepancy between obtainedsolution and the optimal schedule would decrease with the number ofknown schedules?

Alexander Lazarev Scheduling Theory and Applications 208 / 210

Page 311: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Scheduling Theory and Applications

Alexander Lazarev

Lomonosov Moscow State University

National Research University Higher School of Economics

Moscow Institute of Physics and Technology (State University)

V.A. Trapeznikov Institute of Control Sciences of Russian Academy of Sciences (ICS RAS)

[email protected]

www.orsot.ru

Alexander Lazarev Scheduling Theory and Applications 209 / 210

Page 312: Scheduling Theory and Applications...2017/04/24  · OutlineI 1 AboutORSOT Laboratory 68 Projects 2 HistoryofSchedulingTheory Ganttchart Schedulingtheoryterm 3 Pioneersofschedulingtheory

Thank you for your attention!

Alexander Lazarev Scheduling Theory and Applications 210 / 210