A study of the worst case ratio of a simple algorithm for simple assembly line balancing problem
description
Transcript of A study of the worst case ratio of a simple algorithm for simple assembly line balancing problem
A study on a simple heuristic for Simple Assembly LineBalancing problem
Monard VONG
Optimization Lab.Seoul National University
December 15th 2009
M. Vong (SNU) SALBP December 15th 2009 1 / 24
Outline
1 Introduction to Assembly Line Problems
2 Solving SALBP
3 Worst case performance ratio and computational experiment
M. Vong (SNU) SALBP December 15th 2009 2 / 24
Concept of Assembly Line (AL)
Figure: Assembly Line Concept
The amount of time aworkpiece can be processed bya station, before the conveyorbelt moves the workpiece tothe next station is called thecycle time.
Figure: Tasks and precedenceconstraints
In assembly line balancingproblem, the process (tasksand constraints) is known
The goal is to find a feasibleassignment of tasks tostations.
M. Vong (SNU) SALBP December 15th 2009 3 / 24
Simple Assembly Line Balancing Problem
Now we consider the simplest case of an AL problem: Simple Assembly LineBalancing Problem
The objective is to maximize the efficiency of the line.
Characteristics
1 paced serial line;
2 deterministic (and integral) task time tj ;
3 assignment restrictions: precedence constraints ;
From now on, we focus on SALBP-1:
cycle time c is fixedminimize the number of stations required
This problem is NP-hard.
M. Vong (SNU) SALBP December 15th 2009 4 / 24
SALBP-1 as an optimization problem
Input
Set of task V = {1, . . . , n} with task time tj ∈ N, ∀j ∈ V
Precedence digraph G = (V ,A) (partial ordering of tasks)
Cycle time c
Goal
Find number of station m to maximize the line efficiency. max tsumm·c
with total task time tsum =∑n
j=1 tj
Output
S1, . . . ,Sm, m subset of tasks such as ∪k∈1,...,mSk = V and Sk isfeasible for all station.
M. Vong (SNU) SALBP December 15th 2009 5 / 24
Notations
n Number of tasks;V Set of task V = 1, . . . , nm Number of stations; index k = 1, . . . ,mm∗ Optimal number of stationm,m Lower, upper bound on m∗
tj Task time of task j = 1, . . . , n
Pj Set of direct predecessors of task jP∗j Set of all predecessors of task j
F ∗j Set of all followers of task j
Sk Set of task assigned to station k : Station loadt(Sk) t(Sk) =
∑j∈Sk
tj , k = 1, . . . ,m
M. Vong (SNU) SALBP December 15th 2009 6 / 24
State of the Art
Lot of research done on SALBP since 50 years.
Many heuristics and optimal procedures have been designed.
Most research is focused on solving the problem with additionalconstraints.
But there is few research on worst case ratio of heuristic algorithms.
Queyranne(1985): no polynomial time algorithm achieves an absoluteworst case performance ratio less than 3
2
M. Vong (SNU) SALBP December 15th 2009 7 / 24
Outline
1 Introduction to Assembly Line Problems
2 Solving SALBP
3 Worst case performance ratio and computational experiment
M. Vong (SNU) SALBP December 15th 2009 8 / 24
Construction schemes for heuristic algorithm
Most existing algorithm enumerates solutions by constructing themsuccessively assigning tasks or subset of tasks to stations.
Definition
Availability A task j is available if all predecessor h ∈ P∗j have beenassigned.
Assignability An available task j is assignable to a station k if the currentidle time of k is sufficient.
Maximal Station Load A station load Sk is maximal if no available task isassignable to k.
M. Vong (SNU) SALBP December 15th 2009 9 / 24
Task-Oriented Greedy Heuristic for SALBP-1 Problem
Adaptation of Next-Fit algorithm
1: topologically sort the tasks2: k = 13: for i = 1→ n do4: if t(Sk) + ti ≤ c then5: Sk ← i6: else7: k ← k + 18: end if9: end for
M. Vong (SNU) SALBP December 15th 2009 10 / 24
For instance c = 10
Figure: Precedence Graph
Figure: Solution Obtained by Next-Fit
M. Vong (SNU) SALBP December 15th 2009 11 / 24
Adaptation of First Fit algorithm
1: topologically sort the tasks2: m← 13: for i = 1→ n do4: if ∃k ∈ {1, . . . ,m} such that
tSk+ tj ≤ c and the precedence constraints are respected then
5: Sk ← Sk + {i}6: else7: m← m + 18: end if9: end for
M. Vong (SNU) SALBP December 15th 2009 12 / 24
For instance c = 10
Figure: Precedence Graph
Figure: Solution Obtained by adaptation of First-Fit
M. Vong (SNU) SALBP December 15th 2009 13 / 24
c = 10
Figure: An optimal Solution with 6 stations
M. Vong (SNU) SALBP December 15th 2009 14 / 24
Outline
1 Introduction to Assembly Line Problems
2 Solving SALBP
3 Worst case performance ratio and computational experiment
M. Vong (SNU) SALBP December 15th 2009 15 / 24
Worst case performance ratio
Notations
I is an instance of our optimization problem.z∗(I ) is the optimal value solution.zH(I ) is the value of the solution obtained by heuristic H
The worst case ratio of H is defined as the smallest constant ρH suchthat zH(I ) ≤ ρHz∗(I ) for each instance of I ∈ I
The asymptotic worst case ratio of H is defined as the smallestconstant ρH for which there exist another constant δ such thatzH(I ) ≤ ρHz∗(I ) + δ for each instance of I ∈ I.
M. Vong (SNU) SALBP December 15th 2009 16 / 24
Upper Bound on the worst case ratio
Proposition
An upper bound of the worst case ratio of any heuristics which build maximalstation load is 2.
Proof.For any heuristic H which build maximal station load, for any station k built bythis heuristic: t(Sk) + t(Sk+1) > c∑mH
k=1 t(Sk) > mH ·c2 . However, m∗ ≥
∑mH
k=1 t(Sk )c =
∑nj=1 tjc , then we obtain
mH < 2 ·m∗.
Corollary
The worst case ratio of Next Fit is 2, and it is tight.
M. Vong (SNU) SALBP December 15th 2009 17 / 24
A 2 worst case instance for SALBP
We will provide an instance for which, even the adaptation of First Fitalgorithm to SALBP cannot beat the 2 worst case factor.
Let consider 0 < δ ≤ 16
Ck :
2k tasks of task time 3δ,2k tasks of task time 1
2C − 2δ,2 ∗ (2k − 1) tasks of task time δ
Figure: 2 Worst case instance
M. Vong (SNU) SALBP December 15th 2009 18 / 24
Figure: Optimal Solution
Figure: Solution given by the algorithm
limk→∞
A(I )
OPT (I )= lim
k→∞
2k
k + 1= 2
M. Vong (SNU) SALBP December 15th 2009 19 / 24
Ranked Positional Weight
Using a topological sorting is not enough, the quality of the sorting may beimproved.
Ranking Positional Weight (RPW) of task i is the sum of the task time tiand the task time of all followers of i . RPWi = ti +
∑j∈F∗i
tj
Tasks are sorted by non-increasing RPW.
Example
RPW1 = 38 RPW6 = 18
RPW2 = 23 RPW7 = 17
RPW3 = 32 RPW8 = 13
RPW4 = 27 RPW9 = 11
RPW5 = 22 RPW10 = 2
Sorting by non increasing RPW, the following order is considered.1, 3, 4, 2, 5, 6, 7, 8, 9, 10
M. Vong (SNU) SALBP December 15th 2009 20 / 24
Using RPW as topological sorting, the optimal solution is obtained for theprevious worst case instance with the same first fit algorithm.
Ranked Positional Weight algorithm
1: Sort the tasks by non-increasing ranked positional weight2: Use First Fit rule
What about the worst case of the improved algorithm then?
M. Vong (SNU) SALBP December 15th 2009 21 / 24
If we used Next fit algorithm, instead of First Fit, it is still possible to findinstances for which the (asymptotic) worst case ratio is 2.
Consider n integer and δ > 0 such that 2nδ < 1.
The instance is made of:
n tasks of task time 12C + δ
n tasks of task time 12C − δ
2n tasks of task time δ
The optimal packing packs all tasks of task time 12C + δ and 1
2C − δ in nstations, and all tasks δ in 1 station. Thus giving n + 1 stations.
After the RPW sorting, the Next Fit algorithm packs into one station tasks12C + δ and δ and in another station 1
2C − δ and δ. Thus giving 2n stations.M. Vong (SNU) SALBP December 15th 2009 22 / 24
Worst case ratio found in the instances
Name n c m∗ mFF mRPW CPU FF CPU RPW CPU B
Arcus 2 111 5755 27 29 27 < 1ms < 1ms 0.016sBarthold2 148 85 50 55 53 0.016s 0.031s 3600sHeskiaoff 28 256 4 5 4 < 1ms < 1ms < 1msLutz2 89 14 37 43 40 < 1ms < 1ms 3.094sScholl 297 1699 42 43 42 0.015s 0.078s 2603sWarnecke 58 56 29 34 33 0.016s 0.015s 0.906s
The previously devised algorithms were implemented using C programminglanguage and tested on 20 instances provided by the literature.
The optimal solution was obtained using an efficient Branch and Bound Algorithm(SALOME devised by Scholl).
The RPW sorting as a preprocessing is found to ameliorate the objective value ofthe solution.
M. Vong (SNU) SALBP December 15th 2009 23 / 24
Conclusion
A simple case of Assembly Line Balancing Problem was studied.
A simple heuristic was proposed and implemented using Cprogramming language.
Computational results were compared to optimal one obtained by thecurrent best Branch and Bound algorithm.
Worst case analysis of our simple heuristic was studied.
We found out that the factor 2 is a tight worst case ratio even for theadaptation of First Fit algorithm.
M. Vong (SNU) SALBP December 15th 2009 24 / 24