scheduling and optimization course (mpri)scheduling = assignment + ordering additional constraints:...

26
Scheduling and Optimization Course (MPRI) Leo Liberti LIX, ´ Ecole Polytechnique, France MPRI Scheduling and optimization: lecture 1 – p. 1/26

Upload: others

Post on 17-Apr-2021

11 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Scheduling and OptimizationCourse (MPRI)

Leo Liberti

LIX, Ecole Polytechnique, France

MPRI Scheduling and optimization: lecture 1 – p. 1/26

Page 2: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Teachers

Christoph Dürrhttp://www.lix.polytechnique.fr/~durr

Refer to Christoph for any information

Philippe Baptistehttp://www.lix.polytechnique.fr/~baptiste

Leo Libertihttp://www.lix.polytechnique.fr/~liberti

MPRI Scheduling and optimization: lecture 1 – p. 2/26

Page 3: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Scheduling

T1

T2 T4 T5T3

0 3 11 16 20

p

t

>=3

>=5

>=12>=8P1

P2

Schedule n tasks on m machines such that the sum ofcompletion times is minimum

Scheduling = assignment + ordering

Additional constraints: given precedence on tasks,delays under certain circumstances, time windows. . .

Many industrial applications

Similar problems arise in project management

MPRI Scheduling and optimization: lecture 1 – p. 3/26

Page 4: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Network design

1

2

3 4

5

6

7

8

9 10 11

12 13

1

2

2.1

221.7

1.8

5.43

27

6.55

2

2.5

1

1.5

1

1

1.10.7

V1 V3 V4

Break an existing telecom network such that the subnetworkshave as few interconnections as possible

Happens when a huge telecom giant wants to sell off orsublet some subnetworks

Associate a variable to each vertex i and partition h, arcpresence can be modelled by quadratic term xihxjk

MPRI Scheduling and optimization: lecture 1 – p. 4/26

Page 5: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Shortest paths

Find a shortest path between two geographical points

Variants: find shortest paths from one point to allothers, find shortest paths among all pairs, find a set ofk paths such that total length is shortest, . . .

Additional constraints: arc weights as travelling times,real time computation, dynamic arc weights evolve withtraffic

MPRI Scheduling and optimization: lecture 1 – p. 5/26

Page 6: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Important concepts

Optimization: given a point set X and an objective functionf : X → R, find the optimal solution x∗ attaining theminimum (or maximum) value f∗ on X

X is called the feasible region

Any point x ∈ X is a feasible point

Supposing X ⊆ Rn, x = (x1, . . . , xn)

For i ≤ n, xi is a problem variable

Any numerical constant on which f,X depend is aproblem parameter

MPRI Scheduling and optimization: lecture 1 – p. 6/26

Page 7: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Main optimization problem classes

X is usually of the form Rn−k × Zk

k = 0: continuous problem, k = n: integer program;otherwise, mixed-integer problem

If X = {x ∈ Y | ∀ i ≤ m (gi(x) ≤ 0)}, gi : Y → R are theconstraints

f, gi linear & k = 0: Linear Programming (LP)f, gi linear & k > 0: Mixed-Integer Linear Programming(MILP)f, gi nonlinear & k = 0: NonLinear Programming (NLP)f, gi nonlinear & k > 0: Mixed-Integer NonLinearProgramming (MINLP)

MPRI Scheduling and optimization: lecture 1 – p. 7/26

Page 8: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Transportation problemLet xij be the (discrete) number of product units transportedfrom plant i ≤ m to customer j ≤ n with respective unittransportation cost cij from plant i to customer j.

Problem: find x minimizing the total cost, subject to pro-duction limits li at plant i and demand dj at customer j.

minx

m∑

i=1

n∑

j=1

cijxij

∀ i ≤ m

n∑

j=1

xij ≤ li

∀ j ≤ n

m∑

i=1

xij ≥ dj

∀ i, j xij ∈ Z+

i

j

xij

li

dj

MPRI Scheduling and optimization: lecture 1 – p. 8/26

Page 9: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Facility Location problem

Let xi = 1 if a servicing facility will be built on geographicalregion i ≤ m and 0 otherwise. The cost of building a facilityon region i is ci, and aij = 1 if a facility on region i can servetown j ≤ n, and 0 otherwise.Problem: find x ∈ {0, 1}m so that each town is serviced byat least one facility and the total cost is minimum.

