Post on 31-Jan-2021
Combinatorial Algorithms for Minimizing the WeightedSum of Completion Times on a Single Machine
James Davis 1 Rajiv Gandhi2 Vijay Khothari
1Department of Operations ResearchCornell University
jamesmariodavis@gmail.com
2Department of Computer ScienceRutgers University - Camden
rajivg@camden.rutgers.edu
November 8, 2010
James Davis (Cornell University) Machine Scheduling 1 / 22
Single Machine Scheduling (Off-line Problem)
Input:J, set of jobspj , processing timesrj ≥ 0, release dateswj , weights
Goal:Schedule jobs on a single machineNon-preemptive scheduleNo job can be scheduled before it’s release dateMinimize
∑j wjCj , weighted sum of completion times
James Davis (Cornell University) Machine Scheduling 2 / 22
Single Machine Scheduling (Off-line Problem)
James Davis (Cornell University) Machine Scheduling 3 / 22
Single Machine Scheduling (Off-line Problem)
Cost = 1 · 1+ 6 · 8+ 9 · 4+ 13 · 3
James Davis (Cornell University) Machine Scheduling 4 / 22
Single Machine Scheduling (Online Problem)
Input:Jobs, Jpj , rj , wj ∀j ∈ J
Goal:Schedule jobs on a single machineNon-preemptive scheduleMinimize
∑j wjCj , weighted sum of completion times
Aware of job j at time rjSchedule fixed at time t without knowledge of jobs s.t. rj > t
James Davis (Cornell University) Machine Scheduling 5 / 22
LP Formulation
Notation (S ⊆ J):Sum of processing times
p(S) =∑j∈S
pj
Sum of squared processing times,
p2(S) =∑j∈S
p2j
James Davis (Cornell University) Machine Scheduling 6 / 22
Simple LP Formulation
Cj denotes the completion time of job j
min∑j∈J
wjCj
subject to Cj ≥ rj + pj, ∀j ∈ J∑j∈S
pjCj ≥p(S)2 + p2(S)
2, ∀S ⊆ J
Cj ≥ 0, ∀j ∈ J
James Davis (Cornell University) Machine Scheduling 7 / 22
Previous Work
Single Machine Scheduling:NP-Hard (Lenstra et al.)Off-line PTAS known (Afrati et al.)Off-line 1.6853-Appx. Alg. via LP rounding (Goemans et al.)Online 1.6853-Appx. Alg. via LP rounding (Goemans et al.)
Using Simple LP (provide upper bound on int. gap):Off-line 3-Appx. Alg. via LP rounding (Hall et al.)
James Davis (Cornell University) Machine Scheduling 8 / 22
Our Contribution
Use Simple LP (provide upper bound on int. gap):Off-line (1+
√2)(≈ 2.42)-Approximation Algorithm
Online 3-Approximation Algorithm
James Davis (Cornell University) Machine Scheduling 9 / 22
Main Criteria
Recall Notation:p(S) =
∑j∈S pj
New Notation:j∗ ∈ J has highest release date (rj value)j′ ∈ J has lowest wjpj value
Main Criteriarj∗ > p(J)
James Davis (Cornell University) Machine Scheduling 10 / 22
List Algorithm
Off-line List AlgorithmJ ′ ← Jwhile J ′ 6= ∅ do
j∗ ← job with largest rj valueif rj∗ > p(J ′) thenRemove j∗ from J ′
else if rj∗ ≤ p(J ′) thenj′ ← j ∈ J ′ with lowest wjpj valueRemove j′ from J ′
end ifend whileSchedule jobs in the reverse order that they were removed from J ′
James Davis (Cornell University) Machine Scheduling 11 / 22
Intuitive Analysis
If rj∗ > p(J ′) then Cj∗ is approximately dominated by rj∗
rj∗ = 11 > 10 = p(J ′)
James Davis (Cornell University) Machine Scheduling 12 / 22
Intuitive Analysis
If rj∗ > p(J ′) then Cj∗ is approximately dominated by rj∗
rj∗ = 11 > 10 = p(J ′)
James Davis (Cornell University) Machine Scheduling 13 / 22
Intuitive Analysis
If rj∗ ≤ p(J ′) then Cj∗ is approximately dominated by p(J ′)
rj∗ = 2 ≤ 8 = p(J ′)
James Davis (Cornell University) Machine Scheduling 14 / 22
Intuitive Analysis
Smith’s RuleSchedule the most useless job last (lowest wjpj )
j′ is job 1 (w1p1 = 1)
James Davis (Cornell University) Machine Scheduling 15 / 22
Intuitive Analysis
Final Schedule
James Davis (Cornell University) Machine Scheduling 16 / 22
Simple LP Formulation
Cj denotes the completion time of job j
min∑j∈J
wjCj
subject to Cj ≥ rj + pj, ∀j ∈ J∑j∈S
pjCj ≥p(S)2 + p2(S)
2, ∀S ⊆ J
Cj ≥ 0, ∀j ∈ J
James Davis (Cornell University) Machine Scheduling 17 / 22
Simple Dual
Introduce βS ∀S ⊆ J and αj ∀j ∈ J
max∑j∈J
αj(rj + pj)+∑S⊆J
βS
(p(S)2 + p2(S)2
)subject to αj + pj
∑S:j∈S
βS ≤ wj, ∀j ∈ J
αj ≥ 0, ∀j ∈ JβS ≥ 0, ∀S ⊆ J
James Davis (Cornell University) Machine Scheduling 18 / 22
Primal-Dual AlgorithmSimplified Setting:
Single Iteration (job set J)Increase αj∗ or βJ
rj∗ > p(J ′)Increase αj∗αj∗ = wj∗
rj∗ ≤ p(J ′)Increase βJβJ =
wj′pj′
Dual Constraintαj + pj
∑S:j∈S βS ≤ wj
James Davis (Cornell University) Machine Scheduling 19 / 22
Primal-Dual Algorithm
Off-line Primal-Dual AlgorithmJ ′ ← Jwhile J ′ 6= ∅ do
j∗ ← job with largest rj valueif rj∗ > p(J ′) thenαj∗ ← wj∗ − pj∗
∑S:j∗∈S
βS
Remove j∗ from J ′else if rj∗ ≤ p(J ′) then
j′ ← j ∈ J ′ with lowest wjpj valueβJ′ ←
wj′pj′−∑
S:j∈S βS
Remove j′ from J ′end if
end whileSchedule jobs in the reverse order that they were removed from J ′
James Davis (Cornell University) Machine Scheduling 20 / 22
Primal-Dual Algorithm
TheoremUsing the off-line primal dual algorithm:
Cost of Schedule ≤ (1+√2) · Dual Feasible Solution ≤ (1+
√2) · OPT
James Davis (Cornell University) Machine Scheduling 21 / 22
Thank You!
James Davis (Cornell University) Machine Scheduling 22 / 22