Você está na página 1de 240

Edition KWV

Lisbeth Buschkühl

Multi-Level
Capacitated Lotsizing
with Setup Carryover
Edition KWV
Die „Edition KWV“ beinhaltet hochwertige Werke aus dem Bereich der Wirtschaftswissen-
schaften. Alle Werke in der Reihe erschienen ursprünglich im Kölner Wissenschaftsverlag,
dessen Programm Springer Gabler 2018 übernommen hat.

Weitere Bände in der Reihe http://www.springer.com/series/16033


Lisbeth Buschkühl

Multi-Level
Capacitated Lotsizing
with Setup Carryover
Lisbeth Buschkühl
Wiesbaden, Germany

Bis 2018 erschien der Titel im Kölner Wissenschaftsverlag, Köln


Dissertation Universität zu Köln, 2008

Edition KWV
ISBN 978-3-658-24033-2 ISBN 978-3-658-24034-9 (eBook)
https://doi.org/10.1007/978-3-658-24034-9

Library of Congress Control Number: 2019933393

Springer Gabler
© Springer Fachmedien Wiesbaden GmbH, part of Springer Nature 2008, Reprint 2019
Originally published by Kölner Wissenschaftsverlag, Köln, 2008
This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the
material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation,
broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage
and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or
hereafter developed.
The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication does
not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective
laws and regulations and therefore free for general use.
The publisher, the authors, and the editors are safe to assume that the advice and information in this book are
believed to be true and accurate at the date of publication. Neither the publisher nor the authors or the editors
give a warranty, express or implied, with respect to the material contained herein or for any errors or omissions
that may have been made. The publisher remains neutral with regard to jurisdictional claims in published maps
and institutional affiliations.

This Springer Gabler imprint is published by the registered company Springer Fachmedien Wiesbaden GmbH
part of Springer Nature
The registered company address is: Abraham-Lincoln-Str. 46, 65189 Wiesbaden, Germany
Preface

This book was written during my employment at the department of Supply


Chain Management and Production at the University of Cologne. It was ac-
cepted as a dissertation in July 2008. I would like to seize this opportunity
to thank the numerous supporters, whose backing has rendered this work pos-
sible. First of all, I am deeply indepted to my advisor Prof. Dr. Horst
Tempelmeier for his ongoing guidance and support. His profound knowledge
and high standards made working at his department a challenging and enrich-
ing experience. Also, I would like to thank Prof. Dr. Ulrich W. Thonemann
for serving as a co-referee of this dissertation.
Not less important was the support of my colleagues, Lars Fischer, Sascha
Herpers and Dr. Michael Manitz. Although I was the only member of our team
living in the ‘deterministic world’, I could always count on their help, whenever
I needed it. This also holds true for our team assistant Manuela Pioch, whose
employment at our department has proven to be a great enrichment. My
special regards go to Christian Steffens and Florian Sahling for proofreading
the manuscript. Also, they are my living proof that it is not insane to think
the world deterministic. I would also like to thank my colleague Dr. Johannes
Antweiler for making me do the dissertation in the first place. His never ending
drive to get the best out of everything for the members of our department has
been essential to creating a most comfortable atmosphere for the rest of us.
Above all, I’d like to thank my parents for seeing me through my education
and for their love, their understanding and their support, which I could always
rely on. Finally, Robert, Bernd, Angela and Stephie, together the rest of my
family and of my friends, especially for their backing over the past months.

Cologne, July 2008 Lisbeth Buschkühl

V
Contents

Preface V

List of Figures XIII

List of Tables XIV

List of Algorithms XIX

List of Symbols XX

List of Abbreviations XXIV

A Introduction and Outline 1

B Literature Review 7
B.1 Model Formulations . . . . . . . . . . . . . . . . . . . . . . . 8
B.1.1 The Single-Level Capacitated Lotsizing Problem . . . . 8
B.1.2 The Multi-Level Capacitated Lotsizing Problem . . . . 11
B.1.3 The Single-Level Capacitated Lotsizing Problem with
Linked Lotsizes . . . . . . . . . . . . . . . . . . . . . . 12
B.2 Complexity Considerations . . . . . . . . . . . . . . . . . . . 19

VII
VIII Multi-Level Capacitated Lotsizing with Setup Carryover

B.3 Solution Approaches . . . . . . . . . . . . . . . . . . . . . . . 21


B.3.1 Mathematical Programming based Approaches . . . . . 23
B.3.1.1 Branch&Bound Heuristics . . . . . . . . . . . . . . 23
B.3.1.1.1 Reformulation . . . . . . . . . . . . . . . . . 24
B.3.1.1.2 Valid Inequalities . . . . . . . . . . . . . . . . 28
B.3.1.2 Fix&Relax Heuristics . . . . . . . . . . . . . . . . 29
B.3.1.3 Rounding Heuristics . . . . . . . . . . . . . . . . . 30
B.3.1.4 Linear Programming based Approaches . . . . . . 31
B.3.1.5 Dantzig-Wolfe Decomposition and Column Gener-
ation . . . . . . . . . . . . . . . . . . . . . . . . . . 32
B.3.2 Lagrangean Heuristics . . . . . . . . . . . . . . . . . . . 33
B.3.3 Decomposition and Aggregation Approaches . . . . . . . 40
B.3.4 Metaheuristics . . . . . . . . . . . . . . . . . . . . . . . 44
B.3.4.1 Local Search . . . . . . . . . . . . . . . . . . . . . 46
B.3.4.2 Simulated Annealing . . . . . . . . . . . . . . . . . 46
B.3.4.3 Tabu Search . . . . . . . . . . . . . . . . . . . . . 47
B.3.4.4 Variable Neighborhood Search . . . . . . . . . . . 48
B.3.4.5 Genetic Algorithms . . . . . . . . . . . . . . . . . 48
B.3.4.6 Ant Colony Optimization . . . . . . . . . . . . . . 49
B.3.5 Greedy Heuristics . . . . . . . . . . . . . . . . . . . . . 50

C Test Instances 55
C.1 Problem Sizes . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
C.2 Product and Process Structures . . . . . . . . . . . . . . . . 56
C.3 Demand Profiles . . . . . . . . . . . . . . . . . . . . . . . . . 59
C.4 Setup Time Profiles . . . . . . . . . . . . . . . . . . . . . . . 60
C.5 Setup and Holding Cost Ratios . . . . . . . . . . . . . . . . . 61
C.6 Capacity Utilization Profiles . . . . . . . . . . . . . . . . . . . 62
Contents IX

C.7 Number of Parallel Machines . . . . . . . . . . . . . . . . . . 64

D Model Formulations 65
D.1 The Multi-level Dynamic Capacitated Lotsizing Problem with
Linked Lotsizes . . . . . . . . . . . . . . . . . . . . . . . . . 66
D.1.1 Inventory & Lotsize Formulation . . . . . . . . . . . . . 68
D.1.2 Echelon Formulation . . . . . . . . . . . . . . . . . . . . 70
D.1.3 Shortest Route Formulation . . . . . . . . . . . . . . . . 75
D.1.4 Simple Plant Location Formulation . . . . . . . . . . . . 77
D.1.5 Computational Results . . . . . . . . . . . . . . . . . . 79
D.2 Consecutive Setup Carryovers . . . . . . . . . . . . . . . . . 82
D.2.1 Standard formulation . . . . . . . . . . . . . . . . . . . 82
D.2.2 Extended formulation . . . . . . . . . . . . . . . . . . . 83
D.2.3 Computational Results . . . . . . . . . . . . . . . . . . . 84
D.3 Parallel Machines . . . . . . . . . . . . . . . . . . . . . . . . 86
D.3.1 Model Formulation . . . . . . . . . . . . . . . . . . . . . 86
D.3.2 Computational Results . . . . . . . . . . . . . . . . . . . 88

E Solution Procedure based on Lagrangean Relaxation 91


E.1 Outline of the Procedure . . . . . . . . . . . . . . . . . . . . . 93
E.2 Computation of the Lower Bound . . . . . . . . . . . . . . . . 95
E.2.1 Single Setup Carryover . . . . . . . . . . . . . . . . . . 95
E.2.2 Consecutive Setup Carryover . . . . . . . . . . . . . . . 102
E.3 Lagrangean Multiplier Update . . . . . . . . . . . . . . . . . 104
E.4 Computation of the Upper Bound . . . . . . . . . . . . . . . 109
E.4.1 Inventory Balance Constraints . . . . . . . . . . . . . . 109
E.4.2 Setup Carryover Constraints . . . . . . . . . . . . . . . 111
E.4.2.1 Single Setup Carryover . . . . . . . . . . . . . . . 112
X Multi-Level Capacitated Lotsizing with Setup Carryover

E.4.2.2 Consecutive Setup Carryover . . . . . . . . . . . . 113


E.4.3 Capacity Constraints . . . . . . . . . . . . . . . . . . . 114
E.4.3.1 Outline of the Finite Loading Heuristic . . . . . . 115
E.4.3.2 Order of Consideration of Shifts . . . . . . . . . . 117
E.4.3.3 Shifts . . . . . . . . . . . . . . . . . . . . . . . . . 118
E.4.3.3.1 Changes to the Setup Pattern in the Target
Period . . . . . . . . . . . . . . . . . . . . . 121
E.4.3.3.2 Changes to the Setup Pattern in the Original
Period . . . . . . . . . . . . . . . . . . . . . 122
E.4.3.3.3 Single-Item Forward Shifts . . . . . . . . . . 123
E.4.3.3.4 Multi-Item Forward Shifts . . . . . . . . . . . 126
E.4.3.3.5 Single-Item Backward Shifts . . . . . . . . . 129
E.4.3.3.6 Multi-Item Backward Shifts . . . . . . . . . 132
E.4.3.3.7 Priority Values . . . . . . . . . . . . . . . . 134
E.4.3.3.8 Tabu Lists . . . . . . . . . . . . . . . . . . . 136
E.4.4 Postoptimization . . . . . . . . . . . . . . . . . . . . . . 136
E.5 Adaptation for Parallel Machines . . . . . . . . . . . . . . . 138
E.5.1 Aggregate Model Formulation for Resource Types . . . 140
E.5.2 Computation of a Feasible Solution for Parallel Machines 145
E.5.2.1 Assignment of Production to Individual Resources 145
E.5.2.2 Feasibility Routine . . . . . . . . . . . . . . . . . . 149
E.5.2.2.1 Lot Splitting . . . . . . . . . . . . . . . . . . 149
E.5.2.2.2 Shifting of Setup Activities . . . . . . . . . . 151
E.5.2.2.3 Modified Finite Loading Heuristic . . . . . . 152
E.5.3 Postoptimization . . . . . . . . . . . . . . . . . . . . . . 154

F Computational Study 155


F.1 Comparison of the Performance for Various Parameter Com-
binations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Contents XI

F.1.1 Parameters for the Lagrangean Multipliers . . . . . . . 157


F.1.1.1 Parameters for the Smoothing of the Subgradients 157
F.1.1.2 Parameters for the Update of the Lagrangean Mul-
tipliers . . . . . . . . . . . . . . . . . . . . . . . . . 158
F.1.1.2.1 Parameters for Factor δ l . . . . . . . . . . . . 159
F.1.1.2.2 Parameters for the Estimate of the Optimal
Solution . . . . . . . . . . . . . . . . . . . . . 160
F.1.1.2.3 Parameters for the Updating Modi . . . . . . 161
F.1.2 Parameter for the Termination of the Finite Loading
Heuristic . . . . . . . . . . . . . . . . . . . . . . . . . . 162
F.1.3 Parameters for the Sorting of Resources . . . . . . . . . 162
F.1.4 Parameters for the Sorting of Resources and Periods . . 165
F.1.5 Parameters for the Shifts . . . . . . . . . . . . . . . . . 166
F.1.5.1 Parameters for the Backward Shifts . . . . . . . . 166
F.1.5.2 Parameters for the Multi-item Shifts . . . . . . . . 167
F.1.5.3 Parameters for Careful Shifts . . . . . . . . . . . . 168
F.1.6 Parameters for the Computation of Priority Values . . 169
F.1.7 Parameters for the Application of Tabu Lists . . . . . . 171
F.1.7.1 Parameters for the Tabu Status . . . . . . . . . . . 171
F.1.7.2 Parameters for the Aspiration Criterion . . . . . . 172
F.2 Dominant Parameter Configurations and Further Tests for Se-
lected Parameters Parameters . . . . . . . . . . . . . . . . . 173
F.2.1 Dominant Parameter Configurations . . . . . . . . . . . 173
F.2.2 Further tested Parameter Combinations . . . . . . . . . 175
F.2.3 Parameters for Parallel Machines . . . . . . . . . . . . . 177
F.3 Evaluation of the Overall Performance of the Heuristic . . . 180
F.3.1 Results for the MLCLSPL with Single Setup Carryover 183
F.3.2 Results for the MLCLSPL with Consecutive Setup Car-
ryover . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
XII Multi-Level Capacitated Lotsizing with Setup Carryover

F.3.3 Results for the MLCLSPL with Parallel Machines . . . 194


F.3.3.1 Single Setup Carryover . . . . . . . . . . . . . . . 194
F.3.3.2 Consecutive Setup Carryover . . . . . . . . . . . . 198

G Conclusions and Future Work 203

Bibliography 205
List of Figures

C.1 Product and process structures for 10 items and 3 resources . 57


C.2 Product and process structures for 20 items and 6 resources . 58
C.3 Product structures and process structures for 40 items and 6
resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

D.1 Example of infeasible production schedules without capacity


violation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

E.1 Example of a schedule violating equation (E.55) . . . . . . . . 141

F.1 Development of the upper and the lower bound for a given
test instances . . . . . . . . . . . . . . . . . . . . . . . . . . . 181

XIII
List of Tables

B.1 Model formulations for the CLSPL . . . . . . . . . . . . . . . 16


B.2 MP-based heuristics . . . . . . . . . . . . . . . . . . . . . . . 22
B.3 Lagrangean Heuristics . . . . . . . . . . . . . . . . . . . . . . 36
B.4 Decomposition and Aggregation Heuristics . . . . . . . . . . . 41
B.5 Metaheuristics . . . . . . . . . . . . . . . . . . . . . . . . . . 45
B.6 Greedy Heuristics . . . . . . . . . . . . . . . . . . . . . . . . . 51

C.1 Problem Sizes of the test instances . . . . . . . . . . . . . . . 56


C.2 Mean demand . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
C.3 Setup time profiles . . . . . . . . . . . . . . . . . . . . . . . . 60
C.4 TBO profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
C.5 Capacity profiles . . . . . . . . . . . . . . . . . . . . . . . . . 64
C.6 Number of parallel machines . . . . . . . . . . . . . . . . . . 64

D.1 Comparison of the model formulations for single carryovers:


number of optimal solutions . . . . . . . . . . . . . . . . . . . 80
D.2 Comparison of the model formulations for single carryovers:
mipgap and computation time . . . . . . . . . . . . . . . . . . 81
D.3 Comparison of the model formulations for consecutive carry-
overs: number of optimal solutions . . . . . . . . . . . . . . . 85

XV
XVI Multi-Level Capacitated Lotsizing with Setup Carryover

D.4 Comparison of the model formulations for consecutive carry-


overs: mipgap and computation time . . . . . . . . . . . . . . 86
D.5 Comparison of the model formulations for parallel machines:
number of optimal solutions . . . . . . . . . . . . . . . . . . . 89
D.6 Comparison of the model formulations for parallel machines:
mipgap and computation time . . . . . . . . . . . . . . . . . . 89

F.1 Tested values for the smoothing parameters of the subgradients 157
F.2 Results for the smoothing parameters of the subgradients . . 158
F.3 Tested Combinations for the Parameters for the Lagrangean
multipliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
F.4 Tested values for the stepsize update factor δ l . . . . . . . . . 159
l
F.5 Results for the stepsize update factor δ . . . . . . . . . . . . 160
F.6 Tested values for the estimate of the upper bound . . . . . . 160
F.7 Results for the estimate of the optimal solution . . . . . . . . 160
F.8 Tested values for the stepsize update: upper and lower bounds 161
F.9 Results for the stepsize update . . . . . . . . . . . . . . . . . 162
F.10 Tested values for the sorting of resources . . . . . . . . . . . . 163
F.11 Results for the sorting of resources . . . . . . . . . . . . . . . 164
F.12 Tested values for the order of consideration of resources and
periods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
F.13 Results for the order of consideration of resources and periods 165
F.14 Tested values for backward shifts . . . . . . . . . . . . . . . . 166
F.15 Results for backward shifts . . . . . . . . . . . . . . . . . . . 167
F.16 Tested values for multi-item shifts . . . . . . . . . . . . . . . 168
F.17 Results for multi-item shifts . . . . . . . . . . . . . . . . . . . 168
F.18 Tested values for the first iteration of careful shifts . . . . . . 169
F.19 Results for the first iteration of careful shifts . . . . . . . . . 169
F.20 Tested values for the computation of the priority values . . . 170
List of Tables XVII

F.21 Results for the priority values . . . . . . . . . . . . . . . . . 170


F.22 Tested values for the tabu lists . . . . . . . . . . . . . . . . . 171
F.23 Results for the tabu lists . . . . . . . . . . . . . . . . . . . . . 172
F.24 Tested values for the aspiration criterion . . . . . . . . . . . . 172
F.25 Dominant configuration for the parameters for the Lagrangean
multipliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
F.26 Dominant Configuration for the Parameter for the termination
of the finite loading heuristic . . . . . . . . . . . . . . . . . . 174
F.27 Dominant configuration for the parameters for the ordering of
shifts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
F.28 Dominant configuration for the parameters for the shifts . . . 174
F.29 Dominant configuration for the parameters for the application
of tabu lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
F.30 Tested values for the computation of the priority values . . . 176
F.31 Results for the maximum number of per TBO profile . . . . . 176
F.32 Dominant configuration for the parameters for the computa-
tion of priority values . . . . . . . . . . . . . . . . . . . . . . 177
F.33 Tested values for the setup cost modification - test 1 . . . . . 178
F.34 Results for the setup cost modification for the MLCLSPLP M
- test 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
F.35 Tested values for the setup cost modification for the
MLCLSPLP M - test 2 . . . . . . . . . . . . . . . . . . . . . . 178
F.36 Results for the setup cost modification for the MLCLSPLP M
- test 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
F.37 Results for the setup cost modification for the
MLCLSPLP M CC - test 1 . . . . . . . . . . . . . . . . . . . . . 179
F.38 Tested values for the setup cost modification for the
MLCLSPLP M CC - test 2 . . . . . . . . . . . . . . . . . . . . . 180
F.39 Results for the setup cost modification for the
MLCLSPLP M CC - test 2 . . . . . . . . . . . . . . . . . . . . . 180
max
F.40 Tested values for the maximum number of iterations l for
the MLCLSPL without parallel machines . . . . . . . . . . . 182
XVIII Multi-Level Capacitated Lotsizing with Setup Carryover

F.41 Tested values for the maximum number of iterations lmax for
the MLCLSPL with parallel machines . . . . . . . . . . . . . 182
F.42 Number of feasible solutions for the MLCLSPLe . . . . . . . 183
F.43 Results for the MLCLSPLe . . . . . . . . . . . . . . . . . . . 184
F.44 Results for the MLCLSPLe per class . . . . . . . . . . . . . . 185
F.45 Results for the MLCLSPLe per capacity and setup time profile 186
F.46 Results for the MLCLSPLe per setup and holding cost ratio . 187
F.47 Results for the MLCLSPLe per product and process structure
and demand profile . . . . . . . . . . . . . . . . . . . . . . . . 188
F.48 Number of feasible solutions for the MLCLSPLCC . . . . . . 189
F.49 Results for the MLCLSPLCC . . . . . . . . . . . . . . . . . . 189
F.50 Results for the MLCLSPLCC per class . . . . . . . . . . . . . 190
F.51 Results for the MLCLSPLCC per capacity and setup time profile 191
F.52 Results for the MLCLSPLCC per setup and holding cost ratio 192
F.53 Results for the MLCLSPLCC per product and process struc-
ture and demand profile . . . . . . . . . . . . . . . . . . . . . 193
F.54 Number of feasible solutions for the MLCLSPLP M . . . . . . 194
F.55 Results for the MLCLSPLP M . . . . . . . . . . . . . . . . . 194
F.56 Results for the MLCLSPLP M per class . . . . . . . . . . . . . 195
F.57 Results for the MLCLSPLP M per capacity profile . . . . . . . 196
F.58 Results for the MLCLSPLP M per product and process struc-
ture and demand profile . . . . . . . . . . . . . . . . . . . . . 197
F.59 Number of feasible solutions for the MLCLSPLP M CC . . . . 198
F.60 Results for the MLCLSPLP M CC . . . . . . . . . . . . . . . . 198
F.61 Results for the MLCLSPLP M CC per class . . . . . . . . . . . 199
F.62 Results for the MLCLSPLP M CC per capacity profile . . . . . 200
F.63 Results for the MLCLSPLP M CC per product and process
structure and demand profile . . . . . . . . . . . . . . . . . . 201
List of Algorithms

1 Generation of the capacity matrix . . . . . . . . . . . . . . . . 63


2 Lagrangean heuristic . . . . . . . . . . . . . . . . . . . . . . . . 94
3 Computation of the lower bound . . . . . . . . . . . . . . . . . 102
4 Upper bound - inventory balance constraints . . . . . . . . . . 110
5 Upper bound - setup carryover constraints . . . . . . . . . . . 113
6 Upper bound - consecutive setup carryover constraints . . . . . 114
7 Upper bound - capacity constraints . . . . . . . . . . . . . . . 116
8 Upper bound - single-item forward shifts . . . . . . . . . . . . 124
9 Upper bound - multi-item forward shifts . . . . . . . . . . . . 127
10 Upper bound - single-item backward shifts . . . . . . . . . . . 131
11 Upper bound - multi-item backward shifts . . . . . . . . . . . 133
12 Iterative solution procedure for parallel machines . . . . . . . . 140
13 Assignment of production to parallel machines . . . . . . . . . 146
14 Feasibility routine . . . . . . . . . . . . . . . . . . . . . . . . . 150

XIX
List of Symbols

αl smoothing coefficient to stabilize convergence of the Lagrangean mul-


tipliers
Dn
δkts production quantity of item k on machine n in period t to satisfy
demand in period s

∆kts fraction of the cumulated demand of item k in periods t to s, which is


satisfied by production in period t
δkts fraction of demand of item k in period s, which is satisfied by produc-
tion in period t
D D
δkts demand of item k in period s, which is produced in period t (δkts =
δkts · Dks )
γkt binary setup variable
n
γkt binary setup variable on machine n

λlu stepsize for the update of the Lagrangean multiplier of the inventory
balance constraint for item k in period t at iteration l

λlv stepsize for the update of the Lagrangean multiplier of the capacity
constraint for resource m in period t at iteration l

λlw stepsize for the update of the Lagrangean multiplier of the setup car-
ryover constraint for resource m in period t at iteration l
Ω great number
ωkt binary setup state variable for item k at the beginning of period t

XXI
XXII Multi-Level Capacitated Lotsizing with Setup Carryover

n
ωkt binary setup state variable for item k on machine n at the beginning
of period t
Dk average demand of item k
Dmt̂t minimum average capacity consumption through production times on
resource m in periods t̂ to t
ςtml subgradient of the setup carryover constraint for resource m in period
t at iteration l
ϑm
t dummy variable to prohibit a changeover, when the setup state of the
same item k is carried over from period t − 1 to period t and from
period t to period t + 1
ϑkt dummy variable to indicate a consecutive carryover for item k from
period t − 1 to t and to t + 1
bbn available capacity of an individual resource n in the case of parallel
t
machines in period t
qbkt quantity to be assigned on parallel machines for item k in period t

ybk initial inventory of item k at the beginning of the planning horizon


ebm modified available capacity of resource type m in period t
t

sek modified setup cost coefficient of item k


ξtml subgradient of the capacity constraint for resource m in period t at
iteration l
l
ζkt subgradient of the inventory balance constraint for item k in period t
at iteration l
akj production coefficient (quantity of item k, which is directly needed to
produce one item j)

bm
t total capacity of resource m in period t in time units
dkts cumulated demand of item k in periods t to s

Dkt total (external and derived) demand of item k in period t


dkt external demand of item k in period t
ek echelon holding cost coefficient of item k
List of Symbols XXIII

hk full holding cost coefficient for item k


K total number of items
k items, k = 1, . . . , K
Km set of items k that are produced on the same resource m
Lm cumulated lead time of resource m
M total number of non-identical resources

m non-identical resources, m = 1, . . . , M
n parallel machines, n = 1 . . . Pm
Nk set of direct successors of item k
Pm number of parallel machines of resource type m

qkt production quantity of item k in period t

s periods, s = 1, . . . , T
sk setup cost coefficient for item k

T length of the planning horizon


t production periods, t = 1, . . . , T

tbk time needed to produce one unit of item k


trk time needed to set up a resource for the production of item k

Um capacity utilization of resource m

ukt Lagrangean multiplier for the inventory balance constraint


Vk set of direct predecessors of item k

vtm Lagrangean multiplier for the capacity constraint


wtm Lagrangean multiplier for the constraint of total number of setup car-
ryovers

ykt inventory of item k available at the end of period t


List of Abbreviations

ACO Ant Colony Optimization


B&B Branch&Bound
B&C Branch&Cut
BO Backorders
C&B Cut&Branch
CC Consecutive setup carryover (over more than one adjacent pe-
riod transition)
CG Column Generation
CLSP Capacitated Lotsizing Problem
CLSPL Capacitated Lotsizing Problem with Linked Lotsizes
CSLP Continuous Setup Lotsizing Problem
DLSP Discrete Lotsizing and Scheduling Problem
DW Dantzig-Wolfe Decomposition
EA Evolutionary Algorithms
ELSP Economic Lot Scheduling Problem
EOQ Economic Order Quanitity
EP Evolutionary Programming
ES Evolutionary Strategies
F&R Fix&Relax

XXV
XXVI Multi-Level Capacitated Lotsizing with Setup Carryover

GA Genetic Algorithms
GH Greedy Heuristics
GLSP General Lotsizing and Scheduling Problem
I&L Inventory&Lotsize
ILS Iterated Local Search
LD Lagrangean Decomposition
LP Linear Programming
LR Lagrangean Relaxation
LR-MLCLSPL Lagrangean Relaxation of MLCLSPL
MA Memetic Algorithms
MIP Mixed Integer Program
MLCLSP Multi-Level Capacitated Lotsizing Problem
MLCLSPSP L Simple Plant Location Formulation of the Multi-Level Capaci-
tated Lotsizing Problem
MLCLSPSR Shortest Route Formulation of the Multi-Level Capacitated Lot-
sizing Problem
MLCLSPL Multi-Level Capacitated Lotsizing Problem with Linked
Lotsizes
MLCLSPLe Multi-Level Capacitated Lotsizing Problem with Linked Lot-
sizes with echelon holding costs
MLCLSPLCC Multi-Level Capacitated Lotsizing Problem with Linked Lot-
sizes and Consecutive Carryover
MLCLSPLPM Multi-Level Capacitated Lotsizing Problem with Linked Lot-
sizes and consecutive carryover on Parallel Resources
MLULSPL Multi-Level Uncapacitated Lotsizing Problem with Linked
Lotsizes
MRP Material Requirements Planning
MP Mathematical Programming
NFA Network Flow Algorithm
PLSP Proportional Lotsizing and Scheduling Problem
PM Parallel (identical) resources
List of Abbreviations XXVII

RH Rounding Heuristic
SA Simulated Annealing
SLULSP Single-Level Uncapacitated Lotsizing Problem (also referred to
as Wagner-Within ProblemWagner and Whitin (1958))
SLULSPL Single-Level Uncapacitated Lotsizing Problem with Linked
lotsizes
SP Set Partitioning
SPL Simple Plant Location
SPP Set Partitioning Problem
SR Shortest Route
TA Threshold Accepting
TBO Time between orders
TS Tabu Search
VI Valid Inequalities
VNS Variable Neighborhood Search
Chapter A

Introduction and Outline

Lotsizing problems are found in every company, which produces various items
on a given set of resources with scarce capacities. In general the objective
is to find a production plan, which meets demand with the resources’ given
capacities and at minimal costs. However, the specific lotsizing problem is
highly dependent on the characteristics of the underlying production process.
Batch restrictions e. g. in chemical processes, multi-level product structures
and sequences-dependent setup times are only a few examples, which make it
necessary to tailor a unique solution approach to the specific problem.

The great variety of company-specific lotsizing problems and their complexity


are the two main reasons for the fact, that neither standard MRP-systems nor
modern Advanced Planning Systems provide adequate solutions. Hence, these
systems are not capable of generating feasible production plans.

Early theoretical work on lotsizing problems was done by Wagner and Whitin
(1958) and Manne (1958). Since then lotsizing has become a widely studied
field of research for the same reasons indicated above. First, the high level of
complexity makes it impossible to solve any lotsizing problem of realistic di-
mensions with an exact solution method. Furthermore, no dominant heuristic

© Springer Fachmedien Wiesbaden GmbH, part of Springer Nature 2008


L. Buschkühl, Multi-Level Capacitated Lotsizing with Setup Carryover,
Edition KWV, https://doi.org/10.1007/978-3-658-24034-9_1
2 Multi-Level Capacitated Lotsizing with Setup Carryover

solution approach to this type of problem has yet been found. This in turn has
lead to the development of a great variety of heuristics. Second, the particu-
lar production processes, demand structures and further restrictions faced by
different companies and industries have triggered the need for models, which
are respectively applicable to the specific production process.

The spectrum of models that have been developed ranges from those with a
continuous time scale, constant demand and an infinite time horizon to those
with a discrete time scale, dynamic demand and a finite time horizon. Famous
members of the former group are the Economic Order Quantity model (EOQ)
and the Economic Lot Scheduling Problem (ELSP).1

The second group is generally referred to as dynamic lotsizing. Here, a general


distinction can be made between small- and big-bucket formulations. The
names originate from the difference in period (or time-bucket) length. The
length of a period is not measured in time units but rather in the number of lots
that can be produced. For small-bucket models the maximum number of lots
per period is two, while there is no corresponding limit for big-bucket models.
Hence, while the sequence of lots within the period remains undetermined in
big-bucket models, it is clearly defined in small-bucket ones.2

The standard big-bucket formulation is the Capacitated Lotsizing Problem


(CLSP). The Multi-Level Capacitated Lotsizing Problem (MLCLSP) is the
multi-level extension, which accounts not only for external demand, but also
for the derived demand of components. The disadvantage of the CLSP is
that the setup state is not preserved from one period to the next. Even if
the same item is produced in two adjacent periods and production could be
continued in the second period without any further changeover, setups are
incurred twice. This can result in a false calculation of the overall production
costs and resource requirements and thus in a bad scheduling decision. Also,
if capacity is scarce, an existing feasible schedule may not be found.

To overcome these disadvantages, small-bucket models have been developed.

1 See Jans and Degraeve (2007), page 2.


2 Compare Sürie and Stadtler (2003).
Chapter A. Introduction and Outline 3

These include the Discrete Lotsizing and Scheduling Problem (DLSP) 3 , the
Continuous Setup Lotsizing Problem (CSLP)4 and the Proportional Lotsizing
and Scheduling Problem (PLSP)5 .

The PLSP is the most advanced small-bucket model, as it allows for up to two
items to be produced in one period. It is appropriate for the representation
of a continuous production, when setup times can be split across periods and
periods are chosen appropriately.6 However, holding costs and demand are
given for each time bucket. Thus, the bucket length influences the time and
demand structure and hence the optimal solution.

To overcome this drawback, Meyr (1999) extends the PLSP to the General Lot-
sizing and Scheduling Problem (GLSP). The GLSP works with two different
time schemes. First, the planning horizon is divided into so-called macro-
periods to compute demand, inventory and holding costs. Each macro-period
is in turn divided into micro-periods of variable length. They account for se-
tups and production. For more extensive reviews on small-bucket models see
e. g. Drexl and Kimms (1997) and Meyr (1999).

The main disadvantages of integrating sequencing decisions are a relatively


high level of complexity and less flexibility for the subsequent planning pro-
cesses.7 In big-bucket models lots can be moved within a period without
changing the overall schedule. Thus, they are more robust in the case of ran-
dom events than small-bucket ones.

A model which retains the advantages of the CLSP and incorporates aspects
of continuous production is the Capacitated Lotsizing Problem with Linked
Lotsizes (CLSPL). This big-bucket model was first tackled by Dillenberger
et al. (1993). It includes partial sequencing, i. e. the first and the last lot of
a period are determined. Therefore, a unique setup state can be identified
on each resource at the period transitions. This in turn implies, that at the

3 See Fleischmann (1990).


4 See Karmarkar and Schrage (1985).
5 See Drexl and Haase (1995).
6 See also Sürie (2005a).
7 Note however, that models integrating sequencing decisions are more easily tractable,
when setups are sequence-dependent.
4 Multi-Level Capacitated Lotsizing with Setup Carryover

beginning of a specific period, production for the respective item can take place
without incurring setup time or costs. Like the PLSP, the CLSPL is suitable
for the representation of continuous production processes, when the according
adaptations are made.

The advantage of the CLSPL over small-bucket formulations is that its com-
plexity, though higher than for the standard CLSP, still is rather low. Also, as
the sequence of lots is determined only at the period transitions, again greater
flexibility is left to subsequent planning phases, thus reducing nervousness of
the plan in case of unforeseen events. The advantage over the standard CLSP,
on the other hand, is that superfluous setups are avoided. As this saves setup
costs as well as setup times, the CLSPL generates different optimal production
plans. When capacity is scarce and setup times are considered, linking lotsizes
over adjacent periods may therefore render a problem feasible, which is not
feasible in the corresponding CLSP formulation.

The model studied in this work is the Multi-Level Capacitated Lotsizing Prob-
lem with Linked Lotsizes (MLCLSPL). It can be seen as the multi-level exten-
sion of the CLSPL or as the integration of linked lotsizes into the MLCLSP.
A set of the rather complex interdependencies that arise in practical lotsizing
problems are considered, such as scarce capacities, setup times, derived de-
mand and positive lead times. The cost of introducing these aspects into the
model formulation is that complexity increases.

In chapter B, we will present existing dynamic big-bucket capacitated model


formulations from the literature, some complexity considerations and an
overview on the various heuristics that have been developed.

Chapter C describes the test sample generated to test the model formula-
tions presented in chapter D and the overall performance of the heuristic, as
presented in chapter F.

In chapter D, we will first give the model formulation for the MLCLSPL with
single setup carryovers (MLCLSPLe ). Then the formulation for consecutive
setup carryovers (MLCLSPLCC ) is presented. Finally, we introduce a model
formulation for the MLCLSPL with parallel machines (MLCLSPLP M ). Fur-
Chapter A. Introduction and Outline 5

thermore, reformulations are presented, which are used to compute benchmark


results using CPLEX.

In chapter E we will present the solution algorithm, which is Lagrangean re-


laxation based. The performance of the heuristic for the different problems is
evaluated in chapter F. Finally, in chapter G, we give an outlook on future
work.
Chapter B

Literature Review

Research on lotsizing is extensive. Therefore, we will restrain our review to


the class of models, to which the MLCLSPL introduced later belongs, i. e.
to dynamic big-bucket capacitated lotsizing problems of the CLSP type. For
further research on lotsizing we refer to the numerous existing reviews. These
include Bahl et al. (1987), who introduce and cover subsets of unconstrained
and constrained single- and multi-level lotsizing. Maes and van Wassenhove
(1988) give a structured overview of heuristics to the CLSP and carry out
computational studies. Gupta and Keung (1990) give a review on uncapaci-
tated single- and multi-level lotsizing models. Salomon et al. (1991) give an
overview on different dynamic capacitated lotsizing models and some solution
algorithms. Kuik et al. (1994) study the impact of lotsizing and respond to
some criticism. Wolsey (1995) and Brahimi et al. (2006) review solutions to
the single-item lotsizing problem. Drexl and Kimms (1997) analyze simulta-
neous lotsizing and scheduling models. Staggemeier and Clark (2001) review
the use of metaheuristics in lotsizing and scheduling. Karimi et al. (2003) give
a rather up to date review on solution approaches to single-level capacitated
lotsizing problems. Jans and Degraeve (2007) give a review on metaheuristics
for dynamic lotsizing.

© Springer Fachmedien Wiesbaden GmbH, part of Springer Nature 2008


L. Buschkühl, Multi-Level Capacitated Lotsizing with Setup Carryover,
Edition KWV, https://doi.org/10.1007/978-3-658-24034-9_2
8 Multi-Level Capacitated Lotsizing with Setup Carryover

In section B.1 the relevant model formulations are introduced. Subsequently,


some complexity considerations are presented in section B.2. Due to the mod-
els’ complexity, a great variety of heuristics has been developed. They are
presented thereafter in section B.3.

B.1 Model Formulations

In this section, we present the standard formulations for the CLSP, the ML-
CLSP and the CLSPL. The focus is on the difference in the modeling assump-
tions. Further extensions such as backorders and overtime are not considered
here. Reformulations will be presented in section B.3.1, as their purpose is to
increase quality and solution speed of the solution approaches presented there.

B.1.1 The Single-Level Capacitated Lotsizing Problem

The single-level CLSP is based on the following assumptions:

• K items can be produced on M resources. There is a unique assignment


of each item to a specific resource. All items assigned to the same re-
source are interdependent in that they compete on its scarce capacity.
However, there is no input-output relationship between any of the items
(single-level production).

• The planning horizon is finite and divided into discrete periods (1,. . . ,T ).

• The number of items producible in the same period is limited only by


the total number of items K.

• The objective of the model is to minimize the sum of inventory and setup
costs.

• Available capacity, production times, setup costs and times, as well as


demand are exogenous to the model and assumed to be deterministic.
Production costs are assumed to be constant over time.
Chapter B. Literature Review 9

• The demand is dynamic. In each period, it has to be met without short-


ages.

• Setup costs are considered as the out of pocket costs arising from a
changeover. Opportunity costs for lost production time during a setup
will not be regarded, as setup times are directly included in the model.
Inventory costs consist of all quantity-dependent cost factors.

• Resource capacity is given and cannot be extended, i. e. there is no over-


time option. Setup and production times are considered. They reduce
capacity in the periods they occur. Other time consuming activities,
such as transportation times and lead times, are ignored.

• Setups are assumed to be independent of the sequence of production.

The CLSP can be written as:

Model CLSP
K X
X T
min Z = (sk · γkt + hk · ykt ) (B.1)
k=1 t=1

subject to

yk,t−1 + qkt − ykt = dkt ∀k, t = 1, . . . , T (B.2)

X
(tbk · qkt + trk · γkt ) ≤ bm
t ∀m, t = 1, . . . , T (B.3)
k∈Km

qkt ≤ γkt · Ω ∀k, t = 1, . . . , T (B.4)

yk0 = ybk ∀k (B.5)

qkt , ykt ≥ 0 ∀k, t = 1, . . . , T (B.6)

γkt ∈ {0, 1} ∀k, t = 1, . . . , T (B.7)


10 Multi-Level Capacitated Lotsizing with Setup Carryover

Indices:
k items, k = 1, . . . , K
K total number of items
Km set of items k that are produced on the same resource m
m non-identical resources, m = 1, . . . , M
M total number of non-identical resources
t production periods, t = 1, . . . , T
T length of the planning horizon
Data:
bmt total capacity of resource m in period t in time units
dkt external demand of item k in period t
hk full holding cost coefficient for item k
M total number of non-identical resources
Ω great number
sk setup cost coefficient for item k
tbk time needed to produce one unit of item k
trk time needed to set up a resource for the production of item k
ybk initial inventory of item k at the beginning of the planning hori-
zon
Variables:
γkt binary setup variable
qkt production quantity of item k in period t
ykt inventory of item k available at the end of period t

The objective function (B.1) minimizes setup costs and inventory holding costs.
Constraints (B.2) are the inventory balance constraints. External demand dkt
arises at the end of period t. Hence, the inventory available at the end of the
prior period (yk,t−1 ) and the quantity qkt produced within t can be used to
fulfill it. Excess production is kept on hand (ykt ). The first inventory variable
yk0 is set to some exogenous initial inventory by constraints (B.5).

Constraints (B.3) are the capacity constraints, which are defined for each re-
source considered. Note here that qkt and γkt do not need any resource index,
due to the unique assignment of each item k to one resource m.

Constraints (B.4) ensure that production of item k takes place in period t,


only if the resource is set up for this item. Ω is a number great enough not to
Chapter B. Literature Review 11

restrict the lotsize. Here Ω is calculated as:


½ m¾
bt
Ω= max (B.8)
m∈M,k∈Km ,t∈T tbk

Finally, qkt and ykt are defined as non-negative in constraints (B.6) and γkt as
binary in constraints (B.7).

B.1.2 The Multi-Level Capacitated Lotsizing Problem

The MLCLSP is the multi-level extension of the CLSP. In multi-level pro-


duction systems, end items are produced as well as their components. For
the latter, demand arises from the production quantities of successor items.
Therefore, the lotsizing decision for a given production stage item also influ-
ences the optimal production plan on previous stages. Therefore, an overall
optimal plan can only be generated, when the complete product structure is
considered simultaneously. Hence, the assumptions of the CLSP are adapted
as follows:

• There are input-output relationships between some of the items (multi-


level production).

• As lead times are often neglected or introduced differently, they will be


omitted here.

The MLCLSP can be written as:

Model MLCLSP
K X
X T
min Z = (sk · γkt + hk · ykt ) (B.9)
k=1 t=1

subject to
X
yk,t−1 + qkt − ykt = dkt + akj · qjt ∀k, t = 1, . . . , T (B.10)
j∈Nk
12 Multi-Level Capacitated Lotsizing with Setup Carryover

X
(tbk · qkt + trk · γkt ) ≤ bm
t ∀m, t = 1, . . . , T (B.11)
k∈Km

qkt ≤ γkt · Ω ∀k, t = 1, . . . , T (B.12)

yk0 = ybk ∀k (B.13)

qkt , ykt ≥ 0 ∀k, t = 1, . . . , T (B.14)

γkt ∈ {0, 1} ∀k, t = 1, . . . , T (B.15)

Indices:
Nk set of direct successors of item k
Data:
akj production coefficient (quantity of item k, which is directly
needed to produce one item j)

The objective function and the restrictions of the MLCLSP equal those of
the CLSP with the exception that the inventory balance constraints (B.10)
account for derived demand.

B.1.3 The Single-Level Capacitated Lotsizing Problem


with Linked Lotsizes

A different extension to the CLSP is the CLSPL. The underlying assumptions


are changed as follows:

• A setup state can be carried over from one period, if there is a corre-
sponding setup operation in the same period or the setup state has been
carried over to that period. In the latter case, the setup state is preserved
Chapter B. Literature Review 13

over two consecutive period transitions. If a setup state is preserved over


two consecutive periods, no other item can be produced in the middle
period.

• No setup state is defined at the beginning of the first period.

The CLSPL can be written as:

Model CLSPL
K X
X T
min Z = (sk · γkt + hk · ykt ) (B.16)
k=1 t=1

subject to

yk,t−1 + qkt − ykt = dkt ∀k, t = 1, . . . , T (B.17)

X
(tbk · qkt + trk · γkt ) ≤ bm
t ∀m, t = 1, . . . , T (B.18)
k∈Km

qkt ≤ (γkt + ωkt ) · Ω ∀k, t = 1, . . . , T (B.19)

X
ωkt ≤ 1 ∀m, t = 1, . . . , T (B.20)
k∈Km

ωkt ≤ γk,t−1 + ωk,t−1 ∀k, t = 2, . . . , T (B.21)

ωk,t−1 + ωkt ≤ 1 + ϑm
t ∀m, k ∈ Km , t = 1, . . . , T (B.22)

γkt + ϑm
t ≤1 ∀m, k ∈ Km , t = 1, . . . , T (B.23)

ωk1 = 0 ∀k (B.24)
14 Multi-Level Capacitated Lotsizing with Setup Carryover

yk0 = ybk ∀k (B.25)

qkt , ykt ≥ 0 ∀k, t = 1, . . . , T (B.26)

ϑm
t ≥0 ∀m, t = 1, . . . , T (B.27)

γkt , ωkt ∈ {0, 1} ∀k, t = 1, . . . , T (B.28)

Variables:
ωkt binary setup state variable for item k at the beginning of period
t
ϑm
t dummy variable to prohibit a changeover, when the setup state
of the same item k is carried over from period t − 1 to period t
and from period t to period t + 1

Again, most restrictions are the same as for the CLSP. However, restrictions
(B.19) differ from restrictions (B.4) in that the latter enforce a setup for every
positive production quantity. In the CLSPL, however, a particular setup state
can be preserved from the precedent period. In this case, the resource is in the
respective setup state already (ωkt = 1) and thus production can take place
without any additional changeover.

There are four possible reasons for a resource to be set up for a particular item
at the beginning of a period:1

1. Production for the item was started at the end of the previous period and
continued in this period.

1 See Tempelmeier (2006), page 165.


Chapter B. Literature Review 15

2. Free capacity at the end of the previous period was used to set up the
resource for the item that is produced first in this period.

3. The resource was idle in the previous period and had been set up for the
relevant item before. Thus, the setup state is carried over for at least two
consecutive periods.

4. The previous period was idle and free capacity was used to set up the
resource for the considered item.

Obviously, on each resource, this can only be the case for at most one product
per period (constraints (B.20)).

A particular setup state can be maintained at the end of a period, if the


corresponding changeover has been performed in the same period or it had been
carried over from the previous period (see constraints (B.21)). For the latter
case constraints (B.22) and (B.23) ensure that a consecutive setup carryover
for one item is installed, only if no other item is produced in between. ϑm
t is a
dummy variable, which prevents a consecutive carryover, if a setup operation
is undertaken in between (ϑm m
t = 0) and vice versa (ϑt = 1). Note here that
the case, where the setup state is carried over to a period, another item is
produced (with the corresponding setup state), the machine is changed back
to the first item and the setup state carried over to the next period, need not
be considered. The reason is that the first carryover is superfluous, when the
production can take place in the same period after an additional changeover.

An overview on research tackling the CLSPL is given in table B.1.

Dillenberger et al. (1993) were the first to tackle the CLSPL. Unlike most
other lotsizing models, neither holding nor setup costs are considered. Rather,
the objective is to minimize the weighted total backlog at the end of the
planning horizon and the weighted (per period) processing time along the
planning horizon. Products are aggregated to part types, for which a maximum
backlog must not be exceeded. Part types are again aggregated to part type
families, resulting in partially sequence-dependent (major inter- and minor
intra-family) setups. Also several resource groups, respectively consisting of
16 Multi-Level Capacitated Lotsizing with Setup Carryover

parallel resources, are considered. Part types can be produced on several


resource groups with different processing and setup times. Within each group
of resources processing and setup times are identical for any given item. The
workload assigned to a specific resource group in any period of the planning
horizon is not to exceed its corresponding available capacity. In this model
formulation, setups can be carried over several consecutive periods, unless
another part type is produced in between.

Reference PC ST S SD PM MM BO ML CC
Dillenberger et al. (1993) • • • • • • •
Dillenberger et al. (1994) • • • • • • •
Haase (1994) • •
Haase (1998) •
Gopalakrishnan et al. (1995) a • • • •
Gopalakrishnan et al. (1995) b • • • • •
Gopalakrishnan (2000) • • • •
Gopalakrishnan et al. (2001) • • • •
Sox and Gao (1999) • • •
Sürie and Stadtler (2003) a • • •
Sürie and Stadtler (2003) b • • • •
Quadt (2004) • • • • •
Gupta and Magnusson (2005) • • • •

Abbreviations:
BO Backorders
CC Consecutive setup carryover (over more than one adjacent period transition)
ML Multi-level
MM Non-identical resources
PC Variable production costs
PM Parallel (identical) resources
S Setup costs
SD Sequence dependency of setups
ST Setup time

Table B.1: Model formulations for the CLSPL

Dillenberger et al. (1994) introduce a variety of model extensions mentioned in


Dillenberger et al. (1993). The result is a very large-scale mixed integer pro-
gram, which cannot be solved in reasonable time. However, the model can be
transferred into a wide range of optimization models associated with different
objectives and restrictions. Alternative objectives are shipment value opti-
mization, serviceability maximization, resource cost minimization and mini-
mization of the weighted number of setups. The additional constraints com-
Chapter B. Literature Review 17

prise upper bounds for total backlog, minimum and maximum cumulative and
per period production levels, capacity restrictions for different kinds of re-
sources, maximum number of resources (and periods) per part type and of
part types per resource and major inter-family setups.

Haase (1994) introduces linked lotsizes into the standard CLSP. The objective
of the problem is the minimization of setup and holding costs. Setup times
are not considered. Also, production takes place on a single resource. He
replaces the binary setup variable by the difference between a binary setup
state variable and a binary setup carryover variable. The logic is that, if a
setup state is needed and it is not carried over from the precedent period, it
must be installed by a changeover in the same period. The restrictions for
linking equal those of Dillenberger et al. (1993). A linking can be installed
over consecutive periods, unless another item is produced in between. Haase
(1998) considers the same problem without consecutive setup carryovers.

Gopalakrishnan et al. (1995) present two versions of the CLSPL. The first one
is a single-resource CLSPL with the objective of minimizing holding, setup
and time-variant production costs. Production costs here are not incurred per
unit, but once, if the item is produced in the corresponding period. Also,
they consider (real) setup costs, as well as setup times. A new mixed integer
formulation is presented to model the setup carryovers. Unlike the previous
formulations, setup costs are constant per setup and thus independent of the
product, for which the setup is undertaken. This yields the possibility to model
the total number of setups as an integer instead of a binary variable for each
individual setup. However, three kinds of binary variables are needed for any
given product-period combination: αkt = 1 for the first item produced in t,
βkt = 1 for the last item produced in t and γkt = 1 for the item corresponding
to the setup state at the end of period t. These binary variables are used to
set a number of continuous variables such that the total number of setups in
period t is calculated as the number of products produced in t, less a setup
carryover from t − 1, if the end of period setup state in t − 1 corresponds
to the first item produced in t, plus an additional setup, if the setup state
is changed after production of the last item in t, plus one setup in case of t
18 Multi-Level Capacitated Lotsizing with Setup Carryover

being an idle period with spare capacity used to perform a changeover. In


comparison to the previous model formulation the use of binary variables here
is extensive. The second model, which the authors refer to as the integrated
model, incorporates parallel resources, resource assignment and tool selection.
Products are aggregated to form product families. Intra-family setups are
neglected. The objective is to minimize setup costs, holding costs and tool
carrying costs.

Gopalakrishnan (2000) presents a modified version of the first model from


Gopalakrishnan et al. (1995). He relaxes the rather restrictive assumption of
product-independent setups and incorporates product-specific setup times and
costs. For this reason the setup number is now calculated for every item and
period individually. Setups during idle periods are accounted for separately.
Gopalakrishnan et al. (2001) present a version of the CLSPL with unit produc-
tion costs and item-dependent holding costs, as well as setup costs and times
on a single resource.

Sox and Gao (1999) consider the CLSPL with item-specific setup, holding and
variable production costs, but without setup times. Like Haase (1998) before,
they restrict the number of setup carryovers per item to one in two consecutive
periods. They claim that for a large class of problems the optimal solutions of
the so restricted problem will be close to the optimal solutions of the CLSPL
with any number of consecutive setup carryovers per item.

Sürie and Stadtler (2003) again introduce linked lotsizes into the standard
CLSP. The objective is to minimize setup and holding costs. Production incurs
unit processing and setup times. Setups can be carried over several consecutive
period boundaries. They extend the formulation to the multi-level case by
introducing derived demand into the inventory balance constraint. Several
resources are considered but with a unique assignment of each item to one
specific resource.

Quadt (2004) develops a hierarchical planning approach for the lotsizing and
scheduling problem on flexible flow lines. In this context he first plans the
lotsizes for the bottleneck stage. One of his model formulations is a stan-
Chapter B. Literature Review 19

dard CLSPL with inventory and setup costs, as well as setup times, with the
extensions of backorders (incurring backorder costs) and parallel resources.

Gupta and Magnusson (2005) use a formulation of the CLSPL, which equals
that of Gopalakrishnan et al. (1995), except that they consider sequence-
dependent setup times and costs.

Another extension of the CLSPL is the capacitated lotsizing problem with


sequence-dependent setup costs (CLSD), which was formulated by Haase and
Goepfert (1996). Due to the sequence-dependency of setups, the sequence of
lots is determined within a period. Thus, we will not present this model here.

B.2 Complexity Considerations

As mentioned above, one reason for the extensive work on capacitated lotsizing
problems is their complexity. A mathematical framework to classify compu-
tational problems according to their complexity is provided by the complexity
theory. Two fundamental complexity classes are of interest here, P and N P.

A computational problem can be characterized as a function f that maps each


input x in a given domain to an output f (x) in some given range. Then a given
algorithm solves the computational problem by computing f (x). With n = |x|
we denote the length of the somehow encoded input string x. Complexity T (n),
as understood here, then denotes the maximum number of basic arithmetic
operations that is needed to solve any instance of the problem at a given size
n. In other words, we calculate the worst-case-computational effort.2 As it
is difficult to calculate the precise complexity T (n), it is approximated by its
asymptotic order, i. e. T (n) ∈ O(g(n)), if there exist constants c > 0 and a
non-negative integer n0 such that T (n) ≤ c · g(n) for all integers n ≥ n0 . For
example, a maximum computational complexity of 8 · n4 + 27 · n2 is expressed
by O(n4 ).3

For a decision problem there are only two possible outcomes f (x), ‘yes’ or
2 See Neumann and Morlock (1993), page 189.
3 See Brucker (2004), page 37.
20 Multi-Level Capacitated Lotsizing with Setup Carryover

‘no’. In general, ‘yes’ is easier to verify than ‘no’. Class N P, which is the
less restrictive, is defined by the time needed to verify ‘yes’ only. Let y be
a certificate for an input x, which means that f (x) can be determined by
computing y. Then N P denotes the class of decision problems, where for all
‘yes’ inputs x, |y| is bounded by a polynomial in n and there is a polynomial-
time algorithm to verify that y is a valid certificate for x or not.

Class P ⊆ N P is more restrictive than N P. A decision problem belongs to


class P, if it is solvable in polynomial time, i. e. if there exists a polynomial
p such that T (n) ∈ O(p(n)) (or a k such that T (n) ∈ O(nk )) for all inputs x,
where n is the length of the binary encoded input string x.4 This definition
applies to all, ‘yes’ as well as ‘no’, inputs x. As f (x) can be calculated in
polynomial time, it can be used as certificate directly and verified by the
algorithm. Problems belonging to P are called ‘easy’.5

Assuming P ⊂ N P, the remaining problems in N P are generally solvable


only in exponential time. Furthermore, a decision problem R is called N P-
complete, if every other decision problem Q ∈ N P can be reduced to R in
polynomial time, i. e. there exists a polynomial-time computable function g
that transforms inputs for Q into inputs for R such that x is a ‘yes’ input for
Q, if and only if g(x) is a ‘yes’ input for R.6

So far, we have restricted our attention to decision problems. In the context of


CLSP like problems, a decision problem would be whether a feasible solution
exists. Trigeiro et al. (1989) point out, that already for the CLSP this problem
is N P-complete, when positive setup times are considered.7 As every problem
presented in this work can be reduced to the CLSP with setup times by setting
some variables to 0, they are at least as hard to solve and hence also N P-
complete.

The objective of CLSP like problems, however is to minimize production-

4 See Brucker (2004), page 38.


5 See Neumann and Morlock (1993), page 191.
6 See Brucker (2004), page 41.
7 See Trigeiro et al. (1989), page 355. They refer to bin packing as a special case of the
CLSP with setup times. For the prove of N P-completeness see Garey and Johnson
(1979).
Chapter B. Literature Review 21

related costs. Hence, they are not decision, but optimization problems. Op-
timization problems are by definition not part of N P. However, an opti-
mization problem is called N P-hard, if the corresponding decision problem
is N P-complete.8 Florian et al. (1980) have proven the single-item CLSP to
be N P-hard. Later, Bitran and Yanasse (1982) showed, that even special
cases solvable in polynomial time become N P-hard with the introduction of
a second item.

Although research has been devoted to reformulating CLSP like problems,


such that the solution speed of exact algorithms is enhanced, yet there is
no alternative to heuristic solution approaches, when real-world problems are
considered. Therefore, section B.3 gives an overview on the types of algorithms
that have been presented in the literature.

B.3 Solution Approaches

As stated earlier, a great variety of heuristic algorithms have been developed


to tackle CLSP like lotsizing problems. The aim of this review is to give a
structured review on the different types of approaches. A general distinction
can be made between the following categories:

• Mathematical Programming based Approaches

• Lagrangean Heuristics

• Decomposition and Aggregation Heuristics

• Metaheuristics

• Greedy Heuristics

As will be described later, each of these categories can again be divided into
subcategories. Although this review is rather vast, we do not claim to cover
every article published in this area. However, each solution algorithm falls into
8 See Brucker (2004), page 46.
22 Multi-Level Capacitated Lotsizing with Setup Carryover

Reference FORM REL SolA MOD


Manne (1958) SPP DW SL, OV
Dzielinski and Gomory (1965) SPP DW SL
Lasdon and Terjung (1971) SPP CG SL
Bahl (1983) SPP CG SL, ST, OV
Barany et al. (1984) I&L LP B&B, VI SL
Billington et al. (1986) I&L LR B&B ML, ST
Bitran and Matsuo (1986) SPP DW SL, ST
Gelders et al. (1986) I&L LR B&B SL
Eppen and Martin (1987) SR LP RH SL
Cattrysse et al. (1990) SPP CG SL
Chen and Thizy (1990) I&L, SR LR B&B SL
Maes et al. (1991) SPL LP RH ML
Pochet and Wolsey (1991) I&L LP B&B, VI ML, ST
Salomon (1991) SPL LP RH ML
Diaby et al. (1992a) I&L LR B&B SL, ST, OV
Dillenberger et al. (1993) I&L LP F&R SL, PM, BO, SC
Kuik et al. (1993) SPL LP RH ML
Salomon et al. (1993) SPP CG SL, ST
Dillenberger et al. (1994) I&L LP F&R SL, ST, PM, BO, SC
Tempelmeier and Helber (1994) SR LP B&B ML
Clark and Armentano (1995) I&L LP B&C, VI ML, ST
Hindi (1995) SPP CG SL
Harrison and Lewis (1996) I&L CMH ML, ST, BO
Hindi (1996) SPP CG SL
Stadtler (1996) I&L,SPL,SR LP B&B ML, ST, OV
Stadtler (1997) SR LP B&B ML, ST, OV
Hung and Hu (1998) I&L SPB SL, ST, BO
Katok et al. (1998) I&L CMSB ML, ST
Armentano et al. (1999) I&L LP B&B,NFA SL
Belvaux and Wolsey (2000) I&L LP B&C, VI ML, ST, BO
Miller et al. (2000) I&L LP B&C, VI SL, ST
Belvaux and Wolsey (2001) I&L LP B&C, VI ML, ST, BO
Alfieri et al. (2002) SPL,SR LP RH SL
Degraeve and Jans (2003) SPP CG SL, ST
Huisman et al. (2003) SPP CG SL, OV
Mercé and Fontan (2003) I&L LP F&R SL, ST, BO
Stadtler (2003) SPL LP RTW ML, ST, OV
Sürie and Stadtler (2003) SPL LP B&C,C&B, VI SL,ML, ST, SC
Haase (2005) SPP,SPL LP CG,F&R SL

Abbreviations:
FORM Model Formulation (I&L = Inventory&Lotsize, SPL = Simple Plant Location, SPP
= Set Partitioning Problem, SR = Shortest Route)
REL Relaxation (LP = LP Relaxation, LR = Lagrange Relaxation)
SolA Solution Approach (B&B = Branch&Bound, B&C = Branch&Cut, C&B =
Cut&Branch, CG = Column Generation, CMH = Coefficient Modification Heuris-
tic, CMSB = Coefficient Modification Subroutine with Cost Balancing, , DW =
Dantzig-Wolfe Decomposition, F&R = Fix&Relax, NFA = Network Flow Algo-
rithm, RH = Rounding Heuristic, RTW = Rolling Time Window, SPB = Shadow
Price based Heuristic, VI = Valid Inequalities)
MOD Problem solved (ML = Multi-Level, SL = Single-Level, BO = Backorders, OV =
Overtime, PM = Parallel Machines, SC = Setup Carryover, ST = Setup Time)

Table B.2: MP-based heuristics


Chapter B. Literature Review 23

one of the categories given below.

B.3.1 Mathematical Programming based Approaches

Mathematical Programming (MP) based approaches are rather general and


tend to be more flexible than other procedures with respect to model exten-
sions. Furthermore, they usually produce better quality solutions but at the
cost of higher computational complexity.

Within MP-based approaches, the following categories can be distinguished:

• Branch&Bound Heuristics

• Fix&Relax Heuristics

• Rounding Heuristics

• Linear Programming based Heuristics

• Dantzig-Wolfe Decomposition and Column Generation

Furthermore, we distinguish between exact methods and MP-based heuristics.


The former stop with an optimal solution, if an optimal solution exists, regard-
less of the effort in terms of required computational time and memory. The
latter only search parts of the solution space and try to find a good feasible
solution in reasonable time. Introducing a time-limit into an exact method
is an easy way to construct an MP-based heuristic. If the solution obtained
within the time-limit is infeasible, it can serve as a promising lower bound,
from which one can try to construct a feasible solution. Table B.2 gives an
overview on MP-based solution approaches.

B.3.1.1 Branch&Bound Heuristics

The Branch&Bound method (B&B), when left enough time to terminate, be-
longs to the group of exact solution procedures. It enumerates feasible solu-
24 Multi-Level Capacitated Lotsizing with Setup Carryover

tions implicitly. This method consists of two parts, ‘branching’ and ‘bound-
ing’. While during the ‘branching’ part new disjoint subsets of the solution
space are generated, unpromising ones are removed during the ‘bounding’ part.
For Mixed Integer Programs (MIP) with binary variables, as considered here,
branching is based on iteratively fixing the binary variables to 0 and 1. For
bounding a relaxation of the remaining subproblems is solved.

Different possibilities are considered to relax the model formulation. The first
is the LP relaxation of a MIP. Here, the original binary variables of the MIP are
solved with the requirement that all real values of the relaxation are feasible
with respect to their bounds (e. g. 0 and 1 for binary variables). Armentano
et al. (1999) use a B&B procedure to solve the CLSP. Here, the corresponding
LP relaxation is determined by a network flow algorithm. The second relax-
ation method is the Lagrangean relaxation, which is described in detail in the
following section. B&B methods, which are imbedded into a Lagrangean Re-
laxation scheme, are described in Billington et al. (1986), Gelders et al. (1986),
Chen and Thizy (1990) and Diaby et al. (1992a).

As the bounds obtained by relaxing the above mentioned I&L formulation are
quite poor, one major research trend is devoted to tightening the lower bounds.
This in turn makes the B&B method more efficient. The relevant methods are
reformulation of the mathematical model, redefinition of the corresponding
decision variables and the introduction of additional valid inequalities.

B.3.1.1.1 Reformulation

Two well-known stronger model formulations for lotsizing problems of the


CLSP type are based on the Shortest Route representation (SR) and the Sim-
ple Plant Location respresentation (SPL), respectively. They will be presented
for the MLCLSP in the following. Both are based on the idea, that by adding
information, the quality of the lower bound is increased. In both cases, the
additional information is that production quantities are related to the specific
demand, which they are produced to satisfy.

The SR formulation was introduced by Eppen and Martin (1987) for the
Chapter B. Literature Review 25

SLULSP. Tempelmeier and Helber (1994) extend this formulation with respect
to the capacitated multi-level case. Let
X
Dkt = dkt + akj · Djt ∀ k, t = 1, . . . , T (B.29)
j∈Nk

and
s
X
dkts = Dkτ ∀ k, t = 1, . . . , T, s = t, . . . , T. (B.30)
τ =t

denote the cumulated demand of item k in periods t to s. Then the new


decision variables ∆kts are defined as the fraction of the corresponding cumu-
lated demand dkts , which is satisfied by production in period t. Using these
additional variables and parameters, the MLCLSPSR can be stated as follows:

Model MLCLSPSR
K X
X T
min Z = (sk · γkt + hk · ykt ) (B.31)
k=1 t=1

subject to
T
X
∆k1s = 1 ∀k (B.32)
s=1

t−1
X T
X
∆kp,t−1 = ∆kts ∀k, t = 2, . . . , T (B.33)
p=1 s=t

T
X X T
X
yk,t−1 + dkts · ∆kts = dkt + akj · djts · ∆jts + ykt ∀k, t = 1, . . . , T
s=t j∈Nk s=t
(B.34)
à T
!
X X
tbk · dkts · ∆kts + trk · γkt ≤ bm
t ∀m, t = 1, . . . , T (B.35)
k∈Km s=t

T
X
∆kts ≤ γkt ∀k, t = 1, . . . , T, dkts > 0 (B.36)
s=t
26 Multi-Level Capacitated Lotsizing with Setup Carryover

yk0 = ykT = 0 ∀k (B.37)

ykt ≥ 0 ∀k, t = 1, . . . , T (B.38)

∆kts ≥ 0 ∀k, t = 1, . . . , T, s = t, . . . , T (B.39)

γkt ∈ {0, 1} ∀k, t = 1, . . . , T (B.40)

Indices:
s periods, s = 1, . . . , T
Data:
dkts cumulated demand of item k in periods t to s
Variables:
∆kts fraction of the cumulated demand of item k in periods t to s,
which is satisfied by production in period t

The objective function (B.31) minimizes the inventory and setup costs. Con-
straints (B.32) and (B.33) are the flow constraints of the shortest route prob-
lem. While constraints (B.32) ensure that the overall flow is complete, con-
straints (B.33) ensure that at each node input equals output. The inventory
balance equations (B.34), capacity constraints (B.35) and setup enforcement
constraints (B.36) are adapted to the additional variables ∆kts . Constraints
(B.37) to (B.40) give the ranges of the variables.

Stadtler (1996) and Stadtler (1997) suggest an improved SR formulation, which


decreases the number of non-negative coefficients in the constraints’ matrix and
thus the computational effort for solving the corresponding LP relaxation.

In the SPL formulation, the analogy to the facility location problem is that
production periods t are modeled as facilities and demand periods s as cus-
tomers. Only earlier production periods can satisfy demand s ≥ t. Facilities
Chapter B. Literature Review 27

can be used for production, only if they are opened and hence fixed costs
are incurred in the form of setup costs for the respective product. Fulfilling
demand incurs transportation costs, which here equal holding costs.

As in the SR formulation, production is given as a fraction of demand. How-


ever, not cumulated demand, but demand of an individual period s is consid-
ered. The fraction of demand of item k arising in period s that is satisfied
in period t is denoted as δkts . In addition, the net demand Dkt of item k in
period t is defined as the sum of external and derived demands:
X
Dkt = dkt + akj · Djt ∀ k, t = 1, . . . , T (B.41)
j∈Nk

Then, the MLCLSPSP L can be stated as follows:

Model MLCLSPSP L
K X
X T
min Z = (sk · γkt + hk · ykt ) (B.42)
k=1 t=1

subject to
t
X
δkst = 1 ∀k, t = 1, . . . , T, Dkt > 0 (B.43)
s=1

T
X X T
X
yk,t−1 + Dks · δkts = dkt + akj · Djs · δjts + ykt ∀k, t = 1, . . . , T
s=t j∈Nk s=t
(B.44)
à T
!
X X
tbk · Dks · δkts + trk · γkt ≤ bm
t ∀m, t = 1, . . . , T (B.45)
k∈Km s=t

δkts ≤ γkt ∀k, t = 1, . . . , T, s = t, . . . , T (B.46)

yk0 = ykT = 0 ∀k (B.47)


28 Multi-Level Capacitated Lotsizing with Setup Carryover

ykt ≥ 0 ∀k, t = 1, . . . , T (B.48)

0 ≤ δkts ≤ 1 ∀k, t = 1, . . . , T, s = t, . . . T (B.49)

γkt ∈ {0, 1} ∀k, t = 1, . . . , T (B.50)

Data:
Dkt total (external and derived) demand of item k in period t
Variables:
δkts fraction of demand of item k in period s, which is satisfied by
production in period t

The difference to the SR formulation is that the flow constraints (B.32) and
(B.33) are omitted and instead constraints (B.43) ensure that given demand
is fulfilled without backlogging. The remaining restrictions (B.44) to (B.50)
are merely adapted to the new definition of the production quantity.

The value of the LP relaxation of the SR formulation and of the SPL formu-
lation are identical. The number of decision variables is the same, too, but
not the number of constraints. For the SPL formulation K · T ( 12 (T + 1) − 1)
additional constraints are needed.

Rosling (1986) introduce the SPL formulation for the MLULSP as an extension
to the work of Krarup and Bilde (1977). Furthermore, Maes et al. (1991)
extend the work of Rosling (1986) by introducing capacity constraints.

B.3.1.1.2 Valid Inequalities

Another way of tightening the bounds of the LP relaxation is to generate valid


inequalities. They reduce the size of the solution space by cutting off irrelevant
parts. Three methods can be distinguished. First, if the valid inequalities
Chapter B. Literature Review 29

are generated dynamically, this is referred to as the cutting plane method.


Second, valid inequalities can be introduced in the course of a B&B algorithm.
This method is called Branch&Cut (B&C). Third, the Cut&Branch procedure
(C&B) incorporates all generated inequalities into the model formulation prior
to starting the B&B algorithm.

Barany et al. (1984) define a set of valid inequalities also known as (l, S)-
inequalities. They include lotsizing variables and inventory variables for the
SLULSP. These additional inequalities describe the convex hull for the single
item uncapacitated lotsizing polytope. They can also be applied to the CLSP.
Furthermore, other valid inequalities are derived by Miller et al. (2000) for the
capacitated problem. Pochet and Wolsey (1991) and Clark and Armentano
(1995) extend the work of Barany et al. (1984) for the multi-level case.

Belvaux and Wolsey (2000) present a general framework for modeling and
solving lotsizing problems, including lotsizing-specific preprocessing, cutting
planes for different aspects of lotsizing problems, general cutting planes, and
a lotsizing-specific primal heuristic. Their work is extended in Belvaux and
Wolsey (2001) to further model extensions, e. g. start-ups, changeovers and
switch-offs.

Sürie and Stadtler (2003) derive valid inequalities for the CLSPL and the ML-
CLSPL. To do so, they introduce extended model formulations by redefining
the setup carryover constraints. In addition, they perform a preprocessing
step, which leads to inequalities that link inventories to setups and single-item
production to capacity. They adopt C&B and B&C with a given time-limit to
find the optimal or the first feasible solution. In order to reduce complexity, a
time-oriented decomposition approach9 is applied.

B.3.1.2 Fix&Relax Heuristics

In Fix&Relax Heuristics (F&R) the number of binary variables is reduced by


dividing the problem into several subproblems. Three sets of binary variables

9 See Stadtler (2003).


30 Multi-Level Capacitated Lotsizing with Setup Carryover

can be distinguished. The first is solved to optimality, the second is relaxed


and the third set is fixed to the values of a previous iteration.

Dillenberger et al. (1993) develop an F&R algorithm for the CLSPL. It essen-
tially consists of a B&B algorithm, where the order of branching is determined
by the sequence of periods. The resulting algorithm is a period-by-period
heuristic with binary setup variables in the first period of the current lotsizing
window, fixed setup variables in all prior periods and relaxed setup variables
in all ongoing periods until the end of the planning horizon. Dillenberger et al.
(1994) again apply the F&R heuristic to an extended model formulation.

The rolling-time-window approach by Stadtler (2003) consists of overlapping


lotsizing windows. The binary variables preceding this time window have
been determined in prior iterations and those after the end of the planning
window are neglected. Thus, capacity requirements are only approximated.
This approach is also applied to the CLSPL in Sürie and Stadtler (2003).

Mercé and Fontan (2003) propose a MIP-based heuristic, which relies on the
division of the planning horizon into several sub-horizons and different freezing
methods for past decisions.

B.3.1.3 Rounding Heuristics

In Rounding Heuristics (RH), the LP relaxation of the MIP is solved and the
fractional binary variables are subsequently rounded. In the case of capacitated
lotsizing problems, these solutions are often infeasible. The reason is that
capacity may not be sufficient, if there are too few production periods. Hence,
the fractional binary variables are usually rounded up and rounded down only
within a given threshold.

Using the SPL formulation for the MLCLSP without setup times, Maes et al.
(1991) introduce several RHs. Based on the LP relaxation, the relaxed setup
variable with the highest value is fixed to 1. Subsequently, the reduced LP
relaxation is solved. Furthermore, all relaxed binary variables within a given
range can also be fixed to 1.
Chapter B. Literature Review 31

Eppen and Martin (1987) and Alfieri et al. (2002) present RHs, which solve
the LP relaxation of the SR formulation for the CLSP. All fractional binary
variables are fixed within a given threshold. Then, a limited B&B is started
with the remaining binary variables.

Kuik et al. (1993) present a further RH for the MLCLSP without setup times
and on one resource. Based on the LP relaxation of the SPL formulation,
all binary variables within a given range are fixed either to 0 or to 1. The
remaining binary variables are initially set to 1. A Simulated Annealing or
Tabu Search approach follows, where changes only affect the unfixed binary
variables. A similar approach can be found in Salomon (1991).

B.3.1.4 Linear Programming based Approaches

These iterative solution methods exploit the fact that omitting the binary
variables leads to a significantly easier problem. Here, the complete setup
pattern is either given or accounted for only implicitly, and the remaining LP
is solved to optimality.

Hung and Hu (1998) present an iterative solution approach for the CLSP, in
which at each iteration the setup pattern is fixed and the remaining LP is
solved. They start with an initial setup pattern assuming a production for ev-
ery item in every period. Hence, all setup variables are fixed to 1. After solving
the resulting linear program, they use the information of the shadow prices
relating to the capacity constraints to identify items and periods, for which it
is beneficial to fix the corresponding setup variables to 0. Subsequently, the
resulting LP is solved.

Harrison and Lewis (1996) present the iterative Coefficient Modification


Heuristic for the MLCLSP. They exploit the fact that in the MLCLSP each
setup variable is linked to a corresponding continuous production variable,
in that both variables must be equal to zero or positive at the same time.
Therefore, the binary variables are omitted and setup times are accounted for
implicitly via modification of the production time coefficients of the related
production variables. This leads to a reduced linear program, as not only the
32 Multi-Level Capacitated Lotsizing with Setup Carryover

binary variables but also the linking constraints to the continuous variables can
be eliminated. In each iteration the respective linear program is solved and the
production time coefficients are modified relating to the capacity consumption
in the previous iteration.

Later, Katok et al. (1998) introduce the Coefficient Modification Subroutine


with Cost Balancing, which is an extension to the Coefficient Modification
Heuristic. Here, also the production cost coefficients are modified to account
for setup costs implicitly.

B.3.1.5 Dantzig-Wolfe Decomposition and Column


Generation

Dantzig-Wolfe decomposition10 can be applied to the CLSP,11 which is trans-


ferred into a problem of the Set Partitioning type. The objective is to find
a convex combination of single-item schedules, which keeps the capacity con-
straints of the original CLSP and leads to minimal costs. The decision variables
are continuous variables to combine schedules for each item.

To find the optimal solution to the Set Partitioning Problem (SPP), Column
Generation (CG) is applied. CG is an iterative solution procedure, generating
new schedules leading to a better objective function’s value at each iteration.
To do so, the SPP becomes a master problem. The corresponding subproblem
is to find the single-item schedules to feed into the master problem. For the
CLSP, it consists of a set of SLULSPs. The CG procedure starts with a limited
number of schedules for each product. At each iteration, first the SPP is
solved. Then shadow prices related to the capacity and convexity constraints
are updated and used to modify the objective function of the subproblems,
which are subsequently resolved. The resulting schedules are then introduced
into the master problem, only if their objective function’s value is negative
and therefore beneficial. The procedure is repeated until no more schedules
improving the objective function of the SPP can be generated. The approach

10 See Dantzig and Wolfe (1960).


11 A solution approach based on CG is not satisfactory for the MLCLSP.
Chapter B. Literature Review 33

stops with a promising lower bound for the CLSP. Afterwards, an additional
solution heuristic has to be applied to generate a feasible solution.

An early approach was introduced by Manne (1958). The solution method is


not iterative, but considers only dominant production plans. Manne’s work
is extended by Dzielinski and Gomory (1965), who develop a Column Selec-
tion procedure to handle larger problems. Later, Lasdon and Terjung (1971)
develop a CG approach. Algorithms of this type are also presented by Bahl
(1983), Cattrysse et al. (1990), Salomon et al. (1993), Degraeve and Jans
(2003) and Huisman et al. (2003).

Hindi (1995) presents a heuristic including variable redefinition and CG. They
solve a minimum cost flow problem to compute the upper bound.

Hindi (1996) combines the ideas of LP relaxation, CG, Minimum Cost Network
Flow and Tabu Search into a hybrid algorithm.

Haase (2005) also solves the CLSP via Column Generation. The resulting
lower bound is close to optimality as most of the variables are already integer.
Only a small number of variables are left, which are considered in a following
rolling time window procedure similar to Dillenberger et al. (1993).

B.3.2 Lagrangean Heuristics

Lagrangean Heuristics (LH) are iterative solution approaches applying La-


grangean Relaxation (LR). This means that the complicating constraints are
relaxed and punished at penalty costs in the objective function. Lagrangean
Heuristics can be divided into

• Lagrangean Relaxation heuristics

• Lagrangean Decomposition heuristics

In both cases, at each iteration first a lower bound is computed based on a


Lagrangean Relaxation or Decomposition, respectively, and given values of the
Lagrangean multipliers. A feasible solution is constructed by some feasibility
34 Multi-Level Capacitated Lotsizing with Setup Carryover

routine and serves as the new upper bound. Finally, the Lagrangean multi-
pliers are updated. The heuristics are based on the convergence of the lower
and the upper bound through the adaptation of the Lagrangean multipliers.
With the right Lagrangean multipliers the solution to the relaxed problem
will be very close to the optimal solution of the original problem. Thus, only
small modifications will have to be made to install a close to optimal feasible
solution.

The complicating constraints are relaxed to compute the lower bounds. In


the case of the CLSP, the only complicating constraints are the capacity con-
straints. When they are relaxed, the remaining problem decomposes into K
problems of the SLULSP type. For the MLCLSP, also the inventory balance
constraints reflect interdependencies because of the derived demand. Relax-
ing both constraints again leads to K problems of the SLULSP type. An
alternative consists of relaxing only the capacity constraints and solving the
remaining MLULSP. For the CLSPL, the capacity constraints and the setup
carryover constraints are relaxed. The setup carryover constraints restrict the
setup carryovers per resource and period to at most one. The remaining prob-
lem is of the SLULSPL type. A number of exact and heuristic algorithms
have been introduced to solve the uncapacitated lotsizing problems efficiently,
e. g. Wagner and Whitin (1958), Evans (1985), Federgruen and Tzur (1991),
Wagelmans et al. (1992), Silver and Meal (1969) and Groff (1979).

Lagrangean Decomposition (LD) via variable duplication is a variant of LR.


Instead of relaxing the complicating constraints, all original constraints are
kept. However, the original problem is decomposed into subproblems via vari-
able duplication. Each subproblem only respects some of the constraints. In
order for the solutions to the subproblems to be a valid solution to the orig-
inal problem, the duplicates must equal the corresponding original variables.
These coupling constraints are finally relaxed.

Various techniques have been developed to generate the upper bound. They
will be described below.
Chapter B. Literature Review 35

Lagrangean multipliers are updated via Subgradient Optimization, until a


stopping criterion is met. The subgradient indicates the direction, in which
the Lagrangean multipliers have to be altered, in order to achieve the greatest
possible improvement of the objective function’s value. Generally, in the case
of optimization problems with multiple constraints, the subgradients can be
based on the violation of the constraints themselves.

Table B.3 gives an overview.

Thizy and van Wassenhove (1985) develop a solution algorithm to the CLSP,
which is later extended by Diaby et al. (1992b) to a CLSP with setup times
and overtime. Based on the LR of the capacity constraints the setup decisions
are retained. The basic idea is that once the setup decision has been made, the
resulting problem can be formulated as a TP. A perturbation scheme is devel-
oped based on this formulation. It is applied to schedules, when production
cells do not match the results of the LR.

Trigeiro (1987) solves the CLSP without setup times. Later, Trigeiro et al.
(1989) extend their heuristic to problems with setup times. To generate feasi-
ble solutions, they apply a smoothing procedure. Its objective is to minimize
total opportunity costs divided by the quantity of eliminated overtime. The
smoothing routine consists of up to two backward and two forward passes.
Thus, it shifts lots period-by-period alternately starting from the end of the
planning horizon to earlier periods and from the beginning of the planning
horizon to later periods. Lots are shifted backward either to the next period
or to the next period with a corresponding setup. Either the complete lot or
as much as is needed to eliminate the capacity violation is shifted. For the
forward passes, the target period is always the next later period and the quan-
tity shifted is always the inventory of the respective item. At most one lot per
period may be split. The heuristic moves on to the next period, when all over-
time has been eliminated in the incumbent period. The procedure is guided by
the constraints, the costs and the Lagrangean multipliers. Among the forward
passes, the first considers cumulative overtime only, while the second elimi-
nates overtime in every period. When a feasible solution is found, unnecessary
inventory is eliminated by a simple fix-up, i. e. production postponement.
36 Multi-Level Capacitated Lotsizing with Setup Carryover

References RC SP FEAS MOD


Thizy and van Wassenhove (1985) C SLU, DP TP SL
Trigeiro (1987) C SLU, DP FC, B, F SL
Trigeiro et al. (1989) C SLU, DP FC, B, F SL, ST
Campbell and Mabert (1991) C, II CYCSLU, ENUM FC, B SL, CS, II, MINQ
Diaby et al. (1992b) C SLU, DP TP SL, ST, OV
Tempelmeier and Derstroff (1993) C, I SLU, DP FC, B, F ML, ST
Millar and Yang (1994) SET TP, INT, LCINT TP SL, BO
Millar and Yang (1994) DEC TP, SLU, ZAN TP SL, BO
Tempelmeier and Derstroff (1996) C, I SLU, DP FC, B, F ML, ST
Özdamar and Barbarosoglu (1999) PM SLU, LOAD, GR SA ML, ST, PM, OV, BO
Sox and Gao (1999) C, S SLULSPL, DP FC, F, B, SC SL, SC
Özdamar and Barbarosoglu (2000) C, (I) M(S)LULSP, DP SA, LS, GS ML, ST
Moorkanat (2000) C, I SLU, DP F, B, M ML, ST
Chen and Chu (2003) BIN LMLCLSP, LP SET1 ML
Hindi et al. (2003) C SLU , DP FC, B, F SL, ST
Sambasivan and Yahya (2005) C MPSLULSP, B&B F, B, M SL, ST, MultP
Brahimi et al. (2006) C, TW (TW)SLU, DP FC, B, F SL, TW

Abbreviations:
RC Relaxed Constraints (BIN = Binary Setup Variables, C = Capacity Constraints,
DEC = Coupling Constraint between Duplicates and the corresponding original
Variables in Decomposition Approaches, I = Inventory Balance Constraints, II =
Initial Inventory Constraints, PM = Coupling between Production on each Re-
source and total Production for an Item, S = Setup Carryover Constraints, SET
= Coupling Constraint between Production and Setup, TW = Time Window Con-
straints)
SP Subproblem solved in case of Decomposition and Solution Method (CYCSLULSP
= SLULSP with cyclical Schedules, INT = Integer Problem to determine Setup
Scheme, LMLCLSP = Linear MLCLSP, LOAD = Capacitated Loading Problem,
MPSLULSP = Multi-Plant SLULSP, SLU = SLULSP, TP = Transportation Prob-
lem, TWSLU = SLULSP with Time Windows, B&B = Branch&Bound, DP =
Dynamic Programming, ENUM = Enumeration of all possible Schedules, GR =
Greedy, LCINT = Least Cost Search to determine Setups, LP = Linear Program-
ming)
FEAS Type of feasibility Check (B = Backward, BC = Backward Shifting of cumulative
Overtime, F = Forward, FC = Forward Shifting of cumulative Overtime, GS =
Global Search, LS = Local Search, M = Machine-by-Machine, SA = Simulated
Annealing, SC = Feasibility of Setup Carryover Constraints, SET1 = All positive
Setup Variables are set to 1, TP = Fix Setups and solve Transportation Problem)
MOD Problem solved (ML = Multi-Level, SL = Single-Level, BO = Backorders, CS =
Cyclical Schedules, II = Initial Inventory, MINQ = Minimum Production Quan-
tity, MP = Multi-Plant, OV = Overtime, PM = Parallel Machines, SC = Setup
Carryover, SD = Sequence Dependency, ST = Setup Time, TW = Time Windows)

Table B.3: Lagrangean Heuristics

Hindi et al. (2003) solve the CLSP with setup times. Their heuristic consists
of three parts. First, a smoothing heuristic is applied, which is similar to that
of Trigeiro et al. (1989). Second, after each pass, the solution is optimized
further by solving a Capacitated Transshipment Problem by the dual network
complexity method for the given setup schedule. The transshipment model
Chapter B. Literature Review 37

equals the transportation model of Diaby et al. (1992b), but it is claimed to be


much smaller. The smoothing heuristic is followed by a Variable Neighborhood
Search. The costs of not producing an item in a given period is estimated
as the difference between setup costs and inventory holding costs from the
latest precedent period with a setup for this item. The most beneficial items
are chosen, with their number determined by an adaptive neighborhood size.
Then, the smoothing procedure is reapplied. The move is executed, only if it
leads to a feasible solution, which is better than the incumbent solution. In
this case the number of moves is reset to one.

Tempelmeier and Derstroff (1993) and Tempelmeier and Derstroff (1996) de-
velop a solution procedure to the MLCLSP with setup times and positive lead
times based on the formulation of Billington et al. (1986). To account for the
derived demands of the multi-level structure, a sequence of SLULSPs is solved
starting with the end products and down to the components. Then, they ap-
ply a smoothing procedure similar to Trigeiro et al. (1989) to ensure capacity
feasibility. However, as they solve a multi-level problem, they apply as well
single- as multi-item (subsets of the product structure) shifts.

Moorkanat (2000) solves the MLCLSP with setup times using the single- and
multi-item shifts introduced by Tempelmeier and Derstroff (1996). Addition-
ally to considering every period for a given resource, before moving on to the
next, a second set of heuristics, considering all resources in one period before
moving on is implemented. The major difference to the implementation by
Tempelmeier and Derstroff (1996) is that backlogging is allowed for the end
items. Hence, while the schedule may not be feasible with respect to the in-
ventory balance constraints, it is guaranteed to be feasible with respect to the
capacity constraints.

Campbell and Mabert (1991) develop a LH similar to Trigeiro et al. (1989) for
the CLSP with cyclical schedules. Here, the time between production periods
of an item are constant. To solve the relaxed problems, all combinations of first
production period and cycle length are evaluated and the least cost solution
is chosen.
38 Multi-Level Capacitated Lotsizing with Setup Carryover

Sox and Gao (1999) develop a LR heuristic (which they refer to as Lagrangean
Decomposition), where the capacity and setup carryover constraints are re-
laxed.

Özdamar and Barbarosoglu (1999) develop a hybrid algorithm, combining LR


and Simulated Annealing to solve a multi-level production system with a serial
product structure for several end items. Production takes place on parallel
machines. By relaxing the coupling constraints between loading quantities
on each machine and the respective total production quantity the problem
decomposes into a set of SLULSPs and a set of capacitated loading problems
for given total production quantities per item and period. Both subproblems
are solved only approximately. From a generated inventory feasible solution,
capacity feasibility is finally achieved through a specialized procedure based
on Simulated Annealing.

Özdamar and Barbarosoglu (2000) apply a similar procedure to solve the stan-
dard MLCLSP with general product structures. They develop two relaxation
schemes. The first is called hierarchical relaxation, as only the capacity con-
straints are relaxed. The second relaxes both the capacity and the inventory
balance constraints. Neither is solved exactly and therefore they are not a
lower bound to the original problem. To generate a feasible and improved
solution to the original problem, they apply three types of procedures. One is
a Simulated Annealing approach. Here, the direct neighborhood is searched,
which is defined by the shifting of a randomly selected partial lot to the next
resource or the next period. The second is based on the same neighborhood
definition, but allows improving moves only. Finally, the third is a global
search procedure to ensure capacity feasibility.

Chen and Chu (2003) develop a solution algorithm to the MLCLSP, in which
they relax the binary constraints for the setup variables. The remaining linear
model is solved approximately by an iterative linear programming algorithm,
respectively obtaining setups for given production quantities and vice versa,
until the same results are obtained in both computations. To update the
Lagrangean multipliers, they use a surrogate subgradient method (SSG). SSG
is a subgradient method, which is adapted to the fact, that the relaxed problem
Chapter B. Literature Review 39

is only solved approximately instead of to optimality. Feasibility is achieved


trivially by setting all positive setup variables to 1 and all others to 0. Finally,
the solution is improved on with the help of a local search procedure.

Sambasivan and Yahya (2005) apply LR to a multi-plant version of the CLSP


with setup times. This extension is reflected through several resources, item
transfers in the inventory balance constraints and the corresponding cost factor
in the objective function. They also alter the problem to forbid inter-plant
transfers. The remaining problem corresponds to the multi-resource CLSP.
They use a lot shifting-splitting-merging routine to generate a feasible solution.
First, capacity violating lots are shifted within the same period to another
plant, where the corresponding demand arises. If capacity violations persist,
production is then shifted across periods within the same plant. The shifts are
executed forward and backward without incurring capacity violations in the
target periods.

Millar and Yang (1994) develop both a Lagrangean Relaxation and a La-
grangean Decomposition approach to solve the CLSP with backorders. Both
decompose the original problem into two subproblems. In both cases, one is
a TP. In the case of the LR, the other one is an integer problem to determine
setups. It is solved by inspection of the given cost coefficients. In the case of
the LD, the second subproblem is a set of SLULSPs, which is solved by the
algorithm introduced by Zangwill (1966). To compute the upper bound, again
a TP is solved for the setup decisions given by the relaxation.

Brahimi et al. (2006) propose several LR schemes for the CLSP with time
windows. In the standard CLSP, production can take place not later than the
due demand period. Here, production is additionally limited to be not earlier
than a given release period.

Thizy (1991) studies different LD approaches to the CLSP, their values and
complexity.
40 Multi-Level Capacitated Lotsizing with Setup Carryover

B.3.3 Decomposition and Aggregation Approaches

The idea of decomposition and aggregation approaches is to solve subproblems


of reduced size and then coordinate the individual solutions. Aggregation
approaches reduce problem size by omitting details first and breaking the
solution down later. Decomposition approaches split the original problem into
subproblems and coordinate the schedules later. The following approaches can
be distinguished:

• Time-based decomposition

• Item-based decomposition

• Resource-based decomposition

• Item-based aggregation

• Resource-based aggregation

In item-based decomposition, capacity restrictions may be neglected for the


subproblems. Time-based decomposition is mostly premised on rolling sched-
ules. The idea is an iterative approach, where the planning horizon is split
into shorter (mostly overlapping) time windows. Once a solution is found for
the respective window, the solution is fixed for a number of periods at the
beginning of the window and another problem solved. A closely related set of
iterative algorithms are the F&R algorithms presented above.

Table B.3.3 gives an overview on the various decomposition and aggregation


approaches.

Newson (1975a) and Newson (1975b) develop a heuristic to the CLSP without
and with overtime, respectively. The idea is to neglect the capacity constraints
first, which leads the problem to decompose into single-item problems of the
SLULSP type. These are solved with the help of the Wagner-Whitin algorithm.
Then, infeasible combinations of production schedules are eliminated from the
set of possible solutions. The reduced set is resolved until a feasible solution
is achieved.
Chapter B. Literature Review 41

Kirca and Kökten (1994) develop an item-by-item heuristic to the CLSP. It-
eratively, one of the yet unscheduled items is selected based on the Least Unit
Cost criterion. Second, production quantities are bounded with the intention
to ensure feasible plans for the remaining items. Third, the modified single-
item CLSP with inventory restrictions is solved for the selected item by an
algorithm based on dynamic programming.

Reference AG/DC SP SOL MOD


Newson (1975a) DC (K) SLU DP SL, ST
Newson (1975b) DC (K) SLU DP SL, ST, OV
Blackburn and Millen (1984) DC (K) SLU MRP ML
Tempelmeier and Helber (1994) DC (K) SL DS ML
Helber (1994) DC (K) SL DS ML, ST
Kirca and Kökten (1994) DC (K) SL DP SL
Özdamar and Bozyel (2000) AG (K) SI EX SL, ST, OV
Bourjolly et al. (2001) DC (T) SL TS SL, ST, SC
Sambasivan and Schmidt (2002) DC (K) SLU EX SL, ST, MP
Quadt (2004) AG (K, M), DC SLSC EX ML, ST, BO,
(K, T) PM, SC, SD
Quadt and Kuhn (2005) AG (K, M), DC SLSC EX ML, ST, BO,
(K, T) PM, SC, SD
Boctor and Poulin (2005) AG (K) SL GR ML, ST, (OV),
MM

Abbreviations:
AG/DC Aggregation or Decomposition Approach (AG = Aggregation, DC = Decomposi-
tion, K = Itembased, M = Aggregation of parallel Machines, T = Periodbased)
SP Subproblem that is solved in case of Decomposition (SI = Single-Item CLSP, SL =
CLSP, SLSC = CLSPL, SLU = SLULSP)
SOL Solution Method applied to solve the (Sub)problem (DP = Dynamic Programming,
DS = Modified Dixon-Silver Heuristic, EX = Exact Solution, GR = Greedy, MRP
= Capacitated MRP, TS = Tabu Search)
MOD Problem solved (ML = Multi-Level, SL = Single-Level, BO = backorders, MM =
Multi-Machine, MP = Multi-Plant, OV = Overtime, PM = Parallel Machines, SC
= Setup Carryover, SD = Sequence Dependency, ST = Setup Time)

Table B.4: Decomposition and Aggregation Heuristics

Sambasivan and Schmidt (2002) solve a multi-plant CLSP with inter-plant


transfers by first solving SLULSPs and then applying a smoothing procedure,
which shifts production quantities across plants and periods to remove capacity
violations. The uncapacitated subproblems are reformulated as shortest-route
problems and then solved exactly.

One decomposition principle for the MLCLSP is based on the idea that (un-
less an item is produced on the same resource as its predecessor) the only link
42 Multi-Level Capacitated Lotsizing with Setup Carryover

between production levels is via secondary demand. The implication is that


lotsizing decisions on one level influence lotsizing on subsequent levels and
hence the arising costs. Thus, one way of reflecting these interdependencies
is via cost modifications. Blackburn and Millen (1984) suggest a set of solu-
tion algorithms to the MLCLSP for assembly processes. First, holding and
setup costs are modified based on the assumption that the order interval of a
component is always an integer multiple of its successor. Second, single-item
problems are solved from the end item and along the product structure. The
applied solution heuristics are capacitated versions of the Wagner-Whitin algo-
rithm, Part-Period Balancing, Silver-Meal, Economic Order Quantity, Periodic
Order Quantity and some modified versions.

Tempelmeier and Helber (1994) solve the MLCLSP by solving a sequence of


CLSPs. They propose four versions, which arise when combining two types
of constructing the CLSPs and two types of cost adjustments. The applied
heuristic is a modified Dixon-Silver heuristic. Helber (1994) extends the algo-
rithm to cover problems with setup times.

Özdamar and Bozyel (2000) propose among others a so-called hierarchical


planning approach, which is based on the aggregation of the demand of all
items in a period to one type demand. For the resulting single-item CLSP, the
weighted average of process times is used to compute the one aggregate pro-
cess time. Setups are not accounted for explicitly but via a setup allowance
percentage, which reduces capacity. Finally, individual lots are planned re-
specting the aggregate lotsizes by a filling procedure. As a good estimation of
the setup allowance is not trivial, they also propose an iterative approach, in
which it is updated with the help of the respective setup time in the previous
solution.

Boctor and Poulin (2005) solve a serial multi-stage problem with different
resources by making the assumption that lotsizes are the same on each stage.
The remaining CLSP is solved by a Greedy algorithm as described below.

Bourjolly et al. (2001) extend the heuristic proposed by Gopalakrishnan et al.


(2001) by applying it in a rolling horizon approach. Based on the idea of
Chapter B. Literature Review 43

dynamic recursion, first the problem for period 1, then 1 and 2, etc. are solved.
The respectively best schedule obtained is used to find the best schedule for
the next subproblem. Setup carryovers are introduced later by linking lots for
an item, if it is produced in two consecutive periods.

Quadt (2004) and Quadt and Kuhn (2005) use a rather sophisticated aggrega-
tion and decomposition approach to solve the lotsizing and scheduling problem
arising at the assembly stage of wafer fabrication. First, they decompose the
multi-level problem by identifying the bottleneck stage. For this stage only,
they solve a CLSPL with backorders and sequence-dependent setups on par-
allel machines by aggregating the parallel machines to one single machine and
products to product families. This so-called ‘heuristic model’ is based on in-
teger variables, which count the number of resources set up for a family. The
assumption is made that no further resource can be set up for a family, which is
partially scheduled on another resource. Setup carryovers can only be installed
on resources that produce only one family. To ensure that a feasible solution
is computed, the heuristic model is again embedded into a period-by-period
heuristic. In each period, the model is solved to optimality for the current and
all ongoing periods using CPLEX. A scheduling subroutine is used to detect
capacity violations in the respectively current period and possible surplus pro-
duction is postponed to the next period. Finally, this procedure may lead to
unsatisfied demand at the end of the planning horizon. For this reason the pro-
cedure ends with a backtracking heuristic, shifting the concerned production
volumes towards the beginning of the planning horizon. When the CLSPL has
been solved, the schedule is rolled out onto the remaining production stages
on the individual machines. Here, the average flow time and the inventory
for intermediate products are minimized. Finally, product families are dis-
aggregated into the individual products. These are subsequently scheduled
within the production slots from the schedule roll-out. Here, the objective is
to minimize setups without exceeding flow time.
44 Multi-Level Capacitated Lotsizing with Setup Carryover

B.3.4 Metaheuristics

Glover (1986) introduces the term ‘metaheuristics’ at first. Till this day, there
exists no agreed definition on the expression ‘metaheuristics’. However, some
characteristics common to all metaheuristic methods can be identified. Meta-
heuristics are non problem-specific strategies, which guide the search process.
They may make use of domain-specific knowledge in the form of heuristics
that are controlled by the upper level strategy. This results in flexibility and
the ability to handle large and complex problems. They are usually non-
deterministic and may incorporate mechanisms to avoid getting trapped in
confined areas of the search space. Furthermore, the search space may also
include infeasible solutions, where the violation of constraints is charged at
penalty costs.

Metaheuristics belong to the group of improvement procedures starting from


a given initial solution. The two basic principles that largely determine the
behaviour of a metaheuristic are intensification and diversification. The latter
enhances the exploration of the search space while the former allows for the
exploitation of the accumulated search experience.

Most of the metaheuristics use a direct solution representation, e. g. binary


variables for setups as well as continuous variables for production decisions.
Furthermore, some heuristics are restricted to finding the optimal binary grid.
Here, the respective production plan can be derived via methods of linear pro-
gramming, heuristic approaches or dual reoptimization, as described above.
Alternatively, an indirect encoding can be used, as was done e. g. by Kohlmor-
gen et al. (1999). They use a priority rule for selecting items to build a feasible
production plan.

Techniques, which constitute metaheuristic algorithms, range from simple Lo-


cal Search procedures to complex learning processes. Today’s more advanced
metaheuristics use search experience to guide the search. The heuristics pre-
sented in the following are:

• Local Search
Chapter B. Literature Review 45

• Simulated Annealing

• Tabu Search

• Variable Neighborhood Search

• Genetic Algorithms

• Ant Colony Optimization

Table B.5 gives an overview on papers dealing with metaheuristics for capaci-
tated lotsizing problems.

Reference NHS PB MOD


Salomon et al. (1993) SA, TS ML
Kuik et al. (1993) SA, TS ML
Salomon et al. (1993) SA, TS ML
Haase (1994) LS SL, SC
Helber (1994) SA, TS GA ML, ST
Haase and Kohlmorgen (1995) GA SL
Helber (1995) SA, TS GA ML, ST
Hindi (1996) TS SL
Haase (1998) LS SL, SC
Hung et al. (1999) GA SL, ST, BO
Kohlmorgen et al. (1999) GA SL
Barbarosoglu and Özdamar (2000) SA ML, ST
Hung and Chien (2000) SA, TS GA ML, ST, BO
Özdamar and Barbarosoglu (2000) SA ML, ST
Özdamar and Bozyel (2000) SA ML, ST, OV
Gopalakrishnan et al. (2001) TS SL, SC
Gutierrez et al. (2001) GA ML
Özdamar et al. (2002) SA, TS GA SL, ST, OV
Xie and Dong (2002) GA ML, ST, OV
Chen and Chu (2003) LS ML
Hindi et al. (2003) VNS SL, ST
Hung et al. (2003) TS SL, ST, BO
Berretta and Rodrigues (2004) MA ML, ST
Berretta et al. (2005) SA, TS ML, ST, LT
Pitakaso et al. (2006) ACO ML, ST

Abbreviations:
NHS Neighborhood Search (LS = Local Search, SA = Simulated Annealing, TS = Tabu
Search, VNS = Variable Neighborhood Search)
PB Population based Heuristics (ACO = Ant Colony Optimization, GA = Genetic
Algorithms, MA = Memetic Algorithms)
MOD Problem solved (ML = Multi-Level, SL = Single-Level, BO = Backorders, OV =
Overtime, LT = Lead Times, SC = Setup Carryover, ST = Setup Time)

Table B.5: Metaheuristics


46 Multi-Level Capacitated Lotsizing with Setup Carryover

B.3.4.1 Local Search

It is arguable whether Local Search (LS) itself is a metaheuristic. However, it


is described here as all procedures based on neighborhood search (e. g. Simu-
lated Annealing) follow the principals of LS. LS methods, also called iterative
improvement or hill-climbing methods, are based on the idea that at least a
local optimum can be found by starting from a given solution and iteratively
trying to find a better one in an appropriately defined neighborhood. Here,
the neighborhood is defined as the set of solutions, which can be obtained from
the current by performing simple modifications, called moves. In the field of
lotsizing, possible moves include lotshifting, lotsplitting, as well as elimina-
tion and creation of setup decisions. LS procedures may also vary according
to whether they explore the complete or only part of the neighborhood of a
solution and the stopping criterion applied.

Haase (1994) applies a stochastic backward oriented scheduling procedure


based on a randomized regret measure to solve the CLSPL. Haase (1998)
embeds the same method in a LS procedure, where the regret measure is de-
termined iteratively resulting in the best solution value.

Chen and Chu (2003) combine a LR approach with LS. In every iteration, the
feasible solution constructed during the LR phase is further improved on by
changing the values of two setup variables simultaneously during a following
LS.

As mentioned above, Simulated Annealing (SA), Tabu Search (TS) and Vari-
able Neighborhood Search (VNS) can be seen as intelligent extensions to LS.
They try to escape from local optima in order to find a better solution nearby
the global optimum. However, an appropriate stopping criterion is required,
when the algorithm is designed to overcome local optima.

B.3.4.2 Simulated Annealing

Simulated Annealing was proposed for combinatorial optimization by Kirk-


patrick et al. (1983) and can be seen as a combination of iterative improve-
Chapter B. Literature Review 47

ment and random walk. Neighboring solutions are randomly sampled and
the search is guided by an acceptance probability for worse solutions, which
decreases iteratively.

Kuik et al. (1993) combine their R&H with a SA approach for the MLCLSP
without setup times.

Helber (1995) investigates different cooling schemes for SA approaches to de-


termine a good setup pattern for the MLCLSP.12 Furthermore, he examines
the impact of different initial solutions on the overall solution quality. He
compares a plan generated by the heuristic of Tempelmeier and Helber (1994)
against a plan, where every product is produced in every period.

Further SA algorithms have been presented by Salomon (1991), Salomon et al.


(1993), Hung and Chien (2000), Barbarosoglu and Özdamar (2000), Özdamar
and Barbarosoglu (2000), Özdamar et al. (2002), Özdamar and Bozyel (2000)
and Berretta et al. (2005).

B.3.4.3 Tabu Search

Tabu Search was first introduced by Glover (1986). It is usually deterministic.


The distinct characteristic giving the name to TS is that it operates so-called
tabu lists. Tabu lists store information on executed moves to prevent their
reversal. The tabu lists’ length is decisive for the size of the section of the so-
lution space that is searched. More advanced algorithms apply adaptive tabu
lists, which depend on the quality of the visited solutions (improvement or de-
terioration). To prevent the exclusion of beneficial moves, so-called aspiration
criteria can be defined (e. g. if the corresponding solution is the best found so
far), which allow tabu moves to be executed.

Salomon et al. (1993) present a TS and SA approach to solve the subproblems


of their CG heuristic for the CLSP without setup times.

Hung et al. (2003) solve the CLSP with backlogging with a TS method using
a new candidate list strategy. Neighboring solutions are generated by minor
12 See also Helber (1994).
48 Multi-Level Capacitated Lotsizing with Setup Carryover

changes to the current setup pattern. The remaining LP is solved to optimality


and post-optimization informations are used to conduct the next move.

Gopalakrishnan et al. (2001) develop a TS heuristic for the CLSPL using


different move types for the sequencing and lotsizing decisions.

TS was also applied by Salomon (1991), Kuik et al. (1993), Helber (1994),
Helber (1995), Hindi (1996), Hung and Chien (2000), Özdamar et al. (2002),
and Berretta et al. (2005).

B.3.4.4 Variable Neighborhood Search

Variable Neighborhood Search was proposed in Hansen and Mlaydenović


(1999) and Hansen and Mlaydenović (2001). The process consists of the three
phases. These are shaking, Local Search and move. During the shaking phase,
a neighboring solution is randomly selected from each current solution. Sev-
eral neighborhoods exist and solutions are selected from an increasingly vast
neighborhood, if no improvement is made. Then, the neighboring solution
becomes the starting point of a LS method. The resulting solution is finally
compared to the current. If it is beneficial, the move is executed.

In their solution approach, Hindi et al. (2003) combine Lagrangean Relaxation


and VNS. Starting with the solution obtained by the LR, a smoothing heuristic
similar to that presented by Trigeiro et al. (1989) is used to eliminate capacity
infeasibility and to improve the incumbent best solution during the VNS.

B.3.4.5 Genetic Algorithms

Genetic Algorithms (GA) belong to the category of Evolutionary Algorithms


(EA). They are population-based and incorporate a learning component via
the recombination of solutions. Other methods of this kind are Evolution-
ary Programming (EP) and Evolutionary Strategies (ES). However, they have
rarely been used for lotsizing problems and are thus not of interest here.

GAs are inspired by the principles of natural selection. They evolve a pop-
Chapter B. Literature Review 49

ulation of individuals encoded as chromosomes by creating new generations


of offsprings through an iterative process until some convergence criteria or
conditions are met. The best chromosome is then decoded. This provides the
corresponding solution. The underlying reproduction process is mainly aimed
at improving the fitness of individuals, i. e. the costs to be minimized while
exploring the solution space. The algorithm applies stochastic operators such
as selection, crossover and mutation on an initially random population in order
to compute a new generation of individuals.

Özdamar and Barbarosoglu (1999) introduce a hybrid algorithm, which incor-


porates SA and GA into an LR scheme.

Kohlmorgen et al. (1999) develop a parallel GA for the CLSP. A solution is


represented by a string of real values, which control a heuristic method for
generating a production plan.

Further Genetic Algorithms have been proposed for lotsizing by Helber (1994),
Helber (1995), Haase and Kohlmorgen (1995), Hung et al. (1999), Hung and
Chien (2000), Özdamar and Bozyel (2000), Gutierrez et al. (2001), Özdamar
et al. (2002) and Xie and Dong (2002).

Other Evolutionary Algorithms similar to GA are Memetic Algorithms (MA).


Basically, they combine LS with crossover operators. Although population
based, Memetic Algorithms are not restrained by a biological metaphor.
Rather, the aim is to exploit all available knowledge about the studied prob-
lem. Knowledge such as optimal solution properties, heuristics and truncated
exact algorithms is available to all individuals. However, they can rely on
different techniques for its exploitation.

Berretta and Rodrigues (2004) propose a MA for the MLCLSP based on the
work of França et al. (1997).

B.3.4.6 Ant Colony Optimization

Ant Colony Optimization techniques (ACO) are inspired by the real world’s be-
havior of ant colonies. During their search for food, ants lay down pheromone
50 Multi-Level Capacitated Lotsizing with Setup Carryover

trails. Following ants usually choose the trail with the highest concentration
of pheromone. The reason is that satisfactory paths possess a higher concen-
tration of pheromone than unsatisfactory ones.

Pitakaso et al. (2006) combine an Ant Colony Optimization algorithm with


a F&R heuristic for the MLCLSP. During the F&R heuristic only a subset
of the constraints and variables are considered relating to a reduced num-
ber of products and periods. The corresponding MIP is solved to optimality
and the binary variables are fixed. During the ACO part of the heuristic,
pheromone concentrations, which have been built up during previous itera-
tions, are used to single out promising subsets for the next iteration. Subse-
quently, the pheromone information is updated.

B.3.5 Greedy Heuristics

Finally, a set of rather intuitive heuristic algorithms are the Greedy Heuristics
(GH). They increase lotsizes successively to achieve cost savings.

Greedy Heuristics usually consist of a feasibility routine and a priority index to


select the best candidate. The former ensures feasibility of the overall schedule,
i. e. that all demand is served without backlogging and capacity violation. The
latter serves as a cost criterion to manipulate scheduling decisions.

Two types of feasibility routines can be distinguished: feedback mechanisms


and look-ahead mechanisms. The former are usually used in backward routines
and push infeasible production to earlier periods. The look-ahead mechanisms,
normally used in forward routines, compute the minimum inventory needed to
avoid future capacity violations a priori and lots are scheduled accordingly.

The priority index is often some criterion taken from uncapacitated dynamic
lotsizing heuristics. These criteria in turn stem from properties of the optimal
production quantity in case of uncapacitated lotsizing with constant demand,
e. g. Silver Meal (SM), Least Unit Cost (LUC), Groff (GR) and Part Period
Balancing (PPB). In this way, the Silver Meal criterion (Silver and Meal (1969)
and Silver and Meal (1973)) is based on the fact that for the respective optimal
Chapter B. Literature Review 51

production quantity the mean costs per time unit are minimal. The Least Unit
Cost Criterion is respectively based on the fact that the mean costs per unit are
minimal. The Groff criterion (Groff (1979)) is based on the fact that marginal
holding costs per time unit equal marginal setup costs per time unit. Finally,
the Part Period Balancing criterion (DeMatteis (1968)) states that additional
holding costs to cover another periods demand equal setup costs.

Reference TGR DIR FEAS CC MOD


Eisenhut (1975) C F (FB) PPB SL
van Nunen and Wessels (1978) I (WW) B 1P CPP SL, ST, OV
Lambrecht and Vanderveken (1979) C F FB SM SL
Dixon and Silver (1981) C F LA SM SL
Dogramaci et al. (1981) C F LA SM SL
Dogramaci et al. (1981) I (L4L) G SP LTC SL
Karni and Roll (1982) I (WW) G SP LTC SL
Maes and van Wassenhove (1986c) C F LA SM, LUC, LTC, SL
PPB
Günther (1987) I (L4L) F LA CPP (G) SL
Selen and Heuts (1989) I (L4L) F LA CPP (G) SL
Trigeiro (1989) I (L4L) F, B SP CPP (mod SM) SL, ST,
(OV)
Clark and Armentano (1995) I (WW) F, B SP CPO ML, ST
França et al. (1997) I (WW) F, B SP CPO ML, ST
Özdamar and Barbarosoglu (1999) I (L4L) G MC SL
Gupta and Magnusson (2005) C F FB CD SL, ST, SC
Boctor and Poulin (2005) I (L4L) F FB PPB, MC, AC SL, ST,
(OV), MM

Abbreviations:
TGR Type of Greedy Algorithm (C = Constructive, I = Improving, L4L = Lot-for-Lot,
WW = Wagner-Whitin)
DIR Direction of Greedy Algorithm (B = Backward, F = Forward, G = Considering the
complete Schedule at each Step)
FEAS Type of feasibility Check (1P = Lots are respectively shifted back one Period - Slack
Capacity is shifted forward, FB = Feedback, LA = Look-AheadSP = Smoothing
Procedure)
CC Cost Criterion for Choice of Item (AC = Exact Average Cost Savings, CD = Cu-
mulative Demand, CPO = Cost per Overtime Reduction, CPP = Cost per Setup
and Production Time, G = Groff, LTC = Least Total Cost, LUC = Least Unit
Cost, MC = Marginal Costs, PPB = Part Period Balancing, SM = Silver-Meal)
MOD Problem solved (ML = Multi-Level, SL = Single-Level, MM = Multi-Machine, OV
= Overtime, SC = Setup Carryover, ST = Setup Time, )

Table B.6: Greedy Heuristics

A number of algorithms apply improvement steps, when the Greedy Heuristic


itself has terminated. These include enforcing the extreme flow conditions, lot
eliminations and lot merging or interchange.
52 Multi-Level Capacitated Lotsizing with Setup Carryover

Table B.6 gives an overview.

A distinction is made between GAs starting from scratch and working period-
by-period and those starting from a given initial solution. Thus, the two types
of GAs are:

• Constructive Greedy Heuristics

• Improvement Heuristics

Constructive Greedy Heuristics – also referred to as single resource heuristics,


common-sense or specialized heuristics – generate a solution from scratch by
adding components to an initially empty partial solution, until the solution
is complete. Most constructive GHs work period-by-period either forward or
backward. They are myopic, in that at each step the current lotsize is in-
creased ignoring future costs. The first heuristic of this type was introduced
by Eisenhut (1975). However, the use of a feasibility routine is only suggested,
rather than implemented here. Further heuristics of this type include Lam-
brecht and Vanderveken (1979), Dixon and Silver (1981), Dogramaci et al.
(1981) and Drexl and Haase (1995).

Özdamar and Barbarosoglu (1999) solve the SLULSP type subproblems of the
Lagrangean relaxation algorithm, respecting an upper bound on capacity, with
the help of a greedy heuristic.

Maes and van Wassenhove (1986c) suggest a so-called ABC heuristic. It con-
sists of seventy-two alternative algorithms based on the combination of (a) six
a priori orderings of items, (b) four cost criteria and (c) three search strate-
gies. They suggest applying various combinations and then choosing the best
solution.

Gupta and Magnusson (2005) solve the CLSPL with setup times. First, they
generate a feasible solution to the CLSP without setup times with the help
of a GH. Subsequently, setup times are introduced under the assumption that
a setup carryover is installed for each period and a smoothing procedure is
applied. Finally, a backward oriented improvement procedure is applied.
Chapter B. Literature Review 53

Improvement heuristics, on the other hand, generate a better feasible solution


from a usually infeasible inferior starting solution by simple shifting routines.
Heuristics of this type have been presented amongst others by van Nunen and
Wessels (1978), Günther (1987), Selen and Heuts (1989) and Trigeiro (1989).
Selen and Heuts (1989) modify the priority index used by Günther (1987) to
account for setup time savings in case a complete lot is shifted.

Boctor and Poulin (2005) solve a CLSP with multiple capacity restrictions. It
arises, when a serial multi-stage system is aggregated to a single-stage system
by the assumption that lotsizes are the same on each stage. They improve
on a lot-for-lot schedule. First, a feasible schedule is aimed to be achieved in
a forward pass. Through all stages, residual capacity after meeting demand
is calculated. If it is positive, the lot is further increased, if it is negative,
production is shifted into earlier periods. Finally, the solution is improved
improved by by shifting complete lots backward (lot merging).

Dogramaci et al. (1981) develop an algorithm they call ‘four-step algorithm’,


by which they improve on a lot-for-lot schedule. The four steps consist of:

1. lot merging (backward shifting of complete lots) to reduce setup costs


(the lots leading to the overall greatest cost decrease are chosen) without
incurring overtime,

2. normalizing the schedule (backward shifting) to meet capacity restric-


tions,

3. repeating the first step and

4. improving on the solution by avoiding holding costs (forward shifting)


while respecting capacity limitations.

Karni and Roll (1982) initially solve the SLULSP optimally for each item.
Then, they apply an algorithm similar to Dogramaci et al. (1981).

Clark and Armentano (1995) solve the MLCLSP. While the starting routine
computes a solution to the MLULSP by solving a series of SLULSPs along
the product structure, the smoothing procedure shifts production backward
54 Multi-Level Capacitated Lotsizing with Setup Carryover

and forward to obtain a feasible schedule. The priority rule is based on ad-
ditional costs (including penalty costs for the overall capacity violations) over
the incurred reduction in capacity violation. Penalty costs for capacity re-
duction are gradually increased at each shifting cycle. França et al. (1997)
extend the algorithm by adding improvement and merging. The smoothing
procedure again shifts production quantities forward and backward, but only
if this decreases costs and without violating the capacity restriction. Merging
shifts lots to periods with an existing setup regardless the capacity violation.
Smoothing, improvement and merging are repeated alternately until a given
number of iterations is reached.

Maes and van Wassenhove (1986a) and Maes and van Wassenhove (1986b)
compare the heuristics of Lambrecht and Vanderveken (1979), Dixon and Silver
(1981) and Dogramaci et al. (1981), when applied on static and rolling horizon
problems. Salomon et al. (1993) suggest a modified GH to solve the remaining
LP problem for a given setup pattern.
Chapter C

Test Instances

In order to evaluate the different model formulations presented in chapter D, as


well as the parameter combinations and the performance of the overall heuristic
presented in chapter F, we introduce a set of new test instances. Similar to e. g.
Derstroff (1995) and Sürie (2005b) we generated various differing instances as
to diminish the effect of the characteristics of the test set on the results.

In the context of dynamic multi-level capacitated lotsizing problems with setup


times, the relevant distinguishing characteristics are:1

1. the size of the problem (i. e. the number of items, the number of re-
sources, the number of production levels and the length of the planning
horizon),

2. the product and the process structures,

3. the development of demand in time,

4. the length and distribution of setup times,

5. the ratio of setup and holding costs,


1 Compare Derstroff (1995), page 90.

55

© Springer Fachmedien Wiesbaden GmbH, part of Springer Nature 2008


L. Buschkühl, Multi-Level Capacitated Lotsizing with Setup Carryover,
Edition KWV, https://doi.org/10.1007/978-3-658-24034-9_3
56 Multi-Level Capacitated Lotsizing with Setup Carryover

6. the capacity utilization profiles and finally

7. the number of parallel machines.

For our test sample, these characteristics will be described in the remainder
of this chapter.

C.1 Problem Sizes

In the following, the number of production levels will equal the number of
resources. Hence, the problem size is made up of the number of items, the
number of resources and the number of periods. We will consider the six
combinations depicted in table C.1.

Class ] Products ] Resources ] Periods ] Instances


1 10 3 4 480
2 10 3 8 480
3 20 6 8 240
4 20 6 16 240
5 40 6 8 240
6 40 6 16 240

Table C.1: Problem Sizes of the test instances

C.2 Product and Process Structures

Four types of product structures are generally distinguished: linear, divergent,


assembly and general.2 In serial product structures, every item has at most
one predecessor and at most one successor. In divergent (assembly) product
structures, each item has at most one predecessor (successor), but can have an
unlimited number of successors (predecessors). In general product structures
finally, there is neither a limit on the number of predecessors nor on the number
of successors. Hence, the general product structure is the most complex and
the other three can be seen as simplifications of it.
2 Compare Derstroff (1995), page 21.
Chapter C. Test Instances 57

For our tests, we will consider assembly and general product structures. Fur-
thermore, we choose to set the production coefficient akj to 1 for all items k
and j, where j is a direct successor of k.

As regards the process structures, cyclic and acyclic production processes can
be distinguished. In the latter case, items are produced on a different resource
than their predecessors and their successors. In cyclic process structures, how-
ever, some parents are produced on the same resource as their component. In
the following, we will consider both types of production processes.

This leads to four possible combinations of product and process structures.

• general and acyclic

• general and cyclic

• assembly and acyclic

• assembly and cyclic

The product and process structures are given for 10 items and 3 resources in
figure C.1.

1 2 3 1 A
A A A A

4 5 6 7 2 3 4 B
B B B B B B B

8 9 10 5 6 7 8 9 10 C
C C C C C C C C C

1 2 3 1 A
A A B A

4 5 6 7 2 3 4 B
A B C C C B B

8 9 10 5 6 7 8 9 10 C
B C C C C B B C C

Figure C.1: Product and process structures for 10 items and 3 resources
58 Multi-Level Capacitated Lotsizing with Setup Carryover

The product and process structures for 20 items and 6 resources are depicted
in figure C.2.

1 1 A
A A

2 3 2 3 B
B B B B

4 5 6 7 4 5 6 7 C
C C C C C C C C

8 9 10 8 9 10 D
D D D D D D

11 12 13 14 15 11 12 13 14 15 16 E
E E E E E E E E E E E

16 17 18 19 20 17 18 19 20 F
F F F F F F F F F

1 1 A
A A

2 3 2 3 B
B B B C

4 5 6 7 4 5 6 7 C
C C C C C C D C

8 9 10 8 9 10 D
F C D D D E

11 12 13 14 15 11 12 13 14 15 16 E
F F E E D E E E D F F

16 17 18 19 20 17 18 19 20 F
F F F F E F F E F

Figure C.2: Product and process structures for 20 items and 6 resources

Finally, the process and product structures for 40 items and 6 resources are
given in figure C.3.
Chapter C. Test Instances 59

1 2 3 4 5 6 1 A
A A A A A A A

7 8 9 10 11 12 2 3 4 B
B B B
B B B B B B

13 14 15 16 17 18 19 5 6 7 8 9 C
C C C C C
C C C C C C C

20 21 22 23 24 25 26 10 11 12 13 14 15 16 D
D D D D D D D
D D D D D D D

27 28 29 30 31 32 17 18 19 20 21 22 23 24 25 26 27 28 29 E
E E E E E E E E E E E E E E E E E E E

33 34 35 36 37 38 39 40 30 31 32 33 34 35 36 37 38 39 40 F
F F F F F F F F F F F F F F F F F F F

1 2 3 4 5 6 1 A
A A A A A A A

7 8 9 10 11 12 2 3 4 B
C C B C B B C B B

13 14 15 16 17 18 19 5 6 7 8 9 C
C C C C D C C C C C C C

20 21 22 23 24 25 26 10 11 12 13 14 15 16 D
E D C D D D E D D E D D E D

27 28 29 30 31 32 17 18 19 20 21 22 23 24 25 26 27 28 29 E
F E D D E F E E E E F F E E E F F E E

33 34 35 36 37 38 39 40 30 31 32 33 34 35 36 37 38 39 40 F
F F F E E F F F F F F F F F F F F F F

Figure C.3: Product structures and process structures for 40 items and 6
resources

C.3 Demand Profiles

External demand is assumed to be normally distributed. The distribution is


truncated, such that negative values were set to zero. To generate demand,
we used the ‘Mersenne Twister’ as described in Matsumoto and Nishimura
(1998). The means for the respective end items and the components are given
in table C.2.

Respectively one demand series was computed for coefficients of variation of


0.2, 0.5 and 0.8. They were chosen as to reflect the influence of the volatility
of demand.
60 Multi-Level Capacitated Lotsizing with Setup Carryover

] Items Mean demand of end items Mean demand of components


10 (general) 30 (1), 70 (2), 100 (3) 20
10 (assembly) 100 20

20 (general) 100 30
20 (assembly) 80 30

40 (general) 50 (1), 60 (2), 70 (3), 80 (4), 90 (5), 100 (6) 15


40 (assembly) 90 15

Table C.2: Mean demand

For ease of representation and to ensure feasibility, we set the initial inventory
to 20 for all items. Furthermore, for all predecessor items, preproduction xk0
was computed to match the corresponding demand from all direct successors
in the first period:
X
xk0 = akj · Dj1 (C.1)
j∈Nk

The total demand Dkt is recursively3 computed as:


X
Dkt = dkt + akj · Dj,t+1 (C.2)
j∈Nk

C.4 Setup Time Profiles

] Items Profile trk = 5 trk = 10 trk = 20


10 1 1, 2, 3 4, 5, 6, 7 8, 9, 10
10 2 8, 9, 10 4, 5, 6, 7 1, 2, 3

20 1 1, . . . , 6 7, . . . , 14 15, . . . , 20
20 2 15, . . . , 20 7, . . . , 14 1, . . . , 6

40 1 1, . . . , 13 14, . . . , 27 28, . . . , 40
40 2 28, . . . , 40 14, . . . , 27 1, . . . , 13

Table C.3: Setup time profiles

3 from the end items down to the components


Chapter C. Test Instances 61

Setup times are set to 5, 10 and 20 time units in order to reflect the different
impacts of setup time. They are allocated to the different items such that
respectively two different setup time profiles are created for each class. The
individual setup time profiles are shown in table C.3.

C.5 Setup and Holding Cost Ratios

When setup and holding costs are considered, the lotsizing problem arises from
the opposing nature of these two cost components. While setup costs decrease
with the lotsize, the holding costs increase and vice versa. Thus, for the nature
of the problem, not the absolute values of the cost components are decisive,
but their ratio. For ease of representation, we set the echelon holding cost
factor ek = 1 for all k. Then, the setup costs result from the target ratio.

We will follow Helber (1994) and Derstroff (1995) in expressing the target cost
ratio via the time between orders (TBO), which results from a given ratio in
the static lotsizing model. With the total demand given in equation (C.2), the
average demand of an item k is computed as:
T
X
Dk = Dkt (C.3)
t=1

The time between orders is calculated as:


s
2 · sk
T BOk = (C.4)
D k · ek

Therefore, for a given TBO profile, the setup costs for item k are calculated
as:

sk = 0.5 · ek · Dk · (T BOk )2 (C.5)

Time between orders are set to 1, 2 and 4. For instances with 10 items (classes
1 and 2) four different TBO profiles are applied. Three profiles consist of the
62 Multi-Level Capacitated Lotsizing with Setup Carryover

same time between orders for all items. The fourth sets the same time between
orders for all items on the same production level. For the instances with 20
and 40 items, we generated two TBO profiles, respectively. The first consists
of a TBO of 2 for all items. The second again consists of different TBOs for
items produced on different levels. The TBO profiles are given in table C.4.

] Items Profile TBO = 1 TBO = 2 TBO = 4


10 1 1, . . . , 10
10 2 1, . . . , 10
10 3 1, . . . , 10
10 (assembly) 4 1 2, . . . , 4 5, . . . , 10
10 (general) 4 1, . . . , 3 4, . . . , 7 8, . . . , 10

20 1 1, . . . , 20
20 2 1, . . . , 3 4, . . . , 10 11, . . . , 20

40 1 1, . . . , 40
40 (assembly) 2 1, . . . , 4 5, . . . , 16 17, . . . , 40
40 (general) 2 1, . . . , 6 7, . . . , 19 20, . . . , 40

Table C.4: TBO profiles

C.6 Capacity Utilization Profiles

To vary the characteristics of the test instances, we install different capacity


utilization profiles. The absolute capacity is hence computed as to achieve the
desired target utilization. We define capacity utilization, Um , of any resource
m as:
T
X X
(trk · γkt + tbk · qkt )
k∈Km t=1
Um = T
(C.6)
X
bm
t
t=1

The problem is, that neither the production quantities qkt nor the setup de-
cisions γkt are known in advance. Therefore, they have to be approximated
based on the exogenous data.

For ease of representation, the production time is set to tbk = 1 for all k.
Chapter C. Test Instances 63

As Kimms (1997) points out, it is not a good idea to calculate an overall capac-
ity average. The reason is that neglecting the dynamic nature of demand may
lead to feasibility problems in the early periods. Thus, the minimum average
capacity consumption through production times on resource m in periods t̂ to
t is computed as:4
t
X X
tbk · Dkτ
k∈Km τ =t̂
Dmt̂t = (C.7)
t − t̂ + 1

for m ∈ M do

t=1

while t ≤ Lm do
2 3
X 1 7
bm = 6 (tb · D + tr ) ·
t 6 k kτ k
Um 7
6k∈Km 7
t=t+1

wend

while t ≤ T do

t̂ = t

Dm = 0

while Dm ≤ D mt̂t and t ≤ T do

Dm = D mt̂t

t=t+1

wend

τ = t̂

while τ ≤ t − 1 do
20 1 3
X 1 7
bm 6
:= 6@Dm + trk A ·
τ
6 k∈Km
Um 7
7
τ =τ +1

wend

wend

end for
Algorithm 1: Generation of the capacity matrix

4 The total demand Dkτ is again computed according to equation (C.2).


64 Multi-Level Capacitated Lotsizing with Setup Carryover

During the cumulated lead time Lm = max Lk the minimum average capacity
k∈Km
might not be sufficient as lotsizing is limited by predecessor item availability.
Hence, in these first periods, capacity is computed in each period individually.

The resulting capacity limit matrix is lined out it algorithm 1.5

Like Derstroff (1995), we consider five capacity profiles, which result from
different combinations of the possible capacity utilizations of 50%, 70% and
90% (see table C.5).

] Resources Profile Um = 50% Um = 70% Um = 90%


3 1 A, B, C
3 2 A, B, C
3 3 A, B, C
3 4 A B C
3 5 C B A

6 1 A,. . ., F
6 2 A,. . ., F
6 3 A,. . ., F
6 4 A, D B, E C, F
6 5 A, B C, D E, F

Table C.5: Capacity profiles

C.7 Number of Parallel Machines

To test the performance of the heuristic in the case of parallel machines, the
two profiles of parallel machines given in table C.6 are applied.

] Resources Profile Nm = 1 Nm = 2 Nm = 4
3 1 A, B, C
3 2 A B C

6 1 A,. . ., F
6 2 A, D B, E C, F

Table C.6: Number of parallel machines

The profiles are used on subsets of classes 2, 4 and 6. These includes setup
time profile 1 and TBO profile 2 (4 for class 2).
5 See Kimms (1997), page 84.
Chapter D

Model Formulations

In this chapter we will present model formulations for the MLCLSPL with sin-
gle setup carryover, with consecutive setup carryover and with parallel (iden-
tical) machines.

In section D.1, we will introduce the MLCLSPL with single setup carryover
and give the echelon formulation (MLCLSPLe ). This formulation is used for
the Lagrangean heuristic presented in chapter E.

We use CPLEX to compute benchmark results for the heuristic in chapter F.


As stated in section B.3.1.1.1, the standard I&L formulation of the MLCLSP
yields rather poor lower bounds, when a B&B algorithm is applied. The
tests given at the end of this section show that also for the MLCLSPL the
lower bounds of the echelon formulation are rather poor. The reformulations
based on the SR representation and the SPL representation prove to be much
stronger. Thus, we will describe the SR and SPL reformulations,1 which are
used to enhance the performance of the B&B algorithm applied by CPLEX.

In section D.2, the additional restrictions for consecutive setup carryovers are
given. They are the same for the echelon formulation used by the heuristic and
1 Compare section B.3.1.1.1.

65

© Springer Fachmedien Wiesbaden GmbH, part of Springer Nature 2008


L. Buschkühl, Multi-Level Capacitated Lotsizing with Setup Carryover,
Edition KWV, https://doi.org/10.1007/978-3-658-24034-9_4
66 Multi-Level Capacitated Lotsizing with Setup Carryover

for the SPL formulation, which is applied by CPLEX.2 Again, we present two
sets of constraints, based on the standard formulation and an extended formu-
lation presented by Sürie and Stadtler (2003) along with their computational
evaluation.

Finally, in section D.3, the constraints for parallel machines are given for the
SPL formulation only. The heuristic applies a ‘heuristic model’, 3 in which
parallel resources are aggregated to one resource type. This will be described
in chapter E. The computational results are given for single and consecutive
setup carryover.

D.1 The Multi-level Dynamic Capacitated


Lotsizing Problem with Linked Lotsizes

In accordance with the capacitated lotsizing problems presented in chapter B,


the MLCLSPL presented in the following is based on the following assump-
tions:

• K items can be produced on M resources. There is a unique assignment


of each item to a specific resource. All items assigned to the same re-
source are interdependent in that they compete on its scarce capacity.
Furthermore, input-output relationships between some of the items exist
(multi-level production).

• As described below, when components are needed for the production of


a successor item, the corresponding derived demand arises before the
end of a period. To ensure feasibility, hence a constant lead time of one
period is accounted for.

• The planning horizon T is finite and divided into discrete periods


(1,. . . ,T ).
2 In the case of single setup carryovers, the SR and the SPL reformulations yield sim-
ilar results. We chose to implement only the SPL formulation for consecutive setup
carryovers.
3 The approach is similar to the one presented in Quadt (2004).
Chapter D. Model Formulations 67

• The number of items producible in the same period is limited only by


the total number of items K.

• The objective of the model is to minimize the sum of inventory and setup
costs.

• Setup costs are considered as the out of pocket costs arising from a
changeover. Opportunity costs for lost production time during a setup
will not be regarded, as setup times are directly included in the model.
Inventory costs consist of all quantity-dependent cost factors. Produc-
tion costs are assumed to be constant over time and are thus neglected.

• Available capacity, production times, setup costs and times, as well as


demand are exogenous to the model and assumed to be deterministic.

• The demand is dynamic. In each period, it has to be met without short-


ages.

• Resource capacity is given and cannot be extended, i. e. there is no over-


time option. Setup and production times are considered. They reduce
capacity in the periods they occur. Other time consuming activities,
such as transportation times are ignored.

• Setups are assumed to be independent of the sequence of production.

• A setup state can be carried to period t + 1, only if the corresponding


setup operation is performed period t. This implies that we leave out
the case, in which a setup state could be preserved over two periods, if
no other item was produced in the middle period.

We assume that, as for the CLSP, external demand arises at the end of a
respective period. Thus, all items produced in a given period t are available
to satisfy the external demand in that period. However, the derived demand
in period t arises from the production of successor items, which starts at some
point before the end of t.

Examples are given in figure D.1. If the predecessor and the successor item are
produced on two different resources in the same period, sequential production
68 Multi-Level Capacitated Lotsizing with Setup Carryover

of the two lots may not be possible, even if the capacity constraints are not
violated (resources A and B). Also, when the setup state is determined at
the beginning and the end of a period, it may be necessary to produce the
component as the final item (resource C) or the successor item as the first
item of a period (resource D). In both cases, secondary demand cannot be
fulfilled in the same period, even if both items are produced on the same
resource.

A tr2 tb2 ⋅ q21


1

B tr1 tb1 ⋅ q11

C tr3 tb3 ⋅ q31 tr4 tb4 ⋅ q 41 tb4 ⋅ q 42


4

D tb6 ⋅ q 61 tr5 tb5 ⋅ q51


6

0 1 t

Figure D.1: Example of infeasible production schedules without capacity


violation

To ensure feasibility also in these cases, it is sufficient to produce the prede-


cessor item in the respectively precedent period. Thus, we will set the lead
time for the derived demand to 1. Therefore, ykt and qkt are available at the
end of period t to serve external demand from the same period and derived
demand from the succeeding period.

D.1.1 Inventory & Lotsize Formulation

The basic model formulation of the MLCLSPL can thus be written as:
Chapter D. Model Formulations 69

Model MLCLSPL
K X
X T
min Z = (sk · γkt + hk · ykt ) (D.1)
k=1 t=1

subject to
X
yk,t−1 + qkt − ykt = dkt + akj · qj,t+1 ∀k, t = 0, . . . , T (D.2)
j∈Nk

X
(tbk · qkt + trk · γkt ) ≤ bm
t ∀m, t = 1, . . . , T (D.3)
k∈Km

qkt ≤ (γkt + ωkt ) · Ω ∀k, t = 1, . . . , T (D.4)

X
ωkt ≤ 1 ∀m, t = 1, . . . , T (D.5)
k∈Km

ωkt ≤ γk,t−1 ∀k, t = 2, . . . , T (D.6)

ωk1 = 0 ∀k (D.7)

yk,−1 = ybk ∀k (D.8)

qkt , ykt ≥ 0 ∀k, t = 1, . . . , T (D.9)

γkt , ωkt ∈ {0, 1} ∀k, t = 1, . . . , T (D.10)

The model formulation differs from the MLCLSP presented in section B.1.2 in
two ways. First, setup carryovers are introduced in constraints (D.4). There-
fore, a positive production quantity enforces a setup activity, only if the setup
70 Multi-Level Capacitated Lotsizing with Setup Carryover

state was not preserved from the previous period. As in the CLSPL presented
in section B.1.3, at most one setup state can be carried over on each resource
(See constraints (D.5)). However, in this basic model formulation, we allow
for a setup carryover, only if a corresponding setup activity took place in the
previous period. Thus, consecutive setup carryovers are not considered. As
Sox and Gao (1999) point out for the CLSPL, for a large class of problems the
optimal solutions of this restricted problem will be close to the optimal solu-
tions of the MLCLSPL with any number of consecutive setup carryovers per
item. The logic is that in situations, where several items have to be produced
on the same resource in most periods, consecutive setup carryovers cannot be
installed. At the same time, introducing consecutive setup carryovers increases
the according computational effort substantially.

Second, as described above, we consider a constant lead time of one period for
secondary demand. Consequently, production of successor items cannot take
place in the first period of the planning horizon, unless the initial inventories
of their components are sufficiently large. Hence, the inventory balance con-
straints (D.2) are considered from period 0 to link the production quantities of
successor items in period 1 to the inventory of their components in period 0.
Accordingly, initial inventories are defined in period −1 by constraints (D.8).

D.1.2 Echelon Formulation

We will follow Billington et al. (1983), Billington et al. (1986) and Derstroff
(1995) in eliminating the inventory variable ykt from the model. The inventory
of an item k available at the end of period t can be computed as the initial
inventory plus cumulative production less cumulative demand:

t
X t
X X
ykt = (qkτ − dkτ ) − akj · qj,τ +1 + ybk (D.11)
τ =1 j∈Nk τ =0

With the new interpretation of inventory, the sum of inventory holding costs
Chapter D. Model Formulations 71

is calculated as:4

 
K X
X T K X
X T t
X t
X X
hk · ykt = hk ·  (qkτ − dkτ ) − akj · qj,τ +1 + ybk 
k=1 t=1 k=1 t=1 τ =1 j∈Nk τ =0
(D.12)

Equation (D.12) consists of the constant part:


K XT
à t
!
X X
hk · ybk − dkτ (D.13)
k=1 t=1 τ =1

and the variable part:


 
XK XT t
X t
X X
hk ·  qkτ − akj · qj,τ +1  (D.14)
k=1 t=1 τ =1 j∈Nk τ =0

(D.13) consists only of exogenous data and is thus the same for all possible
solutions to the model. The value of (D.14) depends on the specific solution.
Thus, we will focus on equation (D.14) as to find a more convenient formula-
tion.

First, rearranging equation (D.14) leads to:


 
XK X T t
X X X t+1
hk ·  qkτ − akj · qjτ 
k=1 t=1 τ =1 j∈Nk τ =1

 
K X
X T X
t X K X X
X T
= hk · qkτ − hk · akj · qjτ − (hk · akj · qj,t+1 )
k=1 t=1 τ =1 j∈Nk k=1 j∈Nk t=1

With qT +1 = 0, this in turn leads to:


 
XK XT X t X K X X
X T
hk · qkτ − hk · akj · qjτ  − (hk · akj · qjt )
k=1 t=1 τ =1 j∈Nk k=1 j∈Nk t=2

4 See Derstroff (1995), page 71-72.


72 Multi-Level Capacitated Lotsizing with Setup Carryover

As all items and all periods are considered, changing from the perspective of
the predecessor to that of the successor results in:5
   
XK X T X t X K X
X T X
qkτ · hk − hj · ajk  −  hj · ajk  · qkt (D.15)
k=1 t=1 τ =1 j∈Vk k=1 t=2 j∈Vk

Let ek be the marginal holding cost coefficient for item k. Interpreting holding
costs as costs of fixed capital, the difference between full holding costs and
marginal holding costs is that the former account for the complete value of
a product, while the latter only account for its value added. The marginal
holding cost coefficient can thus be derived from the full holding cost coefficient
simply by subtracting the cumulative value of its components:6
X
ek = hk − ajk · hj
j∈Vk

With this notion of the marginal holding cost coefficient equation (D.15) dis-
solves to:
K X
X T X
t K X
X T
ek · qkτ − (hk − ek ) · qkt (D.16)
k=1 t=1 τ =1 k=1 t=2

P
K P
T
The additional component − (hk − ek ) · qkt reduces holding costs. The
k=1 t=2
logic behind this is that the production of a successor item reduces inventory of
its components one period earlier than it adds to its own inventory. Through-
out the lead time, the respective quantity of the components is thus regarded
as work in process inventory and does incur holding costs.7

Throughout the planning horizon, cumulative production equals cumulative


total (external and secondary) demand, when there is no inventory at the end
5 Compare Derstroff (1995), page 72.
6 Obviously, for all items without predecessors the marginal holding cost coefficient equals
the full holding cost coefficient.
7 Note that the only reason for the earlier production of predecessor items is that derived
demand arises before the end of a period. Remember that this not only effects a reduc-
tion of holding costs in equation (D.16), but also an increase in holding costs via initial
inventory (see equation (D.13)) and earlier production of predecessors.
Chapter D. Model Formulations 73

of the planning horizon:


T
X T
X
qkt = Dkt (D.17)
t=1 t=1

With positive initial inventories, cumulative total demand is computed as fol-


lows:

Dkt = 
 X t−1
X X 
max 0, dkt + akj · Dj,t+1 − max{0, ybk − (dkτ + akj · Dj,τ +1 )}
 
j∈Nk τ =0 j∈Nk

(D.18)

Using (D.17), the cost reduction in (D.16) can be rearranged to:


K X T K
à T !
X X X
(hk − ek ) · qkt = (hk − ek ) · Dkt − qk1
k=1 t=2 k=1 t=1
(D.19)
K X
X T K
X
= (hk − ek ) · Dkt − (hk − ek ) · qk1
k=1 t=1 k=1

Again, the first part of equation (D.19) is constant and the second variable.
Adding the former to (D.13) yields:
K XT
à t
! K X T
X X X
hk · ybk − dkτ − (hk − ek ) · Dkt
k=1 t=1 τ =1 k=1 t=1
(D.20)
K X
X T K X
X T
=− hk · ((T − t + 1) · dkt − ybk ) − (hk − ek ) · Dkt
k=1 t=1 k=1 t=1

Replacing the cost reduction component in equation (D.15) by the variable


part of equation (D.19) yields
K
à T !
X X
ek · (T − t + 1) · qkt + (hk − ek ) · qk1 . (D.21)
k=1 t=1
74 Multi-Level Capacitated Lotsizing with Setup Carryover

Using (D.20) and (D.21) to replace holding costs and equation (D.11) to replace
the inventory variable, we can write the model MLCLSPLe as:

Model MLCLSPLe
K X
X T K
X
min Z = (sk · γkt + ek · (T − t + 1) · qkt )+ (hk −ek )·qk1 −C (D.22)
k=1 t=1 k=1

subject to
t
X t
X X
(qkτ − dkτ ) + ybk ≥ akj · qj,τ +1 ∀k, t = 0, . . . , T (D.23)
τ =1 j∈Nk τ =0

X
(tbk · qkt + trk · γkt ) ≤ bm
t ∀m, t = 1, . . . , T (D.24)
k∈Km

qkt ≤ (γkt + ωkt ) · Ω ∀k, t = 1, . . . , T (D.25)

X
ωkt ≤ 1 ∀m, t = 1, . . . , T (D.26)
k∈Km

ωkt ≤ γk,t−1 ∀k, t = 2, . . . , T (D.27)

ωk1 = 0 ∀k (D.28)

qkt ≥ 0 ∀k, t = 1, . . . , T (D.29)

γkt , ωkt ∈ {0, 1} ∀k, t = 1, . . . , T (D.30)

The constant part is given as:


K X
X T K X
X T
C= hk · ((T − t + 1) · dkt − ybk ) + (hk − ek ) · Dkt (D.31)
k=1 t=1 k=1 t=1
Chapter D. Model Formulations 75

Data:
ek echelon holding cost coefficient of item k

The objective function (D.22) differs from (D.1) only in the way holding costs
are written. Constraints (D.23) replace the inventory balance constraints
(D.2). The remaining restrictions are the same as for the MLCLSPL.

D.1.3 Shortest Route Formulation

The formulation presented in the following is an adaptation of the model pre-


sented by Stadtler (1997). A SR formulation for the MLCLSP was presented
on page 25. Total demand Dkt is computed as in equation (D.18) on page 73
and cumulated demand dkts is computed as:
s
X
dkts = Dkτ ∀ k, t, s ≥ t
τ =t

Then, the MLCLSPLSR can be written as:

Model MLCLSPLSR
K X
T
à T
!
X X
min Z = sk · γkt + ek · (T − t + 1) · dkts · ∆kts
k=1 t=1 s=t
K
X T
X
+ (hk − ek ) · dk1s · ∆k1s − C (D.32)
k=1 s=1

subject to
T
X
∆k1s = 1 ∀k (D.33)
s=1

t−1
X T
X
∆kτ,t−1 = ∆kts ∀k, t = 2, . . . , T (D.34)
τ =1 s=t
76 Multi-Level Capacitated Lotsizing with Setup Carryover

T
X T
X X
yk,t−1 + dkts · ∆kts = dkt + akj · dj,t+1,s · ∆j,t+1,s + ykt
s=t j∈Nk s=t+1
∀k, t = 0, . . . , T (D.35)

à T
!
X X
tbk · dkts · ∆kts + trk · γkt ≤ bm
t ∀m, t = 1, . . . , T (D.36)
k∈Km s=t

T
X
∆kts ≤ γkt + ωkt ∀k, t = 1, . . . , T (D.37)
s=t
dkts >0

X
ωkt ≤ 1 ∀m, t = 1, . . . , T (D.38)
k∈Km

ωkt ≤ γk,t−1 ∀k, t = 2, . . . , T (D.39)

ωk1 = 0 ∀k (D.40)

yk,−1 = ybk ∀k (D.41)

0 ≤ ∆kts ≤ 1 ∀k, t = 1, . . . , T, s = 1, . . . T, s ≥ t (D.42)

ykt ≥ 0 ∀k, t = 1, . . . , T (D.43)

γkt , ωkt ∈ {0, 1} ∀k, t = 1, . . . , T (D.44)

To include the effects of lead times, we adapted the objective function of the
MLCLSPLe simply by replacing the production quantities.8 Furthermore, we
8 Note that the effect that holding costs are computed with the help of production quan-
tities rather than inventories remains.
Chapter D. Model Formulations 77

again divide the objective function into a variable and a constant part. The
constant part is given by equation (D.31) on page 74. The flow constraints
(D.33) and (D.34) are the same as for the MLCLSP.

We use a continuous variable ykt to compute the inventory on hand at the end
of each period. Although not needed to compute holding costs, the additional
variables reduce the number of non-zero coefficients in the inventory balance
constraints significantly.9 The capacity and setup enforcement constraints
(D.36) and (D.37) are adapted. ∆kts is a continuous variable within its bounds
(see constraints (D.42)). The remaining constraints of the MLCLSPLe are
unchanged.

D.1.4 Simple Plant Location Formulation

The formulation presented in the following is an adaptation of the model pre-


sented by Stadtler (2003). Total demand Dkt is again computed as in equation
(D.18) on page 73. Model MLCLSPLSPL
 
K X
X T T
X
 
min Z = sk · γkt + ek · (T − t + 1) · D 
δkts
 
k=1 t=1 s=t
Dks >0
K
X T
X
D
+ (hk − ek ) · δk1s −C (D.45)
k=1 s=1
Dks >0

subject to
t
X
D
δkτ t = Dkt ∀k, t = 1, . . . , T (D.46)
τ =1

T
X T
X X
D D
yk,t−1 + δkts = dkt + akj · δj,t+1,s + ykt ∀k, t = 0, . . . , T
s=t j∈Nk s=t+1
Dks >0 Djs >0
(D.47)
9 See Stadtler (1997), page 89.
78 Multi-Level Capacitated Lotsizing with Setup Carryover

 
X  T
X 
tbk · D
δkts + trk · γkt  m
  ≤ bt ∀m, t = 1, . . . , T (D.48)
k∈Km s=t
Dks >0

D
δkts ≤ (γkt + ωkt ) · Ω ∀k, t = 1, . . . , T, s = t, . . . , T, Dks > 0 (D.49)

X
ωkt ≤ 1 ∀m, t = 1, . . . , T (D.50)
k∈Km

ωkt ≤ γk,t−1 ∀k, t = 2, . . . , T (D.51)

ωk1 = 0 ∀k (D.52)

yk,−1 = ybk ∀k (D.53)

T
X
D
δk0s =0 ∀k (D.54)
s=1
Dks >0

D
δkts ≥0 ∀k, t = 1, . . . , T, s = t, . . . , T, Dks > 0 (D.55)

ykt ≥ 0 ∀k, t = 1, . . . , T (D.56)

γkt , ωkt ∈ {0, 1} ∀k, t = 1, . . . , T (D.57)

Variables:
D
δkts demand of item k in period s, which is produced in period t
D
(δkts = δkts · Dks )
Chapter D. Model Formulations 79

Again, we adapt the objective function of the MLCLSPLe rather than adopting
the one presented by Stadtler (2003). The constant part is given by equation
(D.31). As in the SPL formulation of the MLCLSP presented on page 27, con-
straints (D.46) and (D.47) ensure that demand is met in each period. However,
again to reduce the number of non-zero elements, we compute the total de-
D
mand in period s, which is produced in period t (δkts ) rather than a fraction
(δkts ).10 The remaining constraints of the MLCLSPLe are adapted only to the
different way of expressing production.

D.1.5 Computational Results

In order to test the performance of our model formulations and also to generate
benchmark results for the heuristic presented in chapter E, we used the stan-
dard solver CPLEX. The 1920 test instances have been presented in chapter
C.

The tests were carried out on a Sun Microsystems compute server of the Sun
Fire 15K type. On this server 72 UltraSPARC-III processors are available.
The processors’ clock speed is 900 Mhz and the total primary storage amounts
to 144 GB. All models were written in ILOG AMPL 10.000 and solved with
the help of ILOG CPLEX 10.000.

We used the CPLEX standard options, eight parallel processors and a time
limit of 3600 seconds.

To evaluate the performance of the model formulations, we computed the


number of proven optimal solutions found within the time limit, the average
upper bound, the average mipgap and the average computation time.

The number of optimal solutions found by the respective formulation within


the time limit is given in table D.1.

10 See Stadtler (2003), page 489.


80 Multi-Level Capacitated Lotsizing with Setup Carryover

class model ] optimal solutions % optimal solutions


1 MLCLSPLe 461 96.04
MLCLSPLSR 461 96.04
MLCLSPLSPL 450 93.75
2 MLCLSPLe 87 18.13
MLCLSPLSR 354 73.75
MLCLSPLSPL 364 75.83
3 MLCLSPLe 0 0.00
MLCLSPLSR 140 58.33
MLCLSPLSPL 162 67.50
4 MLCLSPLe 0 0.00
MLCLSPLSR 78 32.50
MLCLSPLSPL 78 32.50
5 MLCLSPLe 0 0.00
MLCLSPLSR 46 19.17
MLCLSPLSPL 53 22.08
6 MLCLSPLe 0 0.00
MLCLSPLSR 15 6.25
MLCLSPLSPL 14 5.83
1−6 MLCLSPLe 548 28.54
MLCLSPLSR 1094 56.98
MLCLSPLSPL 1121 58.39

Table D.1: Comparison of the model formulations for single carryovers:


number of optimal solutions

Notably, the standard MLCLSPLe formulation fails to compute any optimal


solution for the test instances in classes 3 − 6. On average, the MLCLSPLSPL
and the MLCLSPLSR formulations perform comparably well on all test in-
stances. Overall, the MLCLSPLSPL formulation arrives at 27 optimal solutions
more than the the MLCLSPLSR formulation.

The final feasible solution (U B ∗ ), the best lower bound (LB ∗ ), the absolute
∗ ∗
mipgap (U B ∗ − LB ∗ ), the relative mipgap ( U BU−LB
B∗ · 100) and the average
computation time in CPU seconds11 are given in table D.2.

Remarkably, the average values of the best feasible solutions are quite similar
for all three model formulations. However, as expected, the lower bounds
provided by the MLCLSPLSR and the MLCLSPLSPL formulations are much
tighter than the ones of the standard MLCLSPLe formulation.

11 Note that the time limit of 3600 seconds selected as a CPLEX option is in real time.
The CPU seconds is the cumulated CPU time on all eight processors.
Chapter D. Model Formulations 81

class model U B∗ LB ∗ mipgap rel. mipgap CPU sec


1 MLCLSPLe 2356.7030 2356.6997 0.0034 0.0001 1.6355
MLCLSPLSR 2356.7020 2356.6969 0.0050 0.0001 0.5947
MLCLSPLSPL 2356.7020 2356.6911 0.0109 0.0004 0.3904
2 MLCLSPLe 5019.8844 4848.8784 171.0060 2.0516 6395.9893
MLCLSPLSR 5019.4604 5018.1805 1.2800 0.0121 304.3478
MLCLSPLSPL 5019.4604 5019.3049 0.1555 0.0017 199.4565
3 MLCLSPLe 12478.8188 10797.9802 1680.8387 12.7432 17477.5079
MLCLSPLSR 12470.3297 12469.9901 0.3396 0.0024 28.5733
MLCLSPLSPL 12470.3282 12470.0205 0.3077 0.0022 38.4938
4 MLCLSPLe 27768.5108 19976.8097 7791.7011 26.7639 22456.9721
MLCLSPLSR 27694.9142 27570.7706 124.1435 0.3420 6580.8155
MLCLSPLSPL 27693.2729 27586.2669 107.0060 0.2989 6879.5365
5 MLCLSPLe 14908.3277 10858.4859 4049.8418 25.8289 20151.0491
MLCLSPLSR 14873.6948 14846.9182 26.7766 0.1336 5976.5498
MLCLSPLSPL 14873.7313 14843.7178 30.0135 0.1501 6556.3044
6 MLCLSPLe 33618.4396 19746.1381 13872.3015 38.8995 25823.1900
MLCLSPLSR 33422.4892 33174.2000 248.2891 0.5533 14945.7895
MLCLSPLSPL 33420.1129 33171.1438 248.9691 0.5554 16971.2004
1−6 MLCLSPLe 12940.9090 9473.8212 3467.0877 13.5424 12337.9961
MLCLSPLSR 12901.7191 12851.4542 50.2649 0.1320 3517.7016
MLCLSPLSPL 12901.2213 12852.8926 48.3287 0.1263 3855.6536

Table D.2: Comparison of the model formulations for single carryovers:


mipgap and computation time

Due to the tighter lower bounds, the average relative mipgap of the reformula-
tions is significantly smaller than that of the standard formulation. This leads
both to a greater significance of the results for the quality of any given solution
and also to less required computation time.

Again, both reformulations perform similarly well. While the MLCLSPL SR


formulation requires slightly less computation time, the MLCLSPLSPL formu-
lation leads to marginally better lower and upper bounds. As we will use the
results as benchmark for our heuristic, we decided to use the MLCLSPLSPL
formulation both for the single setup carryover case and as a basis for the
following extensions.
82 Multi-Level Capacitated Lotsizing with Setup Carryover

D.2 Consecutive Setup Carryovers

As pointed out e. g. by Haase (1994) and Sox and Gao (1999), introducing
multi-period setup carryovers (CC) will generally not lead to great improve-
ments of the overall plan. However, this result is highly dependent on the
structure of the specific problem. E. g. if only few items are produced on the
same resource, the option of producing the same item in several consecutive
periods without incurring an additional setup operation is likely to yield a
better solution.

D.2.1 Standard formulation

To introduce consecutive setup carryovers, constraints (D.27)12 are replaced


by:

Constraints CC

ωkt ≤ γk,t−1 + ωk,t−1 ∀m ∈ M, k ∈ Km , t = 2, . . . , T (D.58)

ωkt + ωk,t+1 ≤ 1 + ϑm
t ∀m ∈ M, k ∈ Km , t = 1, . . . , T − 1 (D.59)

γkt + ϑm
t ≤1 ∀m ∈ M, k ∈ Km , t = 2, . . . , T (D.60)

ϑm
t ≥0 ∀m ∈ M, t = 1, . . . , T (D.61)

A setup carryover can be installed, whether the setup state was evoked
by a setup activity γk,t−1 = 1 or a setup carryover ωk,t−1 = 1 (see con-
straints (D.58)). However, a consecutive carryover can be installed, only if no
changeover takes place in between. This is guaranteed by constraints (D.59)

12 For the other model formulations, the same logic applies and constraints (D.39) and
(D.51) are replaced respectively.
Chapter D. Model Formulations 83

together with constraints (D.60). ϑm


t is a continuous (see constraints (D.61))
dummy variable, which takes the value 1, if a consecutive carryover is in-
stalled, and thus prohibits changeovers. It takes the value 0, if a changeover
is performed and hence prohibits consecutive carryovers.

D.2.2 Extended formulation

We will adapt the extended model formulation introduced by Sürie and


Stadtler (2003) to strengthen the model formulation in the case of consec-
utive setups. To do so, the resource-specific dummy variable ϑm
t is replaced
by an item-specific variable ϑkt .

Constraints CCext

ωkt ≤ γk,t−1 + ϑk,t−1 ∀m ∈ M, k ∈ Km , t = 2, . . . , T (D.62)

ϑkt ≤ ωkt ∀m ∈ M, k ∈ Km , t = 2, . . . , T (D.63)

X
γkt + ωkt + ϑjt ≤ 1 ∀m ∈ M, k ∈ Km , t = 2, . . . , T (D.64)
j∈Km
j6=k

ϑkt ≥ 0 ∀m ∈ M, t = 1, . . . , T (D.65)

ϑk1 = 0 ∀m ∈ M, t = 1, . . . , T (D.66)

Variables:
ϑkt dummy variable to indicate a consecutive carryover for item k
from period t − 1 to t and to t + 1

Constraints (D.62) and (D.63) together replace constraints (D.58). ϑkt can
only take the value 1, if ωkt is 1. Hence, constraints (D.62) impose the same
84 Multi-Level Capacitated Lotsizing with Setup Carryover

restriction as constraints (D.58) and enforce ϑkt = 1 in the case of a consecutive


carryover at the same time. Constraints (D.64) ensure for each item k, which
is produced on resource m, that a setup activity in t, a setup carryover at the
beginning of t and a consecutive setup carryover for some other item j from
t − 1 to t + 1 respectively exclude one other. As ϑm
t before, ϑkt is defined as a
continuous variable (see constraints (D.65)), but is forced to either 0 or 1 by
the restrictions of the model. Finally, to ensure that a setup must take place
in the first period, if the setup state is carried over to the second, ϑk1 is set to
0 by constraints (D.66).

D.2.3 Computational Results

The computational comparison of the two variants was carried out on the same
test set and with the same computational setup described in section D.1.5 on
page 79.

Again, we compared the number of proven optimal solutions found within the
time limit, the average upper bound, the average mipgap and the average com-
putation time. We also compared the consecutive setup carryover formulations
to the MLCLSPLSPL formulation.13

The number of optimal solutions is given in table D.3.

At least with respect to the overall number of verified optimal solutions found
within the time limit, the MLCLSPLCC outperforms the MLCLSPLSPL . The
MLCLSPLCCEXT performs poorer. However, this result is mainly due to the
fact that the MLCLSPLCC formulation finds the optimal solution for 90.83% of
the test instances in class 2. In class 1, both consecutive carryover formulations
outperform the MLCLSPLSPL . For all other classes, they perform similarly
well and slightly poorer than the single carryover formulation.

13 Remember, that both types of model formulations are defined for the same underlying
problem. Prohibiting consecutive setup carryovers is supposed to reduce computation
time without significant deterioration of the solution quality.
Chapter D. Model Formulations 85

class model ] optimal solutions % optimal solutions


1 MLCLSPLSPL 450 93.75
MLCLSPLCC 458 95.42
MLCLSPLCCEXT 467 97.29
2 MLCLSPLSPL 364 75.83
MLCLSPLCC 436 90.83
MLCLSPLCCEXT 362 75.42
3 MLCLSPLSPL 162 67.50
MLCLSPLCC 139 57.92
MLCLSPLCCEXT 143 59.58
4 MLCLSPLSPL 78 32.50
MLCLSPLCC 65 27.08
MLCLSPLCCEXT 78 32.50
5 MLCLSPLSPL 53 22.08
MLCLSPLCC 47 19.58
MLCLSPLCCEXT 47 19.58
6 MLCLSPLSPL 14 5.83
MLCLSPLCC 18 7.50
MLCLSPLCCEXT 17 7.08
1−6 MLCLSPLSPL 1121 58.39
MLCLSPLCC 1163 60.63
MLCLSPLCCEXT 1114 58.13

Table D.3: Comparison of the model formulations for consecutive carryovers:


number of optimal solutions

The upper bounds, lower bounds, mipgaps and computation times are pre-
sented in table D.4. Notably, the average CPU time required is only
7.4928% (4.9025%) higher for the MLCLSPLCC (MLCLSPLCCEXT ) than for
the MLCLSPLSPL . While the relative mipgaps are respectively 26.6762%
(28.1868%) larger in the consecutive carryover case, both the average up-
per bounds and the average lower bounds are lower (about 3% for the upper
bounds).

As the MLCLSPLCCEXT performs slightly better than the MLCLSPLCC over-


all, we will use its results as a benchmark for our heuristic in chapter F.
86 Multi-Level Capacitated Lotsizing with Setup Carryover

class model U B∗ LB ∗ mipgap rel. mipgap CPU sec


1 MLCLSPLSPL 2356.7020 2356.6911 0.0109 0.0004 0.3904
MLCLSPLCC 2250.4603 2250.4515 0.0088 0.0002 0.8933
MLCLSPLCCEXT 2250.4603 2250.4554 0.0049 0.0001 0.4105
2 MLCLSPLSPL 5019.4604 5019.3049 0.1555 0.0017 199.4565
MLCLSPLCC 4528.4330 4527.8398 0.5932 0.0052 163.6972
MLCLSPLCCEXT 4528.4330 4528.0725 0.3604 0.0042 230.1083
3 MLCLSPLSPL 12470.3282 12470.0205 0.3077 0.0022 38.4938
MLCLSPLCC 12097.4853 12097.1265 0.3587 0.0026 57.2062
MLCLSPLCCEXT 12097.4863 12097.1442 0.3421 0.0024 77.3646
4 MLCLSPLSPL 27693.2729 27586.2669 107.0060 0.2989 6879.5365
MLCLSPLCC 26607.6167 26445.3021 162.3146 0.4657 8959.5282
MLCLSPLCCEXT 26605.5829 26452.2365 153.3464 0.4331 7608.3359
5 MLCLSPLSPL 14873.7313 14843.7178 30.0135 0.1501 6556.3044
MLCLSPLCC 14695.6663 14663.0278 32.6384 0.1658 7549.3468
MLCLSPLCCEXT 14695.6544 14652.3530 43.3013 0.2235 6894.5844
6 MLCLSPLSPL 33420.1129 33171.1438 248.9691 0.5554 16971.2004
MLCLSPLCC 33087.4208 32805.5853 281.8355 0.6361 16227.2758
MLCLSPLCCEXT 33087.1675 32808.4020 278.7655 0.6277 17283.2005
1−6 MLCLSPLSPL 12901.2213 12852.8926 48.3287 0.1263 3855.6536
MLCLSPLCC 12505.7470 12445.9530 59.7939 0.1601 4144.6346
MLCLSPLCCEXT 12505.4597 12445.8990 59.5608 0.1619 4044.7787

Table D.4: Comparison of the model formulations for consecutive carryovers:


mipgap and computation time

D.3 Parallel Machines

D.3.1 Model Formulation

Here, we define parallel machines (PM) to be identical in every respect. They


can be used to produce the same set of items alternately. For each resource m,
a set Pm is defined, which contains the number of parallel resources (at least
1) available.
Dn n n
Hence, now production δkτ t , setup activities γkt and setup carryovers ωkt of
an item k in a period t are all related to one specific parallel resource n.

The MLCLSPLSP L is modified to include parallel machines, when constraints


(D.48) to (D.57) are replaced by constraints (D.67) to (D.77).
Chapter D. Model Formulations 87

Constraints PM
 
X  T
X 
tbk · Dn
δkts n
+ trk · γkt m
  ≤ bt ∀m, n ∈ Pm , t = 1, . . . , T (D.67)
k∈Km s=t
Dks >0

Dn n n
δkts ≤ (γkt +ωkt )·Ω ∀m, k ∈ Km , n ∈ Pm , t = 1, . . . , T, s = t, . . . , T, Dks > 0
(D.68)

X
n
ωkt ≤1 ∀m, n ∈ Pm , t = 1, . . . , T (D.69)
k∈Km

n n
ωkt ≤ γk,t−1 ∀m, k ∈ Km , n ∈ Pm , t = 2, . . . , T (D.70)

n
ωk1 =0 ∀m, k ∈ Km , n ∈ Pm (D.71)

Pm
X
n
γkt = γkt ∀m, k ∈ Km , t = 1, . . . , T (D.72)
n=1

Pm
X
D Dn
δkts = δkts ∀m, k ∈ Km , t = 1, . . . , T, s = t, . . . , T, Dks > 0 (D.73)
n=1

Dn
δkts ≥0 ∀m, k ∈ Km , n ∈ Pm , t = 1, . . . , T, s = t, . . . , T, Dks > 0 (D.74)

D
δkts ≥0 ∀m, k ∈ Km , t = 1, . . . , T, s = t, . . . , T, Dks > 0 (D.75)

γkt ≥ 0 ∀m, k ∈ Km , t = 1, . . . , T (D.76)

n n
γkt , ωkt ∈ {0, 1} ∀m, k ∈ Km , n ∈ Pm , t = 1, . . . , T (D.77)
88 Multi-Level Capacitated Lotsizing with Setup Carryover

Indices:
n parallel machines, n = 1 . . . Pm
Pm number of parallel machines of resource type m
Variables:
n
γkt binary setup variable on machine n
n
ωkt binary setup state variable for item k on machine n at the be-
ginning of period t
Dn
δkts production quantity of item k on machine n in period t to satisfy
demand in period s

As stated above, the difference to the standard MLCLSPLSP L is that now


more than one machine of each resource type may be used to produce the
same products. Constraints (D.72) and (D.73) cumulate the setup activities
and production quantities respectively over all parallel resources. As a result,
D
production quantities δkts and setups γkt are given per item and period and
the objective function, as well as the inventory balance constraints remain
unchanged. Both variables are continuous (see constraints (D.75) and (D.76)).
The only difference in the remaining constraints is that they are all defined for
each of the parallel resources.

Constraints CC are adapted analogously to constraints (D.70), simply by


changing the index of ϑm n
t to ϑt and defining each constraint for each indi-
vidual machine n of each resource type m.

D.3.2 Computational Results

Again, the computational study was carried out using the same setup described
in section D.1.5 on page 79. The test set for parallel machines in described in
chapter C.
Chapter D. Model Formulations 89

class model ] feasible sol. % feasible sol. ] optimal sol. % optimal sol.
2/1 MLCLSPLPM 60 100.00 27 45.00
MLCLSPLPMCC 60 100.00 20 33.33
2/2 MLCLSPLPM 60 100.00 15 25.00
MLCLSPLPMCC 60 100.00 17 28.33
4/1 MLCLSPLPM 60 100.00 3 5.00
MLCLSPLPMCC 59 98.33 1 1.67
4/2 MLCLSPLPM 60 100.00 2 3.33
MLCLSPLPMCC 57 95.00 0 0.00
6/1 MLCLSPLPM 60 100.00 0 0.00
MLCLSPLPMCC 55 91.67 0 0.00
6/2 MLCLSPLPM 60 100.00 0 0.00
MLCLSPLPMCC 18 30.00 0 0.00
all MLCLSPLPM 360 100.00 47 13.06
MLCLSPLPMCC 309 85.83 38 10.56

Table D.5: Comparison of the model formulations for parallel machines:


number of optimal solutions

Because of the increased complexity of the models with parallel machines, only
few optimal solutions are found for instances outside class 2.14 Furthermore,
for consecutive setup carryovers, the time limit is repeatedly met with no
feasible solution.

The mipgap and computation time are given in table D.6.15

class model U B∗ LB ∗ mipgap rel. mipgap CPU sec


2/1 MLCLSPLPM 4173.8950 4146.0824 27.8126 0.4426 4200.9245
MLCLSPLPMCC 3452.9543 3376.3566 76.5977 1.4823 7073.6980
2/2 MLCLSPLPM 4078.3925 3974.8070 103.5855 2.1383 8879.9980
MLCLSPLPMCC 2619.5473 2425.3135 194.2338 5.4332 13738.5947
4/1 MLCLSPLPM 31477.3183 30437.6641 1039.6542 2.8738 22544.7356
MLCLSPLPMCC 29075.5847 26268.5335 2807.0513 9.1934 25098.4803
4/2 MLCLSPLPM 30860.4767 28442.9821 2417.4946 6.8579 19499.2483
MLCLSPLPMCC 21062.8318 15616.3403 5446.4914 23.0250 24530.5735
6/1 MLCLSPLPM 38601.8583 37125.1021 1476.7563 3.4456 27184.9962
MLCLSPLPMCC 38067.6582 35036.8236 3030.8346 7.2807 22248.6933
6/2 MLCLSPLPM 35548.8033 32890.7854 2658.0180 6.3960 21202.7968
MLCLSPLPMCC 42570.0278 27798.5472 14771.4806 25.1894 17086.1506
all MLCLSPLPM 24123.4574 22836.2372 1287.2202 3.6924 17252.1166
MLCLSPLPMCC 22808.1007 18420.3191 4387.7815 11.9340 18296.0317

Table D.6: Comparison of the model formulations for parallel machines:


mipgap and computation time

14 See table D.5.


15 They are based on the feasible solutions only.
Chapter E

Solution Procedure based on


Lagrangean Relaxation

Lagrangean relaxation based heuristics have been presented in section B.3.2.


The basic idea is to solve a complex optimization problem with the help of
more easily tractable subproblems. To do so, complicating constraints of the
original (primal) problem are relaxed and accounted for through a penalty cost
term - the Lagrangean multipliers - in the objective function.

The Lagrangean multipliers, charging the utilization of the relaxed constraints,


are to reflect the scarcity of the respectively correspondent constraint in the
optimal solution of the original problem. The purpose is to adequately ma-
nipulate the solutions to the subproblems. As the scarcity of the constraints
and hence the optimal values of the Lagrangean multipliers are unknown, they
are adapted in an iterative procedure. At each iteration, the subproblems are
solved with the current values of the Lagrangean multipliers. Then, the latter
are updated according to the magnitude of violation of the corresponding con-
straints in the current solution to the original problem. The dual problem of
Lagrangean relaxation is to maximize the lower bound through a good choice

91

© Springer Fachmedien Wiesbaden GmbH, part of Springer Nature 2008


L. Buschkühl, Multi-Level Capacitated Lotsizing with Setup Carryover,
Edition KWV, https://doi.org/10.1007/978-3-658-24034-9_5
92 Multi-Level Capacitated Lotsizing with Setup Carryover

of the Lagrangean multipliers.1

The solution to the relaxed problem is at least as good as the optimal solution
to the original problem as the solution space of the latter is part of the solution
space of the former. Still, even the optimal Lagrangean multipliers cannot
guarantee the feasibility of the solution to the original problem, which is why
the solution of the subproblems is a lower bound to the optimal solution of the
original problem only.2 With increasing quality of the Lagrangean multipliers,
however, the solution is likely to be close to the optimal solution, which is why
it is taken as the basis for constructing a good feasible solution, i. e. the upper
bound.

The four major aspects in designing a Lagrangean relaxation-based system


are3

1. the choice of the constraints to be relaxed,

2. the efficient solution to the subproblems,

3. the update of the Lagrangean multipliers and

4. the construction of a feasible solution.

1. The choice of the constraints to be relaxed is determined by the request


that the relaxation should make the problem easier, but not too easy.4
In the case of the MLCLSPL and its variants, the constraints to be re-
laxed are the capacity constraints, reflecting the items’ competition on one
resource’s scarce capacity, the inventory balance constraints, reflecting de-
rived demand, and the setup carryover constraints, limiting the number of
setup carryovers to one per resource and period. The resulting subproblem
is the dynamic single-item single-level uncapacitated lotsizing problem with
setup carryover (SLULSPL). Refraining from relaxing the inventory balance
1 See Beasley (1995), page 249.
2 For a deduction of the characterstics of the lower bound and the existing duality gap
for capacitated dynamic lotsizing problems see Derstroff (1995), pages 67–71.
3 Compare Fisher (1981), page 4.
4 See Fisher (1985), page 11.
Chapter E. Solution Procedure based on Lagrangean Relaxation 93

constraints would lead to the multi-level uncapacitated lotsizing problem


with setup carryover (MLULSPL). However, even in the case without setup
carryover, this problem can still not be solved efficiently.5 Solving the sub-
problem heuristically would lead to lower bounds, which may exceed the
optimal function value. Not only may the optimum not be found, but it is
also impossible to deduct any information on the quality of the solution. 6

2. A number of exact algorithms have been introduced to solve the single-


level uncapacitated lotsizing problem without setup carryover, based on
the Wagner-Whitin dynamic recursion from Wagner and Whitin (1958),
e. g. by Federgruen and Tzur (1991) and Evans (1985). These have been
adapted to solve the SLULSPL in polynomial time.7

3. Three ways of updating the Lagrangean multipliers can be distinguished.


These are Column Generation, Multiplier Adjustment and Subgradient Op-
timization. Subgradient Optimization has proven to be the dominant of the
three methods as far as computational complexity is concerned.8 It is also
the only method applied in the literature presented in chapter B.3.2.

4. Various approaches can be found in the literature.9 The most promis-


ing ones are based on finite loading procedures, which extend the work of
Trigeiro et al. (1989).

E.1 Outline of the Procedure

The outline of our procedure is given in algorithm 2.

In all iterations but the first, the lower bound is computed. This will be de-
scribed in chapter E.2. Subsequently, the Lagrangean multipliers are updated
according to the magnitude of violation of the corresponding constraints as
described in chapter E.3. Finally, a feasible solution is constructed in each
5 See Derstroff (1995), page 65 and Tempelmeier (2006), pages 233–234.
6 See Özdamar and Barbarosoglu (2000), page 322.
7 See Sox and Gao (1999) and Briskorn (2006).
8 For more details, see Derstroff (1995), pages 79–81.
9 See chapter B.3.2.
94 Multi-Level Capacitated Lotsizing with Setup Carryover

iteration, if possible. To do so, first the SLULSPLs are resolved from the end
products along the bill of materials and down to the components. From the
production quantities of the successors, demand of the predecessors is derived
and hence the inventory balance constraints are enforced. Subsequently, all but
the most beneficial setup carryover for each resource and period are eliminated
from the production plan. Hence, the setup carryover constraints are enforced.
Finally, a finite loading heuristic is applied to enforce the capacity constraints,
while both the inventory balance and the setup carryover constraints remain
in place. If a new feasible schedule is found, its objective function’s value is
compared to the incumbent upper bound and the latter may be updated. This
procedure is described in chapter E.4.
l = 0; U Bmin = +∞; LBmax = −∞; initialize all Lagrangean multipliers at 0
repeat
if l > 0 then
compute the current lower bound LBl
if LBl > LBmax then
LBmax = LBl
end if
update all Lagrangean multipliers
end if
resolve the SLULSPLs along the bill of materials to enforce the inventory balance
constraints
enforce the setup carryover constraints
enforce the capacity constraints
compute the new upper bound U Bl
if U Bl < U Bmin then
U Bmin = U Bl
end if
l=l+1
until (l = lmax or all Lagrangean multipliers have converged)

with
l current iteration
lmax maximum number of iteration
LBl current lower bound
LBmax best lower bound
U Bl current upper bound
U Bmin best upper bound

Algorithm 2: Lagrangean heuristic


Chapter E. Solution Procedure based on Lagrangean Relaxation 95

In the case of the MLCLSP already, but especially in the case of the ML-
CLSPL, the duality gap is significant. Thus, there is no benefit in defining a
stopping criterion based on the convergence of the lower and the upper bound.
Therefore, the procedure terminates, when the Lagrangean multipliers have
converged or after a given number of iterations. The maximum number of
iterations is determined by the parameter lmax .10

The adaptation of the Lagrangean heuristic for parallel machines will finally
be presented in section E.5.

Mind, that in this chapter parameters will be introduced, for which the best
values have been computed only in the computational study. In these cases,
no values are given here. Instead, all tested and the best values for each of
these parameters will be given in chapter F.

E.2 Computation of the Lower Bound

In chapter E.2.1, we will first describe the Lagrangean relaxation of the


MLCLSPLe . Then, we will introduce the resulting subproblems along with
the solution procedures applied. Finally, we will deduct the computation of
the lower bound. In chapter E.2.2, we will then describe the adjustments
required to compute the lower bound to the MLCLSPLCC .

E.2.1 Single Setup Carryover

In the case of the MLCLSPLe , relaxing the inventory balance constraints, the
capacity constraints and the setup carryover constraints will lead to model
LR-MLCLSPL.

10 In this chapter, we will introduce the parameters of the heuristic. The computational
tests to analyze their impact on the solution quality will be presented in chapter F. The
values tested for lmax will be presented in section F.3.
96 Multi-Level Capacitated Lotsizing with Setup Carryover

Model LR-MLCLSPL
K
à T !
X X
min Z = (sk · γkt + ek · (T − t + 1) · qkt ) + (hk − ek ) · qk1
k=1 t=1

K X
X T K X
X T
− hk · ((T − t + 1) · dkt − ybk ) − (hk − ek ) · Dkt
k=1 t=1 k=1 t=1
 
K X
X T t
X t
X X
+ ukt ·  (dkτ − qkτ ) + akj · qj,τ +1 − ybk  (E.1)
k=1 t=1 τ =1 j∈Nk τ =0

M X
T
à !
X X
+ vtm · (tbk · qkt + trk · γkt ) − bm
t
m=1 t=1 k∈Km

M X
T
à !
X X
+ wtm · ωkt − 1
m=1 t=1 k∈Km

subject to
t
X
(qkτ − Dkτ ) ≥ 0 ∀k, t = 1, . . . , T (E.2)
τ =1

qkt ≤ (γkt + ωkt ) · Ω ∀k, t = 1, . . . , T (E.3)

ωkt ≤ γk,t−1 ∀k, t = 2, . . . , T (E.4)

ωk1 = 0 ∀k, xk0 = 0 (E.5)

dk0 = 0 ∀k (E.6)

v0m = 0 ∀m (E.7)
Chapter E. Solution Procedure based on Lagrangean Relaxation 97

qkt , ukt , vtm , wtm ≥ 0 ∀k, t = 1, . . . , T (E.8)

γkt , ωkt ∈ {0, 1} ∀k, t = 1, . . . , T (E.9)

Variables:
ukt Lagrangean multiplier for the inventory balance constraint
vtm Lagrangean multiplier for the capacity constraint
wtm Lagrangean multiplier for the constraint of total number of setup
carryovers

Equation (E.1) is the objective function of the relaxation. The first two lines
are the objective function of the original problem (D.22). The remaining three
lines represent the costs for violating the relaxed constraints - first for the
inventory balance constraints (D.23), then for the capacity constraints (D.24)
and finally for the setup carryover constraints (D.26).

Equations (E.2) form new item-specific inventory balance constraints. They


ensure that for each item k the cumulative production until the current period
t is not less than the corresponding cumulative total demand. Note that as
in the objective function total demand is calculated according to equation
(D.18) on page 73. Hence, initial inventory is accounted for. It is important
to ensure that at least overall the entire demand is produced. Without this
constraint nothing would be produced, as every production is costly. However,
the derived demand here is computed. It is based on the total demands of
the successor items and not their production quantities. Thus, total demand
is given exogenously. This implies that these inventory balance constraints
reflect no interdependency between the production decisions of any items.

Constraints (E.3) to (E.9) equal constraints (D.25) and (D.27) to (D.30).

Consequently, the LR-MLCLSPL decomposes into K single-item problems of


the SLULSPL type. Again, to speed up computation, we separate the constant
parts from the objective function (E.1). To see the relevant parts more easily,
we thus rearrange (E.1) to:
98 Multi-Level Capacitated Lotsizing with Setup Carryover

M
X T ·
X X µX X
T T
X ¶ ¸
ek · (T − t + 1) + ajk · ujτ − ukτ + vtm · tbk · qkt
m=1 k∈Km t=1 j∈Vk τ =t−1 τ =t
τ >0

M
X T µ
X X ¶ XM X
+ (sk + vtm · trk ) · γkt + wtm · ωkt + (hk − ek ) · qk1 − c
m=1 k∈Km t=1 m=1 k∈Km
(E.10)

The constant part is given as:


K X
X T
c= (hk − ukt ) · ((T − t + 1) · dkt − ybk )
k=1 t=1

K X
X T M X
X T
+ (hk − ek ) · Dkt + (vtm · bm m
t + wt ) (E.11)
k=1 t=1 m=1 t=1

We made use of the fact that the following equation holds:11


 
XK XT t
X X X t
ukt ·  qkτ − akj · qj,τ +1 
k=1 t=1 τ =1 j∈Nk τ =0
 
K X
X T T
X X T
X
 
= qkt · 
 ukτ − ajk · ujτ 
 (E.12)
k=1 t=1 τ =t j∈Vk τ =t−1
τ >0

The single-item problems corresponding to the LR-MLCLSPL are solved at


the beginning of each iteration to compute the lower bound. As will be seen,
at each iteration the values of the Lagrangean multipliers ukt , vtm and wtm are
calculated prior to the solution of the SLULSPLs and are thus given. Also,
the full holding cost coefficient hk , external demand dkt , initial inventory yk0
and capacity bm
t are exogenous to the model. Therefore, using (E.10), the
objective function of the single-item problems simplifies to:

11 See also Derstroff (1995), page 75.


Chapter E. Solution Procedure based on Lagrangean Relaxation 99

Model SLULSPL
T
X
min Zk = (ηkt · γkt + θkt · qkt + wtm · ωkt ) m = 1, . . . , M (E.13)
k∈Km
t=1

subject to
t
X
(qkτ − Dkτ ) ≥ 0 t = 1, . . . , T (E.14)
τ =1

qkt ≤ (γkt + ωkt ) · Ω t = 1, . . . , T (E.15)

ωkt ≤ γk,t−1 t = 2, . . . , T (E.16)

xk0 ≥ ωk1 (E.17)

dk0 , v0m = 0 (E.18)

qkt , ukt , vtm , wtm ≥ 0 t = 1, . . . , T (E.19)

γkt , ωkt ∈ {0, 1} t = 1, . . . , T (E.20)

ηkt = sk + vtm · trk t = 1, . . . , T (E.21)

µXX
T T
X ¶
θk1 = ek · T + ajk · ujτ − ukτ + v1m · tbk + hk − ek (E.22)
j∈Vk τ =1 τ =1

µX X
T T
X ¶
θkt = ek · (T − t + 1) + ajk · ujτ − ukτ + vtm · tbk
j∈Vk τ =t−1 τ =t
t = 2, . . . , T (E.23)
100 Multi-Level Capacitated Lotsizing with Setup Carryover

Variables:
Vk set of direct predecessors of item k

A property common to all single-level uncapacitated lotsizing problems, which


eases solution significantly, was discovered by Wagner and Whitin (1958).
They found that in the optimal solution to such a problem a setup occurs
only in those periods, which no inventory is brought into. All lotsizes are ei-
ther zero or the sum of demand from the respective period to the last period
before the next lot of the same item. Finally, they find that, if it is optimal
for a lot in t to cover demand in period t + n, then it is also optimal for it to
cover all demands in τ = t, . . . , t + n − 1.

The advantage of these findings is that the T period problem can be divided
into smaller subproblems. Wagner and Whitin (1958) exploit this advantage
and develop a solution algorithm based on dynamic programming. The under-
lying assumption is that once a solution to a t period problem (t = 1, . . . , T ) is
found this solution remains optimal, even if later periods are considered. Thus,
the solution for the t + 1 problem can be solved independently of all previous
problems 1, . . . , t. This implies that the exact optimal solution to the T period
problem can be computed by solving one subproblem after the other. Other
efficient implementations have been presented by Evans (1985), Wagelmans
et al. (1992) and Federgruen and Tzur (1991). We have chosen to adapt the
algorithms presented by Wagner and Whitin (1958) and by Federgruen and
Tzur (1991) to the SLULSPL.

The difference between the standard SLULSP and the SLULSPL, as stated
also in Sox and Gao (1999), lies in the presence of setup carryovers. Thus, the
decision for the t + 1 problem is independent only of the problems for periods
1, . . . , t − 1. The following cases have to be distinguished here:12

1. It is best to add the demand in period t to an existing lot in any period


τ < t and there is no setup carryover installed from τ − 1 to τ .

12 See also Briskorn (2006).


Chapter E. Solution Procedure based on Lagrangean Relaxation 101

2. It is best to perform a setup directly in period t and schedule demand


in the same period, and there is no setup carryover from period t − 1.

3. It is best to add the demand in period t to an existing lot in any period


τ < t and there is a setup carryover installed from period τ − 1 to period
τ.

4. It is best to perform a setup in period t − 1, install a setup carryover and


schedule the demand in period t in the same period without additional
changeover.

With fkt as the optimal value for the t period problem the dynamic program-
ming recursion to solve the SLULSPL is:
½ Xt
fkt = min min {ηkτ + θkτ · Dks + fk,τ −1 },
τ ≤t∧ωkτ =0
s=τ
t
X ¾
min {ηk,τ −1 + θk,τ −1 · Dk,τ −1 + θkτ · Dks + wτm + fk,τ −2 } (E.24)
τ ≤t∧ωkτ =1
s=τ

Note that cases 1. and 2. are covered by the first line of the recursion and cases
3. and 4. by the second line of it.

With the solution of the single-item problems, the value of the lower bound is
then given as:
M
X X
LB = Zk − const (E.25)
m=1 k∈Km

The outline of the procedure to compute the lower bound is given in algorithm
3.

The solution to the SLULSPLs, i. e. production quantities, setup decisions and


setup carryovers is discarded. The only purpose of the procedure is to deduct
the lower bound. The production plan is then generated from scratch during
the computation of the upper bound.

As stated above, we implemented two types of solution procedures. As they


lead to the same optimal solution, the only difference lies in the computation
102 Multi-Level Capacitated Lotsizing with Setup Carryover

time required. While the complexity of the Wagner-Whitin algorithm is O(T 2 ),


that of the Federgruen-Tzur algorithm is O(T log T ). However, the constant
increase in computational effort is higher due to more complex calculations in
the Federgruen-Tzur algorithm. Therefore, it is beneficial only for instances
with a greater number of periods.13
LBl = 0
for k ∈ K do
compute Dkt , ηkt , θkt and wtm ∀t
solve SLULSPLk
LBl = LBl + Zk
end for
LBl = LBl − const

Algorithm 3: Computation of the lower bound

E.2.2 Consecutive Setup Carryover

In the case of consecutive setup carryovers, the Lagrangean relaxation and


SLULSPLs are altered only in that equation (E.16) is replaced by equation
(E.26):

ωkt ≤ ωk,t−1 + γk,t−1 (E.26)

Installing a setup carryover in any period is charged at the same Lagrangean


multiplier as in the single setup carryover case. Further costs for whether or
not another item is produced in between a consecutive carryover cannot be
accounted for here. Thus, we will omit restriction (D.59) for the relaxation
without adding a corresponding cost term to the objective function. By simply
replacing constraint (E.16), we guarantee to compute a lower bound.

Hence, the dynamic recursion (E.24) can be written as:

13 During initial tests, we found that it is beneficial to apply the Federgruen-Tzur algorithm
for test instances with more than 20 periods.
Chapter E. Solution Procedure based on Lagrangean Relaxation 103

½ ½ t
X ¾
fkt = min min ηkτ + θkτ · Dks + fk,τ −1 ,
τ ≤t∧ωkτ =0
s=τ
½ τ2
X
min ηk,τ1 −1 + wτm + fk,τ1 −2
τ1 ≤τ2 ≤t
τ2 τ =τ1
P
∧ ωkτ =τ2 −τ1 +1
τ =τ1
½ τX
3 −1 t
X ¾¾¾
+ min θkτ · Dkτ + θkτ3 · Dks (E.27)
τ1 ≤τ3 ≤τ2
τ =τ1 −1 s=τ3

The first line of recursion (E.27) equals the first line of recursion (E.24). The
remaining two lines now account for the fact that cases 3. and 4. of the single
setup carryover case have to be adapted, in that more than one consecutive
setup carryover can take place.14 If production costs were constant for each
period, it would be optimal to produce lot for lot, as long as the setup state
is preserved. However, as the modified production costs θkτ are time variant,
depending on the respective Lagrangean multiplier for each period, any combi-
nation of lots may be optimal. For complexity reasons, we reduce the number
of possible lots to two. The first lot is scheduled in period τ1 . The second lot
can be scheduled in any period τ3 (τ1 ≤ τ3 ≤ τ2 ).

The resulting lower bound, may not be a true lower bound. However, in the
case of multi-item production with regular demand of all items, single-item
production over several consecutive periods is rather unlikely. Furthermore,
as mentioned above, there will be a duality gap for most instances, as the
Wagner-Whitin property does not apply in the capacitated case. Hence, the
lower bound provided by the recursion above is very unlikely to exceed the
objective function’s value of the optimal solution.

For the consecutive setup carryover case, only one solution procedure based
on the Wagner-Whitin algorithm is applied.

14 Note that recursions (E.24) and (E.27) are the same, when τ1 = τ2 .
104 Multi-Level Capacitated Lotsizing with Setup Carryover

E.3 Lagrangean Multiplier Update

As pointed out above, several methods are applicable to update the La-
grangean multipliers. These are Column Generation, Multiplier Adjustment
and Subgradient Optimization. Column Generation leads to better results, but
at the cost of a higher computational effort.15 Multiplier Adjustment meth-
ods are developed for a specific application and exploit the special structure
of the problem. Therefore, they may perform better than the general Subgra-
dient Optimization,16 but this is not guaranteed.17 Also, as often only one
multiplier is adjusted at an iteration,18 it is likely to encounter an increased
computational effort. To our knowledge, this has not been tried in the field of
capacitated dynamic lotsizing.19

Here, we applied Subgradient Optimization to update the Lagrangean mul-


tipliers. A gradient is a first-order differential operator that maps functions
to vector fields. It is a generalization of the ordinary derivative, and as such
conveys information about the rate of change of a function relative to small
variations in the independent variables. Hence, the gradient also indicates the
direction, in which the decision variables (here the Lagrangean multipliers)
have to be altered, in order to achieve the greatest possible improvement of
the objective function’s value. However, as first-order differential, the gradient
method is applicable only for continuously differentiable functions. The ob-
jective functions of relaxed dynamic capacitated lotsizing problems, however,
are not continuously differentiable due to the binary variables. For this type
of problem, Subgradient Optimization is an applicable solution method. A
subgradient is also defined at points, where the objective function is not dif-
ferentiable. Here, the gradient is calculated as a combination of the derivatives

15 See Derstroff (1995), page 80.


16 Compare Fisher (1985), page 15.
17 See Guignard and Rosenwein (1989), page 198.
18 See Reith-Ahlemeier (2002), page 121.
19 Still, we chose to implement a Multiplier Adjustment method for the Lagrangean multi-
plier of the setup carryover constraint. Computational tests showed, that in our case it
performed inferior to Subgradient Optimization both in computation time and solution
quality. Hence, it will not be considered further here.
Chapter E. Solution Procedure based on Lagrangean Relaxation 105

from the left and from the right.20

As mentioned above, Subgradient Optimization is an iterative method. It


starts from an initial solution. Here, we initialize all Lagrangean multipliers
at zero (u0kt = 0, vtm0 = 0 and wtm0 = 0).21

Then, the Lagrangean multipliers for the respectively next iteration l are up-
l
dated with the help of the corresponding subgradient (ζkt , ξtml and ςtml ) and
the corresponding stepsize (λlu , λlv and λlw ) as follows:
½ ¾
ulkt = max 0, ul−1
kt + λ l
u · ζ l
kt k = 1, . . . , K; t = 1, . . . , T (E.28)

½ ¾
m,l−1
vtml = max 0, vt l ml
+ λv · ξ t m = 1, . . . , M ; t = 1, . . . , T (E.29)

½ ¾
wtml = max 0, wtm,l−1 + λlw · ςtml m = 1, . . . , M ; t = 1, . . . , T (E.30)

Variables:
l
ζkt subgradient of the inventory balance constraint for item k in
period t at iteration l
ξtml subgradient of the capacity constraint for resource m in period
t at iteration l
ςtml subgradient of the setup carryover constraint for resource m in
period t at iteration l
l
λu stepsize for the update of the Lagrangean multiplier of the in-
ventory balance constraint for item k in period t at iteration l

λlv stepsize for the update of the Lagrangean multiplier of the ca-
pacity constraint for resource m in period t at iteration l
λlw stepsize for the update of the Lagrangean multiplier of the setup
carryover constraint for resource m in period t at iteration l

20 Compare Derstroff (1995) and Bazaraa and Sherali (1981).


21 We also tested the initialization of the multiplier of the setup carryover constraints at
the minimum setup costs on the resource considered plus the small number ² (wtm0 =
min {sk } + ²). However, the results were clearly inferior.
k∈Km
106 Multi-Level Capacitated Lotsizing with Setup Carryover

Generally, in the case of optimization problems with multiple constraints, the


subgradients can be based on the violation or slack of the constraints them-
selves.22 The subgradients of the three constraints are thus computed as fol-
lows:
 
t
X t
X X
¡ ¢
l
ζkt = αl ·  l
dkτ − qkτ + l
akj · qj,τ bk  + (1 − αl ) · ζkt
+1 − y
l−1

τ =1 j∈Nk τ =0

k = 1, . . . , K; t = 1, . . . , T ; l = 1, . . . , lmax (E.31)

à !
X
ξtml l
=α · (tbk · l
qkt + trk · l
γkt ) − bm
t + (1 − αl ) · ξtm,l−1
k∈Km

m = 1, . . . , M ; t = 1, . . . , T ; l = 1, . . . , lmax (E.32)

à !
X
ςtml = αl · l
ωkt −1 + (1 − αl ) · ςtm,l−1
k∈Km

m = 1, . . . , M ; t = 1, . . . , T ; l = 1, . . . , lmax (E.33)

Variables:
αl smoothing coefficient to stabilize convergence of the Lagrangean
multipliers

When αl is set to one, the Lagrangean multipliers are updated only according
to the magnitude of violation of the corresponding constraint in the directly
precedent iteration. However, to stabilize convergence, Crowder (1976) pro-
poses to apply exponential smoothing,23 where the smoothing parameter αl is
computed as:

αl−1
αl = l = 1, . . . , lmax (E.34)
αl−1 + αred
22 See Fisher (1985), page 13.
23 See also Baker and Sheasby (1999).
Chapter E. Solution Procedure based on Lagrangean Relaxation 107

The smoothing parameter is thus initialized at the parameter α0 and updated


with the help of parameter αred .24

The subgradients will take negative values, and thus reduce the Lagrangean
multipliers, when the corresponding constraint is kept with additional slack.
However, the Lagrangean multipliers can only take non-negative values. If the
update would lead to a negative Lagrangean multiplier, the latter is forced to
25
zero.

While the subgradients point the direction of the update, convergence is depen-
dent on the choice of stepsize.26 The reason is that changing the Lagrangean
multipliers in the direction of the subgradient may lead to deterioration of the
result. Convergence can be achieved, only if the steps are sufficiently small. 27

We will follow Derstroff (1995) and Moorkanat (2000) in that we will apply
the same stepsize λlu = λlv for ulkt and vtml and we will follow Sox and Gao
(1999) in applying a different stepsize λlw for wtml .

Thus, the stepsizes to update the multipliers of the inventory balance and the
capacity constraints are calculated as:28

Z ∗ − LB l
λlu = λlv = δ l · T ³ ´2 T ³ ml ´2
(E.35)
P
K P l P
M P
ζ kt + ξt
k=1 t=1 m=1 t=1

The stepsize for the update of the Lagrangean multipliers of the setup carryover
constraints is computed as:

Z ∗ − LB l
λlw = δ l · T ¡
(E.36)
P
M P ¢2
ς ml
t
m=1 t=1

24 The tested values for α0 and αred will be given in section F.1.1.1.
25 To facilitate computation in cases, where constraints cannot possibly be kept, we decided
to restrict the maximum value of the Lagrangean multipliers to 10, 000.
26 Compare Bazaraa and Sherali (1981).
27 See Derstroff (1995), pages 84 – 85.
28 We tried the iterative procedure suggested by Poljak (1969) to calculate the sequence
of stepsizes. However, we found that in the case of the MLCLSPL and its variants, the
gaps between the upper and the lower bounds (Z ∗ − LB l ) are rather great. Hence, we
adapted the equation by increasing the denominator.
108 Multi-Level Capacitated Lotsizing with Setup Carryover

The factor δ l cannot be smaller than zero nor greater than two. It is initialized
at δ 0 and updated after lδ non-improving iterations according to:29

δ l = δ l−1 · δ red (E.37)

LB l is the solution of the Lagrangean relaxation LR-MLCLSPL with the La-


grangean multipliers of the previous iterations. Z ∗ is an estimate of the optimal
objective function’s value. As Z ∗ is unknown, it is approximated with the help
of the known values of the lower and upper bounds.

Several procedures to update the stepsize have been proposed in the literature.
We implemented three types of procedures, which follow the same principles,
but differ in the values of the parameters. The applied procedure is selected
by the parameter MODUS, which can take the values 10, 11 and 12.

If MODUS is set to 12, a procedure similar to that of Held et al. (1974) is


applied.30 In this case, the factor δ l is initialized at two and halved every n
iterations. n in turn is initialized at the maximum number of iterations lmax
and also halved along with δ l , until n = 1.

The estimate of the optimal objective function’s value Z ∗ is approximated by


the current upper bound U B l−1 .

Especially in the first iterations of the procedure, when the Lagrangean mul-
tipliers are far from their optimal values, it may not be possible, to construct
a feasible solution. Thus, as long as no upper bound has been found, it is esti-
mated as the best known lower bound max{LB ∗ , LB l } and a markup, which
is in turn determined by the parameter markupU B .

The lower bound LB l in the numerator is selected depending on the parameter


LB λ to be the current lower bound or the best known lower bound.

If MODUS is set to 10 or 11,31 the initial value of δ l is determined by the


parameter δ 0 . It is multiplied with the parameter δ red after lδ non-improving
29 The tested values for δ l and δ 0 will be given in section F.1.1.2 along with all other
parameters relevant for the updating of the stepsizes.
30 See Derstroff (1995), page 86.
31 Compare Derstroff (1995), page 87.
Chapter E. Solution Procedure based on Lagrangean Relaxation 109

iterations. Thus, if δ 0 = 2 and δ red = 0.5, the only difference between MODUS
10 and MODUS 12 is that the number of non-improving iterations is given by
the parameter lδ and is not adapted in the course of the procedure.

The difference between MODUS 10 and MODUS 11 lies in the estimate of the
optimal solution Z ∗ . For MODUS 11, the optimal solution is estimated as
the minimum of the current upper bound U B l−1 and the current lower bound
LB l−1 with an added markup. The factor for the markup is in turn selected
by the parameter markupLB .

E.4 Computation of the Upper Bound

The objective function’s value of any feasible solution to the MLCLSPL is


obviously an upper bound to its optimal solution.32 As described above, even
with the optimal Lagrangean multipliers, the solution to the relaxed prob-
lem LR-MLCLSPL may not be a feasible solution to the original problem.
Therefore, a feasible solution is generated from scratch using the information
provided by the relaxation, i. e. the Lagrangean multipliers.

The construction of the feasible solution to the MLCLSPL consists of three


steps. First, a production plan without backorders is generated as described
in section E.4.1. From the resulting production plan a feasible solution to
the MLULSPL is deducted by enforcing compliance with the setup carryover
constraints (see section E.4.2). Finally, a feasible solution to the MLCLSPL
is constructed by installing the capacity constraints through a finite loading
procedure (see section E.4.3).

E.4.1 Inventory Balance Constraints

As stated by Derstroff (1995), compliance with the inventory balance con-


straints can be secured quite trivially. We reinterpret total demand Dkt as:

32 See also Fisher (1981), page 14.


110 Multi-Level Capacitated Lotsizing with Setup Carryover

Dkt = 
 X t−1
X X 
max 0, dkt + akj · qj,t+1 − max{0, ybk − (dkτ + akj · qj,τ +1 )}
 
j∈Nk τ =0 j∈Nk

For later periods, solving the corresponding K problems of the SLULSPL type
from the end products along the bill of materials down to the component parts
automatically leads to a solution without backlogging for the multi-level prob-
lem. In the first period, however, the production quantity of a successor item
is restricted by the initial inventory of its predecessors. In general product
structures, the successor items compete on the available predecessor items.
Hence, to guarantee feasibility, lot-for-lot production, i. e. qkt = Dkt , is in-
stalled during the cumulated lead time. The cumulated lead time of an item k
with low-level code i is computed as Lk = I − i, presuming that the low-level
code of end items is 0 and I is the highest low-level code. The procedure is
outlined in algorithm 4.
for u ∈ U do
for k ∈ Ku do
for t ∈ T do
compute total demand Dkt
end for
for t ∈ Lk do
qkt = Dkt
end for
solve SLULSPLk
end for
end for

with
u level of bill of materials structure
U highest level of bill of materials structure
Ku set of products belonging to low-level code u

Algorithm 4: Upper bound - inventory balance constraints

To increase solution speed the construction of a feasible solution is continued,


only if the solution to the MLULSPL is new.33
33 We tested the impact on the MLCLSPL with single setup carryover on the test set
described in chapter C. On average, the results remained the same. Solution speed
Chapter E. Solution Procedure based on Lagrangean Relaxation 111

E.4.2 Setup Carryover Constraints

As each SLULSPLk is solved individually, the number of setup carryovers per


resource has not been coordinated. Therefore, from the solution without back-
orders a feasible solution to the MLULSPL and the MLULSPLCC respectively
has to be generated by imposing the setup carryover constraints. Lotsizes are
not changed in the process. Additional setups may lead to capacity violations,
but this is repaired later.

On each resource, three cases can be distinguished:

1. No setup carryover is installed on resource m in period t,


P
i. e. ωkt < 1.
k∈Km

2. Exactly one setup carryover is installed on resource m in period t,


P
i. e. ωkt = 1.
k∈Km

3. Several setup carryovers are installed on resource m in period t,


P
i. e. ωkt > 1.
k∈Km

Generally, for each of the three cases stated above, the following steps have to
be applied:34

1. No setup carryover has been installed. Thus, if an item k is produced


both in period t − 1 and in period t and a setup is performed in both
periods, i.e. ωk,t−1 = 0, the second setup can be replaced by a setup
carryover. This saves both setup time and costs.
Let Kγ = {k : k ∈ Km ∧ γk,t−1 + γkt = 2} denote the set of items, for
which it is possible to install a setup carryover to period t. If at least
one such item exists, i. e. Kγ 6= ∅, let k ∗ = argmaxk∈Kγ sk be the one
with the highest setup costs. Then, a setup carryover is installed for this
item, i. e. ωk∗ t = 1 and γk∗ t = 0.
increased by 7.51%.
34 See also Sox and Gao (1999), page 180.
112 Multi-Level Capacitated Lotsizing with Setup Carryover

2. Exactly one setup carryover has been installed. Consecutive carryovers


for the same item have been prevented in the recursion. Hence, no further
adaptation is needed.

3. More than one setup carryover has been installed on m in t. In this case
all but one setup carryovers must be removed.
With the notion of Kω = {k : k ∈ Km ∧ ωkt = 1} as the set of items,
for which a setup carryover is installed in period t, find again the item
k ∗ = argmaxk∈Kω sk with the highest setup costs. For this item the
setup carryover is kept, while for all other items the setup carryover is
removed, i. e. ωkt = 0 and γkt = 1, ∀k ∈ Kω \ k ∗ .

This implies that, in cases 2 and 3, the setup carryover installed may not be
the overall best possible one. The reason is that only items are considered, for
which a setup carryover is already scheduled. If another item k 0 incurs higher
setup costs than the ones with a setup carryover, i. e. sk0 > sk∗ , additional
costs could be saved. However, the resulting schedule would differ more from
the one computed for the relaxed problem.

E.4.2.1 Single Setup Carryover

In the case of single setup carryovers, compliance with constraints (D.26) needs
to be achieved. The outline of the procedure is given in algorithm 5.
s
K
P m
On each resource m, the procedure runs from period 1 to period T . ωit > 1
i=1
s
K
P m
corresponds to case 3. ωit = 0 corresponds to case 1.35
i=1
s
As the set Km is sorted in decreasing order of the items’ modified setup costs,
the first setup carryover, which can be chosen, is the best. If one setup car-
P
k−1
ryover is installed, ωit becomes one. Thus, further setup carryovers are
i=1
prohibited.

35 As mentioned above, case 2 needs no further adaptations.


Chapter E. Solution Procedure based on Lagrangean Relaxation 113

In each period, information on the number of setups and on the setup carry-
overs into the period is stored and preserved for the next period.
for m ∈ M do
for t ∈ T do
s
Km
P
if ωit > 1 then
i=1
s
for k ∈ Km do
if qkt > 0 then
P
k−1
if ωit = 1 then
i=1
ωkt = 0
γkt = 1
end if
end if
end for
s
Km
P
else if ωit = 0 then
i=1
s
for k ∈ Km do
if qkt > 0 then
P
k−1
if ωit = 0 and γk,t−1 = 1 then
i=1
ωkt = 1
γkt = 0
end if
end if
end for
end if
end for
end for

with
s
Km set of the products produced on resource m in decreasing order of their
modified setup costs

Algorithm 5: Upper bound - setup carryover constraints

E.4.2.2 Consecutive Setup Carryover

In the case of consecutive setup carryovers, compliance with constraints (D.58)


to (D.60) needs to be achieved. The outline of the procedure is given in
algorithm 6.
114 Multi-Level Capacitated Lotsizing with Setup Carryover

Here, the solution is generated in a single pass. To do so, only the production
quantities are taken over from the solutions to the SLULSPLk .

On each resource m, the best possible setup carryover is installed. For all
other items with a positive production quantity, a setup activity is scheduled
in t. Thus, here the overall best setup carryover is selected. The request that
consecutive setup carryovers can only be installed, if no other item is produced
in between, cannot be considered in the solutions to the SLULSPLk . Hence,
we chose to reconsider the complete setup pattern here.

Furthermore, algorithm 6 differs from algorithm 5 in that consecutive setup


carryovers are permitted, if no other item is produced in period t − 1.
for m ∈ M do
for t ∈ T do
s
for k ∈ Km do
if qkt > 0 then
P
k−1 P
if ωit = 0 and (γk,t−1 = 1 or (ωk,t−1 = 1 and γi,t−1 = 0)) then
i=1 i∈Km
ωkt = 1
else
γkt = 1
end if
end if
end for
end for
end for

with
s
Km set of the products produced on resource m in decreasing order of their
modified setup costs

Algorithm 6: Upper bound - consecutive setup carryover constraints

E.4.3 Capacity Constraints

A feasible solution to the original problems is finally constructed by imposing


the capacity constraints. To do so, we will use a finite loading heuristic.
Violations of the capacity constraints are interpreted as prohibited overtime,
which is charged by the Lagrangean multipliers. Then, in several alternating
Chapter E. Solution Procedure based on Lagrangean Relaxation 115

forward and backward passes, production quantities are shifted across periods.

While the primary objective is to find a feasible production plan, the solution
quality with respect to the costs incurred may also be improved on. A feasible
production plan is found, when all overtime has been eliminated. Through-
out the procedure, the inventory balance constraints and the setup carryover
constraints are respected.

This type of procedure was first introduced by Trigeiro (1987) and Trigeiro
et al. (1989) for the CLSP without and with setup times, respectively. It
has later been adapted and extended by several authors also to the MLCLSP
and the CLSPL.36 Work of this type includes Campbell and Mabert (1991),
Tempelmeier and Derstroff (1996), Sox and Gao (1999), Moorkanat (2000),
Hindi et al. (2003).

E.4.3.1 Outline of the Finite Loading Heuristic

The outline of the procedure is given in algorithm 7. First, the cumulated


overall overtime for all resources and all periods SO is computed as:
T
X X
SO = max{Ntm − bm
t , 0} (E.38)
m∈M t=1

P
Ntm is the total capacity requirement (tbk · qkt + trk · γkt ) on resource
k∈Km
m in period t. If SO takes a positive value, the finite loading procedure is
started, applying four different shifts. Production quantities are shifted on
the current resource m from the current period t, until either all overtime has
been eliminated (SO = 0) or no further production is shiftable.

First, a forward pass is started. In each period, starting in period 1 and moving
forward, first single-item forward shifts are executed. If overtime prevails in
the respective period and no further production can be shifted independently
of other items, multi-item forward shifts are applied next.

36 See also chapter B.3.2.


116 Multi-Level Capacitated Lotsizing with Setup Carryover

 ff
P P
T P
t
SO = max{Ntm − bm m
t , 0}; COt = max (Nτm − bm
τ ), 0
m∈M t=1 τ =1

while SO > 0 and l ≤ lmax do


while m ∈ M O do
t=1
while t ≤ T do
if l = 1 and COtm > 0 then
single-item forward shifts
if COtm > 0 then
multi-item forward shifts
end if
else if l > 1 and Ntm > bm
t then
single-item forward shifts
if Ntm > bm
t then
multi-item forward shifts
end if
end if
wend
wend
if SO > 0 then
O
while m ∈ M do
t=T
while t > 0 do
if l > 1 and Ntm > bm
t then
single-item backward shifts
if Ntm > bm
t then
multi-item backward shifts
end if
end if
wend
wend
end if
wend

with
COtm cumulated excess capacity requirement on resource m until period t
l current iteration
lmax maximum number of iteration
MO set of ordered resources
O
M resources in reverse order
Ntm capacity requirement (setup and production times) on resource m in period t
SO overall overtime

Algorithm 7: Upper bound - capacity constraints


Chapter E. Solution Procedure based on Lagrangean Relaxation 117

During the first forward pass only cumulated overtime COtm is considered in
order to leave more flexibility to the subsequent backward pass. The cumulated
overtime is computed as:
( t )
X
m m m
COt = max (Nτ − bτ ), 0 (E.39)
τ =1

When the end of the planning horizon is reached and SO is still positive, a
backward pass is undertaken. The same principle applies, but the orders of
resources and periods are reversed and production is shifted backward. Again,
single-item shifts are applied first in each period and multi-item shifts are
thereafter applied, if necessary.

The procedure is terminated, when either all overtime has been eliminated or
the maximum number of iterations lmax has been reached.37

E.4.3.2 Order of Consideration of Shifts

The outline in algorithm 7 shows one possible ordering of resources and peri-
ods.38 The order, in which resources and periods with overtime are considered,
influences the solution. The reason is that the multi-level structure may lead
to interdependencies between the shifts executed on a given resource in a given
period and the shiftable quantities in others.

MP determines, whether each type of shift is executed on all resources in the


same period before proceeding to the next period or in all periods on the same
resource and then on the next resource. If all periods are considered for the
same resource, parameter SEQ determines, whether both the forward and the
backward pass are carried out together, or else first all forward passes and
then all backward passes are carried out.

37 The tested values for M lmax will be given in section F.1.2.


38 The tested values for the parameters for the ordering of shifts will be given in section
F.1.3.
118 Multi-Level Capacitated Lotsizing with Setup Carryover

Regardless the sequence of resources and periods selected, the order in which
resources are considered is determined a priori. It is computed individually for
forward and backward passes in ascending or descending order of the selected
criterion by the parameters FOR and BACK. The criteria are based either on
the resources’ capacity requirements (KAP) or on the number of successors
and predecessors of the corresponding items (M).

The logic behind the first criterion is that resources with high capacity re-
quirements are dealt with first. This approach was applied also by Moorkanat
(2000). Possible criteria for sorting are:

1. the Lagrangean multipliers vtm of the respective capacity constraints

2. the overall overtime and

3. overtime relative to available capacity.

The second criterion was proposed by Derstroff (1995) and is based on the
idea that the number of multi-item shifts required to find a feasible solution
can be affected by the order, in which resources are considered. If, during
forward (backward) passes, resources are considered first, on which primarily
items with many successors (predecessors) are produced, this will increase the
number of multi-item shifts due to the derived demands.

To sort resources, two criteria can serve to compute the priority value for the
ordering. The first is the difference of all successor relations and all predecessor
relations of all items assigned to the resource. These relations are computed
as the number of indirect and direct successors and predecessors produced on
a different resource than the one considered.

Alternatively, ordering is conducted according to the low-level codes of the


corresponding items. Here, the maximum low-level code of all items produced
on the resource is used.

E.4.3.3 Shifts

The procedure applies the following four types of shifts:


Chapter E. Solution Procedure based on Lagrangean Relaxation 119

1. single-item forward shifts move production of a single item to a future


period

2. multi-forward shifts move production of an item and a subset of its suc-


cessors to a future period

3. single-item backward shifts move production of a single item to an earlier


period

4. multi-item backward shifts move production of a single item and a subset


of its predecessors to an earlier period

The general structure is the same for all types of shifts. Each shift is started
on a specific resource m in a specific period t. The shifts are executed until
either all overtime has been eliminated on m in t or no further shift can be
executed. As described above, during the first iteration of forward shifts only
cumulated overtime is remedied. In all other iterations and during backward
passes the absolute capacity violation of period t is considered.

Apart from the multi-item backward shifts, which consider only the directly
precedent period, the target period is found by evaluating the possible shifts
for each item. The difference for single- and multi-item shifts is that multi-
item shifts have to consider the same changes to production, inventory and
setups for all items shifted. This will be explained below.

At each step, all items are evaluated to find the best feasible shift. If such
a shift exists, it is executed. Thereafter, capacity consumption is updated
and the procedure is repeated, if necessary. If no favorable shift exists, the
procedure is terminated.

Feasible shifts are always determined by the request that no shortages and no
violations of the setup restrictions are incurred. Additionally, the aim of the
procedure is to avoid overtime. However, preventing the build-up of overtime
in the target period may limit the solution space of the procedure too much.
This is especially the case, when capacity utilization is high.
120 Multi-Level Capacitated Lotsizing with Setup Carryover

Thus, the heuristic is divided into two parts by the parameter lO .39 Additional
overtime is allowed in the target period at the beginning of the procedure. In
iterations later than lO , however, shifts are allowed, only if they do not incur
additional overtime in the target period. This has different implications for
forward and for backward passes, as will be explained below.

To find the best possible shift, four computations have to be made, which are
interdependent:

1. changes to the setup pattern in the original period QR

2. changes to the setup pattern in the target period ZR

3. the shiftable quantity ∆qk

4. the priority value P R

In the following, we will first present the changes to the setup pattern incurred
with a shift. In the case of the MLCLSP, production always incurs a setup in
the same period. Hence, the setup state is changed in the original period, only
if the complete lot is shifted and hence the setup activity becomes obsolete.
In the target period, the setup state is changed, only if there has been no
production of the item in that period and hence an additional setup activity is
undertaken. However, as setup carryovers are considered here, the changes to
the setup pattern are generally more complicated. Therefore, we will describe
the changes to the setup pattern in more detail. The way the setup pattern is
affected is the same for all types of shifts.

The shiftable quantities ∆qk are generally restricted by the capacity and the
inventory balance constraints. Their computation is different for each type of
shift and will thus be described in detail for each shift.

Finally, the computation of the priority values will be presented.

39 The tested values for lO and all other parameters for the shifts (apart from the compu-
tation of the priority values) will be given in section F.1.5.
Chapter E. Solution Procedure based on Lagrangean Relaxation 121

E.4.3.3.1 Changes to the Setup Pattern in the Target


Period

When production is shifted to a period, the implications to the setup pattern


are independent of the actual quantity of the shift. Hence, the changes to
the setup pattern and their impact on the capacity consumption in the target
period can be determined a priori. In the single setup carryover case, the
following four cases have to be distinguished:

1. ωkτ = 1

2. γkτ = 1

3. γkτ = 0 and γk,τ −1 = 0

4. γkτ = 0 and γk,τ −1 = 1

The first two cases are trivial. The production can be added without changes
to the setup pattern.

In case 3, a setup is installed in period τ (γkτ = 1) as the setup state cannot


be preserved from the precedent period.

In the fourth case, two options exist. The first option is to install a setup in τ
(γkτ = 1). The second option is to preserve the setup state from the previous
period, i. e. ωkτ = 1. From γk,τ −1 = 1 follows that ωk,τ −1 = 0 and from
γkτ = 0 that ωkτ +1 = 0. Hence, a setup carryover can be introduced in τ ,
unless there is a setup carryover for another item.

The decision is based on the costs incurred by either option. If no setup carry-
over is installed in period τ ,40 the setup will incur costs, which the carryover
will not. Hence, a setup carryover is installed. If, however, a setup carryover
had been installed for a different item k 0 , the setup costs of the two items are
compared. For the item incurring greater setup costs, the setup carryover is
installed. For the other item, a setup activity is undertaken also in period τ .
The selection follows the same principle presented in section E.4.2.
40 This is the case, only if no other item is scheduled in τ and in τ − 1.
122 Multi-Level Capacitated Lotsizing with Setup Carryover

For consecutive carryovers, in cases 3 and 4, there may be a consecutive setup


carryover for another item k 0 from period τ − 1 to period τ + 1, when no other
item is scheduled in period τ . Then, the setup carryover for item k 0 into period
τ is replaced by a setup activity, i. e. γk0 τ = 1 and ωk0 τ = 0.

Furthermore, case 3 has to be further distinguished into

3.a γkτ = 0, γk,τ −1 = 0 and ωk,τ −1 = 0

3.b γkτ = 0, γk,τ −1 = 0 and ωk,τ −1 = 1

If ωk,τ −1 = 0, again a setup is introduced in period τ . If ωk,τ −1 = 1, a setup


carryover can be installed, if no other item is produced in τ − 1. Otherwise,
again a setup activity is introduced in τ .

E.4.3.3.2 Changes to the Setup Pattern in the Original


Period

When production is shifted from a period, the changes to the setup pattern
depend primarily on the shifted quantity. If less than the complete lot is
shifted, the setup pattern remains unchanged. Hence, the changes to the
setup pattern are determined after the computation of the shiftable quantity.
For single setup carryovers, the following three cases are distinguished:

1. γkt = 1 and ωk,t+1 = 0

2. γkt = 1 and ωk,t+1 = 1

3. ωkt = 1

Again, case 1 is trivial. The setup activity is simply eliminated.

Case 2 implies that the setup activity cannot be canceled. However, it can be
shifted to the next period t + 1, if there is another item k 0 , for which a setup
activity is undertaken both in period t and in period t + 1. Then, the setup
activity for this item can be replaced by a setup carryover in period t + 1. If
Chapter E. Solution Procedure based on Lagrangean Relaxation 123

several items exist with setups in both periods, the one with the greatest setup
costs is chosen. The selection with respect to the cost criterion again follows
the same principles presented in section E.4.2. Still, when the setup for item
k is pushed forward, compliance with the capacity constraints also in period
t + 1 must be secured. If the setup time of item k is greater than that of item
k 0 , the difference trk − trk0 must be less than the incumbent spare capacity in
t + 1. Otherwise, the setup pattern is left unchanged.

In case 3, the setup carryover is eliminated for item k since it is superfluous.


Again, a setup carryover is installed for a different item k 0 , if possible. If
several items have a setup scheduled in periods t − 1 and t, the one with the
highest setup costs is chosen along the same lines explained above.

For consecutive setup carryovers again case three has to be further distin-
guished into

3.a ωkt = 1 and ωk,t+1 = 0

3.b ωkt = 1 and ωk,t+1 = 1

Case 3.a again corresponds to case 3 for single setup carryovers. In case 3.b,
several setup carryovers may be superfluous, if the setup is preserved from
some period τ 1 < t to some other period τ 2 > t without production in periods
τ 1 to τ 2 − 1. Then, if shifting the setup activity from period τ 1 to period τ 2
is possible, later shifts can install setup carryovers for other items.

E.4.3.3.3 Single-Item Forward Shifts

The outline of single-item forward shifts is given in algorithm 8. The shift


is invoked, if the capacity (cumulated or absolute) is exceeded for the given
resource in the given period. As long as overtime persists, the best possible
shift is computed.

For the production of each item k, each possible target period t ≤ τ ≤ T is


considered. To find the best possible for an item k from the original period
124 Multi-Level Capacitated Lotsizing with Setup Carryover

max
t to a given target period τ , first the maximum shiftable quantity ∆qktτ is
computed.
while (l > 1 and Ntm > bm m
t ) or (l = 1 and COt > 0) do
P R∗ = −∞
for k ∈ Km do
τ =t
while τ ≤ T do
max
compute ∆qktτ
max
if ∆qktτ = 0 then
next k
end if
compute ZR, ∆qktτ , QR, P R
if P R > P R∗ then
P R∗ = P R, ∆qktτ

= ∆qktτ , τ ∗ = τ , QR∗ = QR, ZR∗ = ZR
end if
τ =τ +1
wend
end for
if P R∗ > −∞ then
execute shift (take over t, τ ∗ , ZR∗ , ∆qktτ

, QR∗ )
else
break
end if
wend

with
∆qktτ shiftable quantity for item k from period t to period τ

∆qktτ shiftable quantity for item k from period t to period τ , which belongs to the
shift with the incumbent highest priority value
max
∆qktτ maximum shiftable quantity for item k from period t
PR priority value
P R∗ incumbent highest priority value
QR changes to setup pattern in t
QR∗ changes to setup pattern in t, which belong to the shift with the incumbent
highest priority value
τ target period of shift
t original period of shift
ZR changes to setup pattern in τ
ZR∗ changes to setup pattern in τ , which belong to the shift with the incumbent
highest priority value

Algorithm 8: Upper bound - single-item forward shifts

Obviously, not more than the lotsize can be shifted. Furthermore, as produc-
Chapter E. Solution Procedure based on Lagrangean Relaxation 125

tion is shifted forward, it is only added to the inventory on hand in a later


period. As no shortages are to be incurred, the maximum shiftable quantity is
thus further limited by the minimum inventory on hand in the periods between
t and τ .41
½ ¾
max
∆qktτ = min qkt , min yks (E.40)
t≤s≤τ

If the item is not produced in t or if there is no inventory on hand in one


period between t and τ , the next item is considered.

If the maximum shiftable quantity is equal to the lotsize qkt , it is taken as the
shiftable quantity. Following Derstroff (1995), this measure aims at eliminating
setups.42 If the maximum shiftable quantity is positive but less than the
lotsize, it is further limited by the capacity requirements. Thus, first the
changes to the setup pattern in the target period are computed as described
in section E.4.3.3.1. Thereafter, the remaining available capacity for shifting
production into the target period can be calculated.

From iteration lO on, the shiftable quantity of item k is limited by the request
that no additional overtime may be incurred in τ . In iterations prior to lO ,
additional overtime may be incurred in τ as long as further overtime eliminated
in t. Thus, the shiftable quantity for item k is calculated as:
 n n m oo

 min ∆q max
, max

, OV m
l < lO
 ktτ tbk t
∆qktτ = n o (E.41)

 m
 min ∆q max , Cτ l ≥ lO
ktτ tbk

Cτm is the free capacity in period τ after the changes to the setup pattern
and OVtm is the overtime in period t. This implies that more production
than is needed to eliminate overtime in the original period t may be shifted.
Hereby, inventory holding costs are reduced and more flexibility is left to the
subsequent backward pass.

41 See Derstroff (1995), page 113.


42 See Derstroff (1995), page 114.
126 Multi-Level Capacitated Lotsizing with Setup Carryover

Subsequently, the changes to the setup pattern are computed as described in


section E.4.3.3.2 and the priority value of the shift is calculated as will be
described in section E.4.3.3.7.

If any feasible shift is found, the one with the highest priority value is executed
and the procedure is repeated, if necessary. If no such shift is found, the
procedure is terminated.

E.4.3.3.4 Multi-Item Forward Shifts

If the single-item forward shifts fail to eliminate all overtime from a given pe-
riod t, multi-item forward shifts are applied. The outline is given in algorithm
9.

As explained above, the shiftable quantity for an item k is restricted amongst


others by the request that shortages may not be incurred. Therefore, it may be
extended, by simultaneously shifting production quantities of successor items
and hence the corresponding derived demands.

Especially components may have various successor items. To reduce com-


putational effort, we will follow Derstroff (1995) in considering serial subsets
ST R of the product structure. To do so, all immediate and mediate succes-
sors i ∈ NkC are considered and all alternative subsets ST Rki of the product
structure linking k to i are evaluated.43

Applied to the complete serial subset ST Rki of the products structure, the
multi-item forward shift follows the same principle as the single-item forward
shift. Again, all future target periods are evaluated. First, the maximum
shiftable quantity is computed for the final item of the serial subset i according
to equation (E.41). The cumulated lead time is accounted for on all stages
of the serial subset. Hence, the production quantities of successor items are
shifted from the corresponding periods tu = t + uk − ui0 to τu = τ + uk − ui0 .

43 For an illustration of the serial subsets see Derstroff (1995), page 117.
Chapter E. Solution Procedure based on Lagrangean Relaxation 127

while (l > 1 and Ntm > bm m


t ) or (l = 1 and COt > 0) do
P R∗ = −∞
for k ∈ Km do
τ =t
while τ ≤ T do
for i ∈ NkC do
for ST R ∈ ST Rki do
max
compute ∆qit u τu
max
if ∆qit u τu
= 0 then
next ST R
end if
for i0 ∈ ST R do
compute ZR, ∆qi0 tu τu , QR, P RF OR
P R = P R + P RF OR
end for
if P R > P R∗ then
P R∗ = P R, ∆qk

= ∆qk , τ ∗ = τ , QR∗ = QR, ZR∗ = ZR
end if
end for
end for
τ =τ +1
wend
end for
if P R∗ > −∞ then
execute shift (take over t, τ ∗ , ZR∗ , ∆qk

, QR∗ )
else
break
end if
wend

with
max
∆qktτ maximum shiftable quantity for item k from period t

∆qk shiftable quantities, which belong to the multi-item shift with the incumbent
highest priority value
NkC set of all direct and indirect successors of k
PR priority value
P R∗ incumbent highest priority value
P RF OR priority value a single item adds to the priority value of the multi-item shift
QR changes to setup pattern in t
QR∗ changes to setup pattern in t, which belong to the shift with the incumbent
highest priority value
ST Rki complete serial subset of successor items of k, starting with k and ending
with i
∆qktτ shiftable quantity for item k from period t to period τ
τ target period of shift
t original period of shift
ZR changes to setup pattern in τ
ZR∗ changes to setup pattern in τ , which belong to the shift with the incumbent
highest priority value

Algorithm 9: Upper bound - multi-item forward shifts


128 Multi-Level Capacitated Lotsizing with Setup Carryover

If no production can be shifted, the next serial subset is considered. Otherwise,


the shiftable quantity of the final item i is extrapolated along the serial subset
down to item k.

The parameter VARFOR determines the computation of the maximum


shiftable quantities.44 If only the postponement of derived demand is used to
shift production of the predecessors of i (VARFOR=1), the maximum shiftable
quantity of an item i0 is computed as:
n o
∆qimax
0t τ
u u
= min qi0 tu , qnmax
i 0 t u τ u
· a i 0n 0
i
(E.42)

Otherwise, the inventory on hand is used to shift further production (VAR-


FOR=0). The maximum shiftable quantity is then computed as:
½ ¾
∆qimax
0t τ
u u
= min qi 0t ,
u min y ks + q max
ni0 tu τu · a i 0n 0
i
(E.43)
tu ≤s≤τu

ni0 is the direct successor of i0 .

When all maximum shiftable quantities have been computed, the actually
shiftable quantities are adapted to capacity requirements similar to the single-
item shifts. Again, the procedure starts with the final item i.

In iterations prior to lO , the complete lot is shifted, if possible. If the complete


lot could be shifted, but careful shifts are applied, the shiftable quantity is
restricted by the free capacity of the respective resource Cτmu after the changes
to the setup pattern have been installed.

If the complete lot cannot be shifted, the shiftable quantity is further limited
by the quantity necessary to eliminate overtime on the resource of item k in
period t. Aki0 represents the number of items of product k needed to produce
one item of product i0 . Again, in iterations later than lO , the shiftable quantity
is further restricted by the free capacity of the respective resource in period
τu after the changes to the setup pattern have been installed.

44 See Derstroff (1995), pages 119-121.


Chapter E. Solution Procedure based on Lagrangean Relaxation 129



 q i0 t u l < lO ∧ qimax
0t τ = q i0 t u


u u



 n o

 min q ,
Cτ u
l ≥ lO ∧ qimax = q i0 t u

 0
i tu tb 0 0t τ

 i u u

  

  ff

  max OVt
min ∆qktτ , tb
m
− min yks 

 k

 min ∆qimax 0t τ ,
t≤s≤τ

  u u Aki0 
∆qi0 tu τu =

 l < lO ∧ qimax < q i0 t u


0t τ
u u



    ff 

   min ∆qktτ
m
m 
max OVt

 , tb − min yks

 min ∆qimax
0 t τ , min
k t≤s≤τ C
, tbτu0

  u u
 Aki0 i 







 l ≥ lO ∧ qimax < q i0 t u


0t τ
u u

(E.44)

For each item, the maximum shiftable quantity is updated with the informa-
tion on the shiftable quantity of its successor. For the first item k, the same
computations are applied with the new inventory as in single item shifts.

When all shiftable quantities have been determined, the priority value is cal-
culated. The best feasible shift is executed, if such a shift exists.

E.4.3.3.5 Single-Item Backward Shifts

The outline of single-item backward shifts is given in algorithm 10. The struc-
ture is the same as for single-item forward shifts with the exception that the
periods before t are considered here.45

When shifting production backward, the inventory balance constraints for the
respective item hold in any case. However, if the item is a successor of other
items, shifting production will change their derived demand. Thus, to ensure
that the inventory balance constraints remain kept for all items, the maximum

45 See algorithm 8.
130 Multi-Level Capacitated Lotsizing with Setup Carryover

shiftable quantity is computed as:46


 
 yi,s−1 
max
∆qktτ = min qkt , min (E.45)
 i∈Vi ∧ aik 
t≤s≤τ

max
If ∆qktτ = 0, the next item is considered. Otherwise, the changes to the setup
pattern in the target period and the actual shiftable quantities are computed
reflecting the capacity requirements.



 qkt l < lO ∧ ∆qktτ
max
= qkt ∧ P R ≥ 0





 n o

 OVtm
 min qkt , tbk
 l < lO ∧ ∆qktτ
max
= qkt ∧ P R < 0
∆qktτ =



 0 l < lO ∧ ∆qktτ
max
< qkt ∧ l < lLS ∧ (LS = 0 ∨ P R < 0)





 n o

 min ∆q max , Cτ
m

ktτ tbk (l < lO ∧ ∆qktτ


max
< qkt ∧ l ≥ lLS ) ∨ l ≥ lO
(E.46)

Again, the computation of ∆qktτ is changed in the course of the procedure.


Before iteration lO , the complete lot is shifted, if this is possible and the
priority value is non-negative. If the complete lot could be shifted, but the
priority value is negative, only the quantity corresponding to the overtime on
m in t is shifted.47

Partial lots may be shifted, only if this is not prohibited. The logic is that shifts
eliminating setups are preferred in the beginning of the procedure. Thus, in the
first lLS − 1 iterations, partial lots are either shifted, only if the corresponding
priority value is positive (LS=1), or not at all (LS=0).

If a partial lot is to be shifted, as well as in iterations later than lO , again the


max
minimum of free capacity in τ and the maximum shiftable quantity ∆qktτ is
shifted.
46 Compare Derstroff (1995), page 126. Note, that here the lead time is one period. Hence,
derived demand arises one period earlier than the production of the successor.
47 Note, that shifting production backward incurs additional holding costs rather than
saving them. Thus, it may not be beneficial to shift more production than necessary.
Chapter E. Solution Procedure based on Lagrangean Relaxation 131

while Ntm > bm


t do
P R∗ = −∞
for k ∈ Km do
τ =t
while τ ≥ 1 do
max
compute ∆qktτ
max
if ∆qktτ = 0 then
next k
end if
compute ZR, ∆qktτ , QR, P R
if P R > P R∗ then
P R∗ = P R, ∆qktτ

= ∆qktτ , τ ∗ = τ , QR∗ = QR, ZR∗ = ZR
end if
τ =τ −1
wend
end for
if P R∗ > −∞ then
execute shift (take over t, τ ∗ , ZR∗ , ∆qktτ

, QR∗ )
else
break
end if
wend

with
∆qktτ shiftable quantity for item k from period t to period τ

∆qktτ shiftable quantity for item k from period t to period τ , which belongs to the
shift with the incumbent highest priority value
max
∆qktτ maximum shiftable quantity for item k from period t
PR priority value
P R∗ incumbent highest priority value
QR changes to setup pattern in t
QR∗ changes to setup pattern in t, which belong to the shift with the incumbent
highest priority value
τ target period of shift
t original period of shift
ZR changes to setup pattern in τ
ZR∗ changes to setup pattern in τ , which belong to the shift with the incumbent
highest priority value

Algorithm 10: Upper bound - single-item backward shifts

Finally, adaptations are made to reflect the changes in the cumulated overtime
incurred with the shift according to parameter SAV.48 If costs are weighted,
(SAV=1 and SAV=3) positive priority values are divided by the additional
48 See Derstroff (1995), page 126.
132 Multi-Level Capacitated Lotsizing with Setup Carryover

cumulated overtime in the target period, negative ones are multiplied likewise.
If additional cumulated overtime is incurred, the shift with the least additional
overtime is selected, if SAV=2 or SAV=3.49

If a feasible shift exists, the best one is executed and the procedure is repeated.
If the procedure is terminated before all overtime has been eliminated, multi-
item backward shifts are applied next.

E.4.3.3.6 Multi-Item Backward Shifts

The outline of multi-item backward shifts is given in algorithm 11. In contrast


to the other three types, here, shifts are restricted to the directly precedent pe-
riod. Similar to multi-item forward shifts, multi-item backward shifts extend
the shiftable quantity of an item by simultaneously shifting its predecessors.
However, instead of considering serial subsets of the product structure, all im-
mediate and mediate predecessor items i ∈ VkC are shifted, if this is necessary
to avoid shortages.

First, the shiftable quantity of the considered item k is computed as the min-
imum of the lotsize of k and the quantity, which would eliminate overtime on
m in t.
½ ¾
OVtm
∆qkt,t−1 = min qkt , (E.47)
tbk

Then, the shift is extrapolated down the low-level codes. Note, that the subset
contains all predecessors of k, so that each item may have several predeces-
sors. However, it has an assembly structure, so that each item has only one
successor.50 For each item, the shifted derived demand, which cannot be met
by the inventory on hand, has to be shifted:51

∆qitu ,tu −1 = max {0, ∆qni tu ,tu −1 · aini − yi,tu −1 } . (E.48)


49 The same modifications are applied to multi-item backward shifts. The reason that it is
not used in forward shifts is that shifting production forward cannot lead to additional
cumulated overtime.
50 See Derstroff (1995), page 130.
51 Note here, that this quantity cannot exceed the items lotsize. The part of derived
demand not satisfied by inventory on hand had to be met by production in tu .
Chapter E. Solution Procedure based on Lagrangean Relaxation 133

while Ntm > bm


t do
P R∗ = −∞
for k ∈ Km do
if qkt > 0 and Vk 6= ∅ then
compute ∆qkt,t−1
for u > uk do
for i ∈ Ku do
if i ∈ VkC then
compute ∆qitu ,tu −1
if tu = 1 and ∆qitu ,tu −1 > y
bi then
next k
end if
end if
end for
end for
for u ∈ U do
for i ∈ Ku do
τ =1
while τ ≤ t do
if ∆qiτ,τ −1 > 0 then
compute ZR, QR, P R
end if
wend
end for
end for
if P R > P R∗ then
P R∗ = P R, ∆qkt,t−1

= ∆qkt,t−1 , QR∗ = QR, ZR∗ = ZR
end if
end if
end for
if P R∗ > −∞ then
execute shift (take over t, ZR∗ , ∆qk

, QR∗ )
else
break
end if
wend

with
Ku set of products belonging to low-level code u
P RF OR priority value a single item adds to the priority value of the multi-item shift
ST Rki complete subset of successor items of k, ending with i
u level of bill of materials structure
uk level of bill of materials structure of item k
U highest level of bill of materials structure
VkC set of all direct and indirect predecessors of k

Algorithm 11: Upper bound - multi-item backward shifts


134 Multi-Level Capacitated Lotsizing with Setup Carryover

If the beginning of the planning horizon is reached and the quantity to be


shifted exceeds the corresponding initial inventory, the shift is infeasible.
Hence, the next item k is considered.

When all quantities to be shifted have been computed, the corresponding


changes to the setup patterns in the respective original and target periods,
as well as the priority value, are calculated. The shifts are not restricted by
the capacity. Additional cumulated overtime is again considered depending on
the parameter SAV.

As long as a feasible shift exists, the respectively most beneficial is executed.

If parameter VARBACK is set to zero, multi-item backward shifts are not


executed in iterations prior to lLS .

E.4.3.3.7 Priority Values

The priority values of the shifts are computed as the incremental costs associ-
ated with the step. The relevant costs generally consist of setup and holding
costs. This means that the priority value is computed as the costs saved
through the elimination of setups and the reduction of inventory less the costs
incurred by additional setup activities and held inventory. For multi-item
shifts, the priority value is computed as the sum of the incremental costs over
all items shifted.

Depending on the parameter PRC,52 either the original cost factors or the
modified cost factors, including the Lagrangean multipliers, are applied. The
advantage of utilizing modified cost factors is that the schedule may be closer
to the optimal solution to the relaxed problem.

The priority value for forward shifts is computed as:53

52 The
P tested values for
P the parameters for the priority values will be given in section F.1.6.
53 ∆γiτ and ∆γit represent the changes of the setup pattern in the target
i∈Km i∈Km
period and the original period, respectively. See sections E.4.3.3.1 and E.4.3.3.2.
Chapter E. Solution Procedure based on Lagrangean Relaxation 135

 P

 ∆qktτ · (θkt − θkτ ) − (∆γit · ηit + ∆γiτ · ηiτ ) PRC = 0




i∈Km

 P


 ∆qktτ · ((τ − t) · ek + (hk − ek )) − (∆γit − ∆γiτ ) · si
i∈Km
P Rfor =

 PRC = 1 ∧ t = 1





 P


 ∆qktτ · (τ − t) · ek − (∆γit − ∆γiτ ) · si PRC = 1 ∧ t > 1
i∈Km
(E.49)

If the modified cost factors are applied, during backward shifts the produc-
tion and setup time eliminated from the original period is computed. If it
exceeds overtime in that period, i. e. additional free capacity is generated in
the original period, the excess is punished at the Lagrangean multiplier of the
corresponding capacity constraint. For backward shifts, the priority value is
thus computed as:

 P

 ∆qktτ · (θkt − θkτ ) − (∆γit · ηit + ∆γiτ · ηiτ )

 i∈Km





 − max {0, (∆qktτ · tbk − ∆γit · trk − OVtm ) · vtm } PRC = 0




 P
P Rback = ∆qktτ · ((t − τ ) · ek − (hk − ek )) − (∆γit − ∆γiτ ) · si

 i∈Km



 PRC = 1 ∧ τ = 1





 P


 ∆qktτ · (t − τ ) · ek − (∆γit − ∆γiτ ) · si PRC = 1 ∧ τ > 1
i∈Km
(E.50)

Also, the parameter PRW determines, whether the priority values are weighted
to reflect the total overtime eliminated in the original period. Although the
aim of the heuristic is to find the best possible schedule, the primary aim of
the finite loading heuristic is to find a feasible one. If PRW is set to one, the
priority value is weighted with the minimum of overtime in the original period
t and the shifted production time:54
54 See Derstroff (1995), page 135.
136 Multi-Level Capacitated Lotsizing with Setup Carryover

 PR
 min{∆qktτ ·tbk ,OVtm } PR ≥ 0
PR = (E.51)

 P R · min {∆q · tb , OV m }
ktτ k t PR < 0

To ensure that the best possible schedule is found in case the relaxed schedule
is close to feasibility already, only cost-improving shifts are allowed in the first
iterations of the heuristic. However, if such shifts do not lead to a feasible
solution until iteration lP R , the overall least cost feasible shift is selected.

E.4.3.3.8 Tabu Lists

Following Derstroff (1995), we apply tabu lists to prevent the finite loading
heuristic from cycling and thus to stabilize convergence.55

From iteration lTABU of the finite loading heuristic on, a tabu list is kept
for each resource. At each iteration, executed shifts are stored in the tabu
list.56 Each new shift is entered at the beginning of the list and the others
pushed forward. The shifts remain tabu active, i. e. stored in the tabu list,
until either their position exceeds the length of the tabu list nTABU or the
maximum duration of the tabu status tTABU is exceeded.57

While a shift is tabu active, its reversal, i. e. shifting the same quantity ∆qktτ
for item k back from period τ to period t, is prohibited unless the aspiration
criterion is met. The aspiration criterion is applied in iterations later than lASP
and enables the execution of tabu active moves with the probability ASP.

E.4.4 Postoptimization

The purpose of the postoptimization presented in this section is to further


improve on a given feasible schedule. It is applied, only if the incumbent

55 See Derstroff (1995), pages 137-140. For Tabu Search see B.3.4.3.
56 The information stored comprises the product k, the target period τ , the original period
t and the shifted quantity ∆qktτ .
57 The tested values for the parameters for tabu lists will be given in section F.1.7.
Chapter E. Solution Procedure based on Lagrangean Relaxation 137

schedule is the new best schedule. The postoptimization consists of the three
steps

1. forward shifting of production to reduce holding costs,

2. backward shifting of complete lots to reduce setup costs and

3. reoptimization of the setup pattern to reduce setup costs.

The first two steps have been presented by Derstroff (1995).58 They are alter-
nated, until no further improvement can be achieved. Then, the third step is
applied.

Step 1 is applied forward for periods t = 1, . . . , T − 1. The purpose is


to shift production quantities to future periods in order to save holding
costs. Equation E.52 expresses a modification of the Wagner-Whitin prop-
erty presented on page 100 for capacitated lotsizing problems. It basically
states that in a given period t either all available capacity is consumed
¡ P ¢
( bm
t − i∈Km (trk · γkt + tbk · qkt ) = 0) or the Wagner-Whitin property for
uncapacitated lotsizing problems holds (qkt · yk,t−1 = 0).

à !
X
qkt · yk,t−1 · bm
t − (tri · γit + tbi · qit ) =0 ∀m, k ∈ Km , t = 1 . . . T
i∈Km
(E.52)

Stated differently, if an item k is produced in period t and there is further


available capacity on the corresponding resource m, it can be used to avoid the
holding costs. Hence, for all resources m and periods t the shiftable quantities
of all items k ∈ Km are computed as:
( Ã ! )
X 1
m
min yk,t−1 , bt − (tri · γit + tbi · qit ) · (E.53)
tbk
i∈Km

58 See Derstroff (1995), page 141. See also Dixon and Silver (1981), page 26.
138 Multi-Level Capacitated Lotsizing with Setup Carryover

If the shiftable quantity is positive for at least one item, it is shifted from the
next earlier production periods into period t. If several possible shifts exist,
the respectively best shift is executed until E.52 holds.

Step 2 is applied backward for periods t = T, . . . , 2. Here, setup costs are


avoided by shifting complete lots to the next earlier period, in which the item
is already produced, if possible. In other words, qkt is shifted to the next
period τ < t, in which equation E.54 holds.
à !
X
m
qkt · tbk < bτ − (tri · γiτ + tbi · qiτ ) · (γkτ + ωkτ ) (E.54)
i∈Km

Again, if several shifts are possible from period t, the respectively best are
selected.

Step 3 is applied forward for periods t = 1, . . . , T − 1. Its purpose is to


improve the setup pattern. As explained in sections E.4.3.3.1 and E.4.3.3.2,
the best setup carryover decision is reflected for each shift of the finite loading
procedure.59 However, this is done sequentially, first for the target period and
then for the original period. In some cases, e. g. when production is shifted to
the directly precedent period, the optimal setup decisions in both periods may
be interrelated. Considering these interdependencies in the evaluation of each
possible shift would lead to an unreasonable increase in computational effort.

Thus, for the given plan, the setup carryover decisions are reconsidered. The
production quantities are not changed, nor are the capacity constraints vio-
lated. In each period, the best possible setup carryover, respecting the setup
and the carryover decisions in the adjacent periods, as well as the capacity
constraint of the current period, is selected.

E.5 Adaptation for Parallel Machines

As explained above, the solution procedure presented in this chapter consists of


three parts, the computation of the lower bound, the update of the Lagrangean
59 This is also true for steps 1 and 2 of the postoptimization procedure.
Chapter E. Solution Procedure based on Lagrangean Relaxation 139

multipliers and the computation of the upper bound.

Instead of relaxing the MLCLSPLP M the same way as we did the MLCLSPLe
and the MLCLSPLCC , we decided to apply the procedure presented above on
aggregated resource types. The rationale behind this is that the MLCSLPL
is decomposed into uncapacitated single-item problems for the computation
of the lower bounds. As capacity is unlimited, only the best resource of each
type would be used in each period.

This in turn implies that applying an individual Lagrangean multiplier for each
resource of the same type would not lead to additional benefits. Instead, it
might even reduce convergence, as respectively only one resource is considered
in the solution of each iteration.

For the construction of the upper bound, each individual resource is relevant as
a feasible solution to the MLCLSPLP M has to be constructed. We tried apply-
ing a modified feasibility routine, which assigned production to the individual
resources in each iteration. However, we found that the different computation
of the upper bound destabilized convergence of the Lagrangean multipliers and
thus lead to poor results. The schedules incurred increased holding costs as the
effect of inferior Lagrangean multipliers could not be offset by the feasibility
routine.

In the remainder of this section, we will thus present an iterative procedure,


which applies the complete procedure presented above to an aggregate model,
the MLCLSPLP M AGG , in each iteration. After the stopping criterion of the
Lagrangean heuristic is met, the lots are distributed among the individual
resources of each type. Subsequently, a modified feasibility routine is used to
eliminate the capacity violations that stem from the underestimation of the
number of setups.

If capacity violations persist, the aggregate capacity of the corresponding re-


sources is adapted and the Lagrangean heuristic is restarted. If a feasible
schedule is generated, postoptimization is applied.

The procedure terminates, if a feasible solution is generated or else after a


140 Multi-Level Capacitated Lotsizing with Setup Carryover

given number of iterations. The outline of the procedure is given in algorithm


12.
l=0
repeat
solve the aggregate model using the Lagrangean heuristic
assign production to the parallel machines
enforce the capacity constraints
if solution is feasible then
postoptimization
break
else
adapt available capacities
end if
l=l+1
PM
until (l = lmax )

with
l current iteration
PM
lmax maximum number of iterations

Algorithm 12: Iterative solution procedure for parallel machines

In section E.5.1, we will present the adaptations made to apply the Lagrangean
heuristic as presented above. In section E.5.2, we will then present the routine
to compute a feasible schedule to the MLCLSPLP M . Finally, the adaptation
of the postoptimization procedure presented in section E.4.4 will be described
in section E.5.3.

E.5.1 Aggregate Model Formulation for Resource Types

To reduce complexity, Quadt (2004) develops a so-called heuristic model for


the CLSPL with backorders and parallel machines, in which he aggregates
the capacities and production quantities across the machines belonging to the
same type of resource. We will apply the same principle here.

In the case of parallel machines, it is obvious that the production of an item


in a given period will be distributed among as few resources as possible. The
reason is that each additional machine used for the same item will require a
Chapter E. Solution Procedure based on Lagrangean Relaxation 141

setup activity or a setup carryover in this period. Therefore, Quadt (2004)


approximates the number of setups required by the production on parallel
machines by assuming that at most one resource will be partially loaded by
this item. The number of resources required is computed according to equation
(E.55):
» ¼
qkt
Nkt = m (E.55)
bt

Obviously, equation (E.55) is likely to underestimate the real number of setups.


Consider a small example with three items 1, 2 and 3, which can be produced
on resources A and B. As figure E.1 shows, although the time required by each
of the items is less than a full resource capacity, at least one of the items has
to be split across the two resources.

A tr2 tb2 ⋅ q21 tr3 tb3 ⋅ q31

B tr1 tb1 ⋅ q11 tr3 tb3 ⋅ q31

1 2 t

Figure E.1: Example of a schedule violating equation (E.55)

Underestimating the number of setups will lead to at least equally good sched-
ules as the original problem during the computation of the lower bound.60
However, during the computation of the upper bound, the reserved setup time
and remaining available capacity may not suffice to construct a feasible so-
lution to the MLCLSPLPM . Thus, at the beginning of each iteration, the
60 To ensure that the solution is a lower bound to the MLCLSPLPM , we will not share the
assumption that resources can only carry over their setup state, if no other item has
been produced meanwhile.
142 Multi-Level Capacitated Lotsizing with Setup Carryover

available capacity of the resource type ebm em


t is updated. bt is initialized at the
unmodified available capacity bm
t . If the available capacity of any resource
n ∈ Pm is violated in any period t at the end of the overall procedure, it is
reduced by the overtime SOtn . The available capacity in iteration l is thus
computed as:
X
ebml = ebm,l−1 − SOtn,l−1 (E.56)
t t
n∈Pm

In each iteration, SOtn,l−1 is given for each machine n as:


( )
X
SOtn,l−1
= max 0, n n em,l−1
(trk · γkt + tbk · qkt ) − bt (E.57)
k∈Km

To ensure that a feasible solution exists for the problem solved by the La-
grangean heuristic, the cumulative capacity remains unchanged. To do so,
P
n∈Pm SOt
n,l−1
is added in the next earlier period, in which ebm,l−1
t was not
completely consumed. If no such period exists, it is added in the first period.

Finally, the MLCLSPLP M AGG is not able to reflect that in the case of parallel
machines, the setup state can be carried over for one item on each machine in
each period. Hence, in the solution of the MLCLSPLP M , it will be beneficial
for more than one item to be produced in two adjacent periods on the same
resource type. Consequently, to manipulate the solution and hence increase
the overall solution quality, we chose to modify the setup costs sek . More
specifically, sek is computed by multiplying the original cost factors sk with the
parameter SCMOD:

sek = sk · SCMOD (E.58)

SCMOD can take values between 0 and 1.61

The aggregated MLCLSPLP M AGG can thus be written as follows:

Model MLCLSPLP M AGG


K
à T !
X X
min Z = (e
sk · γkt + ek · (T − t + 1) · qkt ) + (hk − ek ) · qk1 − C
k=1 t=1

61 The tested values for SCMOD will be given in section F.2.3.


Chapter E. Solution Procedure based on Lagrangean Relaxation 143

(E.59)

subject to
t
X t
X X
(qkτ − dkτ ) + ybk ≥ akj · qj,τ +1 ∀k, t = 0, . . . , T (E.60)
τ =1 j∈Nk τ =0

X
(tbk · qkt + trk · γkt ) ≤ Nm · ebm
t ∀m, t = 1, . . . , T (E.61)
k∈Km

ebm − trk ebm


t
qkt ≤ γkt · + ωkt · t ∀m, k ∈ Km , t = 1, . . . , T (E.62)
tbk tbk

X
ωkt ≤ Nm ∀m, t = 1, . . . , T (E.63)
k∈Km

ωkt ≤ γk,t−1 + ωk,t−1 ∀m, k ∈ Km , t = 2, . . . , T (E.64)

tbk · qk,t−1
ωkt ≤ + γk,t−1 ∀m, k ∈ Km , t = 2, . . . , T (E.65)
ebm
t−1

ωk1 = 0 ∀k (E.66)

qkt ≥ 0, γkt , ωkt ∈ N0 ∀m, k ∈ Km , n ∈ Nm , t = 1, . . . , T (E.67)

Data:
sek modified setup cost coefficient of item k
ebm modified available capacity of resource type m in period t
t

The variables γkt and ωkt are now integers, which count the number of re-
sources with a setup operation or carryover for the item k in period t respec-
tively. The objective function (E.59) and the inventory balance constraints
144 Multi-Level Capacitated Lotsizing with Setup Carryover

(E.60) equal those of the MLCLSPLe .62 The capacity constraints (E.61) take
into account that not one but Nm resources of type m are available.

Equations (E.62) ensure that, under the assumption that items are not pro-
duced partially on more than one resource, items can only be produced, when
the resources are setup for the item.

The number of setup carryovers is restricted by the number of resources (con-


straints (E.63)). And setups can be carried over, only if there has been a setup
in the previous period or if the setup state has been carried over already to the
prior period (constraints (E.64)). In the latter case, setups can be carried over
consecutively, only if production exploits the complete capacity of a resource
(constraints (E.65)).63 Finally, the setup state can only be carried over to
the first period, if there has been preproduction for the item in period zero
(constraints (E.66)).

In the case of the corresponding SLULSPLP M AGG , capacity is unlimited.


Then, as γkt and ωkt are integer, they automatically become binary. Thus,
the single-item problems and the dynamic recursions remain the same as in-
troduced before. The fact that the production of an item may now require
several parallel machines with corresponding setup states will be accounted
for during the computation of the upper bound.

The lower bound is again computed according to equation (E.25),64 but the
constant part is now given as:
K X
X T
const = (hk − ukt ) · ((T − t + 1) · dkt − ybk )
k=1 t=1

K X
X T M X
X T
+ (hk − ek ) · Dkt + (vtm · ebm m
t + w t ) · Nm . (E.68)
k=1 t=1 m=1 t=1

The Lagrangean multipliers and the upper bound remain unchanged.


62 See page 74. Thus, the constant part C is computed according to equation (D.31) on
page 74.
63 In the case of single setup carryovers, ωk,t−1 is excluded from constraints (E.64) and
constraints (E.65) are neglected.
64 See page 101.
Chapter E. Solution Procedure based on Lagrangean Relaxation 145

E.5.2 Computation of a Feasible Solution for Parallel


Machines

Based on the optimal solution to the MLCLSPLP M AGG , a feasible solution


to the MLCLSPLP M 65 is constructed in two steps. First, the production
quantities are assigned to the individual resources. This will be described in
section E.5.2.1. If the solution is not feasible, a feasibility routine is applied
next to enforce the capacity constraints. This will be described in section
E.5.2.2.

If a feasible solution is computed, postoptimization is applied next. Otherwise,


capacities are adapted and the Lagrangean Heuristic is restarted.

E.5.2.1 Assignment of Production to Individual


Resources

In order to generate a feasible solution to the MLCLSPLP M , the first step is


to assign the production quantities computed by the Lagrangean heuristic to
the individual resources. Here, each resource type m is considered separately.
There is no interdependency between different resource types, as each produc-
tion quantity qkt computed for an item k ∈ Km in period t is assigned to the
resources n ∈ Pm in that period. As the inventory balance constraints are kept
in the solution of the aggregate model, they remain kept during the assignment
procedure. The goal of the procedure is to assign the production quantities
such that as few setup activities as possible are incurred. The outline of the
procedure is given in algorithm 13.

On each resource m, the assignment procedure works backward from period


t = T to period t = 1. The reason is that, in the presence of setup carryovers,
setup activities can be shifted into the previous period, if the capacity limit
is met. The backward orientation permits installing setup carryovers while
considering only the production in the current period t and not the adjacent
periods t − 1 and t + 1.
65 The individual resources n, the original setup cost factors sk and available capacities
bm
t are considered.
146 Multi-Level Capacitated Lotsizing with Setup Carryover

for m ∈ M do
t=T
while t > 0 do
qbkt = qkt , ∀k ∈ Km ; b
bn m
t = bt , ∀n ∈ Pm
for n ∈ Pm do
for k ∈ Km do
if γkn > 0 then
n
compute qkt , qbkt and b
bn
t
end if
wend
end for
P
while qbkt > 0 do
k∈Km
max {bqkt ·tbk +trk }
k∈Km
compute i, qbit = tbi
n0
compute n, b bm
t = max {bb t }
n0 ∈Pm
m b
if qbit · tbi > bt and bt = bm
n
t then

compute qkt n
, qbkt and bbn
t

else if b bn
t ≥ (b
qit · tbi + tri ) then
for n0 ∈ Pm do
0
if b
bn
t ≥ (b
qit · tbi + tri ) then
add n0 to N 0
end if
end for
∗ 0
compute n∗, b
bn
t = min b
bn
t
n0 ∈N 0
n∗
compute qkt , qbkt and b
bn∗
t
else
n
compute qkt , qbkt and b
bn
t
end if
wend
for n ∈ Pm do
install setup carryovers
end for
t=t−1
wend
end for

with
qbkt quantity to be assigned on parallel machines for item k in period t
b
bn available capacity of an individual resource n in the case of parallel
t
machines in period t

Algorithm 13: Assignment of production to parallel machines


Chapter E. Solution Procedure based on Lagrangean Relaxation 147

In each period t, the quantity to be assigned qbkt is initialized at the complete


lot from the Lagrangean heuristic, qkt . The available capacity of each resource
n, bbn , is initialized at the capacity of the resource type, bm .
t t

First, existing setup activities are exploited. On a given resource n at most one
item k may have been scheduled with a setup carryover in t + 1 and the setup
activity pushed back into period t.66 If this is the case, the item is scheduled
on n also in t.

In the case of single setup carryovers, the corresponding production quantity


n
qkt is determined as

n bm
t − trk
qkt = min{b
qkt , }. (E.69)
tbk

In the case of consecutive setup carryovers, it is determined as

n bm
t
qkt = min{b
qkt , }. (E.70)
tbk

Subsequently, qbkt and bbnt are reduced according to equations (E.71) and (E.72).

n
qbkt = qbkt − qkt (E.71)

bbn = bbn − tbk · q n − trk · γ n (E.72)


t t kt kt

Then the next resource n is considered likewise.

When all resources have been considered, the items are ordered according
to the remaining capacity requirement, qbkt · tbk + trk . The item i with the
maximum capacity requirement is considered. Resources are considered in
descending order of their available capacities bbn . Here, three cases are distin-
t
guished:

1. The capacity requirement of i exceeds the period capacity of the resource


type, bm
t , and for at least one resource n the remaining available capacity

66 As the setup decisions are reconsidered here, the corresponding setup times are consid-
ered only after the scheduling decision. See constraint (E.72).
148 Multi-Level Capacitated Lotsizing with Setup Carryover

corresponds to bm
t .
67
Then, the complete capacity of n is consumed by
i. The production quantity is computed as:

n 1
qit = bm
t · (E.73)
tbi

No available capacity remains for the resource n, i. e. bbnt = 0. Finally,


the quantity for i is updated according to equation (E.71).

2. If the capacity requirement of i is less than a full period capacity,68 the


available capacity of at least one resource n may suffice to produce the
complete remaining quantity of k in t:

bbn ≥ qbit · tbi + tri (E.74)


t

Then, the subset of resources N 0 ⊂ Pm , for which (E.74) holds is iden-


tified. Within this subset, resource n∗ with the least free capacity is
computed:

bbn∗ = min bbn0 (E.75)


t 0 0 t
n ∈N

Then, i is assigned to n∗ . qbkt and bbnt are updated according to equations


(E.71) and (E.72).

3. Finally, if neither case 1 nor case 2 apply, i is assigned to the resource


with the greatest remaining capacity:

bbn = max {bbn0 } (E.76)


t 0 t
n ∈Pm

Again, qbkt and bbnt are updated according to equations (E.71) and (E.72).
In this case, overtime is incurred on n.

P
When all production quantities have been assigned, i. e. qbkt = 0, the
k∈Km
corresponding setup decisions are considered.

67 This implies that neither a setup nor production have been scheduled on n in t.
68 This implies that the capacity requirements for all other items are also less than a full
period capacity.
Chapter E. Solution Procedure based on Lagrangean Relaxation 149

On the resources, which are fully loaded by only one item, a setup carryover is
installed for k in t. On the remaining resources a setup carryover is installed,
n
if possible. This is the case, if an item k is scheduled on n in t (qkt > 0) and it
will be scheduled in t − 1 (qk,t−1 > 0). If several items fulfill this requirement,
the one with the highest setup costs sk is chosen.

If a feasible schedule is generated by the assignment procedure, postoptimiza-


tion is applied next. Otherwise, a feasibility routine is applied.

E.5.2.2 Feasibility Routine

The resulting schedule is feasible with respect to the inventory balance con-
straints and the setup decisions. However, the capacity constraints of indi-
vidual resources may be violated, i. e. bbnt < 0. Then, the feasibility rou-
tine described in this section is applied. It consists of three steps. The first
step splits lots on resources of the same type in the same period (see section
E.5.2.2.1). The second step shifts setup activities to adjacent periods (see sec-
tion E.5.2.2.2). The third step shifts production to other periods (see section
E.5.2.2.3). The outline is given in algorithm 14.

E.5.2.2.1 Lot Splitting

Capacity violations may be avoided by splitting lots on several resources, if at


least one machine with spare capacity exists, i. e. max {bbn } ≥ 0.
0
t
n0 ∈Pm

To shift production within m and t, all resources n, for which the capacity
constraint is violated, are considered in descending order of the the magnitude
of violation −bbn . All resources l with spare capacity are sorted in descending
t
order of their spare capacity bblt .
150 Multi-Level Capacitated Lotsizing with Setup Carryover

for m ∈ M do
t=1
while t ≤ T do
0
while b
bn min {b
bn bl bn0
t = t } < 0 and bt = max {bt } > 0 do
n0 ∈Pm n0 ∈Pm
shift production from n to l
update bbn and b
t bl t
wend
t=t+1
wend
for n ∈ Pm do
t=1
while t ≤ T do
if b
bn < 0 then
t
shift setup activity to t + 1
update b bn and b
t bn t+1
end if
if b
bn
t < 0 then
shift setup activity to t − 1
update b bn and b
t bn t−1
end if
t=t+1
wend
end for
t=1
while t ≤ T do
0
if min {b
bn
t } < 0 then
n0 ∈Pm
single-item shifts forward
single-item shifts backward
multi-item shifts backward
wend
end if
t=t+1
wend
end for

Algorithm 14: Feasibility routine

For each resource n, the item k 0 produced on n in t is selected, which incurs the
shortest setup time. The shiftable quantity is then computed as the minimum
of the lot for item k 0 , the overtime incurred on n and the spare capacity left
Chapter E. Solution Procedure based on Lagrangean Relaxation 151

on l:69
( )
−bbnt bblt − trk0
∆qknl0 = min qkn0 t , , (E.77)
tbk0 tbk0

If no production can be shifted, i. e. ∆qknl0 ≤ 0, the next resource n is con-


sidered. If a feasible schedule is generated, postoptimization is applied next.
Otherwise, setup activities are shifted to adjacent periods.

E.5.2.2.2 Shifting of Setup Activities

In the presence of setup times and setup carryovers, capacity violations may
be reduced by shifting a setup activity from a period t with overtime to the
previous period t − 1 or the next period t + 1.

The setup activity for item k can be shifted from period t to the next period
t + 1, if it is not produced in t. This is the case, if it is only installed to
preserve the setup state for production in the next period. Thus, all items are
n n
considered, for which γkt = 1 and qkt = 0. Furthermore, the capacity left in
the next period must suffice to cover the setup time, i. e. bbnt+1 ≥ trk . If both
n n n
requirements are met for an item k, γkt and ωk,t+1 are set to zero and γk,t+1
is set to one. The available capacities of periods t and t + 1 are subsequently
updated and the procedure repeated, if necessary.

If the capacity violation persists, shifting setup activities into the previous
period is tried next. This is possible, only if no setup carryover is installed
in period t. All items k are considered, for which a setup is undertaken in t
n
and hence γkt = 1. Additionally, in the case of single setup carryovers there
n
may be no setup carryover to period t + 1, i. e. ωk,t+1 = 0. If consecutive
n
setup carryovers are allowed and ωk,t+1 is one, no other item than k may be
produced on n in t.

For the relevant items, the setup can be shifted into period t − 1, if the item
is already produced in t − 1. Else, the spare capacity has to suffice to under-
69 Note, that items have not been partially loaded on more than one machine before.
Hence, l has to be set up for k0 in any case.
152 Multi-Level Capacitated Lotsizing with Setup Carryover

take the setup in t − 1. As stated by equation (E.78), two cases have to be


distinguished:

 n
 trk ωk,t−1 =0
bbn ≥ (E.78)
t−1

 tr − tr ∗ n
k k ωk,t−1 =1

If the setup state of item k has not been carried over to period t − 1, only
the setup time of k is considered. Otherwise, the setup carryover to t − 1 is
deleted. It becomes superfluous, when a setup activity is undertaken in t − 1.
Then, a different setup carryover may be installed for the most beneficial item
k ∗ , if possible. Then, the corresponding setup time is saved.

If a setup carryover could be installed for several items, the one with the
highest setup costs is chosen. The setup variables are adapted accordingly
and the available capacities of periods t and t − 1 are updated. Again, the
procedure is repeated if necessary.

If a feasible schedule is generated by the setup shifting procedure, postop-


timization is applied next. Otherwise, a modified finite loading heuristic is
applied, which is based on the procedure presented in section E.4.3.

E.5.2.2.3 Modified Finite Loading Heuristic

The modified finite loading heuristic consists of one forward pass for each re-
source type m. In each period with capacity violations, three types of shifts
are considered, single-item forward, single item backward and multi-item back-
ward.
µ ¶
If the capacity of resource type m is violated in t max bn0
{bt } > 0 , all pos-
0
n ∈Pm
max
sible single-item shifts are evaluated. The shiftable quantity ∆qktτ from the
current period t to period τ ,70 is computed in equation (E.79). It is restricted
by the complete production quantity for k in t, the minimum inventory ∆y min
between t and τ and the free capacity in period τ . Again, changes to the setup

70 For backward shifts, all period τ < t are considered, for forward shifts all periods τ < t.
Chapter E. Solution Procedure based on Lagrangean Relaxation 153

pattern in τ are considered in Cτm .


½ m
¾
max min Cτ
∆qktτ = min qkt , ∆y , (E.79)
tbk

The minimum inventory ∆y min to be considered depends on the direction of


the shift. If production is shifted forward, the inventory balance constraints
of k have to be considered. If production is shifted backward, the inventory
balance constraints of predecessors of k have to be considered.71 Thus, the
minimum inventory is given as:

 min yks
 t≤s≤τ τ >t


∆y min = y (E.80)

 min i,s−1 τ <t

 i∈Vi ∧ aik
t≤s≤τ

Only shifts that eliminate all overtime in t are considered. Hence, the shiftable
quantity is computed as
 bn P bn
 −b max
 tbkt
 − bt ≥ ∆qktτ · tbk
n∈Pm
∆qktτ = P bn (E.81)

 max
 0 − bt < ∆qktτ · tbk
n∈Pm

When k is shifted from t, the remaining production in t may have to be resched-


uled in order to construct a feasible solution. This in turn may lead to ad-
ditional setups. Thus, the changes to the setup pattern are reflected in the
P bn
computation of − bt .
n∈Pm

If several shifts are possible, the one with the highest priority value is se-
lected.72 If no single-item shift can be executed, multi-item backward shifts
are applied next.

For multi-item backward shifts, the minimum inventory ∆y min is not consid-
max
ered for the computation of the shiftable quantity ∆qktτ in equation (E.79).

71 See sections E.4.3.3.3 to E.4.3.3.6.


72 See section E.4.3.3.7.
154 Multi-Level Capacitated Lotsizing with Setup Carryover

Instead, when ∆qktτ has been computed, the minimum production quantity
of the predecessors is shifted backward to reinforce the inventory balance con-
straints.73

If a feasible schedule is found, the postoptimization procedure is applied next.


Otherwise, capacities are adapted and the Lagrangean heuristic is restarted.

E.5.3 Postoptimization

The same three postoptimization steps described in section E.4.4 are applied
here. Additionally, lots are shifted on the parallel resources within a period to
save additional setup costs. The four postoptimization steps undertaken here
are thus

1. forward shifting of production to reduce holding costs,

2. backward shifting of complete lots to reduce setup costs,

3. shifting of complete lots to other resources to reduce setup costs and

4. reoptimization of the setup pattern to reduce setup costs.

The difference to the case without parallel machines is that for the first two
steps, not only the individual resource n is considered. Rather, all resources,
on which a given item k is produced in the relevant periods, are considered
simultaneously.

When steps 1 and 2 have been completed, lots are rescheduled within the same
period, if setups can be eliminated. This is the case, if an item is produced on
more than one resource in the same period and the capacity of one resource
suffices to produce the lot scheduled on a different resource.

Finally, for each resource n the setup pattern is reoptimized as described in


section E.4.4.

73 See section E.4.3.3.6.


Chapter F

Computational Study

Our computational tests were carried out on the instances presented in chapter
C. To evaluate the performance of our heuristic, we used the benchmark results
described in section D.1.5.

The solution computed by the heuristic is respectively compared to the best


lower bound computed by CPLEX. Thus, the results are given as:

UBheuristic − LBCPLEX
gapCPLEX = · 100 (F.1)
LBCPLEX

The tests of the heuristic were carried out on an Intel Core 2 Duo processor
with 2.66 GHz and 2 GB RAM.

The purpose of the computational study presented in this chapter is twofold.


First, we carried out extensive tests on the MLCLSPL to find the best param-
eter configuration for the given test instances. As will be described in sections
F.1 and F.2, the performance of the Lagrangean heuristic is highly dependent
on the chosen parameters.

As a result, we obtained a dominant parameter configuration for the given


test set, which we used to evaluate the performance of our heuristic for the

155

© Springer Fachmedien Wiesbaden GmbH, part of Springer Nature 2008


L. Buschkühl, Multi-Level Capacitated Lotsizing with Setup Carryover,
Edition KWV, https://doi.org/10.1007/978-3-658-24034-9_6
156 Multi-Level Capacitated Lotsizing with Setup Carryover

MLCLSPL with single setup carryover, with consecutive setup carryover and
with parallel machines. This will be described in section F.3.

F.1 Comparison of the Performance for


Various Parameter Combinations

First, we tested different parameter combinations for the MLCLSPL with sin-
gle setup carryover.

A standard configuration is based on the findings of Derstroff (1995) and some


initial tests. The mean result1 over all instances for the standard configuration
is:

gapCPLEX
standard = 9.4659 (F.2)

For the standard configuration, four instances of class six could not be solved
and are thus neglected in the evaluation of the solution quality.

For the tests presented in the remainder of section F.1, the parameter com-
binations were tested with all other parameters set to the standard values
to isolate the effect of the individual parameters analyzed. However, the pa-
rameters presented in the same section are interdependent, but were tested
sequentially. Then, the relevant parameters were set to the best values. 2

The individual test scenarios and the results will be explained in the following.
Each section gives the standard values and a table with the other tested values
for the respective parameters. In the table with the tested values, the standard
combination, if contained in the test set, is marked bold.

Finally, a table with the results for each tested scenario is given. The results
are computed as the overall mean deviation of the results3 of the respective
parameter combination from that of the standard configuration:

∆gapCPLEX = gapCPLEX − gapCPLEX


standard (F.3)
1 The result is computed according to equation (F.1).
2 This is respectively indicated in the text.
3 Again, they are computed according to equation (F.1).
Chapter F. Computational Study 157

We chose to exclude all instances from the analysis of a given parameter, if they
could not be solved by at least one scenario. If not indicated otherwise, the
four instances, which the standard configuration could not solve, are excluded.

In each of the tables containing the results, the respectively best scenario is
marked bold.

F.1.1 Parameters for the Lagrangean Multipliers

F.1.1.1 Parameters for the Smoothing of the


Subgradients

α is the smoothing parameter for the subgradients. As described in equation


E.34 on page 106, α is initialized at a given value α0 and updated with the
help of αred . In the standard configuration, α0 is set to 1 and αred to 0.25.
Furthermore, we tested the combinations given in table F.1.4

scenario 1.1 1.2 1.3 1.4 1.5 1.6 2.1 2.2 2.3 2.4 2.5 2.6
α0 0.25 0.25 0.25 0.25 0.25 0.25 0.5 0.5 0.5 0.5 0.5 0.5
αred 0 0.05 0.1 0.15 0.2 0.25 0 0.05 0.1 0.15 0.2 0.25

scenario 3.1 3.2 3.3 3.4 3.5 3.6 4.1 4.2 4.3 4.4 4.5 4.6
α0 0.75 0.75 0.75 0.75 0.75 0.75 1 1 1 1 1 1
αred 0 0.05 0.1 0.15 0.2 0.25 0 0.05 0.1 0.15 0.2 0.25

Table F.1: Tested values for the smoothing parameters of the subgradients

Table F.2 shows that it is beneficial to choose a high initial value for α. How-
ever, the results are not systematically ameliorating with a higher initial value
α0 . The effect of the reduction rate αred depends on the initial value. It is not
systematic either.

The overall best results were generated with α0 = 1 and αred = 0.15. Thus, we
used these values for the remaining tests of the Lagrangean multiplier update.

4 Remember, that α can only take values between 0 and 1.


158 Multi-Level Capacitated Lotsizing with Setup Carryover

scenario 1.1 1.2 1.3 1.4 1.5 1.6


∆gapCPLEX 0.4161 0.4613 0.2896 0.2321 0.2752 0.3354

scenario 2.1 2.2 2.3 2.4 2.5 2.6


∆gapCPLEX 0.4736 0.3428 0.3229 0.3946 0.1152 0.2317

scenario 3.1 3.2 3.3 3.4 3.5 3.6


∆gapCPLEX 0.2506 0.2193 0.0961 0.1526 0.0816 0.0853

scenario 4.1 4.2 4.3 4.4 4.5 4.6


∆gapCPLEX 0.1647 0.2096 0.2318 -0.0088 0.103 0

Table F.2: Results for the smoothing parameters of the subgradients

F.1.1.2 Parameters for the Update of the Lagrangean


Multipliers

For the update of the Lagrangean multipliers5 , three procedures have been
implemented. They are described in table F.3.

name value description

MODUS 10 initialization of the factor δ l at δ 0


after lδ non-improving iterations δ l = δ l · δ red
estimate of the optimal solution Z ∗ = U B l−1
11 initialization of the factor δ l at δ 0
after lδ non-improving iterations δ l = δ l · δ red
estimate of the optimal solution
Z ∗ = min{U B l−1 , LB l · (1 + markupLB )}
12 initialization of the factor δ l at 2
after n non-improving iterations δ l = δ l · 12 and n = n
2
n is initialized at lmax
estimate of the optimal solution Z ∗ = U B l−1

Table F.3: Tested Combinations for the Parameters for the Lagrangean
multipliers

In the standard configuration, we used MODUS 10. In this section F.1.1.2, we


will first present our computations for the parameters δ 0 , δ red and lδ based on
5 See equations (E.35) and (E.36) on page 107.
Chapter F. Computational Study 159

MODUS 10. Then, different values for markupLB to compute the estimate of
the optimal solution for MODUS 11 will be given. Here, the dominant values
for δ 0 , δ red and lδ computed for MODUS 10 are applied. Finally, the three
procedures are compared along with different estimates for the upper bound
U B l−1 before the first feasible solution is found and different lower bounds
LB l (best or current).

F.1.1.2.1 Parameters for Factor δ l

First, we tested the different parameter combinations to update the factor δ for
MODUS 10.6 Their values in the standard configuration are δ 0 = 2, δ red = 0.5
and lδ = 4. Furthermore, we tested the combinations given in table F.4.7

scenario 1.1.1 1.1.2 1.1.3 1.1.4 1.2.1 1.1.2 1.2.3 1.2.4


δ0 1 1 1 1 1 1 1 1
δ red 0.5 0.5 0.5 0.5 0.75 0.75 0.75 0.75
lδ 2 4 8 10 2 4 8 10

scenario 2.1.1 2.1.2 2.1.3 2.1.4 2.2.1 2.1.2 2.2.3 2.2.4


δ0 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5
δ red 0.5 0.5 0.5 0.5 0.75 0.75 0.75 0.75
lδ 2 4 8 10 2 4 8 10

scenario 3.1.1 3.1.2 3.1.3 3.1.4 3.2.1 3.1.2 3.2.3 3.2.4


δ0 2 2 2 2 2 2 2 2
δ red 0.5 0.5 0.5 0.5 0.75 0.75 0.75 0.75
lδ 2 4 8 10 2 4 8 10

Table F.4: Tested values for the stepsize update factor δ l

The results are given in table F.5. They ameliorate systematically with a
higher number of non-improving iterations lδ until the next adaptation. Also,
the results become systematically better with a higher initial value and a
higher rate of reduction δ red . Consequentially, the best results were achieved
with δ 0 = 2, δ red = 0.75 and lδ = 10. They were used for the remaining
computations in this subsection.
6 See equation (E.37) on page 108.
7 Remember that δ can take values between 0 and 2 only.
160 Multi-Level Capacitated Lotsizing with Setup Carryover

scenario 1.1.1 1.1.2 1.1.3 1.1.4 1.2.1 1.2.2 1.2.3 1.2.4


∆gapCPLEX 0.9885 0.6302 0.4045 0.2902 0.7777 0.4823 0.2864 0.2165

scenario 2.1.1 2.1.2 2.1.3 2.1.4 2.2.1 2.2.2 2.2.3 2.2.4


∆gapCPLEX 0.7777 0.4344 0.0159 -0.0284 0.5501 0.1607 -0.1202 -0.2538

scenario 3.1.1 3.1.2 3.1.3 3.1.4 3.2.1 3.2.2 3.2.3 3.2.4


∆gapCPLEX 0.4512 -0.0088 -0.2644 -0.4084 0.1388 -0.2563 -0.5459 -0.7266

Table F.5: Results for the stepsize update factor δ l

F.1.1.2.2 Parameters for the Estimate of the Optimal


Solution

For MODUS 11, the optimal solution is estimated by the lower bound and a
markup.8 We tested the values for markupLB as depicted in table F.6.9

scenario 1 2 3 4
markupLB 0.2 0.4 0.6 0.8

Table F.6: Tested values for the estimate of the upper bound

Table F.7 shows that the results ameliorate with a higher markup in the given
interval. The best results were generated with a markup of 0.8.

scenario 1 2 3 4
∆gapCPLEX 0.664 0.1955 0.0084 -0.2143

Table F.7: Results for the estimate of the optimal solution

8 See table F.3.


9 We kept δ 0 = 2, δ red = 0.75 and lδ = 10 from the computations for MODUS 10.
Chapter F. Computational Study 161

F.1.1.2.3 Parameters for the Updating Modi

With the best configurations for MODUS 10 and MODUS 11, we tested dif-
ferent choices of the lower bound LB l10 and markupU B on the upper bound.

Before the first feasible solution is found, the upper bound is estimated as
U B = max{LB ∗ , LB l } · markupU B .

The lower bound LB l is either the current lower bound (LB λ = current) or the
maximum lower bound (LB λ = maximum) found so far. The tested parameter
combinations are given in table F.8.

scenario 1.1.1 1.1.2 1.2.1 1.2.2


MODUS 10 10 10 10
markupU B 0 0 2 2
LB λ current maximum current maximum

scenario 2.1.1 2.1.2 2.2.1 2.2.2


MODUS 11 11 11 11
markupU B 0 0 2 2
LB λ current maximum current maximum

scenario 3.1.1 3.1.2 3.2.1 3.2.2


MODUS 12 12 12 12
markupU B 0 0 2 2
LB λ current maximum current maximum

Table F.8: Tested values for the stepsize update: upper and lower bounds

The results are given in table F.9. The markup on the upper bound has no
effect on the solution quality.11

The choice of the current lower bound as opposed maximum lower bound leads
to better results for all procedures applied.

Overall, MODUS 12 generates the best results.

10 See equations (E.35) and (E.36) on page 107.


11 We also tested markups of 4, 6 and 8 with the same result.
162 Multi-Level Capacitated Lotsizing with Setup Carryover

scenario 1.1.1 1.1.2 1.2.1 1.2.2


∆gapCPLEX -0.7266 -0.6239 -0.7266 -0.6239

scenario 2.1.1 2.1.2 2.2.1 2.2.2


∆gapCPLEX -0.2143 -0.3025 -0.2143 -0.3025

scenario 3.1.1 3.1.2 3.2.1 3.2.2


∆gapCPLEX -0.9418 -0.8571 -0.9418 -0.8571

Table F.9: Results for the stepsize update

F.1.2 Parameter for the Termination of the Finite


Loading Heuristic

The maximum number of iterations lmax is the stopping criterion of the finite
loading heuristic.12 In the standard configuration it is set to 50. We tested
various values between 25 and 150. For our test sample, the overall solution
quality was not affected by the choice of lmax within this interval. As the
stopping criterion is relevant, only if no feasible solution has been found earlier
and due to the solution speed of the heuristic, we chose to keep lmax = 50.

F.1.3 Parameters for the Sorting of Resources

Resources can be sorted independently for forward passes (FOR) and for back-
ward passes (BACK). They are respectively considered in order of capacity uti-
lization (KAP), according to the items they produce (M) or in reverse order
of M (M). When the resources are ordered with respect to the corresponding
items, the order is determined either by the number of predecessor and succes-
sor relationships of the corresponding items with items on different machines
(0) or by the low-level codes (1). The capacity criterion is the relative capacity
utilization (0), the Lagrangean multipliers of the capacity constraints (1) or
the absolute overtime (2). Resources are respectively considered in descending
order of the criterion.13
12 See algorithm 7 on page 116.
13 See section E.4.3.2.
Chapter F. Computational Study 163

scenario 1.1.1.1 1.1.1.2 1.1.1.3


FOR KAP KAP KAP
BACK KAP KAP KAP
KAP 0 1 2

scenario 1.2.1.1 1.2.1.2 1.2.1.3 1.2.2.1 1.2.2.2 1.2.2.3


FOR KAP KAP KAP KAP KAP KAP
BACK M M M M M M
M 0 0 0 1 1 1
KAP 0 1 2 0 1 2

scenario 1.3.1.1 1.3.1.2 1.3.1.3 1.3.2.1 1.3.2.2 1.3.2.3


FOR KAP KAP KAP KAP KAP KAP
BACK M M M M M M
M 0 0 0 1 1 1
KAP 0 1 2 0 1 2

scenario 2.1.1.1 2.1.1.2 2.1.1.3 2.1.2.1 2.1.2.2 2.1.2.3


FOR M M M M M M
BACK KAP KAP KAP KAP KAP KAP
M 0 0 0 1 1 1
KAP 0 1 2 0 1 2

scenario 2.2.1.1 2.2.2.1


FOR M M
BACK M M
M 0 1

scenario 2.3.1.1 2.3.2.1


FOR M M
BACK M M
M 0 1

scenario 3.1.1.1 3.1.1.2 3.1.1.3 3.1.2.1 3.1.2.2 3.1.2.3


FOR M M M M M M
BACK KAP KAP KAP KAP KAP KAP
M 0 0 0 1 1 1
KAP 0 1 2 0 1 2

scenario 3.2.1.1 3.2.2.1


FOR M M
BACK M M
M 0 1

scenario 3.3.1.1 3.3.2.1


FOR M M
BACK M M
M 0 1

Table F.10: Tested values for the sorting of resources


164 Multi-Level Capacitated Lotsizing with Setup Carryover

In the standard configuration, resources are ordered in descending order of


their relative capacity utilization both during forward and during backward
passes. Furthermore, we tested the combinations given in table F.10.

The results are given in table F.11. It shows that, when the criterion for
the forward passes is set to the product structure, changing from M to M
affects the solution. All other parameters have no influence. When resources
are ordered according to their capacity requirement during the forward pass,
sorting them according to the product structure during the backward pass is
beneficial. Changing the order of consideration for the backward pass14 does
not influence the solution quality. Changing the capacity criterion affects the
solution.

scenario 1.1.1.1 1.1.1.2 1.1.1.3


∆gapCPLEX 0 0.0407 0.0069

scenario 1.2.1.1 1.2.1.2 1.2.1.3 1.2.2.1 1.2.2.2 1.2.2.3


∆gapCPLEX -0.0006 0.0403 0.0064 -0.0006 0.0403 0.0064

scenario 1.3.1.1 1.3.1.2 1.3.1.3 1.3.2.1 1.3.2.2 1.3.2.3


∆gapCPLEX -0.0006 0.0403 0.0064 -0.0006 0.0403 0.0064

scenario 2.1.1.1 2.1.1.2 2.1.1.3 2.1.2.1 2.1.2.2 2.1.2.3


∆gapCPLEX 0.0474 0.0474 0.0474 0.0474 0.0474 0.0474

scenario 2.2.1.1 2.2.2.1


∆gapCPLEX 0.0474 0.0474

scenario 2.3.1.1 2.3.2.1


∆gapCPLEX 0.0474 0.0474

scenario 3.1.1.1 3.1.1.2 3.1.1.3 3.1.2.1 3.1.2.2 3.1.2.3


∆gapCPLEX 0.0054 0.0054 0.0054 0.0054 0.0054 0.0054

scenario 3.2.1.1 3.2.2.1


∆gapCPLEX 0.0054 0.0054

scenario 3.3.1.1 3.3.2.1


∆gapCPLEX 0.0054 0.0054

Table F.11: Results for the sorting of resources

14 M from 0 to 1 and from M to M


Chapter F. Computational Study 165

Overall, the best results were achieved, when during forward passes resources
are considered in order of the relative capacity utilization, while during back-
ward passes they are considered in some way according to the product struc-
ture.

F.1.4 Parameters for the Sorting of Resources and


Periods

In the standard configuration, all resources are considered for each period,
then the next period. We also tried the combinations given in table F.12.

scenario MP/SEQ

1 all resources are considered for each period, then the next period
2 all periods are considered forward and backward for each resource,
forward and backward passes are executed separately
3 all periods are considered forward for each resource, then backward,
forward and backward passes are executed together

Table F.12: Tested values for the order of consideration of resources and
periods

The results are given in table F.13. Six instances could not be solved by
at least one parameter combination and have been excluded. Overall, the
standard configuration proofed to be most beneficial.

scenario 1 2 3
∆gapCPLEX 0 1.8983 2.2667

Table F.13: Results for the order of consideration of resources and periods
166 Multi-Level Capacitated Lotsizing with Setup Carryover

F.1.5 Parameters for the Shifts

F.1.5.1 Parameters for the Backward Shifts

During backward shifts, shifting deteriorating (P R < 0) or all (all) partial lots
is prohibited until iteration lLS .15

scenario 1.1.1 1.1.2 1.1.3 1.1.4 1.2.1 1.2.2 1.2.4 1.3.4


lLS 10 10 10 10 10 10 10 10
LS all all all all PR < 0 PR < 0 PR < 0 PR < 0
SAV 0 1 2 3 0 1 2 3

scenario 2.1.1 2.1.2 2.1.3 2.1.4 2.2.1 2.2.2 2.2.4 2.3.4


lLS 12 12 12 12 12 12 12 12
LS all all all all PR < 0 PR < 0 PR < 0 PR < 0
SAV 0 1 2 3 0 1 2 3

scenario 3.1.1 3.1.2 3.1.3 3.1.4 3.2.1 3.2.2 3.2.4 3.3.4


lLS 14 14 14 14 14 14 14 14
LS all all all all PR < 0 PR < 0 PR < 0 PR < 0
SAV 0 1 2 3 0 1 2 3

scenario 4.1.1 4.1.2 4.1.3 4.1.4 4.2.1 4.2.2 4.2.4 4.3.4


lLS 16 16 16 16 16 16 16 16
LS all all all all PR < 0 PR < 0 PR < 0 PR < 0
SAV 0 1 2 3 0 1 2 3

scenario 5.1.1 5.1.2 5.1.3 5.1.4 5.2.1 5.2.2 5.2.4 5.3.4


lLS 18 18 18 18 18 18 18 18
LS all all all all PR < 0 PR < 0 PR < 0 PR < 0
SAV 0 1 2 3 0 1 2 3

scenario 6.1.1 6.1.2 6.1.3 6.1.4 6.2.1 6.2.2 6.2.4 6.3.4


lLS 20 20 20 20 20 20 20 20
LS all all all all PR < 0 PR < 0 PR < 0 PR < 0
SAV 0 1 2 3 0 1 2 3

Table F.14: Tested values for backward shifts

The parameter SAV determines, whether additional cumulated overtime is


reflected in the choice of the best shift or not. In the first case, additional
cumulated overtime is not reflected at all (0). In the second case, the priority
values are weighted with additional cumulated overtime (1). In the third case,
15 See section E.4.3.3.5.
Chapter F. Computational Study 167

if additional cumulated overtime is incurred, the shift with least additional


overtime is executed (2). Finally, in the fourth case, the priority values are
weighted and the best shift with the least additional overtime is selected (3).

In the standard configuration, partial shifts are prohibited, only if their priority
value is negative. This is done until iteration lLS = 4. Additional cumulated
overtime is not reflected. We also tested the combinations given in table F.14.

The results are given in tables F.15. No combination lead to better results
than the standard configuration.

scenario 1.1.1 1.1.2 1.1.3 1.1.4 1.2.1 1.2.2 1.2.3 1.2.4


∆gapCPLEX 0.0576 0.0692 0.0694 0.0696 0.0577 0.0693 0.0694 0.0696

scenario 2.1.1 2.1.2 2.1.3 2.1.4 2.2.1 2.2.2 2.2.3 2.2.4


∆gapCPLEX 0.0569 0.0621 0.0621 0.0624 0.0569 0.0621 0.0621 0.0624

scenario 3.1.1 3.1.2 3.1.3 3.1.4 3.2.1 3.2.2 3.2.3 3.2.4


∆gapCPLEX 0.0569 0.0611 0.0612 0.0615 0.0569 0.0611 0.0612 0.0615

scenario 4.1.1 4.1.2 4.1.3 4.1.4 4.2.1 4.2.2 4.2.3 4.2.4


∆gapCPLEX 0.0608 0.0652 0.0653 0.0656 0.0608 0.0652 0.0653 0.0656

scenario 5.1.1 5.1.2 5.1.3 5.1.4 5.2.1 5.2.2 5.2.3 5.2.4


∆gapCPLEX 0.0537 0.0609 0.0609 0.0612 0.0537 0.0609 0.0609 0.0612

scenario 6.1.1 6.1.2 6.1.3 6.1.4 6.2.1 6.2.2 6.2.3 6.2.4


∆gapCPLEX 0.0604 0.0661 0.0662 0.0665 0.0604 0.0661 0.0662 0.076

Table F.15: Results for backward shifts

F.1.5.2 Parameters for the Multi-item Shifts

For multi-item forward shifts (VARFOR) either only the shiftable quantity
of the final item is extrapolated (min) or inventory is used to shift further
production (max).16 Multi-item backward shifts (VARBACK) are either ne-
glected in iterations prior to lLS (min) or the quantity causing overtime is
shifted (max).17

16 See section E.4.3.3.4.


17 See section E.4.3.3.6.
168 Multi-Level Capacitated Lotsizing with Setup Carryover

In the standard configuration, only the shiftable quantity of the final item
is extrapolated. During backward shifts, multi-item shifts are neglected in
iterations prior to lLS . Furthermore, we tested the combinations given in table
F.16.

scenario 1.1 1.2 2.1 2.2


VARFOR min min max max
VARBACK min max min max

Table F.16: Tested values for multi-item shifts

The results are given in table F.17. Again, the standard configuration proofed
most beneficial. Changing the criterion for forward passes leads to a rather in-
significant deterioration of the overall solution quality. Changing the criterion
for backward passes has no significant effects on the solution quality.

scenario 1.1 1.2 2.1 2.2


∆gapCPLEX 0 1.2096 0.014 1.2632

Table F.17: Results for multi-item shifts

F.1.5.3 Parameters for Careful Shifts

As described in section E.4.3.3, the heuristic is divided into two parts by the
parameter lO . At the beginning of the procedure, additional overtime may be
incurred in the target period. By contrast, in iterations later than lO , shifts
are only allowed, if they do not incur additional overtime in the target period.
In the standard configuration, lO is set to 10. Furthermore, we tested the
values given in table F.18.
Chapter F. Computational Study 169

scenario 1 2 3 4 5 6
lO 10 12 14 16 18 20

Table F.18: Tested values for the first iteration of careful shifts

Five instances have been excluded from the evaluation. Table F.19 shows that
increasing lO has a deteriorating effect on the solution quality. However, the
effect is not significant.

scenario 1 2 3 4 5 6
∆gapCPLEX 0 0.0013 0.0017 0.0025 0.03 0.04

Table F.19: Results for the first iteration of careful shifts

F.1.6 Parameters for the Computation of Priority


Values

The parameters for the priority values consist of the cost factors applied
(PRC), the weight (PRW) and the iteration, until which only improving shifts
are allowed (lP R ). Either the modified cost factors of the SLULSPLs (mod-
ified) or the original cost factors (original) are applied. They are either not
weighted (no) or weighted with overtime (yes).18

In the standard configuration, the modified cost factors of the SLULSPLs are
applied. The priority values are not weighted with overtime. Furthermore,
lP R is set to 0, which means that deteriorating shifts are always allowed.

We also tested the combinations given in table F.20.

The results are given in table F.21. The difference in solution quality is signif-
icant. The greatest impact stems from prohibiting deteriorating shifts during
the first iterations. Using the original cost factors leads to better results than

18 See section E.4.3.3.7.


170 Multi-Level Capacitated Lotsizing with Setup Carryover

scenario 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6

PRC modified modified modified modified modified modified


PRW no no no no no no
lP R 0 2 4 6 8 10

scenario 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6

PRC modified modified modified modified modified modified


PRW yes yes yes yes yes yes
lP R 0 2 4 6 8 10

scenario 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6

PRC original original original original original original


PRW no no no no no no
lP R 0 2 4 6 8 10

scenario 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6

PRC original original original original original original


PRW yes yes yes yes yes yes
lP R 0 2 4 6 8 10

Table F.20: Tested values for the computation of the priority values

using modified once. The impact of weighting the priority value with overtime
is less strong.19

scenario 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6


∆gapCPLEX 0 -1.7016 -2.2524 -2.2384 -2.2278 -2.1887

scenario 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6


∆gapCPLEX 0.1191 -1.5095 -2.1664 -2.1725 -2.159 -2.173

scenario 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6


∆gapCPLEX 0.0033 -1.7258 -2.2718 -2.257 -2.2481 -2.2113

scenario 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6


∆gapCPLEX 0.0832 -1.4983 -2.177 -2.1837 -2.1857 -2.1751

Table F.21: Results for the priority values


19 Due to the importance of the choice of priority values, we redid the test in combination
with the maximum number of iterations of the overall procedure and the optimal values
for the remaining parameters. This will be described in section F.2.
Chapter F. Computational Study 171

Overall, the best results are achieved when the original cost factors are used,
the priority values are not weighted with overtime and deteriorating shifts are
prohibited until period 4.

F.1.7 Parameters for the Application of Tabu Lists

F.1.7.1 Parameters for the Tabu Status

In the standard configuration, tabu lists are not applied. We tested different
combinations for the first iteration the tabu lists are applied lTABU , the max-
imum duration of a tabu entry tTABU and the length of the tabu lists nTABU
as depicted in table F.22.

scenario 1.1.1 1.1.2 1.1.3 1.1.4 1.2.1 1.2.2 1.2.3 1.2.4

TABU
l 8 8 8 8 8 8 8 8
tTABU 3 3 3 3 6 6 6 6
nTABU 5 10 15 20 5 10 15 20

scenario 2.1.1 2.1.2 2.1.3 2.1.4 2.2.1 2.2.2 2.2.3 2.2.4

lTABU 16 16 16 16 16 16 16 16
tTABU 3 3 3 3 6 6 6 6
nTABU 5 10 15 20 5 10 15 20

scenario 3.1.1 3.1.2 3.1.3 3.1.4 3.2.1 3.2.2 3.2.3 3.2.4

TABU
l 24 24 24 24 24 24 24 24
tTABU 3 3 3 3 6 6 6 6
nTABU 5 10 15 20 5 10 15 20

Table F.22: Tested values for the tabu lists

The results are given in table F.23. All instances could be solved by at least
one parameter combination, but six test instances could not be solved by each
one. Thus, they were neglected in the evaluation.
172 Multi-Level Capacitated Lotsizing with Setup Carryover

scenario 1.1.1 1.1.2 1.1.3 1.1.4 1.2.1 1.2.2 1.2.3 1.2.4


∆gapCPLEX 0.0416 0.0539 0.0473 0.0503 0.0416 0.0523 0.0474 0.0475

scenario 2.1.1 2.1.2 2.1.3 2.1.4 2.2.1 2.2.2 2.2.3 2.2.4


∆gapCPLEX 0 0 0 0 0 0 0 0

scenario 3.1.1 3.1.2 3.1.3 3.1.4 3.2.1 3.2.2 3.2.3 3.2.4


∆gapCPLEX 0 0 0.0006 0.0001 -0.0001 0.0007 0.0004 0.0008

Table F.23: Results for the tabu lists

The best results were achieved with lTABU = 24, tTABU = 6 and nTABU = 5.
However, the benefit is marginal. Also, results were most stable with the first
iteration of the application of tabu lists set to 16. Thus, we will keep the result
of a different test set, in which the best results were found for lTABU = 16,
tTABU = 3 and nTABU = 5.

F.1.7.2 Parameters for the Aspiration Criterion

Finally, we tested the aspiration criterion. The combinations of the first it-
eration lASP , in which the aspiration criterion is applied, and the probability
ASP of accepting a tabu move are given in table F.24.

scenario 1.1 1.2 1.3 1.4 2.1 2.2 2.3 2.4


lASP 24 24 24 24 26 26 26 26
ASP 0.2 0.4 0.6 0.8 0.2 0.4 0.6 0.8

scenario 3.1 3.2 3.3 3.4 4.1 4.2 4.3 4.4


lASP 28 28 28 28 30 30 30 30
ASP 0.2 0.4 0.6 0.8 0.2 0.4 0.6 0.8

Table F.24: Tested values for the aspiration criterion

In our test set, the application of an aspiration criterion did not change the
results. Thus, we will again keep the results of prior testing, in which the best
combination was lASP = 21 and ASP = 0.6.
Chapter F. Computational Study 173

F.2 Dominant Parameter Configurations and


Further Tests for Selected Parameters
Parameters

From the tests described in section F.1, we deducted the dominant parameter
configurations for the different aspects of the heuristic. They will be given in
section F.2.1.

With all parameters set to their dominant values, we conducted further tests
for the total number of iterations and the computation of the priority values.
The test of the latter was included due to the significance of the results. The
tests are described in section F.2.2.

Finally, we tested the setup cost reduction factor for parallel machines. This
will be described in section F.2.3.

F.2.1 Dominant Parameter Configurations

Name Value Description

α0 1 initial value for the smoothing parameter αl


αred 0.15 factor for the update of the smoothing parameter αl
MODUS 12 initialization of the factor δ l at 2
after n non-improving iterations δ l = δ l · 12 and n = n
2
n is initialized at lmax
estimate of the optimal solution Z ∗ = U B @−1
δ0 - not relevant for MODUS 12
δ red - not relevant for MODUS 12
lδ - not relevant for MODUS 12
markupLB - not relevant for MODUS 12
markupU B 0 markup to estimate the upper bound before the first feasible solution
U B = max{LB ∗ , LB l } · markupU B
LB λ 0 use the current lower bound to the stepsize λ

Table F.25: Dominant configuration for the parameters for the Lagrangean
multipliers
174 Multi-Level Capacitated Lotsizing with Setup Carryover

In table F.25, the dominant parameter configuration for the Lagrangean mul-
tipliers are given.

The stopping criterion for the finite loading heuristic will be kept from the
standard configuration, as testing lead to no differing results.20

Name Value Description

lmax 50 maximum number of iterations

Table F.26: Dominant Configuration for the Parameter for the termination
of the finite loading heuristic

Name Value Description

MP 0 all resources are considered for one period, then the next period
SEQ 0 forward and backward passes are executed separately
FOR 0 forward shifts: order of resources determined by KAP
BACK 1 backward shifts: order of resources determined by M
KAP 0 sorting in descending order of relative capacity utilization
M 1 sorting in descending order of the low-level codes of the corresponding items

Table F.27: Dominant configuration for the parameters for the ordering of
shifts

Name Value Description

lO 10 first iteration of careful shifts


VARFOR 0 multi-item forward shifts: only the shiftable quantity of the final item is
extrapolated
lLS 4 backward shifts: iteration until which shifts
of partial lots according to LS are prohibited
LS 1 backward shifts: partial shifts with negative priority values are prohibited
SAV 0 backward shifts: no adaptation to additional cumulated overtime
VARBACK 0 multi-item backward shifts: are neglected in iterations prior to lLS

Table F.28: Dominant configuration for the parameters for the shifts

20 See table F.26.


Chapter F. Computational Study 175

The dominant values for the ordering of resources and periods are given in
table F.27.

Table F.28 gives the dominant values for the parameters to determine the
shiftable quantities for the different types of shifts.

Finally, table F.29 contains the values for the parameters of the tabu lists.
They are not deducted from the test set as the results were not significant.
Instead, we selected the values obtained in prior tests.

Name Value Description

lTABU 16 first iteration a tabu list is applied


nTABU 5 length of tabu list
tTABU 3 maximum duration a tabu entry is kept
lASP 21 first iteration the aspiration criterion is applied
ASP 0.6 probability of accepting a tabu shift when the aspiration criterion is applied

Table F.29: Dominant configuration for the parameters for the application of
tabu lists

F.2.2 Further tested Parameter Combinations

The maximum number of iterations lmax is the stopping criterion of the La-
grangean heuristic. In the standard configuration, it is set to 70. As the choice
of the computation of the priority values had such a high impact on the solu-
tion quality,21 we decided to test the stopping criterion of the overall heuristic
together with the computation of the priority values. From the tests described
above we will keep the iteration lP R , until which only improving shifts are
allowed, at 4. The further parameter combinations are given in table F.30.

The results are given in table F.31. For all types of computation for the priority
value, the quality of the solution systematically increases with the maximum
number of iterations. Furthermore, weighting the priority values with overtime
is beneficial regardless the number of iterations.

21 See section F.1.6.


176 Multi-Level Capacitated Lotsizing with Setup Carryover

scenario 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6


PRC modified modified modified modified modified modified
PRW no no no no no no
lmax 70 80 90 100 110 120

scenario 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6


PRC modified modified modified modified modified modified
PRW yes yes yes yes yes yes
lmax 70 80 90 100 110 120

scenario 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6


PRC original original original original original original
PRW no no no no no no
lmax 70 80 90 100 110 120

scenario 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6


PRC original original original original original original
PRW yes yes yes yes yes yes
lmax 70 80 90 100 110 120

Table F.30: Tested values for the computation of the priority values

scenario 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6


∆gapCPLEX -2.8294 -2.9021 -2.9795 -3.027 -3.1468 -3.1887

scenario 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6


∆gapCPLEX -2.9208 -2.9974 -3.0714 -3.1244 -3.2395 -3.2946

scenario 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6


∆gapCPLEX -2.8831 -2.9576 -3.0458 -3.0843 -3.2226 -3.2714

scenario 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6


∆gapCPLEX -2.965 -3.0562 -3.1187 -3.1737 -3.27 -3.3352

Table F.31: Results for the maximum number of per TBO profile

From these further tests, we deducted the dominant parameters for the com-
putation of the priority values as shown in table F.32.
Chapter F. Computational Study 177

Name Value Description

PRC 1 use modified cost factors of the SLULSPLs for priority values
PRW 1 priority values are not weighted with overtime
lP R 4 iteration until which only improving shifts are allowed

Table F.32: Dominant configuration for the parameters for the computation
of priority values

F.2.3 Parameters for Parallel Machines

The test sample for parallel machines is described in section C.7. For the
subsets of classes 2, 4 and 6 with setup time profile 1 and TBO profile 2 (4 for
class 2), we introduced to profiles of parallel machines. We will refer to them
as PM1 and PM2.22

There are two parameters for parallel machines. The first is the number of
P M 23
iterations lmax . Remember, that for parallel machines the next iteration
PM
is started, only if no feasible solution is found. Here, we set the lmax to 20.
Some further testing showed that instances, which could be solved after 20
PM
iterations, could not be solved with a higher lmax either.

The second parameter is SCMOD. It is used to modify the setup costs for the
aggregate model, MLCLSPLP M AGG .24

We conducted two tests for SCMOD for the MLCLSPLP M with single setup
carryovers, as well as for the MLCLSPLP M CC with consecutive setup carry-
overs. The reason is that in the consecutive setup carryover case, it may be
beneficial to produce an item in even more periods, as more setup carryovers
can be installed for the same item.

First, we tested the values given in table F.33 for the MLCLSPLP M with single
setup carryovers.

22 See table C.6 on page 64.


23 See algorithm 12 on page 140.
24 See equation E.58 on page 142.
178 Multi-Level Capacitated Lotsizing with Setup Carryover

scenario 1 2 3
SCMOD 0.25 0.5 0.75

Table F.33: Tested values for the setup cost modification - test 1

The results are given in table F.34 for the two profiles PM1 and PM2 of parallel
machines as described in sectionC.7. For each profile, three instances could not
be solved by at least one scenario and have been excluded. For ∆gapCPLEX
PM ,
the best scenario (SCMOD = 0.5) of each profile was selected as reference
value.

PM1 PM2

scenario 1 2 3 1 2 3
∆gapCPLEX
PM 1.7374 0 0.3693 0.5846 0 1.6162

Table F.34: Results for the setup cost modification for the MLCLSPLP M -
test 1

As the best results for both profiles were generated with SCMOD set to 0.5,
we further conducted the tests given in table F.35.

scenario 1 2 3 4 5 6 7 8 9
SCMOD 0.3 0.35 0.4 0.45 0.5 0.55 0.6 0.65 0.7

Table F.35: Tested values for the setup cost modification for the
MLCLSPLP M - test 2

The results are contained in tables F.36. Again, for each profile three instances
could not be solved by at least one scenario and have been excluded.
Chapter F. Computational Study 179

PM1 PM2

scenario 1 2 3 1 2 3
∆gapCPLEX
PM 1.2609 1.1042 0.4135 0.9135 0.3571 0.2563

scenario 4 5 6 4 5 6

∆gapCPLEX
PM 0.2019 0 0.1723 0.0425 0 0.3317

scenario 7 8 9 7 8 9
∆gapCPLEX
PM 0.1978 0.0968 0.2388 0.7451 1.2106 1.307

Table F.36: Results for the setup cost modification for the MLCLSPLP M -
test 2

Again, SCMOD = 0.5 lead to the best results for both profiles.

Also for the MLCLSPLP M CC with consecutive setup carryovers, we tested the
values given in table F.33 first.

The results are given in table F.37 for the two profiles PM1 and PM2. For
each profile, two instances could not be solved by at least one scenario and
have been excluded. Again, the best scenario was selected as reference for
∆gapCPLEX
PM . For PM2, the results did not differ. Thus, SCMOD = 0.25 was
selected for both profiles.

PM1 PM2

scenario 1 2 3 1 2 3
∆gapCPLEX
PM 0 0.0096 0.0096 0 0 0

Table F.37: Results for the setup cost modification for the MLCLSPLP M CC
- test 1

We further conducted the tests given in table F.38.


180 Multi-Level Capacitated Lotsizing with Setup Carryover

scenario 1 2 3 4 5 6 7 8
SCMOD 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4

Table F.38: Tested values for the setup cost modification for the
MLCLSPLP M CC - test 2

The results are contained in tables F.39. For each profile two instances could
not be solved by at least one scenario and have been excluded.

PM1 PM2

scenario 1 2 3 1 2 3
∆gapCPLEX
PM 0 0.0169 0.0169 0.0117 0.0117 0.0115

scenario 4 5 6 4 5 6

∆gapCPLEX
PM 0.0169 0.0169 0.0169 0.0115 0.0115 0 0.0117

scenario 7 8 7 8
∆gapCPLEX
PM 0.0169 0.0169 0.0115 0.0115

Table F.39: Results for the setup cost modification for the MLCLSPLP M CC
- test 2

The best results for the MLCLSPLP M CC were computed with SCMOD = 0.05
for PM1 and SCMOD = 0.25 for PM2.

F.3 Evaluation of the Overall Performance of


the Heuristic

With the best parameter combinations found during our tests, we finally tested
the performance of the overall heuristic for the different model formulation.

In the standard configuration, the overall procedure terminates after lmax = 70


iterations, or earlier, if the subgradients become sufficiently small. In section
Chapter F. Computational Study 181

F.2, we tested values up to 250 for lmax . As table F.31 shows, the quality of
the solution increases with the number of iterations in the given interval.

40000

35000

30000

25000

20000

15000

10000

5000

0
0 120 240 360 480 600 720 840 960 1080 1200

Figure F.1: Development of the upper and the lower bound for a given test
instances

Figure F.1 gives the development of the best upper bound and the best lower
bound for one test instance of the MLCLSPLe . The horizontal line represents
the optimal solution obtained with CPLEX. Although this holds true for some
rather than all test instances, F.1 shows that significant improvements both
of the upper and of the lower bound are found after more than 120 iterations.

Thus, we decided to test different values for the stopping criterion lmax of the
overall procedure.

For the MLCLSPLe and the MLCLSPLCC without parallel machines, we


tested the values given in table F.40.
182 Multi-Level Capacitated Lotsizing with Setup Carryover

scenario 1 2 3 4 5
lmax 120 240 360 480 1200

Table F.40: Tested values for the maximum number of iterations lmax for the
MLCLSPL without parallel machines

For the MLCLSPLP M with parallel machines, we tested the values given in
table F.41. We did not conduct further with higher values for lmax , because
PM
the Lagrangean heuristic may be executed up to lmax = 20 times.

scenario 1 2
lmax 70 120

Table F.41: Tested values for the maximum number of iterations lmax for the
MLCLSPL with parallel machines

The evaluation of the performance of the heuristic is based on the following


four criteria:

1. the number of feasible solutions found by the heuristic,

2. the average deviation of the best upper bound found by the heuristic
from the lower bound of CPLEX as computed by equation F.1,

3. the average deviation of the upper bound and the lower bound given by
the heuristic and

4. the computation time in CPU seconds.

The average deviation of the upper bound and the lower bound given by the
heuristic is computed as:

UBheuristic − LBheuristic
gapheuristic = · 100 (F.4)
LBheuristic
Chapter F. Computational Study 183

As the problem instances were generated systematically,25 we decided to divide


our analysis into the following four categories:

1. results per class,

2. results per setup time and capacity profile,

3. results per setup and holding cost ratio and

4. results per product and process structure and demand profile.

The first type of table gives the results per class. This demonstrated the
solution quality for different problem sizes. The second type of table gives
the results per setup time profile and capacity profile. We chose to consider
the two together as the setup time profile influences the capacity utilization
of a given resource. The third type of table gives the results per TBO profile
and thus per setup and holding cost ratio. TBO profiles 3 and 4 are only
relevant for classes 1 and 2. Finally, the fourth type of table gives the results
per product and process structure and per demand profile.

In section F.3.1, the results for the MLCLSPLe will be given. Then, sec-
tion F.3.2 gives the results for the MLCLSPLCC . Finally, the results for the
MLCLSPLP M will be presented in section F.3.3.

F.3.1 Results for the MLCLSPL with Single Setup


Carryover

Tables F.42 to F.47 contain the results for the MLCLSPLe .

scenario 1 2 3 4 5
] feasible solutions 1917 1916 1917 1916 1917
% feasible solutions 99.8438 99.7917 99.8438 99.7917 99.8438

Table F.42: Number of feasible solutions for the MLCLSPLe

25 See chapter C.
184 Multi-Level Capacitated Lotsizing with Setup Carryover

The number of feasible solutions generated by each of the scenarios is given in


table F.42.

Remember, that MODUS is set to 12.26 Thus, lmax affects the update of the
Lagrangean multipliers. Therefore, a higher lmax may lead to inferior results.

Tables F.43 to F.47 contain the solution quality and computation time for the
1916 test instances, which could be solved by all scenarios.

scenario 1 2 3 4 5
gapCPLEX 6.1307 5.7222 5.5225 5.2739 4.8884
gapheuristic 14.2426 12.7222 12.0175 11.2989 9.8812
CPU sec. 0.147 0.2766 0.4075 0.5408 1.3459

Table F.43: Results for the MLCLSPLe

Table F.43 shows that the deviations of the optimal solutions provided by
the heuristic from the best lower bounds computed by CPLEX ameliorate
significantly with the maximum number of iterations. The best results were
computed for lmax = 1200. Here, the average deviation from the lower bound
provided by CPLEX is 4.8884% of the latter.

Also, the average deviation of the results from the lower bound provided by
the heuristic become better with higher maximum numbers of iterations. For
lmax = 1200, the average deviation from the lower bound provided by the
heuristic is 9.8812% of the latter.

Not surprisingly, the average computation time in CPU seconds increases with
higher values for lmax . Still, even for lmax = 1200 only 1.3459 CPU seconds
on average are required.

Information on the different classes of our test sample is given in table C.1
on page 56. Table F.44 shows that for the MLCLSPLe the solution quality
deteriorates, when the number of periods increases relative to the number of
items. It is not surprising that the solution quality for the small problems of

26 See table F.25.


Chapter F. Computational Study 185

classes 1 and 2 is rather good. Notably, however, the heuristic performs better
for classes 5 and 6 than for classes 3 and 4, although the former comprise 40
items while the latter only comprise 20 items.

scenario 1 2 3 4 5

CPLEX
class 1 gap 1.1708 1.0750 1.0696 1.0696 1.0639
gapheuristic 3.9063 3.3263 3.0652 2.9297 2.6091
CPU sec. 0.0065 0.0095 0.0141 0.0186 0.0437

class 2 gapCPLEX 3.2408 3.0291 2.8996 2.8697 2.7497


gapheuristic 10.1007 8.2464 7.3086 6.6624 5.1032
CPU sec. 0.0216 0.0407 0.0577 0.0775 0.1966

class 3 gapCPLEX 6.5397 6.0716 6.0020 5.9574 5.7809


gapheuristic 14.1548 12.9454 12.839 12.4932 11.9357
CPU sec. 0.0901 0.1721 0.2606 0.3500 0.8920

class 4 gapCPLEX 14.9531 14.4911 14.1824 13.7700 11.9277


gapheuristic 34.9442 33.0065 32.0457 30.4812 25.8122
CPU sec. 0.4004 0.7518 1.1159 1.4830 3.6735

class 5 gapCPLEX 5.8407 5.1649 5.0494 4.0144 3.8900


gapheuristic 13.6532 12.2558 11.8458 10.5095 9.9711
CPU sec. 0.1337 0.2563 0.3822 0.5230 1.4116

class 6 gapCPLEX 13.0033 11.9456 11.1008 10.661 9.9658


gapheuristic 23.3260 20.5551 18.7740 17.8321 16.0079
CPU sec. 0.5020 0.9431 1.3737 1.7994 4.3596

Table F.44: Results for the MLCLSPLe per class

The five capacity profiles are given in table C.5 on page 64. The two setup
time profile are given in table C.3 on page 60. Table F.45 shows that the
results are better for instances with high capacity utilization profiles. The
best results were computed for capacity profiles 4 and 5, where the capacity
utilization of the resources differed. The influence of the setup time profiles is
neither important nor systematic.
186 Multi-Level Capacitated Lotsizing with Setup Carryover

scenario 1 2 3 4 5

cap1, tr1 gapCPLEX 10.5271 10.2917 10.1738 9.3261 9.0199


gapheuristic 15.4882 14.5081 14.1308 13.0331 12.5519
CPU sec. 0.0442 0.0842 0.1186 0.1679 0.4469

cap1, tr2 gapCPLEX 10.3958 10.1002 9.8710 9.3200 8.9393


gapheuristic 15.2185 14.1051 13.7395 12.7780 12.3180
CPU sec. 0.0481 0.0822 0.1165 0.1608 0.4256

cap2, tr1 gapCPLEX 7.6314 6.5704 6.2611 5.9775 5.2082


gapheuristic 17.1471 14.7468 13.9589 13.2659 11.6662
CPU sec. 0.0792 0.1460 0.2162 0.2936 0.7257

cap2, tr2 gapCPLEX 8.2590 7.7733 7.4222 7.0471 6.1282


gapheuristic 14.515 13.1829 12.6413 11.5614 9.8267
CPU sec. 0.0854 0.1432 0.2157 0.2831 0.7184

cap3, tr1 gapCPLEX 4.3527 4.0788 3.9254 3.8445 3.5266


gapheuristic 19.2396 17.2527 16.0245 15.2228 12.2287
CPU sec. 0.2739 0.5213 0.7700 1.0320 2.5186

cap3, tr2 gapCPLEX 4.6993 4.2972 4.0674 3.8869 3.6289


gapheuristic 14.2277 12.6792 11.8474 11.1289 9.3954
CPU sec. 0.2797 0.5287 0.7791 1.0332 2.5578

cap4, tr1 gapCPLEX 4.0307 3.5945 3.4792 3.4415 3.1903


gapheuristic 11.2879 9.9278 9.3034 8.9400 7.8309
CPU sec. 0.1722 0.3394 0.5001 0.6340 1.5608

cap4, tr2 gapCPLEX 3.9557 3.7017 3.4763 3.4376 3.1206


gapheuristic 10.4824 9.1559 8.4378 8.1308 7.0452
CPU sec. 0.1805 0.3349 0.4966 0.6511 1.5867

cap5, tr1 gapCPLEX 3.6478 3.3138 3.1865 3.1332 2.9859


gapheuristic 14.4725 12.5972 11.7374 11.0093 9.1471
CPU sec. 0.1506 0.2903 0.4224 0.5710 1.4366

cap5, tr2 gapCPLEX 3.7703 3.4661 3.3287 3.2951 3.1074


gapheuristic 10.4511 9.1608 8.4369 8.0007 6.8503
CPU sec. 0.1594 0.3008 0.4472 0.5919 1.5063

Table F.45: Results for the MLCLSPLe per capacity and setup time profile

The setup and holding cost ratios are depicted in table C.4 on page 62. TBO
profiles 3 and 4 are considered for classes 1 and 2 only. Table F.46 shows that
the heuristic performs significantly better, when the setup and holding cost
ratio differs for various items than when they are equal for all items.
Chapter F. Computational Study 187

scenario 1 2 3 4 5

TBO1 gapCPLEX 11.4853 10.6564 10.2319 9.6128 8.7453


gapheuristic 25.8248 23.2169 21.9903 20.4969 17.8689
CPU sec. 0.2098 0.3990 0.5882 0.7765 1.9041

TBO2 gapCPLEX 2.6943 2.5873 2.5449 2.5100 2.4173


gapheuristic 8.1525 7.4839 7.1642 6.9080 6.1954
CPU sec. 0.1723 0.3214 0.4750 0.6343 1.6112

TBO3 gapCPLEX 5.2723 4.8977 4.7172 4.6897 4.5022


gapheuristic 7.5803 5.6617 4.8494 4.4878 3.6221
CPU sec. 0.0169 0.0286 0.0406 0.0530 0.1251

TBO4 gapCPLEX 1.2505 1.1639 1.1466 1.1466 1.1282


gapheuristic 4.4742 4.0571 3.8694 3.7289 3.2702
CPU sec. 0.0139 0.0243 0.0317 0.0441 0.1029

Table F.46: Results for the MLCLSPLe per setup and holding cost ratio

Information on the product and process structures is given in section C.2.


The demand profiles are described in section C.3. Table F.47 shows that the
results are inferior for general product structures than for assembly ones. Also,
the best results are generated for demand profile 1, where the coefficient of
variation is 0.2. In general, the results for cyclic process structures are slightly
inferior to those for acyclic process structures.
188 Multi-Level Capacitated Lotsizing with Setup Carryover

scenario 1 2 3 4 5

AA, dem1 gapCPLEX 1.7644 1.4872 1.3605 1.3363 1.096


gapheuristic 3.6692 3.177 2.9907 2.9337 2.634
CPU sec. 0.0906 0.1764 0.2446 0.3117 0.7460

AA, dem2 gapCPLEX 4.4040 3.6701 3.4572 2.7478 2.5438


gapheuristic 10.2661 8.5992 8.0255 7.0456 6.3397
CPU sec. 0.1356 0.2559 0.3731 0.5003 1.3096

AA, dem3 gapCPLEX 3.4425 3.3233 3.2747 3.2447 3.1547


gapheuristic 12.8835 10.9682 9.9278 9.0908 7.0694
CPU sec. 0.1535 0.2954 0.4159 0.5211 1.2567

AC, dem1 gapCPLEX 1.7285 1.5891 1.5232 1.5074 1.2349


gapheuristic 3.3339 3.0294 2.9041 2.8646 2.5467
CPU sec. 0.0777 0.1378 0.2069 0.2772 0.7199

AC, dem2 gapCPLEX 4.2473 3.6370 3.5833 2.7581 2.6129


gapheuristic 10.1388 8.8790 8.3689 7.2578 6.387
CPU sec. 0.1244 0.2347 0.3509 0.4732 1.1905

AC, dem3 gapCPLEX 3.8376 3.6853 3.6242 3.6045 3.5425


gapheuristic 13.8567 11.9717 10.7567 9.8005 7.4059
CPU sec. 0.1295 0.2319 0.3389 0.4519 1.1270

GA, dem1 gapCPLEX 6.7688 6.6346 6.5224 6.5051 6.0781


gapheuristic 11.9798 10.7959 10.5647 10.2283 9.5651
CPU sec. 0.1351 0.2523 0.3616 0.4819 1.1981

GA, dem2 gapCPLEX 7.2892 7.0409 6.7210 6.4877 6.2685


gapheuristic 20.2535 18.3686 17.3339 16.9108 15.0234
CPU sec. 0.2878 0.5505 0.8155 1.0724 2.6814

GA, dem3 gapCPLEX 11.0582 10.2343 9.8675 9.5427 9.2229


gapheuristic 23.7647 21.5896 19.8398 18.5890 17.2503
CPU sec. 0.2190 0.4258 0.6421 0.8611 2.1797

GC, dem1 gapCPLEX 8.1900 7.7679 7.3768 7.0361 5.203


gapheuristic 12.7047 11.4197 11.1577 10.3987 8.0189
CPU sec. 0.0991 0.1727 0.2578 0.3506 0.8141

GC, dem2 gapCPLEX 8.246 7.9103 7.5453 7.4746 7.2861


gapheuristic 19.8962 18.3908 17.4317 16.9602 15.8866
CPU sec. 0.1428 0.2614 0.3912 0.5238 1.3266

GC, dem3 gapCPLEX 12.7359 11.8189 11.5432 11.1689 10.5418


gapheuristic 28.4607 25.7509 25.1703 23.7537 20.6741
CPU sec. 0.1707 0.3268 0.4951 0.6703 1.6151

Table F.47: Results for the MLCLSPLe per product and process structure
and demand profile
Chapter F. Computational Study 189

F.3.2 Results for the MLCLSPL with Consecutive


Setup Carryover

Tables F.48 to F.53 give the results for the MLCLSPLCC .

Again, the number of feasible solutions generated by each of the scenarios is


contained in table F.48.

scenario 1 2 3 4 5
] feasible solutions 1912 1913 1912 1913 1914
% feasible solutions 99.5833 99.6354 99.5833 99.6354 99.6875

Table F.48: Number of feasible solutions for the MLCLSPLCC

Tables F.49 to F.53 give the solution quality and computation time for the
1912 test instances, which could be solved by all scenarios.

scenario 1 2 3 4 5
gapCPLEX 2.3402 2.2594 2.2221 2.2081 2.1459
gapheuristic 13.0406 11.949 11.4025 11.0337 10.0337
CPU sec. 1.8696 3.2652 4.5844 5.8660 13.0627

Table F.49: Results for the MLCLSPLCC

Table F.49 shows that the deviations of the optimal solutions provided by the
heuristic from the best lower bounds computed by CPLEX and by the heuristic
ameliorate with the maximum number of iterations also for the MLCLSPLCC .
However, the effect is less important than for the MLCLSPLe .

For the best results, the average deviation from the lower bound provided
by CPLEX is 2.1459% of the latter. This implies that the results for the
MLCLSPLCC are better than the ones for the MLCLSPLe in two ways. First,
better solutions are incurred due to the mere fact that consecutive setup car-
ryovers are allowed.27 Second, the solution provided by the heuristic is closer
27 See table D.4 on page 86.
190 Multi-Level Capacitated Lotsizing with Setup Carryover

to the exact optimal solution for the MLCLSPLCC than for the MLCLSPLe .

The average deviation from the lower bound provided by the heuristic is
10.0337% of the latter for lmax = 1200. Hence, the lower bounds pro-
vided by the heuristic are slightly inferior for the MLCLSPLCC than for the
MLCLSPLe .

Again, the average computation time in CPU seconds increases with higher
values for lmax . For lmax = 1200, 13.0627 CPU seconds on average are re-
quired.

scenario 1 2 3 4 5

CPLEX
class 1 gap 1.7782 1.7359 1.712 1.7167 1.6856
gapheuristic 9.5023 8.6721 8.2626 8.0292 7.4599
CPU sec. 0.0158 0.0247 0.0373 0.0430 0.1175

class 2 gapCPLEX 2.4397 2.3134 2.2609 2.2342 2.1797


gapheuristic 17.0670 15.3376 14.3841 13.7955 12.1950
CPU sec. 0.0836 0.1493 0.2060 0.2710 0.6259

class 3 gapCPLEX 2.4444 2.3197 2.2558 2.2467 2.1757


gapheuristic 10.8220 10.4416 10.1899 10.0001 9.4371
CPU sec. 0.7126 1.2750 1.7838 2.2912 5.0047

class 4 gapCPLEX 3.9031 3.7818 3.7097 3.6703 3.5380


gapheuristic 19.8613 18.1381 17.4702 16.7840 14.9775
CPU sec. 3.3004 6.0584 8.7577 11.4322 27.0004

class 5 gapCPLEX 1.7521 1.7425 1.7330 1.7282 1.7004


gapheuristic 9.5353 9.0711 8.8212 8.6825 8.3328
CPU sec. 1.8156 3.0277 4.0967 5.0827 10.2357

class 6 gapCPLEX 2.1956 2.1421 2.1430 2.1282 2.0314


gapheuristic 10.9727 9.9226 9.4471 9.1542 8.2076
CPU sec. 9.1226 15.7478 22.0211 28.0957 62.1165

Table F.50: Results for the MLCLSPLCC per class

Table F.50 shows that also for the MLCLSPLCC the solution quality deterio-
rates, when the number of periods increases relative to the number of items.
Again, the heuristic performs better for classes 5 and 6 than for classes 3 and
4. Overall, the solution quality for the different classes deviates less than it is
Chapter F. Computational Study 191

the case for the MLCLSPLe .

scenario 1 2 3 4 5

cap1, tr1 gapCPLEX 1.7453 1.7463 1.7056 1.6906 1.6540


gapheuristic 8.5926 8.2737 8.0378 7.9091 7.6330
CPU sec. 0.4697 0.6155 0.7604 0.9130 1.8037

cap1, tr2 gapCPLEX 1.7063 1.7094 1.6831 1.6672 1.6387


gapheuristic 8.5179 8.1441 7.9265 7.8047 7.5535
CPU sec. 0.4811 0.6106 0.7646 0.9146 1.8123

cap2, tr1 gapCPLEX 2.2927 2.1888 2.1697 2.1551 2.1376


gapheuristic 13.2869 12.4488 11.951 11.6340 10.8696
CPU sec. 0.8298 1.2481 1.6342 2.0151 4.0987

cap2, tr2 gapCPLEX 2.3183 2.2551 2.2396 2.2360 2.1886


gapheuristic 10.3759 9.7108 9.3984 9.1557 8.6111
CPU sec. 0.8861 1.3050 1.6793 2.0725 3.9273

cap3, tr1 gapCPLEX 3.7794 3.6010 3.5698 3.5301 3.4247


gapheuristic 21.5707 19.1089 18.2113 17.2177 14.8787
CPU sec. 3.9557 7.3944 10.7684 14.1459 33.9950

cap3, tr2 gapCPLEX 3.5514 3.3491 3.2221 3.2044 3.0782


gapheuristic 15.7813 14.2323 13.3844 12.9775 11.6028
CPU sec. 3.5965 6.6378 9.4844 12.3308 29.0833

cap4, tr1 gapCPLEX 1.9683 1.9032 1.8593 1.8496 1.7634


gapheuristic 12.1237 11.0385 10.4039 10.1559 9.2797
CPU sec. 2.2498 3.9618 5.5613 7.0979 15.5643

cap4, tr2 gapCPLEX 1.9609 1.8921 1.8420 1.8395 1.7965


gapheuristic 11.3558 10.2420 9.7110 9.4181 8.7505
CPU sec. 2.3169 4.0524 5.6002 7.0708 15.3910

cap5, tr1 gapCPLEX 2.0166 1.9464 1.9377 1.9177 1.8411


gapheuristic 16.6424 15.1030 14.2674 13.6219 11.5979
CPU sec. 1.9300 3.3395 4.6984 5.8898 12.0262

cap5, tr2 gapCPLEX 2.0678 2.0069 1.9977 1.9963 1.9411


gapheuristic 12.2911 11.2999 10.838 10.5370 9.6264
CPU sec. 2.0064 3.5374 4.9678 6.3070 13.1407

Table F.51: Results for the MLCLSPLCC per capacity and setup time profile

Table F.51 shows that here the results are better for instances with low capacity
utilization profiles. The best results were computed for capacity profile 1,
192 Multi-Level Capacitated Lotsizing with Setup Carryover

where the capacity utilization of the resources is 50%. Again, the influence of
the setup time profiles is neither important nor systematic.

scenario 1 2 3 4 5

TBO1 gapCPLEX 1.3982 1.3653 1.3367 1.3246 1.2818


gapheuristic 15.0342 13.7959 13.1931 12.7142 11.3991
CPU sec. 2.3867 4.2714 6.0143 7.7021 16.9994

TBO2 gapCPLEX 2.5954 2.4946 2.4623 2.4518 2.3811


gapheuristic 11.2699 10.2264 9.6743 9.3424 8.4580
CPU sec. 2.5670 4.3797 6.1336 7.8390 17.5955

TBO3 gapCPLEX 4.7633 4.6253 4.5196 4.4846 4.3497


gapheuristic 16.1041 14.8262 14.2685 13.9231 13.1380
CPU sec. 0.0715 0.1276 0.1758 0.2365 0.5480

TBO4 gapCPLEX 1.9708 1.8637 1.8542 1.8452 1.8231


gapheuristic 9.2961 8.6861 8.3357 8.1620 7.5441
CPU sec. 0.0453 0.0764 0.1056 0.1320 0.3124

Table F.52: Results for the MLCLSPLCC per setup and holding cost ratio

Table F.52 shows for TBO profiles 3 and 4 that the heuristic performs signif-
icantly better, when the setup and holding cost ratio differs for various items
than when they are equal for all items. For profiles 1 and 2 the results for the
MLCLSPLCC differ from those for the MLCLSPLe . However, as the results
here are better in general this effect may be due to TBO profile 1 meaning
TBO = 1 and TBO profile 2 meaning TBO = 2 for classes 1 and 2.

Table F.53 shows that the results are again inferior for general product struc-
tures than for assembly ones. Also, the best results are generated for demand
profile 1. Overall, the heuristic performs comparably well for cyclic and for
acyclic process structures.
Chapter F. Computational Study 193

scenario 1 2 3 4 5

AA, dem1 gapCPLEX 1.2373 1.2108 1.1889 1.1637 1.1209


gapheuristic 3.2018 3.1330 3.0849 3.0457 2.9795
CPU sec. 1.2506 1.9096 2.5110 3.0534 5.9262

AA, dem2 gapCPLEX 1.8850 1.7823 1.6801 1.6666 1.6405


gapheuristic 8.3028 7.6797 7.3294 7.1307 6.6188
CPU sec. 1.5199 2.5910 3.6449 4.6738 10.4449

AA, dem3 gapCPLEX 3.4176 3.2684 3.2029 3.1739 3.1296


gapheuristic 13.2781 11.8247 10.8301 10.1443 8.3244
CPU sec. 1.8996 3.2526 4.5487 5.7826 13.2365

AC, dem1 gapCPLEX 1.2476 1.1853 1.1665 1.1628 1.1431


gapheuristic 3.5900 3.4739 3.4388 3.4266 3.3701
CPU sec. 1.0894 1.6005 2.0546 2.4707 4.7584

AC, dem2 gapCPLEX 1.3330 1.3015 1.2665 1.2654 1.2341


gapheuristic 9.1652 8.6475 8.3160 8.0913 7.2777
CPU sec. 1.5333 2.4874 3.4166 4.3482 9.8267

AC, dem3 gapCPLEX 1.9339 1.7790 1.7499 1.7813 1.6930


gapheuristic 14.5789 13.0075 12.0920 11.5932 9.5557
CPU sec. 1.5294 2.4729 3.3857 4.2930 9.8351

GA, dem1 gapCPLEX 1.7944 1.7479 1.7101 1.6801 1.6488


gapheuristic 7.3489 6.6996 6.3460 6.1436 5.8204
CPU sec. 2.0499 3.5181 4.7506 5.8999 11.3684

GA, dem2 gapCPLEX 3.6621 3.4786 3.4190 3.3998 3.2808


gapheuristic 18.0765 15.6358 14.5870 13.9870 12.5401
CPU sec. 4.2395 7.9700 11.4875 14.9294 33.6112

GA, dem3 gapCPLEX 4.6659 4.5691 4.5610 4.5236 4.3176


gapheuristic 18.6133 16.7020 15.8064 15.1950 13.6440
CPU sec. 3.1205 6.0588 8.9712 11.9154 29.2312

GC, dem1 gapCPLEX 1.5316 1.4840 1.4824 1.4753 1.4619


gapheuristic 15.3115 14.5770 14.2795 14.0954 13.6537
CPU sec. 1.0568 1.7295 2.3481 2.8998 5.6132

GC, dem2 gapCPLEX 2.2264 2.2010 2.1618 2.1504 2.1274


gapheuristic 22.1288 20.8624 20.4171 20.0212 18.9981
CPU sec. 1.7564 3.0470 4.2039 5.2815 11.0205

GC, dem3 gapCPLEX 3.1927 3.1504 3.1224 3.1002 2.9979


gapheuristic 23.2781 21.5015 20.6419 19.8491 17.8949
CPU sec. 1.3715 2.5166 3.6544 4.803 11.8362

Table F.53: Results for the MLCLSPLCC per product and process structure
and demand profile
194 Multi-Level Capacitated Lotsizing with Setup Carryover

F.3.3 Results for the MLCLSPL with Parallel Machines

The results for the MLCLSPLP M with single setup carryover will be presented
in section F.3.3.1. Thereafter, the results for the MLCLSPLP M CC with con-
secutive setup carryover will be presented in section F.3.3.2.

F.3.3.1 Single Setup Carryover

Tables F.54 to F.58 give the results for the MLCLSPLP M .

The number of feasible solutions generated by each of the scenarios is presented


in table F.54.

PM1 PM2

scenario 1 2 1 2
] feasible solutions 178 178 178 177
% feasible solutions 98.8889 98.8889 98.8889 98.3333

Table F.54: Number of feasible solutions for the MLCLSPLP M

Tables F.55 to F.58 contain the solution quality and computation time for the
178 test instances, which could be solved by all scenarios for PM1 and the 177
test instances, which could be solved by all scenarios for PM2.

PM1 PM2

scenario 1 2 1 2
gapCPLEX 12.2873 12.5241 19.6529 19.6938
gapheuristic 155.8932 156.3991 170.7263 170.9209
CPU sec. 0.4118 0.666 0.3045 0.4724

Table F.55: Results for the MLCLSPLP M

Table F.55 shows that the deviations of the optimal solutions provided by the
heuristic from the best lower bounds computed by CPLEX even deteriorate
Chapter F. Computational Study 195

from lmax = 70 to lmax = 120. For lmax = 70, the average deviation from
the lower bound provided by CPLEX is 12.2873% for PM1 and 19.6529% for
PM2. Again, the basis is the lower bound of CPLEX.

PM1 PM2

scenario 1 2 1 2

class 2 gapCPLEX 10.6981 11.2671 17.515 17.5121


gapheuristic 137.1999 138.5020 151.5586 151.5294
CPU sec. 0.0295 0.0442 0.0245 0.0353

class 4 gapCPLEX 15.1176 15.3281 24.5055 24.6373


gapheuristic 195.6645 196.2222 204.1324 204.7429
CPU sec. 0.5364 0.9193 0.3833 0.5893

class 6 gapCPLEX 11.0032 10.9236 16.7956 16.7868


gapheuristic 134.0883 133.7170 155.7386 155.7309
CPU sec. 0.6783 1.0474 0.5164 0.8094

Table F.56: Results for the MLCLSPLP M per class

Also, the average deviation of the results from the lower bounds provided by
the heuristic deteriorates with higher maximum numbers of iterations. Due to
the heuristic model applied here, the lower bounds provided by the heuristic
are very poor. The gapheuristic is 155.8932 for PM1 and 170.7263 for PM2,
when lmax is set to 70.

The corresponding average computation time in CPU seconds is 0.4118 for


PM1 and 0.3045 for PM2.

As table F.56 shows, for the MLCLSPLP M the solution quality is best for
class 2 and worst for class 4. This corresponds to the findings for the problems
without parallel machines.
196 Multi-Level Capacitated Lotsizing with Setup Carryover

PM1 PM2

scenario 1 2 1 2

cap1 gapCPLEX 15.3705 15.5022 14.4763 14.2769


gapheuristic 128.9103 128.9001 125.2153 124.8244
CPU sec. 0.0564 0.0733 0.0539 0.0698

cap2 gapCPLEX 8.8416 9.0744 14.7833 14.9238


gapheuristic 135.6981 136.0142 146.4494 146.6906
CPU sec. 0.1285 0.1991 0.1014 0.1697

cap3 gapCPLEX 14.5558 15.0452 26.3808 26.6708


gapheuristic 204.8347 206.3645 228.5725 229.4054
CPU sec. 1.4071 2.2758 0.7161 0.9103

cap4 gapCPLEX 11.4466 11.3908 22.9265 22.6431


gapheuristic 156.581 156.3743 183.3609 182.859
CPU sec. 0.3108 0.552 0.2928 0.4744

cap5 gapCPLEX 11.3477 11.7477 20.1624 20.4241


gapheuristic 156.1608 157.1183 173.598 174.4058
CPU sec. 0.2114 0.3194 0.381 0.7621

Table F.57: Results for the MLCLSPLP M per capacity profile

Table F.57 shows that the best results were achieved for a capacity utilization
of 70%.

As table F.58 shows, the results are generally better for cyclic than for acyclic
process structures. The best results were computed for demand profile 1, i. e.
a coefficient of variation of 0.2. Overall, the heuristic performs similarly well
for assembly and general product structures.
Chapter F. Computational Study 197

PM1 PM2

scenario 1 2 1 2

AA, dem1 gapCPLEX 10.3893 10.4006 22.9533 22.4833


gapheuristic 125.3703 125.4144 141.2038 140.2517
CPU sec. 0.2407 0.274 0.1408 0.1708

AA, dem2 gapCPLEX 13.7353 13.7026 23.8853 24.6426


gapheuristic 142.8128 142.6344 153.7664 155.3708
CPU sec. 0.5136 0.9 0.5562 0.8803

AA, dem3 gapCPLEX 14.8166 15.038 25.9286 25.7739


gapheuristic 170.313 170.995 179.0855 178.8954
CPU sec. 0.6239 0.9322 0.251 0.4195

AC, dem1 gapCPLEX 11.2006 10.642 16.4319 16.622


gapheuristic 123.6882 122.6257 123.757 124.1578
CPU sec. 0.1407 0.2124 0.0738 0.1197

AC, dem2 gapCPLEX 11.5619 12.1139 18.9106 18.672


gapheuristic 131.6212 132.743 136.3008 135.7699
CPU sec. 0.5596 0.8634 0.3458 0.5262

AC, dem3 gapCPLEX 12.898 12.804 20.7386 19.9099


gapheuristic 153.267 153.1216 163.3441 161.5849
CPU sec. 0.4311 0.7 0.203 0.2938

GA, dem1 gapCPLEX 11.4259 12.9759 15.5606 15.5019


gapheuristic 134.376 137.0806 151.0279 150.9412
CPU sec. 0.0842 0.1344 0.1354 0.1749

GA, dem2 gapCPLEX 14.7906 14.8453 20.7833 19.8153


gapheuristic 204.507 204.7252 228.1956 225.6701
CPU sec. 0.7634 1.1938 0.8769 0.8947

GA, dem3 gapCPLEX 14.4028 14.5114 20.6057 22.5035


gapheuristic 208.9916 209.4996 225.3671 230.8918
CPU sec. 0.5859 1.1306 0.489 1.1951

GC, dem1 gapCPLEX 9.1573 9.9453 15.2959 15.4126


gapheuristic 123.8548 125.4706 154.0371 154.2448
CPU sec. 0.0697 0.0989 0.052 0.0728

GC, dem2 gapCPLEX 10.1679 10.4353 16.4246 16.632


gapheuristic 169.0137 169.3972 192.7239 193.8236
CPU sec. 0.3823 0.6188 0.2417 0.3302

GC, dem3 gapCPLEX 13.0957 13.0414 18.1846 18.3676


gapheuristic 188.6245 188.7806 208.5986 208.4507
CPU sec. 0.5682 0.9865 0.3005 0.6646

Table F.58: Results for the MLCLSPLP M per product and process structure
and demand profile
198 Multi-Level Capacitated Lotsizing with Setup Carryover

F.3.3.2 Consecutive Setup Carryover

Tables F.59 to F.63 present the results for the MLCLSPLP M CC .

Again, the number of feasible solutions generated by each of the scenarios is


given in table F.59.

PM1 PM2

scenario 1 2 1 2
] feasible solutions 178 179 176 177
% feasible solutions 98.8889 99.4444 97.7778 98.3333

Table F.59: Number of feasible solutions for the MLCLSPLP M CC

As described in table D.5 on page 89, not all instances for the MLCLSPLP M CC
could be solved by CPLEX within the given time limit. Hence, they were
excluded from the evaluation of the solution quality and the computation time
presented in tables F.60 to F.63. Overall, 169 test instances for PM1 and 134
test instances for PM2 are considered.

PM1 PM2

scenario 1 2 1 2
gapCPLEX 20.2278 20.2417 51.8062 51.8499
gapheuristic 3835.5764 3871.4291 1189.2057 1190.3529
CPU sec. 1.0281 1.8910 0.7206 1.2373

Table F.60: Results for the MLCLSPLP M CC

Again, the best results were generated for lmax = 70 (see table F.60). Here,
the average deviation from the lower bound provided by CPLEX is 20.2278%
for PM1 and 51.8062% for PM2. When evaluating the performance of the
heuristic, remember that the lower bounds computed by CPLEX for the
MLCLSPLP M CC are poorer than for the other problems. As given in ta-
Chapter F. Computational Study 199

ble D.5 on page 89, the relative mipgap28 for all instances is 11.9340. Still, in
comparison to the other model formulations the results are poorer due to the
complexity of the model. This is especially true for PM2.

The average gapheuristic is 3835.5764 for PM1 and 1189.2057 for PM2, when
lmax is set to 70. Thus, this measure is not adapt for the evaluation of the
performance of the heuristic.

The average computation time in CPU seconds is 1.0281 for PM1 and 0.7206
for PM2.

PM1 PM2

scenario 1 2 1 2

CPLEX
class 2 gap 25.1934 25.3150 45.3636 46.1045
gapheuristic 2290.5867 2307.8341 800.0819 804.9221
CPU sec. 0.0543 0.0747 0.0551 0.1050

class 4 gapCPLEX 22.5533 22.5259 69.7461 69.1977


gapheuristic 7261.4046 7350.9037 1859.0146 1857.6327
CPU sec. 1.8611 3.4824 1.5018 2.5837

class 6 gapCPLEX 12.1696 12.1092 14.3935 13.9623


gapheuristic 1809.1971 1807.1087 316.7537 313.3473
CPU sec. 1.2000 2.1703 0.4503 0.7197

Table F.61: Results for the MLCLSPLP M CC per class

Surprisingly, for the MLCLSPLP M CC the solution quality is best for class 6
(see table F.61). The reason could be that we generated the test sample by
adapting the resource capacities such that the available capacity of the resource
type remained roughly the same.29 Hence, the resource capacities are smaller
relative to the setup times, which have not been changed.

28 in % of the upper bound computed by CPLEX


29 See section C.7.
200 Multi-Level Capacitated Lotsizing with Setup Carryover

PM1 PM2

scenario 1 2 1 2

cap1 gapCPLEX 15.4566 15.4847 19.8011 19.6662


gapheuristic 1782.6936 1780.5312 400.6897 397.923
CPU sec. 0.2187 0.3143 0.205 0.3139

cap2 gapCPLEX 19.0472 19.0216 39.2796 39.3746


gapheuristic 2907.9077 3039.8772 729.4522 732.8126
CPU sec. 0.2921 0.4762 0.2494 0.4059

cap3 gapCPLEX 25.8446 26.2236 83.2647 84.239


gapheuristic 6934.6087 6973.1903 2119.3302 2118.3252
CPU sec. 3.1232 5.8048 2.0954 2.8806

cap4 gapCPLEX 21.4444 21.3097 75.9187 74.8191


gapheuristic 4140.7352 4125.2299 1651.8378 1654.9885
CPU sec. 1.2725 2.1073 0.9107 1.7247

cap5 gapCPLEX 20.284 20.164 62.5 63.0691


gapheuristic 3931.0955 3957.6725 1637.3254 1641.294
CPU sec. 0.5706 1.3907 0.6686 1.6981

Table F.62: Results for the MLCLSPLP M CC per capacity profile

Table F.62 shows that the best results were achieved for a capacity utilization
of 50%.

As depicted in table F.63, here the results are generally better for acyclic
than for cyclic process structures. The best results were again generated for
demand profile 1. Finally, the heuristic performed better for general product
structures.
Chapter F. Computational Study 201

PM1 PM2

scenario 1 2 1 2

AA, dem1 gapCPLEX 14.0266 14.0299 51.9816 51.3875


gapheuristic 1888.94 1888.5977 521.1553 523.7871
CPU sec. 0.3875 0.5824 0.3125 0.5132

AA, dem2 gapCPLEX 18.17 18.5407 69.75 71.4354


gapheuristic 2068.2216 2078.8995 964.6491 967.883
CPU sec. 0.5891 0.9889 0.5042 1.0187

AA, dem3 gapCPLEX 24.9671 25.4328 80.2483 81.6466


gapheuristic 3445.2126 3499.6488 1385.1478 1397.1971
CPU sec. 1.0691 1.797 0.7005 0.8829

AC, dem1 gapCPLEX 18.3013 18.3013 62.3172 62.1045


gapheuristic 2052.6906 2058.9487 737.0596 737.0359
CPU sec. 0.2615 0.3718 0.1847 0.2785

AC, dem2 gapCPLEX 23.7653 23.7306 67.349 67.73


gapheuristic 2116.0329 2118.787 868.6673 869.8006
CPU sec. 0.9365 1.5523 0.2699 0.3949

AC, dem3 gapCPLEX 26.1092 26.143 64.9859 66.0649


gapheuristic 1939.2012 1946.913 790.0722 803.6714
CPU sec. 0.5444 0.8091 0.2343 0.3704

GA, dem1 gapCPLEX 12.8486 12.538 34.8145 35.1254


gapheuristic 2421.7686 2403.9384 1008.8838 1007.973
CPU sec. 0.2084 0.3376 0.1648 0.273

GA, dem2 gapCPLEX 17.7453 17.6653 26.1699 26.5481


gapheuristic 8144.1136 8158.3717 1576.6568 1594.8862
CPU sec. 2.4556 4.7391 1.8281 4.4579

GA, dem3 gapCPLEX 19.8492 19.6157 45.699 46.0372


gapheuristic 7513.7897 7518.3956 2383.2161 2391.9095
CPU sec. 2.0904 4.2905 2.2033 3.8782

GC, dem1 gapCPLEX 18.8086 18.8086 37.6341 34.4091


gapheuristic 2556.9017 2566.8836 680.7309 660.2237
CPU sec. 0.2761 0.376 0.1692 0.2409

GC, dem2 gapCPLEX 21.3433 21.3586 35.7359 35.6139


gapheuristic 6212.6266 6209.7121 1489.1525 1494.9448
CPU sec. 1.5324 2.4522 0.4687 0.7671

GC, dem3 gapCPLEX 28.8923 28.8638 44.1124 43.5833


gapheuristic 5774.4507 6154.7353 1882.2037 1856.8552
CPU sec. 2.1107 4.7217 1.5535 1.7893

Table F.63: Results for the MLCLSPLP M CC per product and process
structure and demand profile
Chapter G

Conclusions and Future Work

In this work, we presented new model formulations for the well-known MLC-
SLP with setup time and positive lead time, which also account for setup
carryovers and parallel machines. We presented different reformulations as
well as a heuristic solution procedure.

The reformulations presented in chapter D were implemented in AMPL and


solved by CPLEX. As in the case of the standard MLCLSP the SR and the
SPL formulations proved to yield much tighter bounds than the standard I&L
formulations. Despite the solution quality achieved during the tests, exact
solution algorithms are yet unlikely to succeed in solving real life problems.
This is indicated also by the fact that in the case of consecutive setup carryovers
and parallel machines several instances could not be solved within the given
time limit. Having said that, the superiority of the reformulations introduced
here shows that heuristics based on exact solution procedures may be a field
of future work.

The solution procedure presented in chapter E is based on Lagrangean relax-


ation. An extensive computational study for different parameter combinations
presented in chapter F shows how sensitive the quality of the solutions is to

203

© Springer Fachmedien Wiesbaden GmbH, part of Springer Nature 2008


L. Buschkühl, Multi-Level Capacitated Lotsizing with Setup Carryover,
Edition KWV, https://doi.org/10.1007/978-3-658-24034-9_7
204 Multi-Level Capacitated Lotsizing with Setup Carryover

the choice of the relevant parameters.

The heuristic was tested on a new test set of 1920 instances for the problems
without parallel machines and 360 instances for the problems with parallel ma-
chines. The instances were generated by systematically varying different prob-
lem aspects.1 Overall, the heuristic performed well with respect to feasibility,
solution quality and solution speed for all model formulations introduced.

Because of the quality of the results, we restrained from applying a meta-


heuristic improvement procedure. Still, hybrid heuristics of this kind may well
be worth future work. One further aspect is that metaheuristic algorithms are
more flexible than Lagrangean heuristics. Therefore, they can be used to in-
clude other practically relevant problem aspects. These include rolling horizon
settings and interactive production planning.

1 See chapter C.
Bibliography

Alfieri, A., P. Brandimarte, and S. D’Orazio (2002). LP-based heuristics for


the capacitated lot-sizing problem: the interaction of model formulation and
solution algorithm. International Journal of Production Research 40 (2),
441–458.

Armentano, V. A., P. M. França, and F. M. B. de Toledo (1999). A network


flow model for the capacitated lot-sizing problem. Omega 27 (2), 275–284.

Bahl, H. C. (1983). Column generation based heuristic algorithm for multi-


item scheduling. IIE Transactions 15 (2), 136–141.

Bahl, H. C., L. P. Ritzman, and J. N. D. Gupta (1987). Determining lot sizes


and resource requirements: A review. Operations Research 35 (3), 329–345.

Baker, B. M. and J. Sheasby (1999). Accelerating the convergence of sub-


gradient optimisation. European Journal of Operational Research 117 (1),
136–144.

Barany, I., T. J. van Roy, and L. A. Wolsey (1984). Strong formulations for
multi-item capacitated lot sizing. Management Science 30 (10), 1255–1261.

Barbarosoglu, G. and L. Özdamar (2000). Analysis of solution space-dependent


performance of simulated annealing: the case of the multi-level capacitated
lot sizing problem. Computers & and Operations Research 27, 895–903.

© Springer Fachmedien Wiesbaden GmbH, part of Springer Nature 2008


L. Buschkühl, Multi-Level Capacitated Lotsizing with Setup Carryover,
Edition KWV, https://doi.org/10.1007/978-3-658-24034-9
206 Multi-Level Capacitated Lotsizing with Setup Carryover

Bazaraa, M. S. and H. D. Sherali (1981). On the choice of step size in subgra-


dient optimization. European Journal of Operational Research 7, 380–388.

Beasley, J. E. (1995). Lagrangean relaxation. In C. R. Reeves (Ed.), Mod-


ern Heuristic Techniques for Combinatorial Problems, pp. 243–303. London:
McGraw-Hill.

Belvaux, G. and L. A. Wolsey (2000). bc-prod: A specialized branch-and-cut


system for lot-sizing problems. Management Science 46 (5), 724–738.

Belvaux, G. and L. A. Wolsey (2001). Modelling practical lot-sizing problems


as mixed-integer programs. Management Science 47 (7), 993–1007.

Berretta, R., P. M. França, and V. A. Armentano (2005). Metaheuristic


approaches for the multilevel resource-constrained lot-sizing problem with
setup and lead times. Asia-Pacific Journal of Operational Research 22 (2),
261–286.

Berretta, R. and L. F. Rodrigues (2004). A memetic algorithm for a multi-


stage capacitated lot-sizing problem. International Journal of Production
Economics 87 (1), 67–81.

Billington, P. J., J. O. McClain, and L. J. Thomas (1983). Mathematical pro-


gramming approaches to capacity-constrained MRP systems: review, for-
mulation and problem reduction. Management Science 29 (10), 1126–1141.

Billington, P. J., J. O. McClain, and L. J. Thomas (1986). Heuristics for


multilevel lot-sizing with a bottleneck. Management Science 32 (8), 989–
1006.

Bitran, G. R. and H. Matsuo (1986). The multi-item capacitated lot size prob-
lem: error bounds of Manne’s formulations. Management Science 32 (3),
350–359.

Bitran, G. R. and H. H. Yanasse (1982). Computational complexity of the


capacitated lot size problem. Management Science 28 (10), 1174–1186.
Bibliography 207

Blackburn, J. D. and R. A. Millen (1984). Simultaneous lot-sizing and capacity


planning in multi-stage assembly processes. European Journal of Operational
Research 16, 84–93.

Boctor, F. F. and P. Poulin (2005). Heuristics for N-product, M-stage, eco-


nomic lot sizing and scheduling problem with dynamic demand. Interna-
tional Journal of Production Research 43 (13), 2809–2828.

Bourjolly, J.-M., K. Ding, M. Gopalakrishnan, M. C. N. Gramani, and S. Mo-


han (2001). On a tactical/operational production planning problem in sup-
ply chain management: Balancing inventory and setup costs. In MIC’2001
- 4th Metaheuristics International Conference, pp. 569–571.

Brahimi, N., S. Dauzère-Pérès, and N. M. Najid (2006). Capacitated multi-


item lot-sizing problems with time windows. Operations Research 54 (5),
951–967.

Brahimi, N., S. Dauzère-Pérès, N. M. Najid, and A. Nordli (2006). Single


item lot sizing problems. European Journal of Operational Research 168 (1),
1–16.

Briskorn, D. (2006). A note on capacitated lot sizing with setup carry over.
IIE Transactions 38 (11), 1045–1047.

Brucker, P. (2004). Scheduling Algorithms. Berlin: Springer.

Campbell, G. M. and V. A. Mabert (1991). Cyclical schedules for capacitated


lot sizing with dynamic demands. Management Science 37 (4), 409–427.

Cattrysse, D., J. Maes, and L. N. van Wassenhove (1990). Set partitioning and
column generation heuristics for capacitated dynamic lotsizing. European
Journal of Operational Research 46 (1), 38–47.

Chen, H. and C. Chu (2003). A Lagrangian relaxation approach for supply


chain planning with order/setup costs and capacity constraints. Journal of
Systems Science and Systems Engineering 12 (1), 98–110.
208 Multi-Level Capacitated Lotsizing with Setup Carryover

Chen, W.-H. and J.-M. Thizy (1990). Analysis of relaxations for the multi-item
capacitated lot-sizing problem. Annals of Operations Research 26, 29–72.

Clark, A. R. and V. A. Armentano (1995). A heuristic for a resource-


capacitated multi-stage lot-sizing problem with lead times. Journal of the
Operational Research Society 46, 1208–1222.

Crowder, H. (1976). Computational improvements for subgradient optimiza-


tion. Symposia Mathematica 19, 357–372.

Dantzig, G. B. and P. Wolfe (1960). Decomposition principle for linear pro-


grams. Operations Research 8 (1), 101–111.

Degraeve, Z. and R. Jans (2003). A new Dantzig-Wolfe reformulation and


Branch-and-Price algorithm for the Capacitated Lot Sizing Problem with set
up times. Erasmus Research Institute of Management (ERIM).

DeMatteis, J. J. (1968). An economic lot-sizing technique i - the part-period


algorithm. IBM Systems Journal 7 (1), 30–38.

Derstroff, M. C. (1995). Mehrstufige Losgrößenplanung mit Kapazitäts-


beschränkungen. Produktion und Logistik. Heidelberg: Physica-Verlag.

Diaby, M., H. C. Bahl, M. H. Karwan, and S. Zionts (1992a). Capacitated


lot-sizing and scheduling by Lagrangean relaxation. European Journal of
Operational Research 59, 444–458.

Diaby, M., H. C. Bahl, M. H. Karwan, and S. Zionts (1992b). A Lagrangean


relaxation approach for very-large-scale capacitated lot-sizing. Management
Science 38 (9), 1329–1340.

Dillenberger, C., L. F. Escudero, A. Wollensak, and W. Zhang (1993). On


solving a large-scale resource allocation problem in production planning.
In G. Fandel, T. Gulledge, and A. Jones (Eds.), Operations Research in
Production Planning and Control, Berlin, pp. 105–119. Springer.

Dillenberger, C., L. F. Escudero, A. Wollensak, and W. Zhang (1994). On


practical resource allocation for production planning and scheduling with
Bibliography 209

period overlapping setups. European Journal of Operational Research 75 (2),


275–286.

Dixon, P. S. and E. A. Silver (1981). A heuristic solution procedure for the


multi-item, single-level, limited capacity, lot-sizing problem. Journal of Op-
erations Management 2 (1), 23–39.

Dogramaci, A., J. C. Panayiotopoulos, and N. R. Adam (1981). The dynamic


lot-sizing problem for multiple items under limited capacity. AIIE Transac-
tions 13 (4), 294–303.

Drexl, A. and K. Haase (1995). Proportional lotsizing and scheduling. Inter-


national Journal of Production Economics 40 (1), 73–87.

Drexl, A. and A. Kimms (1997). Lot sizing and scheduling - survey and
extensions. European Journal of Operational Research 99 (2), 221–235.

Dzielinski, B. P. and R. E. Gomory (1965). Optimal programming of lot sizes,


inventory and labor allocations. Management Science 11 (9), 874–890.

Eisenhut, P. S. (1975). A dynamic lot sizing algorithm with capacity con-


straints. AIIE Transactions 7 (2), 170–176.

Eppen, G. D. and R. K. Martin (1987). Solving multi-item capacitated lot-


sizing problems using variable redefinition. Operations Research 35 (6), 832–
848.

Evans, J. R. (1985). An efficient implementation of the Wagner-Whitin al-


gorithm for dynamic lot-sizing. Journal of Operations Management 5 (2),
229–235.

Federgruen, A. and M. Tzur (1991). A simple forward algorithm to solve


general dynamic lot sizing models with n periods in o(n log n) or o(n) time.
Management Science 37 (8), 909–925.

Fisher, M. L. (1981). The Lagrangian relaxation method for solving integer


programming problems. Management Science 27 (1), 1–18.
210 Multi-Level Capacitated Lotsizing with Setup Carryover

Fisher, M. L. (1985). An applications oriented guide to Lagrangean relaxation.


Interfaces 15 (2), 10–21.

Fleischmann, B. (1990). The discrete lot-sizing and scheduling problem. Eu-


ropean Journal of Operational Research 44 (3), 337–348.

Florian, M., J. Lenstra, and A. R. Kan (1980). Deterministic production


planning: Algorithms and complexity. Management Science 26 (7), 669–
679.

França, P. M., V. A. Armentano, R. E. Berretta, and A. R. Clark (1997). A


heuristic method for lot-sizing in multi-stage systems. Computers & Oper-
ations Research 24 (9), 861–874.

Garey, M. and D. Johnson (1979). Computers and Intractability A Guide to


the Theory of NP-Completeness. San Francisco: Freeman and Co.

Gelders, L. F., J. Maes, and L. N. van Wassenhove (1986). A branch and


bound algorithm for the multi item single level capacitated dynamic lotsizing
problem, pp. 92–108. Berlin.

Glover, F. (1986). Future paths for integer programming and links to artificial
intelligence. Computers & Operations Research 13 (5), 533–549.

Gopalakrishnan, M. (2000). A modified framework for modelling set-up car-


ryover in the capacitated lotsizing problem. International Journal of Pro-
duction Research 38 (14), 3421–3424.

Gopalakrishnan, M., K. Ding, J.-M. Bourjolly, and S. Mohan (2001). A tabu-


search heuristic for the capacitated lot-sizing problem with set-up carryover.
Management Science 47 (6), 851–863.

Gopalakrishnan, M., D. M. Miller, and C. Schmidt (1995). A framework for


modelling setup carryover in the capacitated lot sizing problem. Interna-
tional Journal of Production Research 33 (7), 1973–1988.

Groff, G. (1979). A lot sizing rule for time-phased component demand. Pro-
duction and Inventory Management 20 (1), 47–53.
Bibliography 211

Guignard, M. and M. B. Rosenwein (1989). An application-oriented guide for


designing Lagrangean dual ascent algorithms. European Journal of Opera-
tional Research 43 (2), 197–205.

Günther, H.-O. (1987). Planning lot sizes and capacity requirements in a single
stage production sytem. European Journal of Operational Research 31 (2),
223–231.

Gupta, D. and T. Magnusson (2005). The capacitated lot-sizing and scheduling


problem with sequence-dependent setup costs and setup times. Computers
& Operations Research 32 (4), 727–747.

Gupta, Y. P. and Y. Keung (1990). A review of multi-stage lot-sizing models.


International Journal of Operations & Production Management 10 (9), 57–
73.

Gutierrez, E., W. Hernández, and G. A. Süer (2001). Genetic algorithms in


capacitated lot sizing decisions. In Computer Research Conference.

Haase, K. (1994). Lotsizing and scheduling for production planning. Lecture


Notes in Economics and Mathematical Systems. Berlin: Springer.

Haase, K. (1998). Capacitated lot-sizing with linked production quantities of


adjacent periods, pp. 127–146. Berlin.

Haase, K. (2005). Solving Large-Scale Capacitated Lot-Sizing Problems Close


to Optimality. University Dresden. Working Paper.

Haase, K. and L. Goepfert (1996). Engpaßorientierte fertigungssteuerung bei


reihenfolgeabhängigen rüstvorgängen in einem unternehmen der satz- und
drucktechnik. Zeitschrift für Betriebswirtschaft 66 (12), 1511–1526.

Haase, K. and U. Kohlmorgen (1995). Parallel genetic algorithm for the ca-
pacitated lot-sizing problem. In P. e. a. Kleinschmidt (Ed.), Operations
Research Proceedings 1995, pp. 370–375. Springer.

Hansen, P. and N. Mlaydenović (1999). An introduction to variable neigh-


borhood search. In S. Voß, S. Martello, I. Osman, and C. Roucairol (Eds.),
212 Multi-Level Capacitated Lotsizing with Setup Carryover

Metaheuristics: Advances and trends in local search paradigms for optimiza-


tion, Dordrecht, pp. 433–458. Kluwer Academic Publishers.

Hansen, P. and N. Mlaydenović (2001). Variable neighborhood search: Prin-


ciples and applications. European Journal of Operational Research 130,
449–467.

Harrison, T. P. and H. S. Lewis (1996). Lot sizing in serial assembly systems


with multiple constrained resources. Management Science 42 (1), 19–36.

Helber, S. (1994). Kapazitätsorientierte Losgrößenplanung in PPS-Sytemen.


Stuttgart: M und P.

Helber, S. (1995). Lot sizing in capacitated production planning and control


systems. OR Spektrum 17, 5–18.

Held, M., P. Wolfe, and H. P. Crowder (1974). Validation of subgradient


optimization. Mathematical Programming 6, 62–88.

Hindi, K. S. (1995). Computationally efficient solution of the multi-item, ca-


pacitated lot-sizing problem. Computers and Industrial Engineering 28 (4),
709–719.

Hindi, K. S. (1996). Solving the CLSP by a tabu search heuristic. Journal of


the Operational Research Society 47, 151–161.

Hindi, K. S., K. Fleszar, and C. Charalambous (2003). An effective heuristic for


the CLSP with set-up times. Journal of the Operational Research Society 54,
490–498.

Huisman, D., R. Jans, M. Peeters, and A. P. M. Wagelmans (2003). Combining


Column Generation and Lagrangean Relaxation. Erasmus Research Institute
of Management (ERIM).

Hung, Y.-F., C.-P. Chen, C.-C. Shih, and M.-H. Hung (2003). Using tabu
search with ranking candidate list to solve production planning problems
with setups. Computers & Industrial Engineering 45 (4), 615–634.
Bibliography 213

Hung, Y.-F. and K. L. Chien (2000). A multi-class multi-level capacitated lot


sizing model. Journal of the Operational Research Society 51, 1309–1318.

Hung, Y.-F. and Y.-C. Hu (1998). Solving mixed integer programming produc-
tion planning problems with setups by shadow price information. Computers
& Operations Research 25 (12), 1027–1042.

Hung, Y.-F., C.-C. Shih, and C.-P. Chen (1999). Evolutionary algorithms for
production planning problems with setup decisions. Journal of the Opera-
tional Research Society 50, 857–866.

Jans, R. and Z. Degraeve (2007). Meta-heuristics for dynamic lot sizing: a


review and comparison of solution approaches. European Journal of Opera-
tional Research 177, 1855–1875.

Karimi, B., S. M. T. F. Ghomi, and J. M. Wilson (2003). The capacitated lot


sizing problem: a review of models and algorithms. Omega 31, 365–378.

Karmarkar, U. S. and L. Schrage (1985). The deterministic dynamic product


cycling problem. Operations Research 33 (2), 326–345.

Karni, R. and Y. Roll (1982). A heuristic algorithm for the multi-item lot
sizing problem with capacity constraints. IIE Transactions 14 (4), 249–256.

Katok, E., H. S. Lewis, and T. P. Harrison (1998). Lot sizing in general


assembly systems with setup costs, setup times, and multiple constrained
resources. Management Science 44 (6), 859–877.

Kimms, A. (1997). Multi-Level Lot Sizing and Scheduling. Production and


Logistics. Heidelberg: Physica-Verlag.

Kirca, Ö. and M. Kökten (1994). A new heuristic approach for the multi-item
dynamic lot sizing problem. European Journal of Operational Research 75,
332–341.

Kirkpatrick, S., C. D. Gelatt, and M. P. Vecchi (1983). Optimization by


simulated annealing. Science 220 (4598), 671–680.
214 Multi-Level Capacitated Lotsizing with Setup Carryover

Kohlmorgen, U., H. Schmeck, and K. Haase (1999). Experiences with fine-


grained parallel genetic algorithms. Annals of Operations Research 90, 203–
219.

Krarup, J. and O. Bilde (1977). Plant Location, Set Covering and Economic
Lot Size: An O(mn)-Algorithm for structured Problems, pp. 155–180. Basel,
Stuttgart: L. Collatz and G. Meinardus and W. Wetterling.

Kuik, R., M. Salomon, and L. N. van Wassenhove (1994). Batching decisions:


structure and models. European Journal of Operational Research 75, 243–
263.

Kuik, R., M. Salomon, L. N. van Wassenhove, and J. Maes (1993). Linear


programming, simulated annealing and tabu search heuristics for lotsizing
in bottleneck assembly systems. IIE Transactions 25 (1), 62–72.

Lambrecht, M. R. and H. Vanderveken (1979). Heuristic procedures for the


single operation, multi-item loading problem. AIIE Transactions 11 (4),
319–326.

Lasdon, L. S. and R. C. Terjung (1971). An efficient algorithm for multi-item


scheduling. Operations Research 19 (4), 946–969.

Maes, J., J. O. McClain, and L. N. van Wassenhove (1991). Multilevel capac-


itated lotsizing complexity and LP-based heuristics. European Journal of
Operational Research 53, 131–148.

Maes, J. and L. van Wassenhove (1988). Multi-item single-level capacitated


dynamic lot-sizing heuristics: A general review. Journal of the Operational
Research Society 39 (11), 991–1004.

Maes, J. and L. N. van Wassenhove (1986a). Multi item single level capacitated
dynamic lotsizing heuristics: A computational comparison (part i: Static
case). IIE Transactions 18, 114–123.

Maes, J. and L. N. van Wassenhove (1986b). Multi item single level capacitated
dynamic lotsizing heuristics: A computational comparison (part ii: Rolling
horizon). IIE Transactions 18, 124–129.
Bibliography 215

Maes, J. and L. N. van Wassenhove (1986c). A simple heuristic for the multi
item single level capacitated lotsizing problem. Operations Research Let-
ters 4 (6), 265–273.

Manne, A. S. (1958). Programming of economic lot sizes. Management Sci-


ence 4 (2), 115–135.

Matsumoto, M. and T. Nishimura (1998). Mersenne twister: A 623-


dimensionally equidistributed uniform pseudorandom number generator.
ACM Transactions on Modeling and Computer Simulation 8 (1), 3–30.

Mercé, C. and G. Fontan (2003). MIP-based heuristics for capacitated lotsizing


problems. International Journal of Production Economics 85, 97–111.

Meyr, H. (1999). Simultane Losgrößen- und Reihenfolgeplanung für kon-


tinuierliche Produktionslnien. Gabler Edition Wissenschaft: Produktion und
Logistik. Wiesbaden: Gabler.

Millar, H. H. and M. Yang (1994). Lagrangean heuristics for the capacitated


multi-item lot-sizing problem with backordering. International Journal of
Production Economics 34, 1–15.

Miller, A. J., G. L. Nemhauser, and M. W. P. Savelsbergh (2000). Solving


Multi-Item Capacitated Lot-Sizing Problems with Setup Times by Branch-
and-Cut. Université Catholique de Louvain, Belgium. Core Discussion Paper
00/39.

Moorkanat, J. (2000). Studies in certain resource loading, scheduling and


production control problems in multi-stage production control problems in
multi-stage production inventory systems. Ph. D. thesis, Indian Institute of
Technology, Bombay.

Neumann, K. and M. Morlock (1993). Operations Research. München: Hanser.

Newson, E. F. P. (1975a). Multi-item lot size scheduling by heuristic, part i:


with fixed resources. Management Science 21 (10), 1186–1193.
216 Multi-Level Capacitated Lotsizing with Setup Carryover

Newson, E. F. P. (1975b). Multi-item lot size scheduling by heuristic, part ii:


with variable resources. Management Science 21 (10), 1194–1203.

Özdamar, L. and G. Barbarosoglu (1999). Hybrid heuristics for the multi-


stage capacitated lot sizing and loading problem. Journal of the Operational
Research Society 50, 810–825.

Özdamar, L. and G. Barbarosoglu (2000). An integrated Lagrangean


relaxation-simulated annealing approach to the multi-level multi-item ca-
pacitated lot sizing problem. International Journal of Production Eco-
nomics 68 (3), 319–331.

Özdamar, L. and M. A. Bozyel (2000). The capacitated lot sizing problem


with overtime decisions and setup times. IIE Transactions 32, 1043–1057.

Özdamar, L., Şevket Ilker Birbil, and M.-C. Portmann (2002). Technical note:
New results for the capacitated lot sizing problem with overtime decisions
and setup times. Production Planning & Control 13 (1), 2–10.

Pitakaso, R., C. Almeder, K. F. Doerner, and R. F. Hartl (2006). Combining


exact and population-based methods for the constrained multilevel lot sizing
problem. International Journal of Production Research 44 (22), 4755–4771.

Pochet, Y. and L. A. Wolsey (1991). Solving multi-item lot-sizing problems


using strong cutting planes. Management Science 37 (1), 53–67.

Poljak, B. T. (1969). Minimization of unsmooth functionals. Computational


Mathematics and Mathematical Physics 9, 14–29.

Quadt, D. (2004). Lot-Sizing and Scheduling for Flexible Flow Lines. Lecture
Notes in Economics and Mathematical Systems. Springer.

Quadt, D. and H. Kuhn (2005). Conceptual framework for lot-sizing and


scheduling of flexible flow lines. International Journal of Production Re-
search 43 (11), 2291–2308.

Reith-Ahlemeier, G. (2002). Ressourcenorientierte Bestellmengenplanung und


Lieferantenauswahl. Norderstedt: Books on Demand.
Bibliography 217

Rosling, K. (1986). Optimal Lot-Sizing for Dynamic Assembly Systems, pp.


119–131. Berlin.

Salomon, M. (1991). Deterministic Lotsizing Models for Production Plan-


ning, Volume 355 of Lecture Notes in Economics and Mathematical Systems.
Berlin, Heidelberg, New York, Bunkyo-ku: Springer.

Salomon, M., L. G. Kroon, R. Kuik, and L. N. van Wassenhove (1991). Some


extensions of the discrete lotsizing and scheduling problem. Management
Science 37 (7), 801–812.

Salomon, M., R. Kuik, and L. N. van Wassenhove (1993). Statistical search


methods for lotsizing problems. Annals of Operations Research 41, 453–468.

Sambasivan, M. and C. P. Schmidt (2002). A heuristic procedure for solving


multi-plant, multi-item, multi-period capacitated lot-sizing problems. Asia-
Pacific Journal of Operational Research 19, 87–105.

Sambasivan, M. and S. Yahya (2005). A Lagrangean-based heuristic for multi-


plant, multi-item, multi-period capacitated lot-sizing problems with inter-
plant transfers. Computers & Operations Research 32 (3), 537–555.

Selen, W. J. and R. M. Heuts (1989). A modified priority index for Günther’s


lot-sizing heuristic under capacitated single stage production. European
Journal of Operational Research 41, 181–185.

Silver, E. A. and H. C. Meal (1969). A simple modification of the EOQ for the
case of a varying demand rate. Production and Inventory Management 10,
51–55.

Silver, E. A. and H. C. Meal (1973). A heuristic for selecting lot size quantities
for the case of a deterministic time-varying demand rate and discrete oppor-
tunities for replenishment. Production and Inventory Management 14 (2),
64–74.

Sox, C. R. and Y. Gao (1999). The capacitated lot sizing problem with setup
carry-over. IIE Transactions 31, 173–181.
218 Multi-Level Capacitated Lotsizing with Setup Carryover

Stadtler, H. (1996). Mixed integer programming model formulations for dy-


namic multi-item multi-level capacitated lotsizing. European Journal of Op-
erational Research 94, 561–581.

Stadtler, H. (1997). Reformulations of the shortest route model for dynamic


multi-item multi-level capacitated lotsizing. OR Spektrum 19 (2), 87–96.

Stadtler, H. (2003). Multilevel lot sizing with setup times and multiple con-
strained resources: Internally rolling schedules with lot-sizing windows. Op-
erations Research 51 (3), 487–502.

Staggemeier, A. T. and A. R. Clark (2001). A survey of lot-sizing and schedul-


ing models. In 23rd Annual Symposium of the Brazilian Operational Re-
search Society (SOBRAPO), Campos do Jordao SP, Brazil, pp. 938–947.

Sürie, C. (2005a). Campaign planning in time-indexed model formulations.


International Journal of Production Research 43 (1), 49–66.

Sürie, C. (2005b). Time continuity in discrete time models, Volume 552 of


Lecture Notes in Economics and Mathematical Systems. Berlin: Springer.

Sürie, C. and H. Stadtler (2003). The capacitated lot-sizing problem with


linked lot sizes. Management Science 49 (8), 1039–1054.

Tempelmeier, H. (2006). Material-Logistik (6. ed.). Berlin, Heidelberg:


Springer.

Tempelmeier, H. and M. Derstroff (1993). Mehrstufige Mehrprodukt-


Losgrößenplanung bei beschränkten Ressourcen und genereller Erzeugnis-
struktur. OR Spektrum 15, 63–73.

Tempelmeier, H. and M. Derstroff (1996). A Lagrangean-based heuristic for


dynamic multilevel multiitem constrained lotsizing with setup times. Man-
agement Science 42 (5), 738–757.

Tempelmeier, H. and S. Helber (1994). A heuristic for dynamic multi-item


multi-level capacitated lotsizing for general product structures. European
Journal of Operational Research 75 (2), 296–311.
Bibliography 219

Thizy, J.-M. (1991). Analysis of the Lagrangean decomposition for the multi-
item capacitated lot-sizing problem. INFOR 29 (4), 271–283.

Thizy, J.-M. and L. N. van Wassenhove (1985). Lagrangean relaxation for the
multi-item capacitated lot-sizing problem: A heuristic implementation. IIE
Transactions 17, 308–313.

Trigeiro, W. W. (1987). A dual-cost heuristic for the capacitated lot sizing


problem. IIE Transactions 19 (3), 67–72.

Trigeiro, W. W. (1989). A simple heuristic for lot sizing with setup times.
Decision Sciences 20 (2), 294–303.

Trigeiro, W. W., L. J. Thomas, and J. O. McClain (1989). Capacitated lot


sizing with setup times. Management Science 35, 353–366.

van Nunen, J. A. E. E. and J. Wessels (1978). Multi-item lot size determination


and scheduling under capacity constraints. European Journal of Operational
Research 2 (1), 36–41.

Wagelmans, A., S. van Hoesel, and A. Kolen (1992). Economic lot sizing:
An o(n log n) algorithm that runs in linear time in the wagner-whitin case.
Operations Research 40 (1), 145–156.

Wagner, H. M. and T. M. Whitin (1958). Dynamic version of the economic


lot size model. Management Science 5 (1), 89–96.

Wolsey, L. A. (1995). Progress with single-item lot-sizing. European Journal


of Operational Research 86, 395–401.

Xie, J. and J. Dong (2002). Heuristic genetic algorithms for general capacitated
lot-sizing problems. Computers & Mathematics with Applications 44 (1-2),
263–276.

Zangwill, W. I. (1966). A deterministic multi-period production scheduling


model with backlogging. Management Science 13 (1), 105–119.