minx

m∑

i=1

cixi

∀ j ≤ n

m∑

i=1

aijxi ≥ 1

∀ i ≤ m xi ∈ Z+

i

i′

j

xi = 1

xi′ = 0

aij = 1

MPRI Scheduling and optimization: lecture 1 – p. 9/26

Page 10: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Travelling Salesman problem

A travelling salesman must visit n cities; each city must bevisited exactly once.

Problem: find the visit order sothat the total distance is mini-mized.

MPRI Scheduling and optimization: lecture 1 – p. 10/26

Page 11: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

TSP Formulation ILet cij be the distance from city i to city j, and xij = 1 if thetravelling salesman goes from city i to city j and 0otherwise.

minx

i6=j≤n

cijxij

∀ i ≤ n∑

j≤n

xij = 1

∀ j ≤ n∑

i≤n

xij = 1

∀ S ( {1, . . . , n}∑

i6=j∈S

xij ≤ |S| − 1

∀i 6= j ≤ n xij ∈ {0, 1}

i

i′

j0

01

S

Exponentially many constraints!

MPRI Scheduling and optimization: lecture 1 – p. 11/26

Page 12: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

TSP Formulation II

min∑

i6=j≤n

cijxij

∀ i ≤ n∑

j≤n

xij = 1

∀ j ≤ n∑

i≤n

xij = 1

∀ i 6= j ≤ n, i, j 6= 1 ui − uj + 1 ≤ (n− 1)(1− xij)

∀ i 6= j ≤ n xij ∈ {0, 1}

∀ i > 2 ui ∈ {2, . . . , n}

u1 = 1.

Only polynomially many constraints

Is this a valid formulation? Does it describe Hamiltoniancycles?

MPRI Scheduling and optimization: lecture 1 – p. 12/26

Page 13: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Testing TSP2

1

2

3

4

x14 = x43 = x32 = x21 = 1, all other xij = 0

set, for example: u1 = 1, u2 = 4, u3 = 3, u4 = 2

for (i, j) ∈ {(4, 3), (3, 2)}, constraints reduce toui − uj ≤ −1:

u4 − u3 = 2− 3 = −1, u3 − u2 = 3− 4 = −1 OK

for all other i, j constraints also valid

MPRI Scheduling and optimization: lecture 1 – p. 13/26

Page 14: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Formulations and reformulations

Defn. A formulation is a pair (f,X)

Defn. A formulation (h, Y ) is a reformulation of (f,X) if there isa function φ : Y → X such that for each optimum y∗ of (h, Y )there is a corresponding optimum x∗ = φ(y∗) of (f,X) andh∗ = f∗.

Thm. TSP2 reformulates TSP1.

MPRI Scheduling and optimization: lecture 1 – p. 14/26

Page 15: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Reformulation proofProof. By contradiction, suppose ∃ a point (x, u) feasible inTSP2 s.t. x represents two disjoint cycles. Let C = (V,A) bethe cycle not containing vertex 1, and let q = |A| > 0. If allconstraints are satisfied, then arbitrary sums of constraintsmust also be satisfied. Summing constraints

uj ≥ ui + 1− (n− 1)(1− xij)

over A, since xij = 1 for all (i, j) ∈ A, we obtain∑

j∈V

uj ≥∑

i∈V

ui + q,

whence q ≤ 0, contradicting q > 0. Therefore every feasiblepoint in TSP2 represents a cycle of length n in the graph.Since f ≡ h, the function φ sending each point (x, u) inTSP2 to the corresponding point x in TSP1 is areformulation.

MPRI Scheduling and optimization: lecture 1 – p. 15/26

Page 16: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Exercise 1

Prove that TSP1 reformulates TSP2

(Hint: show that given an optimum x∗ for TSP1, there existsu∗ such that (x∗, u∗) is feasible in TSP2. Why is thissufficient to show that TSP1 reformulates TSP2?)

MPRI Scheduling and optimization: lecture 1 – p. 16/26

Page 17: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Solution algorithms

Exact (provide a guarantee of optimality or ε-optimalityfor given ε > 0 (in nonlinear continuous problems)Simplex Algorithm, Branch and Bound

Approximation algorithms (provide a guarantee on thesolution quality)Christofides’ TSP Approximation Algorithm

Heuristic algorithms (do not provide any guarantee, butcommon sense suggests solution would be good)Variable Neighbourhood Search

MPRI Scheduling and optimization: lecture 1 – p. 17/26

Page 18: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Approximation algorithms

Let f be the objective function value at the solution x

provided by the appr. alg.

Alg. is a k-approximation algorithm for a minimizationproblem if f ≤ kf∗

How could we ever prove this without knowing f∗???

Notation: given an undirected graph G = (V,E) let δ(v)be the set of edges in E adjacent to v ∈ V

MPRI Scheduling and optimization: lecture 1 – p. 18/26

Page 19: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Christofides’ TSP Alg. I32-approximation algorithm for the metric TSP(i.e. distances obey a triangular inequality)

Consider a complete graph G = (V,E) weighted byc : E → R, aim to find a “reasonably short” Hamiltoniancycle in G

12

3

4

56

7

8

MPRI Scheduling and optimization: lecture 1 – p. 19/26

Page 20: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Christofides’ TSP Alg. II

(1) Let T = (V, F ) be a spanning tree of G (connectedsubgraph covering V ) of minimum cost

12

3

4

56

7

8

12

3

4

56

8

7

V

(2) Let V = {v ∈ V | |δ(v) ∩ F | mod 2 = 1}

MPRI Scheduling and optimization: lecture 1 – p. 20/26

Page 21: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Christofides’ TSP Alg. III(3) Let M = (V , H) be a matching of (V , E(V )) of minimumcost

12

3

4

56

7

8

F

H

(4) Let L = F ∪H, and K = T ∪M = (V, L). This is aEulerian cycle (i.e. passing through each edge exactlyonce) because by definition |δ(v) ∩ L| mod 2 = 0

MPRI Scheduling and optimization: lecture 1 – p. 21/26

Page 22: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Christofides’ TSP Alg. IV

(5) For each v s.t. β(v) = |δ(v) ∩ L| > 2, pick β(v)2 − 1 distinct

pairs of distinct vertices u,w adjacent to v and setL← L r {{u, v}, {v, w}} ∪ {u,w}

12

3

4

56

7

8

β(v) > 2

12

3

4

56

7

8

MPRI Scheduling and optimization: lecture 1 – p. 22/26

Page 23: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Christofides’ TSP Alg. V

The Hamiltonian cycle found with Christofides’approximation algorithm (left) and the optimal one (right)

12

3

4

56

7

8

12

3

4

56

7

8

MPRI Scheduling and optimization: lecture 1 – p. 23/26

Page 24: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Christofides’ TSP Alg.VILemma. L is a Hamiltonian cycle in G (Exercise 2)

Thm. Let f be the cost of L and f∗ be the cost of anoptimal Hamiltonian cycle. Then f ≤ 3

2f∗

Proof. For a set of edges S ⊆ E, let f(S) =∑

{i,j}∈S cij.Every Hamiltonian cycle (including the optimal one) can beseen as a spanning tree union an edge. Since T is ofminimum cost, f(F ) ≤ f∗. On the other hand, eachHamiltonian cycle is also a 2-matching (each vertex isadjacent to precisely two other vertices), and M is ofminimum cost, 2f(H) ≤ f∗. Thereforef(F ∪H) = f(F ) + f(H) ≤ f∗ + 1

2f∗. By the triangularinequality, f(L) ≤ f(F ∪H) (why? — exercise 3). �

MPRI Scheduling and optimization: lecture 1 – p. 24/26

Page 25: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Christofides’ TSP Alg.

Minimum cost spanning tree: polynomial algorithm

Minimum cost matching: polynomial algorithm

Rest of algorithm: polynomial number of steps

⇒ Polynomial approximation algorithm

MPRI Scheduling and optimization: lecture 1 – p. 25/26

Page 26: Scheduling and Optimization Course (MPRI)Scheduling = assignment + ordering Additional constraints: given precedence on tasks, delays under certain circumstances, time windows... Many

Exercise 4

Find a 2-approximation algorithm for the TSP

(Hint. Consider the algorithm: (i) let T be a min spanningtree of G (ii) duplicate each edge of T to obtain T ′ (iii)perform step (5) of Christofides’ algorithm on T ′ to obtain L.Show that L is a Hamiltonian cycle in G of cost ≤ 2f∗)

MPRI Scheduling and optimization: lecture 1 – p. 26/26