outline problem definition related works & complexity milp formulation solution algorithms...

24

Upload: adam-nelson

Post on 21-Jan-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26
Page 2: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Outline

Problem Definition

Related Works & Complexity

MILP Formulation

Solution Algorithms

Computational Experiments

Conclusions & Future Research

2/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 3: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Problem definitiona set of identical parallel machines M={M1, ..., Mm}a set of jobs J={J1, ..., Jn} described by:

processing time – pj

release time – rj

deadline – Dj

due date – dj

revenue – qj

weight/cost– wj

goal: selecting and scheduling jobs after release times before deadlines in order to maximize revenue Qj = qj – wj max{0, Cj – dj}

= qj – wj max{0, Tj} for rejected jobs Qj = 0

3/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 4: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

M1

M2

J1

Problem definitionmake-to-order manufacturing

4/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

r1

q1

J2

+q2

+(q3-w3T3)

+(q4-w4T4)

d1 D1r5 D5d5

r4 d4 D4r2 d2 D2r3 d3 D3

ΣQj

=

Page 5: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Related Works & ComplexityWeighted tardiness problems

1||ΣwjTj is unary NP-hard (Lawler 1977; Lenstra, Rinnoy Kan, Brucker 1977)

1||ΣTj is binary NP-hard (Du, Leung 1990)

Scheduling with deadlines and due dates e.g. Hariri, Potts 1994e.g. Kethley, Allidae 2002

Job selection and scheduling problemwith lateness penalty is NP-hard

(Slotnik, Morton 1996; Ghosh 1997)with tardiness penalty is NP-hard

(Slotnik, Morton 2007)with setup times (Bilgintürk, Oğuz, Salman 2007)

Parallel machine problems 5/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 6: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

MILP Formulation

6/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

otherwise,0

M on position th-i on executed is J,1 kjjkix

njxn

i

m

kjki ..11

1

1

1

nimknj

..11..1

..1

nimkxn

jjki ..1;..11

1

)1..(1;..111

)1(

nimkxxn

jjki

n

jijk

nimknjxjki ..1);1..(1;..1}1,0{

nimktki ..1;..10

nimkrxtn

jjjkiki ..1;..1

1

nimkpDxtn

jjjjkiki ..1;..1)(

1

)1..(1;..11

)1(

nimktpxtn

jikjjkiki

nimkdptwqxQn

jjjkijjjkiki ..1;..1}),0max{(

1

niQ im ..10)1(

1

1 1

maxm

k

n

ikiQ

Page 7: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Solution Algorithmssolution algorithm has to decide about:

jobs acceptancejobs assignment to machinesjobs scheduling on machines

branch and bound algorithmlist scheduling heuristic algorithmsimulated annealing metaheuristic algorithm

7/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 8: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

List Scheduling Heuristicassigning to a free machine an available job

whose release time rj is exceeded

which can be completed before deadline Dj

which gives some revenue if completed after due date dj

selected according to priority dispatching rule

jobs which cannot be feasibly processed or which give no revenue are rejected

8/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 9: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Priority Dispatching Rulesstatic (at time zero)

9/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

j

j

p

qmax

j

j

w

qmax

}min{ jp

}max{jq

)}(max{ jjjj dDwq

dynamic (at time t) random

j

jjjj

p

dptwq )},0max{max

)},0max{max{ jjjj dptwq

)}(min{ jjj dptw

Page 10: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Branch and Bound Algorithmassigning a job to m+1 machines

analyzing all possible partitions of jobs to machines

machine Mm+1 collects rejected jobs

sequencing jobs on machinesanalyzing all feasible permutations of subsets of

jobs on machines

upper bound – current revenue increased by the total revenue from non-assigned jobs

initial lower bound – the best heuristic solution of list scheduling algorithm with different rules

10/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 11: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Simulated Annealing Algorithmgenerate initial solution S as the best solution

of list scheduling algorithm with different rules

set initial temperature T0

while termination conditions not met dopick at random neighbor solution S’improve solution S’ with embedded SAif Q(S’)>Q(S) then replace S with S’ else accept

with probability exp(-ΔQ/T)if necessary apply diversification by fluctuating

solution randomly and reheating the systemdecrease temperature geometrically after the

given number of iterations 11/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 12: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Solution representation & Move definitionsolution is represented as an assignment of jobs

to m+1 machines (Mm+1 collects rejected jobs)scheduling jobs on machines by an exact approach

shifting – selecting 2 machines and shifting one job from the first to the second one

interchanging – selecting 2 machines and interchanging 2 jobs between them

probability of selecting dummy machine Mm+1

influences the process of job acceptance/rejection

12/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 13: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Computational Experimentsalgorithms implemented in Java (JDK 1.6 MAC

OS X) under MAC OS X 10.5 (Leopard)randomly generated problem instances of

various sizes and difficultycomputational experiments on Intel Core 2 Duo

2.4GHz, RAM 2GB 667 MHz DDR2

13/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 14: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Test Data large instances:

m=5, 10, 15, 20 n/m=2, 5, 10, 15 (n 300)

small instances: m=2, 3, 4 n/m=3, 4, 5 (n 20)

5 instances for pairs of parameters (m, n/m)

4 variants of each instance (with various difficulty) rj[0, pj], =1, 3 dj[rj+pj, (rj+pj)], Dj[dj, dj], =1.25, 1.5 wj[5, 10]; pj[10, 100], qj[10, 100]

320 large instances, 72 small instances14/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 15: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

List Scheduling Algorithmcomparison of the best rule to optimal

solutions

15/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 16: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

List Scheduling Algorithm

16/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 17: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

List Scheduling Algorithm

17/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 18: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Simulated Annealing Algorithmcomparison to optimal solutions

19/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 19: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Simulated Annealing Algorithmimprovement of initial solutions

23/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 20: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Random Solutionscomparison of random rule to optimal

solutions

24/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 21: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Simulated Annealing Algorithmcomparison to random solutions

25/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 22: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Simulated Annealing Algorithm

26/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 23: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26

Conclusions & Future Researchimproving branch and bound algorithm –

better bounds improving simulated annealing algorithm –

move definitions using problem specific knowledge

improving list scheduling algorithm – looking for efficient priority dispatching rules

order acceptance and scheduling in the real-world problemconcrete delivery problemon-line approach

27/26M.Sterna - „Scheduling Jobs on Parallel Machines to Maximize Revenue”

Page 24: Outline Problem Definition Related Works & Complexity MILP Formulation Solution Algorithms Computational Experiments Conclusions & Future Research 1/26