340 likes | 450 Views
Submodular Optimization Methods for Scheduling with Controllable Processing Times. Natalia Shakhlevich University of Leeds, U.K. Akiyoshi Shioura Tohoku University, Sendai, Japan Vitaly Strusevich University of Greenwich, London, U.K. This Talk.
E N D
Submodular Optimization Methods for Scheduling with Controllable Processing Times Natalia Shakhlevich University of Leeds, U.K. Akiyoshi Shioura Tohoku University, Sendai, Japan Vitaly Strusevich University of Greenwich, London, U.K.
This Talk • Illustrates the use of methods of Submodular Optimization for a bicriteria single machine scheduling problem to minimize the maximum processing cost and the total compression cost • The problem is interpreted as a Make-or-Buy Production Planning Problem
Make-or-Buy Decision Making • If the decision-maker (a production manager) realizes that • the existing production capabilities are insufficient to fulfill all orders internally • or • if the cost of work-in-process of an order is too high, the order can be partly subcontracted
Make-or-Buy Decision Making • Subcontracting incurs additional cost that can be • either compensated by quoting realistic deadlines for all orders • or balanced by a reduction in internal production expenses
Make-or-Buy Decision Making • The make-or-buy decisions should be taken to determine • which part of each order is manufactured internally • and which is subcontracted • Closely related to the popular time-cost trade-off project management problems
Notation and Model N = {1,…, n} set of orders (jobs) to be processed on a single machine (internal manufacturing) ujprocessing time of order j pjactual processing time of order j (internal manufacturing) ljlower bound on processing time of order j (a mandatory part for internal manufacturing)
Notation and Model hjsubcontracting time of order j pj hj uj subcontracted manufatured internally lj uj = pj + hj lj ≤ pj ≤ uj
Notation and Model A schedule can be given by the split-values pj and hj and by a sequence φ according to which the orders are processed by the machine The completion time of order φ(k) sequenced in position k of permutation φ is Cφ(k) = Cφ(k-1) + pφ(k), where for completeness Cφ (0)=0 The whole order φ(k) becomes available to the customer at time Cφ(k) (the subcontractor is able to complete the required work hφ(k)by time Cφ(k))
Notation and Model Producing an order j∈Nincurs the following two costs: • work-in-process cost at the main production facility fj(Cj) • subcontracting cost αjhj, where all αj≥0 Measures cost for completing j∈Nat time Cj Each fj is a non-decreasing piecewise linear function of mjpieces; L – the total number of the linear pieces
Notation and Model Producing an order j∈Nincurs the following two costs: • work-in-process costfj(Cj) • subcontracting cost αjhj Functions to be minimized: • maximum work-in-process cost F = max{fj(Cj)|j∈N} • total subcontracting cost K=∑j∈Nαjhj
Notation and Model Functions to be minimized: • maximum work-in-process cost F = max{fj(Cj)|j∈N} • total subcontracting cost K=∑j∈N αjhj Bicriteria Model: find a set of Pareto optimal points with respect to the functions F and K Single Criterion Model: minimized one of the functions, provided that the other is bounded from above
In This Talk 1|pj=uj-hj|(F, K) Can be reformulated in terms of scheduling with controllable processing times Hoogeveen & Woeginger (2002), O(L2(n4+logL)) We reduce the problem to a polynomial number of parametric LP problems over a submodular polyhedron intersected with a box We show that such an LP problem can be solved in O(n2) time by establishing a link between its region and a base polyhedron with a special rank function
fj(t) f1 t
fj(t) f1 f2 t
fj(t) f3 f1 f2 t
S1consists of all break-points of all piecewise linear functions fj(t) fj(t) f3 f1 f2 t
S1consists of all break-points of all piecewise linear functions fj(t) fj(t) f3 S2consists of intersection points of linear pieces f1 f2 t
S1consists of all break-points of all piecewise linear functions fj(t) fj(t) f3 S2consists of intersection points of linear pieces f1 f2 S3consists of intersection points with t
fj(t) f3 f1 f2 O(L2 ) stripes can be found in O(L2log L) time t
fj(t) f3 f1 f2 y'' Order 1 Order 2 Order 3 y' t
y'' Order 1 Order 2 Order 3 y' Induces deadlines on Cjsuch that fj(Cj)≤ y
y'' Order 1 Order 2 Order 3 y' Problem LP(y); A solution is a piece-wise linear function of y Solving for all stripes gives the efficient frontier
Submodular Systems For a set N={1,2,…,n}, let 2N denote the set of all subsets of N A vector x=(x1, x2,…, xn)∈ X ⊆ℝnis called maximal in Xif there is no vector z=(z1, z2,…, zn)∈Xsuch that x ≤ z (componentwise) For a vector x=(x1, x2,…, xn)⊆ℝndefine x(∅)=0 and x(A)=∑j∈A xj for a non-empty set A∈2N
Submodular Systems A collection D of subsets of Nis called a distributive lattice if for any two sets in Dtheir union and their intersection are both in D, i.e., X∈D and Y∈D implies X∩Y∈D andX∪Y∈D A set-function ψ:D →ℝ is called submodular if the inequality ψ (AB)+ψ (AB) ≤ ψ(A)+ψ(B) holds for all sets A,B D
Submodular Systems For a submodular function ψ defined on a distributive lattice D⊆ 2N such that ∅∈ D, N∈ D and ψ(∅)=0, the pair (D,ψ) is called a submodular system on N, while ψ is called the rank function of that system.
Submodular Systems For a submodular system (D,ψ) define two polyhedra P(ψ) = {x∈ ℝn∣x(A)≤ψ(A), A∈D} and B(ψ) = {x∈ ℝn∣x∈P(ψ), x(N)=ψ(N)} B(ψ)represents the set of all maximal vectors in P(ψ) Submodular Polyhedron Base Polyhedron
Submodular Systems A submodular polyhedron associated with the pair (2N,ψ) is called a polymatroid, provided that the rank function ψis monotone, i.e., ψsatisfies ψ(A)≤ψ(B) for A⊆B Shakhlevich & Strusevich (JoSch, 2005; Algorithmica, 2008) developed a unified approach to scheduling problems with controllable processing times based on reduction to LP problems over (generalized) polymatroids
Polymatroid x2 Submodular Systems: 2D Base Polyhedron x1 ≤ ψ({1}) x2 ≤ ψ({2}) x1 +x2 ≤ ψ({1,2}) x1
LP over Base Polyhedra Base Polyhedron
Problem LP(y) p(Nj)≤ψ(Nj, y), Submodular polyhedron Submodular polyhedron intersected with a box
Submodular Polydron with Box For a submodular system (D,ψ) and a submodular polyhedron P(ψ) = {x∈ ℝn∣x(A)≤ψ(A), A∈D} introduce P(ψ)lu = {x∈ ℝn∣x∈P(ψ),l≤x≤u} We prove Theorem. Maximizing a linear function over P(ψ)lu is equivalent to maximizing a linear function over a base polyhedron B(ψlu)with the rank function ψlu (A)=minDD {ψ(D)+u(A\D)- l (D\A)}
= O(n2) Application to Problem LP(y) Theorem. Problem LP(y) is equivalent to maximizing the same objective function over a base polyhedron B(ψlu)with the rank function ψ'(A,y)=min1≤j≤n{ψ(Nj,y)+u(A\Nj)- l (Nj\A)} Van Hoesel et al. (1994), O(n)
Algorithm To solve Problem 1|pj=uj-hj|(F, K) • Perform the pre-processing, i.e., find the stripes • For the lowest stripe determine the linear piece of each function fj, j = 1,...,n, related to that stripe. For each stripe based on the linear pieces of the functions in the previous stripe find the pieces in the current stripe. • For each stripe solve Problem LP(y). Step 1 of takes O(L² logL) time. Step 2 takes O(n logL) time for the lowest stripe, and O(L²n) all together. In Step 3, for each stripe Problem LP(y) can be solved in O(n²) time.
Conclusion Our algorithm for Problem 1|pj=uj-hj|(F, K) requires O(L² (n2+logL) time, factor n² less than the algorithm by Hogeveen and Woeginger (2002) The link between LP problem over a submodular polyhedron intersected with a box and over a base polyhedron is a useful tool to handle various scheduling problems with controllable processing times