Produktion und Logistik Herausgegeben von B. Fleischmann, Augsburg, Deutschland M. Grunow, München, Deutschland H.-O. G...
28 downloads
511 Views
2MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Produktion und Logistik Herausgegeben von B. Fleischmann, Augsburg, Deutschland M. Grunow, München, Deutschland H.-O. Günther, Berlin, Deutschland S. Helber, Hannover, Deutschland K. Inderfurth, Magdeburg, Deutschland H. Kopfer, Bremen, Deutschland H. Meyr, Hohenheim, Deutschland Th. S. Spengler, Braunschweig, Deutschland H. Stadtler, Hamburg, Deutschland H. Tempelmeier, Köln, Deutschland G. Wäscher, Magdeburg, Deutschland
Diese Reihe dient der Veröffentlichung neuer Forschungsergebnisse auf den Gebieten der Produktion und Logistik. Aufgenommen werden vor allem herausragende quantitativ orientierte Dissertationen und Habilitationsschriften. Die Publikationen vermitteln innovative Beiträge zur Lösung praktischer Anwendungsprobleme der Produktion und Logistik unter Einsatz quantitativer Methoden und moderner Informationstechnologie.
Herausgegeben von Professor Dr. Bernhard Fleischmann Universität Augsburg
Professor Dr. Herbert Meyr Universität Hohenheim
Professor Dr. Martin Grunow Technische Universität München
Professor Dr. Thomas S. Spengler Technische Universität Braunschweig
Professor Dr. Hans-Otto Günther Technische Universität Berlin
Professor Dr. Hartmut Stadtler Universität Hamburg
Professor Dr. Stefan Helber Universität Hannover
Professor Dr. Horst Tempelmeier Universität Köln
Professor Dr. Karl Inderfurth Universität Magdeburg
Professor Dr. Gerhard Wäscher Universität Magdeburg
Professor Dr. Herbert Kopfer Universität Bremen
Kontakt Professor Dr. Hans-Otto Günther Technische Universität Berlin H 95, Straße des 17. Juni 135 10623 Berlin
Florian Seeanner
Multi-Stage Simultaneous Lot-Sizing and Scheduling Planning of Flow Lines with Shifting Bottlenecks Foreword by Prof. Dr. Herbert Meyr
Florian Seeanner Darmstadt, Germany
Dissertation Technische Universität Darmstadt, 2012 D 17
ISBN 978-3-658-02088-0 DOI 10.1007/978-3-658-02089-7
ISBN 978-3-658-02089-7 (eBook)
The Deutsche Nationalbibliothek lists this publication in the Deutsche Nationalbibliografie; detailed bibliographic data are available in the Internet at http://dnb.d-nb.de. Library of Congress Control Number: 2013939061 Springer Gabler © Springer Fachmedien Wiesbaden 2013 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. Exempted from this legal reservation are brief excerpts in connection with reviews or scholarly analysis or material supplied specifically for the purpose of being entered and executed on a computer system, for exclusive use by the purchaser of the work. Duplication of this publication or parts thereof is permitted only under the provisions of the Copyright Law of the Publisher’s location, in its current version, and permission for use must always be obtained from Springer. Permissions for use may be obtained through RightsLink at the Copyright Clearance Center. Violations are liable to prosecution under the respective Copyright Law. 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. While the advice and information in this book are believed to be true and accurate at the date of publication, neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or omissions that may be made. The publisher makes no warranty, express or implied, with respect to the material contained herein. Printed on acid-free paper Springer Gabler is a brand of Springer DE. Springer DE is part of Springer Science+Business Media. www.springer-gabler.de
Foreword Management concepts often repeat. Currently, another “wave of lean management” seems to roll, preaching that inventories are waste. Inventories would blur a clear view on mistakes which are made in production planning. Thus, inventories should be reduced. All drivers that necessitate inventories should be eliminated by means of investments. This makes sense in many industries, but not in all. Some industries utilize expensive, automated machines. These cannot easily be replaced by newer ones allowing automated changeovers and thus generating almost no setup times or setup costs. They apply a machinery, which has grown over time. It consists of many machines which show a similar functionality, but have been purchased successively over one or several decades. Hence, there are some older machines, which are less efficient, and a few newer ones, which are more efficient. An example is the consumer packaged goods industry. There are often only a few production stages (like Make and Pack) with several heterogeneous, parallel production lines per stage. Parallel means that these lines show a similar functionality, i.e., they can be used alternatively to produce—more or less—the same products. Heterogeneous means that they, nevertheless, do not need to be identical. This concerns production speeds, production coefficients, production costs, setup costs and setup times. Both setup costs and times may even be sequence-dependent. The individual work stations of a production line are usually connected by an automated transport system with a fixed cycle time. Thus, each production line can be considered as a single planning unit. Sometimes only one of these stages constitutes a stationary bottleneck. However, sometimes the bottleneck may shift dynamically, dependent on the mix of demand the customers ask for. This book focuses on this kind of industries, more concretely on short- to medium-term production planning and scheduling in this kind of industries when both lot-sizing and scheduling decisions have to be taken simultaneously in order to consider the crucial interdependencies between the various predecessor and successor products on the different production stages. The author proposes and compares different mixed-integer programming formulations, which base on the so-called General Lot-sizing and Scheduling Problem (GLSP), to accurately model this planning situation. Furthermore, he develops and tests an innovative solution heuristic, combining the principles of Variable Neighborhood Decomposition Search with the Exchange heuristic, which not only behaves well for small “theoretical” problem instances, but also proves to be applicable for a large industrial problem of plastic foil pro-
VI duction. Despite of the high practical relevance of this type of planning problem, decision support being offered by science and by commercial software (e.g. as part of so-called “Advanced Planning Systems”) seemed to be rather poor and disappointing until now. The author manages to make a first—and already very impressive—step to improve this situation. Thus, I invite the interested production planner, operations researcher and software developer to carefully read this book. Even though it deals with consumer packaged goods, this book is no fast food. You will have to take your time to eat it. It will often taste sweet and sometimes be hard to digest. But I promise—it is worth every bite of it. Prof. Dr. Herbert Meyr
Acknowledgments Facing high cost pressure, industries like the consumer packaged goods industry are forced to utilize their machine capacities as efficiently as possible. Hence, simultaneous lot-sizing and scheduling is very important for these industries if they use machines with significant, sequence-dependent setup times or costs in a Make-To-Stock environment. Since often a stationary bottleneck exists, to focus on the corresponding production stage is usually sufficient. Unfortunately, this is not the case if—due to varying product demands/mixes and different production speeds on the machines—the bottleneck shifts between the stages. The thesis at hand is intented for helping solve such multi-stage lot-sizing and scheduling problems. Besides a mathematical model formulation, a new heuristic solution procedure is given which allows finding good solutions for this model including real-world problem sizes. The results of this thesis were made during my engagement as a research assistant at the Chair of Production and Supply Chain Management at Darmstadt University of Technology. So first of all, I want to thank Prof. Herbert Meyr, the former owner of this chair and my first referee, who gave me this great opportunity to do a doctorate. Due to his deep knowledge and his friendly type, it was a pleasure to work with him. The same is true for Prof. Bernardo Almada Lobo, my second referee. His amicable and positive attitude always stimulated me to achieve the aim. Moreover, I want to thank Prof. Rainer Quick who volunteered for acting as the third referee. As usual with bigger projects, some other people were also involved. Therefore, I want to thank Prof. Wolfgang Domschke, Prof. Marco Lübbecke, and Prof. Laurence Wolsey for their helpful suggestions. Furthermore, I would like to thank all my colleagues at university and the members of the QBWL community for the warm and friendly atmosphere. A special thank goes to my parents. Not only did they allow me this education but they always supported me in everything I did. Last but not least I want to thank my wife Anne. By her happy nature, she was a great backup and let me cope with all the challenges. Sincere thanks are given to all of them! Florian Seeanner
Contents List of Figures
XV
List of Tables
XIX
List of Algorithms
XXIII
List of Abbreviations
XXV
1 Introduction 1.1 Cost pressure in the consumer packaged goods industry . . . . . . . . . . . . 1.2 Motivation and goals of this thesis . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Production planning in the consumer packaged goods industry 2.1 Supply Chain Planning . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Supply chain typology . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Functional attributes . . . . . . . . . . . . . . . . . . . . . . 2.2.2 Structural attributes . . . . . . . . . . . . . . . . . . . . . . 2.3 The supply chain of the consumer packaged goods industry . . . . . 2.3.1 Topography . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.2 Integration and coordination . . . . . . . . . . . . . . . . . . 2.3.3 Functional attributes of the manufacturer . . . . . . . . . . 2.3.3.1 Procurement type . . . . . . . . . . . . . . . . . . 2.3.3.2 Production type . . . . . . . . . . . . . . . . . . . 2.3.3.3 Distribution type . . . . . . . . . . . . . . . . . . . 2.3.3.4 Sales type . . . . . . . . . . . . . . . . . . . . . . . 2.4 Lot-sizing and scheduling in the consumer packaged goods industry 2.5 Advanced Planning Systems . . . . . . . . . . . . . . . . . . . . . .
1 1 3 4
. . . . . . . . . . . . . .
7 7 11 11 13 14 14 15 15 15 16 19 20 21 23
3 Multi-level lot-sizing and scheduling 3.1 General assumptions and limitations . . . . . . . . . . . . . . . . . . . . . . 3.1.1 Objective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.2 Time structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25 25 26 27
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
X
Contents 3.2
3.3
3.4
Single-level models with different time structures . . . . . . . . . . . . . . . 3.2.1 The Capacitated Lot-sizing Problem (CLSP) . . . . . . . . . . . . . . 3.2.2 The Discrete Lot-sizing and Scheduling Problem (DLSP) . . . . . . . 3.2.3 The Continuous Setup Lot-sizing Problem (CSLP) . . . . . . . . . . 3.2.4 The Proportional Lot-sizing and Scheduling Problem (PLSP) . . . . . 3.2.5 The Capacitated Lot-sizing problem with Sequence-Dependent setup costs (CLSD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.6 The General Lot-sizing and Scheduling Problem (GLSP) . . . . . . . Multi-level models in the literature . . . . . . . . . . . . . . . . . . . . . . . 3.3.1 Synchronization between the levels . . . . . . . . . . . . . . . . . . . 3.3.2 PLSP-based models . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.2.1 Proportional Lot-sizing and Scheduling Problem with Parallel Machines (PLSP-PM) . . . . . . . . . . . . . . . . . . . . 3.3.2.2 The multi-level single machine PLSP (PLSP-ML-SM) . . . . 3.3.3 CLSD-based models . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.3.1 The Multi-level Sequence-dependent Lot-sizing and Scheduling problem (MSLS) . . . . . . . . . . . . . . . . . . . . . . 3.3.3.2 The Multi-Level Capacitated Lotsizing Problem with SequenceDependent Setup Costs using Parallel Machines at Multiple Locations (MLCLSD-PM-ML) . . . . . . . . . . . . . . . . . 3.3.4 GLSP-based models . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.4.1 The General Lot-sizing and Scheduling Problem for Multiple production Stages (GLSPMS) . . . . . . . . . . . . . . . . . 3.3.4.2 The two-stage multi-machine lot-scheduling model (P2SMM) 3.3.5 Other models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 Improvements of the GLSPMS 4.1 Shortcomings of the basic GLSPMS . . . . . . . . . 4.2 Improved GLSPMS . . . . . . . . . . . . . . . . . . 4.2.1 New line synchronization . . . . . . . . . . . 4.2.2 Model formulation . . . . . . . . . . . . . . 4.3 Properties of the improved GLSPMS . . . . . . . . 4.3.1 Complexity . . . . . . . . . . . . . . . . . . 4.3.2 Advantages and disadvantages . . . . . . . . 4.3.3 Generalization of other models . . . . . . . . 4.4 Computational tests . . . . . . . . . . . . . . . . . 4.4.1 Base scenarios . . . . . . . . . . . . . . . . . 4.4.1.1 Serial product structure (SER) . . 4.4.1.2 Divergent product structure (DIV)
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
28 29 30 32 33 34 36 39 39 41 42 43 47 47
49 51 53 60 64 65 67 67 70 70 71 73 73 75 77 79 79 79 80
Contents
4.4.2
XI 4.4.1.3 General product structure (GEN) . . . . . . . . . . . . . . . Results with different settings of a standard MIP-solver . . . . . . . .
5 Reformulations of the improved GLSPMS 5.1 General reformulation techniques . . . . . . . . . . . . . . . 5.2 Selected approaches for lot-sizing and scheduling models . . 5.2.1 Extended reformulations . . . . . . . . . . . . . . . . 5.2.1.1 Simple Plant Location (SPL) . . . . . . . . 5.2.1.2 Echelon Stocks . . . . . . . . . . . . . . . . 5.2.1.3 Flow conservation for changeovers . . . . . . 5.2.1.4 Elimination of the inventory stock variables 5.2.2 Valid inequalities . . . . . . . . . . . . . . . . . . . . 5.3 Extended reformulations of the GLSPMS . . . . . . . . . . . 5.3.1 SPL formulation (S) . . . . . . . . . . . . . . . . . . 5.3.2 Flow formulation (F) . . . . . . . . . . . . . . . . . . 5.4 Valid Inequalities for the GLSPMS . . . . . . . . . . . . . . 5.4.1 Stock inequalities (K) . . . . . . . . . . . . . . . . . 5.4.2 Tighter setup forcing constraints (M) . . . . . . . . . 5.5 Computational results . . . . . . . . . . . . . . . . . . . . . 5.5.1 Comparison of the different model formulations . . . 5.5.2 Influence of varying problem characteristics . . . . .
81 82
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
85 85 87 87 87 88 89 90 90 91 91 95 95 95 96 96 97 99
6 Heuristics for the improved GLSPMS 6.1 Selected meta-heuristic approaches . . . . . . . . . . . . . . . 6.1.1 Truncated MIP . . . . . . . . . . . . . . . . . . . . . . 6.1.2 LP&Fix . . . . . . . . . . . . . . . . . . . . . . . . . . 6.1.3 Relax&Fix . . . . . . . . . . . . . . . . . . . . . . . . . 6.1.4 Exchange . . . . . . . . . . . . . . . . . . . . . . . . . 6.1.4.1 General idea . . . . . . . . . . . . . . . . . . 6.1.4.2 Fix&Optimize as an example . . . . . . . . . 6.1.5 Local Search . . . . . . . . . . . . . . . . . . . . . . . . 6.1.5.1 General idea . . . . . . . . . . . . . . . . . . 6.1.5.2 2-opt as an example . . . . . . . . . . . . . . 6.1.5.3 Descent procedures . . . . . . . . . . . . . . . 6.1.5.4 Descent-ascent procedures . . . . . . . . . . . 6.1.6 Variable Neighborhood Search (VNS) . . . . . . . . . . 6.1.7 Variable Neighborhood Decomposition Search (VNDS) 6.2 Heuristics for the GLSPMS . . . . . . . . . . . . . . . . . . . 6.2.1 Truncated MIP (TM) . . . . . . . . . . . . . . . . . . . 6.2.2 LP&Fix (LF) . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
103 103 104 104 104 105 105 105 108 109 109 110 110 110 113 114 114 114
XII
Contents
6.3
6.2.3
Relax&Fix (RF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
6.2.4
Trivial solution (TS) . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
6.2.5
Repeating setup sequence (RS) . . . . . . . . . . . . . . . . . . . . . 116
6.2.6
GLSPMS tailored Fix&Optimize (FO) . . . . . . . . . . . . . . . . . 118
6.2.7
Variable Neighborhood Decomposition Search with Exchange (VNDS+E)119 Main control procedure . . . . . . . . . . . . . . . . . . . . 121 Microperiod-based neighborhood . . . . . . . . . . . . . . . 123
6.2.7.3
Product-based neighborhood . . . . . . . . . . . . . . . . . 125
6.2.7.4
BOM-based neighborhood . . . . . . . . . . . . . . . . . . . 126
6.2.7.5
Line-based neighborhood . . . . . . . . . . . . . . . . . . . . 129
Computational tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 6.3.1
Small instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
6.3.2
Big instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
6.3.3 6.4
6.2.7.1 6.2.7.2
6.3.2.1
Test settings . . . . . . . . . . . . . . . . . . . . . . . . . . 132
6.3.2.2
Parameter tuning for the VNDS+E heuristic . . . . . . . . . 132
6.3.2.3
Results for VNDS+E, tailored Fix&Optimize, and Truncated MIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
6.3.2.4
Results for VNDS+E and Truncated MIP after 1 hour of runtime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
A real-world instance . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
Brief summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
7 Extensions of the improved GLSPMS 7.1
7.2
143
Availability of resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 7.1.1
Limited raw materials . . . . . . . . . . . . . . . . . . . . . . . . . . 143
7.1.2
Scarce common setup operators . . . . . . . . . . . . . . . . . . . . . 144
Time continuity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 7.2.1
Setup times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
7.2.2
Minimum lot-sizes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
8 Summary and Outlook
155
8.1
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
8.2
Outlook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
A Artificial test instances
161
A.1 Serial instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 A.2 Divergent instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 A.3 General instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 B Computational results of the heuristics
171
Contents
XIII
Bibliography
173
List of Figures 1.1
Price indices of important raw materials (Food and Agriculture Organization of the United Nations, 2011). . . . . . . . . . . . . . . . . . . . . . . . . . .
2
2.1
The Supply Chain Planning Matrix (Fleischmann et al., 2008, p. 87). . . . .
8
2.2
Trade-off between fixed and variable costs per piece of a production lot (cf. Harris, 1913). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
2.3
Gozinto graphs of the four product structures. . . . . . . . . . . . . . . . . .
13
2.4
Decoupling point in a Make-To-Stock environment (adapted from Fleischmann and Meyr, 2004). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
2.5
A flexible flow line in the consumer goods industry. . . . . . . . . . . . . . .
16
2.6
An example of the soft drink industry (as in Ferreira et al. (2009)). . . . . .
17
2.7
An example of the plasters production. . . . . . . . . . . . . . . . . . . . . .
17
2.8
Small example of a shifting bottleneck. . . . . . . . . . . . . . . . . . . . . .
19
2.9
Typical demand curves (idealized). . . . . . . . . . . . . . . . . . . . . . . .
20
2.10 Example for low level coding. . . . . . . . . . . . . . . . . . . . . . . . . . .
21
2.11 Production planning the consumer goods industry (adapted from Fleischmann et al., 2008, p. 97). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
22
2.12 Software modules covering the SCP-matrix (Meyr et al., 2008, p. 109). . . .
24
3.1
Continuous vs. discrete demand (in accordance to Meyr, 1999, p. 50). . . . .
27
3.2
Time buckets of identical length. . . . . . . . . . . . . . . . . . . . . . . . .
28
3.3
Different lengths of time buckets. . . . . . . . . . . . . . . . . . . . . . . . .
28
3.4
Example for the two-level time structure of the GLSP. . . . . . . . . . . . .
36
3.5
PLSP with zero lead-times.
44
3.6
Possible structure of a microperiod. . . . . . . . . . . . . . . . . . . . . . . .
53
3.7
Example for the common time structure. . . . . . . . . . . . . . . . . . . . .
54
3.8
Tighter plans with setup and quantity splitting (in accordance with Meyr, 2004). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
54
3.9
. . . . . . . . . . . . . . . . . . . . . . . . . . .
Impact of “slower” direct predecessor. . . . . . . . . . . . . . . . . . . . . . .
60
3.10 Line synchronization for split setup times. . . . . . . . . . . . . . . . . . . .
61
3.11 Schedules with and without synchronization (cf. Ferreira et al., 2009). . . . .
64
XVI 4.1 4.2 4.3 4.4 4.5
List of Figures Unnecessarily large microperiods due to constraints (3.94) and (3.95). . . . . Synchronization issue for more than two stages. . . . . . . . . . . . . . . . . Predecessor item is transferred to several lines. . . . . . . . . . . . . . . . . . New microperiod structure with two different elements of idle time. . . . . . Production of direct successor product j on line l must neither start nor end before predecessor product i on line k in every microperiod s. . . . . . . . . Travel distances between all pairs of five cities. . . . . . . . . . . . . . . . . . Feasible solution for w1 = 0, w5 = 94, and w6 = 95. . . . . . . . . . . . . . . High number of microperiods. . . . . . . . . . . . . . . . . . . . . . . . . . . BOM and product-line assignment of the serial instance. . . . . . . . . . . . BOM and product-line assignment of the divergent instance. . . . . . . . . . BOM and product-line assignment of the instance with a general product structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Progression of the upper and lower bound for the divergent instance with L=3, J=12, T=5, and S=30. . . . . . . . . . . . . . . . . . . . . . . . . . . .
67 69 69 70
5.1 5.2 5.3 5.4 5.5
Different formulations for the regarded problem. . Valid inequality for the regarded problem. . . . . Simple Plant Location problem. . . . . . . . . . . Product structure of the divergent base scenario. . Network flow problem. . . . . . . . . . . . . . . .
. . . . .
86 86 88 89 89
6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8 6.9 6.10 6.11 6.12 6.13 6.14 6.15 6.16 6.17
Example of a product structure. . . . . . . . . . . . . . . . . . . . . . . Example for the product-oriented decomposition. . . . . . . . . . . . . Example for the resource-oriented decomposition. . . . . . . . . . . . . Example for the process-oriented decomposition. . . . . . . . . . . . . . Example for exchanging two edges as the transformation step of 2-opt. Neighborhood Nk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Neighborhood Nk+1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Random neighbor x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Local optimum x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A possible Relax&Fix scheme without overlap. . . . . . . . . . . . . . . A possible Relax&Fix scheme with overlap. . . . . . . . . . . . . . . . . Setup sequence obtained by the RS model. . . . . . . . . . . . . . . . . Repeating the setup sequence in every macroperiod t. . . . . . . . . . . Loop iteration 29—Neighborhood N1B . . . . . . . . . . . . . . . . . . . Loop iteration 38—Neighborhood N2B . . . . . . . . . . . . . . . . . . . Problem 24 solved with different parameter scenarios. . . . . . . . . . . The percentage gap of the best VNDS+E run with the O-formulation scenario 2 for 204 microperiods. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . and . . .
106 107 107 108 109 111 112 112 112 115 115 118 118 127 128 138
4.6 4.7 4.8 4.9 4.10 4.11 4.12
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
70 74 75 76 79 80 81 83
142
List of Figures 7.1 7.2 7.3 7.4 7.5
The optimal solution of an artificial instance without considering any setup operator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Scheduling of a setup operator. . . . . . . . . . . . . . . . . . . . . . . . . . The optimal solution for the same artificial instance with one setup team. . . Example for a setup time overlapping more than two microperiods. . . . . . Example for a continuous setup. . . . . . . . . . . . . . . . . . . . . . . . . .
XVII
145 146 147 149 152
B.1 Comparison of the solution procedures for problem 8. . . . . . . . . . . . . . 171 B.2 Comparison of the solution procedures for problem 17. . . . . . . . . . . . . 172 B.3 Comparison of the solution procedures for problem 29. . . . . . . . . . . . . 172
List of Tables 1.1
2.1
Real Gross Domestic Product growth of selected countries as a year-on-year increase (OECD, 2011). . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
2.3
Functional attributes of a supply chain typology (adapted from Meyr and Stadtler, 2008, p. 67). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Structural attributes of a supply chain typology (Meyr and Stadtler, 2008, p. 69). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demand series causing bottlenecks on different stages. . . . . . . . . . . . . .
14 19
3.1
PLSP solution values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
44
4.1 4.2 4.3 4.4
Travel distances as setup times. . . . . . . . . . . . . . . . . . . . . . . . . . Relaxed changeover variables smeared over the planning horizon. . . . . . . . Overview of test instances. . . . . . . . . . . . . . . . . . . . . . . . . . . . . Percentage of test instances solved to optimality in 3600 sec. (PS) and percentage of instances performing best (PB) with solver settings “presolving” (PR) and “cut generation” (CG) set on (1) and off (0). . . . . . . . . . . . .
74 77 81
2.2
5.1 5.2
Holding stocks and costs as well as echelon stocks and marginal holding costs. Percentage of test instances solved to optimality in 3600 sec. (PS), the corresponding integrality gap (IG), and the average runtime (AR) in sec. for all formulations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3 Percentage of instances that are unfinished after 3600 sec. (PU) and the corresponding duality gap (DG) for all formulations. . . . . . . . . . . . . . . . 5.4 Percentage of test instances solved to optimality in 3600 sec. (PS), the corresponding integrality gap (IG), and the average runtime (AR) in sec. for all formulations—now grouped by the product structure. . . . . . . . . . . . . . 5.5 Percentage of test instances with different problem characteristics solved to optimality in 3600 sec. (PS), the corresponding integrality gap (IG), and the average runtime (AR) in sec. for the two best formulations S and F including stock inequalities (K) as well as big-M-inequalities (M). . . . . . . . . . . . . 6.1
Trivial solution—objective 5300.0, runtime 0.7 sec.
12
83 89
97 99
100
100
. . . . . . . . . . . . . . 123
XX
List of Tables
6.15
Loop iteration 1—Neighborhood N1S . . . . . . . . . . . . . . . . . . . . . . . 124 Loop iteration 12—Neighborhood N1J . . . . . . . . . . . . . . . . . . . . . . 126 Loop iteration 29—Neighborhood N1B . . . . . . . . . . . . . . . . . . . . . . 128 Loop iteration 38—Neighborhood N2B . . . . . . . . . . . . . . . . . . . . . . 128 Loop iteration 41—Neighborhood N1L . . . . . . . . . . . . . . . . . . . . . . 129 Gap (GP) and average runtime (AR) of Truncated MIP (TM), LP&Fix (LF), and Relax&Fix (RF) for the extended formulations “flow conservation” (F) and “Simple Plant Location” (S)—both extended by stock inequalities (K) as well as big-M-inequalities (M). . . . . . . . . . . . . . . . . . . . . . . . . . . 130 All 5 scenarios with their parameter values. . . . . . . . . . . . . . . . . . . 133 Comparison of different sequences of the bill-of-materials based neighborhood structures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 Number of times a new solution has been found by the neighborhood structures on average. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Results of all 30 problem instances. . . . . . . . . . . . . . . . . . . . . . . . 136 Comparison of scenario 5 (SC5), Truncated MIP (TM), and tailored Fix&Optimize (FO). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 Comparison of scenario 5 and Truncated MIP (TM) after 1 hour runtime. . . 139 Comparison of Truncated MIP (TM) and the new heuristic after 1 hour of runtime. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Comparison of scenarios 2 and 5 for formulations F+M+K and O. . . . . . . 141
7.1 7.2
Setup operator assignement. . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 Solution values of the example for a continuous setup. . . . . . . . . . . . . . 153
6.2 6.3 6.4 6.5 6.6 6.7
6.8 6.9 6.10 6.11 6.12 6.13 6.14
A.1 Number of lines, products, macroperiods, microperiods as well as set of all last microperiods and all fixed microperiods with their respective starting times. A.2 Initial and maximum inventory, holding and purchasing costs as well as maximum purchase and sets of immediate and all successors. . . . . . . . . . . . A.3 Index sets for line synchronization constraints. . . . . . . . . . . . . . . . . . A.4 Overtime costs and maximum overtime. . . . . . . . . . . . . . . . . . . . . . A.5 Production coefficients. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.6 First microperiod and set of microperiods belonging to a macroperiod. . . . . A.7 Demand. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.8 Maximum WIP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.9 Setup costs and times. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.10 Production costs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.11 Minimum lot-sizes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.12 Initial setup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.13 Gozinto factors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.14 Allowed products and microperiods as well as standby costs. . . . . . . . . .
161 161 162 162 162 162 162 162 162 163 163 163 163 163
List of Tables A.15 Number of lines, products, macroperiods, microperiods as well as set of all last microperiods and all fixed microperiods with their respective starting times. A.16 Initial and maximum inventory, holding and purchasing costs as well as maximum purchase and sets of immediate and all successors. . . . . . . . . . . . A.17 Index sets for line synchronization constraints. . . . . . . . . . . . . . . . . . A.18 Overtime costs and maximum overtime. . . . . . . . . . . . . . . . . . . . . . A.19 Production coefficients. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.20 First microperiod and set of microperiods belonging to a macroperiod. . . . . A.21 Demand. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.22 Maximum WIP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.23 Setup costs and times. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.24 Production costs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.25 Minimum lot-sizes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.26 Initial setup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.27 Gozinto factors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.28 Allowed products and microperiods as well as standby costs. . . . . . . . . . A.29 Number of lines, products, macroperiods, microperiods as well as set of all last microperiods and all fixed microperiods with their respective starting times. A.30 Initial and maximum inventory, holding and purchasing costs as well as maximum purchase and sets of immediate and all successors. . . . . . . . . . . . A.31 Index sets for line synchronization constraints. . . . . . . . . . . . . . . . . . A.32 Overtime costs and maximum overtime. . . . . . . . . . . . . . . . . . . . . . A.33 Production coefficients. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.34 First microperiod and set of microperiods belonging to a macroperiod. . . . . A.35 Demand. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.36 Maximum WIP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.37 Setup costs and times. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.38 Production costs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.39 Minimum lot-sizes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.40 Initial setup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.41 Gozinto factors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.42 Allowed products and microperiods as well as standby costs. . . . . . . . . .
XXI
164 164 164 165 165 165 165 165 165 166 166 166 166 166 167 167 167 168 168 168 168 168 169 169 169 169 169 170
List of Algorithms 1
GetNetDemands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 3 4 5 6 7 8 9 10 11
Basic Variable Neighborhood Search . . . . . . . . . Basic Variable Neighborhood Decomposition Search Main control procedure. . . . . . . . . . . . . . . . . StartExchange . . . . . . . . . . . . . . . . . . . . . GetMicroperiodNeighborhood . . . . . . . . . . . . . GetRandomSubSet . . . . . . . . . . . . . . . . . . . GetProductNeighborhood . . . . . . . . . . . . . . . GetUpwardsBomNeighborhood . . . . . . . . . . . . GetDownwardsBomNeighborhood . . . . . . . . . . . GetLineNeighborhood . . . . . . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
45 111 113 122 122 123 124 125 127 127 129
List of Abbreviations APS
Advanced Planning Systems
CLSD
Capacitated Lot-sizing Problem with Sequence-Dependent Setup Costs
CLSP
Capacitated Lot-sizing Problem
CSLP
Continuous Setup Lot-sizing Problem
DLSP
Discrete Lot-sizing and Scheduling Problem
FMCG
Fast moving consumer goods
FO
GLSPMS tailored Fix&Optimize
GLSP
General Lot-sizing and Scheduling Problem
GLSPMS
General Lot-sizing and Scheduling Problem for Multiple production Stages
LF
LP&Fix
LTB
Large-time bucket
MLCLSD-PM-ML
Multi-Level Capacitated Lotsizing Problem with Sequence-Dependent Setup Costs using Parallel Machines at Multiple Locations
MLCLSP
Multi-Level Capacitated Lot-sizing Problem
MRP
Material Requirements Planning
MSLS
Multi-level Sequence-dependent Lot-sizing and Scheduling problem
MTS
Make-To-Stock
P2SMM
Two-stage multi-machine lot-scheduling model
PLSP
Proportional Lot-sizing and Scheduling Problem
PLSP-ML-SM
Multi-level single machine PLSP
XXVI
List of Abbreviations
PLSP-PM
Proportional Lot-sizing and Scheduling Problem with Parallel Machines
PPC
Production Planning and Control
RAM
Random access memory
RF
Relax&Fix
RS
Repeating setup sequence heuristic
SCP
Supply Chain Planning
SITLSP
Synchronized and Integrated Two-Level Lot-sizing and Scheduling Problem
SPL
Simple Plant Location
STB
Small-time bucket
TM
Truncated MIP
TS
Trivial solution heuristic
VND
Variable Neighborhood Descent
VNDS
Variable Neighborhood Decomposition Search
VNDS+E
Variable Neighborhood Decomposition Search with Exchange
VNS
Variable Neighborhood Search
WIP
Work-in-process
Chapter 1 Introduction Since the financial crisis in 2009, the global economy has begun growing steadily again. Especially in the emerging markets of Brazil, India, and China, there have been high growth rates in the last few years. As illustrated in Table 1.1, the forecasts (marked with an asterisk) still assume a positive trend in future years. 2009
2010
2011
2012*
2013*
Brazil China Germany India Japan United States
-0.7 9.2 -5.1 7.0 -6.3 -3.5
7.5 10.4 3.6 9.9 4.1 3.0
3.4 9.3 3.0 7.7 -0.3 1.7
3.2 8.5 0.6 7.2 2 2.0
3.9 9.5 1.9 8.2 1.6 2.5
World
-1.2
5.0
3.8
3.4
4.3
Table 1.1: Real Gross Domestic Product growth of selected countries as a year-on-year increase (OECD, 2011). As private consumption is supposed to be one of the main drivers of growth, it is not surprising that companies producing consumer packaged goods1 such as household products, beverages, and food, were able increase their turnover after 2009.
1.1
Cost pressure in the consumer packaged goods industry
Although the total sales of the top 50 FMCG companies have risen constantly, by up to 8% per year in 2010 and 2011, their net earnings even started to decline at the beginning of 2011 (cf. OC&C Strategy Consultants, 2011). The main reason is that the prices for raw materials have been increasing more and more, as shown in Figure 1.1. Furthermore, new players from the emerging countries have entered the markets as well. Thus, consumer 1
They are also called fast moving consumer goods (FMCG) as they have a high stock turnover.
F. Seeanner, Multi-Stage Simultaneous Lot-Sizing and Scheduling, Produktion und Logistik, DOI 10.1007/978-3-658-02089-7_1, © Springer Fachmedien Wiesbaden 2013
2
Chapter 1. Introduction 325 300 275 250 225
Sugar Price Index
200
Oils Price Index Cereals Price Index
175
Dairy Price Index 150 125 100 75 2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
Figure 1.1: Price indices of important raw materials (Food and Agriculture Organization of the United Nations, 2011). packaged goods companies are exposed to high pressure from competition, which results in very low contribution margins. For consumer packaged goods companies, the globalization has also led to very close upstream and downstream linkages to suppliers and to consumers. On the one hand, raw materials are sourced today from all over the world. On the other hand, the emerging markets have to be satisfied with the products, too. Accordingly, a network of organizations is “involved in the different processes and activities that produce value in the form of products and services in the hands of the ultimate consumer” (Christopher, 2005, p. 17). Such a network represents a supply chain and as a consequence, today whole supply chains are competing with each other. For this reason, managing such supply chains has become increasingly important, where Supply Chain Management can be defined as the “task of integrating organizational units along a supply chain and coordinating material, information and financial flows in order to fulfill (ultimate) customer demands with the aim of improving the competitiveness of a supply chain as a whole” (Stadtler and Kilger, 2008, p. 11). Due to the complexity of the supply chain, consumer packaged goods companies rely on IT support. However, traditional Production Planning and Control (PPC) systems are not able to adequately support the needed planning. Main reason is that PPC systems are typically based on the concept of Material Requirements Planning (MRP), which was developed by Orlicky (1975) and originally was meant for job shop manufacturing. Nevertheless, it has been used for a wide range of different production systems in the past, also including the consumer packaged goods industry. But since MRP determines production quantities for each item (of a multi-level structure) individually, and does not consider limited capacity in a satisfactory manner, it is hardly suited for the consumer packaged goods industry. Accordingly, it is advisable for the companies of this industry to introduce so-called Advanced
1.2. Motivation and goals of this thesis
3
Planning Systems (APS) because they are intended to provide “true planning capabilities” (Fleischmann and Meyr, 2003) which appropriately consider the constraints of the production system. In the consumer packaged goods industry, the production system generally comprises two or three production stages, such as make&pack, where in the first stage the products are made and then packed in the second stage, sometimes with an additional refinement process in between. At each stage, one or several parallel production lines might exist, which are all highly utilized and thus represent potential bottlenecks. But before a certain item can be produced, the production line has to be set up, which costs time and money. Generally, the items can be assigned to a few so-called setup families. Changeovers between items of the same family incur low setup costs as well as low setup times, and thus can be disregarded. By contrast, high setup costs and setup times may result from changeovers between two items of different setup families (cf. the typology presented by Meyr and Stadtler (2008)). As a result, there is some trade-off between reducing the number of changeovers (minimizing setup costs and times) and reducing stock levels (minimizing holding costs). Moreover, setup times and costs are very often sequence-dependent, due to cleansing and other effects. Then not only the number of setups but especially their sequence has an impact on the capacity available for production. Once several production lines are installed in parallel, not only do decisions about the sizes of the lots have to be made, but also about the assignment of these lots to production lines and the line-specific sequences of the lots.
1.2
Motivation and goals of this thesis
Even though several APS claim to support the planning of a production system as outlined above, some production planners in the consumer packaged goods industry are still not satisfied. One reason might be that some APS stick to MRP procedures—even for the lot-sizing and scheduling. Therefore, they split demand into numerous jobs of a pre-defined size so that job shop planning methods can still be used. But the size of the jobs is a critical issue, since a bigger size restricts the degree of freedom, and a smaller one drastically increases the complexity. Either way, this approach seems to be inadequate. A second reason could be that usually the planning problem is decomposed by stages and the single-staged sub-problems are then solved sequentially. In general, this approach is completely sufficient, as in many situations only one of the production stages actually represents a (stationary) bottleneck (cf. Bolander and Taylor (1990) and (Meyr, 1999, p. 86)). But because of line- and product-specific production speeds and time-varying demands, the bottleneck might also shift dynamically between the stages. In that case, the decomposition approach is insufficient and a simultaneous consideration of multiple stages as well as parallel
4
Chapter 1. Introduction
lines becomes necessary. Indeed, considering multiple production stages simultaneously is particularly challenging. Motivated by the dissatisfaction with such standard approaches on the part of production planners in the consumer packaged goods industry, this thesis provides a possible component for supporting them in making better decisions for the problems outlined above. As the quality of decision support mainly depends on the adequacy of the models and applicable solution methods (cf. Stadtler and Kilger, 2008, p. 4), two main goals can be identified for this thesis. 1. A mathematical model for the simultaneous lot-sizing and scheduling of multiple stages must be given which determines both the sizes and the sequences of the lots for all relevant lines at all relevant stages. Therefore, the trade-off between models which are as simple as possible and models that are as detailed as necessary has to be considered. 2. A solution procedure has to be presented which is able to solve the corresponding model in a reasonable amount of time, either exactly or near-optimally via heuristics. Regarding the entire picture, these two elements should integrate into a decision support system. Furthermore, in order to build a model which exhibits the relevant characteristics, all aspects of the underlying planning problem have to be examined.
1.3
Outline
Due to the close linkages between suppliers, manufacturers, and customers, the supply chain as a whole has to be analyzed in order to identify the relevant problem characteristics. Therefore, Chapter 2 will introduce the basics of Supply Chain Planning in general and of production planning in particular. Afterwards, the supply chain of a manufacturer in the consumer packaged goods industry will be analyzed and special planning requirements identified. Moreover, the structure and functionality of APS will be considered in order to determine the requirements for a decision support system. In a second step, Chapter 3 will review the current literature on multi-level lot-sizing and scheduling models. For that purpose, some well-known single stage models will be introduced first: they will be the starting ground for several multi-level variants and help illustrate several modeling aspects. As a result of this review, we will have to conclude that only one existing model seems suitable for tackling the identified problem of the consumer packaged goods industry, namely, the General Lot-sizing and Scheduling Problem for Multiple Production Stages. Due to a few shortcomings, this model will be revised in Chapter 4 and the first computational results will be given there. However, as will become clear, standard solution methods do not allow solving the model formulation at hand to optimality in a reasonable amount of time.
1.3. Outline
5
Consequently, the following two chapters concern different solution approaches. Chapter 5 will examine different reformulation techniques. By interpreting the underlying problem as another well-known (combinatorial) problem, a redefinition of the model variables and constraints might allow of solving the model exactly by standard methods. However, due to the complexity of lot-sizing and scheduling problems, heuristics will also be analyzed in Chapter 6. In order to emphasize the quality of the revised model and the new solution procedure, a real-world case will be explained and then solved. Finally, different model extensions such as for common setup operators will be presented in Chapter 7. This thesis ends with a summary of its results, a conclusion, and an outlook on further research opportunities in Chapter 8.
Chapter 2 Production planning in the consumer packaged goods industry Chapter 1 presented the motivation for the focus of this thesis, which is production planning in the consumer packaged goods industry—more specifically, lot-sizing and scheduling. However, this planning cannot be considered separately, as will be shown in Section 2.1. In fact, the whole supply chain needs to be regarded in order to adequately develop models and methods (cf. Silver et al., 1998, p. 36). For this reason, a supply chain typology is presented in Section 2.2, which will help describe the supply chain in general and the regarded production system in particular. Based on that typology, a detailed characterization of the consumer goods industry is then presented and the planning requirements for lot-sizing and scheduling will be derived. Furthermore, in Section 2.4, an operational planning concept will be introduced which meets the identified requirements. Finally, the general structure and functionality of an APS will be briefly sketched in the last section.
2.1
Supply Chain Planning
In a consumer packaged goods company, a large number of decisions have to be made day by day. Such decision making needs to be supported by planning, which is an instrument for preparing decisions in a situation of uncertainty. The main tasks of planning are to identify and evaluate alternative courses of action (cf. Fleischmann et al., 2008, p. 81). Accordingly, making the right decisions is the aim of “Supply Chain Planning”. Following the definition of Fleischmann and Meyr (2003), we understand Supply Chain Planning (SCP) “as a generic term for the whole range of those decisions on the design of the supply chain, on the mid–term coordination and on the short–term scheduling of the processes in the supply chain.” As can be seen from this definition, decisions have differing importances and concern different planning horizons. For this reason, we typically
F. Seeanner, Multi-Stage Simultaneous Lot-Sizing and Scheduling, Produktion und Logistik, DOI 10.1007/978-3-658-02089-7_2, © Springer Fachmedien Wiesbaden 2013
8
Chapter 2. Production planning in the consumer packaged goods industry
procurement
production
long-term
• materials program • supplier selection • cooperations
• plant location • production system
mid-term
• personnel planning • material requirements planning • contracts
• master production scheduling • capacity planning
short-term
• personnel planning • ordering materials
flow of goods
• lot-sizing • machine scheduling • shop floor control
distribution
sales
• physical distribution structure
• product program • strategic sales planning
• distribution planning
• mid-term sales planning
• warehouse replenishment • transport planning
• short-term sales planning
information flows
Figure 2.1: The Supply Chain Planning Matrix (Fleischmann et al., 2008, p. 87). distinguish between three different planning levels (cf. Anthony, 1965): Long-term planning covers strategic decisions about the future development of the supply chain. This includes decisions about the design of the supply chain network. The planned and implemented measures usually affect several years. The main task of mid-term planning is to concretize regular operations based on the strategic decisions. Therefore, rough quantities and points in time for the material flow have to be determined. The horizon generally covers 6–24 months. Depending on the decisions of the two upper levels, short-term planning has to specify detailed instructions for the execution and control of operations. The planning horizon ranges from a few days to several months (cf. Fleischmann et al., 2008, p. 82). But planning decisions not only differ with respect to their horizon, they can also be assigned to different functional areas. Typically, the four functional processes procurement, production, distribution, and sales are differentiated.1 Rohde et al. (2000) identify general supply chain planning tasks2 that can be assigned to different planning levels and functional processes. The result is the Supply Chain Planning Matrix (see Figure 2.1) which gives an overview of the material and informational flows between the different planning tasks. As already mentioned, the long-term tasks concern the design of the network. The SCP Matrix lists all these tasks in the same “box” to emphasize the strong interdependency: the supply chain member has to decide which markets to enter 1 Moreover, Fleischmann et al. (2008, p. 86) state that every supply chain can be split into several internal ones where each of them consists of these four processes. 2 “General” means that the tasks do not have to appear in every company, as they vary from industry to industry. Nevertheless, the reader gets an impression of the typical decision problems a planner has to face.
2.1. Supply Chain Planning
9
or remain in, with existing or with new products. The chosen product program directly influences the materials program. As today more and more components are purchased, the suppliers have to be selected carefully in terms of product quality, service, and further properties.3 Another topic is to build cooperations with suppliers. By sharing information about final customer demands and production capacities (among other things), such a collaboration may help to reduce, e.g., inventories, and thus costs, on both sides. Moreover, the decisions about the product and material program are also directly connected to decisions about the location of plants and the corresponding production systems, as they have an effect on how a customer can be reached. Since the location and capacity of a plant influence the physical distribution structure, they are also usually planned together. Depending on the product program and the sales forecast, the number of warehouses has to be determined or the decision for a logistic service provider has to be taken (cf. Fleischmann et al., 2008, pp. 88 and 89). On the mid-term level, sales planning has to forecast the potential sales in specific regions. Based on the given network and these sales forecasts, a rough capacity planning needs to be executed and a master production schedule specified. This schedule, which may concern several facilities simultaneously, determines the rough quantities which have to be produced in certain periods, in order to deal with time-varying demands. With the help of capacity planning, the required material as well as the required personnel has to be calculated and the appropriate contracts need to be signed. Furthermore, distribution planning determines the transport needs between the warehouses and the necessary stock levels. It also decides whether an external logistic service provider has to be contracted (cf. Fleischmann et al., 2008, p. 89). On the short-term level, sales planning is responsible for detailed forecasts (if needed) and demand fulfillment. In the latter case, sales staff has to check whether a customer order can be satisfied with the products already available or whether a new production order has to be created. Distribution planning determines the detailed schedule for transport to replenish the stocks in the warehouses or to deliver them to the customers (cf. Fleischmann et al., 2008, p. 92). As already outlined in Section 1.1, minimizing setup costs and minimizing inventory holding costs are competing objectives. Accordingly, one of the main tasks of short-term production planning is to decide about the size of a “production lot”, which is the quantity of a product that should be made at once. Figure 2.2 illustrates this tradeoff between setup costs and holding costs as a function of the lot-size. In addition to this lot-sizing issue, another important short-term planning task is to schedule the lots on the machines.4 Moreover, the shop floor control monitors all production activities and resources 3 Usually an ABC-classification is executed (see Silver et al. (1998)) to focus on the most important A-products and their suppliers. 4 Note that lot-sizing and scheduling is not necessarily a short-term planning task. Because of high setup times (several days or even weeks) and long production runs, it might also be a mid-term task (see also Suerie, 2005b, p. 69).
10
Chapter 2. Production planning in the consumer packaged goods industry costs per piece
total costs holding costs
setup costs quantity
Figure 2.2: Trade-off between fixed and variable costs per piece of a production lot (cf. Harris, 1913). to assure an optimal capacity utilization. Based on the short-term production schedule, a time-efficient shift schedule (extra shifts, overtime, capabilities of personnel, etc.) has to be determined. As shown with the Supply Chain Planning Matrix, there are strong interdependencies between the different planning levels (vertically) and even between different tasks on the same level (horizontally). Therefore, a simultaneous consideration of all tasks would be preferable. But this monolithic planning approach is unrealistic, since the problem becomes much too complex and thus is not solvable at all. On the contrary, a pure successive planning approach might miss optimality by a great deal. A compromise is to decompose the tasks hierarchically which has several advantages (cf. Dempster et al. (1981) and Fleischmann and Meyr (2003)): Since planning uncertainty increases with the length of the planning horizon, different planning levels should be based on different degrees of aggregation. For instance, on a strategic level, it might be sufficient to consider the yearly output for a product family of a whole plant and the demand of an entire sales region. Besides, this aggregation is also necessary because it is impossible to get detailed forecasts for several years at once. Another reason for such a decomposition is that the shorter the planning horizon, the more frequently the planning needs to be executed. Furthermore, strategic decisions are usually made centrally by a top manager, whereas on, e.g., the operational level, the production planners of different plants decide in a decentralized fashion. For all these reasons, it makes sense to build “planning modules” which integrate the decisions which should be made simultaneously (cf. Fleischmann and Meyr, 2003). The aim of hierarchical planning is to find the right level of detail and the right planning horizon
2.2. Supply chain typology
11
for the modules, and to coordinate them. The modules are arranged hierarchically and they exchange information and instructions (cf. Hax and Meal (1975) as well as Schneeweiss (2003)). To decide whether the planning tasks of lot-sizing and machine scheduling should build a common planning module, the supply chain of the consumer packaged goods industry has to be analyzed. For that purpose, we introduce a typology in the next section which helps to characterize the supply chain.
2.2
Supply chain typology
Meyr and Stadtler (2008) present a supply chain typology 5 which allows identifying the planning/decision problems of a supply chain. They differentiate between functional and structural attributes.
2.2.1
Functional attributes
Meyr and Stadtler follow the logic of the Supply Chain Planning Matrix to structure the functional attributes of a supply chain (see Section 2.1). Accordingly, these attributes describe the procurement, production, distribution, and sales type of each member in the supply chain. An overview of the categories and attributes considered is given in Table 2.1. To begin with the inbound side of a supply chain member, the procurement type has to be determined. At first, the type and the number of products which are procured have to be considered. The product type may range from rather simple standard products such as raw materials (e.g., milk or cereals) up to very complex and specialized items (e.g., entire consoles for car manufacturing). Since the products can be procured from different suppliers, the sourcing type describes their number (single-, double-, or multi-sourcing). Furthermore, the flexibility of a supplier in terms of quantities plays an important role, as well as the lead time and reliability (cf. Meyr and Stadtler, 2008, p. 66). A further relevant topic is the life-cycle of the externally obtained products, as a short life carries the risk that the product gets obsolescent in stock. The production process can be organized in different ways, such as in a job shop or flow shop system. The repetition of operations is closely linked to the production type. It may vary from mass production (with a continuous repetition) to one–of–a–kind production (without any repetition). But there are also intermediate degrees between these two extremes. Then, typically, batches or lots have to be built (see also page 9). Before the 5 This typology is supposed to be supplementing the SCOR-model which was published by the Supply Chain Council (2011). For further reading, see Suerie and Wagner (2008), among others.
12
Chapter 2. Production planning in the consumer packaged goods industry Functional attributes Categories
Attributes
Procurement type
number and type of products procured sourcing type flexibility of suppliers supplier lead time and reliability materials’ life cycle
Production type
organization of the production process repetition of operations changeover characteristics bottlenecks in production working time flexibility
Distribution type
distribution structure pattern of delivery deployment of means of transportation loading restrictions
Sales type
relation to customers availability of future demand demand curve number of product types bill-of-materials (BOM) product life cycle degree of customization portion of service operations
Table 2.1: Functional attributes of a supply chain typology (adapted from Meyr and Stadtler, 2008, p. 67). production of such a batch (lot) can be started, usually a setup needs to be executed to prepare the machine. Accordingly, the changeover characteristics describe the time and costs which are necessary for this preparation. Setup times and costs can be either dependent or independent of the sequence of the batches or lots. Furthermore, if there are bottlenecks in production, the types of the bottlenecks have to be examined as well as the flexibility of extending or reducing the working time. To analyze the distribution type, we have to consider the product flow to the customer / supply chain neighbor. First of all, the distribution structure may consist of several stages with different types, such as a two- or three-stage structure with central and regional warehouses. Another important issue is how regularly the supply chain neighbors are delivered (cyclic or dynamic). Besides, further loading restrictions, such as “full truck load” have to be identified. The sales type is mainly characterized by the relation to the customer(s), which may range from a single direct supply chain neighbor to an anonymous market with thousands of participants. This relation also determines whether future demands are available as orders or forecasts. Especially for forecasts, the demand curve, which might be static, seasonal, and so on, needs to be known. For selling the products, the degree of customization, the number
2.2. Supply chain typology
13
of different product types, and the product life cycle play an important role, as they directly influence sales activities like marketing. Closely related to these product properties, the bill-of-materials (BOM) describes how raw materials and components are processed for final items. In general, products might consist of different parts and components. In accordance with the relationship between items and their components, four different product structures are usually distinguished. If a product is only processed in further production steps, a serial product structure is assumed. However, if an item has exactly one component as predecessor, there is a divergent structure. Vice versa, a convergent structure means each item goes into exactly one product. Accordingly, a general structure shows none of these relationships. Since the bill-of-materials is a description of the product structure, the term BOM is often used synonymously with the term product structure in the literature. Another way to describe the product structure is a gozinto graph (see Figure 2.3). This is a directed graph where the nodes represent products and each arc is weighted with a “gozinto factor” which shows how many items of the source-product go into the sink-product.
serial
divergent
convergent
general
Figure 2.3: Gozinto graphs of the four product structures.
2.2.2
Structural attributes
The structural attributes given in Table 2.2 help describe the linkage between the members of a supply chain. They can be roughly grouped into the categories “topography” and “coordination and integration” (cf. Meyr and Stadtler, 2008, p. 69). The first category contains all attributes which characterize the supply chain. The network structure shows the links along the material flows in the supply chain. Moreover, the whole network may span several countries. Besides, the location of the decoupling point indicates which processes are executed before a customer order arrives (anticipative) or after (reactive). Finally, the major constraints arising through limitations of resources such as capacity, labor, and material have to be considered. The integration and coordination of the supply chain members has to be analyzed as well. If legally separated companies build a supply chain, the legal position of each company is a relevant attribute. Accordingly, the balance of power must be considered, too. The direction
14
Chapter 2. Production planning in the consumer packaged goods industry Structural attributes Categories
Attributes
Topography of a supply chain
network structure degree of globalization location of decoupling point(s) major constraints
Integration and coordination
legal position balance of power direction of coordination type of information exchanged
Table 2.2: Structural attributes of a supply chain typology (Meyr and Stadtler, 2008, p. 69). of coordination which is also very important can usually be derived from the two previous attributes. Between different companies, the direction is horizontal, whereas it is vertical within a single company. Finally, the type of information which is exchanged between supply chain partners should be specified.
2.3
The supply chain of the consumer packaged goods industry
With the help of the typology presented in the previous section, the supply chain of the consumer packaged goods industry can be characterized (cf. Fleischmann and Meyr (2003) as well as Meyr and Stadtler (2008)).6 At first, the topography of the supply chain and the integration and coordination will be explained. Afterwards, the functional attributes of the supply chain member “manufacturer” will be illustrated with a strong emphasis on the production and the sales type7 categories due to the focus of this thesis.
2.3.1
Topography
Consumer packaged goods companies usually produce at several places in different countries. Furthermore, the raw materials are often purchased from different parts of the world and the finished products are distributed globally as well. Accordingly, the production and distribution network is widely ramified. Especially in the consumer goods industry, final customer demands need to be met directly. If an item is not available on time, then, typically, sales are lost. Accordingly, the 6 Not all of the companies in that industry have to show exactly the same characteristics. However, for those which can be characterized in a similar fashion, the models and solution methods presented in this thesis should be applicable. 7 As Meyr and Stadtler (2008) point out, the final products (consumer goods) represent the determining factor of the supply chain.
2.3. The supply chain of the consumer packaged goods industry
15
delivery time has to be reduced to a minimum, which can be achieved by keeping finished goods in stock. This approach is called a Make-To-Stock (MTS) production, where the whole production process is decoupled from customer orders. Hence, the finished goods inventory decoupling point
procurement
production anticipative
distribution reactive inventory of finished goods
Figure 2.4: Decoupling point in a Make-To-Stock environment (adapted from Fleischmann and Meyr, 2004). represents the decoupling point by definition (see Figure 2.4). This means that the whole production process is anticipative, and thus based on demand forecasts. Accordingly, forecasting accurately the demand is a very important task in an MTS environment (Vollmann et al., 2005, pp. 21–22). Because of the location of the decoupling point, central and regional warehouses are needed near the markets all over the world. The major constraint is the limited production capacity. Due to the high degree of automation of the production lines this capacity is usually very expensive.
2.3.2
Integration and coordination
Since consumer goods are substitutable, due to their low product differentiation, the retailers (customers) are in a powerful position (buyer’s market). Because of the global presence and competitive pressure, information must be exchanged horizontally as well as vertically to coordinate the supply chain.
2.3.3
Functional attributes of the manufacturer
2.3.3.1
Procurement type
For producing consumer packaged goods, mainly raw materials such as dairy or cereals have to be procured. Usually, there are several possible suppliers on the market (multi-sourcing) with short lead-times. Moreover, long-term contracts are often signed with suppliers in order to bind them, even though the availability and quality of natural products cannot be guaranteed (e.g., due to bad weather and other critical factors).
16
Chapter 2. Production planning in the consumer packaged goods industry
2.3.3.2
Production type
Organization of the production process Usually, the whole production process consists of several sub-processes, where each of these processes changes an item in the sense of adding value. Generally speaking, a sub-process transforms input, in the form of resources and preitems, to output, in the form of intermediate and final products (cf. Meredith and Shafer, 2010, p. 8). In our case, such a transformation process corresponds to a certain functionality which is offered by a machine. We define this functionality as a production stage.8 The organization is mainly described by the layout of the machines and the flow of jobs/products (Silver et al., 1998, p. 669). The production in the consumer goods industry is usually organized as a flexible flow line system. But since there are different definitions of such a flow line in the literature (cf. Quadt and Kuhn (2007, pp. 686–687) and Ruiz and Rodríguez (2010) among others)9 , we need to specify this term for the consumer packaged goods industry. Hence, we define a flow line as illustrated in Figure 2.5: All products have to follow the same flow through the system, from production stage 1 to E. The production stages are serially arranged. At each stage, one or several parallel machines can be used alternatively as they provide partly the same functionality. They can be either identical in terms of the same setup and production times or heterogeneous with different times and speeds. A product may skip one or more production stages. Furthermore, the stages can be decoupled by buffers. The lots do not have to be transferred in whole batches in general, but can be streamed. That is why through-put times are low. This decrease, in turn, reduces the Work-In-Process (WIP) stocks as well.
production stage 1
production stage 2
machine 1 machine 2 machine 3
...
production stage E machine i-1
machine 4 buffer (Work-In-Process)
machine i
Figure 2.5: A flexible flow line in the consumer goods industry. Note that “machine” is used here as a generic term for a planning resource which is considered as a whole. For instance, such a planning unit might be a (chemical) reactor. But also a flow shop with a pre-defined material flow can be aggregated to a single resource production line. Due to this aggregate view, we can assume that there are only two or three 8
Accordingly, we get a “new” product at each stage, since value is added. The definitions are usually driven by the regarded industry. For instance, Quadt (2004) considers the case of the semi-conductor industry, where the machines at each stage have to be identical and the products have to be processed at all stages. 9
2.3. The supply chain of the consumer packaged goods industry
17
stages in general. Furthermore, each machine belongs uniquely to one production stage. In the following, two small examples will be described. They give an impression of the possible variants of such a production system. The first one is illustrated in Figure 2.6. It shows a slimmed-down version of a production system from the Brazilian soft-drink industry. In the first stage, the different soft-drinks are prepared in several tanks. Then these tanks provide the filling lines at the second stage with fluids. Every tank is connected to every line. However, each line can only be fed by one tank at the same time. liquid flavor preparation stage
bottling stage
tank 1
filling line 1
tank 2
tank l
filling line k wash bottles
fill
label
seal
package
palett
Figure 2.6: An example of the soft drink industry (as in Ferreira et al. (2009)). Another example originates from the manufacture of wound-care products. As shown in Figure 2.7, the production of wound plasters10 also comprises two different stages. Generally, both the making and the packaging stage represent potential bottlenecks. In the first stage, different components, such as silicon foil, glue, and cotton, are processed on several production lines to plasters of different sizes and forms. After the plasters are made, they are packaged in variety (combination) or non-variety packs at the second stage. The stages are decoupled by using the small spaces between the lines to temporarily store the plasters. making stage
packing stage
production line 1
packaging line 1
production line 2
packaging line 2
production line l
packaging line k
Figure 2.7: An example of the plasters production. 10
In several countries such as the United States, Australia, and India, they are also called band-aids.
18
Chapter 2. Production planning in the consumer packaged goods industry
Repetition of operations As the job flow is fixed, only technologically related products can be produced on such flow lines. In the consumer goods industry, production is typically continuous (e.g., beverages or fluids in general) as well as discrete (e.g., plasters). Due to the high degree of automation, short throughput rates are possible. Hence, discrete production can be seen as quasi-continuous, since a huge number of items are produced. That is why a continuous production can be assumed for the consumer goods industry.
Changeover characteristics As there is a huge number of final items which are somehow technologically related, the products can be assigned to a few setup “families”. For instance, we assume that the products i, j, and v belong to different families. Changeovers between items of the same family are negligible. But typically setup operators have to change machine tools or clean the machines for changeovers between items of different families. Then, such a changeover, e.g., between item i and j incurs significant setup time stij and costs sij . Furthermore, in many cases these changeovers are highly sequence-dependent (e.g., stij = stvj ), particularly due to needed cleaning processes (among others). For instance, in the soft drink industry the setup time to prepare the bottling line for a soft drink with sugar after one without is less time-consuming than the other way round (cf. Ferreira et al., 2009). Usually, setup times and costs fulfill the triangle inequality which means that stiv +stvj ≥ stij and siv + svj ≥ sij , respectively. But if a product v has, e.g., a cleaning effect on a production line, it might be the case that two changeovers from product i to v and v to j are cheaper or less time-consuming than a direct changeover from i to j. Thus, the triangle inequality is not fulfilled. This fact is another challenge for modeling lot-sizing and scheduling problems, as such a product v is usually set up more than once per period (cf. Menezes et al., 2011). A detailed explanation can be found in Chapter 3.
Bottlenecks in production In many cases, the bottleneck is stationary, lies at a single stage, and is known. Then this production stage can be regarded in isolation and the related production planning problems can be solved consecutively. But as pointed out in Chapter 1, there are shifting bottlenecks as well. In such cases, the production stages have to be considered simultaneously. In order to clarify this matter further we consider a small example from the consumer goods industry: Assume a company sells two different products, X and Y, as two different packaged goods A and B. In a simple make&pack environment, X and Y are produced in the first stage and then packaged in the second. Accordingly, the gozinto factor is 1. Figure 2.8 gives an overview. The available capacity is 100 time units per period and the production line in the first stage is able to make one item of X in aM X = 5 time units, and one of Y, in aM Y = 4 time units. Furthermore, the packaging line processes item X in aP A = 3 time units (resulting in A) and item Y in aP B = 7 (resulting in B ) time units. If, then, the external demand varies over time (see also Section 2.3.3.4), a shifting bottleneck as shown
2.3. The supply chain of the consumer packaged goods industry production coeff aPA=3
aPB=7
A
packaging stage (P)
B
gozinto factor pXA=1
pYB=1
X
making stage (M)
19
Y
production coeff aMX=5
aMY=4
Figure 2.8: Small example of a shifting bottleneck. in Table 2.3 occurs. As can be seen, in period 3 the available capacity in the making stage is not sufficient to produce the needed quantities in that period. Moreover, in period 6, the packaging stage becomes the bottleneck. period 1 period 2 period 3 period 4 period 5 period 6 demand for product A (qty) demand for product B (qty)
14 6
15 5
16 6
14 7
13 8
11 10
needed production time in stage M needed production time in stage P
94 84
95 80
104 90
98 91
97 95
95 103
Table 2.3: Demand series causing bottlenecks on different stages. So the production planner is on the horns of a dilemma: both stages have bottlenecks, in different periods. If the production of the packaged goods is moved to earlier periods in order to build stocks, this can create additional capacity shortages at the first stage. As stocks might also be built at the making stage, the planner has to determine lot-sizes and sequences carefully. Consequently, a successive approach is not sufficient. The only chance of solving this conflict is to consider and optimize both stages simultaneously. Although this is quite a small example, it gives a first impression of the problem and its difficulty. In a real-world case, hundreds of items and several hundreds of finished goods might have to be taken into account. Working time flexibility Generally, in a flow line production system, only a few but well-trained operators are needed. As described in Section 2.1, the working times of these operators are usually determined on a mid-term level, and thus are fixed on the shortterm range. Furthermore, in many companies, production lines are already operating 24/7. Because of this, working time flexibility is quite limited. 2.3.3.3
Distribution type
The distribution network of the supply chain normally comprises two or three stages (cf. Fleischmann, 1998). This structure of central and regional warehouses help realizing short
20
Chapter 2. Production planning in the consumer packaged goods industry
lead times. Accordingly, the customers (retailers) can be supplied almost daily from the regional warehouse, whereas the regional warehouses are fed with bundled deliveries from the central one. Therefore, central warehouses generally keep the whole range of products in stock.
2.3.3.4
Sales type
Availability of future demand and the demand curve Since production is Make-ToStock, forecasts play an important role. Normally, a solid data base is available, as there have been many observations made in the past, thanks to the long life cycle of the product. However, several factors may complicate the forecasting. For instance, there is usually a strong seasonality in the demand curve.11 But also forward buying12 as well as product cannibalization13 have significant impact. Figure 2.9 shows typical demand curves. demand
demand
average level
base level time
time
(a) Seasonality.
(b) Promotion.
Figure 2.9: Typical demand curves (idealized).
But these are not the only difficulties a demand planner has to face. Generally, the forecast error increases the further one looks into the future. Accordingly, the quality of the forecast has an impact on the length of the planning horizon for lot-sizing and scheduling.
Bill-of-materials (BOM) and the number of products As already mentioned before, the bill-of-materials (BOM) describes the product structure. Since it might be the case that the same intermediate product/component has multiple uses, as shown in Figure 2.10a, they are usually sorted according to their low level. This means each item is located on the level with the longest path (or highest number of stages) to the finished good (cf. Figure 2.10b). Then, the material requirements for each item can be easily computed level-by-level.14 11
As an example, the demand for ice-cream is significantly higher in the summer than in the winter. This means that retailers buy products ahead and keep them in stock. This effect is often the consequence of a (price) promotion. 13 For instance, very often a company sells items which are closely related and thus can be substituted. Then, an increase in the demand for one product may reduce the demand for the other. This effect is called cannibalization (cf. Meredith and Maki (2001); Srinivasan et al. (2005)). 14 A similar procedure can be found with the description of Stadtler’s multi-level PLSP in Section 3.3.2.2. 12
2.4. Lot-sizing and scheduling in the consumer packaged goods industry
1
1
2
4
2
3
3
(a) Multiple usage of intermediates.
4
21
low level 0
low level 1
3
low level 2
(b) Low levels.
Figure 2.10: Example for low level coding. Multi-level product structures normally result from the application of different transformation processes. Accordingly, these structures usually imply a production system with multiple production stages. However, it might be the case that a “new product” is generated by reapplying the same process and thus, it is still the same production stage. Then, the product structure has several levels, but not the production in a narrow sense. For instance, chemical processes such as filtration, extraction, etc., are often executed several times. Nevertheless, this scenario is very unusual for the consumer packaged goods industry. Furthermore, in the regarded case, the bill-of-materials generally has a divergent structure, since only a few pre-items are processed to several hundreds of final items. However, there is also a convergent element in this structure, since different products are typically combined and packaged as final “goods”.
Product life cycles and the degree of customization Consumer packaged goods used to be standard items with a life cycle of, usually, several years. However, in the recent past, companies have tended to shorten this life cycle, by changing the packaging or by slightly “improving” the components of their goods to make them seem more attractive to the market. First and foremost, this makes the forecasting of future demand even more difficult.
2.4
Lot-sizing and scheduling in the consumer packaged goods industry
Section 2.1 presented general planning tasks which can be somehow found in every supply chain. But depending on the type of the supply chain under consideration, these tasks may, in the concrete, vary significantly.15 As illustrated in the previous section, the consumer packaged goods supply chain has many special properties, which have a strong impact on 15 Note that this is one of the reasons why planning concepts such as MRP or MRP-II are not able to properly support all kinds of industries and their resulting problems.
22
Chapter 2. Production planning in the consumer packaged goods industry
the planning tasks and on their coordination, especially in the mid- and short-term horizon (cf. Drexl et al., 1994). One possible way to consider the interdependencies between the planning tasks of the consumer packaged goods industry appropriately is proposed by Fleischmann et al. (2008). They present a hierarchical planning concept which is sketched in Figure 2.11. procurement
mid-term
production
distribution
fore cast
Master Planning working time
setup times
seasonal stock net
short-term
sales
Simultaneous demand Lot-sizing and Scheduling
Demand Planning
Netting, fore Factory cast Assignment
Figure 2.11: Production planning the consumer goods industry (adapted from Fleischmann et al., 2008, p. 97). Starting point is the centrally executed demand planning. Due to seasonal demands and the fluctuations induced by marketing activities, the forecast horizon on the mid-term level should comprise at least one seasonal cycle (cf. Fleischmann et al., 2008). But then, because of the high number of final items, it is only possible to forecast product families with similar demand patterns. Besides, the aggregation helps to reduce the uncertainty because up- and downward deviations can be balanced. The resulting forecasts are input to the master planning. As the production capacity represents the major constraint, this module must decide about pre-production and building seasonal stocks. Moreover, capacity can only be extended on that level, as the working time of the setup operators is only flexible on a mid-term horizon, due to the legal framework. But production quantities might be shifted between several available sites—however, this incurs higher transportation costs. To cope with the demand uncertainty, this concept additionally considers safety stock levels in the master planning based on the existing forecast error.16 Accordingly, the result of the master planning is the required capacity (working time) and the product quantities that have to be pre-produced (seasonal stocks) for each plant as well as the needed transport capacity between the plants and the warehouses. 16 Depending on the service level that should be reached, the safety stock levels can be calculated, as shown for instance by Nahmias (2009, p. 272) and Silver et al. (1998, p. 242).
2.5. Advanced Planning Systems
23
Based on the initial inventories and the updated forecasts—now for single final items on the short-term level—the net demands can be calculated. Net demand constitutes input data for simultaneous lot-sizing and scheduling. Moreover, the working time determines the available capacity for production. Due to sequence-dependent changeovers, a simultaneous lot-sizing and scheduling is necessary since the sequence of the lots has an impact on the available capacity, and the capacity influences the sizes of the lots. Furthermore, if shifting bottlenecks occur, several stages must be considered simultaneously as well. As the lot-sizing and scheduling problem is supposed to be a very hard planning problem, it is a good idea to use mathematical models to find feasible plans. Generally, these kinds of models describe the technological, physical, legal, and further constraints on a real object as mathematical relationships (cf. Williams, 1999, p. 3). With the help of a suitable objective function, the solutions of the model can be evaluated and the optimum determined. However, to keep such an optimization model solvable, it should be as abstract as possible and as detailed as necessary. Moreover, if the model only includes linear constraints and a linear objective function with continuous or even discrete variables, the resulting optimization model can be tackled with standard Mixed Integer Programming (MIP) solvers which are usually part of Advanced Planning Systems (cf. Stadtler, 2008). To understand the functionality and interaction of such systems, a general overview of the planning capabilities of APS is finally given next.
2.5
Advanced Planning Systems
In contrast to Enterprise Resource Planning (ERP) systems, Advanced Planning Systems provide real planning functionality as postulated in Section 2.1. As Fleischmann et al. (2008, p. 84) state, an APS represents a hierarchical planning system which allows an integral planning of the supply chain. Therefore, APS typically consist of several modules which comprise different planning tasks illustrated by the SCP-Matrix (see Section 2.1 and cf. Meyr et al. (2008, p. 109)). Figure 2.12 gives a general overview. At the long-term level, a Strategic Network Design module possibly helps to decide about the production and distribution network as well as other strategic questions. The Master Planning module allows the coordination of the material flow, rough capacity, and mid-term material planning. With the help of the Production Planning and Scheduling modules, tasks such as lot-sizing, machine scheduling, and sequencing can be carried out. However, as outlined in Section 2.2, the requirements for such modules depend strongly on the type of the supply chain. That is why some APS vendors offer tailored modules for the consumer goods industry, which include some kind of simultaneous planning functionality. Moreover, APS provide “true optimization capabilities” by exact or heuristic methods which are available for the different modules (cf. Fleischmann and Meyr, 2003).
24
Chapter 2. Production planning in the consumer packaged goods industry
procurement
long-term
mid-term
production
distribution
sales
Strategic Network Design
Master Planning Demand Planning
Purchasing & Material Requirements Planning short-term
Production Planning
Distribution Planning
Scheduling
Transport Planning
Demand Fulfillment & ATP
Figure 2.12: Software modules covering the SCP-matrix (Meyr et al., 2008, p. 109). Today, several Advanced Planning Systems17 exist on the market. Since this supply chain software market is extremely competitive, Advanced Planning Systems have matured to provide an extensive level of planning capabilities (cf. Kilger and Wetterauer, 2008). But this also leads to the point, why APS vendors do not disclose their underlying models to secure a competitive advantage. Accordingly, the planner does not exactly know the model and the applied solution method. Hence, it is not clear if an APS exists that actually allows a simultaneous lot-sizing and scheduling of multiple stages at the required level. For this reason, we have to check whether adequate models exist in the literature at all. If this is the case, the question about adequate solution methods which are able to solve these models naturally arises. Therefore, a literature review follows, which answers this question for the appropriate models.
17 APS are based on the data of Enterprise Resource Planning systems. Accordingly, APS cannot replace an ERP system but should be seamlessly integrated.
Chapter 3 Multi-level lot-sizing and scheduling As indicated in Section 2.5, today’s Advanced Planning Systems provide sophisticated planning functionality. However, since APS providers are not willing to disclose the used lot-sizing and scheduling models nor the applied solution methods, the planner can barely know how the results are produced. For this reason, a literature review will be given in this chapter with a focus on multi-level lot-sizing and scheduling models. Furthermore, we restrict the review to mixed-integer linear programming (MIP) models, for which standard solvers and solution methods are available, and which are compliant to the planning concept presented in Section 2.4. Hence, Section 3.1 will briefly outline the resulting assumptions and limitations for the review. Due to synchronization issues, which are caused by the scheduling on the one hand and by the multi-level structure on the other hand, the modeling is of central importance. Therefore, Section 3.2 will present some well-known single-level models to demonstrate different potential approaches. In this context, relevant characteristics are derived and highlighted. Afterwards, an overview over existing multi-level models in the literature will be given in Section 3.3. The final section will draw a conclusion, whether an existing model is suitable to solve the regarded problem and how to proceed in the following.
3.1
General assumptions and limitations
Based on the planning concept shown in Section 2.4, several assumptions can be made to define the scope of this review. At first, a finite planning horizon and a deterministic dynamic demand is assumed. Accordingly, stochastic models with random demand functions (an overview is given by Winands et al. (2011); see also Tempelmeier and Herpers (2011) among others) as well as static models with static demand rates and usually an infinite planning horizon (e.g., Ben-Daya et al. (2008) and Jenabi et al. (2008)) are disregarded. Moreover, further limitations concerning the objective and the time structure are derived next.
F. Seeanner, Multi-Stage Simultaneous Lot-Sizing and Scheduling, Produktion und Logistik, DOI 10.1007/978-3-658-02089-7_3, © Springer Fachmedien Wiesbaden 2013
26
3.1.1
Chapter 3. Multi-level lot-sizing and scheduling
Objective
As denoted in the chapters before, the aim of lot-sizing and scheduling models is to minimize the sum of fixed and variable costs—more particular the sum of setup and holding costs: Holdings costs typically consist of four different elements (cf. Nahmias, 2009, p. 268). The most obvious one is the costs for the physical storage space. But also taxes and insurances have to be added. Furthermore, if an item is kept in stock, effects like breakage, spoilage, deterioration, or obsolescence might occur and should be quantified in terms of costs, too. Finally, we have to consider the capital being tied up by the items in the stock. Hence, opportunity costs of an alternative investment need to be part of the holding costs. This latter element is usually the most important one and is the main reason, why companies usually want to reduce their stock levels. Setup costs normally comprise all costs associated with starting or stopping the production of an item. This includes costs for cleaning material as well as for the wastage which occurs during the start-up of a line. Accordingly, setting up the line from the unprepared/neutral status incurs start-up costs. Similarly, shutting down a line induces shut-down costs. But very often other cost components such as production, standby, and penalty costs have to be included in the objective function as well: Production costs need to be considered, if, for instance, parallel lines are available which can be used alternatively and have different cost rates. Then, these costs help decide, on which line a product should be made. Standby costs can be incurred, e.g., by the conservation of a setup state and by the reservation of the production line for a certain product. Penalty costs represent a further cost component. Generally, these costs should penalize unfulfilled conditions. For instance, the aim of a customer-oriented company is to avoid lost-sales or backorders. However, it might be useful to allow them in a planning model, otherwise the model can become too restrictive and no solution might be found. But then lost-sales/backorders must be penalized to be less attractive for being part of a problem solution.1 Another application of penalty costs is the consideration of nonmonetary goals. For instance, if the level of customer satisfaction is to be optimized, the deviation to a pre-determined goal can be penalized. In general, penalty costs significantly exceed the other cost components. Nevertheless, they have to be chosen carefully to avoid distorting the actual results. 1 In this context it should be mentioned that costs for lost-sales and backorders are hard to quantify, as the loss-of-goodwill by the customer needs to be measured. Nevertheless, Anderson et al. (2006) point out that it is important to consider these opportunity costs for stock-outs. Furthermore, they show a possible approach for calculating these.
3.1. General assumptions and limitations
27
Instead of minimizing costs, it is common in scheduling models to pursue time-based goals, such as the minimization of earliness, tardiness or makespan, since the production quantities were already determined. Correspondingly, these models will be dropped from the following review. The same applies to models which disregard stock levels and the corresponding holding costs. Hence, models for simultaneous batching and scheduling are also dismissed if they neglect these costs.2
3.1.2
Time structure
The state of a production system is steadily changing over time. These state changes result from the external and from the internal dynamics of the system. They may occur continuously or at discrete events (cf. Pressmar, 1980). External dynamics are “perturbations” from outside which cannot be influenced by the decision maker (anymore). They ensue from the strong connection to the system environment and lead to exogenous state changes (cf. Meyr, 1999, pp. 49). For lot-sizing and scheduling, mainly the product demand and the availability of resources (machine capacity, personnel, raw materials)3 are these external dynamics.4 In contrast, internal dynamics come from the decisions by the planner. These endogenous state changes are expressed by the system variables. demand
demand
time
time (a) Continuous demand function.
(b) Discrete demands.
Figure 3.1: Continuous vs. discrete demand (in accordance to Meyr, 1999, p. 50). As mentioned above, state changes may occur at arbitrary points of time. Correspondingly, there are approaches to capture, e.g., demand and production processes (thus also stock levels) as continuous functions over time (see Figure 3.1a). Differential equation models are formulated and solved with the help of the optimal control theory (cf. Chapter 6 by Sethi and Thompson (2005)). 2 That is why in contrast to authors like Kuik et al. (1994), batching is not used synonymously for lot-sizing in this thesis. 3 Note that these external dynamics may be the result of a previous planning step. 4 In rare cases even production speeds may vary due to continuous improvements of the production process.
28
Chapter 3. Multi-level lot-sizing and scheduling
But usually, lot-sizing and scheduling models are based on a discrete time structure (see Figure 3.1b). For discretization, the horizon is divided into T time buckets/periods by defining fixed points wt , t = 1, . . . , T + 1. The time span between two consecutive points wt and wt+1 represents the capacity Ct of such a time bucket. As illustrated in Figure 3.2 these periods can be of equidistant length (identical capacity). planning horizon
w ഥ1
w ഥ2 C1
e.g. day, week, month
time bucket t=2
time bucket t=1
=
time bucket t=T
w ഥT
w ഥ3
=
C2
w ഥ T+1
time
CT
Figure 3.2: Time buckets of identical length. But sometimes they are also of different lengths (days, weeks, or even months). For instance, a telescopic time scale with bigger buckets towards the end of the planning horizon can be used as shown in Figure 3.3. This might be useful because forecasts become imprecise the more one looks ahead. planning horizon e.g. weeks
e.g. months
t=1, 2, 3, 4
t=5
C1= … =C4 <
C5
e.g. quarter
t=6 =
C6
t=7 <
time
C7
Figure 3.3: Different lengths of time buckets. Since such discrete models are solvable as MIPs, the focus lies on this kind of models in the remainder of this thesis. Due to the scheduling part and the synchronization between the production stages, many challenging issues arise. They are illustrated in the following by some well-known single-level lot-sizing and scheduling models which are at the same time the starting point for the majority of multi-level models.
3.2
Single-level models with different time structures
In the literature, lot-sizing models are mainly distinguished between large-time bucket 5 (LTB) and small-time bucket (STB) models. To show the differences between these two types, three basic single-level models will be presented first—one LTB- and two (correlated) STB-models. Moreover, three further single-level models will be introduced, as most of the multi-level models are based on these. 5
Sometimes they are also called big-time buckets (see, for instance, Suerie (2005a)).
3.2. Single-level models with different time structures
29
To begin with LTB-models the Capacitated Lot-sizing Problem (CLSP) is explained next. Even though the CLSP is meant for pure lot-sizing, it helps highlight the general properties of models with large-time buckets.
3.2.1
The Capacitated Lot-sizing Problem (CLSP)
Due to its few basic assumptions, the CLSP is the mostly studied multi-item lot-sizing model (see Dixon and Silver (1981), Maes and van Wassenhove (1988), and Trigeiro et al. (1989) among others). The following notation is used for the CLSP:6
Indices j t
Data aj hj sj djt Ij0 Ct Mjt
Variables Ijt ≥ 0 xjt ≥ 0 zjt ∈ {0, 1}
= 1, . . . , J products = 1, . . . , T periods
capacity consumption (time) needed to produce one unit of product j holding costs per unit of product j for one period setup costs for product j demand for product j in period t (qty) initial inventory of product j at the beginning of the planning horizon (qty) available capacity in period t (time) sufficiently large number for product j and period t
inventory of product j at the end of period t (qty) total quantity of product j produced in period t (qty) setup changeover: zjt = 1 if a setup changeover to product j is executed in period t (0 otherwise)
Objective function min
j,t
6
hj Ijt +
sj zjt
(3.1)
j,t
Note that all superscripts used in this thesis do not represent indices but indicate different variables.
30
Chapter 3. Multi-level lot-sizing and scheduling
subject to Ijt = Ij,t−1 + xjt − djt
∀j, t
xjt ≤ Mjt zjt aj xjt ≤ Ct
∀j, t
(3.3)
∀t
(3.4)
(3.2)
j
The CLSP aims at minimizing the sum of holding and setup costs (3.1). To measure the stock levels over time, inventory balance constraints (3.2) are used. They assure that the inventory of product j at the end of period t equals the inventory of the same product at the end of the preceding period plus the total inflow on stock (production) minus the total outflow from stock (demand) during period t. Furthermore, setup forcing constraints (3.3) ensure that an item j can only be produced (xjt > 0) in period t if it is set up (zjt = 1). Hence, these constraints connect the continuous and the binary variables. Note that for the right-hand side, a sufficiently large value has to be chosen—this value is often called “big M ”—which must not limit the production quantity unnecessarily. Nevertheless, this value should be chosen as small as possible, because this generally leads to a better performance of a standard MIP-solver. Obviously, in the case of the CLSP, a reasonable value for Mjt is Ct . Finally, the limited capacity has to be respected by summing up the processing times of aj all production quantities (3.4). It can be seen that up to J different production lots might be produced in a single period t. For this reason, such a period represents a large-time bucket 7 . Besides, the sequence of the production lots within a period is not determined by the CLSP. Correspondingly, the setup state is lost with the time bucket boundaries8 , since it is not known, which is the last item in period t and the first in period t + 1. Finally, a production lot cannot overlap several periods but is capped by the limited capacity of a period. Even though the CLSP is not able to determine the sequences of the production lots, it represents a basic model whose properties are more or less common for all simultaneous lot-sizing and scheduling models with large-time buckets.
3.2.2
The Discrete Lot-sizing and Scheduling Problem (DLSP)
In contrast to the CLSP, the following model allows for a simultaneous lot-sizing and scheduling. According to its structure, Fleischmann (1990) calls this model the Discrete Lot-sizing and Scheduling Problem as lot-sizes can only be an integer multiple of the production quan7
Sometimes they are also called big-time buckets (cf. Suerie, 2005a). For this reason, a variant of the CLSP with Linked Lot-Sizes has been developed and proposed by Haase (1994, pp. 18) which explicitly determines the products at the boundaries. 8
3.2. Single-level models with different time structures
31
tity of one full period. This is shown next:9,10
Index s
Data yj0
Variables yjs ∈ {0, 1}
= 1, . . . , S periods
equals 1 if product j is set up at the beginning of the planning horizon (0 otherwise)
setup state: yjs = 1 if item j is set up and produced in period s (0 otherwise)
Objective function min
hj Ijs +
j,s
(3.5)
sj zjs
j,s
subject to Ijs = Ij,s−1 +
Cs yjs − djs aj yjs ≤ 1
∀j, s
(3.6)
∀s
(3.7)
∀j, s
(3.8)
j
zjs ≥ yjs − yj,s−1
Again, the objective is to minimize the sum of holding and setup costs (3.5). The inventory balancing constraints (3.6) assure that the demands are met. Here, the “all-or-nothing” assumption comes into play: If the setup state for product j becomes 1 in period s, automatically Cajs units of this item are produced. This is possible because constraints (3.7) enforce a unique setup state for each period. Accordingly, at most one of the products can be set up. Finally, the start of a new production lot is detected by (3.8) to capture the setup costs properly. Since the DLSP enforces a unique setup state per period, it automatically determines the sequence of the lots. But this constraint only makes sense if the bucket lengths are rather 9
In the following, only new or changed notation elements are listed. Note that a different letter is used for the period index to emphasize the difference between LTB- and STB-models. 10
32
Chapter 3. Multi-level lot-sizing and scheduling
short.11 That is why the DLSP is called a Small-Time Bucket (STB) model. By definition, all STB-models allow at most one setup changeover in a single period. Thus, this property allows for conserving the setup state for an arbitrary number of consecutive periods. This is reasonable because otherwise unnecessary high setup costs would result. Correspondingly, the size of a production lot needs not to stick to the length of a time bucket. However, the setup state is lost as soon as no production takes place. The all-or-nothing assumption is very restrictive. That is why it is dropped by other models like the CSLP.
3.2.3
The Continuous Setup Lot-sizing Problem (CSLP)
The Continuous Setup Lot-sizing Problem is very similar to the DLSP (cf. Karmarkar and Schrage (1985) and Salomon (1991) among others). The main difference is that there is now a continuous variable xjs for the production quantity of product j in period s. Accordingly, the binary variable yjs = 1 only indicates whether product j in period s is set up, and not whether it is produced. Variables xjs ≥ 0 yjs ∈ {0, 1}
production quantity of item j in period s setup state: yjs = 1 if product j is set up in period s (0 otherwise)
Objective function min
hj Ijs +
j,s
(3.9)
sj zjs
j,s
subject to Ijs = Ij,s−1 + xjs − djs Cs xjs ≤ yjs aj yjs ≤ 1
∀j, s
(3.10)
∀j, s
(3.11)
∀s
(3.12)
∀j, s
(3.13)
j
zjs ≥ yjs − yj,s−1
The objective (3.9) as well as the constraints (3.12) and (3.13) are identical to the DLSP. The inventory balancing constraints, however, consider the production quantities xjs now. For the CSLP, the setup forcing constraints (3.11) are at the same time the capacity con11 Note that the actual length of a small-time bucket strongly depends on the modeled production system. For instance, de Matta (1994) uses an STB-model, where each “small-time” bucket comprises several days.
3.2. Single-level models with different time structures
33
straints. This is possible because the CSLP allows at most one product to be produced in a single period. Since each period has its unique setup state it is easy to see that a setup state can be “conserved”, even for periods with idle time (xjs = 0 for all j). Therefore, setup costs are only calculated for a new setup. Another very similar STB-model is called the Proportional Lot-sizing and Scheduling Problem. This model is examined next in more detail because several multi-level models use the same time structure.
3.2.4
The Proportional Lot-sizing and Scheduling Problem (PLSP)
Drexl and Haase (1995) introduced the Proportional Lot-sizing and Scheduling Problem (PLSP). In contrast to the CSLP this model allows the production of two different products in one period separated by a single setup. Nevertheless, the PLSP is quite similar to the CSLP: Objective function min
hj Ijs +
j,s
(3.14)
sj zjs
j,s
subject to Ijs = Ij,s−1 + xjs − djs Cs xjs ≤ (yj,s−1 + yjs ) aj aj xjs ≤ Cs
∀j, s
(3.15)
∀s
(3.16)
∀s
(3.17)
yjs ≤ 1
∀s
(3.18)
zjs ≥ yjs − yj,s−1
∀s
(3.19)
j
j
Once more, the objective is to minimize the sum of holding and setup costs (3.14). The inventory balance constraints (3.15) are identical to the ones of the CSLP. Constraints (3.16) are the special feature of the PLSP: Item j can be produced in period s if either it is set up in this period s or in the period before (s − 1). Accordingly, two different production quantities are possible within a single period. Hence, the capacity limitation is not automatically respected by the setup forcing constraints anymore and thus (3.17) have to be included. Finally, constraints (3.18) and (3.19) equal the ones from the CSLP (see (3.12) and (3.13)). It is important to note that an optimal solution of the PLSP is at least as good as the
34
Chapter 3. Multi-level lot-sizing and scheduling
optimal one of the CSLP for the same problem data. Moreover, the PLSP is generally able to find any feasible production plan if the length of a period is sufficiently short.12 However, the period length is generally a critical issue for STB-models like the PLSP. If a setup needs to be executed for the production in period s, the setup time is usually assigned to this period, and thus it has to lie in between the two corresponding fix points ws and ws+1 (cf. Section 3.1.2). In that case, the length of a period must be greater than or equal to the maximum possible setup time. But usually, this leads directly to a loss of modeling details and an inefficient capacity utilization might result. To cope with this limitation, different solution approaches are possible. The easiest one is to “attach” the setup time to the bucket boundaries and divide it into two parts—a setup time fraction at the end of a period and a fraction at the beginning of the following period. However, this approach can only be used for models like the DLSP or the CSLP. In contrast, the PLSP, which separates the two production quantities within a period by the setup, needs additional control (binary) variables. These variables are necessary to forbid production if a setup is “distributed” over several periods.13 More complex formulations are proposed by Kallrath (1999) and Suerie (2006) who use additional time-indexed variables to sum up the assigned setup times. Especially the formulation by Suerie is of high interest, as the approach is very general and can also be applied for sequence-dependent setups (see also Chapter 7).
3.2.5
The Capacitated Lot-sizing problem with Sequence-Dependent setup costs (CLSD)
Even though LTB-models like the CLSP do not determine a schedule of the production lots, a sequencing14 of the lots can be achieved by introducing auxiliary variables and additional constraints. This approach was used by Haase (1996) who published the Capacitated Lotsizing Problem with Sequence-Dependent Setup Costs (CLSD).
Index i
= 1, . . . , J products
12 However, since the lot-sizes result from the optimization it is hard to determine a reasonable period length a priori. 13 Drexl and Haase (1995) also present an extension of the PLSP with period overlapping setup times. However, their approach is quite inflexible for sequence-dependent setup times. 14 Note that we are talking about sequencing because only the “sequence” of the lots is determined. The main difference to scheduling is that the exact point in time, when a production lot is about to start, is not directly known. This will play an important role in the next section about the stage synchronization.
3.2. Single-level models with different time structures Data sij
Variables yjt ∈ {0, 1} zijt ∈ {0, 1} bjt ≥ 0
35
setup costs of a changeover from product i to j
yjt = 1 if product j is set up at the end of period t and at the beginning of t + 1, respectively equals 1 if a changeover from product i to product j takes place in period t auxiliary variable to determine the position of item j in the setup sequence of period t
Objective function min
hj Ijt +
j,t
(3.20)
sij zijt
i,j,t
subject to Ijt = Ij,t−1 + xjt − djt aj xjt ≤ Ct
∀j, t
(3.21)
∀t
(3.22)
∀j, t
(3.23)
yjt = 1
∀t
(3.24)
zjit + yjt
∀j, t
(3.25)
bjt ≥ bit + 1 − J(1 − zijt )
∀i, j, t
(3.26)
xjt ≤
i
Ct aj
j
i
zijt + yj,t−1 j
zijt + yj,t−1 =
i
The objective of the CLSD is to minimize holding costs and sequence-dependent setup costs. The constraints for inventory balancing (3.21) and capacity restriction (3.22) are identical to the ones of the CLSP. Constraints (3.23), however, differ as they enforce either a corresponding changeover or the transfer of the setup state from the previous period for the production of item j in t. (3.24) ensure that the line is set up for exactly one product at the end of a period. Constraints (3.25) are network flow conditions. Starting from a unique setup state at the bucket boundary (or the initial state yj0 for t = 1), each item in a setup sequence of period t has a unique predecessor in the same period. Vice versa, all items have a unique successor item while ending with unique setup state at the next bucket boundary. Constraints (3.26) are so-called subtour elimination constraints (cf. Miller et al., 1960). They originate from the modeling of the Traveling Salesman Problem (TSP) which can be
36
Chapter 3. Multi-level lot-sizing and scheduling
described as follows: A traveling salesman has to visit a fixed number of cities exactly once. The cities are connected to each other and the distances between them may differ. The problem is to find the shortest round trip through all of the cities. The analogy is that each item, which has to be produced, needs to be “visited”. The sequence of period t is determined by the auxiliary variables bjt , because the higher the value, the later product j is set up. For instance, if zijt equals 1, product i has to be set up before j and the condition bjt ≥ bit + 1 must hold. Obviously, the changeover from i to j can take place at most once in a period. This condition is in line with most of the large-time bucket models where only J different production lots are possible in a single period. But this assumption might lead to bad production plans, if the triangle inequality is not fulfilled (cf. Section 2.3.3.2).15
3.2.6
The General Lot-sizing and Scheduling Problem (GLSP)
The General Lot-sizing and Scheduling Problem (GLSP) by Fleischmann and Meyr (1997) is one of the first models which allow small-time buckets with variable length. Therefore, macroperiod 1
macroperiod 2
fixed
fixed
microperiod 1
microperiod 2
variable
variable
time
Figure 3.4: Example for the two-level time structure of the GLSP. a two-level time structure is defined: Again, the planning horizon is divided into T time buckets which are called macroperiods. But now the horizon is additionally divided into S small-time buckets called microperiods (see Figure 3.4). Each microperiod s belongs exactly to one macroperiod t, and thus a mapping set can be defined as St = {ft , . . . , ft+1 − 1} for all t = 1, . . . , T , where ft is the first microperiod of macroperiod t, ft+1 − 1 the last in macroperiod t, and f1 = 1. This structure should help combine the advantages of small-time and large-time bucket models while avoiding their disadvantages at the same time.16 Meyr (1999, pp. 75–86) gives an extended version of the GLSP. As an explanatory model, this variant is able to describe all the models presented above (CLSP, DLSP, CSLP, PLSP 15 Menezes et al. (2011) are supposed to be the first authors who add the feature of non-triangular setups to the CLSP. Similar to the CLSD, they include subtour-elimination constraints to forbid disconnected subtours. But they still stick to the production variables xjt which represent the production quantity of j for the whole time bucket t. Accordingly, the start times of the production lots are unknown and due to the “aggregation” the exact production quantities of items with several setups are not known either. 16 Note that Meyr (1999) calls the GLSP an LTB-model as several different production lots are allowed between two consecutive external state changes. By contrast, authors like Suerie (2005a) describe the GLSP as a hybrid model.
3.2. Single-level models with different time structures
37
and CLSD) as special cases. Moreover, it allows sequence-dependent setups, parallel heterogeneous lines, and a conservation of the setup state as well as its lost (by introducing the fictitious product i, j = 0). The extended GLSP looks as follows:
Indices i, j l s t
= 0, . . . , J products (=0 means neutral) = 1, . . . , L production lines = 1, . . . , S microperiods = 1, . . . , T macroperiods
Index set St
set of microperiods s belonging to macroperiod t
Data hj djt alj mlj ml0 cplj cblj slij stlij Ij0 ylj0 Clt ft
Variables Ijt ≥ 0 xljs ≥ 0 xljs ≥ 0
holding costs of product j per unit and per macroperiod demand for product j in macroperiod t (qty) capacity consumption (time) needed to produce one unit of product j on line l minimum lot-size of product j (qty) if produced on line l minimum time line l has to remain shut down production costs of product j (per item) on line l standby costs for conserving setup state j on line l setup costs of a changeover from product i to product j on line l setup time of a changeover from product i to product j on production line l initial inventory of product j at the beginning of the planning horizon (qty) equals 1 if line l is set up for product j at the beginning of the planning horizon (0 otherwise) available capacity on line l in macroperiod t (time) first microperiod in macroperiod t
inventory of product j at the end of macroperiod t (qty) quantity of product j produced in microperiod s on line l (qty) standby time (conservation of setup state j on line l without production) in microperiod s
38
Chapter 3. Multi-level lot-sizing and scheduling
yljs ∈ {0, 1} zlijs ≥ 0
setup state: yljs = 1 if product j is set up in microperiod s on line l (0 otherwise) equals 1 if a changeover from product i to j takes place at the beginning of microperiod s on line l (0 otherwise)
Objective function min
hj Ijt +
j,t
slij zlijs +
l,i,j,s
cplj xljs +
l,j,s
cblj xljs
(3.27)
l,j,s
subject to
Ijt = Ij,t−1 + j,s ∈ St
xljs − djt
∀j > 0, t
(3.28)
stlij zlijs = Clt
∀l, t
(3.29)
Clt yljs alj
∀l.j, s
(3.30)
xljs ≥ mlj (yljs − ylj,s−1 ) yljs = 1
∀l, j, s
(3.31)
∀l, s
(3.32)
∀l, i, j, s
(3.33)
(alj xljs + xljs ) +
l,s ∈ St
i,j,s ∈ St
alj xljs + xljs ≤
j
zlijs ≥ yli,s−1 + yljs − 1
Similar to the preceding models, the GLSP aims at minimizing the sum of holding and setup costs (3.27). However, since parallel lines are included, it is necessary to consider production costs. Moreover, the model captures standby/idle times which also might impose costs. Constraints (3.28) assure that the demands are met, where the production quantities of all microperiods belonging to the regarded macroperiod represent the inflow. The size of the microperiods and thus the corresponding production quantities are limited by the capacity of the macroperiod (3.29). Constraints (3.30) force a corresponding setup for production (or standby) in each microperiod. Furthermore, minimum lot-sizes are introduced (3.31). They help to avoid setup changeovers without product changes. This is necessary, as the triangle inequality needs not to be fulfilled by the setup costs (siv + svj < sij ) and the “optimization” makes use of this property: The changeover from i to j would always go via product v— because it is cheaper—even though no item of product v is actually made. For this and further technical reasons, minimum lot-sizes might become necessary. The GLSP formulation has several advantages: First of all, it shows an easy way of modeling simultaneous lot-sizing and scheduling problems. In addition, the variable period lengths allow for long setup times (compared to the PLSP). Furthermore, if the triangle inequality is not fulfilled (see page 18), it might be the case that a product is setup several
3.3. Multi-level models in the literature
39
times in a period. This cannot be modeled via TSP constraints without further ado. The main disadvantage of the GLSP is that the optimal solution of the corresponding LP (the integer condition is dropped/relaxed) often shows high gaps to the optimal incumbent solution. That is why a standard MIP-solver often has difficulties with the GLSP. Furthermore, if the number of microperiods is too large, the GLSP might have many symmetric optimal solutions (microperiods with zero length). Therefore, additional constraints are needed which force these periods to be at the end of a macroperiod (cf. Fleischmann and Meyr, 1997). That is why a good choice of the number of microperiods is crucial for solving the model (see also Section 4.3.2).
3.3
Multi-level models in the literature
The PLSP, the CLSD as well as the GLSP are all starting ground for several multi-level lotsizing and scheduling models which are described in this section. But first, the multi-level variant of the CLSP is introduced. Even though this model shows no scheduling capability (just like the single-level CLSP), it helps demonstrate how a feasible material flow between the levels can be achieved.
3.3.1
Synchronization between the levels
Similar to the single-level variant, the Multi-Level Capacitated Lot-sizing Problem (MLCLSP) is probably the most prominent multi-level lot-sizing model (cf. Maes et al. (1991) and Stadtler (1996) among others). Therefore, the synchronization of the quantity flows between the levels is explained with its help. The Multi-Level Capacitated Lot-sizing Problem (MLCLSP) In the following, we consider (physical) items i, j = 1, . . . , J where i, j = 1, . . . , J0 represent finished products and i, j = J0 + 1, . . . , J the corresponding pre-products.17 For each product j, the index set Nj contains all direct successor products of j. Accordingly, this set is empty for all finished products. The corresponding gozinto factor pji describes the quantity of item j which is necessary for producing one unit of i. Furthermore, demand is differentiated between external (primary) demand18 and internal (secondary) demand. The internal one arises from the production of a successor product. Since the MLCLSP is meant for job shop planning, the products are processed on L different machines (not production lines). Moreover, each item can only be produced on 17 The items are sorted according to their low level code in the bill-of-materials. For a better understanding of the low level coding see also Section 2.3.3.4 on page 20. 18 Sometimes it is also called independent demand (cf. Pochet and Wolsey, 2006, p. 47).
40
Chapter 3. Multi-level lot-sizing and scheduling
exactly one machine. In sum, the new notation is as follows:
Indices t l
= 1, . . . , T periods = 1, . . . , L machines
Index set Nj
set of all direct successor items of product j
Data hj sj stlj mj djt Ij0 pij Δ Clt
Variables Ijt ≥ 0 xjt ≥ 0 zjt ∈ {0, 1}
holding costs of product j per unit and per period costs for setting up product j setup time for product j on machine l minimum lot-size of product j (qty) primary demand for product j in period t (qty) initial inventory of product j at the beginning of the planning horizon (qty) amount of item i that is needed to produce one unit of item j (gozintofactor) minimum lead-time offset available capacity on machine l in period t (time)
inventory of product j at the end of period t (qty) quantity of product j produced in period t (qty) setup state: zjt = 1 if product j is set up in period t (0 otherwise)
Objective function min
hj Ijt +
j,t
(3.34)
sj zjt
j,t
subject to Ijt = Ij,t−1 + xjt − djt − j
pji xi,t+Δ
∀j, t
(3.35)
(alj xjt + stlj zjt ) ≤ Clt
∀l, t
(3.36)
i ∈ Nj
3.3. Multi-level models in the literature
41 xjt ≤ M · zjt
∀j, t
(3.37)
The multi-level CLSP also aims at minimizing setup and holding costs (3.34). To synchronize the different levels, the “secondary” demand, which is induced by the production of a direct successor item, is integrated to the inventory balance constraints (3.35). Correspondingly, the stock level of product j at the end of period t equals the stock level in period t − 1 plus the production quantity of period t minus the primary and the secondary demand in that period t. The secondary demand is induced by the production of successor i in period t + Δ (must be ≤ T ). To determine all secondary demands, the index set Nj is needed which contains all direct successor products of j. Furthermore, Δ describes the lead-time offset, before a product is available for the next stage. Finally, the available capacities must be respected (3.36) as well as the corresponding setups for production have to be forced (3.37). Since the MLCLSP is used to solve job shop production problems, lot-sizing is executed separately from scheduling on a more aggregate level. Moreover, in a job shop manufacturing environment, setup times are rather short and lot-sizes usually very small. Accordingly, authors like Stadtler or Maes and van Wassenhove assume that the periods are sufficiently long to abandon lead-times (Δ = 0). However, as soon as a more detailed view becomes necessary and thus the sequence of the production lots becomes important, the feasibility of the quantity flows between the production stages has to be ensured. The easiest way to handle this synchronization issue is to use the starting/ending times of the time buckets, because it is known that the production quantity of item j in period t is available by wt+1 (cf. Figure 3.2). Accordingly, the quantity can be used on the next level in period t + 1 (Δ = 1).19 For the modeling of a flow line production system (as considered in this thesis), leadtimes of one large-time bucket are unrealistically high. But even lead-times of one small-time bucket might not be sufficiently short. Accordingly, a zero lead-time (Δ = 0)—this means that production quantities are transfered to the next stage within the same period—is to be aspired. In the following, multi-level models existing in the literature are presented and examined. According to their time structure, the models are subdivided into PLSP-, CLSD-, and GLSPbased models as well as other models.
3.3.2
PLSP-based models
Several multi-level models in the literature are based on the PLSP. One variant presented by Haase (1994) regards a multi-level product structure and a single bottleneck machine. This model synchronizes the production stages via the inventory balancing constraints which 19 This approach, for instance, is chosen by Tempelmeier and Derstroff (1996) who consider the operations on the resources in detail.
42
Chapter 3. Multi-level lot-sizing and scheduling
account for primary and induced secondary demands as well as product-specific lead-times of at least one period. All other constraints are equivalent to those of the single-level PLSP. This means that setup states and the corresponding costs are only considered for products on that bottleneck machine. Similar to the PLSP, setup times are disregarded and setup costs are sequence-independent. A very similar approach is introduced by Kimms (1996) who also focus on a single bottleneck machine. Moreover, the quantity flows between the stages are synchronized with the help of the inventory balancing constraint as well, but without considering any lead-times. Instead, Kimms introduces additional constraints to ensure that pre-items are available on time. This modification is supposed to lead to a better computation of holding costs and a reduction of end horizon effects.20 The same approach is used by Kimms (1997) for the multi-level PLSP with Parallel Machines. Since this model allows parallel heterogeneous machines, it will be presented in a more detail next. Another PLSP variant is introduced by Stadtler (2011) who includes setup times and allows zero lead-times while regarding a single production line. This model will be shown in the following as well. 3.3.2.1
Proportional Lot-sizing and Scheduling Problem with Parallel Machines (PLSP-PM)
The Proportional Lot-sizing and Scheduling Problem with Parallel Machines (PLSP-PM) by Kimms (1997) allows for considering a multi-level product structure, but only a single production stage with parallel heterogeneous machines. Moreover, each item is produced on an item-specific machine without a fixed machine assignment. Accordingly, a new index set Lj is needed which contains all machines, where product j can be produced on. This set is complemented by a second new index set Jl consisting of all products which can be produced on machine l. This leads to the following formulation: Index s τ
= 0, . . . , S periods = 1, . . . , S periods
Index sets Jl Lj
set of all products that are producible on line l set of production lines where item j can be produced on
20 For instance, final inventories are usually optimized to zero, as they are not needed for satisfying demand. However, this effect might have an impact on the entire solution.
3.3. Multi-level models in the literature Data Δj
43
integer lead-time of product j (at least 1 period)
Variables xljs ≥ 0 yljs ∈ {0, 1} zljs ∈ {0, 1}
quantity of product j produced in period s on machine l (qty) setup state: yljs = 1 if product j is set up in period s on machine l (0 otherwise) equals 1 if there is a changeover for item j in period s on machine l (0 otherwise)
Objective function min
hj Ijs +
j,s
l
j ∈ Jl
(3.38)
slj zljs
s
subject to Ijs = Ij,s−1 +
xljs −
l ∈ Lj
Ijs ≥
pji xlis − djs
∀j, s > 0
(3.39)
pji xliτ
∀j, s < S
(3.40)
alj xljs ≤ Cls
∀l, s > 0
(3.41)
Cls (ylj,s−1 + yljs ) alj yljs ≤ 1
∀l, j ∈ Jl , s > 0
(3.42)
∀l, s > 0
(3.43)
∀l, j ∈ Jl , s > 0
(3.44)
i ∈ Nj l ∈ L i
min{s+Δ j , S} i ∈ Nj l ∈ L i
τ =s+1
j ∈ Jl
xljs ≤
j ∈ Jl
zljs ≥ yljs − ylj,s−1
Once more the elements of the objective function are holding and setup costs (3.38). Although the inventory balance constraints (3.39) do not include any lead-time offset, constraints (3.40) ensure that a sufficient number of pre-items is in stock on time with respect to the item-specific lead-time. With the help of (3.41) the limited production capacities are taken into account. Constraints (3.42)–(3.44) equal the ones of the single-level PLSP (cf. page 33), except for the fact that parallel heterogeneous lines have to be considered. 3.3.2.2
The multi-level single machine PLSP (PLSP-ML-SM)
Driven by a real-world problem of the pharmaceutical industry, Stadtler (2011) presents a variant of the PLSP with a single production line. This line is “able” to process all items
44
Chapter 3. Multi-level lot-sizing and scheduling
of a multi-level product structure. Since a production lead-time of one small-time bucket is unacceptably large in this practical case, Stadtler implements zero lead-times. Before the corresponding model formulation is given, the difficulties with zero lead-times arising for the PLSP will be outlined first. Moreover, Stadtler uses “net demands” which will also be explained beforehand.
Zero lead-times In order to demonstrate the difficulties of zero lead-times for the PLSP, the example for shifting bottlenecks introduced in Section 2.3.3.2 is used again. Suppose that only the inventory balance constraints are extended for the multi-level structure. A possible solution is given in Figure 3.5 and Table 3.1. Although the production of item Y starts as early as possible and the packaging to B ends as late as possible, the material flow is obviously not feasible as X is packaged before it was produced. Even though this example makes use of different lines, a similar result occurs for the real-world case considered by Stadtler. Here, a successor item could be produced while its predecessor is actually not available yet.
period s packaging stage making stage
A
stage
B
P
Y
X M
item
yj,s−1
yjs
xjs
j=A j=B j=X j=Y
1 0 0 1
0 1 1 0
13 8 13 8
time
Figure 3.5: PLSP with zero lead-times.
Table 3.1: PLSP solution values.
Stadtler solves the real-world problem by introducing two additional groups of variables to differentiate between the production quantities xαjs of product j at the beginning and the quantities xωjs at the end of period s. Applied to the example of Figure 3.5 and Table 3.1, it means that the quantity of j = Y is represented by xαjs and of j = X by xωjs . Demand netting As mentioned before, the big M value should be chosen carefully, because it has a significant impact on the computational performance of a MIP-solver (see also Chapter 5). A quite intuitive approach is to use the maximum quantity of producible units (capacity divided by the processing time of one item) as shown in some models before. However, this value could be even “tighter” if the actual demand is considered as well. Obviously, it makes no sense to produce more than demanded in total. Accordingly, it is useful to execute a net demand calculation for the products as illustrated in Algorithm 1. It is assumed that all products are sorted by their low level code (cf. Section 2.3.3.4), thus products j = 1, . . . , J0 are final items. Because of the level coding, the condition max{i | i ∈ Nj } < j holds for all pre-products j. Hence, the demand can be
3.3. Multi-level models in the literature
45
determined for each product in an ascending order by summing up the primary and the secondary demands. Algorithm 1: GetNetDemands input: Primary demands djs , gozinto factors pji , successor sets Nj and initial inventories Ij0 output: Net demands dnjs 1 for j ← 1 to J do 2 aQty ← Ij0 ; 3 for s ← 1 to S do 4 dnjs ← max{0, djs + i ∈ Nj pji dnis − aQty}; 5 aQty ← max{0, aQty − djs − i ∈ Nj pji dnis }; 6 end 7 end Starting with period 1, the available quantity corresponds to the initial stock level. Then, for each period, the net demand is computed as the sum of primary and secondary demand minus the available quantity, where this quantity must be reduced by the consumed share afterwards.21 Model formulation Based on the idea outlined above and the computed net demands, the following model helps to solve the real-world problem: Data dnjs
net demand of product j in period s
Variables xαjs xωjs
production quantity of product j at the beginning of period s production quantity of product j at the end of period s
Objective function min
hj Ijs +
j,s
(3.45)
sj zjs
j,s
subject to Ijs = Ij,s−1 + xjs −
pji xis − djs
∀j, s
(3.46)
i ∈ Nj 21 Note that the max function is needed to avoid negative values for the net demand and the available quantity.
46
Chapter 3. Multi-level lot-sizing and scheduling
j
xjs = xαjs + xωjs aj xjs + stj zjs ≤ Cs
∀j, s
(3.47)
∀s
(3.48)
∀j, s
(3.49)
∀j, s
(3.50)
∀j ≥ J0 + 1, s
(3.51)
pji xωis
∀j ≥ J0 + 1, s
(3.52)
zjs ≥ yjs − yj,s−1 yjs ≤ 1
∀j, s
(3.53)
∀s
(3.54)
∀j, s
(3.55)
j
S Cs n · yj,s−1 ≤ min , d aj τ =s jτ S Cs n ω · zjs , d xjs ≤ min aj τ =s jτ Ij,s−1 ≥ pji xαis
xαjs
i ∈ Nj
Ijs + xαjs ≥
i ∈ Nj
j
zjs ≤ yjs
The objective (3.45) is the same again as for the other PLSP models. The inventory balance constraints (3.46) show zero lead-times now. According to the introductory remarks, the total production quantity xjt of item j in period t consists of the two fractions xαjs and xωjs . As setup times are included in the model, they also consume capacity and have to be considered in constraints (3.48).22 With the help of the setup forcing constraints (3.49) and (3.50), the production quantities are properly connected to the corresponding setup state. At this place, Stadtler makes use of the calculated net demands. Constraints (3.51) assure that for a production lot at the beginning of period t the needed pre-products are already in stock at the end of period t − 1. Analogously, constraints (3.52) guarantee that the available quantity of product j in period t (inventory plus produced items in that period) is sufficient for the production of a successor item at the end of period t. The constraints for the setup state (3.53), (3.54), and (3.55) are the same as for the single-level PLSP. The current model allows solve the case for a single production line. But to generalize this approach for an arbitrary number of production lines, further additional variables and constraints would be necessary because the start and end times of the production lots are not known yet by the model. Stadtler and Sahling (2013) present such a formulation with zero lead-times for multiple stages and lines. This model, which is called Multi-Stage PLSP without a fixed lead-time offset (MS-PLSP-LT0), comprises about 40 groups of constraints. Setups are still sequence-independent. 22 Here, it becomes apparent again that the period length has to exceed the maximum setup time. Therefore, in a second step, Stadtler extends his formulation for period overlapping setup times by using the formulation presented by Suerie (2005b).
3.3. Multi-level models in the literature
3.3.3
47
CLSD-based models
In the literature, there are also multi-level variants of the CLSD. Within the scope of their theses, Grünert (1998) as well as Sahling (2010) propose such models for multiple production stages. Both models are presented next. 3.3.3.1
The Multi-level Sequence-dependent Lot-sizing and Scheduling problem (MSLS)
Grünert (1998, pp. 47–53) developed the Multi-level Sequence-dependent Lot-sizing and Scheduling problem (MSLS) which should be generally applicable for different industries— especially for the process industry. Grünert differentiates between two different kinds of lead-time: Δjj comprises the lead-time, which is directly caused by the production process (e.g., by drying), whereas Δij describes the complete lead-time offset, until product i can be processed to product j (e.g., including transportation time). Moreover, he assumes that the corresponding planning is executed in a rolling manner and that each product has a specific planning/forecast horizon. That is why each product (group) j has its own planning horizon which starts in a period ψj and ends in period ψj + T . The index set Ψj defined as {ψj , . . . , ψj + T } contains all these planning periods. Each product can only be processed on a single machine (|Lj | = 1 for all j). In contrast, a machine l can produce several different items (|Jl | ≥ 1), thus the corresponding index set of planning periods equals Πl := j ∈ Jl Ψj . The MSLS can be formulated as follows:23 Index u
= 1, . . . , T periods
Index sets Πl Ψj
set of periods for which line l is to be planned set of periods for which product j is to be planned
Data yj0 Δjj Δij πl
equals 1 if product j is set up at the beginning of the planning horizon (0 otherwise) process lead-time of item j process lead-time of item i plus transportation lead-time needed to be available for item j the first planning period of line l (= min{t | t ∈ Πl })
23 Note that the original MSLS is slightly adapted to get a consistent formulation with nonredundant constraints.
48
Chapter 3. Multi-level lot-sizing and scheduling the first planning period of product j production costs of item j in period t costs for overtime of line l in period t maximum overtime possible for line l in period t production quantity of item j in period t determined in the previous model run final stocks of item j determined in the previous model run available capacity on line l in period t (time)
ψj cpjt colt omax lt x0jt Ij0 Clt
Variables yjt ∈ {0, 1} zijt ∈ {0, 1} olt bjt ≥ 0
yjt = 1 if product j is set up at the end of period t and at the beginning of t + 1, respectively equals 1 if a changeover from product i (yi,t−1 = 1) to product j (yjt = 1) takes place used overtime for line l in period t auxiliary variable to determine the position of item j in the setup sequence of period t
Objective function min
hjt Ijt +
j,t
j
s0j yj,πl −1 +
l ∈ Lj
l
slij zijt
i ∈ Jl j ∈ J l t ∈ Π l
+
j
t ∈ Ψj
cpjt xjt +
l
colt olt (3.56)
t ∈ Πl
subject to Ij,t+Δjj = Ij,t+Δjj −1 + xjt −dj,t+Δjj − j ∈ Jl t ∈ Ψj
ψi −Δij +T
pij xiu
∀j, t ∈ Ψj
(3.57)
≤ Clt + olt
∀l, t ∈ Πl
(3.58)
olt ≤ omax lt
∀l, t ∈ Πl
(3.59)
∀l, j ∈ Jl , t ∈ Ψj
(3.60)
∀l, j ∈ Jl , t ∈ Ψj
(3.61)
i ∈ Nj u=ψi −Δij
aj xjt +
stij zijt
i ∈ Jl : i=j
xjt ≤ Mjt
i ∈ Jl :i=j
yj,t−1 +
i ∈ Jl
zijt =
zijt + yj,t−1 i ∈ Jl
zjit + yjt
3.3. Multi-level models in the literature
49
yjt = 1
∀l, t ∈ {πl − 1} ∪ Πl
(3.62)
bjt ≥ bit + 1 − |Jl | · (1 − zijt )
∀l, i ∈ Jl , j ∈ Jl , t ∈ Πl
(3.63)
j ∈ Jl
Ij0
∀j
(3.64)
xjt = x0jt
∀l, j ∈ Jl , t ∈ Πl \Ψj
(3.65)
Ij,ψj +Δjj −1 =
In contrast to the previous multi-level models, not only considers the MSLS setup and holding costs but also includes production costs. These costs are relevant, because they are time-specific and influence the decision about when to produce. Furthermore, overtime costs have to be considered as well. Constraints (3.57) ensure the inventory balance while considering the lead-times of the products. Capacity constraints (3.58) must be satisfied where capacity can be extended by overtime. Since overtime is not unlimitedly available, it is capped by (3.59). Constraints (3.60)–(3.63) are more or less equal to (3.23)–(3.26) of the single level model with the small difference of regarding several machines here. For all planning periods of a machine, where product j was already planned in a previous model run, the corresponding old solution values have to be set as starting inventories (3.64) and as production quantities (3.65). The latter is necessary because these quantities might be used as pre-products for items, whose planning horizon starts earlier. In sum, the MSLS considers sequence-dependent setup times and costs. Moreover, it includes product-specific lead-times of at least one period which automatically guarantee a feasible material flow between the stages. 3.3.3.2
The Multi-Level Capacitated Lotsizing Problem with Sequence-Dependent Setup Costs using Parallel Machines at Multiple Locations (MLCLSDPM-ML)
Sahling (2010) solves a real-world problem of a company from the consumer goods industry. This company produces different packaged goods in a two-staged process with parallel production and packaging lines at several locations. However, Sahling generalizes this practical case. The resulting Multi-Level Capacitated Lotsizing Problem with Sequence-Dependent Setup Costs using Parallel Machines at Multiple Locations (MLCLSD-PM-ML) allows multiple production stages with parallel heterogeneous lines. Moreover, not only considers the model the production quantities at the different locations but also the transportation flows between the locations. Since rather small production quantities are planned, Sahling uses integer variables for the lot-sizes to avoid a loss of planning accuracy potentially caused by rounding errors. Indices p, q
= 1, . . . , P locations
50
Chapter 3. Multi-level lot-sizing and scheduling
Index set Lpj
set of lines at location p where product j can be produced on
Data hjp slij stlij crpq Δpj Δrjp
holding costs per period for one unit of product j at location p setup costs of a changeover from product i to product j on line l setup time of a changeover from product i to product j on line l fixed transportation costs for one delivery from location p to q production lead-time of item j (at least 1 period) lead-time for the transportation of product j to location p (at least 1 period) volume of item j capacity of one vehicle at location p (qty) storage capacity at location p (qty) sufficiently big number
gj Cpr Ipmax Mjt
Variables δjpt ∈ Z+ 0
auxiliary variables for the demand for product j which is met at location p in period t number of transports between locations p and q in period t production quantity of item j on line l in period t equals 1 if a changeover from item i to j on line l is executed in period t transportation quantity of item j transferred from location p to q in period t
npqt ∈ Z+ 0 xljt ∈ Z+ 0 zlijt ∈ {0, 1} xrjpqt ∈ Z+ 0
Objective function min
l
j ∈ Jl
cplj xljt +
t
hjp Ijpt +
j,p,t
l
i,j ∈ Jl
slij zlijt +
t
l,t
colt olt +
crpq npqt (3.66)
p,q,t
subject to Ijpt = Ijp,t−1 +
l ∈ Lpj
−
xlj,t−Δpj +
i ∈ Nj l ∈ Lpi
q : q=p
xrjqp,t−Δrjp
ali xlit −
xrjpqt − δjpt
∀j, p, t
(3.67)
∀j, t
(3.68)
q : q=p
p
δjpt = djt
3.3. Multi-level models in the literature
51 ≤ Clt + olt
∀l, t
(3.69)
gj xrjpqt ≤ Cpr npqt
∀p, q, t
(3.70)
∀l, j ∈ Jl , t
(3.71)
yljt = 1
∀l, t
(3.72)
zljit + ylj,t+1
∀l, j ∈ Jl , t
(3.73)
bljt ≥ blit + 1 − |Jl | · (1 − zlijt ) gj Ijpt ≤ Ipmax
∀l, i ∈ Jl , j ∈ Jl , i = j, t
(3.74)
∀p, t
(3.75)
alj xljt +
j ∈ Jl
i ∈ Jl
stlij zlijt j
xljt ≤ Mjt ·
zlijt + yljt
i ∈ Jl
yljt +
zlijt =
i ∈ Jl
j ∈ Jl
i ∈ Jl
j
The objective (3.66) is to minimize production, holding, and setup costs as well as costs for overtime and transportation. For each product j at each location p, the inventory balance has to be maintained (3.67). Therefore, the quantity inflow by the production at the current location as well as by the transportation from the other locations have to be considered. Moreover, product demand can be met by any location and the corresponding outflow has to be captured as well. Accordingly, constraints (3.68) ensure that the external demand is fulfilled centrally from the locations altogether. Constraints (3.69) forbid that production and setup times exceed the limited capacity of a production line which is possibly extended by overtime. Furthermore, the transportation capacity has to be respected as well (3.70). Constraints (3.71)–(3.74) are defined analogously to the single level CLSD and the MSLS, respectively. Finally, the limited storage capacities at each location are considered by (3.75). Both CLSD-based models in this section use lead-times of at least one period. If a zero lead-time is implemented with the inventory balance, the arising problem is similar to the one of the PLSP. Then, additional variables are needed which reflect the positions in the sequence and the starting times of the production lots. The resulting formulation may show strong similarities to the GLSP. Correspondingly, it is not surprising that several multi-level models are also based on the GLSP.
3.3.4
GLSP-based models
The first multi-level GLSP is proposed by Meyr (2004) who forces the start times of the microperiods to be identical for all production lines and stages.24 The resulting General 24 Another approach to synchronize the microperiods is used by Almeder and Almada-Lobo (2011) who consider scarce setup resources but only a single stage production. That is why this model is excluded from this review.
52
Chapter 3. Multi-level lot-sizing and scheduling
Lot-sizing and Scheduling Problem for Multiple production Stages (GLSPMS) is tailored to flow line production systems and allows an exact synchronization of the stages. For these reasons, this model will be examined in detail in the following. Another GLSP-based multi-level model is presented by Fandel and Stammen–Hegener (2006) who try to calculate inventory holding costs more accurately. This attempt leads to a non-linear model formulation, and thus is not in the scope of this review. Marinelli et al. (2007) regard the two-stage process of producing and packaging yoghurt. In the first stage, tanks are filled with different mixtures of yoghurt. Due to the cleaning of the tanks and the pipes, high setup times occur for changing the yoghurt. In the second stage, the yoghurt is packaged on several lines in parallel. But since the model neglects holding costs, it is not considered any further. In the Brazilian soft-drink industry, the production system is similar to the one above of the yoghurt production. In the first stage, soft drinks with different flavors are prepared and stored in several tanks. These tanks feed different production lines which fill the various bottles. On both levels, setup times and costs are sequence-dependent (see also Section 2.3.3.2 on page 17). To solve this problem, Toledo et al. (2007) propose a model formulation called Synchronized and Integrated Two-Level Lot-sizing and Scheduling Problem (SITLSP) which is a combination of the CSLP and the GLSP. The planning horizon is divided into macroperiods. For the first stage, each macroperiod is again divided into microperiods of a fixed size according to the CSLP. For the next level, microperiods of variable size as for the GLSP are defined. Due to the different time structures, both stages have to be explicitly synchronized which results in more than 30 groups of constraints. In contrast, Ferreira et al. (2009) regard the same problem but they present a reduced model formulation of the SITLSP called the two-stage multi-machine lot-scheduling model—P2SMM. Due to its practical relevance, the P2SMM will be also explained at length. Araujo et al. (2008) extend the GLSP for a second production stage to solve the production planning problems of small foundries. These foundries transform metal into alloys in the first stage. In the second stage, the final items are molded from the liquid alloy which must be directly processed and cannot be held in stock. Since the furnace shows a limited capacity and a new setup leads to an additional loss of capacity, sequence-dependent setups are regarded. Furthermore, the model includes back-logging. Lang (2009) presents an extension of GLSPMS. This extension is based on a “StateTask-Network” approach which allows the modeling of flexible production sequences and flexible BOMs. Lang calls it the The General Lot-sizing and Scheduling Problem for Multiple production Stages with Flexible Production Sequences (GLSPMS-FPS). Finally, Transchel et al. (2011) propose a GLSP-based model to solve a mid-term production planning problem with two production stages in the process industry.
3.3. Multi-level models in the literature 3.3.4.1
53
The General Lot-sizing and Scheduling Problem for Multiple production Stages (GLSPMS)
Meyr (2004) introduces the General Lot-sizing and Scheduling Problem for Multiple production Stages (GLSPMS). The model uses a common time structure for all production lines at all productions stages which allows short lead-times despite of realistically long setup times. This structure is explained next followed by the model formulation. Common time structure The idea of the common time structure is that each period s starts at the same point in time ws for all production lines and production stages. Only the starting times of a few a priori selected microperiods are fixed. The time span between two consecutive fixed microperiods can now be interpreted as (the length of) a macroperiod. That fixing allows us to model capacity,25 demand, and holding costs based on macroperiods. The remaining non-fixed microperiods are called “free” periods because their starting times can be determined as decision variables of the model. As a consequence, the time span between two consecutive microperiods is of variable length. Each microperiod can represent setup, production, and standby activities, i.e. the length of a microperiod can contain shares of setup time, production time, and idle time. In order to achieve a higher capacity utilization with a smaller number of microperiods, Meyr uses “setup splitting” to allow period-overlapping setup times and “quantity splitting” to realize zero lead-times. Setup splitting means that setup time can overlap two consecutive periods where one part might be assigned to the beginning of the current period and the remaining part to the end of the directly preceding period. Quantity splitting allows a share of a production quantity to be input for another product in the same microperiod (zero lead-time), whereas the remaining part can be used by a successor product in the following microperiod at the earliest. Correspondingly, as shown in Figure 3.6, each microperiod may consist of five different time spans: a setup time fraction at the beginning of the microperiod, production being available in the same microperiod, idle time, production being available in the subsequent microperiod, and a setup time fraction at the end of the microperiod. Figure 3.7 shows a setup
production
idle production
setup
Figure 3.6: Possible structure of a microperiod. possible solution of this approach where the entire time structure can be illustrated. For instance, in Figure 3.7 the starting times w1 and w5 of microperiods s = 1 and s = 5 are fixed. Accordingly, the length and thus capacity C1 of the first macroperiod equals the difference 25
Here, capacity means available working time.
54
Chapter 3. Multi-level lot-sizing and scheduling
w5 − w1 . The starting times w2 , w3 , and w4 are a result of the optimization process. Thus, the lengths of all four microperiods belonging to the macroperiod can be chosen (almost) freely. However, their sum has to equal the length of the macroperiod. On line l = 2 the setup time of the first changeover is split so that a fraction belongs to microperiod s = 1 and the rest to s = 2. Moreover, on the same line in microperiod s = 3 the production quantity of item 5 is split. The first part is directly moved to the next stage, whereas the second part is available in the subsequent microperiod at the earliest (causing work-in-process (WIP) stock). In order to further clarify the impact of setup and quantity splitting, Figure 3.8 w1
w2
w3
j=1
l=1 l=2
j=4
w5 j=3
j=5
j=5
free
fixed variable
free variable
time
s=5
s=4
free variable
j=6
s=3
s=2
s=1 starting time:
w4
j=2
fixed variable
length of period: fixed
Figure 3.7: Example for the common time structure. shows the enhancements outlined above. If splitting was not allowed, the result might look like Figure 3.8a, where the complete changeover has to be executed within microperiod s and the production of the required pre-product i must finish on time. However, Figures 3.8b–d demonstrate the improvements. In Figure 3.8b setup splitting is allowed, thus, part of the changeover can be postponed to microperiod s + 1 and idle time can be reduced. Quantity splitting makes it possible to keep on producing item i, even if it is not needed in the same microperiod in the next stage (Figure 3.8c). Unnecessary idle times could then be avoided. Simultaneous setup and quantity splitting further condense the schedule leading to an even higher utilization and a more realistic model of the real world problem (Figure 3.8d). period s-1
period s j
period period s-1 s
period period s-1 s
period period s-1 s
j
j
j
setup
i
(a) No splitting.
setup
i
(b) Setup splitting.
i
setup i
(c) Quantity splitting.
i
setup i
(d) Quantity setup splitting.
and
Figure 3.8: Tighter plans with setup and quantity splitting (in accordance with Meyr, 2004). Note that this common time structure allows that zero lead-times can be achieved on a microperiod base by the inventory balance. Hence the significant “macroperiod lead-times” of
3.3. Multi-level models in the literature
55
multi-stage LTB models can be eliminated. Besides, setup times can reach twice the length of a macroperiod because of the setup time splitting.26 In addition, this time structure makes it possible to model working time calendars or non-operation periods for maintenance purposes as well. Model formulation The products have to be scheduled on production lines l = 1, . . . , L over a finite planning horizon. Note that the assignment of production lines to production stages will only indirectly be captured by the gozinto factors pji , denoting the quantity of predecessor item j necessary to produce one unit of successor item i, and the production coefficients alj , denoting the production time needed to produce one unit of item j on line l (alj = 0 if j cannot be produced on l). Setup costs and times for changing from a product i to another product j on line l are expressed by slij and stlij , respectively. By introducing a fictitious product 0, Meyr is able to model a “neutral” setup state, i.e. shutting down a line for costs sli0 , remaining idle, and starting up a line for cost sl0j again. In this case the setup state gets lost during the idle periods (without production). Note that a conservation of the last setup state during idle periods, as it was assumed in Figures 3.6 and 3.7, can also be represented for physical products j > 0. This can be interpreted as holding line l in a standby mode for producing the same product again without incurring additional setup costs but possibly time-dependent standby costs cbl . and inventory holding costs hmacro are defined per macropeCapacity Ct , demand dmacro jt jt riod t. Similar to the GLSP, the planning horizon is additionally subdivided into S microperiods s = 1, . . . , S with variable length, whose starting times are represented by the decision variables ws . The starting times of some of these periods, described by the set Φ, are fixed in advance. This is, for example, the case for microperiods, which mark the beginning (or end) of a macroperiod, but can also be used to set fixed downtimes of machines, e.g., during holidays or for maintenance. As outlined in Section 3.1, to model T macroperiods, T + 1 points in time are needed. The same is true for the microperiods and thus an artificial macroperiod t = T + 1 as well as an artifical microperiod s = S + 1 are introduced. Furthermore, let ft be the first microperiod of macroperiod t again. Then, the capacity Ct of a “real” macroperiod t can be expressed by the difference ws − ws of the fixed starting times of two subsequent has to be met until “first” microperiods s = ft and s = ft+1 . Analogously, demand dmacro jt the end of the last microperiod of macroperiod t which corresponds to ft+1 − 1. For ease of notation, in the following Λ denotes the set of all of these “last” microperiods. In order to transform an LTB-model into this GLSPMS time structure, demand djs has to be set to otherwise. In the same way the holding costs hjs are defined. zero for all s ∈ / Λ and to dmacro jt Furthermore, for each time interval shown in Figure 3.6, decision variables have to be introduced. Accordingly, xbls denotes the setup time fraction at the beginning of microperiod s on line l which is caused by a changeover. Analogously, xels is defined as the setup time 26
Note that this is only possible if a microperiod becomes as long as the corresponding macroperiod.
56
Chapter 3. Multi-level lot-sizing and scheduling
fraction at the end of microperiod s. The production time is computed by alj · xljs where xljs describes the quantity of item j produced on line l in microperiod s. Following the ljs and xljs , whose production quantity splitting idea, xljs will further be subdivided into x times are the second and fourth element of Figure 3.6. Finally, the idle time xls represents the remaining usage (or better non-usage) of line l in microperiod s (shutdown time for j = 0 and standby time for j > 0). For instance, in Figure 3.7 the microperiod s = 2 starts with idle time x12 > 0 on line l = 1. On line l = 2, item j = 5 is produced over the entire microperiod s = 3. However, 253 and x253 since the quantity x253 is not needed this production quantity x253 is split into x before microperiod s = 4. Besides, a splitting of the setup time occurs on line l = 2 in microperiods s = 1 and s = 2. Therefore, xe21 > 0 and xb22 > 0. The basic version of the GLSPMS can be summarized as follows:
Indices i, j k, l t s
Index sets St D− D+ Jl Φ Λ Πl
Data mlj ml0 hjs cplj
= 1, ..., J products, whereas = 0 means neutral = 1, ..., L production lines (multi-stage and/or parallel) = 1, ..., T macroperiods (e.g. weeks, months) = T + 1 artificial macroperiod = 1, ..., S microperiods = S + 1 artificial microperiod
set of microperiods s belonging to macroperiod t set of all 4-tuples consisting of product-line combinations (k, i) and (l, j) where product i on line k is produced at most as fast as j on l set of all 4-tuples consisting of product-line combinations (k, i) and (l, j) where product i on line k is produced faster than j on l set of products which can be produced on line l set of all microperiods with fixed starting times set of all last microperiods of macroperiods set of all microperiods that do not allow a production on line l
minimum lot-size of product j (qty) if produced on line l minimum time line l has to remain shut down holding costs of product j (per unit and per macroperiod t with s = ft+1 − 1) production costs of product j (per unit) on line l
3.3. Multi-level models in the literature cbl zljj1 = ylj0 djs Ij0 ws pji Ijmax Wljmax cej emax j co omax
Variables ws ≥ 0 Ijs ≥ 0 xbls ≥ 0 xels ≥ 0 xljs ≥ 0 x ljs ≥ 0 xljs ≥ 0 xls ≥ 0 ejs ≥ 0 os ≥ 0 yljs ∈ {0, 1} zlijs ≥ 0
57
standby costs on line l equals 1 if line l is set up for product j at the beginning of the planning horizon (0 otherwise) demand for product j in microperiod s (qty) initial inventory of product j at the beginning of the planning horizon (qty) start time of fixed period s ∈ Φ number of (qty) units of product j required to produce one unit of the direct or indirect successor i maximum stock level of product j (qty) maximum WIP-stock level of product j after production on line l (qty) purchasing costs (per unit) of product j maximum number of (qty) units that product j can be externally purchased overtime costs maximum overtime
start time of microperiod s inventory of product j at the end of microperiod s (qty) fractional setup time for changeover at the beginning of microperiod s fractional setup time for changeover at the end of microperiod s total quantity of product j produced in microperiod s on line l (qty) share of xljs that can be used by successors in the same microperiod s (qty) share of xljs that can as WIP-stock first be used by successors in the following microperiod s + 1 (qty) standby time on line l in microperiod s externally purchased quantity of product j in microperiod s (qty) overtime used in microperiod s setup state: yljs = 1 if line l is set up for product j in microperiod s (0 otherwise) takes on 1 if a changeover from product i to product j takes place on line l during microperiod s (0 otherwise)
58
Chapter 3. Multi-level lot-sizing and scheduling
Objective function min
hjs Ijs +
s∈Λ,j=0
slij zlijs +
l,i,j,s
cplj xljs
l,j,s
+
cbl xls +
cej ejs +
j=0,s
l,s
s
co · o s +
hjsxljs (3.76)
l,s∈Λ,j=0
subject to
Ijs = Ij,s−1 + +
ws = w s
∀s ∈ Φ
(3.77)
x ljs + xljs = xljs
∀l, j = 0, s
(3.78)
pji xlis + ejs − djs
∀j = 0, s
(3.79)
Ijs ≤ Ijmax
∀j = 0, s
(3.80)
xljs ≤ = stlij zlijs
∀l, j = 0, s
(3.81)
∀l, s ≥ 2
(3.82)
alj xljs + xels = (ws+1 − ws ) + os
∀l, s
(3.83)
alj xljs ≤ wS+1 yljs xljs ≥ mlj zlijs
∀l, j, s
(3.84)
∀l, j, s
(3.85)
∀l, s
(3.86)
yljs = 0
∀l, s, j ∈ / Jl
(3.87)
zlijs ≥ yljs + yli,s−1 − 1 zlijs = 1
∀l, i, j, s ≥ 2
(3.88)
∀l, s ≥ 2
(3.89)
xljs = 0
∀l, s ∈ / Πl
(3.90)
ejs ≤ emax j
∀j = 0, s
(3.91)
os ≤ omax
∀s ∈ Λ
(3.92)
os = 0
∀s ∈ /Λ
(3.93)
−
(3.94)
∀s, (k, i, l, j) ∈ D+
(3.95)
x ljs
l
xlj,s−1 −
l
l
i ∈ Nj
Wmax lj
xel,s−1 xbls + xls +
+
xbls
i,j
j
i:i=j
yljs = 1
j
i,j
j=0
(ws+1 − ws ) + os ≥
xbks
+ aki x kis +
xels
(ws+1 − ws ) + os ≥ xbks + alj xljs + xels
∀s, (k, i, l, j) ∈ D
The objective is to minimize the sum of holding costs of the lot-sizing stock, sequence-
3.3. Multi-level models in the literature
59
dependent setup costs, and production costs, as well as costs for standby, external purchase, overtime, and holding of WIP-stock (3.76). With the help of (3.77), the starting times of all microperiods in Φ (including the macroperiods) are fixed. The quantity split is allowed by ljs that is directly available in (3.78) which divides the production quantity xljs into a part x the same period s and into xljs that is first available in the next microperiod s + 1. The inventory balancing constraints (3.79) ensure that primary as well as secondary demand is met without back-logging. The inflow to the stock is composed of the total production of j during s, the WIP-stock of j that has been built up in s − 1, and the externally purchased quantities. Note that this WIP-stock has a lead-time of a single, usually quite short microperiod and thus allows a more realistic modeling than commonly used LTBmodels. The outflow is the primary demand of j in s and the secondary demand generated by direct successors i that are also produced in s. Constraints (3.80) restrict the overall inventory of each product if necessary, whereas the line-specific WIP-stock can be limited by (3.81). Constraints (3.82) ensure that the required setup time stlij of a changeover from i to j is actually spent while making the setup split possible. According to the time structure outlined above, constraints (3.83) build up a microperiod s which consists of setup time fractions, idle and production time. The length of this microperiod equals the time interval ws+1 − ws between the two subsequent microperiods s and s + 1 which can be prolonged if overtime os is used. Since the starting times of some selected microperiods are fixed by (3.77), all in all limited production capacity can be respected. Because of the setup forcing constraints (3.84), production can only take place if the line is set up accordingly. The fixed end of the planning horizon wS+1 is proposed as the big-M value. Constraints (3.85) enforce a minimum lot-size and are needed because setup costs (or times) do not always satisfy the triangle inequality. Furthermore, (3.86) enforce that a line can only be set up for exactly one product per microperiod. Since not all products can be produced on every line, (3.87) forbid illegal combinations. (3.88) link the setup state indicators y with the changeover indicators z. Together with the objective function (3.76), they ensure that zlijs is only set to 1 if line l was set up for i in s − 1 and for j in s. To get a tighter formulation, (3.89) are added (but not necessarily needed). With respect to, e.g., working calendars or pre-determined maintenance activities, (3.90) prevent production on certain lines in certain microperiods. Constraints (3.91), (3.92), and (3.93) impose limits on external purchasing and overtime, respectively. Note that only the capacities of the last microperiods (and thus the macroperiod) can be extended by overtime. Finally, the multi-stage production enforces the additional synchronization constraints (3.94) and (3.95) to guarantee feasible plans. When considering a predecessor line k producing a (direct on indirect) predecessor product i and a successor line l producing a (direct on indirect) successor product j, both equations ensure that microperiod s is long enough to
60
Chapter 3. Multi-level lot-sizing and scheduling
contain the period’s beginning setup fraction on the predecessor line k, the production on the “slower” one of both lines, and the period’s ending setup fraction on the successor line l. Constraints (3.94) are responsible for “slower” predecessor lines and products. Here, (ki) represents the slower line-/product-combination which means that aki pij ≥ alj . Hence, producing one unit of the successor product j on line l does not take more time than producing the necessary quantity of the corresponding predecessor product k on line i. Of course, a necessary prerequisite is that both products can be produced on the respective lines at all, i.e. that aki > 0 and alj > 0. This is expressed by the index set D− which contains all tuples (k, i, l, j) that fulfill these conditions. It is thus defined by D− = {(k, i, l, j) | aki > 0 ∧ alj > 0 ∧ aki pij ≥ alj ∧ j ∈ Ni+ }, where the index set Ni+ contains all direct and indirect successor products of i. In this case, a potential setup time on the “faster” line l can become crucial. If both products are produced in the same microperiod s—as shown in Figure 3.9 where all units of i are directly consumed by j—we have to ensure that i is finished on time. Therefore, the length of this microperiod must exceed the time for production on line k plus the setup time on line l. For those successors the line synchronization constraints (3.94) have to be respected. period s-1 line l line k
period s j
setup i
time
Figure 3.9: Impact of “slower” direct predecessor. Analogously, constraints (3.95) model the complementary case where the successor lines and successor products are the slower ones. For this, the set D+ has to be defined by D+ = {(k, i, l, j) | aki > 0 ∧ alj > 0 ∧ aki pij < alj ∧ j ∈ Ni+ } and applied in (3.95). For ease of understandability, setup splitting has not been considered in Figure 3.9. However, because of the setup splitting possibility, the setup fraction of the predecessor line has to be included in the synchronization as well. As shown in Figures 3.10a and 3.10b, in both cases—slower and faster production—the setup on line k in s must be respected, too. 3.3.4.2
The two-stage multi-machine lot-scheduling model (P2SMM)
As already mentioned, the P2SMM describes the production of soft-drinks. On L0 identical filling lines, J0 different soft-drinks are bottled. Each line l has its dedicated tank k. Ac-
3.3. Multi-level models in the literature
period s-1
period s j
line l line k
period s+1
61
period s-1
period s
setup
i
period s+1
j setup
i
time
(a) “Slower” predecessor.
(b) “Slower” successor.
Figure 3.10: Line synchronization for split setup times. cordingly, L1 (= L0 ) identical tanks are available, where tank k feeds line l = k − L0 . In these tanks, J1 different liquid flavors are prepared. In sum, J(= J0 + J1 ) products have to be scheduled on L(= L0 + L1 ) machines (lines+tanks). Notice that inventory stocks can only be hold for the soft-drinks. Thus, no decision variables are needed for the production quantities of the first stage, as these quantities can be directly obtained by the ones of the second stage and the corresponding gozinto factors. The further notation of the P2SMM is adapted to the one of the GLSPMS. The resulting model formulation looks as follows: Indices i, j k, l s t
Index sets St Jl
Data djt hj bj alj pji sij stij
products (soft-drinks 1, . . . , J0 ; liquid flavors J0 + 1, . . . , J0 + J1 ) machines (bottling lines 1, . . . , L0 ; tanks L0 + 1, . . . , L0 + L1 ) = 1, . . . , S microperiods = 1, . . . , T macroperiods
set of microperiods s belonging to macroperiod t set of products which can be produced on machine l (soft-drinks on bottling line l ≤ L0 ; liquid flavors in tank l > L0 )
demand for product j in macroperiod t (qty) holding costs of final item j (soft-drink) per unit and per macroperiod back-logging costs of product j (soft-drink) per unit and per macroperiod capacity consumption (time) needed to produce one unit of soft-drink j on line l quantity of liquid flavor j necessary to produce one unit of soft-drink i setup costs of a changeover from liquid flavor i to liquid flavor j and from soft-drink i to soft-drink j, respectively setup time of a changeover from liquid flavor i to liquid flavor j and from soft-drink i to soft-drink j, respectively
62
Chapter 3. Multi-level lot-sizing and scheduling minimum production quantity of liquid flavor j in tank l (necessary of liquid homogeneity) initial inventory of soft-drink j at the beginning of the planning horizon (qty) initial back-log of soft-drink j at the beginning of the planning horizon (qty) equals 1 if tank l is set up for liquid j at the beginning of the planning horizon (0 otherwise) available capacity of tank l (qty) available capacity of line l in macroperiod t (time) number of filling lines number of tanks number of soft-drinks number of liquid flavors
mlj + Ij0 − Ij0
ylj0 Vl Clt L0 L1 J0 J1
Variables + Ijt ≥0 − ≥0 Ijt xljs ≥ 0 xbls ≥ 0 yljs ∈ {0, 1}
inventory of product j at the end of macroperiod t (qty) back-order of product j at the end of macroperiod t (qty) quantity of soft-drink j ≤ J0 produced in microperiod s (qty) standby time in microperiod s on line/tank l (qty) setup state: yljs = 1 if product j is set up on machine l in microperiod s (0 otherwise) takes on 1 if a changeover from product i to product j takes place on machine l during microperiod s (0 otherwise)
zlijs ≥ 0
Objective function min
+ − hj Ijt + + bj Ijt sij zlijs
J0
j=1
t
l
i ∈ Jl j ∈ J l
(3.96)
s
subject to stage 1 (tank)
pji xlis ≤ Vk ykjs
∀k > L0 , j ∈ Jk , l = k − L0 , s
(3.97)
pji xlis ≥ mkj ykjs
∀k > L0 , j ∈ Jk , l = k − L0 , s
(3.98)
k > L0 , t, s ∈ St
(3.99)
i ∈ Jl
i ∈ Jl
j ∈ Jk
ykj,s−1 ≥
j ∈ Jk
ykjs
3.3. Multi-level models in the literature zkijs ≥ yki,s−1 + ykjs − 1 zkijs ≥ yli,s−1 + ykjs − 1 i ∈ Jl
63 k > L0 , i ∈ J k , j ∈ Jk , s
(3.100)
k > L0 , j ∈ Jk , l = k − L0 , t ≥ 2, s = ft
(3.101)
k > L0 , t, s ∈ St
(3.102)
zkijs ≤ 1
i,j∈Jk
stage 2 (bottling)
+ − + Ijt + Ij,t−1
+ − xljs = Ijt + Ij,t−1 + djt
j ≤ J0 , t
(3.103)
l ≤ L0 , t
(3.104)
stij zlijs
l ≤ L0 , k = l + L 0 , s
(3.105)
Clt yljs xljs ≤ alj yljs = 1
l ≤ L0 , j ∈ Jl , t, s ∈ St
(3.106)
l ≤ L0 , s
(3.107)
l ≤ L0 , i ∈ J l , j ∈ J l , s
(3.108)
l ≤ L0 , s
(3.109)
l ∈ Lj s ∈ S t
alj xljs +
j ∈ Jl s ∈ S t
stij zlijs
i ∈ Jl j ∈ J l s ∈ S t
+ xbls ≥
i ∈ Jk j ∈ J k
xbls ≤ Clt
s ∈ St
stij zkijs −
i ∈ Jl j ∈ J l
j ∈ Jl
zlijs ≥ yli,s−1 + yljs − 1 zlijs ≤ 1 i ∈ Jl j ∈ J l
In addition to setup and holding costs, the objective function (3.96) also includes backlogging costs. The constraints of the P2SMM are divided into two groups in accordance with the production stage they belong to. (3.97) are the setup forcing constraints for stage 1 and represent the capacity constraints for the tanks at the same time. Accordingly, on the left hand side the needed liquid flavor has to be determined which is the result of the bottled quantity on the directly connected filling line in the regarded period. To assure the homogeneity of the liquid flavor, a minimum lot-size is necessary (3.98). As the number of microperiods is chosen a-priori, it might be the case that more microperiods are available than needed. Thus, periods without production (idle periods) might occur. Constraints (3.99) then help reduce the number of symmetric solutions by forcing idle periods to appear at the end of a microperiod (cf. Fleischmann and Meyr, 1997). Therefore, a new setup is not allowed in a macroperiod anymore, as soon as the setup state gets lost in that macroperiod. Constraints (3.100) and (3.101) capture the setup changeovers. The second ones are needed, because due to the possible setup loss for a tank, the setup state of the last microperiod of a macroperiod has to be detected via the corresponding setup state of the connected bottling line. Moreover, (3.102) limit the maximum changeovers per microperiod to 1.
64
Chapter 3. Multi-level lot-sizing and scheduling
In contrast to stage 1, stage 2 allows for building inventory stocks. As back-logs are also allowed (negative stock levels), the inventory balance constraints look like (3.103). Constraints (3.104) assure that production, setup, and idle time do not exceed the available capacity of each line in each macroperiod. macroperiod t
macroperiod t line l tank k
s
s+1
j
j+1
j
j+1
i
i+1
i
i+1
s
s+1
time
(a) Schedule without synchronization.
time
(b) Schedule with synchronization.
Figure 3.11: Schedules with and without synchronization (cf. Ferreira et al., 2009). The necessity of idle time in the bottling stage is illustrated by Figure 3.11. Even though the tanks are “fast” enough to feed the lines, different setup times in the stages can lead to synchronization problems (see Figure 3.11a). Accordingly, idle time must be inserted if the setup changeover for a tank takes longer than the changeover for the connected bottling line (see Figure 3.11b). This is achieved by constraints (3.105). Note that idle time needs not to be added for the first stage, since the capacity constraints are volume- and not time-based (and the tanks are “fast” enough). Constraints (3.106), (3.107), and (3.108) are quite the same as for the GLSPMS. Finally, at most one changeover is allowed in each microperiod by (3.109).
3.3.5
Other models
Besides the PLSP-, CLSD-, and the GLSP-based models, there are also other models which have differing structures or cannot be classified in that way. Sikora et al. (1996) solve a lot-sizing and scheduling problem with even five production stages and a serial product structure. Unfortunately, they do not present a mathematical formulation. Another multi-level STB-model is suggested by Persson et al. (2004), who solve a realworld problem with two production stages which occurs in the oil industry. They disregard sequence-dependent setup times and define small-time-buckets which only allow a single mode of operation on each machine (processing unit) in each microperiod. Furthermore, each mode is dedicated to a single machine and directly linked to a fixed production quantity. This corresponds to an all-or-nothing assumption similar to the DLSP. A further approach is presented by Mohammadi et al. (2009). They consider a multi-stage flow shop production where all machines are arranged serially. Mohammadi et al. propose synchronization constraints that forbid the production of an item on a certain machine
3.4. Conclusions
65
unless it has been finished on the predecessor machine. For this purpose so-called “shadow products” representing idle time are introduced.
3.4
Conclusions
In the literature, only a few multi-level models do exist. But hardly any of them are able to cope with the requirements for several stages, parallel production lines, sequence-dependent setup times and costs as well as zero lead-times. Main reason is that most of them are based on the time structure of single-level models which were originally not intended to meet the requirements, the multi-level variants “suffer” from these time structures. Correspondingly, the major drawbacks of STB-models can also be found in the multilevel PLSP models by Haase (1994), Kimms (1996) and Kimms (1997). On the one hand, setup times (which are not part of the DLSP) are generally a critical issue. If setup times (or minimal lot-sizes) exceed the defined length of a period, complex formulations are necessary as proposed by Kallrath (1999) and Suerie (2005a) who use additional time-indexed variables. On the other hand, if the length of a period is chosen too long, a loss of modeling detail and thus inefficient capacity utilization might result. Only the models by Stadtler (2011) as well as Stadtler and Sahling (2013) include setup times and allow zero lead-times. However, setups are still sequence-independent. On the opposite side, the CLSD-based models as proposed by Sahling (2010) and Grünert (1998) are not able to determine the starting times of the production lots. Accordingly, they make use of at least one large-time bucket lead-time for the synchronization of the production stages and cannot cope with non-triangular setups. Furthermore, Grünert considers no parallel lines and Sahling assumes small lot-sizes. In contrast to the single-level time structure of PLSP and CLSD, the GLSP uses a twolevel time structure which combines the advantages of large-time and small-time buckets. That is why models like the ones by Araujo et al. (2008) and Ferreira et al. (2009) are able to meet most of the requirements. However, these models are specially tailored to the regarded production system with two production stages. They use explicitly defined constraints for the synchronization between these two stages, and thus they cannot be easily extended for further stages. In sum, the GLSPMS seems best suited to model different problem settings of the consumer packaged goods industry, and thus it will be examined thoroughly in the next chapter.
Chapter 4 Improvements of the GLSPMS In the previous chapter, it became clear that the General Lot-sizing and Scheduling Problem for Multiple Production Stages (GLSPMS) fits best the requirements for solving the problem of shifting bottlenecks in the consumer goods industry. Unfortunately, the GLSPMS shows a few shortcomings which are pinpointed next in the first section. Afterwards an improved formulation resolving these shortcomings will be given in Section 4.2. Finally, the properties of the improved GLSPMS will be discussed and first computational results will be presented in Sections 4.3 and 4.4, respectively.
4.1
Shortcomings of the basic GLSPMS
The basic model as proposed by Meyr contains some shortcomings concerning the line synchronization. First of all, constraints (3.94) and (3.95) do not consider, for which items the corresponding lines are actually set up. This may lead to unnecessarily large microperiods. Figure 4.1 illustrates such a case. period s line l
j
line k
b xks
xlse
i‘
time (a) Feasible solution but precluded by constraints (3.94) and (3.95)
period s j
b xks
period s
x lse
i‘
(b) Solution potentially forced by constraints (3.94)
x lse
j
x bks
i‘
(c) Solution potentially forced by constraints (3.95)
Figure 4.1: Unnecessarily large microperiods due to constraints (3.94) and (3.95). In this example, item j can be produced on line l. Moreover, there are two further products i and i which both are producible on line k. We assume now that item i is a predecessor of j but not i . Accordingly, a production plan as shown in Figure 4.1a could be
F. Seeanner, Multi-Stage Simultaneous Lot-Sizing and Scheduling, Produktion und Logistik, DOI 10.1007/978-3-658-02089-7_4, © Springer Fachmedien Wiesbaden 2013
68
Chapter 4. Improvements of the GLSPMS
implemented in reality—if i is available in stock—because the production quantities of i and j are independent from each other. However, constraints (3.94) and (3.95) do not allow such a solution. If product i is a slower predecessor, then the solution given in Figure 4.1b would be the result from constraints (3.94), although i is not produced. If j is slower, even a larger microperiod could be potentially enforced by constraints (3.95) as shown in Figure 4.1c. Note that this illustrated issue results in plans with unnecessary idle time. However, these plans are feasible. But there are two further synchronization issues which indeed can lead to infeasible production plans. The first one arises if more than two production stages have to be considered. The GLSPMS makes no difference whether idle time is needed before or after the production. Let us consider a small example. We suppose that product j on line l is faster than its predecessor i on k and its successor j on l . For the ease of understanding, we further assume that j on l and i on k have the same production speed. In this case1 , constraints (3.94) enforce the length of microperiod s to be at least ws+1 − ws ≥ xbks + aki xkis + xels for the tuple (k, i, l, j). Accordingly, idle time occurs before production on line l as shown in Figure 4.2a. Since product j is faster than j , constraints (3.95) allow that j might start at the same time as j (see Figures 4.2b). Figure 4.2c illustrates these constraints (3.95) also allow the production of j to start at the same time as of i. This means, the resulting microperiod length for the tuple (k, i, l, j) is sufficient for (l, j, l , j ) and (k, i, l , j ) because ws+1 − ws ≥ xbls + al j xl j s + xel s and ws+1 − ws ≥ xbks + aki xkis + xel s , respectively. However, the plan as given in Figure 4.2d is not feasible in reality because the synchronization constraints do not consider idle time and because the production of item j starts too early. The second synchronization problem might occur for parallel production lines. Keeping track of the relations between predecessor and successor products in the BOM is generally necessary for the synchronization, but it is not sufficient. The presence of parallel lines makes it necessary to consider the actual material flow between the stages. For instance, we assume that the successor item j is slower on line l than its predecessor i on line k (alj > pij aki ). In addition, item j is also slower on line l than the predecessor (e.g., al j = alj ). But if item j is produced on both lines in parallel, the “total” production rate might2 become faster a than the one of item i on line k ( 2lj < pij aki for al j = alj ) and a new infeasibility arises as illustrated Figure 4.3. In order to avoid all these shortcomings and to guarantee feasible plans, the line synchronization constraints have to be revised. A possible improvement is developed and presented in the following. 1 Note that such an example can also be created including setup times and dropping the last assumption of equal production speeds. 2 Note that the inverse of the production coefficient equals the production rate.
4.1. Shortcomings of the basic GLSPMS
69
period s
period s j‘
line l‘ j
line l line k
line l
i time
time (a) Period length sufficient for the synchronization of lines k and l.
(b) Period length sufficient for the synchronization of lines l and l .
period s line l‘
j
period s
j‘
line l‘
line l
j‘ j
line l
line k
i
line k
time (c) Period length sufficient for the synchronization of lines k and l .
i
time (d) Period length insufficient for a completely feasible plan.
Figure 4.2: Synchronization issue for more than two stages.
period s line l‘
j
setup
line l
j
setup
line k
i
time
Figure 4.3: Predecessor item is transferred to several lines.
70
Chapter 4. Improvements of the GLSPMS
4.2
Improved GLSPMS
This section presents an improved variant of the GLSPMS. The major change concerns the new line synchronization which is explained next. Additionally, some minor changes are made as well. For this reason, the complete new formulation is given afterwards.
4.2.1
New line synchronization
To cope with the shortcomings outlined above, the microperiod structure is extended. As shown in Figure 4.4, each microperiod may now consist of six different time spans. The original five elements are complemented by a second idle time which may arise between production and the setup time fraction at the end of the microperiod. Moreover, the first idle time is “moved” before the production. setup
idle
production
production
setup
idle
Figure 4.4: New microperiod structure with two different elements of idle time. Correspondingly, the new structure explicitly differentiates between idle time which is needed before and which is needed after production. This allows to enforce that the production of a successor product j on line l must not start and must not end before the production of a direct predecessor product i on line k. Figure 4.5 illustrates this condition which results in two new types of constraints (see (4.21) and (4.22)). line l, product j
b xls
b x ഥls
ෝljs alj x
alj xljs
b xks
e xls
∙
¸
line k, product i
e x ഥls
b x ഥks
ෝkis aki x
aki xkis
e x ഥks
e xks
Figure 4.5: Production of direct successor product j on line l must neither start nor end before predecessor product i on line k in every microperiod s. The first one forces setup and idle time before the production on successor line l to be at least as long as setup and idle time before the production on line k. The second one assures that setup and idle time after production on line l are at most as long as the time needed on line k for producing the parts which are first available in the next microperiod, plus the standby and setup times at the end of the current microperiod. Even though this condition is only formulated for a pair of direct predecessor/successor products, it is “transitive”: If the production of j must neither start nor end before j and j must neither start nor end before i, then the condition is implicitly fulfilled by j and i. Thus, an infeasible solution as shown in Figure 4.2d is not possible anymore. Moreover, the
4.2. Improved GLSPMS
71
new condition also prevents the synchronization issue illustrated in Figure 4.3, as on all lines the production of a successor product must not end before the one of the pre-item.
4.2.2
Model formulation
The indices as well as most of the index sets stay the same for the improved model. However, a new index set D is introduced which replaces the sets D+ and D− . Due to the new microperiod structure and the new synchronization approach, the differentiation between slower and faster product/line-combinations is not needed anymore and thus D contains all tuples (k, i, l, j) where j is a direct successor of i and j is producible on l as well as i on k. Furthermore, new variables have to be included for the second idle time. The resulting improved formulation which corresponds to the one given by Seeanner and Meyr (2013) is completely listed below, where the numbers of unchanged constraints are marked with an asterisk. Index set D
set of all (k, i, l, j)-tuples consisting of line-product combinations (k, i) and (l, j) where product j is a direct successor of i (j ∈ Nj ) and j is producible on line l (alj > 0) and i on k (aki > 0)
Variables xbls ≥ 0 xels ≥ 0
standby time on line l in microperiod s before production standby time on line l in microperiod s after production
Objective function min
hjs Ijs +
s∈Λ,j=0
slij zlijs +
l,i,j,s
+
cplj xljs
l,j,s
cbl (xbls + xels ) +
cej ejs +
j=0,s
l,s
co · o s +
s
hjsxljs (4.1)
l,s∈Λ,j=0
subject to
Ijs = Ij,s−1 +
l
x ljs +
l
xlj,s−1 −
l
ws = w s
∀s ∈ Φ
(4.2*)
x ljs + xljs = xljs
∀l, j = 0, s
(4.3*)
pji xlis + ejs − djs
∀j = 0, s
(4.4*)
Ijs ≤ I max
∀j = 0, s
(4.5*)
∀l, j, s
(4.6*)
i∈Nj
xljs ≤
Wmax lj
72
Chapter 4. Improvements of the GLSPMS ∀j = 0
(4.7)
∀l
(4.8)
stlij zlijs
∀l, s ≥ 2
(4.9*)
alj xljs + xels + xels = (ws+1 − ws ) + os
∀l, s
(4.10)
xbl1
IjT = Ij0 = stlij zlij1 i,j
xel,s−1 + xbls = xbls + xbls +
i,j
j
alj xljs ≤ wS+1 yljs
∀l, j, s (4.11*)
xljs ≥ mlj (yljs − ylj,s−1 ) yljs = 1
∀l, j, s (4.12*) ∀l, s (4.13*)
j
yljs = 0
∀l, s, j ∈ / Jl (4.14*)
zlijs ≥ yljs + yli,s−1 − 1 zlijs = 1
∀l, i, j, s (4.15*) ∀l, s (4.16*)
i,j
xljs = 0
∀l, s ∈ / Πl (4.17*)
ejs ≤ emax j
∀j = 0, s (4.18*)
os ≤ omax
∀s ∈ Λ (4.19*)
os = 0
∀s ∈ / Λ (4.20*)
j=0
− wS+1 (2 − yljs − ykis ) ∀s, (k, i, l, j) ∈ D
(4.21)
aki x kis + xeks + xeks ≥ xels + xels − wS+1 (2 − ykis − yljs ) ∀s, (k, i, l, j) ∈ D
(4.22)
xbls
+
xbls
≥
xbks
+
xbks
In accordance with the new microperiod structure, the objective function is extended by the new variables in the standby costs term. Moreover, constraints (4.7) prevent zero “end-ofhorizon” inventories which may have a negative impact on later periods beyond the planning horizon (cf. Stadtler, 2000). In contrast to Meyr’s formulation, (4.8) allow setup time at the beginning of the first microperiod.3 The six elements of the new structure are now included in (4.10). As explained in Section 4.2.1, the new constraints (4.21) and (4.22) assure the line synchronization. However, the resulting conditions only make sense, if pre-product i is actually produced on k and successor j on l. Therefore, both types of constraints are only “active” if products i and j are set up on lines k and l, respectively. As next, the properties of the improved GLSPMS are discussed, before the first computational results will be presented. Note that for the remainder of this thesis, the term GLSPMS exclusively refers to the improved model formulation given in this section.
3
Correspondingly, the condition zljj1 = ylj0 needs to be removed (see Data in Section 3.3.4.1).
4.3. Properties of the improved GLSPMS
4.3
73
Properties of the improved GLSPMS
At first, the computational complexity of the GLSPMS is examined. In a second step, the advantages and disadvantages will be elaborated. Finally, the powerfulness of the GLSPMS will be demonstrated.
4.3.1
Complexity
According to the complexity theory4 , a decision problem DP is called NP-complete if the problem is in the class NP and each decision problem in NP is polynomial time reducible to DP (Garey and Johnson, 2003, p. 37). The question whether the GLSPMS has a feasible solution, also represents a decision problem which is called GLSPMSDP in the following. It can be easily seen that this problem belongs to the class NP, since any production plan can be checked for feasibility in polynomial time. A corresponding algorithm for the feasibility check may easily be constructed. In order to show that each decision problem in NP is reducible to GLSPMSDP , it is sufficient to reduce a known NP-complete problem to the GLSPMSDP . One of these NPcomplete problems is the decision version of the Traveling Salesman Problem (TSP) which can be formulated as follows (Garey and Johnson, 2003, p. 211): Given a set of N cities and the distance tdij between all pairs of cities i, j. Does there exist a tour (Hamiltonian Cycle) with a length of at most C? This decision problem TSPDP is in polynomial time reducible to the GLSPMSDP (noted as TSP ≺p GLSPMSDP ) by interpreting the cities as products (J = N ) and the distances as setup times (stlij = tdij ) of a single production line (L = 1). Therefore, the index sets Nj = ∅(∀j) and D = ∅ are empty because of the single production stage. Furthermore, on this line, production is allowed in all microperiods (Π1 = {1, . . . , S}) for all items J1 = {1, . . . , J}. By setting a positive demand for every product, we enforce the visit of each city (production of each item). Note that for a round trip any product might be the starting point. Hence, y110 can be set to 1 without loss of generality. To assure that product 1 is set up again at the end of the planning horizon, we use two macroperiods (T = 2) and enforce the exclusive production of item 1 in macroperiod 2. This can be easily achieved by setting the number of microperiods in macroperiod 1 to N − 1 and in macroperiod 2 to 1 (Φ = {1, N, N + 1}, Λ = {N − 1, N }).5 Moreover, we have demand for all products except for product 1 in macroperiod t = 1, i.e. dj,N −1 = 1 for all j = 1 and d1,N −1 = 0. In macroperiod t = 2 this 4
For a deeper introduction refer to Garey and Johnson (2003) among others. Alternatively, the maximum inventory level of product 1 can be set to 0 to prevent a production in the first macroperiod. 5
74
Chapter 4. Improvements of the GLSPMS
assumption is reversed as djN = 0 for all j = 1 and d1N = 1. In sum, there are N − 1 items that have to be produced in macroperiod t = 1. Since this macroperiod consists of N − 1 microperiods and due to the fact that at most one item can be produced in a single microperiod, the requirement of a closed tour is fulfilled. A few transformation steps remain to be made. By neglecting minimum lot-sizes (m1j = 0),6 the production of one piece per item is sufficient and the maximum inventory Ijmax can be set to 1. Since the setup forcing constraints only work properly if the production coefficients a1j > 0, capacity is consumed by the production. As we do not have any minimum lotsizes and by setting a1j = 1, an additional capacity of N time units is needed. Due to the possibility of setup splitting we can suppose that in macroperiod t = 2 only the production of item j = 1 needs to take place. For this reason, the capacity of the second macroperiod can be set to 1 (wN +1 − wN = 1) and the remaining capacity is assigned to the first macroperiod. , This results in w1 = 0, wN = C + N − 1, and wN +1 = C + N . The remaining data (omax j max ) is set to 0. g max , W1j If the instance of GLSPMSDP at hand can be answered with yes which means that a production plan exists, then the TSPDP has the same answer.7 In the following, a small example should clarify the transformation steps.
Example With the help of the following example, the transformation procedure is illustrated. We assume that a circular tour through five cities has to be found. The travel distances are given in Figure 4.6. The question is whether a tour with a length up to 90 units is possible. First, the distances are interpreted as setup times (see Table 4.1). 1
21
4
38 19 25
17 36
5
14
2
st1ij
15
13
3
33
Figure 4.6: Travel distances between all pairs of five cities.
i=1 i=2 i=3 i=4 i=5
j=1
j=2
j=3
j=4
j=5
0 25 38 21 19
25 0 33 36 14
38 33 0 17 13
21 36 17 0 15
19 14 13 15 0
Table 4.1: Travel distances as setup times.
6 Since only one production lot per item should be produced, the minimum lot-size can also be set to the corresponding demand. 7 Finally, it is worth mentioning that the same reduction as by Fleischmann and Meyr (1997) could have been used as well. They transform the 3 Partitions Problem (3PP) to the GLSP with non-zero minimum lot-sizes. Even though the GLSPMS also includes minimum lot-sizes, constraints (4.7), however, do not allow to reduce the GLSP to the GLSPMS since not all GLSP instances with non-zero minimum lot-sizes can be transformed. Accordingly, the GLSP is only partly a subproblem. Nevertheless, the 3PP can be reduced to the GLSPMS analogously.
4.3. Properties of the improved GLSPMS
75
In accordance with the transformation explained above, five microperiods are used and the ending times w5 = 94 and w6 = 95 are fixed. Then the GLSPMSDP must be answered with yes and so is the TSPDP (see the production plan given in Figure 4.7 with the round trip 1,4,3,5,2,1). w2
w1 l=1
1!4 s=1
w3 4!3
3!5 s=2
w4
w5 w6
5!2
2!1
s=3
s=4
time
Figure 4.7: Feasible solution for w1 = 0, w5 = 94, and w6 = 95. Since the GLSPMSDP is now proven to be NP-complete, the corresponding optimization problem can be called NP-hard (Florian et al., 1980). But the proof that the TSPDP is a special case of the GLSPMSDP allows further conclusions (cf. Chapter 8). Even though the TSP—as the optimization problem of finding the shortest tour—is a very hard problem, the research community has made a lot of progress in the past. Applegate et al. (2006, p. 317) show in their historical overview over the TSP that today it is possible to solve real-world problem instances with 1000 cities to optimality within a couple of minutes. Hence, despite the computational complexity, real-world instances of the GLSPMS might be solvable by standard MIP-solvers in a reasonable time. Furthermore, standard MIPsolvers offer functionality such as presolving and cut generation which may accelerate the solution procedure depending on the data structure. Therefore, it might be possible that the problem data for the GLSPMS allows exact methods to solve instances with sufficient size. In the following it has to be tested how the GLSPMS behaves from a computational point of view. For this purpose several test scenarios were created which will be described at the beginning of Section 4.4.
4.3.2
Advantages and disadvantages
Due to the linkage of the start times ws for all lines and stages, each state change on a certain line implies a new microperiod for all production lines. Correspondingly, the structure carries the risk that a huge number of microperiods is needed and thus the model gets harder to be solved. In combination with the setup splitting, many symmetric solutions can result. Exemplarily, we suppose that the plan shown in Figure 4.8a is the optimal solution, with two different production lots on each of the three production lines. The GLSPMS needs four microperiods to find this plan (see Figure 4.8b). The resulting redundancy can directly be seen by Figure 4.8c. Another potential drawback stems from the modeling of the setup times. On the one hand, the GLSPMS allows setup time splitting and thus setup time lengths up to two
76
Chapter 4. Improvements of the GLSPMS
macroperiod t
macroperiod t
macroperiod t
(b) Four microperiods needed for two different lots on each line.
(c) Redundant solution.
line l‘ line l line k time (a) Two different production lots on each line.
Figure 4.8: High number of microperiods. macroperiods. But on the other hand, the microperiods must become correspondingly large. This could lead to high idle times because all other production lines are automatically affected by the time structure. In Chapter 7 it is shown how to cope with that situation. Models which are based on a “GLSP structure” as given in (4.23)–(4.25) are known to provide bad dual bounds (also called lower bounds for minimization problems). As one can imagine the chosen “big” M plays an important role for the tightness of the formulation because the lower this M-value, the higher the value for the setup state variable must be in the LP relaxation (as a result of the multiplication within the setup forcing constraints). Moreover, it follows that the higher the values of the setup state variables, the higher the values of the changeover variables. Accordingly, setup costs (and times) are captured more properly. Therefore, M should be as small as possible and as high as necessary (cf. Section 3.3.2.2). aj xjs ≤ M yjs yjs = 1
∀j, s
(4.23)
∀s
(4.24)
∀i, j, s
(4.25)
j
zijs ≥ yi,s−1 + yjs − 1
But even then, the LP relaxation of the GLSP shows the effect of “smearing” where many setup state variables have small values which allow production but not incur costs. This can be easily illustrated by a small example. Consider a problem instance with one line, one macroperiod, four items j = 1, ..., 4, each with a production coefficient aj = 1 as well as demand dj > 0 while neglecting setup times and capacity limitations. The corresponding GLSP instance must have at least four microperiods to allow the production of all items. We assume that for each item the big M is set to the demand value as the tightest possible value. Then a solution as shown in Table 4.2 might be the result of the LP relaxation. For each product j (table row), the yjs sum up to 1. So each demand is producible and can be fulfilled. It can be seen that small fractions got smeared over all products. Let us first concentrate on the changeover variables belonging to microperiod s = 1. By “taking” one third from product j = 4 in period s = 1, product j = 3 can be produced and the condition
4.3. Properties of the improved GLSPMS
77
yjs
s=0
s=1
s=2
s=3
s=4
j=1
0
0
j=2
0
0
0
1 3
1 3 1 3 1 3
1 3 1 3
j=3
1 3 1 3 1 3
0
0
0
1 3
j=4
1
1−
1 3
Table 4.2: Relaxed changeover variables smeared over the planning horizon. z431 ≥ 1 + 13 − 1 is fulfilled for z431 = 13 . This means only one third of the corresponding setup costs is actually incurred. Variable z441 has a value of 23 which ends up in no costs (setup state conservation). For the next periods the changeover variables z312 , z322 , and z332 can even be minimized to zero as they only need to be greater than or equal to 13 + 13 − 1 = − 13 . This effect gets even amplified if the same product is set up in several consecutive microperiods. Nevertheless, it is important to see that the primal solution can be very good, unfortunately without knowing it due to a possibly large gap to the dual bound. In spite of all these potential drawbacks, the GLSPMS shows several important advantages which significantly outweigh the disadvantages. First of all, it is the only multi-level model which includes parallel heterogeneous lines, sequence-dependent setups as well as zero lead-times. Moreover, by penalizing idle time in an appropriate manner (cbl ), it is up to the GLSPMS to decide for a period s with idle time (xbls + xels > 0) and without production ( j xljs = 0) on a certain line l, whether the setup state should be conserved (zljjs = 1) or lost (zlj0s = 1). In contrast, most models for simultaneous lot-sizing and scheduling only allow for modeling either a conservation or a loss of the setup state after idle periods. Furthermore, the synchronization capabilities allow for incorporating further scheduling aspects. In sum, the formulation can be applied for many different problem settings from the consumer goods industry. This characteristic is emphasized a little more in the next section.
4.3.3
Generalization of other models
The capability to solve different problem settings from the consumer goods industry—even with shifting bottlenecks—is supposed to be the most outstanding feature of the GLSPMS. Actually, the real-world problems underlying the models shown in Section 3.3 can be tackled in large part with the GLSPMS. To demonstrate this, it will be exemplarily shown in the following how the GLSPMS is able to solve the problem of the Brazilian soft-drink industry as described by Ferreira et al. (2009). Therefore, we will take a closer look to the P2SMM again and show that each
78
Chapter 4. Improvements of the GLSPMS
solution of this model which does not include back-logs can also be found by the GLSPMS.8 But for that purpose several data transformation steps have to be executed: First of all, production and standby costs as well as costs for external purchasing and overtime can be set to zero as they are not included in the P2SMM. Since the capacities at the first production stage (3.97) are not time but volume-based (tank capacity), the GLSPMS can model them (in the same way as the P2SMM) by the setup forcing constraints. Furthermore, we have to assure that the time structure of the GLSPMS does not unnecessarily limit this stage by the constraints (4.10). So the production coefficients alj must be adapted accordingly. As can be seen by (3.97), stocks are not allowed/possible at the first stage. Correspondingly, Ferreira et al. drop the variables for the production quantity in this stage. For the GLSPMS this can be achieved by setting the maximum inventory Ijmax = 0 for all liquid flavors. Then, it automatically follows from the inventory balance constraints that 0 = 0 + l xljs − l i∈Nj pji xlis and l xljs = l i∈Nj pji xlis . However, as becomes directly apparent from this last equation, the fact that a tank is dedicated to a certain filling line is a critical issue for the GLSPMS because the production quantities are aggregated over all tanks and bottling lines.9 An obvious workaround is to introduce “fictitious” products for each combination of tank and liquid flavor as well as bottling line and soft-drink, respectively. Then, a product is only producible on a single machine and the aggregation is annulled. But in that case, a third, also fictitious stage which comprises the “original“ soft-drinks has to be introduced additionally. On this way, the corresponding primary demand can be fulfilled via the inventory balance constraints as well. The remaining parts of the P2SMM are uncritical. The synchronization of the material flow as forced by constraints (3.105) is immediately realized by the GLSPMS with its synchronization constraints. Besides, Ferreira et al. use constraints (3.99), (3.100), and (3.101) to reduce the number of symmetric solutions by forcing idle time to appear at the end of a macroperiod. Hence, they are only meant for improving the solvability of the model and can be neglected for now. Finally, the constraints for the minimum lot-size (3.98), the setup changeovers (3.100) and (3.108), the setup forcing (3.106) and the unique setup states (3.107) are the same for the GLSPMS.
A very similar comparison can be made for the PLSP-ML-SM by Stadtler. The underlying problem might be solved by the GLSPMS as well. In the following, the first computational results for the improved GLSPMS will be shown. For the tests, three basic problem scenarios are used which illustrate at the same time the different areas of application for the GLSPMS and which will be described next.
8 Note that back-logging is quite often only used for identifying the bottleneck and is not allowed in reality. Then relaxations like overtime or purchasing as used by the GLSPMS can also serve this purpose. 9 This assumption by the authors is only meant for simplification. That is why the GLSPMS is even able to find even more realistic solutions to the original problem described by Toledo et al. (2007).
4.4. Computational tests
4.4
79
Computational tests
The GLSPMS is implemented and tested with the FICO Xpress Optimization Suite. Accordingly, Xpress Optimizer Version 20.00.22 is used as a standard MIP-solver. The test instances were run on a single core (2 threads) of a Dell Precision T1500 with an Intel Core i7-860 (2.8 GHz) processor, 8 GB RAM, and the Windows Server 2008 64bit operating system.
4.4.1
Base scenarios
Three different base scenarios with a divergent, general, and serial product structure were used (cf. Meyr (2004) and Seeanner and Meyr (2013)). They are motivated by practical problems and represent realistic situations. Even though the dimensions may differ from reality, the data allows for comparing different formulations and solution approaches. In the following the structure of these scenarios is illustrated. The complete data can be found in Appendix A. 4.4.1.1
Serial product structure (SER)
The first scenario is a three-level serial production of juices. There are two final items, a six-pack of apple juice (j = 1) and a six-pack of cherry juice (j = 2). The apple juice is filled in standard 1L bottles (j = 3), whereas other, special 1L bottles—differing in shape and texture for marketing purposes—are used for cherry (j = 4). Accordingly, in a first step two different types of PET-bottles (j = 5, 6) are produced on stretch blow molding machines. Since filling of bottles is faster than molding, two identical molding lines l = 3, 4 are needed. A schematic representation of the corresponding BOM and the assignment of products to lines is given in Figure 4.9. In the second production stage (and level e = 1 of the BOM level e=0
j=1
p31=6 level e=1
3 1
level e=2
5
2
l=1
j=1,2
l=2
3,4
6
4 1
6
l=3
5,6
l=4
5,6
Figure 4.9: BOM and product-line assignment of the serial instance. structure, respectively), the bottles are filled with the help of a single tank l = 2. Since this tank has a minimum fill level, minimum lot-sizes are required. Setup times are highly sequence-dependent due to cleansing processes. As mentioned, filling is quite fast, however,
80
Chapter 4. Improvements of the GLSPMS
WIP-stock of filled bottles is limited because of the restricted space between the filling and the wrapping machine. At the final stage (l = 1), shrink-packaging takes place where six bottles of each sort are wrapped. Due to the different types of bottles the corresponding calibration is quite time-consuming. Each macroperiod has a capacity of 80 and the demand varies between 2 and 8 units for the final items. The production costs are the same (=1) for all lines, except for line 4, which causes higher costs for maintenance reasons. The lines are already setup for products 1, 3, 5, and 6, respectively. The remaining data can be found in Tables A.1–A.14 of the Appendix.
4.4.1.2
Divergent product structure (DIV)
In this divergent scenario, sheet glass is produced in different colors and lengths on two production stages. The scenario is illustrated in Figure 4.10. At the first stage, there is a single line l = 3 producing light-colored (j = 5) and dark-colored (j = 6) glass. The production of light-colored glass is more time-consuming (a35 = 4) than the production of the dark one (a36 = 2). The setup changeover from light to dark is less complex (st356 = 2) than vice versa (st365 = 6). Both pre-products can be cut in two lengths—short and long—at the second stage. Thus, there are four final items j = 1, ..., 4 possible. Long items need twice as much of glass (p51 = p63 = 2) than short cut (p52 = p64 = 1). level e=0
2
j=1 p51=2
level e=1
1
5
3
4
2
l=1
j=1,2,3,4
l=2
2,4
l=3
5,6
1
6
Figure 4.10: BOM and product-line assignment of the divergent instance. For cutting, two parallel lines are available. The newer one l = 1 needs a11 = a13 = 3 for a long and a12 = a14 = 4 for a short item. Changeover from short to long takes 2 time units, whereas long to short only 1. Besides, a cleansing of 3 time units is needed for a change from dark to light and of 1 time unit for the reverse. The older line l = 2 is only able to produce short items in 8 units of time. On that machine a setup change from dark to light requires 4 and 2 for the reverse, respectively. Stocks are not allowed for the pre-products. The minimum lot-size is one unit. At the beginning all production lines l = 1, 2, 3 are already set up for j = 1, 2, 6. The older one causes production costs of 2 per unit, the other lines expense 1 per unit. Setup costs equal the corresponding setup times. The planning horizon consists of three macroperiods t = 1, . . . , 3. Accordingly, there are four microperiods with fixed starting times of 0, 80, 160, and 240, the last one being the artificial one. There
4.4. Computational tests
81
is only primary demand for final items varying between 2 and 6 units. All other values are listed in Tables A.15–A.28 of the Appendix. 4.4.1.3
General product structure (GEN)
A third scenario with a general product structures describes the production of yogurt. Two kinds of yogurt (j = 6 and j = 7) are filled in big and small cups (j = 5 and j = 8) resulting in four different final items j = 1, . . . , 4. In this make-and-pack environment, the cups as well as the yogurts are produced in the first stage, each of them on a dedicated production line which is shown in Figure 4.11. The cups on line l = 3 need a35 = 8 and a38 = 2. A changeover st358 from the big to the small packaging format needs 8 units of time and 6 for the reverse. Besides, after a machine breakdown (j = 0) it takes st30j = 12 to ramp up. But standby is also possible with b3 = 1. The yogurt can be produced on line l = 2 in parallel with a2j = 6. Both setups are sequence-independent (st267 = st276 = 4). level e=0
2
j=1
3
p71=1 1 level e=1
6
l=1
j=1,2,3,4
l=2
6,7
l=3
5,8
1 1
1
1
5
4 0.5
0.5
7
8
Figure 4.11: BOM and product-line assignment of the instance with a general product structure. In the second stage, the final items are filled and packed on line l = 1 using p63 = p74 = 0.5 units of yogurt for small cups, else 1. Making the yogurt on line l = 2 and filling it on line l = 1 are synchronized. Thus, building stocks for items 6 and 7 is not allowed. However, producing the cups is decoupled by an unlimited buffer. The corresponding production coefficients are a11 = a12 = 6 and a13 = a14 = 3. A changeover from big to small cups needs 8 and from small to big 6 time units, whereas changing only the yogurt flavor needs 4. All further data is presented in the Appendix (Tables A.29–A.42). These three base scenarios are varied by copying the bill-of-material structures as well as the production lines and by increasing the number of (macro)periods of demand. As shown in Table 4.3, (2 · 3 · 5 + 3 · 3 · 4 + 2 · 2 · 4 =) 82 problem instances result with 6 to 12 products, 3 to 9 lines, and 3 to 8 macroperiods. L
J
T
SER
4,8
6,9,12
4,5,6,7,8
DIV
3,6,9
6,9,12
3,4,5,6
3,6
8,11
3,4,5,6
CONV
Table 4.3: Overview of test instances.
82
4.4.2
Chapter 4. Improvements of the GLSPMS
Results with different settings of a standard MIP-solver
At first, the aim is to find out the maximum size of problem instances that can be solved to optimality. Since the regarded planning problem is typically a short-term task, the computational runtime is limited to 3600 sec. To determine the maximum solvable problem size, the number of microperiods per macroperiod10 is systematically increased until a solution keeps unchanged or none of the formulations can be solved to optimality any more.11 Besides, the impact of automatic cut generation (CG) and presolving (PR) of the standard MIP-solver is analyzed as well. Table 4.4 shows the results of different solver settings grouped by the structure of the products (serial (SER), divergent (DIV) and general (GEN)) and the problem instances’ sizes. Thereby, the size of a problem instance is defined as the number of products multiplied by the number of lines and the total number of microperiods (J × L × S). Each column presents a different combination of settings, where presolving is switched on (PR=1) and off (PR=0) and cut generation is switched on (CG=1) and off (CG=0), respectively. The first entry represents the percentage of instances solved to optimality within 3600 sec. (PS). Note that due to the external purchase-relaxation all instances are solvable. Since some solver settings perform better than others, the second entry is the percentage of performing best (PB). That means, for example, 39% of all instances with a serial product structure and a size greater than 500 can be solved to optimality when presolving and cut generation is enabled. This solver setting combination performs best in 44% of all instances. If cut generation is switched off, the MIP-solver performs best for 31% of this group of problems. As there are instances that are solved in the same amount of time (seconds with an accuracy of one digit after the decimal point) but with different settings, the percentages do not need to sum up to 100. Across all three product structures, the optimizer performs best when the default settings for presolving and cut generation (1+1) are used. Accordingly, the highest number of instances can be solved with them (64% on average). Only for small problem variants (J × L × S ≤ 250) cut generation seems to reduce the performance. “Big” problems (> 500; for instance, J = 12, L = 3, T = 4 with six microperiods each) cannot be solved at all except for the serial structure. Their share is relatively high with 32% on average. So there seems to be some significant difference depending on the product structure. In summary, we have to state that the capabilities of standard MIP-solvers like Xpress are not sufficient to solve the GLSPMS exactly—at least with the current formulation. However, as shown in Figure 4.12 feasible solutions can be found quite fast, even for “big” instances, and most of the computational time is spent for improving the lower bound. That is why 10 Note that we use the same number of microperiods for each macroperiod and thus the total number of microperiods (S) is calculated as number of macroperiods (T) multiplied with “microperiods per macroperiod”. 11 Due to the external purchase-relaxation all instances are solvable.
4.4. Computational tests
PR+CG
83
1+1
1+0
0+1
0+0
average
J×L×S
PS
PB
PS
PB
PS
PB
PS
PB
PS
SER
1- 250 251 - 500 > 500
100 93 39
7 50 44
100 83 31
50 27 31
100 87 33
0 17 22
100 70 25
43 7 3
100 83 32
DIV
1 - 250 251 - 500 > 500
100 56 0
24 40 33
100 52 0
62 19 33
100 42 5
3 27 19
97 29 0
12 15 24
99 45 1
GEN
1 - 250 251 - 500 > 500
100 54 0
12 23 43
100 62 0
71 31 0
100 46 0
12 27 29
100 31 0
6 19 29
100 48 0
average PS
64
61
58
50
Table 4.4: Percentage of test instances solved to optimality in 3600 sec. (PS) and percentage of instances performing best (PB) with solver settings “presolving” (PR) and “cut generation” (CG) set on (1) and off (0).
Figure 4.12: Progression of the upper and lower bound for the divergent instance with L=3, J=12, T=5, and S=30.
84
Chapter 4. Improvements of the GLSPMS
it seems worth checking whether reformulation techniques can strengthen the above model formulation of the GLSPMS and improve the solution performance. Therefore, in the next chapter a couple of well-known reformulation techniques, which have been proven successful to tighten other dynamic lot-sizing problems, are adapted to the GLSPMS.
Chapter 5 Reformulations of the improved GLSPMS Section 4.2 showed that a standard MIP-solver is not able to solve mid-sized instances of the improved GLSPMS to optimality within 1h of runtime. But as mentioned in Chapter 3, the way of formulating a model has impact on the performance of a solver. Accordingly, this chapter which is based on the results presented by Seeanner and Meyr (2013) will examine, whether it is possible to solve the problem instances exactly by “reformulating” the GLSPMS. Hence, Section 5.1 will first explain some general reformulation techniques, before, in particular, selected approaches for lot-sizing and scheduling models will be introduced in Section 5.2. Afterwards, these approaches will be adapted for the GLSPMS in Sections 5.3 and 5.4, respectively. To end up this chapter, Section 5.5 will give the computational results of the developed reformulations.
5.1
General reformulation techniques
The improved GLSPMS model is a formulation for the set of all feasible solutions to the regarded multi-level lot-sizing and scheduling problem (cf. Pochet and Wolsey, 2006, p. 79). But there are also other formulations, which describe the same set of solutions as well. This fact can be illustrated by the following small example: We suppose a pure-integer-program with two variables x and y. The feasible solutions which build the feasible set X are highlighted as solid points in Figure 5.1. Obviously, the convex sets P1 and P2 both are valid formulations as they contain all feasible solutions but no infeasible ones. However, they are of different quality because P1 is a better formulation than P2, as P1 ⊂ P2. Since the performance of a standard MIP-solver strongly depends on the quality of the formulation used, “reformulations” of the GLSPMS need to be checked whether they allow reducing the computational burden (cf. Pochet and Wolsey, 2006, p. 93). As also shown in Figure 5.1, the best formulation is the convex hull formulation conv(X).
F. Seeanner, Multi-Stage Simultaneous Lot-Sizing and Scheduling, Produktion und Logistik, DOI 10.1007/978-3-658-02089-7_5, © Springer Fachmedien Wiesbaden 2013
86
Chapter 5. Reformulations of the improved GLSPMS
Figure 5.1: Different formulations for the regarded problem. It even allows to solve the integer problem as an LP, since all extreme points of conv(X) belong to X. But finding the convex hull is a very hard problem as well (cf. Pochet and Wolsey, 2006, pp. 93–94). Nevertheless, it is generally a good idea to use a formulation as tight as possible. There are two general ways to obtain a tighter formulation. On the one hand, extended reformulations make use of redefined and/or additional variables (plus adapted constraints) which give a tighter description of the problem. A common way to get an extended formulation for an optimization problem is to “reformulate” it as another (combinatorial) one. This approach is also widespread for dynamic lot-sizing problems and will be illustrated in the next section. On the other hand, a formulation can also be improved by using additional linear constraints (valid inequalities). As illustrated in Figure 5.2 a valid inequality/cut is a constraint which eliminates part of the (initial) solution space and which is fulfilled by all solutions in X (cf. Pochet and Wolsey, 2006, p. 95).
Figure 5.2: Valid inequality for the regarded problem. In the following, a few selected reformulation techniques will be explained which have been successfully applied for lot-sizing and scheduling models in past.
5.2. Selected approaches for lot-sizing and scheduling models
5.2
87
Selected approaches for lot-sizing and scheduling models
To begin with extended reformulations, this section will explain the Simple Plant Location, the echelon stocks and the network flow formulation. Afterwards, the so-called (l,S)inequalities will be described.
5.2.1
Extended reformulations
The first extended reformulation which will be presented in this section is the Simple Plant Location (SPL) reformulation (cf. Krarup and Bilde, 1977; Rosling, 1986). It belongs to the mostly used reformulations for lot-sizing (and scheduling) problems (cf. Jans and Degraeve, 2007).1 Afterwards, the basic concept of echelon stocks will be explained. Moreover, the idea of reformulating a lot-sizing problem as a network flow problem will be illustrated.
5.2.1.1
Simple Plant Location (SPL)
Given a set of potential plant locations as well as fixed customer locations, the Simple Plant Location problem2 is about how to satisfy customer demands while minimizing costs. These costs consist of fix costs for opening such facilities on the one hand, and transportation costs for delivering a certain customer from a certain facility on the other hand (cf. Daskin, 1995, Chapter 7). The basic idea of the SPL reformulation is to interpret an item/period combination as a plant location. Then, the opening of a facility is similar to setting up a machine for production in a certain period. Furthermore, the demand of subsequent periods can be interpreted as customer demand. Hence, the transportation costs correspond to holding costs. Accordingly, we obtain a Simple Plant Location (SPL) problem as illustrated in Figure 5.3. In this example, variable xjsτ describes the quantity of item j which is produced in period s and meets the demand of period τ ≥ s. The transportation costs for the relation between facility location s and customer τ equal the holding costs for keeping the items τ − s periods in stock. Obviously, the SPL approach needs no variables for the inventory stocks, as xjsτ already carries the information, how many items of product j are kept in stock and how long. 1 Besides, the Shortest Route (cf. Eppen and Martin, 1987) and the Multi-Commodity Flow reformulation (cf. Pochet and Wolsey, 1995) are often applied for lot-sizing problems as well. But as Jans and Degraeve (2007) state these formulations produce the same lower bound for the single-level CLSP and can be transformed to each other, respectively. Denizel et al. (2008) even prove that Simple Plant Location and Shortest Route give the same LP bound for the CLSP with setup times. Since the same observation is made by Stadtler (1996) for the multi-level CLSP, we only concentrate on the SPL formulation in this thesis. 2 This problem is also called Warehouse Location Problem or (Uncapacitated) Facility Location Problem.
88
Chapter 5. Reformulations of the improved GLSPMS period s+1
period s,τ setup
yjs
production xjsτ
demand
period s+2
yj,s+1
yj,s+2
dj,τ+1
dj,τ+2
xjs,τ+1
djτ
Figure 5.3: Simple Plant Location problem. 5.2.1.2
Echelon Stocks
The concept of echelon stocks is very important for multi-level modeling as it allows decomposing the single levels (cf. Clark and Scarf (1960) and Afentakis et al. (1984) among others). The echelon stock Ejs is defined as the total quantity of product j in the whole system (as item or as component of a successor product) in period s (cf. Pochet and Wolsey, 2006, p. 396). The corresponding mathematical definition is given in (5.1), where again the index set Nj+ contains all direct and indirect successor products of j. From this definition follows that the inventory stock variables Ijs can be substituted according to (5.2).
Ejs :=Ijs +
pji Iis = Ijs +
i∈Nj+
Ijs =Ejs −
(5.1)
pji Eis
i∈Nj
(5.2)
pji Eis
i∈Nj
This substitution has also impact on the objective function. However, as can be seen in (5.3), the resulting expression can be simplified by adapting the cost values. There fore, the successor-oriented expression j i∈Nj pji Eis hjs only needs to be transformed to a predecessor-oriented j i∈Vj pij Ejs his . This transformation becomes apparent by looking at the arcs of a gozinto graph.
j,s
Ijs hjs =
j,s
⎛ ⎝Ejs −
i∈Nj
⎞ pji Eis ⎠ hjs =
j,s
⎛ Ejs ⎝hjs −
i∈Vj
⎞ pij his ⎠ =:
Ejs hm js (5.3)
j,s
These new values are marginal holding costs hm js which describe the value added at the regarded production stage by processing the needed components to one piece of product j.
5.2. Selected approaches for lot-sizing and scheduling models
89
It is intuitive to “value” the echelon stocks in this way, since it cannot be seen from Ejs
2
j=1
1
p51=2
j=1 j=2 j=5
5 Figure 5.4: Product structure of the divergent base scenario (see Section 4.4.1.2).
Ijs
hjs
Ejs
hm js
12 2 5
3 3 1
12 2 31
1 2 1
Table 5.1: Holding stocks and costs as well as echelon stocks and marginal holding costs.
whether j has already been processed on further production stages. To illustrate now the new calculation of holding costs, we assume the product structure given in Figure 5.4 as well as inventories stocks and holding costs given in Tab. 5.1. Since product 5 is part of product 1 and of product 2, the echelon stock of 5 in the regarded period s is 5 + 12 · 2 + 2 · 1 = 31. The echelon stocks of the final products equal the inventory stocks. However, the holding cost values for these products differ. Since, e.g., the inventory holding costs for product 1 are partly covered by the holding costs of the pre-product 5, the additional value of product 1—and thus the marginal holding costs—is 3 − 2 · 1 = 1. As can be seen now, j Ijs hjs = 12 · 3 + 2 · 3 + 5 · 1 = 47 and j Ejs hm js = 12 · 1 + 2 · 2 + 31 · 1 = 47 are the same. 5.2.1.3
Flow conservation for changeovers
The above mentioned reformulations refer to the “inventory holding” and “production” variables. In contrast, Karmarkar and Schrage (Karmarkar and Schrage, 1985, p. 330) propose to reformulate the “setup” variables (cf. Wolsey, 1997, p. 158). This approach can be illustrated by the following example: We assume a single production line, four different products
j=1 j=2
y10=1
j=1
y20=0
j=3
j=3
j=4 s=0
z141=1
j=2
j=4 s=1
s=2
s=4
s=3
(a) Unique setup state.
time
s=0
s=1
s=2
s=3
s=4
time
(b) Unique changeover.
Figure 5.5: Network flow problem. j = 1, ..., 4, and four periods s = 1, ..., 4. In scheduling models, each setup state yjs is unique as illustrated by the solid nodes of a possible model solution in Figure 5.5a. Due to that, the changeover zijs must be unique as well (a single arc between two consecutive periods as
90
Chapter 5. Reformulations of the improved GLSPMS
shown in Figure 5.5b). Karmarkar and Schrage make use of this property. If a changeover from product i to product j is executed in period s, a changeover in period s + 1 has to start from product j consequently. This relationship can be expressed by the network flow condition (5.4).
zij,s−1 =
i
∀j, s > 0
zjis
(5.4)
i
With the help of this flow conservation, the setup state variables yjs can be substituted by i zijs . 5.2.1.4
Elimination of the inventory stock variables
Due to the direct link between inventory stock, production quantity, and demand, it is possible to drop the inventory stock variables. Since production quantities and demand values suffice to calculate the stock levels, the recursion of the inventory balance constraints can be eliminated as shown in equation (5.5). Ijs = Ij0 +
s
xjτ −
τ =1
s
djτ −
τ =1
s
(5.5)
pji xiτ
τ =1 i∈Nj
Then, each occurrence of Ijs can be substituted accordingly. However, the non-negativity constraints (5.6) still have to be considered. From these constraints and from the substitution, it follows that constraints (5.7) must hold.
Ij0 +
s τ =1
xjτ −
s τ =1
djτ −
s
Ijs ≥ 0
∀j, s
(5.6)
pji xiτ ≥ 0
∀j, s
(5.7)
∀j, s
(5.8)
τ =1 i∈Nj
Ij0 +
s τ =1
xjτ ≥
s τ =1
djτ +
s
pji xiτ
τ =1 i∈Nj
By rearranging the terms of (5.7), the new constraints (5.8) result. As can be seen, these new constraints force the cumulated production quantities to be always sufficient for meeting the cumulated primary and secondary demands.
5.2.2
Valid inequalities
In the literature, different valid inequalities (cuts) for a variety of lot-sizing problems can be found (cf. Pochet and Wolsey, 2006). One well-known and successfully applied class of those cuts are the (l,S)-inequalities. They have been proposed by Barany et al. (1984) who regard an uncapacitated single-item problem with s, τ = 1, ..., S periods where production enforces
5.3. Extended reformulations of the GLSPMS
91
a corresponding setup. Production quantities are denoted as xs and production setups as ys . Moreover, dynamic demand ds is considered as part of cumulated demands Dsτ = τσ=s dσ . Barany et al. prove that constraints (5.9) are valid inequalities for the problem at hand. s∈S
xs +
Dsτ ys ≥ D1τ
∀τ, T = {1, . . . , τ }, S ⊆ T
(5.9)
s∈T \S
These inequalities enforce that in order to fulfill the cumulated demand D1τ of periods 1 to τ , a sufficient quantity xs must be produced in a subset of these periods (S) if the machine is not set up in the complementing set of periods (T \ S). But if there is a setup in a period s belonging to T \ S, then it must be assumed that a quantity is produced which might fulfill the demand of all consecutive periods up to period τ . Hence, Dsτ is used as the corresponding coefficient.3 Since the regarded problem is part of most of the lot-sizing problems, these (l,S)-cuts can be often directly applied (or with slight modifications). This is also true for the GLSPMS. Hence, Section 5.4 will introduce an adapted version of the (l,S)-inequalities.
5.3
Extended reformulations of the GLSPMS
As mentioned before, the reformulation approaches presented in Section 5.2 are now to be applied to the GLSPMS. To begin with the extended reformulations, an SPL as well as a network flow formulation will be introduced next (q.v. Seeanner and Meyr, 2013).
5.3.1
SPL formulation (S)
The following SPL formulation is based on the reformulation of the MLCLSP presented by Stadtler (1996). As Section 5.2.1.1 showed, SPL allows dropping the inventory stock variables. Hence, the inventory balance constraints can be eliminated as well. However, the additional constraints (5.8) shown in Section 5.2.1.4 still need to be considered for pre-items to ensure the fulfillment of secondary demand in time. Another specialty of the MLCLSP reformulation by Stadtler is that the production variables do not describe the total production quantities which are needed for “target” demands but fractions of these demands. Hence, secondary demand needs to be a fraction as well. That is why Stadtler makes use of total (net) demands (cf. Section 3.3.2.2) and the concept of echelon stocks. This approach will be applied to the GLSPMS, too. While using the same data, indices, index sets, and variables as in Section 4.2, the resulting reformulation of the GLSPMS (q.v. Seeanner and Meyr, 2013) looks as follows:4 3 4
Note that these inequalities are called (l,S) because in the notation of the authors l = τ and S = S. The numbers of the unchanged constraints compared to the improved formulation in Section 4.2.2 are
92
Chapter 5. Reformulations of the improved GLSPMS
Indices σ, τ u, ρ
= 1, ..., S microperiods = 1, ..., T macroperiods
Index set Nj+
set of all direct and indirect successors of product j
Data hm js dnjs ft
marginal holding costs of product j in period s net demand of product j in microperiod s first microperiod of macroperiod t
Variables xljsτ ≥ 0 x ljsτ ≥ 0 xljsτ ≥ 0
fraction of dnjτ which is produced on line l during microperiod s(≤ τ ) share of xljsτ that can be used by successors in the same microperiod s share of xljsτ that can (as WIP-stock) first be used by successors in the following microperiod s + 1 so that (5.12) and (5.13) hold fraction of dnjτ which is externally purchased in microperiod s
ejsτ ≥ 0
Objective function
Min
T u−1 T −1 j>0 t=1 u=t+1 ρ=t
+
hm j,fρ+1 −1
+
l,i,j,s
l
hjs · max 0, Ij0 −
slij zlijs +
dnjτ xljsτ
s∈St τ ∈Su s
djτ
+
τ =1
j>0 s∈Λ
S l,j,s τ =s
cplj dnjτ xljsτ +
T u−1 T −1 j
l,s
b
hj,fρ+1 −1
cl xbls + xls +
dnjτ ejsτ
s∈St τ ∈Su
t=1 u=t+1 ρ=t
e
S j,s τ =s
cej dnjτ ejsτ +
co · o s
s
(5.10) subject to ws = w s x ljsτ + xljsτ = xljsτ
marked with an asterisk again.
∀s ∈ Φ (5.11*) ∀l, j, s, τ ≥ s
(5.12)
xljss = 0
∀l, j, s
(5.13)
xljsτ ≤ yljs
∀l, j, s, τ ≥ s
(5.14)
5.3. Extended reformulations of the GLSPMS τ s=1
l
Ij0 +
S σ l
xljsτ +
τ
i∈Nj+
s=1
τ dniτ e =1 n isτ d s=1 jτ
∀j, τ : dnjτ > 0
(5.15)
pji dniτ xlisτ
∀j > J0 , σ
(5.16)
djτ ≤ Ijmax
∀j, σ
(5.17)
dnjτ ( xljsτ + xlj,s−1,τ )
S σ
ejsτ dnjτ ≥
s=1 τ =s σ S l
pji
s=1 τ =s
+ Ij0 +
ejsτ +
93
djτ +
τ =1
dnjτ xljsτ +
s=1 τ =σ+1
−
σ
l,i∈Nj s=1 τ =s
S
dnjτ ejsτ
τ =σ+1
σ S l
S σ
i∈Nj+
dniτ xlisτ pji −
s=1 τ =σ+1
σ τ =1
xbl1 =
stlij zlij1
∀l (5.18*)
stlij zlijs
∀l, s ≥ 2 (5.19*)
i,j
xel,s−1 + xbls =
i,j
xbls + xls +
S j
alj dnjv xljsv + xels + xels = (ws+1 − ws ) + os
∀l, s
(5.20)
∀l, j, s
(5.21)
v=s S
dnjτ xljsτ ≥ mlj (yljs − ylj,s−1 )
τ =s
yljs = 1
∀l, s (5.22*)
yljs = 0
∀l, j ∈ / Jl , s (5.23*)
zlijs ≥ yljs + yli,s−1 − 1 zlijs = 1
∀l, i, j, s (5.24*)
j
∀l, s (5.25*)
i,j S
xljsτ = 0
∀l, s ∈ / Πl
(5.26)
dnjτ ejsτ ≤ emax j
∀j, s
(5.27)
j=0 τ =s S τ =s
xbls S
+
xbls
≥
xbks
+
xbks
os ≤ omax
∀s ∈ Λ (5.28*)
os = 0
∀s ∈ / Λ (5.29*)
− wS+1 (2 − yljs − ykis ) ∀s, (k, i, l, j) ∈ D (5.30*)
aki dniτ x kisτ + xeks + xeks ≥ xels + xels − wS+1 (2 − ykis − yljs ) ∀s, (k, i, l, j) ∈ D
(5.31)
τ =s+1
In the first two rows of the new objective function (5.10) the inventory holding and WIP-stock
94
Chapter 5. Reformulations of the improved GLSPMS
costs are calculated. Therefore, we differentiate between three different kinds of “inflow” to the stock. The first term refers to the production quantities which are determined by multiplying the production ratios by the net demand. In contrast to the GLSPMS formulation in Section 4.2.2, the WIP costs are directly included here as the total shares xljsτ are considered. Since items which are in stock from macroperiod t to u incur (marginal) holding costs in macroperiods t, ..., u − 1, the sum over all these macroperiods has to be taken. The second term is necessary, because for the starting inventories the full holding costs have to be charged as long as they are available. And finally, there might be items in the stock which are externally purchased. These may also incur holding costs. The other terms on the third line of the objective function (5.10)—setup, production, and standby costs as well as costs for purchasing and overtime—are analogous to the original objective (4.1), but use the demand fractions. Since production quantities now carry the information how long they are stored, neither are the inventory variables Ijs nor the inventory balancing constraints (3.79) needed any longer. Holding costs can be directly calculated using xljsτ and the marginal holding cost values. Fractions ejsτ for external purchasing also need two time indices s and τ because it might be necessary to buy and process a pre-product earlier than its corresponding final item is needed. Thus, costs for external purchasing and constraints (5.27) have to be adapted analogously. Constraints (5.12) allow the quantity splitting, whereas constraints (5.13) forbid that the WIP-stock is used in the same period. Moreover, constraints (5.14) enforce the needed setups. As shown at the beginning of this section, it has to be ensured that primary demands are fulfilled and pre-products are produced on time. Therefore, constraints (5.15) enforce that the production fractions sum up to 100% where the external purchase has to be considered as well—also of successor products because purchasing them reduces secondary demand. However, we can restrict ourselves to products and periods with a positive net demand. Additionally, constraints (5.16) replace Ijs ≥ 0 as illustrated above. They guarantee that cumulated supply of pre-products equals or exceeds their cumulated demand for each microperiod σ, i.e. initial inventory plus the total production or external purchase for net demand up to σ is not lower than the—up to the same period—total original gross demand and secondary net demand, which has been induced by production. It is interesting to note that the one-period lead-time of the variables x has to be taken into account (xlj0τ = 0 ∀l, j, τ if Ij0 also includes the WIP-stock) when calculating the overall production quantity of pre-product j that is available to fulfill demand of microperiod τ on the left-hand side of (5.16). Since the inventory stock variables are dropped, constraints (5.17) have to be adapted analogously to (5.16). Note that variables xljsτ could be eliminated by replacing them with (5.12) in the respective constraints. They are only introduced for improving readability. The remaining constraints for minimum lot-sizes (5.26) and for periods without production (5.27) as well as the second group of synchronization constraints
5.4. Valid Inequalities for the GLSPMS
95
(5.31) must be aligned to the new variables, too.
5.3.2
Flow formulation (F)
As shown in Section 5.2.1.4, the flow conservation constraints can be used for all production lines. Hence, by introducing (5.32), constraints (3.88) (or (5.24*)) can be eliminated:
zlij,s−1 =
i
∀l, j, s > 0
zljis
(5.32)
i
Furthermore, the setup state indicators yljs in the remaining constraints are substitutable by i zlijs . Since both variants—the Simple Plant Location and the network flow for the changeovers—are applicable, four different extended reformulations are considered in the following: original (O), Simple Plant Location (S), flow for changeover (F), and its combination (SF).5
5.4
Valid Inequalities for the GLSPMS
This section shows two different groups of valid inequalities for the GLSPMS. First, an adapted subset of the (l,S)-inequalities will be presented. And second, the setup forcing constraints will be tightened up.
5.4.1
Stock inequalities (K)
In Section 5.2.2 the (l,S)-inequalities were introduced. Constraints (5.33) represent a subset of these inequalities which are adapted for the GLSPMS. If there is no setup for an item for several periods (s+1, ..., τ ), the stock level in period s must equal or exceed the corresponding cumulative demand in these periods. For the GLSPMS, it means that also the WIP-stock in microperiod s and the purchased quantity of microperiods s + 1, ..., τ have to be taken into account:
Ijs +
l
xljs +
τ σ=s+1
ejσ ≥
τ σ=s+1
djσ ·
1−
σ
zlijϑ
∀j ≤ J0 , s < S, τ > s : djτ > 0
l,i ϑ=s+1
(5.33) These inequalities can be adapted and limited to (inventories at the end of) macroperiods t because positive demand can only occur during the last microperiod of a macroperiod, i.e. 5
Original here means the improved model as it was introduced in Section 4.2.2.
96
Chapter 5. Reformulations of the improved GLSPMS
djs = 0 for s ∈ / Λ (see Section 3.3.4.1). However, since the SPL formulation is based on echelon stocks, the (l,S)-inequalities can be applied for all products at all stages. Accordingly, constraints (5.34) enforce that if there is no setup, all fractions that are produced or externally purchased (directly or already built in externally purchased successor items) must sum up to 1.
⎛
s
τ
ϑ=1 σ=s+1:dn jσ
⎞ dniσ ⎜ ⎟ xljϑσ + ejϑσ + pji n eiϑσ ⎠ ≥ ⎝ d jσ + >0 l τ
i∈Nj
1−
σ=s+1
5.4.2
σ
∀j, s < S, τ > s : dnjτ > 0
zlijϑ
(5.34)
l,i ϑ=s+1
Tighter setup forcing constraints (M)
As illustrated in Chapter 3, lot-sizing models need setup forcing constraints to connect binary and continuous variables. Often, a good choice of the “big-M” increases notably the lower bound of the LP relaxation and thus reduces computational runtime. Since this value represents an upper bound for the production quantity, a widely spread approach is to define M as the minimum of accumulated remaining demand and available capacity in the current period divided by the production coefficient (see also Section 3.3.2.2): xljs ≤ min
S Kt n , d alj σ=s jσ
·
zlijs
∀l, j, t, s ∈ St .
(5.35)
i
In the following, (K) denotes the stock-inequalities (5.33)–(5.34) and (M) the valid inequalities (5.35) for the big-M variant, respectively.
5.5
Computational results
The previous chapter analyzed the maximum solvable problem size of the artificial instances as well as the impact of different solver settings like “automatic cut generation” and “presolving” of the standard MIP-solver. The corresponding tests have shown that the default solver settings perform best on average. Thus, they are used for all experiments in the remainder of this thesis.
5.5. Computational results
5.5.1
97
Comparison of the different model formulations
In the current section, the extended formulations “Flow Conservation” (F), “Simple Plant Location” (S) and their combination (SF) are compared with the original formulation (O) of Section 4.2.2, each with the stock inequalities (K) and valid inequalities for the bigM variant (M) of Section 5.4 potentially being added. According to the observations of Section 4.4.2, the test instances are differentiated by the three groups of size. Group G1 contains all instances with J × L × S ≤ 250, G2 with 250 < J × L × S ≤ 500, and G3 with J × L × S > 500. The results are shown in Table 5.2. -
M
K
M+K
average
PS
IG
AR
PS
IG
AR
PS
IG
AR
PS
IG
AR
PS
IG
AR
G1
O F S SF
100 100 100 100
126 127 41 71
13 19 13 15
100 100 100 100
73 65 50 65
13 11 9 14
100 100 100 100
69 67 41 58
11 18 11 14
100 100 100 100
54 50 46 51
12 25 12 14
100 100 100 100
80 77 44 61
12 18 11 14
G2
O F S SF
72 71 72 70
54 49 34 44
477 424 415 480
72 75 73 74
49 42 38 45
417 430 371 463
67 68 70 68
41 36 33 40
545 428 448 412
74 73 75 75
40 34 37 39
558 468 506 506
71 72 73 72
46 40 36 42
499 438 435 466
G3
O F S SF
22 30 27 30
4 4 3 4
349 451 976 414
27 37 29 33
7 4 4 6
634 732 513 565
25 38 25 35
4 6 3 6
603 927 709 678
27 44 25 35
7 6 3 4
568 860 487 597
25 37 27 33
6 5 3 5
546 763 671 569
average
O F S SF
66 68 68 68
80 76 34 50
269 261 309 280
68 72 69 70
54 46 39 48
273 308 239 297
65 69 66 68
49 44 33 43
322 336 291 285
69 73 69 71
42 35 37 39
336 363 302 324
67 70 68 69
56 50 36 45
300 317 285 297
Table 5.2: Percentage of test instances solved to optimality in 3600 sec. (PS), the corresponding integrality gap (IG), and the average runtime (AR) in sec. for the original formulation (O), the extended formulations “flow conservation” (F), “Simple Plant Location” (S), and their combination (SF)—possibly complemented by stock inequalities (K) and big-Minequalities (M). The first column (PS) describes the percentage of instances that are solved in 3600 sec. to - LP relaxation optimality. For those instances, the percentage integrality gap = optimal solution × LP relaxation 100 can be measured, which is given in the second column (IG). The quality of the different formulations is evaluated by inspecting the IG, since the LP relaxation describes the tightness of the formulation: the smaller the gap within the same group of instances, the better the formulation. In the third column the average runtime (AR) of the solved instances is presented (sec.). Interestingly, the Simple Plant Location formulations (S, SF) produce better IG values (36 and 45% on average) than are possible when using the original formulation or F standalone (56 and 50% on average). These observations coincide with the results of Denizel and Süral (2006) who regarded the CLSP with setup times. If S is not applied, the IG can at least be improved by adding the big-M inequalities M (e.g., for O and F the IG can be reduced
98
Chapter 5. Reformulations of the improved GLSPMS
from 80 to 54% and from 76 to 46% when not using K, and from 49/44% to 42/35% when using K). Unfortunately however, they do no make it possible to solve more instances. The percentage of instances PS that can be solved to optimality within the time limit almost stays the same regardless of the type of formulation used (67–70% on average). What can also be seen is that for the Simple Plant Location formulation (S) the big-M inequalities produce higher integrality gaps (raise from 34 to 39%). The plain explanation is that constraints (5.14) are tighter than the corresponding adapted constraints (5.35). As expected, less instances can be solved to optimality when the problem sizes increase. Within group G1 all problem instances can be solved within the one hour time limit (PS = 100). This share reduces to an average of 25–37% within group G3. Within the groups G1 and G2 the values of PS are quite independent from the chosen formulation. However, for the big instances within G3, the flow formulation F performs significantly better than the others (e.g., 37 compared to 25% of the original formulation). But obviously, only those G3 instances which have a small IG can be solved to optimality at all. Concerning the valid inequalities, it can be stated that it is always advantageous to use the big-M-inequalities. The PS-values of column “M” are never worse than the corresponding ones of column “-”. The same holds true when comparing columns “M+K” and “K”. All in all the combination M+K performs best with respect to the number of optimally solvable instances PS. To complete the picture, Table 5.3 also shows different performance indicators for the problem instances that have proven to be too difficult to be solved to optimality within the time limit. The first column PU—showing the percentage number of unfinished problems— complements the PS column of Table 5.2. Correspondingly, group G1 is dropped since all instances of this group have been solved to optimality. For all other instances, the percentage duality gap (DG) after 3600 sec. is shown, where the duality gap is measured - best lower bound × 100. It gives an idea about the worst case quality of the best as best solution best lower bound (feasible) solution found after one hour. Interestingly, the duality gaps DG decrease while the problem sizes are increasing from G2 (21–28%) to G3 (14–18%). This appears counterintuitive at the first sight. But one has to keep in mind that—because of their smaller size— within the one hour time limit more than twice the number of G2-instances have been solved to optimality as compared to G3-instances. Thus, after one hour only the 27–29% “hard” instances of the middle-size class G2 remain, which have a quite high DG. The larger instances of class G3 need longer computation times anyway. Accordingly, after one hour also some “easier” problem instances are left which already show a rather low DG. Moreover, the S formulations offer preferable duality gaps (the DGs of S are never higher than the ones of O; the same holds true for SF and F), even though the percentages of unfinished instances PU might be higher (F and SF for G3).
5.5. Computational results
99
-
M
K
M+K
average
PU
DG
PU
DG
PU
DG
PU
DG
PU
DG
G2
O F S SF
28 29 28 30
31 30 26 24
28 25 27 26
27 24 24 18
33 32 30 32
25 23 25 21
26 27 25 25
28 20 25 20
29 28 27 28
28 24 25 21
G3
O F S SF
78 70 73 70
15 18 14 16
73 63 71 67
17 18 13 15
75 62 75 65
17 18 14 17
73 56 75 65
14 18 13 15
75 63 73 67
16 18 14 16
average
O F S SF
34 32 32 32
21 22 19 19
32 28 31 30
21 20 18 16
35 31 34 32
20 20 18 18
31 27 31 29
19 19 18 17
33 30 32 31
20 21 18 18
Table 5.3: Percentage of instances that are unfinished after 3600 sec. (PU) and the corresponding duality gap (DG) for the original formulation (O), the extended formulations “flow conservation” (F), “Simple Plant Location” (S), and their combination (SF)—possibly extended by stock inequalities (K) and big-M-inequalities (M).
5.5.2
Influence of varying problem characteristics
So far the instances have only been examined in terms of their size. But it might also be important to learn about the impact of the underlying product structure or other characteristics of the test instances like the utilization rate, the time-between-orders, and the relation between setup costs and setup times. For this reason, Table 5.4 shows the same results as Table 5.2, but now grouped by the product structure. Indeed, three main effects can be seen: first, the big-M variants M and M+K are still preferable (best value per model formulation is marked in italics). Usually, M+K performs best, but especially for divergent product structures, M also shows very good results. Second, the integrality gap of the serial instances is very low compared to the other product structures (between 5 and 9% on average). In fact, almost all instances of group G3, which have been solved to optimality according to Table 5.2, actually show a serial product structure. Thus, divergent and general problem structures seem to be significantly more difficult than serial ones. And third, the flow formulation is beneficial for serial and general product structures. The PS values of F outperform O and the PS values of SF outperform S for these kinds of problems. In most cases F again seems preferable to SF. However, the situation is different for the divergent instances. Here, F seems to be rather counterproductive and S performs best (followed by O). Summing up, the flow formulation F in combination with both valid inequalities M+K performs best for the serial instances (88%) and for the general instances (78%). On the contrary, F is rather disadvantageous for divergent product structures. Here, the Simple Plant Location formulation S—again using the extension of M+K—is superior (66%). In accordance with these results, the potential influence of the other problem charac-
100
Chapter 5. Reformulations of the improved GLSPMS
-
M
K
M+K
average
PS
IG
AR
PS
IG
AR
PS
IG
AR
PS
IG
AR
PS
IG
AR
SER
O F S SF
70 78 74 78
11 11 5 9
176 192 373 250
73 84 75 79
9 8 6 8
222 291 165 187
73 83 73 79
7 7 5 7
286 352 324 275
74 88 74 83
6 6 6 7
205 335 258 306
72 83 74 79
9 8 5 8
223 295 279 255
DIV
O F S SF
63 60 64 58
124 121 58 92
375 409 342 327
64 62 65 63
95 85 66 87
352 385 345 439
59 56 62 58
92 87 57 79
388 307 339 325
64 59 66 61
75 69 64 73
480 348 398 337
62 59 64 60
96 91 61 83
399 363 356 358
GEN
O F S SF
68 70 66 72
110 111 37 54
223 123 131 253
68 72 66 72
54 48 46 48
208 202 163 237
66 74 66 72
44 46 37 45
263 352 140 239
70 78 66 74
41 37 39 41
289 436 185 335
68 74 66 73
62 59 40 47
246 283 154 267
average
O F S SF
66 68 68 68
80 76 34 50
269 261 309 280
68 72 69 70
54 46 39 48
273 308 239 297
65 69 66 68
49 44 33 43
322 336 291 285
69 73 69 71
42 35 37 39
336 363 302 324
67 70 68 69
56 50 36 45
300 317 285 297
Table 5.4: Percentage of test instances solved to optimality in 3600 sec. (PS), the corresponding integrality gap (IG), and the average runtime (AR) in sec. for all formulations—now grouped by the product structure. teristics is examined with the help of the two “best” formulations F+M+K and S+M+K. To see the impact of the utilization rate, the capacity (cap) of the instances is reduced by 20% (w¯scap := 0.8w¯s ∀s ∈ Φ). The time-between-orders (tbo) is supposed to be a second factor. Therefore, the setup costs are doubled (stbo lij := 2slij ∀l, i, j) so that holding inventory becomes more attractive and larger lot-sizes are to be expected. Finally, since setup costs and times are the same for the current instances, the setup costs are “inverted” (setup). This means that for each line the setup cost for the most expensive changeover is the cheapest, the second most expensive is now the second cheapest, and so on := maxi,j {slij } + mini,j {slij } − slij ∀l, i, j = i with ali > 0 and alj > 0). Thus, setup (ssetup lij costs and setup times are not proportional any longer.
normal
cap
tbo
setup
PS
IG
AR
PS
IG
AR
PS
IG
AR
PS
IG
AR
SER
F+M+K S+M+K
88 74
6 6
335 258
89 73
5 5
129 125
89 76
7 7
195 326
88 75
6 6
302 340
DIV
F+M+K S+M+K
59 66
69 64
348 398
57 55
39 40
461 226
66 65
68 70
416 326
63 64
70 69
347 365
GEN
F+M+K S+M+K
78 66
37 39
436 185
76 72
70 79
320 446
78 66
50 56
405 280
82 66
39 39
464 124
average
F+M+K S+M+K
73 69
35 37
363 302
72 65
32 36
288 240
76 69
40 43
325 317
75 68
37 38
356 305
Table 5.5: Percentage of test instances with different problem characteristics solved to optimality in 3600 sec. (PS), the corresponding integrality gap (IG), and the average runtime (AR) in sec. for the two best formulations S and F including stock inequalities (K) as well as big-M-inequalities (M).
5.5. Computational results
101
In Table 5.5 the corresponding results are shown. In column “normal” the values of Table 5.4 are repeated for comparison. Obviously, general conclusions in terms of solvability can hardly be derived. For instance, by reducing the capacity the IGs for the divergent product structures become smaller (39%/40%), but less instances could be solved (57%/55%). In contrast, PS is nearly the same for the general structure with the flow formulation and even higher for the Simple Plant Location formulation, although the IGs are substantially larger now (70%/79%). The impact of a different time-between-orders is almost negligible in terms of PS. Only the IGs increase slightly for most of the instances, again to the highest degree for the general product structures. The reason is that—compared to the other cost terms of the objective function—mainly the setup costs are “affected” by the LP relaxation. By allowing fractional setup costs instead of binary ones, the influence of an increase gets mitigated. For the “setup” instances no real difference could be observed at all. Accordingly, it seems that instances with proportional setup times and costs are not easier to solve. As shown in Section 5.5.2, the “Simple Plant Location” based reformulation appears to perform slightly better for instances with a divergent product structure, whereas the flow formulation shows advantages for all other instances. Furthermore, the usage of the stock and the big-M inequalities are always recommendable. Nevertheless, even for instances of moderate size the percentage of unfinished problems (that cannot be solved to optimality within a reasonable amount of time) as well as the corresponding duality gaps are quite high. Thus, standard MIP-solvers do not appear to be promising for solving this problem satisfactorily. For this reason, heuristics will be designed and tested in the next chapter.
Chapter 6 Heuristics for the improved GLSPMS Even though the reformulations presented in Chapter 5 provide slightly improved (dual) lower bounds and thus reduce the computational effort of a standard MIP-solver, it is still not possible to solve mid- and large-sized problem instances exactly. Accordingly, a heuristic approach is needed which is able to find sufficiently good (primal) feasible solutions in a reasonable amount of time. Therefore, Section 6.1 will first present selected meta-heuristic approaches which can be applied to different kinds of problems. Afterwards, several new heuristics for the GLSPMS will be introduced in Section 6.2 which are based on the approaches before. Section 6.3 will show the computational results of the new heuristics and complement the findings of Seeanner et al. (2013). Finally, a brief summary will be given in Section 6.4.
6.1
Selected meta-heuristic approaches
Typically, heuristics are grouped into construction and improvement heuristics. The former try to generate a first initial solution from scratch, whereas the latter try to improve a given feasible solution (cf. Pochet and Wolsey (2006) and Zäpfel et al. (2010) among others). However, there are procedures which are able to construct and improve solutions. For instance, exact algorithms, which are truncated during the search, belong to both groups. One important representative of these algorithms is Truncated MIP which will be presented next. After that, the construction heuristics LP&Fix and Relax&Fix will be introduced. They have the advantage of being easy to adapt and implement. Furthermore, the improvement heuristics Exchange, Variable Neighborhood Search (VNS), and Variable Neighborhood Decomposition Search (VNDS) will be explained. As the latter two are both based on Local Search, this principle will be illustrated as well.
F. Seeanner, Multi-Stage Simultaneous Lot-Sizing and Scheduling, Produktion und Logistik, DOI 10.1007/978-3-658-02089-7_6, © Springer Fachmedien Wiesbaden 2013
104
6.1.1
Chapter 6. Heuristics for the improved GLSPMS
Truncated MIP
A standard MIP-solver uses different algorithms like Branch&Bound or Branch&Cut to solve a problem instance exactly (cf. Pochet and Wolsey, 2006, pp. 87–113). An example for a straightforward heuristic is simply to truncate the exact search procedure of a MIP-solver. The best solution found so far will be accepted as the solution output. For that purpose, several different stopping conditions can be applied. For instance, as soon as a fixed amount of time has elapsed, the i -th incumbent solution is found, or a certain duality gap is reached, the solver run might be terminated. Obviously, this heuristic is both at the same time— construction as well as improvement heuristic. As next, the two well-known construction heuristics LP&Fix and Relax&Fix will be presented. These heuristics also belong to the class of MIP-based heuristics1 , because they generate subproblems of the regarded MIP and pass them to a MIP-solver.
6.1.2
LP&Fix
The LP&Fix heuristic approach consists of two simple steps. First, all integer variables are relaxed (set to continuous) and the resulting LP is solved. Those integer variables which already have an integer value in the LP solution get fixed to that value. Finally, the remaining MIP is solved regularly (cf. Pochet and Wolsey, 2006, pp. 108–109).2
6.1.3
Relax&Fix
The Relax&Fix3 heuristic tries to reduce the complexity of the original problem by solving iteratively R different MIP-subproblems: In each run r = 1, ..., R the integer variables are decomposed into three pairwise disjoint sets Fr , Rr , and Qr . The set Fr contains all variables that are fixed to a certain value, whereas the variables in Rr and Qr are optimized. However, only the elements of Rr have to fulfill the integrality constraints. The variables belonging to Qr are relaxed. To find a feasible solution to the original problem instance, the idea of Relax&Fix is to use a partition F1Δ , ..., FRΔ of all integer variables, where FrΔ contains all variables which have to be fixed after run r. Accordingly, the relation between the sets is Fr = Fr−1 ∪ FrΔ for all r, where F0 = ∅. In order to fix variables after run r, they should have been optimized in the run r − 1 before. Accordingly, FrΔ ⊆ Rr−1 must be fulfilled (cf. Pochet and Wolsey, 2006, pp. 109–111). 1 Some authors also classify these procedures as combinations of exact and heuristic algorithms (cf., e.g., Puchinger and Raidl (2005) and Lang (2009)). 2 Note that after the first solution is found, the LP&Fix becomes an improvement heuristic. 3 This heuristic is also known as Fix&Relax.
6.1. Selected meta-heuristic approaches
105
The first improvement heuristic which will be described next is the MIP-based procedure Exchange.
6.1.4
Exchange
This heuristic follows a similar idea as Relax&Fix to reduce the size of the solution space which is presented next. Afterwards, an implementation of the Exchange for the MLCLSP will be outlined.
6.1.4.1
General idea
For Exchange, a decomposition method needs to be defined which partitions all integer variables but now into two subsets F and R. Given an initial solution, the variables in F are fixed to the values of this solution, the other variables are “released”. Then, the resulting “sub-MIP” is solved to optimality. Since at least the initial solution can be found by the MIP-solver, the new solution is always better than or equal to the old one. Due to this and the fact that Exchange does not use any relaxation (in contrast to the Relax&Fix), at all times a feasible solution is available. Obviously, this method can also be applied in an iterative manner. Then, the newly computed solution becomes the “initial” one and the process of fixing and optimizing is repeated (cf. Pochet and Wolsey, 2006, p. 113). A problem-specific implementation of this procedure is Fix&Optimize which solves the MLCLSP.
6.1.4.2
Fix&Optimize as an example
Similar to Relax&Fix the decompositions for the Exchange heuristic can be built in many different ways. In order to solve the MLCLSP, Helber and Sahling (2010) propose a systematic approach for decomposing the setup variables zjt (cf. Section 3.3.1) into the disjoint sets F and R. They embed product-, resource-, and process-oriented decompositions in an iterative procedure and call this Fix&Optimize.
Iterative procedure Helber and Sahling combine these three types of decomposition in four different ways and embed them into an iterative procedure which applies them one or several times (in a loop). This procedure starts with an initial solution as the current best. Then, in each iteration, a new subproblem is created by using the Exchange procedure with the corresponding decomposition which fixes the variables zjt ∈ F to the values of the current best solution. The resulting problem is solved to optimality. If a better solution
106
Chapter 6. Heuristics for the improved GLSPMS
can be found, it becomes the new current best.4 Fix&Optimize terminates if the maximum number of iterations is reached (an external parameter to be set) or all decompositions are not able to find a better solution. The best results for the MLCLSP are obtained with the sequence “product-oriented”, “resource-oriented” and finally “process-oriented” decomposition. In the following, the three different decompositions are explained in more detail. For that purpose, a small example j=1
2
resource 1
3
4
resource 2
Figure 6.1: Example of a product structure. with four products and two resources is used (Figure 6.1), where products j = 1 and j = 2 are producible on resource l = 1 as well as products j = 3 and 4 on resource l = 2. The corresponding planning horizon comprises T = 6 periods.5 Product-oriented decomposition For each product j a new sub-MIP is created. Such a sub-MIP is built by releasing the setup variables of item j for all periods t. This means that in each iteration the procedure decides whether the regarded product should be set up. Accordingly, there are J different product-oriented decompositions. Helber and Sahling point out that the sequence of releasing products plays an important role for the quality of the results. They suppose that the higher the costs incurred by a specific item the more important this item is. To build a “good sequence” they propose a cost function for evaluation. This function is based on the LP relaxation values of the model and returns a cost value consisting of setup, holding, and weighted overtime costs for each product. The products are then ordered according to decreasing values. To demonstrate this procedure, Figure 6.2 shows the decompositions of product 1 and 2 of the regarded example. For instance, the former one builds the subsets R = {z11 , . . . , z16 } and F = {z21 , . . . , z46 }. Resource-oriented decomposition This decomposition does not only consider a single product but all products which are producible on a certain resource. Starting with l = 1, all resources are considered in an ascending order. However, since all sub-MIPs should be solved to optimality in a reasonable amount of time, the setup variables are not released for all periods at once. Helber and Sahling apply a 4 Helber and Sahling use overtime as a relaxation for the MLCLSP. Therefore, Fix&Optimize does not accept a better solution which includes overtime if the current best is feasible with the original capacity. 5 Note that each product can only be processed on a single machine (see also Section 3.3.1).
107
periods
periods
t=1 t=2 t=3 t=4 t=5 t=6
t=1 t=2 t=3 t=4 t=5 t=6
j=1
binary
j=2
fixed
j=3
fixed
j=4
fixed
products
products
6.1. Selected meta-heuristic approaches
(a) Decomposition of product 1.
j=1
fixed
j=2
binary
j=3
fixed
j=4
fixed
(b) Decomposition of product 2.
periods
periods
t=1 t=2 t=3 t=4 t=5 t=6
t=1 t=2 t=3 t=4 t=5 t=6
j=1
binary
fixed
j=2
binary
fixed
j=3
fixed
j=4
fixed
(a) 1st decomposition of resource 1.
products
products
Figure 6.2: Example for the product-oriented decomposition.
j=1
fixed
binary
j=2
fixed
binary
j=3
fixed
j=4
fixed
(b) 2nd decomposition of resource 1.
Figure 6.3: Example for the resource-oriented decomposition.
108
Chapter 6. Heuristics for the improved GLSPMS
“rolling time window“ with a size of four periods (see also Section 6.2.3). They start at the beginning of the planning horizon with an overlap of two periods in each iteration. Hence, periods t = 1, ..., 4 are regarded first, then periods t = 3, ..., 6 and so on. Note that for the last decomposition the time window might contain less than four microperiods. Figure 6.3 illustrates this decomposition for resource l = 1 of the above example.
Process-oriented decomposition Finally, for each pair of a predecessor and a successor product, the setup variables are released. Helber and Sahling also consider these productcouples in an ascending order. To get sub-MIPs with a reasonable size, the planning horizon is divided into two parts (as two products are considered). From the product structure of
periods t=1 t=2 t=3 t=4 t=5 t=6
binary
fixed
j=2
fixed
j=3
fixed
j=4
binary
j=1 products
products
j=1
periods t=1 t=2 t=3 t=4 t=5 t=6
fixed
(a) 1st process decomposition of product-couple 1 and 4.
fixed
binary
j=2
fixed
j=3
fixed
j=4
fixed
binary
(b) 2nd process decomposition of product-couple 1 and 4.
Figure 6.4: Example for the process-oriented decomposition. the example in Figure 6.1 three different couples result. Therefore, six sub-MIPs are created. The two subproblems of the couple (1,4) are illustrated in Figure 6.4. In addition to this MIP-based heuristic, there are also several other types of improvement heuristics like Population-, Swarm-, and Local Search-based procedures among others (cf. Zäpfel et al., 2010).6 Especially the last ones are wide-spread in the literature and play an important role in the following. Hence, the principle of Local Search is introduced next.
6.1.5
Local Search
In this section, the general idea of Local Search will be explained first. Afterwards, a wellknown representative will be introduced as an example to illustrate this procedure. 6 Note that this differentiation is not clear-cut. Indeed, there are many heuristics which belong to several classes or even represent hybrid procedures.
6.1. Selected meta-heuristic approaches 6.1.5.1
109
General idea
Starting from a current feasible solution x, Local Search does not examine the whole solution space but the (local) neighborhood N (x) of x. The neighborhood is defined as the set of all solutions x (also termed candidates) which can be obtained by an atomic transformation step from x. A very useful assumption for this transformation is that the whole solution space should be reachable by a repeated application. To illustrate this procedure, 2-opt is introduced next as an example.
6.1.5.2
2-opt as an example
A well-known Local Search procedure is the 2-opt heuristic which has been developed for the Traveling Salesman Problem (cf. Croes (1958) and Applegate et al. (2006) among others). The transformation step of 2-opt is exchanging two edges of a feasible solution by two other edges to build a new feasible tour. Accordingly, the neighborhood of x is defined as the set of all tours which can be reached by this transformation step. To illustrate this, Figure 6.5a shows a feasible solution for the instance of the Traveling Salesman Problem given in Section 4.3.1. This round trip x has a length of 109 units. By exchanging the edges (1, 2) and (4, 5) as shown in Figures 6.5b and 6.5c, a new neighbor x is reached with length 104.
1
1 19
19
15
25
17
(a) Feasible solution.
4
17
17
5
5 3
3 33
21
19
15
25
5 2
1
4
4
2
33
(b) Removing two edges.
3
14
2
33
(c) Adding two new edges.
Figure 6.5: Example for exchanging two edges as the transformation step of 2-opt. The complete neighborhood N (x) consists of five neighbors where the other ones can be determined in the same way (exchanging the pairs of edges {(1, 2), (3, 4)}, {(2, 3), (1, 5)}, {(2, 3), (4, 5)}, and {(3, 4), (1, 5)}). The original 2-opt only allows improvements and thus belongs to the class of descent procedures.7 But the question which arises now is how to explore the resulting neighborhood and find a better solution. 7 Note that this term refers to minimization problems. Correspondingly, these procedures are called “ascent” for maximization problems.
110
Chapter 6. Heuristics for the improved GLSPMS
6.1.5.3
Descent procedures
Descent procedures only allow a candidate to become a new solution if it is better than the current solution. There are two possible ways to get a better solution: Either the Local Search procedure examines successively one candidate after another. As soon as a better solution is found, it becomes the current best (first fit). Here, the sequence of the candidates, which can be fixed or randomly generated, plays an important role. Alternatively, a subset of the neighborhood can be created (this can also be the complete neighborhood) and the best candidate is chosen out of it (best fit). For instance, a first fit method would directly accept the candidate shown in Figure 6.5c because it is better than the one in Figure 6.5a (104 < 109). By contrast, a best fit method would examine, e.g., all five neighbors to get the best (which is actually better than 104). Descent procedures terminate if no improvement can be achieved anymore. In that case, the current solution is called a local optimum as it is better than all of its neighbors. Unfortunately, such local optima are usually reached quite fast by descent Local Search methods and may have big gaps to the “global” optimum. Correspondingly, the major challenge of this kind of heuristics is to escape from these local optima. That is why there are also descent-ascent Local Search heuristics which accept worse solutions temporarily as illustrated next. 6.1.5.4
Descent-ascent procedures
By also allowing a worsening within the search, a descent-ascent procedure does not check the candidate for improvement but whether it can be accepted. Hence, an acceptance rule has to be defined. Note that this is a generalization since descent methods use a “special” acceptance rule which only allows improvements. As one can imagine, Local Search procedures can be implemented in many different ways (different neighborhoods, different acceptance rules, etc.).8 One popular representative is the Variable Neighborhood Search.
6.1.6
Variable Neighborhood Search (VNS)
Mladenović and Hansen (1997) introduce the principle of Variable Neighborhood Search (VNS). Generally speaking, to avoid being entrapped in a local optimum which is not the global one, VNS uses a series of K different neighborhoods Nk which are usually nested as Nk ⊆ Nk+1 . However, the relation between the neighborhoods of VNS and Local Search is not uniquely defined (cf. Hansen and Mladenović, 2001). In this thesis, it is assumed that these neighborhoods Nk are independent from the neighborhood of the underlying Local 8
To name only a few, there are Tabu Search, Simulated Annealing or Threshold Accepting (Meyr, 2000).
6.1. Selected meta-heuristic approaches
111
Search method.9 Hence, existing Local Search-based heuristics need not to be adapted but can be directly embedded into VNS.10 Algorithm 2 illustrates the underlying procedure. Algorithm 2: Basic Variable Neighborhood Search initialization: find an initial solution x with any construction heuristic 1 2 3 4 5 6 7 8 9 10 11
k ← 1; repeat Shaking: choose solution x’ randomly from neighborhood Nk (x); Local Search: find local optimum x” starting from x’; if x” better than x then x ← x”; k ← 1; else k ← k + 1; end until k = K;
As an improvement heuristic, VNS requires a start solution. After initializing index k, the loop is entered. Each loop run consists of two steps. In the first Shaking step, a new solution x is chosen randomly from the current neighborhood Nk of the current best solution x as illustrated in Figure 6.6a. Then, in a second step, a Local Search procedure is started. If the local optimum x is found (Figure 6.6b), the quality of this new solution is compared to the previous solution x. Local Search x“ x‘
x‘ Shaking
x
x Nk
(a) Shaking phase.
(b) Local Search phase.
Figure 6.6: Neighborhood Nk . If x is better than x, the new solution becomes the current best and the first neighborhood is searched again. Otherwise the next neighborhood Nk+1 is used as shown in Figure 6.7a and a new neighbor x is randomly chosen from that. This neighbor might possibly lie outside the old neighborhood (but not has to). From x , the independent Local Search heuristic is started again (Figure 6.7b). 9 Mladenović and Hansen also propose a VNS-variant which uses the different neighborhoods Nk for the Local Search. They call this a Variable Neighborhood Descent (VND) heuristic. 10 Note that the existing heuristic becomes a “multi-start” procedure.
112
Chapter 6. Heuristics for the improved GLSPMS
Nk+1
x
x
Shaking
Local Search
x‘
x‘
(a) Shaking phase.
(b) Local Search phase.
Figure 6.7: Neighborhood Nk+1 . Example The principle of 2-opt and its neighborhood structure can be generalized to popt where the neighborhoods are based on the exchange of p edges. We assume now that the neighborhoods of VNS are N1 = 2-opt, N2 = 3-opt, Nk = (k+1)-opt. Starting with the solution given in Figure 6.5c as x, the Shaking might result in solution of Figure 6.8 which is a 2-opt neighbor of x. From this solution with length 121, the Local Search is started. In
1
1
21 38
4 15
15
25
5
5 3
14
2
21
4
33
Figure 6.8: Random neighbor x .
2
13
3
33
Figure 6.9: Local optimum x .
this example, 2-opt is also used as Local Search procedure for simplification.11 It terminates with the local optimum x that has a solution value of 107 which is worse than 104 (cf. Figure 6.9). Correspondingly, VNS might move to 3-opt as the succeeding neighborhood. In the next step, a random neighbor x is chosen—but now from the 3-opt neighborhood of x. Subsequently, the 2-opt Local Search is executed again starting from x . In recent years, many variants of the VNS have been successfully applied to a wide range of optimization problems. Examples include problems of graph theory (e.g., the traveling salesman problem (Felipe et al., 2009; Hansen and Mladenović, 2001), minimum spanning trees (Naji-Azimi et al., 2010; Ribeiro and Souza, 2002)), supply chain planning problems (e.g., car sequencing (Prandtstetter and Raidl, 2008)), continuous optimization (Mladenović et al., 2008) or lot-sizing and scheduling problems (Almada-Lobo and James, 2010; Almada11 The neighborhood for the Local Search should be smaller than the ones of VNS, otherwise VNS would be useless.
6.1. Selected meta-heuristic approaches
113
Lobo et al., 2008). One important variant of the VNS is called the Variable Neighborhood Decomposition Search which is shown next.
6.1.7
Variable Neighborhood Decomposition Search (VNDS)
The Variable Neighborhood Decomposition Search (VNDS) aims at solving large problem instances. Therefore, the search space for the Local Search is reduced by fixing parts of the solution (space). The parts to fix are determined by decomposition methods which are controlled by the different neighborhoods of VNDS. Hansen et al. (2001) define such a neighborhood Nk (x) as the set of every possible fixation where “all but k attributes (or variables or subset of variables) are fixed” of solution x. Unfortunately, it does not become clear from this definition if the neighborhood contains all possible solutions which can be obtained from x when all but k out of n variables/attributes are fixed, or if it contains all
n possible combinations of fixations (cf. Lazić et al., 2010). k Algorithm 3: Basic Variable Neighborhood Decomposition Search initialization: find an initial solution x with any construction heuristic 1 2 3 4
5 6 7 8 9 10 11
k ← 1; repeat Shaking: choose randomly f from neighborhood Nk (x); Local Search: find local optimum x’ in subspace Dk defined by the underlying fixation f; if x’ better than x then x ← x’; k ← 1; else k ← k + 1; end until k = K;
Nevertheless, the general idea is that the Shaking implies a fixation which results in a subset Dk of the solution space. Hence, we define now that the neighborhood Nk (x) only comprises the fixations as illustrated in Algorithm 3. Then, the Local Search determines the local optimum in the resulting subspace Dk .12 Accordingly, the major difference of the VNDS compared to the VNS is in the Local Search phase. After the local optimum is found, the steps are repeated in the same way as for the VNS. The following example demonstrates this procedure. Example For the small TSP example from above, a neighborhood decomposition could be defined as the fixation of 1 edge. Accordingly, the VNDS neighborhood of the solution given 12
Note that the idea of fixing parts and solving the remaining is identical to Exchange.
114
Chapter 6. Heuristics for the improved GLSPMS
in Figure 6.5a consists of the five edges (1, 2), (1, 5), (2, 3), (3, 4), and (4, 5). By selecting one of these in the Shaking phase, e.g., edge (2, 3), the subspace Dk comprises all solutions which include (2, 3). Hence, at the beginning of the Local Search phase, 2-opt is only allowed to examine the three neighbors {{(1, 2), (3, 4)}, {(1, 2), (4, 5)}, {(1, 5), (3, 4)}}. However, such a decomposition only becomes useful for larger problems. If, for instance, a TSP has to be solved with a large number of cites/nodes, then even the 2-opt neighborhood of a solution x would be large as well.
6.2
Heuristics for the GLSPMS
Based on the meta-heuristics illustrated in Section 6.1, several new procedures for the GLSPMS are developed (q.v. Seeanner and Meyr (2013) and Seeanner et al. (2013)). They will be presented now.
6.2.1
Truncated MIP (TM)
As mentioned in Section 4.4, Xpress is used as MIP-solver throughout this thesis. Hence, for the Truncated MIP heuristic, the corresponding GLSPMS model formulation is loaded and started in Xpress. Due to the high gaps of the GLSPMS as a GLSP-based formulation (cf. explanations of Section 4.3.2 and results of Section 5.5), the runtime is used as the stopping condition.
6.2.2
LP&Fix (LF)
The integer variables of the improved GLSPMS and of its reformulations are either the binary setup state variables yljs or the changeover variables zlijs . Hence, for the LP&Fix heuristic, these binary variables are allowed to take on continuous values in the interval [0; 1]. The resulting LP is solved and afterwards the variables which are either 0 or 1 are fixed to the corresponding value. Finally, the remaining MIP has to be computed.
6.2.3
Relax&Fix (RF)
Since the Relax&Fix procedure as presented in Section 6.1.3 is a general approach, there are, of course, different ways to build these decompositions. However, for lot-sizing (and scheduling) problems, it is common to use a time decomposition with a rolling scheme as illustrated in Figure 6.10 (cf. Stadtler (2003) or Ferreira et al. (2009) among others). In that example, a time window with a fixed size of three periods is used. All setup variables belonging to the time window are solved as binaries. In the first run r = 1, the time window
6.2. Heuristics for the GLSPMS
115 periods
runs
t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=8 t=9 t=10 t=11 t=12 r=1
binary
r=2
fixed
r=3 …
continuous binary
continuous
fixed
binary
continuous
Figure 6.10: A possible Relax&Fix scheme without overlap. starts at the beginning of the planning horizon. Accordingly, the setup variables of the periods t = 1, ..., 3 are set to binary, all others to continuous and the optimization process is started. In the second run r = 2, the time window is moved three periods forward (rolling scheme). The optimized binary variables of the first three periods are fixed. After the fixation, the optimization is started again with the new time window (periods t = 4, ..., 6). This procedure is repeated until the time window reaches the end of the planning horizon. For models with a two-level time structure like the GLSPMS, such a time window should always comprise a whole macroperiod. Otherwise a decision might become too myopic, since inventory holding costs are not regarded properly and a good solution cannot be found. Regarding the above example, the sets of binary variables of all runs are disjoint.13 However, it is also possible to let the time windows overlap. Such a scheme is presented in Figure 6.11. Here, the time window comprises four periods with an overlap of two. Since the relaxation periods t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=8 t=9 t=10 t=11 t=12 binary
runs
r=1 r=2 r=3 …
fixed
continuous binary
fixed
continuous binary
continuous
Figure 6.11: A possible Relax&Fix scheme with overlap. of the binary variables may have a strong impact on the variables of the time window, the overlap helps avoid fixing variables to disadvantageous values by looking more ahead. But it also leads to subproblems which are harder to solve (more binary variables). As extensively explained in Chapter 4 the GLSPMS offers the two different model relaxations of external purchasing and overtime. These two allow to construct easily and fast a simple initial solution as shown next. 13
Some authors define Relax&Fix only for disjoint sets (cf. Pochet and Wolsey, 2006, p. 109).
116
Chapter 6. Heuristics for the improved GLSPMS
6.2.4
Trivial solution (TS)
The first approach is to preserve the initial setup state over the whole planning horizon, i.e. no changeover is allowed. This is achieved by adding constraints (6.1) to the GLSPMS. yljs = ylj0
∀l, j, s
(6.1)
Then, most of the products cannot be produced but have to be externally purchased. If a product j cannot be purchased in reality, purchasing costs become penalty costs for not producing. These costs are defined for each product as ej = maxl,i {sclij + hj }. The upper are set to the net demand values (see Section 3.3.2.2) to prevent them from bounds emax j becoming a limiting factor.
6.2.5
Repeating setup sequence (RS)
Another possibility to get a first initial for the GLSPMS solution is to apply a setup sequence where each product is set up at least once per macroperiod. Hence, the limited capacity is disregarded and the overtime relaxation comes into play. The easiest way to generate this setup sequence is to determine a sequence for a single macroperiod which is then repeated for the whole planning horizon. For that purpose, the following model formulation was developed. This model uses the average net demand of the products and divides the macroperiod into V − 1 microperiods as follows:14 RS model Index v
Data drs j rs =0 Ij0 Mlj
= 1, ..., V microperiods
average net primary demand for product j (= [ s djs − Ij0 ]+ /T ) initial inventory is set to 0 big-M which is needed for the setup forcing constraints. This value should be as tight as possible and therefore it is computed recursively for each line l and item j. Assuming that the items are sorted by the we iterate over j = 1, ..., J and l: Mlj = lowlevel code, max mlj , i∈N + pji k max{mki , Mki } + drs j j
14
Note that all data without the superscript ’rs’ is derived from the model presented in Section 4.2.2.
6.2. Heuristics for the GLSPMS Variables rs ≥0 Ijv rs xljv ≥ 0 rs yljv ∈ {0, 1} rs ≥0 zlijv
117
inventory of product j at the end of microperiod v (units) total quantity of product j produced in microperiod v on line l (units) setup state: yljv = 1 if line l is set up for product j in microperiod v (0 otherwise) takes on 1 if a changeover from product i to product j takes place on line l during microperiod v (0 otherwise)
Objective function min
rs slij zlijv +
l,i,j,v
cplj xrs ljv
(6.2)
l,j,v
subject to rs rs Ijv = Ij,v−1 + rs rs Ij,V −1 = Ij,V −2 +
l
xrs ljv −
l
xrs lj,V −1 −
l
pji xrs liv
∀j, v = (V − 1)
(6.3)
rs pji xrs li,V −1 − dj
∀j
(6.4)
rs Ijv ≤ Ijmax
i∈Nj
l
i∈Nj
∀j, v
(6.5)
rs Mlj yljv
∀l, j, v
(6.6)
rs rs rs + yljv − 1 ≤ zlijv yli,v−1
∀l, i, j, v
(6.7)
xrs ljv
≤
rs ylj1
∀l, j
(6.8)
rs rs xrs ljv ≥ mlj (yljv − ylj,v−1 ) rs yljv =1
∀l, j, v
(6.9)
∀l, v
(6.10)
rs ylj,V
=
j
The objective (6.2) is to minimize the setup and production costs. Constraints (6.3) and (6.4) represent the inventory balance. The former assure that the secondary demand is fulfilled. The latter enforce that the primary demand is met which only occurs in microperiod V −1. Constraints (6.5) limit the stock levels and (6.6) are the setup forcing constraints. Note that “big-M” is reduced to the maximum of the minimum lot-size and the sum of primary and secondary demand. With the help of (6.7) the change of different setup states is captured. As the resulting setup pattern of this model has to be applied repeatedly to the GLSPMS, constraints (6.8) are needed to assure that the setup sequence fits together. Note that there is only positive demand in microperiod V − 1 per product. However, one further microperiod must be considered because the changeover between the two microperiods V −1 and V might differ from the changeover between microperiods 0 and 1. Otherwise, minimum lotsizes in combination with limited stock levels potentially lead to infeasible plans. Furthermore, (6.8) enforce the equality with v = 1 because for some test instances the production lines are
118
Chapter 6. Heuristics for the improved GLSPMS
supposed to be in an idle state at the beginning (yl00 = 1). Again, a minimum lot-size has to be produced after a changeover (6.9) and a unique setup state is enforced for each line and microperiod (6.10). To find a feasible solution for the model above, a certain, unknown minimum number of microperiods V is needed. Starting with V = 1, the number of microperiods V is incremented stepwise by 1. As soon as the first feasible solution for the RS model has been found for a value V = V , the execution is stopped. The computed setup sequence will then be fixed for every macroperiod. This is achieved by adding constraints (6.11) to the GLSPMS model. ∀l, j, s, v with v = (s − 1) modulo (V − 1) + 1
rs yljs = yljv
(6.11)
For instance, if the setup sequence of Figure 6.12 represents a feasible solution of the RS model, Figure 6.13 illustrates the first GLSPMS solution. v=0
v=1
…
1
4
2
1
v=V-1
v=V
3
4
Figure 6.12: Setup sequence obtained by the RS model. t=1 s=0
s=1
…
1
4
2
t=3
t=2 s=V-1
1
3
4
2
1
3
4
2
1
3
Figure 6.13: Repeating the setup sequence in every macroperiod t. As mentioned above, it might become necessary to introduce penalty costs if overtime is not allowed in reality. Hence, fictitious overtime costs can be defined as g = l (maxi,j {slij }+ maxj,s {hjs }/ minj {alj }). Moreover, g max = wS+1 /T is an appropriate upper bound.15
6.2.6
GLSPMS tailored Fix&Optimize (FO)
Since the Fix&Optimize yields very good results for the MLCLSP, it seems reasonable to adapt it to the GLSPMS. Due to the two-level time structure of the GLSPMS, the decompositions of the Fix&Optimize cannot be directly transferred to the setup variables yljs . That is why several adaptations are needed. • Product-oriented decomposition: Due to constraints (4.13*) of the GLSPMS, product j can only be included in a new setup sequence if the item being set up in the recent solution is released in the current sequence as well. Otherwise no new sequence can be generated. 15 This upper bound is sufficient for the used test instances, however it has to be adapted if another problem is considered.
6.2. Heuristics for the GLSPMS
119
• Resource-oriented decomposition: For the GLSPMS, each production line l represents a resource. Thus, all products that can be processed on this line l are considered simultaneously. To limit the size of subset R, the same rolling time window scheme with the same number of macroperiods is applied to the GLSPMS as to the MLCLSP. • Process-oriented decomposition: This decomposition can be directly applied to the GLSPMS. For each pair of predecessor / successor product, all concerned production lines and all microperiods are regarded.
Unfortunately, the cost function which is needed to determine the sequence of the productoriented decompositions cannot be easily adapted to the GLSPMS. The reason for this is two-fold: first of all, the GLSPMS considers sequence-dependent setups and the corresponding costs cannot be clearly assigned to one product. And second, the used formulation itself and the LP relaxation have crucial impact on the results of the cost function. This becomes particularly clear through the observations by Helber and Sahling. They found out that a Simple Plant Location based reformulation of the MLCLSP leads to a cost function that ends up in a worse sequence of products, although this formulation produces better lower bounds. As the GLSPMS shows a totally different model formulation and due to the other reason, the natural sequence of the product index is used. The best results for the MLCLSP can be obtained with the sequence “product-oriented”, “resource-oriented” and finally “process-oriented” decomposition. This variant is also used for the GLSPMS tailored version.
6.2.7
Variable Neighborhood Decomposition Search with Exchange (VNDS+E)
As the basic concepts of VNDS and Exchange are equivalent, the idea now is to bring together these two solution procedures.16 Therefore, similar to the approach of Helber and Sahling a microperiod, a product, a bill-of-materials, and a production line decomposition are defined. All the subsets R and F resulting from a certain decomposition define the neighborhood structures for the VNDS. Accordingly, the following neighborhood structures can be derived (in the sequence above): NσS These neighborhoods contain all setup sequences that can be found by releasing σ microperiods. 16 A similar but more general approach is presented by Lazić et al. (2010) who use VNDS for binary mixed integer programs.
120
Chapter 6. Heuristics for the improved GLSPMS
NιJ This group of neighborhoods consists of all solutions that can be reached by releasing the current setup sequence and ι products. This is equivalent to allowing ι items to be included in a new setup sequence. NβB Two different neighborhoods β = 1 and β = 2 similar to NιJ are defined here. They do not only regard products separately but their dependencies expressed by the product structure. That means whole parts of this structure are chosen—from the first till the last level. Details of the implementation are given in the following. NλL Finally, these neighborhoods refer to all possible solutions that can be found by releasing λ production lines. These decompositions should be controlled by the VNDS which is intended to increase the solution space by fixing a decreasing number of attributes. Following this idea, the neighborhood structures presented above are systematically arranged to get subsets R with increasing cardinality. To achieve this, we take advantage of the following relation: For problem instances of the consumer goods industry, the sequence L < J < S holds in general. This leads directly to L · J < L · S < J · S. Now a connection to the neighborhood structures can be established, since the elements of this derived sequence are equivalent to the number of released variables (e.g. releasing a single microperiod affects L · J variables of yljs and so on). That is why the sequence NσS , NιJ , NβB , NλL is applied in the following. Note that NβB is ranked before NλL because at least for λ = L it follows that NβB ⊂ NLL . To adhere to the VNDS principle only certain ranges should be allowed for σ, ι, and λ: • The restriction σ · L · J ≤ L · S implies directly σ ≤ L·S ⇒σ≤ L·J J·S • From ι · L · S ≤ J · S it follows that ι ≤ L·S ⇒ ι ≤ LJ .
S J
.
• Finally λ should cover all lines and thus ranges from 1 to L. In the remainder of this chapter, k is an identifier for each neighborhood structure and describes indirectly the number of fixed attributes. According to the random fixation of attributes, the new algorithm also fixes/releases different parts of a neighborhood at random, e.g., for neighborhood N1S the “released” microperiod is randomly selected. However, it still might be impossible to run the MIP-solver for the Exchange until the optimum is found.17 Hence, for a larger k, it is more likely that no improvement can be achieved. Accordingly, it is important to test different parts of a certain neighborhood structure and to execute several runs to test it more intensively. Otherwise, the solution procedure might terminate too early. This can be achieved by releasing different variables. For this purpose, a random function f (k) is implemented which returns the subset R according to the current neighborhood structure k. Note that only one of the subsets is necessary as they complement each other. 17
This is at least true for NLL , otherwise the original problem should be solvable to optimality.
6.2. Heuristics for the GLSPMS
121
If f (k) is called sequentially with the same k, it returns different sets of variables. This behavior is equivalent to “sampling without replacement”. Example To demonstrate the workflow of the new VNDS with Exchange (VNDS+E) heuristic, the base divergent scenario of Section 4.4.1.2 with (J=)6 items, (L=)3 different lines, and 3 macroperiods with 4 microperiods each (S=12) will be examplarily solved in the = 2 and 63 = 2, the developed algorithm will use the neighborhoods following. Since 12 6 N1S , N2S , N1J , N2J , N1B , N2B , N1L , N2L , and N3L in the given sequence with k = 1, . . . , K = 9. As next, the main procedure and the implementation of the particular function f (k) for each neighborhood structure are sketched. 6.2.7.1
Main control procedure
The main control procedure is illustrated in Algorithm 4. First, the algorithm is initialized (lines 1–3). As mentioned before, several consecutive iterations with the same neighborhood k are allowed. For that purpose, a neighborhood iteration counter i is introduced and set to 0. Since the algorithm starts with the first neighborhood, k is set to 1. The next step is to retrieve an initial solution and the corresponding objective function value. After the initialization, the procedure calls the StartExchange() function with the first structure. If a new better incumbent solution is obtained, the algorithm restarts with the first structure k = 1 and the neighborhood iteration counter is reset. Otherwise, counter i is increased till the maximum I (external parameter) is reached. In that case, again the counter i is reset and the procedure changes to the next neighborhood structure k + 1. These steps are repeated until all K structures have been visited. The StartExchange() function is shown in Algorithm 5. According to the parameter k, this function retrieves the corresponding subset R. After that SolveSubMIP(sol, R) fixes the setup variables and starts the MIP-solver. If a new solution can be found, it will be returned. Otherwise this function returns the old solution sol. Algorithms 6–11 briefly describe how the subset R (and thus F) is chosen. Example The heuristic starts with the initialization. Therefore, the external parameter initial solution (IS) must be given which determines the construction heuristic to be executed. In the regarded example, the trivial solution (TS) heuristic is chosen (see Section 6.2.4). Accordingly, GetInitSol obtains the trivial solution by the MIP-solver in 0.7 sec. For each setup variable yljs the corresponding value is given in Table 6.1. For this solution where product j = 1 is set up on line l = 1, j = 4 on l = 2, and j = 6 on l = 3 the objective function value is 5300.0 (including penalty costs for purchasing). According to Algorithm 4, in the first while loop iteration, neighborhood N1S is used which will be described next.
122
Chapter 6. Heuristics for the improved GLSPMS
Algorithm 4: Main control procedure. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
i ← 0; k ← 1; bestSol ← GetInitSol(); while true do newSol ← StartExchange(bestSol, k, i); if newSol better than bestSol then bestSol ← newSol; i ← 0; k ← 1; else i ← i + 1; end if i = I then i ← 0; clear the history of subsets belonging to neighborhood k; k ← k + 1; end if k = K + 1 then if runtime is stopping criterion and runtime < maxRuntime then k ← 1; else break; end end end
Algorithm 5: StartExchange input: A feasible incumbent solution sol, neighborhood k, neighborhood iteration counter i output: if a solution was found, newSol is returned or sol otherwise 1 switch k do 2 case NσS 3 R ← GetMicroPeriodNeighborhood(σ,i); 4 case NιJ 5 R ← GetProductNeighborhood(ι,i); 6 case N1B 7 R ← GetUpwardsBomNeighborhood(i); 8 case N2B 9 R ← GetDownwardsBomNeighborhood(i); 10 case NλL 11 R ← GetLineNeighborhood(λ,i); 12 endsw 13 newSol ← SolveSubMIP(sol, R);
6.2. Heuristics for the GLSPMS
yljs
123
s=0 1 2 3 4 5 6 7 8 9 10 11 12
l=1 j=1 j=2 j=3 j=4
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
l=2 j=2 j=4
1 0
1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
l=3 j=5 j=6
0 1
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
Table 6.1: Trivial solution—objective 5300.0, runtime 0.7 sec. 6.2.7.2
Microperiod-based neighborhood
The first function GetMicroPeriodNeighborhood() is shown in Algorithm 6. Subject to parameter σ, a subset Si of all S microperiods with |Si | = σ is randomly generated in neighborhood iteration i. Algorithm 6: GetMicroperiodNeighborhood input: Number of microperiods to release σ, neighborhood iteration counter i output: subset R with all setup variables to be released 1 R ← ∅; 2 Si ← GetRandomSubset(S, σ, history of subsets belonging to this neighborhood ); 3 add Si to the history; 4 forall the production lines l, products j, microperiods s ∈ Si do 5 add yljs to R 6 end
As mentioned before, if GetMicroPeriodNeighborhood() is called in series, these subsets need to be different (pairwise), otherwise a useless (multiple) iteration is executed. Therefore, GetRandomSubset() requires the former generated subsets as a parameter. This function is generalized as shown in Algorithm 7 and can be applied to the next neighborhood functions as well. By initializing an auxiliary set with all elements and randomly removing elements step-by-step, the subset with the necessary size is created.18 For each s ∈ Si and for all l, j the setup variables yljs are added to R.
Example In the first while loop iteration, a single microperiod is randomly chosen. As shown in Table 6.2a, microperiod 12 is released (highlighted gray).
Note that GetRandomSubset() is only useful, if the binomial coefficient nSize oSize is sufficiently large. Otherwise, it would be very likely that the while-loop will run several times. In this case, this problem should only occur while determining subsets of the production lines (assuming that L < J < S). Then, it might be advantageous to compute all possible subsets in a preprocessing step and to randomly choose one of the possibilities. 18
124
Chapter 6. Heuristics for the improved GLSPMS
Algorithm 7: GetRandomSubSet input: Original size of the set oSize, size of the new subset nSize, history of subsets H output: random subset Q 1 2 3 4 5 6 7 8 9
while true do Q ← {1, 2, . . . , oSize}; for 1 to (oSize − nSize) do remove random element from Q; end if Q ∈ / H then break; end end
yljs
s=0 1 2 3 4 5 6 7 8 9 10 11 12 1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
s=0 1 2 3 4 5 6 7 8 9 10 11 12
1 0 0 0
1 0 0 0
1 0 0 0
l=1 j=1 j=2 j=3 j=4
1 0 0 0
1 0 0 0
l=2 j=2 j=4
1 0
1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
l=2 j=2 j=4
1 0
1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1
l=3 j=5 j=6
0 1
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
l=3 j=5 j=6
0 1
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
(a) Microperiod selection.
1 0 0 0
yljs
l=1 j=1 j=2 j=3 j=4
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
0 0 1 0
(b) New solution—objective 4139.0, runtime 0.8 sec.
Table 6.2: Loop iteration 1—Neighborhood N1S .
6.2. Heuristics for the GLSPMS
125
Then, the MIP-solver is started with the resulting subproblem. An important question which arises here (and especially for larger instances/neighborhoods) is how much runtime should be spent on the optimization. Accordingly, the maximum runtime for each sub-MIP (MR) represents another parameter of this new heuristic. Fortunately, the instance at hand is easy to solve and thus after 0.1 sec. (0.8 in total) the solution given in Table 6.2b is found. The changed values are highlighted with white font color. In the second loop iteration, again the neighborhood N1S is used, because a new solution was found (see line 9 in Algorithm 4). But now, microperiod 12 is blocked as it belongs to the “history” and microperiod 10 is randomly chosen. However, the new subproblem not allows finding a better solution. The next question is, how many further single microperiods should be tested. Hence, the maximum number of neighbors within a single neighborhood (MN) is a further parameter for VNDS+E which corresponds to I in Algorithm 4 (line 13). For the current example, three different neighbors (I = 3) of neighborhood k must be unsuccessfully tested sequently, before the neighborhood k + 1 is used. The next improvement is realized in loop iteration 5 with k = 2 (N2S ) and i = 0. Afterwards, the product neighborhood (k = 3) is used in loop iteration 12 for the first time.
6.2.7.3
Product-based neighborhood
The function GetProductNeighborhood()—Algorithm 8—starts in the same way. At first, a set of products Ji with cardinality of ι is generated. After that for all j ∈ Ji , l, and s the variables are added to R. However, this is not sufficient yet to find a new setup sequence. Due to constraints (4.13*), for each line and microperiod the setup variables of at least two products (the current set up and another one) need to be released to allow a new setup state. Since the product-based neighborhood aims at including a random chosen product in the setup sequence, all yljs which are 1 in the current solution are added to R additionally. Algorithm 8: GetProductNeighborhood input: Number of products to release ι, neighborhood iteration counter i output: subset R with all setup variables to be released 1 R ← ∅; 2 Ji ← GetRandomSubset(J, ι, history of subsets belonging to this neighborhood ); 3 add Ji to the history; 4 forall the production lines l, products j ∈ Ji , microperiods s do 5 add yljs to R 6 end 7 forall the yljs which are set to 1 in the current solution do 8 add yljs to R 9 end
126
Chapter 6. Heuristics for the improved GLSPMS
Example As mentioned above, in loop iteration 12, the product neighborhood N1J is applied for the first time. The current solution is shown in Table 6.3a.
s=0 1 2 3 4 5 6 7 8 9 10 11 12
yljs
0 0 0 1
1 0 0 0
1 0 0 0
0 0 0 1
0 1 0 0
1 0 0 0
1 0 0 0
1 0 0 0
0 0 0 1
0 0 0 1
yljs
s=0 1 2 3 4 5 6 7 8 9 10 11 12
l=1 j=1 j=2 j=3 j=4
1 0 0 0
0 0 1 0
0 0 1 0
l=1 j=1 j=2 j=3 j=4
1 0 0 0
0 0 1 0
l=2 j=2 j=4
1 0
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
l=2 j=2 j=4
1 0
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
l=3 j=5 j=6
0 1
0 0 1 1 0 1 1 1 1 0 0 0 1 1 0 0 1 0 0 0 0 1 1 1
l=3 j=5 j=6
0 1
0 0 1 1 0 1 1 1 1 0 0 0 1 1 0 0 1 0 0 0 0 1 1 1
(a) Product selection.
0 0 0 1
1 0 0 0
1 0 0 0
0 0 0 1
0 1 0 0
1 0 0 0
1 0 0 0
1 0 0 0
0 0 1 0
0 0 1 0
0 0 1 0
(b) New solution—objective 984.5, runtime 4.0 sec.
Table 6.3: Loop iteration 12—Neighborhood N1J . In the current iteration, product 3 is chosen at random. But as already mentioned before, it is not sufficient to release only the variables belonging to product 3. In order to allow new setup states, the old sequences have to be released as well (see also Table 6.3a). The recent solution is given in Table 6.3b. In microperiods 10 and 11 the setup state of production line l = 1 has changed from product 4 to 3. After 16 further loop iterations with one improvement by the microperiod and one by the product decomposition, in iteration 29, the BOM-based neighborhood comes into play. 6.2.7.4
BOM-based neighborhood
Similar to the process-oriented decomposition of the Fix&Optimize heuristic (cf. Section 6.2.6), the following two BOM-based neighborhoods consider the product structure. However, they are not restricted to two products. Since the GLSPMS allows different types of bills-ofmaterials, an “upwards” (β = 1) and a “downwards” (β = 2) neighborhood structure is implemented. Algorithm 9 illustrates the “upwards” approach. At first, a pre-item j is randomly picked. For this product all direct and indirect successors are recursively added to R. Finally, all yljs which are 1 in the current solution have to be included again for the same reason as for GetProductNeighborhood(). As Algorithm 10 shows the function GetDownwardsBomNeighborhood() works similarly. Now, a final item is selected by chance and then recursively all its predecessors as well. Example In loop iteration 29, the BOM-based neighborhood N1B is used for the first time. Therefore, a pre-product has to be selected first. Then, all corresponding successor items are chosen. In the regarded case products 5 (see Figure 6.14a) and products 1 and 2 are picked (Figure 6.14b).
6.2. Heuristics for the GLSPMS
127
Algorithm 9: GetUpwardsBomNeighborhood input: neighborhood iteration counter i output: subset R with all setup variables to be released 1 R ← ∅; 2 u ← GetRandomProductOnLastLevel(history of subsets/random numbers belonging to this neighborhood ); 3 add u to the history; 4 for j = u and j = direct and indirect successors of u, production lines l and microperiods s do 5 add yljs to R 6 end 7 forall the yljs which are set to 1 in the current solution do 8 add yljs to R 9 end
Algorithm 10: GetDownwardsBomNeighborhood input: neighborhood iteration counter i output: subset R with all setup variables to be released 1 R ← ∅; 2 u ← GetRandomProductOnFirstLevel(history of subsets/random numbers belonging to this neighborhood ); 3 add u to the history; 4 for j = u and j = direct and indirect predecessors of u, production lines l and microperiods s do 5 add yljs to R 6 end 7 forall the yljs which are set to 1 in the current solution do 8 add yljs to R 9 end
1
2
5
3
4
6
(a) Pre-item selection.
1
2
5
3
4
6
(b) Selection of all successor products.
Figure 6.14: Loop iteration 29—Neighborhood N1B .
128
Chapter 6. Heuristics for the improved GLSPMS
Starting with the setup sequence from Table 6.4a and the corresponding released variables, a new solution (Table 6.4b) is obtained. The new objective function value is 226.625 and 7.2 sec. have passed in total.
yljs
s=0 1 2 3 4 5 6 7 8 9 10 11 12 0 0 0 1
1 0 0 0
1 0 0 0
0 0 0 1
0 1 0 0
1 0 0 0
1 0 0 0
1 0 0 0
0 0 1 0
0 0 1 0
s=0 1 2 3 4 5 6 7 8 9 10 11 12
yljs
l=1 j=1 j=2 j=3 j=4
1 0 0 0
0 0 1 0
0 0 1 0
l=1 j=1 j=2 j=3 j=4
1 0 0 0
0 0 1 0
l=2 j=2 j=4
1 0
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
l=2 j=2 j=4
1 0
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
l=3 j=5 j=6
0 1
0 0 1 1 0 1 1 1 1 0 0 0 1 1 0 0 1 0 0 0 0 1 1 1
l=3 j=5 j=6
0 1
0 0 1 1 1 1 1 1 1 1 0 0 1 1 0 0 0 0 0 0 0 0 1 1
(a) Product selection.
0 0 0 1
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
0 1 0 0
0 1 0 0
1 0 0 0
0 0 1 0
0 0 1 0
(b) New solution—objective 226.625, cumulated runtime 7.2 sec.
Table 6.4: Loop iteration 29—Neighborhood N1B . After several consecutive iterations without improvements, in iteration 38 the neighborhood N2B is used for the first time. Accordingly, the current solution in Table 6.5 is the same as in Table 6.4b. For the new neighborhood the finished product 4 is initially chosen (see Figure 6.15a) and afterwards the only predecessor product 6 is selected (see Figure 6.15b). 1
2
3
5
4
1
2
6
3
5
(a) Finished product selection.
4
6
(b) Selection of all predecessors.
Figure 6.15: Loop iteration 38—Neighborhood N2B . yljs
s=0 1 2 3 4 5 6 7 8 9 10 11 12
l=1 j=1 j=2 j=3 j=4
1 0 0 0
0 0 1 0
0 0 0 1
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
0 1 0 0
0 1 0 0
1 0 0 0
0 0 1 0
0 0 1 0
l=2 j=2 j=4
1 0
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
l=3 j=5 j=6
0 1
0 0 1 1 1 1 1 1 1 1 0 0 1 1 0 0 0 0 0 0 0 0 1 1
Table 6.5: Loop iteration 38—Neighborhood N2B . As becomes apparent by Table 6.5 no improved solution has been found. Since the BOMbased neighborhoods cannot find any new solution, three iterations later the first line-based neighborhood structure N1L is used (see Table 6.6a).
6.2. Heuristics for the GLSPMS 6.2.7.5
129
Line-based neighborhood
The last function GetLineNeighborhood() proceeds in the same manner (see Algorithm 11). A subset of lines Li is build with |Li | = λ. For all l ∈ Li , j, and s the setup state variables are included in R. Algorithm 11: GetLineNeighborhood input: Number of lines to release λ, neighborhood iteration counter i output: subset R with all setup variables to be released 1 R ← ∅; 2 Li ← GetRandomSubset(L, λ, history of subsets belonging to this neighborhood ); 3 add Li to the history; 4 forall the production lines l ∈ Li , products j, microperiods s do 5 add yljs to R 6 end
Example In iteration 41, once more a better solution can be found by releasing randomly production line l = 1. After less than 10 sec. in total, an objective value of 223.25 is reached. This solution which is illustrated in Table 6.6b is at the same time the optimal one. Hence,
yljs
s=0 1 2 3 4 5 6 7 8 9 10 11 12 0 0 0 1
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
1 0 0 0
0 1 0 0
1 0 0 0
0 0 1 0
s=0 1 2 3 4 5 6 7 8 9 10 11 12
1 0 0 0
0 0 1 0
0 0 1 0
l=1 j=1 j=2 j=3 j=4
1 0 0 0
0 0 1 0
l=2 j=2 j=4
1 0
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
l=2 j=2 j=4
1 0
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
l=3 j=5 j=6
0 1
0 0 1 1 1 1 1 1 1 1 0 0 1 1 0 0 0 0 0 0 0 0 1 1
l=3 j=5 j=6
0 1
0 0 1 1 1 1 1 1 1 1 0 0 1 1 0 0 0 0 0 0 0 0 1 1
(a) Line selection.
0 1 0 0
yljs
l=1 j=1 j=2 j=3 j=4
0 0 0 1
1 0 0 0
1 0 0 0
0 1 0 0
0 1 0 0
1 0 0 0
1 0 0 0
1 0 0 0
0 1 0 0
0 0 0 1
0 0 1 0
(b) New solution—objective 223.25, runtime 9.5 sec.
Table 6.6: Loop iteration 41—Neighborhood N1L . it is not surprising that the new heuristic probes all (K =) 9 neighborhoods again, before it terminates in iteration 68(= 41 + 9 · 3). To find this solution, the new heuristic has spent 13.6 sec. in total whereas pure Xpress needed 25.4 sec. In the following section, the new heuristics will be examined. Note that the terms Truncated MIP (TM), LP&Fix (LF), Relax&Fix (RF), Fix&Optimize (FO) always refer to the GLSPMS specific implementations shown in this section—without exception.
130
Chapter 6. Heuristics for the improved GLSPMS
6.3
Computational tests
In a first step, the solution quality of the simple construction heuristics Truncated MIP (TM), the LP&Fix (LF) and the Relax&Fix (RF) will be evaluated. Therefore, these heuristics will be tested for each problem instance used in Chapter 4 and the two best formulations (F+M+K and S+M+K) presented Chapter 5. Unfortunately, it will become apparent that the results are dissatisfying. This is where the tailored Fix&Optimize and the VNDS+E heuristic come into play. As these heuristics seem quite promising, Section 6.3.2 will compare them to Truncated MIP using bigger test instances which are closer to real-world problem sizes. Since VNDS+E will provide good results, an actual real-world problem will then be tackled in Section 6.3.3.
6.3.1
Small instances
The following Table 6.7 contains all results for the three construction heuristics with a time limit of 300 sec. In the columns denoted by “GP” the averaged percentage difference between M+K TM
LF
RF
GP
AR
GP
AR
GP
AR
SER
F S
1 1
13 16
21 1
3 109
1 1
6 14
DIV
F S
12 6
14 19
519 36
2 108
26 19
19 16
GEN
F S
8 20
15 17
1026 20
1 109
29 35
6 9
Table 6.7: Gap (GP) and average runtime (AR) of Truncated MIP (TM), LP&Fix (LF), and Relax&Fix (RF) for the extended formulations “flow conservation” (F) and “Simple Plant Location” (S)—both extended by stock inequalities (K) as well as big-M-inequalities (M). the best feasible solution found within 300 sec. and the overall best lower bound found by any formulation within 3600 sec. (results of Section 5.5.1) is given.19 Moreover, the average runtime (AR) is listed as well (sec.). Once more, it can be seen that the serial instances are easier to solve. TM as well as RF are both able to solve most of the instances to optimality (all GPs ≤ 1%)—independently of the used model formulation. Only LF shows some weaknesses when using the flow formulation (GP=21%). But with the S formulation, LF produces competitive results as well, even though the average runtime is significantly higher than the one of TM and RF. Note that RF also runs considerably faster than TM. 19
Thus, differences stem from the formulations’ potentials to find feasible solutions.
6.3. Computational tests
131
For the divergent instances all three heuristics perform differently. TM performs best (GP between 6 and 12%) and in particular the S formulation appears to be superior as in the chapter before. In contrast, RF is not that good anymore. The gaps (GP) lie between 19 and 26%, but with an average runtime between 16 and 19 secs. as compared to the 14–19 secs. of TM. Finally, the LF produces the worst results. The lower gap is 36%, the higher even 519%. Again a systematic difference related to the formulations can be observed. It seems that for the F formulation more variables can be fixated. On the one hand, this results in a lower runtime. But on the other hand, the GP values are quite high. This contrast between F and S for LF becomes dramatically obvious for the instances with a general product structure. Here, LF produces a gap of 1026% in 1 sec. compared to a gap of 20% after an average runtime of 109 secs. The results of TM are again the best with gaps between 8 and 20%. RF performs bad (GP=35%). In sum, TM performs best in terms of solution quality, in particular the S formulation for the DIV instances and the F formulation for the GEN instances. The main reason is probably that these formulations benefit from their similar behavior in Table 5.4. LF is fast, but of very bad quality when applied in a flow formulation. For the S formulation, LF behaves substantially better with respect to solution quality, however, at costs of higher computation times. RF is also worse than TM in terms of solution quality. However, the computational effort for RF is significantly lower. Note that increasing the permitted computation time from 300 sec. to 3600 sec. does not really change the picture. For TM the GP stays almost the same when the SER instances are considered. The reductions (GP 300sec − GP 3600sec ) range between 1 and 5 for the DIV instances with F+M+K being the only exception since a reduction by 11 is possible. The GEN instances are reduced by 1–6 as compared to Table 6.7. The results of LF and RF do not change substantially when longer running times are allowed. Within 300 secs., all remaining MIPs of the (bad performing) flow formulations of LF and around 69% of the other formulations have already been solved to optimality. Thus, there is not much space left for improvement. For RF more than 99% of the “sub-MIPs” of RF can be solved to optimality within 300 secs. As already shown at the end of Chapter 5, most of the improvements are made by the TM in the first minutes. Accordingly, this is very promising that more sophisticated MIPbased heuristics like the tailored Fix&Optimize (FO) and the new VNDS+E heuristic allow for solving the GLSPMS. Moreover, the example in Section 6.2.7 already indicated that VNDS+E has the potential to outperform pure standard MIP-solvers.
6.3.2
Big instances
Due to the dissatisfying results of the construction heuristics for small instances, the focus is shifted to the improvement heuristics. Hence, in this section the tailored Fix&Optimize
132
Chapter 6. Heuristics for the improved GLSPMS
as well as the VNDS+E will be compared to each other. The following settings are used for comparison. 6.3.2.1
Test settings
Section 5.5.1 showed that the majority of the bigger instances cannot be solved to optimality. From these “unfinished” instances 30 are selected now—10 of each product structure. But since the chosen instances are still away from real-world problem sizes, they are enlarged by copying the number of periods (demand and capacity vector). As a result, the tests cover a range of 6-12 products, 3-9 lines, and 8-16 macroperiods with 24-72 microperiods. Since the network flow formulation in combination with the tighter setup forcing constraints and the stock inequalities (F+M+K) has proven to be advantageous, this formulation is used in the following.20 Correspondingly, not have the setup state variables yljs to be released or fixed but the changeover variables zlijs . Before the tailored Fix&Optimize and VNDS+E can be compared to each other, the parameters of the latter have to be tuned. 6.3.2.2
Parameter tuning for the VNDS+E heuristic
In Section 6.2.7, the following three different parameters were already introduced: Initial solution (IS) Due to the bad performance of RF and LF, the new heuristic will only use the trivial solution (TS) and the repeating setup sequence (RS) as construction heuristics. Since they are able to find an initial solution very quickly, more time can be spent on improving this solution by VNDS+E.21 Maximum number of fixations within a single neighborhood (MF) Since it might be very difficult to find a new solution with limited runtime and due to the high number of neighbors that constitute a neighborhood, several fixations should be tested. Therefore parameter MF is introduced which describes the number of neighbors explored. The value of MF is equivalent to the date I in Algorithm 2. Note that the value for MF might be automatically decreased for a certain neighborhood structure if the number of possible subsets is less than MF. Maximum runtime for each MIP (MR) The more variables are released the more computational effort is necessary. Hence, the MIP run might be aborted before proving 20 Note that Seeanner et al. (2013) use a different formulation based on the GLSPMS by Meyr (2004). This leads to other results because the improved formulation is closer to reality and the new synchronization constraints cause higher objective function values. Moreover, the improved GLSPMS of Section 4 needs more random access memory (RAM) and seems harder to solve. 21 Note that for all artificial problems a first incumbent solution can be found by the RS Model in less than 10 sec.
6.3. Computational tests
133
optimality. A question that naturally arises is how much time should be spent on each run of the Exchange. Therefore, two different values (20 sec., 30 sec.) will be checked. Another question is if the maximum gap should be considered as a criterion for the termination as well. In the regarded case, the stopping criterion is only based on the runtime because of the bad quality of lower bounds provided by the GLSPMS in general. Depending on the number of variables that are released the gap might strongly vary (typically between 10% and 50%). Consequently, it is hard to determine a “good“ bound on the gap. This, indeed, is really crucial because otherwise too much time is spent for a single subproblem without improving the solution. Since at most 30 sec. should be spent for a single sub-MIP, a fourth parameter is used which might have an impact on the performance of the solver: Starting heuristic (SH) Normally a commercial MIP-Solver applies specialized heuristics at the beginning of the Branch&Bound procedure to find a first high quality incumbent solution. This step usually reduces the overall runtime significantly. Since less runtime is provided for each sub problem, those heuristics represent a potential drawback as they can become very time-consuming. For this reason, the impact of this start heuristics will be analyzed. Therefore, the boolean parameter SH allows to include the use of the start heuristic. To find the best parameter settings for the VNDS+E heuristic, several scenarios are defined in the following. Since the number of possible combinations of the parameter settings for the new heuristic is large, five different scenarios are created. The first one represents a base scenario. All other scenarios only differ in a single parameter value. Table 6.8 gives an overview of the scenarios with the corresponding parameter values. Scenario
IS
MR
MN
SH
1 2 3 4 5
TS RS TS TS TS
20 20 30 20 20
3 3 3 5 3
ON ON ON ON OFF
Table 6.8: All 5 scenarios with their parameter values. But before the scenarios will be compared to each other, it is important to assess the effectiveness of the sequence of the BOM-based neighborhoods first. Therefore, only the base scenario is considered and runtime issues are neglected. Results of different BOM-based neighborhood sequences for the base scenario As there is no “logical” sequence for the BOM-based neighborhood structure (concerning the size of the neighborhood), in a first step three different kinds of sequences are tested:
134
Chapter 6. Heuristics for the improved GLSPMS
1. BOM structure β = 1 is arranged before β = 2 (N1B , N2B ). 2. NβB are sorted in the reverse order (N2B , N1B ). 3. Each time the search was successful and the algorithm starts again with the first structure (k=1, on line 9 of Algorithm 4), the sequence is randomly chosen (RND). Since both BOM strategies are identical for the serial problem instances, only the other two product structures are regarded. The corresponding results are shown in Table 6.9. Each problem (Prob) instance has a unique number (ID). The random strategy (RND) serves as a benchmark. Therefore, the average objective values of 30 test runs (Avg) as well as the corresponding coefficient of variation (CV) are given in the second and third column, respectively. For both other combinations (N1B , N2B and N2B , N1B ) the relative percentage gap between the average objective value and the reference (AG) and the coefficient of variation (CV) are listed.
Prob
N1B , N2B
RND
N2B , N1B
Prob
N1B , N2B
RND
N2B , N1B
ID
Avg
CV
AG
CV
AG
CV
ID
Avg
CV
AG
CV
AG
CV
1 2 3 4 5 6 7 8 9 10 Avg
935 1820 913 1733 1668 479 879 775 1322 1209
5 5 3 4 5 2 3 0 2 4 3
-0.9 -0.4 0.2 1.4 1.0 0.1 -0.8 0.0 -0.2 -2.4 -0.2
3 5 4 4 10 1 3 0 2 3 4
-0.4 -0.2 -0.2 1.0 0.2 0.2 0.8 0.1 -0.1 -1.2 0.0
4 4 5 4 6 1 4 0 2 4 3
11 12 13 14 15 16 17 18 19 20 Avg
788 997 1582 773 1002 1542 692 1086 654 1015
2 2 2 2 4 2 2 3 2 2 2
-0.2 1.0 0.4 0.5 -1.2 -0.4 0.1 -0.4 -0.1 -0.2 0.0
2 2 2 5 4 3 2 2 2 2 3
-0.4 0.3 0.8 0.3 -0.7 0.3 0.1 0.0 -0.2 -0.2 0.0
2 2 2 4 6 3 2 2 2 2 3
(a) Divergent problems.
(b) General problems.
Table 6.9: Comparison of different sequences of the bill-of-materials based neighborhood structures. Regarding to the average values in the last rows, no real difference between the structures can be found. In fact, the CV is almost the same per product structure and the AG equals or is close to 0.0%. That is why the hypothesis that a different sequence gives different results has to be rejected as the difference is not significantly statistically proven by the analysis of variance (ANOVA, p > 0.1). Although no real link between the product structures and the neighborhood structures can be derived from this, the BOM-based neighborhoods are useful parts of the solution procedure anyway. As illustrated in Tables 6.10a and 6.10b, both neighborhood structures help to find new solutions. Columns AN1 and AN2 show how often a new solution is found on average by N1B and respectively. For example, on average structure N1B finds a new solution 7.5 times for problem 1 when this structure is arranged before N2B . Interestingly, the neighborhood which N2B ,
6.3. Computational tests
Prob ID 1 2 3 4 5 6 7 8 9 10 Avg
RND
135
N1B , N2B
N2B , N1B
AN1 AN2 AN1 AN2 AN1 AN2 4.7 0.9 5.2 0.3 3.1 2.2 2.2 0.6 3.1 4.8 2.7
7.6 3.7 12.3 4.7 8.4 3.1 3.2 1.1 3.4 9.3 5.7
7.5 0.7 10.0 1.1 6.9 2.3 2.2 0.3 3.5 7.9 4.2
2.7 2.9 2.3 3.8 4.0 1.9 2.2 0.3 2.6 2.1 2.5
5.1 0.7 6.2 0.6 3.2 1.7 1.4 0.3 3.2 5.1 2.7
(a) Divergent problems.
8.6 3.2 13.9 4.3 9.3 2.7 2.5 0.5 3.7 8.7 5.7
Prob ID 11 12 13 14 15 16 17 18 19 20 Avg
RND
N1B , N2B
N2B , N1B
AN1 AN2 AN1 AN2 AN1 AN2 3.2 2.5 1.6 9.8 9.5 3.8 2.8 1.7 8.1 6.3 4.9
4.5 3.4 2.4 19.5 20.1 10.6 2.5 2.4 13.8 9.7 8.9
4.9 2.4 2.1 17.0 18.6 7.9 2.0 2.0 13.3 7.3 7.7
3.9 1.6 1.0 8.0 7.3 7.0 2.1 1.1 9.5 5.3 4.7
3.7 2.3 2.1 11.5 8.6 3.6 2.3 1.7 8.1 6.5 5.0
5.3 2.6 3.5 20.8 17.1 9.7 2.3 2.5 15.6 9.5 8.9
(b) General problems.
Table 6.10: Number of times a new solution has been found by the neighborhood structures on average. comes first finds almost always more new solutions. Consequently, the random sequence is included in the procedure. Results of the different parameter scenarios As a next step, the different scenarios presented above are tested. In Table 6.11, the results of all five scenarios for the 30 problem instances are shown. The problem ID is given in the first column. In columns 2–7, problem details like product structure (PS), the number of production stages (E), the number of lines (L), the number of products (J), the number of macroperiods (T) and the number of microperiods (S) are given. The number of microperiods is chosen in a way that the problem is not solvable to optimality within 1 hour of runtime and a “repeating setup sequence” can be found for it (see Section 6.2.5). In order to make the results comparable, for each problem the minimum runtime (secs.) over all test instances and scenarios is determined (column RT). The objective function values of all of these test instances are then measured at this point in time. Column Min shows the best objective value found by any scenario. Since every problem instance has been solved 30 times for every scenario parameter, the percentage gap between the best value (Min) over all scenarios and the minimum (MG) or the average value (AG) of each scenario can be calculated. Additionally, the coefficient of variation (CV) is given to show the robustness of the solution procedure. For instance, the fastest test run for problem 7 terminates after 387 sec. In that time span the best solution found by one of the 150 runs has an objective value of 843. The best solution for scenario 1 is 0.2% worse than 843 and on average scenario 1 is 6.2% away from this overall best. When considering all divergent problems, scenario 5 performs best with only a 0.3% gap between its best results and the overall best results. Moreover, scenario 5 shows the lowest average gap (AG) for these instances with 6.1% as well. However, all other scenarios produce a lower coefficient of variation than scenario 5. Nevertheless, in sum scenario 5 performs best for all kinds of problems as the total average
PS
DIV DIV DIV DIV DIV DIV DIV DIV DIV DIV
GEN GEN GEN GEN GEN GEN GEN GEN GEN GEN
SER SER SER SER SER SER SER SER SER SER
ID
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
3 3 3 3 3 3 3 3 3 3
2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2
4 4 4 8 8 8 4 4 4 4
3 3 3 6 6 6 3 3 6 6
3 3 6 6 9 6 6 9 3 6
E L
12 12 12 12 12 12 6 6 9 9
11 11 11 11 11 11 8 8 8 8
12 12 12 12 12 6 6 6 9 9
J
8 12 16 8 12 16 12 16 12 16
8 10 12 8 10 12 10 12 10 12
8 12 8 12 12 8 12 12 12 12
T
RT
32 48 64 16 24 32 48 64 36 48
48 60 72 24 30 36 40 48 20 24
187 293 505 359 459 295 341 387 153 358
155 199 267 266 263 555 168 332 226 353
40 141 60 423 24 299 36 652 24 634 24 284 24 387 24 610 36 150 24 326
S
4.9
0.8
2.7
1.1
2.2 0.7 1.3 0.6 0.8 3.5 0.7 0.4 0.7 0.5
2.9
3.2 2.2 2.2 3.1 5.0 3.0 2.6 2.5 2.9 2.7
4.0
5.0 5.2 2.5 3.9 6.0 3.5 3.9 3.8 2.5 4.0
CV
1.3
0.8
1.3 0.0 1.7 1.7 1.4 1.1 0.0 0.0 0.5 0.1
1.7
0.4 1.2 1.3 2.5 2.8 1.7 1.2 2.7 1.3 1.9
1.4
0.5 1.3 4.0 1.2 4.3 0.2 0.0 0.0 2.7 0.0
MG
5.0
1.6
3.0 0.2 2.3 2.8 2.6 1.5 0.7 0.9 0.9 1.1
5.9
5.6 5.5 4.9 7.9 8.7 6.7 4.8 5.3 4.6 4.5
7.7
7.5 10.8 9.9 9.1 17.9 3.2 6.7 0.2 6.6 4.7
AG
Scenario 2
2.3
0.4
1.1 0.2 0.3 0.3 0.3 0.2 0.4 0.5 0.2 0.6
2.5
3.3 2.4 2.1 3.6 3.4 2.3 2.0 1.9 1.8 1.6
3.9
2.4 5.0 5.4 4.2 8.5 2.4 4.3 0.4 2.9 4.0
CV
0.7
0.2
0.1 0.3 0.3 0.0 0.0 0.6 0.0 0.0 0.0 0.2
1.4
3.4 1.9 1.3 1.4 0.2 1.3 2.2 1.3 1.2 0.0
0.6
1.5 0.1 2.5 0.2 0.7 0.0 0.4 0.0 0.0 0.8
MG
5.1
2.0
2.3 2.2 3.9 1.2 1.4 5.1 0.7 0.9 0.9 1.2
6.3
7.3 5.1 5.1 7.0 9.1 5.9 5.8 5.3 6.0 6.0
7.0
7.0 11.1 8.0 8.6 13.0 3.3 7.4 1.1 3.8 6.4
AG
Scenario 3
2.8
2.0
2.1 0.9 10.1 0.6 0.9 3.0 0.5 0.4 0.5 0.6
2.8
2.8 2.1 2.6 2.8 6.2 2.7 2.2 2.1 2.3 2.5
3.6
3.1 5.0 4.1 4.2 6.9 2.5 4.0 1.3 2.1 2.9
CV
Table 6.11: Results of all 30 problem instances.
1.8
0.3
Avg Total
5.8 2.3 2.3 1.9 1.6 1.6 3.8 0.9 0.8 1.2 1.3
0.9 0.0 1.0 0.0 0.6 0.2 0.6 0.0 0.0 0.1 0.4
6902 9313 13916 6762 9117 13760 4500 6702 7982 12451
Avg
7.0 6.4 4.8 2.7 7.1 9.0 5.5 5.2 5.6 6.1 6.2
1.2 0.0 1.0 0.0 1.1 1.5 0.9 1.0 1.2 0.0 2.6
Avg 755 977 1572 735 958 1506 671 1044 621 974
8.0 11.6 6.6 7.6 13.2 3.5 6.2 1.5 4.1 7.8
0.2 1.9 2.7 0.0 3.5 0.4 0.2 0.0 0.5 2.2
AG
Scenario 1 MG
881 1716 861 1642 1501 472 843 775 1281 1128
Min
0.8
0.2
0.1 0.3 0.6 0.3 0.6 0.0 0.0 0.0 0.2 0.0
1.3
2.4 2.1 0.4 0.0 0.0 0.9 2.1 0.3 2.7 2.2
0.8
1.5 1.0 0.8 0.3 0.0 0.6 1.0 0.0 1.7 0.6
MG
4.9
1.6
1.9 1.8 1.9 1.2 1.5 4.4 0.8 0.8 1.0 1.0
6.6
8.7 5.9 4.4 10.0 9.6 5.1 5.8 4.8 6.4 5.5
6.6
10.9 8.6 6.2 8.1 11.3 2.1 5.5 0.6 4.3 8.1
AG
Scenario 4
2.6
1.4
0.9 0.6 1.7 0.5 0.5 7.2 0.5 0.4 0.6 0.7
2.8
3.0 2.6 1.6 4.7 4.2 2.8 2.2 2.5 2.2 2.2
3.7
5.4 4.0 5.1 5.0 5.9 1.6 2.9 0.9 1.4 4.9
CV
0.4
0.3
0.4 0.4 0.6 0.2 0.6 0.5 0.0 0.0 0.0 0.2
0.7
2.5 0.0 0.2 0.8 0.7 0.0 0.0 0.0 1.3 1.4
0.3
0.0 0.0 0.0 0.3 0.4 0.0 0.7 0.0 1.3 0.3
MG
4.6
2.2
1.8 1.9 2.0 1.5 1.4 9.2 0.8 0.9 0.9 1.1
5.4
6.2 4.4 3.3 6.3 8.4 5.0 4.6 5.0 4.7 5.6
6.1
6.5 9.3 5.5 6.2 11.6 2.4 6.3 1.7 4.7 7.2
AG
Scenario 5
3.0
2.0
1.1 0.7 1.9 0.7 0.5 12.6 0.6 0.4 0.6 0.5
2.8
2.7 2.0 2.0 3.0 6.0 3.0 2.5 2.0 2.7 2.2
4.1
3.9 5.3 3.3 5.9 7.4 1.7 4.4 3.0 2.3 4.2
CV
136 Chapter 6. Heuristics for the improved GLSPMS
6.3. Computational tests
137
MG- and AG-values are the lowest (0.4 and 4.6%, respectively). One reason for this might be that the starting heuristic is not able to find a better upper bound. Thus, useful runtime is “wasted” and the Branch&Bound procedure is started too late.22 Besides, scenario 2 gives the stablest results in total. However, comparing the results of all scenarios, the new heuristic seems to be quite a robust procedure as the differences between the scenarios are very small in terms of the best (MG) and the average solutions found (AG). To illustrate the different behavior of scenario 2 and 5, the development of the objective values of problem 24 is shown in Figure 6.16. For each point in time the best, the worst and the mean value is determined for the heuristic. Obviously, the initial solution provided by the RS model has a significant lower objective function value (Figure 6.16a). Moreover, the heuristic converges quite fast with that solution and after 155 sec. no real improvement can be achieved. In contrast, scenario 5 starts with a significantly worse initial solution (Figure 6.16b). Thus, it takes a while until all 30 runs produce good results. However, after 359 sec., scenario 5 is slightly better than scenario 2—on average and in total. 6.3.2.3
Results for VNDS+E, tailored Fix&Optimize, and Truncated MIP
The aim is now to compare VNDS+E (with its best parameter setting scenario 5), tailored Fix&Optimize (FO), and Truncated MIP (TM) which is used as a benchmark. The results are summarized in Table 6.12. Once more the average percentage gaps of scenario 5 (SC5) are given (AG). Column TM shows the gap (Gap) of Truncated MIP to the best value of all scenarios (column Min in Table 6.11) after the same minimum runtime described before (column RT in Table 6.11). For the tailored Fix&Optimize, the gap (Gap) to this overall best value is given as well. However, since FO often terminated earlier, the runtime (RT) is listed additionally. For problem 7 once again it means that the execution of the MIP-solver is stopped after 387 sec. with a gap of 34.1% to 843. What can be realized is that the new VNDS+E beats Truncated MIP almost always by far. However, the results of problem 8 and the serial problems are comparable, as they seem easier to solve.23 Unfortunately, the tailored Fix&Optimize performs quite bad except for problem 8. That is why FO is dropped from further consideration. 6.3.2.4
Results for VNDS+E and Truncated MIP after 1 hour of runtime
In order to see the convergence behavior of the new heuristic, Truncated MIP as well as VNDS+E are now run for one hour. For that purpose three problems with the highest CV-value are chosen out of each group of product structures (see bold values in Table 6.11). 22
Note that this is the major difference to the results by Seeanner et al. (2013). In order to get an impression of the heuristics’ behavior, three different instances are graphically represented in the Appendix B (see Figures B.1, B.2, and B.3). 23
138
Chapter 6. Heuristics for the improved GLSPMS
!"#$ !"#$
(a) Parameter scenario 2.
!"#$ !"#$
(b) Parameter scenario 5.
Figure 6.16: Problem 24 solved with different parameter scenarios.
6.3. Computational tests
Prob SC5 ID 1 2 3 4 5 6 7 8 9 10
AG 6.5 9.3 5.5 6.2 11.6 2.4 6.3 1.7 4.7 7.2
TM Gap 299.7 317.9 181.4 314.7 236.6 13.9 34.1 1.1 83.0 26.8
139
FO Gap 1255.2 1172.2 1284.8 1226.4 1349.5 22.1 32.3 0.0 861.0 987.7
Prob SC5 TM RT 27 158 26 114 25 173 51 69 23 37
(a) Divergent problems.
ID 11 12 13 14 15 16 17 18 19 20
AG 6.2 4.4 3.3 6.3 8.4 5.0 4.6 5.0 4.7 5.6
Gap 32.8 37.2 70.0 40.7 41.2 82.3 20.8 28.2 28.9 38.2
FO Gap RT 1313.4 11 1369.4 18 1256.3 23 1371.7 28 1418.3 24 1329.8 41 1663.2 7 1465.3 10 1804.5 6 1577.2 13
(b) General problems.
Prob SC5 TM ID 21 22 23 24 25 26 27 28 29 30
AG 1.8 1.9 2.0 1.5 1.4 9.2 0.8 0.9 0.9 1.1
FO
Gap Gap RT 12.6 79.8 7 11.7 79.9 11 17.2 78.3 15 9.5 83.5 8 9.0 83.7 14 38.1 80.3 23 2.4 52.9 5 2.3 54.9 7 1.6 51.4 7 3.1 47.6 11
(c) Serial problems.
Table 6.12: Comparison of scenario 5 (SC5), Truncated MIP (TM), and tailored Fix&Optimize (FO).
To ensure a runtime of one hour, it might become necessary to “restart” the new heuristic if all neighborhoods have been visited (cf. lines 18–24 in Algorithm 4). The results of the procedure can be seen in Table 6.13.
Prob ID 2 4 5
TM
SC5
Gap MG AG CV 77.8 -2.9 2.3 2.7 121.2 -2.6 2.6 3.3 90.0 0.0 6.2 3.5
(a) Divergent problems.
Prob TM ID 14 15 16
SC5
Gap MG AG CV 18.1 -2.5 2.9 3.2 21.6 -4.6 1.1 2.3 78.7 -4.4 0.8 2.4
(b) General problems.
Prob TM ID 21 23 26
SC5
Gap MG AG CV 7.8 -0.1 1.0 0.7 9.7 0.1 0.9 0.5 9.1 -0.7 0.4 0.6
(c) Serial problems.
Table 6.13: Comparison of scenario 5 and Truncated MIP (TM) after 1 hour runtime.
Again, benchmark is the best value of all scenarios after the minimum runtime as presented in the columns Min and RT in Table 6.11. Column TM gives the percentage gap of the solution found by Truncated MIP to this benchmark. Once more the gap of the best objective value of 30 runs (MG) and the gap of the corresponding average value (AG) are given as well as the coefficient of variation (CV). Note that since the heuristics are run for 1 hour, the benchmark values can even be improved which results in negative MG-values. Even though the CVs can only be slightly reduced for some of the instances, especially for the general and the divergent product structures the supremacy of the new procedure is shown. Since the nine chosen problem instances are the largest ones in terms of number of setup variables, it can be presumed that the bigger the problems the more effective VNDS+E behaves compared to Truncated MIP. In the following, this supposition should be checked with the help of a real-world problem instance.
140
Chapter 6. Heuristics for the improved GLSPMS
6.3.3
A real-world instance
A European company produces in a two-stage environment plastic foils with varying compositions and in different types of breadth, thickness, color, and adhesion. At the first stage, seven kinds of resins are produced on two heterogeneous production lines. Another three resins can only be externally purchased. These ten types of resins are then processed to several hundred final items. These items can be grouped into 41 setup families. These families are produced on the three heterogeneous lines of the second stage. Furthermore, both stages are decoupled by tanks with limited capacity. The planning horizon encompasses 12 weeks, production takes place 24/7, i.e. 168 hours per week. Demand forecasts are available on a weekly base and stock holding costs are calculated on a weekly base as well. Accordingly, a macroperiod represents one week of planning. The problem is solved with Truncated MIP and again 30 times with VNDS+E, each limited to 1 hour of runtime. Once more, the flow formulation with the tighter setup forcing constraints and the stock inequalities (F+M+K) is tested using parameter scenario 5. The results can be found in Table 6.14. The shown values refer to the instance with 17 (= V ) microperiods per macro (204 microperiods in total). Again, the column AG describes the average gap to the best solution found in these 30 runs and CV is the coefficient of variation. Unfortunately, these values (124.1 and 38.2, respectively) are very high. But as can also be seen, Truncated MIP (column TM) is not able to find any feasible solution.24 One reason might be that due to the stock inequalities (see Section 5.4), Xpress needs the 8 GB of RAM just for reading the model. Accordingly, it is not surprising that the LP relaxation of this instance takes more than half an hour and the initial LP with the fixed setup pattern of the trivial solution about 12 minutes. SC5 Micros 204
AG
CV
TM Gap
124.1 38.2 no incumb.
Table 6.14: Comparison of Truncated MIP (TM) and the new heuristic after 1 hour of runtime. Since the range of solution values is quite high, the impact of the used model formulation and the chosen parameter scenario must be clarified. Hence, further comparisons are made next. At first, parameter scenario 2 is applied to the flow formulation again as this scenario showed more stable results in Section 6.3.2.2. However, since the memory problem is still present, the VNDS+E heuristic is also applied for the original improved formulation (O) 24
This is also the case for 16, 15, and 14 microperiods per macro.
6.3. Computational tests
141
which is the smallest one in terms of the number of variables and constraints.25 Both parameter scenarios 2 and 5 are used for this second formulation. The results are given in Table 6.15 where the best solution found for F+M+K and scenario 2 with 204 microperiods serves as the benchmark (the corresponding MG-value is therefore 0).
F+M+K SC5 Micros MG 204 216 228
0.0 – –
AG
CV MG
124.1 38.2 – – – –
0.0 – –
O SC2
SC5
SC2
AG
CV MG AG CV MG
AG
CV
Gap
-31.7 -26.6 -30.5 -24.0 -27.2 -22.3
4.5 3.9 4.1
no incumb. – –
181.0 48.6 -17.7 -9.7 – – – – – – – –
5.1 – –
TM
Table 6.15: Comparison of scenarios 2 and 5 for formulations F+M+K and O.
First of all, the new results confirm the previous ones because scenario 2 performs worse than scenario 5 for the flow formulation. Moreover, not only is the average gap larger but also the CV value is significantly higher. In contrast, the results of the original formulation are much better than the ones of the flow formulation. For instance, the best solution found by scenario 5 is 17.7% better than the best result of the flow formulation for the same runtime. This might be an indication that the availability of RAM is a crucial factor (about 2.2 GB are necessary for model loading). However, it seems that a large-sized instance of the GLSPMS is hard to solve anyway because Xpress is still not able to find an incumbent solution.26 Probably, this is also the reason why scenario 5 performs better than scenario 2. Surprisingly, scenario 2 beats scenario 5 for the original formulation to a large extent. The MG-value is almost 32% better and on average the objective function values are 26.6% lower than for the flow formulation.27 Since the results of the original formulation with scenario 2 are quite stable (CV < 5%), these settings are used to check the impact of increasing the number of microperiods.28 As also illustrated in Table 6.15, once more VNDS+E provides stable results for 216 and 228 microperiods. However, these solutions are slightly worse than the ones with 204 microperiods. Correspondingly, 17 microperiods per macro seem to be a reasonable choice as the convergency is good as well (cf. Figure 6.17).
25 Moreover, this formulation allows to compare the results of Seeanner et al. (2013) who also use the original formulation, but of a further GLSPMS variant. 26 The GLSPMS as presented by Seeanner et al. (2013) was solvable by Xpress. However, it did not contain the synchronization constraints yet. Hence, it appears that the new constraints make the improved GLSPMS much harder to solve. 27 These results are closely related to the ones by Seeanner et al. (2013) who make the same observation. 28 The “–” symbolizes that these settings are dropped.
142
Chapter 6. Heuristics for the improved GLSPMS
!" # !"
Figure 6.17: The percentage gap of the best VNDS+E run with the O-formulation and scenario 2 for 204 microperiods.
6.4
Brief summary
In this chapter, several new heuristics for the GLSPMS have been developed and tested. To start with simple construction heuristics, LP&Fix and Relax&Fix were examined first. Even for small instances, both heuristics showed bad performance. Hence, the focus was shifted to improvement heuristics, especially to the new VNDS+E heuristic based on (micro)period, product, bill-of-materials and production line decompositions. After the parameters were tuned for this heuristic, VNDS+E was then compared to a GLSPMS tailored version of Fix&Optimize and Truncated MIP which served as a benchmark. For this comparison, bigger problem instances were created and the two very fast construction heuristics TS and RS which make use of the GLSPMS relaxations were applied to generate initial solutions. In sum, the results of VNDS+E were significantly better for most of the instances. Moreover, an indication for convergency could also be found. Because of the good results, VNDS+E was also used to solve a large real-world problem instance. Unfortunately, the model formulation F+M+K exceeded the available PC-memory which seemed to have an impact on the solution quality. However, by using the original GLSPMS formulation (improved version), VNDS+E was able to find good solutions for this large instance as well. Thus, a powerful solution method is available now. For this reason, extensions of the GLSPMS can be examined in the following.
Chapter 7 Extensions of the improved GLSPMS Chapter 2 illustrated the attributes of a flow line production system which might need to be considered by a simultaneous lot-sizing and scheduling. Indeed, the GLSPMS regards most of these attributes and allows hereby solving different problem settings of the consumer packaged goods industry. Despite, there are some important aspects left which are not included in this model so far. But as already outlined before, a model should be as detailed as necessary and as simple as possible for solvability purposes. However, as the new VNDS+E heuristic is able to solve the GLSPMS satisfactorily, it now makes sense to develop further extensions of the model. Especially the structural properties of the GLSPMS help integrate further (scheduling) aspects. Hence, the first section will present several extensions concerning the availability of scarce resources. Since these extensions might potentially need a high number of microperiods, the drawback of short period lengths as shown in Section 4.3.2 becomes a severe issue. Therefore, time continuity will be the topic in the second part of this chapter.
7.1
Availability of resources
Most of the lot-sizing and scheduling models given in Chapter 3 only regard the limited capacity of machines and production lines, respectively. However, as outlined in Section 2.2.2, other resources like raw materials and labor force might also be limited and thus have to be taken into consideration.
7.1.1
Limited raw materials
Normally, a manufacturing company tries to find reliable suppliers with a reasonable service level and reasonable lead times. Nevertheless, it might happen for different reasons1 that not 1 For example, after the earthquake, the tsunami, and the nuclear disaster in Japan, many supply chains got disrupted in 2011.
F. Seeanner, Multi-Stage Simultaneous Lot-Sizing and Scheduling, Produktion und Logistik, DOI 10.1007/978-3-658-02089-7_7, © Springer Fachmedien Wiesbaden 2013
144
Chapter 7. Extensions of the improved GLSPMS
enough raw materials are available. Then, the materials have to be considered by the model as well. In the following, we assume that M different materials are scarce and that Rmt describes the available quantity of the material m in macroperiod t. Furthermore, gozinto factor armj gives the quantity of material m which is needed for producing one unit of item j. In sum, this leads to the first extension as follows: Index m
Data armj Rmt
= 1, ..., M raw materials
consumption (unit) of material m needed to produce one unit of product j available quantity (unit) of material m in macroperiod t
armj xljs ≤ Rmt
∀m, t
(7.1)
l,j s∈St
By adding the constraints (7.1) to the improved GLSPMS, it can be assured that in each macroperiod t only the available quantity of material m is used for production. In the regarded case, the demand for the raw material is triggered by the production activity. But certain setup states2 or changeovers might need further resources, too. With the help of consumption coefficients for a certain resource and its available capacity, such limitations can be modeled in the same way as for the raw materials above. Then, the resource demand always refers to an entire micro- or macroperiod. However, this approach is quite “rough” even for microperiods. But especially for scarce resources like setup operators, the limitation may have a strong impact on the resulting production plan. Accordingly, a more complex formulation must be used to include the timing aspect in a more appropriate way as shown next.
7.1.2
Scarce common setup operators
Flow lines are sometimes operated and maintained by highly specialized personnel. This staff is usually neither working 24/7 nor available in an unlimited number. Accordingly, it might be necessary to model the limited availability of setup operators who execute the setup changeover. In contrast to the area of scheduling (cf. Cheng et al., 1999), researchers 2 A typical real-world case is, for instance, the availability of certain molds which are installed to the machine and are needed for production.
7.1. Availability of resources
145
in the field of lot-sizing (and scheduling) have paid less attention to this case so far. That is why only a few articles can be found in the literature. One recent approach is proposed by Tempelmeier and Buschkühl (2008). They extend the PLSP for a common setup operator. An important issue for the deployment of the operators is the time synchronization again because it is necessary to know the starting and ending time of the setup operations. Therefore, Tempelmeier and Buschkühl introduce additional variables in order to determine these points in time. Since these points can be directly obtained within the GLSPMS, it is straightforward to include setup operators in this model. Figure 7.1 shows the optimal solution of the basic instance with a general product structure (see Section 4.4.1.3). s=1
s=7
s=4
l=1 l=2 l=3
0
t=1
t=2
t=3
240
time
Figure 7.1: The optimal solution of an artificial instance without considering any setup operator. As can be seen, on all three machines, several setups (black boxes) have to be executed in the planning horizon, many of them in parallel. However, if only a single setup team is available in reality for operating the production lines, this shown solution would be infeasible. Hence, a corresponding extension of the GLSPMS, which allows modeling this limitation of setup resources, is presented next. Therefore, we assume that o = 1, ..., O different setup operators / setup teams are available. Each operator is able to execute different changeovers. Moreover, a setup must be completely executed by the same operator. The idea is now to connect a suited operator to a changeover with the help of additional binary variables. Such a binary variable y˜los becomes 1 if the setup time needed for a changeover on line l in microperiod s (xel,s−1 + xbls ) has to be spent by operator o. In sum, the following index, index sets, and variables are used: Index o
Index sets Olij
= 1, . . . , O setup operators
set of operators which are able to execute the changeover from product i to j on line l
146
Chapter 7. Extensions of the improved GLSPMS
Jl
set of products which can be produced on line l
Variables y˜los ∈ {0, 1} z˜okls ∈ {0, 1}
equals 1 if a setup changeover on production line l in microperiod s indi cated by i,j : i=j zlijs = 1 is assigned to setup operator o (0 otherwise) equals 1 if setup operator o is assigned to line k in microperiod s − 1 and to l (different from k) in microperiod s (0 otherwise)
Based on these variables, the constraints which are introduced next can be added to the improved model formulation of Section 4.2.2.
y˜los ≥ zlijs
∀l, i, j = i, s
(7.2)
y˜los ≤ 1
∀o, s
(7.3)
z˜okls ≥ y˜ko,s−1 + y˜los − 1
∀o, k, l = k, s ≥ 2
(7.4)
xbks + xels − stmax (1 − z˜okl,s+1 ) ≤ (ws+1 − ws ) + os
∀o, k, l = k, s
(7.5)
o∈Olij
l
First of all, constraints (7.2) enforce that a suitable operator has to execute the changeover. If a setup change from product i to j takes place on line l in microperiod s (zlijs = 1), an operator o needs to be chosen from Olij . Moreover, constraints (7.3) ensure that an operator can only be assigned to only one machine at the same time. If a certain setup operator o is responsible for two consecutive changeovers on the same line, no time synchronization problem occurs. In contrast, if the operator o needs to execute changeovers on different lines, an infeasible plan may result due to the setup splitting opportunity of the GLSPMS. As shown in Figure 7.2a, it might happen that the operator has not finished the operation on line k for a changeover (zkii s = 1) before the setup changeover on another line (zljj ,s+1 = 1) starts. Thus, the setup times may overlap. period s-1 j
line l line k
i
period s+1
period s setup
period s-1 j
j'
i'
period s+1
period s
i
setup
j'
i'
time (a) No time synchronization of setups.
(b) Synchronization of setup operations.
Figure 7.2: Scheduling of a setup operator.
7.1. Availability of resources
147
To avoid this problem, the corresponding line change must be detected and sufficient time for both setups has to be made available. The former is achieved by constraints (7.4) and the binary variable z˜okls which becomes 1, if operator o is first assigned to line k in microperiod s − 1 and then to l in microperiod s. The latter follows from constraints (7.5): If the setup operator has to change from line k to l in microperiod s, the term in brackets on the left-hand side becomes 0 and the length of the microperiod must be at least as long as both setup time fractions xbks and xels . Otherwise, the microperiod length must not be influenced by this constraint. For that purpose, −stmax is chosen as a coefficient of sufficient size because xbks ≤ stmax and xels ≤ stmax and the microperiod is per se at least as long as each of these fractions. Correspondingly, the result of these new constraints may look like Figure 7.2b. Note that it is allowed to assign two or more operators to a certain line in the same microperiod because such a solution is, of course, feasible in reality. However, if setup operators are actually scarce, a multiple assignment will not occur. To illustrate the impact of constraints (7.2)–(7.5), the test instance considered at the beginning of this section is extended by the following data: We assume now that only a single setup team (O = 1) is available which is able to execute the changeovers on all lines. Accordingly, the index set is Olij = {1} for all l and all i, j ∈ Jl . Figure 7.3 illustrates the result and Table 7.1 shows the corresponding values of the new variables. s=1
s=7
s=4
l=1 l=2 l=3 t=1
0
t=2
t=3
240
time
Figure 7.3: The optimal solution for the same artificial instance with one setup team.
o yl,1,s
s=1
s=2
s=3
s=4
s=5
s=6
s=7
s=8
s=9
l=1 l=2 l=3
0 0 1
1 0 0
1 0 0
0 1 0
0 0 1
1 0 0
0 1 0
1 0 0
0 1 0
(1,2)
(2,3)
(3,1)
(1,2)
(2,1)
(1,2)
o z1(l,k)s =1
(3,1)
Table 7.1: Setup operator assignement. In this solution, the operator has to change, for instance, from line k = 3 to l = 1 in microperiod s = 5. Therefore, this period is long enough (14 time units) to allow the operator executing the setups (xb35 = 6 and xe15 = 6). Interestingly, the computational effort for Xpress to solve the current test instance to optimality is much lower than without regarding the setup operators. The optimal solution
148
Chapter 7. Extensions of the improved GLSPMS
as shown in Figure 7.3 could be found after 250 sec. of runtime. On the contrary, the solution in Figure 7.3 was found in 45 sec. Obviously, the MIP solver benefits in this case from the reduction of the solution space. Instead of 12 changeovers, the single setup team is now only able to execute eight changeovers. This leads to higher stock holding costs (about 70% increase) and makes it necessary to purchase items (total costs raise by factor 2.5). But this can be avoided as the production lines and the operator have idle time. One possibility would be to increase the number of microperiods to allow more setups (e.g., using four microperiods per macroperiod reduces the total costs by 28% for the regarded instance). Unfortunately, this might cause another problem as will be illustrated next in Section 7.2. Another limitation may be the availability of setup tools which are needed for executing the changeovers. By using the same variables and constraints as for the setup operators, these limited setup tools can be modeled exactly the same way.3
7.2
Time continuity
As outlined in the section before, a high number of microperiods might become necessary. But this leads to short microperiod lengths which are a severe issue (see also Section 4.3.2). Despite the setup splitting capabilities of the GLSPMS, high setup times can lead to unnecessary idle times or even make the problem infeasible. Correspondingly, an approach which is able to “distribute” setup times over more than two consecutive microperiods is preferable in that case. Suerie (2005b) examines how STBand LTB-models can be extended in a way that lot-sizes as well as setup operations do not have to stick to any time bucket boundaries. Suerie presents different model formulations which he embraces under the term “time continuity”. The underlying modeling approach for period-overlapping setup times will be applied to the improved GLSPMS in the following (q.v. Suerie, 2006).
7.2.1
Setup times
Actually, there are several scenarios where the setup time might become a critical factor. For instance, if plenty more items have to be produced on a certain line than on another line and the latter one shows significantly longer setup times, the GLSPMS might not be able to consider this appropriately. Figure 7.4 shows an example of a production plan which cannot be obtained by the model so far. 3 Note that the new VNDS+E heuristic can be applied to the improved GLSPMS with the operator extension. However, the RS model (Section 6.2.5) cannot be used to find a first initial solution, since overtime might not be sufficient for generating a feasible solution. The reason is that more setups have to be executed consecutively which leads to a higher number of needed microperiods. Either the RS model has to be adapted accordingly or the TS (Section 6.2.4) solution can be used alternatively.
7.2. Time continuity
149 microperiods s=1 l=1 j=1
l=2 j=6
s=2
s=3
s=4
s=5
j=2
j=3
j=4
j=5
j=7
time
Figure 7.4: Example for a setup time overlapping more than two microperiods. On line l = 1, three complete production lots of the products j = 2, 3, and 4 can be processed in the same time as it takes to set up line l = 2 for product j = 7. Hence, the GLSPMS should allow the setup time on this second line to overlap the microperiods s = 2, 3, and 4 to get such a compact plan. If a setup has to span more than two microperiods, there must be at least one microperiod in between which exclusively consists of setup time. To model this, new setup state variables yljs are inserted into the GLSPMS in analogy to Suerie. They indicate such a “continuous” setup on line l in microperiod s and forbid any other activity (standby or production) on the corresponding line. Regarding the above example, it means that the continuous setup state must be active (set to 1) for line l = 2 in microperiods s = 2, 3, and 4. To be specific, these continuous setup states need to be activated for product j = 6 (y262 = y263 = y264 = 1). This is necessary as in microperiod 5 we need to know the product that was set up before the changeover has been started. Otherwise, we cannot determine which changeover is completed. Since the lengths of the microperiods are not fixed in the improved GLSPMS, additional variables τls and σls are needed. They cumulate the times which has been spent for setup on line l until microperiod s. However, they should only cumulate as long as these times belong to the same setup changeover process. Therefore, a reset of these variables is necessary: If a new production lot begins, the corresponding τls and σls have to be set to zero. If a new changeover starts, the variables must take the value of the time already spent for this setup. The differences between these two types of variables, why they are needed, and how this reset works will be explained right after the model formulation is given. In sum, the improved GLSPMS has to be extended by three new groups of variables: Variables yljs ∈ {0, 1}
τls σls
continuous setup state yljs equals 1 if microperiod s on line l exclusively consists of setup time and product j is the last item which was produced in a preceding microperiod v < s lower bound for the cumulated setup time until microperiod s on line l upper bound for the cumulated setup time until microperiod s on line l
150
Chapter 7. Extensions of the improved GLSPMS
Even though only three new groups of variables are needed, several new constraints have to be included to realize the period overlapping setup times. For this reason, a complete formulation of this extension is given next (once more the numbers of the unchanged elements—compared to the improved GLSPMS—are marked with an asterisk):
Objective function min
hjs Ijs +
s∈Λ,j=0
slij zlijs +
l,i,j,s
+
cplj xljs
l,j,s
cl (xbls + xels ) +
cej ejs +
j=0,s
l,s
co · o s +
hjsxljs (7.6*)
l,s∈Λ,j=0
s
subject to
Ijs = Ij,s−1 +
x ljs +
l
xbls
+
xbls
xlj,s−1 −
l
+
alj xljs +
l
xels
ws = w s
∀s ∈ Φ
(7.7*)
x ljs + xljs = xljs
∀l, j = 0, s
(7.8*)
pji xlis + ejs − djs
∀j = 0, s
(7.9*)
i∈Nj
IjT = Ij0
∀j = 0 (7.10*)
Ijs ≤ Ijmax
∀j = 0, s (7.11*)
xljs ≤ Wmax lj
∀l, j, s (7.12*)
= (ws+1 − ws ) + os
∀l, s (7.13*)
alj xljs ≤ wS+1 yljs
∀l, j, s (7.14*)
xljs ≥ mlj (yljs − ylj,s−1 ) (yljs + yljs ) = 1
∀l, j, s (7.15*)
+
xels
j
∀l, s
(7.16)
∀l, i, j, s
(7.17)
j
(yli,s−1 + yli,s−1 ) + (yljs + yljs ) − 1 ≤ zlijs
xbls + xels + xels ≤ wS+1
1−
yljs = 0
∀l, s, j ∈ / Jl (7.18*)
yljs = 0
∀l, s, j ∈ / Jl
(7.19)
∀l, s
(7.20)
∀l, s
(7.21)
∀l, s
(7.22)
∀l, s
(7.23)
yljs
j
τls ≤ τl,s−1 + xel,s−1 + xbls τls ≥ stlij zlijs i,j
τls ≤ xel,s−1 + xbls + stmax
1−
j
ylj,s−1
7.2. Time continuity
151
σls ≥ σl,s−1 +
xel,s−1
σls ≤
i,j
yljs ≤ ylj,s−1 + ylj,s−1 + xbls − stlij zlij,s−1
∀l, j, s
(7.24)
∀l, s
(7.25)
∀l, s
(7.26)
i,j
stlij zlijs +
stmax yljs
j
zlijs = 1
∀l, s (7.27*)
xljs = 0
∀l, s ∈ / Πl (7.28*)
ejs ≤ emax j
∀j = 0, s (7.29*)
os ≤ omax
∀s ∈ Λ (7.30*)
os = 0
∀s ∈ / Λ (7.31*)
i,j
j=0
xbls + xbls ≥ xbks + xbks − wS+1 (2 − yljs − ykis ) ∀s, (k, i, l, j) ∈ D (7.32*) kis + xeks + xeks ≥ xels + xels − wS+1 (2 − ykis − yljs ) ∀s, (k, i, l, j) ∈ D (7.33*) aki x As described above, a new setup state is introduced. Correspondingly, the variables yljs enter the unique setup constraints (7.16). Hence, the changeover constraints (7.17) have to consider the new setup states as well. Moreover, constraints (7.19) fix the continuous setup state variables to zero for items which are not producible. If yljs is active (=1), constraints (7.20) force all elements of microperiod s to be zero—except for xbls .4 Since the setup splitting constraints (4.8) and (4.9*) of the improved formulation prevent setup times to overlap more than two consecutive microperiods, these constraints are dropped. But of course, it must be still assured that the whole setup time is “spent”. Hence, the variables for the cumulated setup time come into play. To achieve a cumulation, constraints (7.21) allow τls to reach a value up to the sum of the cumulated setup time in the previous microperiod and the time actually spent for the setup between the last and the current microperiod. Correspondingly, τls is a lower bound which must be at least as big as the necessary setup time (7.22) if the changeover process is finished in microperiod s and the changeover variable zlijs becomes 1 for i = j, respectively.5 Note that for these constraints (7.22) an equality can not be postulated as zljjs = 1 forbids a cumulation. But as soon as a changeover is completed, τls must be reset. Otherwise, the cumulated value could be carried to the next changeover and the corresponding setup time needs not to be spent completely anymore. Therefore, constraints (7.23) are necessary: If there was a “normal” setup state in the previous microperiod s − 1, τls is limited to the sum of the setup split variables. Otherwise, τls must not be restricted which is possible by using the maximum setup time as an upper bound. Since this reset is controlled by the “normal” setup state, 4 Note that the production variable xljs is already zero because the “normal” setup state variable yljs has to be zero as well due to (7.16). 5 A lower bound is usually sufficient because a limited capacity forces xbls and xels (thus τls ) to take the smallest possible value.
152
Chapter 7. Extensions of the improved GLSPMS
a continuous setup state yljs may only become 1 if already the continuous setup state or a normal setup state for the same item precedes in microperiod s − 1 (7.24). Usually, for most of the test instances in this thesis, the constraints so far will suffice. However, since the GLSPMS also considers standby costs, it might be possible for τls —to be more precise, for the corresponding xbls and xels —to take a value bigger than the corresponding setup time. The new upper bound variables σls now help to prevent this. Constraints (7.25) force σls to cumulate and to be an upper bound for the setup time spent. At the same time, these constraints reset the value if a changeover is completed in the previous period s − 1. Then, σls only has to be non-negative. Due to (7.26), σls must not exceed the needed setup time. Accordingly, xel,s−1 and xbls are restricted and thus τls as well. Note that the second term on the right-hand side of (7.26) is necessary because a continuous setup state with zljjs = 1 forces σls to be zero. To understand the interaction of the new variables and constraints, Figure 7.5 illustrates the result of a small instance with one production line, four products, and five macroperiods (each with a single microperiod). To show the different effects, this example includes a short setup time at the beginning of the planning horizon as well as two longer setups which need to overlap three and two periods, respectively. st112=4
st123=19 j=2
l=1
0
s=1
st134=7 j=3
s=2
s=3
s=4
j=4 s=5
50
time
Figure 7.5: Example for a continuous setup.
Table 7.2 gives the solution values of the new variables as well as of the normal setup state and changeover variables. In the first microperiod s = 1, τ11 and σ11 take the values of the setup time st112 = 4 since the corresponding changeover is completed. In the next period, τ12 and σ12 are set to zero. This is important because otherwise the old value (=4) could be taken into account for the next setup which starts in the current microperiod. This reset is achieved by (7.23) as j y1j1 = 1 and by (7.25) as z1121 = 1. In microperiod s = 3, the continuous setup state y123 = 1 becomes active. Hence, xb13 uses the entire microperiod. Because of z1234 = 1, τ14 = st123 , and σ14 = st123 , the setup is finished in microperiod s = 4. Finally, the last setup is executed regularly without a continuous setup. A problem quite similar to this also arises for minimum lot-sizes. This will be considered next.
7.2. Time continuity
153
y1js = 1 yljs = 1 xb1s xe1s τ1s σ1s z1(i,j)s = 1
s=1
s=2
s=3
s=4
s=5
2 4 0 4 4 (1,2)
2 0 5 0 0 (2,2)
2 10 0 15 15 (2,2)
3 4 1 19 19 (2,3)
4 6 0 7 7 (3,4)
Table 7.2: Solution values of the example for a continuous setup.
7.2.2
Minimum lot-sizes
Although production lots may overlap an arbitrary number of microperiods, the minimum lot-size condition must be fulfilled within a single microperiod. But if large minimum lotsizes have to be assured (cf. Transchel et al. (2011)), the GLSPMS might suffer from the same problem as with the setup times. Again, if the number of microperiods is very high, the minimum lot-sizes lead to unnecessary big microperiods and potential idle times. Or even worse, if the remaining capacity is not sufficient for such a lot, it may lead to infeasibility. The minimum lot-size issue can be solved in a similar way as for the setup time issue by using variables τˆljs as the cumulated lot-sizes and by adding the following constraints to the formulation of Section 4.2.2:
τˆljs ≥ mlj (yljs − ylj,s+1 )
∀l, j, s < S
(7.34)
τˆljS ≥ mlj yljS 1− yli,s−1
∀l, j
(7.35)
∀l, j, s
(7.36)
∀l, j, s
(7.37)
τˆljs ≤ xljs + mlj
i=j
τˆljs ≤ τˆlj,s−1 + xljs
In contrast to the formulation for the period overlapping setup time, no additional state variables are necessary because the changeover variables already indicate a continuous setup state (zljjs = 1). However, the variables τˆljs which cumulate the production quantities still need to be introduced. Similar as before, these new variables have to “cover” the minimum lot-size as soon as a new setup state occurs in the next microperiod. This is achieved by (7.34) and by (7.35) for the last microperiod S. Since the term (yljs − ylj,s+1 ) only becomes 1 if the setup of product j is lost from microperiod s to s + 1, the minimum lot-size constraints need not to be fulfilled as long as the setup for product j is conserved. Accordingly, variables τˆljs must be reset as soon as a new lot starts which is expressed by (7.36). Vice versa, it
154
Chapter 7. Extensions of the improved GLSPMS
means that as long as the setup state is the same, the production quantity can be added (7.37). Here, the cumulated quantity can only be extended by the quantity of the current microperiod.6 Summing up, this chapter showed several extensions of the improved GLSPMS. First, scarce resources like raw materials or setup teams were considered. It became apparent that the time structure of the GLSPMS allows integrating easily those aspects into the model. Second, it was shown how the improved GLSPMS has to be extended to make period-overlapping setup times and minimum lot-sizes possible.
6 Since the setup state variables are still the same as in the improved formulation, the VNDS+E can be used without any changes.
Chapter 8 Summary and Outlook 8.1
Summary
In the consumer packaged goods industry, usually a large number of final items is produced in a two- or three-stage flow line production system with heterogeneous, parallel production lines at each stage. Due to sequence-dependent setup times and costs a simultaneous lotsizing and scheduling of the bottleneck stage is necessary. But as Chapter 2 illustrated, lineand product-specific production speeds in combination with time-varying demand can easily lead to dynamically shifting bottlenecks. In this case, even multiple production stages need to be considered at the same time. Unfortunately, this problem seems not to be adequately addressed by current Advanced Planning Systems what might explain the dissatisfaction of production planners in the regarded industry. Motivated by this situation, the thesis at hand focused on MIP-models for the simultaneous lot-sizing and scheduling of multi-stage flow line production systems. As became apparent in Chapter 3, the scientific community has also paid less attention to this problem so far, since only a few multi-level models actually exist in the literature. Besides, most of these models suffer from the underlying time structure. Unrealistically high lead-time offsets between the stages and setup time issues belong to the major drawbacks. In fact, just a single model seemed suitable for tackling the considered problem: the “General Lot-sizing and Scheduling Problem for Multiple production Stages” (GLSPMS) as proposed by Meyr (2004). The main idea of the GLSPMS is to use a common time grid for all production lines at the different stages. This allows zero lead-times and gives the opportunity of including further scheduling aspects. But as Chapter 4 revealed, the GLSPMS in its basic form has some shortcomings concerning the synchronization of the different stages. Hence, a revised variant of the GLSPMS was proposed and analyzed. Even though this improved model was proved in this thesis to be NP-complete, it had to be checked whether problem instances of a sufficient size can be solved to optimality anyway. Accordingly, artificial test instances with three different types
F. Seeanner, Multi-Stage Simultaneous Lot-Sizing and Scheduling, Produktion und Logistik, DOI 10.1007/978-3-658-02089-7_8, © Springer Fachmedien Wiesbaden 2013
156
Chapter 8. Summary and Outlook
of product structures (serial, divergent, general) were presented. With the help of these instances, the computational performance of a standard MIP-solver was examined. It turned out that only small instances could be solved to optimality in a reasonable amount of time (1h). However, since the model formulation itself has a significant impact on the computational effort of a MIP-solver, Chapter 5 probed different reformulations of the improved GLSPMS. For this purpose, several reformulation techniques which had been successfully applied to other types of lot-sizing problems were adapted for the GLSPMS (see also Seeanner and Meyr, 2013). In addition to a Simple Plant Location (SPL) formulation based on echelon stocks (cf. Stadtler, 1997), a network flow formulation (cf. Karmarkar and Schrage, 1985) was presented. Furthermore, a subset of the (l,S) valid inequalities (cf. Barany et al., 1984) as well as tightened setup forcing constraints were introduced. Each possible combination of these formulations and valid inequalities was tested afterwards, again with the artificial instances of the previous chapter. As a result, the SPL based reformulation performed slightly better for instances with a divergent product structure, whereas the flow formulation showed advantages for all other instances. Moreover, both groups of valid inequalities were always recommendable for all product structures. Nevertheless, even for instances of moderate size the percentage of unfinished problems which cannot be solved to optimality within one hour of runtime was still high. For this reason, new heuristics for the GLSPMS were developed and tested in Chapter 6. In a first step, the simple construction heuristics Truncated MIP, LP&Fix, and Relax&Fix were compared to each other. But the results were not satisfying. Correspondingly, the focus was shifted towards two improvement heuristics: On the one hand, a GLSPMS tailored Fix&Optimize was introduced as it is known to produce good results for another lot-sizing model (cf. Helber and Sahling, 2010). On the other hand, a new heuristic combining the principles of the Variable Neighborhood Decomposition Search (VNDS) heuristic and the MIP-based Exchange was developed (cf. Seeanner et al., 2013). Moreover, for this VNDS+E heuristic, different neighborhood structures were defined based on (micro)period, product, bill-of-materials and production line decompositions. With the help of these decompositions, subproblems of the GLSPMS were built and solved. Since both improvement heuristics need an initial solution and LP&Fix as well as Relax&Fix showed bad performance before, two further construction heuristics were presented. These two take advantage of the GLSPMS structure by using penalty costs. Though they generate bad solutions yet, these solutions are acceptable for this purpose as the heuristics are very fast and allow to spend more time for the improvement procedures. The first construction heuristic creates a setup sequence which conserves the initial setup state and forbids any changeover. The second one builds a repeating setup sequence where each product with a positive net demand is set up at least once in every macroperiod. But before a comparison between the improvement heuristics could be made, the pa-
8.2. Outlook
157
rameters of the VNDS+E had to be tuned. Therefore, parameter scenarios with different settings which also included the two new construction heuristics were defined. In sum, the scenario that deactivates the starting heuristic of the MIP-solver performed best. Hence, it was used for the following tests. However, it could be observed that the other parameter scenarios also performed quite well. Accordingly, VNDS+E is quite robust in terms of the parameters used and the quality of the initial solution. Both heuristics were then examined. Moreover, the artificial test instances of Chapter 4 were increased to get more realistic problem sizes. In accordance with the previous results, the flow formulation with both groups of valid inequalities was used. In addition, Truncated MIP served as a benchmark because it is construction and improvement heuristic at the same time. As a result, the new VNDS+E heuristic beat the other two by far. Up to then, only (small- and big-sized) artificial test instances have been examined. Since the VNDS+E produced good results, a large-sized real-world problem from a chemical company was examined as well. Unfortunately, the resulting MIP caused memory issues for the PC due to the size of the model formulation with the subset of (l,S)-inequalities. Accordingly, VNDS+E was tested once more, now with the original formulation of the improved GLSPMS. Hereby, reliably good solutions (as confirmed by the company) could be obtained within 1-2 hours of runtime. Finally, several extensions of the GLSPMS were proposed in Chapter 7. Due to its time structure, scarce setup resources such as operators and tools which have to be synchronized between the stages could be integrated in the model. Moreover, one weakness of the GLSPMS was finally tackled by introducing period overlapping setup times as well as period overlapping minimum lot-sizes.
8.2
Outlook
To complete this thesis, some topics will be presented next which might be interesting for ongoing research (cf. Clark et al., 2011). This includes some deepening aspects concerning the application of the improved GLSPMS and the VNDS+E heuristic as well as the broadening view of neighboring fields with existing interdependencies: Solving further real-world problems As illustrated in Chapter 4 the GLSPMS allows for solving different problem settings from the consumer packaged goods industry. Accordingly, it is possible to tackle some of the problems modeled by the other multilevel formulations. Then, not only could the quality of the GLSPMS but also of the new solution method be compared. Furthermore, the extensions presented in Chapter 7 are only tested with small instances for feasibility. That is why these could be tested for real-world problems, too. In that context, the question also arises whether the newly developed solution procedure has to be adapted or still performs very good.
158
Chapter 8. Summary and Outlook
Adapting VNDS+E for other model formulations The new VNDS+E heuristic produced good results for the GLSPMS. However, its basic structure can also be applied for other lot-sizing (and scheduling) problems. For that purpose, the neighborhoods probably need to be adapted. Especially, an adaption for the MLCLSP would be of high interest, since a great variety of heuristics has been developed for this model until today (cf. Almeder (2010), Helber and Sahling (2010), Stadtler (2003) among others). Then, a thorough comparison between all these heuristics could be made. Including open-source based LP-/MIP-solvers In the past years, many high quality open-source software solutions have been developed which more and more get embedded in business applications. The OR community is also very active and published many freely available open-source LP-/MIP-solvers like GLPK (2013) or CBC (2013), to name only a few. Even though these solvers cannot compete with commercial ones in every field of application, they show different strengths which might be useful (cf. Mittelmann, 2012). Accordingly, it might be interesting to develop solution methods which make use of these good properties and thus become competitive. For instance, the CLP (2013) solver is supposed to be quite fast for LPs. Therefore, the well-known method of generating setup sequences by a meta-heuristic and solving the remaining LP could be a reasonable approach (cf. Kuik et al., 1993; Meyr, 2000).1 Extending the GLSPMS for distribution planning As Chandra and Fisher (1994) point out a decoupled production and distribution planning is only acceptable if “there is sufficient finished goods inventory to buffer the production and distribution operations from each other”. But especially the cost pressure forces the consumer goods industry to reduce the inventories. Furthermore, the perishability of goods can also inhibit high stock levels, as the time between the date of production and the date of delivery is limited. Accordingly, a simultaneous production and distribution planning might be necessary (cf. Amorim et al., 2011). Therefore, another potential research topic is to examine, whether the GLSPMS can be extended for a simultaneous distribution planning. As shown by the complexity proof in Section 4.3.1, the optimization version of the Traveling Salesman Problem (TSP) is a special case of the GLSPMS. Accordingly, it might be possible to integrate the Vehicle Routing Problem which is closely related to the TSP into the GLSPMS. Considering scarce setup resources In Chapter 7 several extensions were proposed. Especially in the section about scarce setup resources, only first basic approaches were shown which assumed that, for instance, the setup operators are available over the whole planning horizon. However, it might be important to examine how the model has to be adapted if the working time of machines and operators differ. Another issue 1 Note that for the real-world problem instance presented in Chapter 6 the LP takes about 20 minutes if the binary variables are relaxed and not fixed.
8.2. Outlook
159
could be that setup operators do not only execute the changeover by “replacing” tools but also have to operate the machines during production time (and not during idle time). The same is true for scarce setup tools. On the one hand, these tools might be necessary for the changeover as a tool for the operators (e.g., a special wrench). On the other hand, tools might be needed for production (e.g., a die cutting tool or a top frame). But then, it could be useful to differentiate the changeover between a set-up and a tear-down process, especially for time-consuming changeovers.
Appendix A Artificial test instances In Section 4.4.1 three different base scenarios were described. In the following, the complete data of the resulting serial, convergent, and general instance will be given (q.v. Seeanner and Meyr, 2013).
A.1
Serial instance L
4
J
6
T
4
S
12 (3 micros per macro)
Λ
{3,6,9,12}
Φ
{1,4,7,10,13}
ws
{0,-,-,80,-,-,160,-,-,240,-,-,320}
Table A.1: Number of lines, products, macroperiods, microperiods as well as set of all last microperiods and all fixed microperiods with their respective starting times.
j=1 j=2 j=3 j=4 j=5 j=6
Ij0
Imax j
hjs (s ∈ Λ)
cej
emax j
Nj
0.0 0.0 0.0 0.0 0.0 0.0
15.0 10.0 10.0 10.0 100.0 100.0
8.0 8.0 2.0 2.0 1.0 1.0
100.0 100.0 0.0 0.0 4.0 4.0
100.0 100.0 0.0 0.0 100.0 100.0
∅ ∅ {1} {2} {3} {4}
Table A.2: Initial and maximum inventory, holding and purchasing costs as well as maximum purchase and sets of immediate and all successors.
F. Seeanner, Multi-Stage Simultaneous Lot-Sizing and Scheduling, Produktion und Logistik, DOI 10.1007/978-3-658-02089-7, © Springer Fachmedien Wiesbaden 2013
162
Appendix A. Artificial test instances
D
{ (3,5,2,3), (3,6,2,4), (4,5,2,3), (4,6,2,4), (2,3,1,1), (2,4,1,2) }
Table A.3: Index sets for line synchronization constraints. co
200
max
80
o
Table A.4: Overtime costs and maximum overtime. alj
j=1
j=2
j=3
j=4
j=5
j=6
l=1 l=2 l = 3, 4
3.0 -
3.0 -
1.0 -
1.0 -
4.0
3.0
Table A.5: Production coefficients.
t=1 t=2 t=3 t=4
ft
St
1 4 7 10
{1,2,3} {4,5,6} {7,8,9} {10,11,12}
Table A.6: First microperiod and set of microperiods belonging to a macroperiod. djs
s=3
s=6
s=9
s = 12
j=1 j=2
3.0 2.0
5.0 4.0
5.0 6.0
5.0 8.0
Table A.7: Demand. WIPmax lj
j=1
j=2
j=3
j=4
j=5
j=6
l=1 l=2 l = 3, 4
100.0 -
100.0 -
10.0 -
10.0 -
0.0
0.0
Table A.8: Maximum WIP. slij /stlij
j=1
j=2
j=3
j=4
j=5
j=6
l=1
i=1 i=2
0.0 8.0
6.0 0.0
-
-
-
-
l=2
i=3 i=4
-
-
0.0 12.0
2.0 0.0
-
-
l = 3, 4
i=5 i=6
-
-
-
-
0.0 8.0
8.0 0.0
Table A.9: Setup costs and times.
A.1. Serial instance
163
cp lj
j=1
j=2
j=3
j=4
j=5
j=6
l=1 l=2 l=3 l=4
1.0 -
1.0 -
1.0 -
1.0 -
1.0 2.0
1.0 2.0
Table A.10: Production costs.
mlj
j=1
j=2
j=3
j=4
j=5
j=6
l=1 l=2 l = 3, 4
1.0 -
1.0 -
10.0 -
10.0 -
1.0
1.0
Table A.11: Minimum lot-sizes.
ylj0
j=1
j=2
j=3
j=4
j=5
j=6
l=1 l=2 l=3 l=4
1 -
0 -
1 -
0 -
1 0
0 1
Table A.12: Initial setup.
pij
j=1
j=2
j=3
i=3 i=4 i=5 i=6
6.0 6.0 -
6.0 6.0
1.0 -
j=4 1.0
Table A.13: Gozinto factors.
l=1 l=2 l = 3, 4
Jl
Πl
bl
{1,2} {3,4} {5,6}
{1,2,...,12} {1,2,...,12} {1,2,...,12}
0.0 0.0 0.0
Table A.14: Allowed products and microperiods as well as standby costs.
164
A.2
Appendix A. Artificial test instances
Divergent instance 3
L J
6
T
3
S
12 (4 micros per macro)
Λ
{4,8,12}
Φ
{1,5,9,13}
ws
{0,-,-,-,80,-,-,-,160,-,-,-,240}
Table A.15: Number of lines, products, macroperiods, microperiods as well as set of all last microperiods and all fixed microperiods with their respective starting times.
j=1 j=2 j=3 j=4 j=5 j=6
Ij0
Imax j
hjs (s ∈ Λ)
cej
emax j
Nj
0.0 0.0 0.0 0.0 0.0 0.0
100.0 100.0 100.0 100.0 0.0 0.0
3.0 3.0 3.0 3.0 -
100.0 100.0 100.0 100.0 100.0 100.0
100.0 100.0 100.0 100.0 100.0 100.0
∅ ∅ ∅ ∅ {1,2} {3,4}
Table A.16: Initial and maximum inventory, holding and purchasing costs as well as maximum purchase and sets of immediate and all successors.
D
{ (3,5,1,1), (3,5,1,2), (3,5,2,2), (3,6,1,3), (3,6,1,4), (3,6,2,4) }
Table A.17: Index sets for line synchronization constraints.
A.2. Divergent instance
165
co
200
omax
80
Table A.18: Overtime costs and maximum overtime. alj
j=1
j=2
j=3
j=4
j=5
j=6
l=1 l=2 l=3
3.0 -
4.0 8.0 -
3.0 -
4.0 8.0 -
4.0
2.0
Table A.19: Production coefficients.
t=1 t=2 t=3
ft
St
1 5 9
{1,2,3,4} {5,6,7,8} {9,10,11,12}
Table A.20: First microperiod and set of microperiods belonging to a macroperiod. djs
s=4
s=8
s = 12
j=1 j=2 j=3 j=4
0.0 0.0 2.0 3.0
6.0 6.0 6.0 6.0
6.0 6.0 6.0 6.0
Table A.21: Demand. WIPmax lj
j=1
j=2
j=3
j=4
j=5
j=6
l=1 l=2 l=3
100.0 -
100.0 100.0 -
100.0 -
100.0 100.0 -
0.0
0.0
Table A.22: Maximum WIP. slij /stlij
j=1
j=2
j=3
j=4
j=5
j=6
l=1
i=1 i=2 i=3 i=4
0.0 2.0 3.0 5.0
1.0 0.0 4.0 3.0
1.0 3.0 0.0 2.0
2.0 1.0 1.0 0.0
-
-
l=2
i=2 i=4
-
0.0 4.0
-
2.0 0.0
-
-
l=3
i=5 i=6
-
-
-
-
0.0 6.0
2.0 0.0
Table A.23: Setup costs and times.
166
Appendix A. Artificial test instances
cp lj
j=1
j=2
j=3
j=4
j=5
j=6
l=1 l=2 l=3
1.0 -
1.0 2.0 -
1.0 -
1.0 2.0 -
1.0
1.0
Table A.24: Production costs.
mlj
j=1
j=2
j=3
j=4
j=5
j=6
l=1 l=2 l=3
1.0 -
1.0 1.0 -
1.0 -
1.0 1.0 -
1.0
1.0
Table A.25: Minimum lot-sizes.
ylj0
j=1
j=2
j=3
j=4
j=5
j=6
l=1 l=2 l=3
1 -
0 1 -
0 -
0 0 -
0
1
Table A.26: Initial setup.
pij
j=1
j=2
j=3
j=4
i=5 i=6
2.0 -
1.0 -
2.0
1.0
Table A.27: Gozinto factors.
l=1 l=2 l=3
Jl
Πl
bl
{1,2,3,4} {2,4} {5,6}
{1,2,...,12} {1,2,...,12} {1,2,...,12}
0.0 0.0 0.0
Table A.28: Allowed products and microperiods as well as standby costs.
A.3. General instance
A.3
167
General instance L
3
J
8
T
3
S
12 (4 micros per macro)
Λ
{4,8,12}
Φ
{1,5,9,13}
ws
{0,-,-,-,80,-,-,-,160,-,-,-,240}
Table A.29: Number of lines, products, macroperiods, microperiods as well as set of all last microperiods and all fixed microperiods with their respective starting times.
j=1 j=2 j=3 j=4 j=5 j=6 j=7 j=8
Ij0
Imax j
hjs (s ∈ Λ)
cej
emax j
Nj
0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
100.0 100.0 100.0 100.0 100.0 0.0 0.0 100.0
8.0 8.0 7.0 12.0 1.0 2.0
200.0 200.0 200.0 200.0 200.0 200.0 200.0 200.0
100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0
∅ ∅ ∅ ∅ {1,2} {1,3} {2,4} {3,4}
Table A.30: Initial and maximum inventory, holding and purchasing costs as well as maximum purchase and sets of immediate and all successors.
D
{ (2,6,1,1), (2,6,1,3), (2,7,1,2), (2,7,1,4), (3,5,1,1), (3,5,1,2), (3,8,1,3), (3,8,1,4) }
Table A.31: Index sets for line synchronization constraints.
168
Appendix A. Artificial test instances
co
0
omax
0
Table A.32: Overtime costs and maximum overtime.
alj
j=0
j=1
j=2
j=3
j=4
j=5
j=6
j=7
j=8
l=1 l=2 l=3
1.0 1.0 1.0
6.0 -
6.0 -
3.0 -
3.0 -
8.0
6.0 -
6.0 -
2.0
Table A.33: Production coefficients.
t=1 t=2 t=3
ft
St
1 5 9
{1,2,3,4} {5,6,7,8} {9,10,11,12}
Table A.34: First microperiod and set of microperiods belonging to a macroperiod.
djs
s=4
s=8
s = 12
j=1 j=2 j=3 j=4
0.0 0.0 0.0 0.0
0.0 5.0 5.0 4.0
7.0 5.0 6.0 5.0
Table A.35: Demand.
WIPmax lj
j=1
j=2
j=3
j=4
j=5
j=6
j=7
j=8
l=1 l=2 l=3
200.0 -
200.0 -
200.0 -
200.0 -
200.0
200.0 -
200.0 -
200.0
Table A.36: Maximum WIP.
A.3. General instance
slij /stlij
169
j=0
j=1
j=2
j=3
j=4
j=5
j=6
j=7
j=8
l=1
i=0 i=1 i=2 i=3 i=4
0.0 999.0 999.0 999.0 999.0
999.0 0.0 4.0 6.0 6.0
999.0 4.0 0.0 6.0 6.0
999.0 8.0 8.0 0.0 4.0
999.0 8.0 8.0 4.0 0.0
-
-
-
-
l=2
i=0 i=6 i=7
0.0 999.0 999.0
-
-
-
-
-
999.0 0.0 4.0
999.0 4.0 0.0
-
l=3
i=0 i=5 i=8
0.0 0.0 0.0
-
-
-
-
12.0 0.0 6.0
-
-
12.0 8.0 0.0
Table A.37: Setup costs and times.
cp lj
j=0
j=1
j=2
j=3
j=4
j=5
j=6
j=7
j=8
l=1 l=2 l=3
1.0 1.0 1.0
1.0 -
1.0 -
1.0 -
1.0 -
1.0
1.0 -
1.0 -
1.0
Table A.38: Production costs.
mlj
j=0
j=1
j=2
j=3
j=4
j=5
j=6
j=7
j=8
l=1 l=2 l=3
1.0 1.0 1.0
1.0 -
1.0 -
1.0 -
1.0 -
1.0
1.0 -
1.0 -
1.0
Table A.39: Minimum lot-sizes.
ylj0
j=0
j=1
j=2
j=3
j=4
j=5
j=6
j=7
j=8
l=1 l=2 l=3
0 0 0
1 -
0 -
0 -
0 -
1
1 -
0 -
0
Table A.40: Initial setup.
pij
j=1
j=2
j=3
j=4
i=5 i=6 i=7 i=8
1.0 1.0 -
1.0 1.0 -
0.5 1.0
0.5 1.0
Table A.41: Gozinto factors.
170
Appendix A. Artificial test instances
l=1 l=2 l=3
Jl
Πl
bl
{0,1,2,3,4} {0,6,7} {0,5,8}
{1,2,...,12} {1,2,...,12} {1,2,...,12}
0.0 0.0 1.0
Table A.42: Allowed products and microperiods as well as standby costs.
Appendix B Computational results of the heuristics The following three selected figures show the development of the objective values for Truncated MIP, the tailored Fix&Optimize, and the new VNDS+E heuristic with parameter scenario 5. For each point in time the best, the worst, and the mean value is determined for the VNDS+E. These representatives are chosen in a way that for each product structure either the GLSPMS tailored Fix&Optimize or Truncated MIP performs well. Note that the tailored Fix&Optimize performed very bad for problem 17. That is why the corresponding curve cannot be seen in Figure B.2. !"#$ !"#$ %&'() &*+,-.
Figure B.1: Comparison of the solution procedures for problem 8.
F. Seeanner, Multi-Stage Simultaneous Lot-Sizing and Scheduling, Produktion und Logistik, DOI 10.1007/978-3-658-02089-7, © Springer Fachmedien Wiesbaden 2013
172
Appendix B. Computational results of the heuristics
!"
!" # $%&' $()*+,
Figure B.2: Comparison of the solution procedures for problem 17.
!"# !"# $%&'( %)*+,-
Figure B.3: Comparison of the solution procedures for problem 29.
Bibliography Afentakis, P.; Gavish, B.; Karmarkar, U. (1984) Computationally efficient optimal solutions to the lot-sizing problem in multistage assembly systems, Management Science, vol. 30, no. 2, 222–239. Almada-Lobo, B.; James, R. (2010) Neighbourhood search meta-heuristics for capacitated lot-sizing with sequence-dependent setups, International Journal of Production Research, vol. 48, no. 3, 861–878. Almada-Lobo, B.; Oliveira, J.; Carravilla, M. (2008) Production planning and scheduling in the glass container industry: A VNS approach, International Journal of Production Economics, vol. 114, no. 1, 363–375. Almeder, C. (2010) A hybrid optimization approach for multi-level capacitated lot-sizing problems, European Journal of Operational Research, vol. 200, no. 2, 599–606. Almeder, C.; Almada-Lobo, B. (2011) Synchronisation of scarce resources for a parallel machine lotsizing problem, International Journal of Production Research, vol. 49, no. 24, 7315–7335. Amorim, P.; Meyr, H.; Almeder, C.; Almada-Lobo, B. (2011) Managing perishability in production-distribution planning: a discussion and review, Flexible Services and Manufacturing Journal, 1–25, http://dx.doi.org/10.1007/s10696-011-9122-3. Anderson, E.; Fitzsimons, G.; Simester, D. (2006) Measuring and mitigating the costs of stockouts, Management Science, vol. 52, no. 11, 1751–1763. Anthony, R. (1965) Planning and control systems: A framework for analysis, Harvard University, Boston. Applegate, D.; Bixby, R.; Chvátal, V.; Cook, W. (2006) The Traveling Salesman Problem A Computational Study, Princeton University Press. Araujo, S.; Arenales, M.; Clark, A. (2008) Lot sizing and furnace scheduling in small foundries, Computers & Operations Research, vol. 35, no. 3, 916–932.
F. Seeanner, Multi-Stage Simultaneous Lot-Sizing and Scheduling, Produktion und Logistik, DOI 10.1007/978-3-658-02089-7, © Springer Fachmedien Wiesbaden 2013
174
Bibliography
Barany, I.; van Roy, T.; Wolsey, L. (1984) Strong formulations for multi-item capacitated lot sizing, Management Science, vol. 30, no. 10, 1255–1261. Ben-Daya, M.; Darwish, M.; Ertogral, K. (2008) The joint economic lot sizing problem: Review and extensions, European Journal of Operational Research, vol. 185, no. 2, 726– 742. Bolander, S.; Taylor, S. (1990) Process flow scheduling: mixed flow cases, Production and Inventory Management Journal, vol. 31, no. 4, 1–6. CBC (2013) COIN Branch and Cut solver, https://projects.coin-or.org/Cbc, 23.02.2013. Chandra, P.; Fisher, M. (1994) Coordination of production and distribution planning, European Journal of Operational Research, vol. 72, no. 3, 503 – 517. Cheng, T.; Wang, G.; Sriskandarajah, C. (1999) One-operator-two-machine flowshop scheduling with setup and dismounting times, Computers & Operations Research, vol. 26, 715–730. Christopher, M. (2005) Logistics and supply chain management, creating value-adding networks, Financial Times Prentice Hall, Harlow, 3rd ed. Clark, A.; Almada-Lobo, B.; Almeder, C. (2011) Lot sizing and scheduling: industrial extensions and research opportunities, International Journal of Production Research, vol. 49, no. 9, 2457–2461. Clark, A.; Scarf, H. (1960) Optimal policies for a multi-echelon inventory problem, Management Science, vol. 6, no. 4, 475–490. CLP (2013) COIN Linear Programming solver, https://projects.coin-or.org/Clp, 23.02.2013. Croes, G. (1958) A method for solving traveling-salesman problems, Operations Research, vol. 6, no. 6, 791–812. Daskin, M. (1995) Network and Discrete Location: Models, Wiley & Sons. de Matta, R. (1994) A Lagrangean decomposition solution to a single line multiproduct scheduling problem, European Journal of Operational Research, vol. 79, no. 1, 25–37. Dempster, M.; Fisher, M.; Jansen, L.; Lageweg, B.; Lenstra, J.; Rinnooy Kan, A. (1981) Analytical Evaluation of Hierarchical Planning Systems, Operations Research, vol. 29, no. 4, 707–716. Denizel, M.; Altekin, F.; Süral, H.; Stadtler, H. (2008) Equivalence of the LP relaxations of two strong formulations for the capacitated lot-sizing problem with setup times, OR Spectrum, vol. 30, no. 4, 773–785.
Bibliography
175
Denizel, M.; Süral, H. (2006) On alternative mixed integer programming formulations and LP-based heuristics for lot-sizing with setup times, Journal of the Operational Research Society, vol. 57, no. 4, 389–399. Dixon, P.; Silver, E. (1981) A Heuristic Solution Procedure for the Multi-Item, Single-Level, Limited Capacity, Lot-Sizing Problem, Journal of Operations Management, vol. 2, no. 1, 23–39. Drexl, A.; Fleischmann, B.; Günther, H.-O.; Stadtler, H.; Tempelmeier, H. (1994) Konzeptionelle Grundlagen kapazitätsorientierter PPS-Systeme, Zeitschrift für betriebswirtschaftliche Forschung, vol. 46, no. 12, 1022–1045. Drexl, A.; Haase, K. (1995) Proportional lotsizing and scheduling, International Journal of Production Economics, vol. 40, no. 1, 73–87. Eppen, G.; Martin, R. (1987) Solving multi-item capacitated lot-sizing problems using variable redefinition, Operations Research, vol. 35, no. 6, 832–848. Fandel, G.; Stammen–Hegener, C. (2006) Simultaneous lot sizing and scheduling for multiproduct multi-level production, International Journal of Production Economics, vol. 104, no. 2, 308–316. Felipe, .; Ortuño, M. T.; Tirado, G. (2009) The double traveling salesman problem with multiple stacks: A variable neighborhood search approach, Computers & Operations Research, vol. 36, no. 11, 2983–2993. Ferreira, D.; Morabito, R.; Rangel, S. (2009) Solution approaches for the soft drink integrated production lot sizing and scheduling problem, European Journal of Operational Research, vol. 196, no. 2, 697–706. Fleischmann, B.; Meyr, H.; Wagner, M. (2008) Advanced Planning, in: H. Stadtler; C. Kilger (Eds.) Supply Chain Management and Advanced Planning, Springer Berlin, 4th ed., 81– 106. Fleischmann, B. (1990) The discrete lot–sizing and scheduling problem, European Journal of Operational Research, vol. 44, no. 3, 337–348. Fleischmann, B. (1998) Design of freight traffic networks, in: B. Fleischmann; J. v. Nunen; M. Speranza; P. Stähly (Eds.) Advances in Distribution Logistics, Lecture Notes in Economics and Mathematical Systems, vol. 460, Springer, Berlin, 55–81. Fleischmann, B.; Meyr, H. (1997) The general lotsizing and scheduling problem, OR Spectrum, vol. 19, no. 1, 11–21.
176
Bibliography
Fleischmann, B.; Meyr, H. (2003) Planning Hierarchy, Modeling and Advanced Planning Systems, in: S. C. Graves; A. G. de Kok (Eds.) Supply Chain Management: Design, Coordination, Operation, Handbooks in Operations Research and Management Science, vol. 11, Elsevier, Amsterdam et al., 457–523. Fleischmann, B.; Meyr, H. (2004) Customer Orientation in Advanced Planning Systems, in: H. Dyckhoff; R. Lackes; J. Reese (Eds.) Supply Chain Management and Reverse Logistics, Springer Berlin, 297–321. Florian, M.; Lenstra, J.; Kan, A. R. (1980) Deterministic Production Planning: Algorithms and Complexity, Management Science, vol. 26, no. 7, 669–679. Food and Agriculture Organization of the United Nations (2011) Annual Real Food Price Indices. Garey, M. R.; Johnson, D. S. (2003) Computers and Intractability, W.H. Freeman and Company, 24th ed. GLPK (2013) GNU Linear Progamming Kit, http://www.gnu.org/software/glpk/, 23.02.2013. Grünert, T. (1998) Multi–level sequence–dependent dynamic lotsizing and scheduling, Shaker Verlag, Aachen. Haase, K. (1994) Lotsizing and scheduling for production planning, Springer, Berlin. Haase, K. (1996) Capacitated lot–sizing with sequence dependent setup costs, OR Spectrum, vol. 18, no. 1, 51–59. Hansen, P.; Mladenović, N. (2001) Variable neighborhood search: Principles and applications, European Journal of Operational Research, vol. 130, no. 3, 449–467. Hansen, P.; Mladenović, N.; Perez-Britos, D. (2001) Variable Neighborhood Decomposition Search, Journal of Heuristics, vol. 7, no. 4, 335–350. Harris, F. (1913) How many parts to make at once, Factory, The Magazine of Management, vol. 10, no. 2, 135–136,152. Hax, A.; Meal, H. (1975) Hierarchical integration of production planning and scheduling, in: M. A. Geisler (Ed.) Logistics: TIMS Studies in Management Sciences Vol. 1, Logistics: TIMS Studies in Management Sciences, vol. 1, North-Holland, Amsterdam, 53–69. Helber, S.; Sahling, F. (2010) A fix-and-optimize approach for the multi-level capacitated lot sizing problem, International Journal of Production Economics, vol. 123, no. 2, 247–256.
Bibliography
177
Jans, R.; Degraeve, Z. (2007) Meta-heuristics for dynamic lot sizing: A review and comparison of solution approaches, European Journal of Operational Research, vol. 177, no. 3, 1855–1875. Jenabi, M.; Ghomi, S. F.; Torabi, S. (2008) Finite horizon economic lot and delivery scheduling problem: Flexible flow lines with unrelated parallel machines and sequence dependent setups., International Journal of Engineering, vol. 21, 143–158. Kallrath, J. (1999) The concept of contiguity in models based on time–indexed formulations, in: F. Keil; W. Mackens; H. Voß; J. Werther (Eds.) Scientific Computing in Chemical Engineering, Springer, Berlin, 330–337. Karmarkar, U.; Schrage, L. (1985) The Deterministic Dynamic Product Cycling Problem, Operations Research, vol. 33, no. 2, 326–345. Kilger, C.; Wetterauer, U. (2008) The Selection Process, in: H. Stadtler; C. Kilger (Eds.) Supply Chain Management and Advanced Planning, Springer Berlin, 4th ed., 309–323. Kimms, A. (1996) Multi-level, single-machine lot sizing and scheduling (with initial inventory), European Journal of Operational Research, vol. 89, no. 1, 86–99. Kimms, A. (1997) Multi–Level Lot Sizing and Scheduling, Physica Verlag, Heidelberg. Krarup, J.; Bilde, O. (1977) Plant Location Set Covering and Economic Lot Sizing: An O(mn) algorithm for structured Problems, in: L. Collatz (Ed.) Numerische Methoden bei Optimierungsaufgaben, Bd. 3, Optimierung bei graphentheoretischen und ganzzahligen Problemen, Birkhäuser, Basel, 155–180. Kuik, R.; Salomon, M.; Wassenhove, L. N. V. (1994) Batch decisions: structure and models, European Journal of Operational Research, vol. 75, no. 2, 243–263. Kuik, R.; Salomon, M.; Wassenhove, L. V.; Maes, J. (1993) Linear programming, simulated annealing and tabu search heuristics for lotsizing in bottleneck assembly systems, IIE Transactions, vol. 25, no. 1, 62–72. Lang, J. (2009) Production and inventory management with substitutions, Springer Verlag, Heidelberg. Lazić, J.; Hanafi, S.; Mladenović, N.; Urošević, D. (2010) Variable neighbourhood decomposition search for 0-1 mixed integer programs, Computers & Operations Research, vol. 37, no. 6, 1055–1067. Maes, J.; McClain, J.; van Wassenhove, L. (1991) Multilevel capacitated lotsizing complexity and LP-based heuristics, European Journal of the Operational Research, vol. 53, no. 2, 131–148.
178
Bibliography
Maes, J.; van Wassenhove, L. (1988) Multi-item single-level capacitated dynamic lot-sizing heuristics: a general review, Journal of the Operational Research Society, vol. 39, no. 11, 991–1004. Marinelli, F.; Nenni, M.; Sforza, A. (2007) Capacitated lot sizing and scheduling with parallel machines and shared buffers: A case study in a packaging company, Annals of Operations Research, vol. 150, no. 1, 177–192. Menezes, A.; Clark, A.; Almada-Lobo, B. (2011) Capacitated lot-sizing and scheduling with sequence-dependent, period-overlapping and non-triangular setups, Journal of Scheduling, vol. 14, no. 2, 209–219. Meredith, J.; Shafer, S. (2010) Operations Management, International Student Version, Wiley & Sons, 4th ed. Meredith, L.; Maki, D. (2001) Product cannibalization and the role of prices, Applied Economics, vol. 33, no. 14, 1785–1793. Meyr, H. (1999) Simultane Losgrößen- und Reihenfolgeplanung für kontinuierliche Produktionslinien, Deutscher Universitätsverlag, Wiesbaden. Meyr, H. (2000) Simultaneous lotsizing and scheduling by combining local search with dual reoptimization, European Journal of Operational Research, vol. 120, no. 2, 311–326. Meyr, H. (2004) Simultane Losgrößen- und Reihenfolgeplanung bei mehrstufiger kontinuierlicher Fertigung, Zeitschrift für Betriebswirtschaft, vol. 74, no. 6, 585–610. Meyr, H.; Stadtler, H. (2008) Types of Supply Chains, in: H. Stadtler; C. Kilger (Eds.) Supply Chain Management and Advanced Planning, Springer Berlin, 4th ed., 65–80. Meyr, H.; Wagner, M.; Rohde, J. (2008) Structure of Advanced Planning Systems, in: H. Stadtler; C. Kilger (Eds.) Supply Chain Management and Advanced Planning, Springer Berlin, 4th ed., 109–115. Miller, C.; Tucker, A.; Zemlin, R. (1960) Integer Programming Formulation of Traveling Salesman Problems, Journal of the ACM, vol. 7, no. 4, 326–329. Mittelmann, H. (2012) Benchmarks for Optimization Software, http://plato.asu.edu/ bench.html, 24.09.2012. Mladenović, N.; Dražić, M.; Kovačevic-Vujčić, V.; Čangalović, M. (2008) General variable neighborhood search for the continuous optimization, European Journal of Operational Research, vol. 191, no. 3, 753–770. Mladenović, N.; Hansen, P. (1997) Variable Neighborhood Search, Computers & Operations Research, vol. 24, no. 11, 1097–1100.
Bibliography
179
Mohammadi, M.; Ghomi, S. F.; Karimi, B.; Torabi, S. (2009) Development of Heuristics for Multi-Product Multi-Level Capacitated Lotsizing Problem with Sequence-Dependent Setups, Journal of Applied Sciences, vol. 9, no. 2, 296–303. Nahmias, S. (2009) Production and Operations Analysis, Mc Graw-Hill. Naji-Azimi, Z.; Salari, M.; Golden, B.; Raghavan, S.; Toth, P. (2010) Variable neighborhood search for the cost constrained minimum label spanning tree and label constrained minimum spanning tree problems, Computers & Operations Research, vol. 37, no. 11, 1952–1964. OC&C Strategy Consultants (2011) Annual OC&C-Study. OECD (2011) OECD Economic Outlook, vol. 2011/2. Orlicky, J. (1975) Material requirements planning, McGraw-Hill, New York. Persson, J.; Göthe-Lundgren, M.; Lundgren, J.; Gendron, B. (2004) A tabu search heuristic for scheduling the production processes at an oil refinery, International Journal of Production Research, vol. 42, no. 3, 445–471. Pochet, Y.; Wolsey, L. (1995) Algorithms and reformulations for lot sizing problems, in: W. Cook; L. Lovasz; P. Seymour (Eds.) Combinatorial Optimization, DIMACS Series in Discrete Mathematics and Theoretical Computer Science, vol. 20, American Mathematical Society, Providence, 245–293. Pochet, Y.; Wolsey, L. (2006) Production Planning by Mixed Integer Programming, Springer Series in Operations Research and Financial Engineering, Springer New York, ISBN 9780-387-29959-4 (Print) 978-0-387-33477-6 (Online). Prandtstetter, M.; Raidl, G. (2008) An integer linear programming approach and a hybrid variable neighborhood search for the car sequencing problem, European Journal of Operational Research, vol. 191, no. 3, 1004–1022. Pressmar, D. (1980) Modellierung und Optimierung dynamischer Produktionssysteme, in: D. Hahn (Ed.) Führungsprobleme industrieller Unternehmungen, de Gruyter, Berlin, 453– 463. Puchinger, J.; Raidl, G. (2005) Combining Metaheuristics and Exact Algorithms in Combinatorial Optimization: A Survey and Classification, in: J. Mira; J. Álvarez (Eds.) Artificial Intelligence and Knowledge Engineering Applications: A Bioinspired Approach, Lecture Notes in Computer Science, vol. 3562, Springer Berlin / Heidelberg, 113–124. Quadt, D. (2004) Lot-Sizing and Scheduling for Flexible Flow Lines, Springer Verlag, Heidelberg.
180
Bibliography
Quadt, D.; Kuhn, H. (2007) A taxonomy of flexible flow line scheduling procedures, European Journal of Operational Research, vol. 178, no. 3, 686–698. Ribeiro, C.; Souza, M. (2002) Variable neighborhood search for the degree-constrained minimum spannign tree problem, Discrete Applied Mathematics, vol. 118, no. 1, 43–54. Rohde, J.; Meyr, H.; Wagner, M. (2000) Die Supply Chain Planning Matrix, PPS Management, vol. 5, no. 1, 10–15. Rosling, K. (1986) Optimal lot-sizing for dynamic assembly systems, in: S. Axsäter; C. Schneeweiß; E. Silver (Eds.) Multi-stage Production Planning and Inventory Control, Springer, Berlin, 119–131. Ruiz, R.; Rodríguez, J. (2010) The hybrid flow shop scheduling problem, European Journal of Operational Research, vol. 205, no. 1, 1–18. Sahling, F. (2010) Mehrstufige Losgrößenplanung bei Kapazitätsrestriktionen, Gabler Verlag. Salomon, M. (1991) Deterministic Lotsizing Models for Production Planning, Springer Verlag, Berlin. Schneeweiss, C. (2003) Distributed Decision Making, Springer, Berlin Heidelberg New York, 2nd ed. Seeanner, F.; Almada-Lobo, B.; Meyr, H. (2013) Combining the principles of Variable Neighborhood Decomposition Search and the Fix&Optimize heuristic to solve multi-level lot-sizing and scheduling problems, Computers & Operations Research, vol. 40, no. 1, 303–317. Seeanner, F.; Meyr, H. (2013) Multi-stage simultaneous lot-sizing and scheduling for flow line production, OR Spectrum, vol. 35, no. 1, 33–73. Sethi, S.; Thompson, G. (2005) Optimal Control Theory: Applications to Management Science and Economics, Springer US. Sikora, R.; Chhajed, D.; Shaw, M. (1996) Integrating the lot–sizing and sequencing decisions for scheduling a capacitated flow line, Computers and Industrial Engineering, vol. 30, no. 4, 659–679. Silver, E.; Pyke, D.; Peterson, R. (1998) Inventory management and production planning and scheduling, Wiley & Sons, New York et al., 3rd ed. Srinivasan, S.; Ramakrishnan, S.; Grasman, S. (2005) Incorporating cannibalization models into demand forecasting, Marketing Intelligence & Planning, vol. 23, no. 5, 470–485.
Bibliography
181
Stadtler, H. (1996) Mixed integer programming model formulations for dynamic multi-item multi-level capacitated lotsizing, European Journal of Operational Research, vol. 94, no. 3, 561–581. Stadtler, H. (1997) Reformulations of the shortest route model for dynamic multi-item multilevel capacitated lotsizing, OR Spectrum, vol. 19, no. 2, 87–96. Stadtler, H. (2000) Improved Rolling Schedules for the Dynamic Single-Level Lot-Sizing Problem, Management Science, vol. 46, no. 2, 318–326. Stadtler, H. (2003) Multilevel Lot Sizing with Setup Times and Multiple Constrained Resources: Internally Rolling Schedules with Lot-Sizing Windows, Operations Research, vol. 51, no. 3, 487–502. Stadtler, H. (2008) Linear and Mixed Integer Programming, in: H. Stadtler; C. Kilger (Eds.) Supply Chain Management and Advanced Planning, Springer Berlin, 4th ed., 518–527. Stadtler, H. (2011) Multi-Level Single Machine Lot-Sizing and Scheduling with Zero Lead Times, European Journal of Operational Research, vol. 209, no. 3, 241–252. Stadtler, H.; Kilger, C. (Eds.) (2008) Supply Chain Management and Advanced Planning, Springer Berlin, 4th ed. Stadtler, H.; Sahling, F. (2013) A lot-sizing and scheduling model for multi-stage flow lines with zero lead times, European Journal of Operational Research, vol. 225, no. 3, 404–419. Suerie, C. (2005a) Campaign planning in time-indexed model formulations, International Journal of Production Research, vol. 43, no. 1, 49–66. Suerie, C. (2005b) Time Continuity in Discrete Time Models: New Approaches for Production Planning in Process Industries, Springer Verlag, Heidelberg. Suerie, C. (2006) Modeling of period overlapping setup times, European Journal of Operational Research, vol. 174, no. 2, 874–886. Suerie, C.; Wagner, M. (2008) Supply Chain Analysis, in: H. Stadtler; C. Kilger (Eds.) Supply Chain Management and Advanced Planning, Springer Berlin, 4th ed., 37–63. Supply Chain Council (2011) SCOR Model Reference, http://supply-chain.org/scor/ 10.0. Tempelmeier, H.; Buschkühl, L. (2008) Dynamic multi-machine lotsizing and sequencing with simultaneous scheduling of a common setup resource, International Journal of Production Economics, vol. 113, 401–412.
182
Bibliography
Tempelmeier, H.; Derstroff, M. (1996) A Lagrangean-based heuristic for dynamic multilevel multiitem constrained lotsizing with setup times, Management Science, vol. 42, no. 5, 738– 757. Tempelmeier, H.; Herpers, S. (2011) Dynamic uncapacitated lot sizing with random demand under a fillrate constraint, European Journal of Operational Research, vol. 212, no. 3, 497–507. Toledo, C.; França, P.; Morabito, R.; Kimms, A. (2007) Um modelo de otimização para o problema integrado de dimensionamento de lotes e programação da produção em fábricas de refrigerantes, Pesquisa Operacional, vol. 27, no. 1, 155–186. Transchel, S.; Minner, S.; Kallrath, J.; Löhndorf, N.; Eberhard, U. (2011) A hybrid general lot-sizing and scheduling formulation for a production process with a two-stage product structure, International Journal of Production Research, vol. 49, no. 9, 2463–2480. Trigeiro, W.; Thomas, L.; McClain, J. (1989) Capacitated lot sizing with setup times, Management Science, vol. 35, no. 3, 353–366. Vollmann, T.; Berry, W.; Whybark, D.; Jacobs, F. (2005) Manufacturing Planning and Control for Supply Chain Management, Irwin/McGraw-Hill, New York, 5th ed. Williams, H. (Ed.) (1999) Model Building in Mathematical Programming, Wiley & Sons, 4th ed. Winands, E.; Adan, I.; van Houtum, G. (2011) The stochastic economic lot scheduling problem: A survey, European Journal of Operational Research, vol. 210, no. 1, 1–9. Wolsey, L. (1997) MIP modelling of changeovers in production planning and scheduling problems, European Journal of Operational Research, vol. 99, no. 1, 154–165. Zäpfel, G.; Braune, R.; Blögl, M. (Eds.) (2010) Metaheuristic Search Concepts: A Tutorial with Applications to Production and Logistics, Springer Berlin Heidelberg.