an optimization approach for the lot sizing and scheduling problem in the brewery industry

14
An optimization approach for the lot sizing and scheduling problem in the brewery industry Tamara A. Baldo a , Maristela O. Santos a , Bernardo Almada-Lobo b , Reinaldo Morabito c,a Universidade de São Paulo, Instituto de Ciências Matemáticas e de Computação, Av. Trabalhador São-carlense, 400, 13560-970 São Carlos, SP, Brazil b INESC-TEC, Faculdade de Engenharia, Universidade do Porto, Rua Dr. Roberto Frias s/n, Porto 4200-465, Portugal c Universidade Federal de São Carlos, Departamento de Engenharia de Produção, Via Washington Luiz, km. 235, 13565-905 São Carlos, SP, Brazil article info Article history: Received 20 June 2013 Received in revised form 3 February 2014 Accepted 24 February 2014 Available online 4 March 2014 Keywords: Mixed integer programming Brewery industry MIP based heuristic Production planning and scheduling abstract This study considers a production lot sizing and scheduling problem in the brewery industry. The under- lying manufacturing process can be basically divided into two main production stages: preparing the liq- uids including fermentation and maturation inside the fermentation tanks; and bottling the liquids on the filling lines, making products of different liquids and sizes. This problem differs from other problems in beverage industries due to the relatively long lead times required for the fermentation and maturation processes and because the ‘‘ready’’ liquid can remain in the tanks for some time before being bottled. The main planning challenge is to synchronize the two stages (considering the possibility of a ‘‘ready’’ liquid staying in the tank until bottling), as the production bottlenecks may alternate between these stages dur- ing the planning horizon. This study presents a novel mixed integer programming model that represents the problem appropriately and integrates both stages. In order to solve real-world problem instances, MIP-based heuristics are developed, which explore the model structure. The results show that the model is able to comprise the problem requirements and the heuristics produce relatively good-quality solutions. Ó 2014 Elsevier Ltd. All rights reserved. 1. Introduction Recently the Kirin Institute of Food and Lifestyle (Kirin, 2012) published a survey on the global beer production per country. The production went up 3.7% from 2010 to 2011, marking its 27th consecutive year of growth. China has been the largest beer-producing country in the world for the tenth year in a row, while United States is the second-largest producer. China produced 10.7% more beer in 2011 than in 2010. Brazil achieved a 3.4% growth in 2011, after reporting a 18.2% annual increase in the pre- vious year, and now it is the third largest beer producing country (overtaking Russia in 2010). It has had the highest percentual growth in the past 11 years. This increase has made industries seek for more efficient and effective production planning and control methods. The production lot sizing and scheduling in a brewery needs to consider various pieces of information in the planning time horizon simultaneously, such as several machines with different capacities and specificities, multiple items to be produced with different demands, more than one production stage involving sequence-dependent setup times and costs, multitanks for prepa- ration and fermentation of different liquids, production synchroni- zation of the stages, storing ‘‘ready’’ liquid waiting for the bottling, among others. Even with all the data variables, it is still hard to de- vise good production plans. In practice, many companies deter- mine the production planning manually, which can take hours until a satisfactory plan is achieved. Moreover, during the planning horizon, it is often necessary to reschedule the production due to the occurrence of unforeseen events and changes of information, for example, extra client requests, machine shutdowns and unex- pected shortages of raw material. Lot sizing problems can be difficult to solve in practice, depend- ing on the features of the problem. In general, they are NP-hard problems (Bitran & Yanasse, 1982; Meyr, 2002). Models and algo- rithms for the single-level lot sizing problem with incapacitated and capacitated constraints are discussed by Karimi, Fatemi Ghomi, and Wilson (2003) and Jans and Degraeve (2007). When there is fragmentation of production by stages, a final item has precedent items that should be programmed for production and/ or procurement. The different stages have to be coordinated, which introduces an additional dimension of complexity to the lot sizing, referred to as a multi-stage problem (Billington, McClain, & Thomas, 1986). For example, in brewery industries, bottling at a http://dx.doi.org/10.1016/j.cie.2014.02.008 0360-8352/Ó 2014 Elsevier Ltd. All rights reserved. Corresponding author. Tel.: +55 1633519516; fax: +55 16 33518240. E-mail address: [email protected] (R. Morabito). Computers & Industrial Engineering 72 (2014) 58–71 Contents lists available at ScienceDirect Computers & Industrial Engineering journal homepage: www.elsevier.com/locate/caie

Upload: reinaldo

Post on 23-Dec-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: An optimization approach for the lot sizing and scheduling problem in the brewery industry

Computers & Industrial Engineering 72 (2014) 58–71

Contents lists available at ScienceDirect

Computers & Industrial Engineering

journal homepage: www.elsevier .com/ locate/caie

An optimization approach for the lot sizing and scheduling problemin the brewery industry

http://dx.doi.org/10.1016/j.cie.2014.02.0080360-8352/� 2014 Elsevier Ltd. All rights reserved.

⇑ Corresponding author. Tel.: +55 1633519516; fax: +55 16 33518240.E-mail address: [email protected] (R. Morabito).

Tamara A. Baldo a, Maristela O. Santos a, Bernardo Almada-Lobo b, Reinaldo Morabito c,⇑a Universidade de São Paulo, Instituto de Ciências Matemáticas e de Computação, Av. Trabalhador São-carlense, 400, 13560-970 São Carlos, SP, Brazilb INESC-TEC, Faculdade de Engenharia, Universidade do Porto, Rua Dr. Roberto Frias s/n, Porto 4200-465, Portugalc Universidade Federal de São Carlos, Departamento de Engenharia de Produção, Via Washington Luiz, km. 235, 13565-905 São Carlos, SP, Brazil

a r t i c l e i n f o

Article history:Received 20 June 2013Received in revised form 3 February 2014Accepted 24 February 2014Available online 4 March 2014

Keywords:Mixed integer programmingBrewery industryMIP based heuristicProduction planning and scheduling

a b s t r a c t

This study considers a production lot sizing and scheduling problem in the brewery industry. The under-lying manufacturing process can be basically divided into two main production stages: preparing the liq-uids including fermentation and maturation inside the fermentation tanks; and bottling the liquids onthe filling lines, making products of different liquids and sizes. This problem differs from other problemsin beverage industries due to the relatively long lead times required for the fermentation and maturationprocesses and because the ‘‘ready’’ liquid can remain in the tanks for some time before being bottled. Themain planning challenge is to synchronize the two stages (considering the possibility of a ‘‘ready’’ liquidstaying in the tank until bottling), as the production bottlenecks may alternate between these stages dur-ing the planning horizon. This study presents a novel mixed integer programming model that representsthe problem appropriately and integrates both stages. In order to solve real-world problem instances,MIP-based heuristics are developed, which explore the model structure. The results show that the modelis able to comprise the problem requirements and the heuristics produce relatively good-qualitysolutions.

� 2014 Elsevier Ltd. All rights reserved.

1. Introduction

Recently the Kirin Institute of Food and Lifestyle (Kirin, 2012)published a survey on the global beer production per country.The production went up 3.7% from 2010 to 2011, marking its27th consecutive year of growth. China has been the largestbeer-producing country in the world for the tenth year in a row,while United States is the second-largest producer. China produced10.7% more beer in 2011 than in 2010. Brazil achieved a 3.4%growth in 2011, after reporting a 18.2% annual increase in the pre-vious year, and now it is the third largest beer producing country(overtaking Russia in 2010). It has had the highest percentualgrowth in the past 11 years. This increase has made industries seekfor more efficient and effective production planning and controlmethods.

The production lot sizing and scheduling in a brewery needs toconsider various pieces of information in the planning timehorizon simultaneously, such as several machines with differentcapacities and specificities, multiple items to be produced withdifferent demands, more than one production stage involving

sequence-dependent setup times and costs, multitanks for prepa-ration and fermentation of different liquids, production synchroni-zation of the stages, storing ‘‘ready’’ liquid waiting for the bottling,among others. Even with all the data variables, it is still hard to de-vise good production plans. In practice, many companies deter-mine the production planning manually, which can take hoursuntil a satisfactory plan is achieved. Moreover, during the planninghorizon, it is often necessary to reschedule the production due tothe occurrence of unforeseen events and changes of information,for example, extra client requests, machine shutdowns and unex-pected shortages of raw material.

Lot sizing problems can be difficult to solve in practice, depend-ing on the features of the problem. In general, they are NP-hardproblems (Bitran & Yanasse, 1982; Meyr, 2002). Models and algo-rithms for the single-level lot sizing problem with incapacitatedand capacitated constraints are discussed by Karimi, FatemiGhomi, and Wilson (2003) and Jans and Degraeve (2007). Whenthere is fragmentation of production by stages, a final item hasprecedent items that should be programmed for production and/or procurement. The different stages have to be coordinated, whichintroduces an additional dimension of complexity to the lot sizing,referred to as a multi-stage problem (Billington, McClain, &Thomas, 1986). For example, in brewery industries, bottling at a

Page 2: An optimization approach for the lot sizing and scheduling problem in the brewery industry

Fig. 1. Synchronization between tanks and filling lines with the possibility to stock ‘‘ready’’ liquid in the tank.

T.A. Baldo et al. / Computers & Industrial Engineering 72 (2014) 58–71 59

filling line can only start after the liquid gets ready in a tank. Fig. 1illustrates three feasible situations regarding the interdependen-cies between tanks and lines. In each case, the production of thetanks (above) and the filling lines (below) are depicted as Ganttcharts. In Fig. 1A, an ideal scenario is illustrated where the liquidgets ready after the fermentation/maturation process in the tankat the same instant as the bottling starts on the line. In situationFig. 1B, the line waits for the fermentation/maturation of the liquidin the tank. Finally, in Fig. 1C the ‘‘ready’’ liquid in the tank waitsuntil the line becomes available for bottling.

Lot sizing problems can consider the sequence-dependent pro-duction, i.e., sequence-dependent setup times and costs betweenthe production of different items (Araujo & Clark, 2013; Clark &Clark, 2000; Fleischmann, 1994; Haase & Kimms, 2000; Meyr,2000; Meyr & Mann, 2013; Shim, Kim, Doh, & Lee, 2011). Theunderlying lot sizing and scheduling problem can be found in dif-ferent industrial settings, for example in packaging (Marinelli,Nenni, & Sforza, 2007), foundries (Araujo, Arenales, & Clark,2007; Santos-Meza, dos Santos, & Arenales, 2002), textile (Silva &Magalhaes, 2006), in the production of glass containers (Almada-Lobo, Oliveira, & Carravilla, 2008), electro fused grains (Luche, Mor-abito, & Pureza, 2009), animal nutrition (Clark, Morabito, & Toso,2010; Toso, Morabito, & Clark, 2009), soft drinks (Ferreira, Clark,Almada-Lobo, & Morabito, 2012; Ferreira, Morabito, & Rangel,2009; Toledo, da Silva Arantes, França, & Morabito, 2012; Toledo,França, Morabito, & Kimms, 2009) and pulp and paper (Santos &Almada-Lobo, 2012). Reviews on lot sizing and scheduling with se-quence independent/dependent setups can be found in, e.g., Drexland Kimms (1997) and Jans and Degraeve (2007). The hardness ofsolving these problems is linked to the features to be met and themodel sizes, thus most of the literature focuses on heuristics andmetaheuristics methods to solve the integrated lot sizing andscheduling problem.

A few mixed integer production planning models of beverageshave been proposed, for instance Toledo et al. (2009, 2012) andFerreira et al. (2009, 2012), for the soft drink industry. Similarlyto soft-drinks, beer production can also be considered as a twostage production process: preparation and bottling (or kegging)of the liquids. However, there are some differences between theseproblems, mainly regarding the first stage. Generally, the prepara-tion times of the liquids in soft drinks and other beverage indus-tries only take a few minutes and, in some cases, a few hours. Onthe other hand, in brewing, fermentation and maturation times lastseveral days (from 3 up to 41 days, depending on the type of beer),which affect the beer production plans in an important way.

Another difference is that in brewing, after the fermentation andmaturation processes, the ‘‘ready’’ liquid can be stored in thepreparation tanks for several days while waiting for being bottledin the filling lines, differently to the soft-drink production pro-cesses. Few attempts regarding beer production planning are pre-sented in the literature and some issues remain to be addressed,such as effective optimization approaches dealing with the inte-grated lot sizing and scheduling in breweries to support opera-tional decisions in the short term, which is the objective of thisstudy. In Guimarães, Klabjan, and Almada-Lobo (2012), the authorsconsider the assignment and sizing of production lots in a multi-plant environment (each plant has a set of filling lines that bottleand pack beverages – beer and soft drinks), including the transfersof the final products between plants. It relates to the tactical levelof the beer industry production planning and, therefore, it does notconsider the necessary level of detail to perform a short-term plan(issues such as the fermentation and maturation tanks are disre-garded there) as in the present study.

As mentioned before, the aim of this study is to address a pro-duction lot sizing and scheduling problem appearing at a standardbrewery industry and to present optimization approaches based onmixed integer programming (MIP) formulation of the problem andMIP-based heuristics to deal with it, namely the relax-and-fix andfix-and-optimize (Pochet & Wolsey, 2006). A novel MIP model ispresented to integrate the two main production stages, preparingthe liquids including fermentation and maturation inside the fer-mentation tanks and bottling the liquids on the filling lines, mak-ing products of different liquids and sizes. Moreover, theplanning horizon is discretized into periods (days). In addition,each period of the first part of the horizon is subdivided into anumber of slots of variable widths, allowing for the schedulingand sequences of production lots. The second part (end) of theplanning horizon is focused on lot sizing decision, disregardingfew scheduling details. This two-dimensional time matrix allowsfor different granularities along the planning horizon, more accu-rate scheduling decisions are considered in the first part, contrarilyto the rough lot sizing decisions in the second. This model can beused on a rolling-horizon approach.

To the best of our knowledge, this is the first work to addressthe brewery production planning problem in this line of research.The MIP model solution provides feasible production plans to thelot sizing and scheduling problem. However, for large problem in-stances as the ones found in practice, the model becomes difficultto solve, motivating the development of MIP-based heuristics. MIP-heuristics consider several novel partition schemes, which are

Page 3: An optimization approach for the lot sizing and scheduling problem in the brewery industry

60 T.A. Baldo et al. / Computers & Industrial Engineering 72 (2014) 58–71

developed based on the specific features of the beer manufacturingprocess. For instance, the fermentation time significantlyinfluences the size of the time-decomposition strategy. Due tosignificant and variable fermentation/maturation times, synchroni-zation of the liquid preparation and bottling stages can be properlyaddressed in the novel approaches. Depending on the liquid type,these times may take up to 41 days, triggering shifting bottlenecksbetween both stages. In addition, the ‘‘ready’’ liquid may be held intanks for some time before feeding the lines. Summing up, themajor contributions of this study are the MIP model formulatedfor the brewery problem based on a practical case and the MIP-heuristics developed to solve it.

The remainder of this paper is organized as follows. The nextsection briefly describes the beer production process. In Section 3,an MIP formulation is presented and in Section 4 solution ap-proaches based on different relax-and-fix and fix-and-optimizeheuristics are proposed. The problem instances used and theresults of the computational tests are reported and analyzed inSection 5. Section 6 concludes this study and discusses possible fu-ture research directions.

2. The beer production process

This section briefly describes the beer production process in abrewery. For each type of beer, there is a distinct and particularproduction process. However, they all basically go through thesame production steps, distinguishing between each other mainlyusing certain raw materials and processing times in each step, suchas fermentation, mash, baking and others. There are four mainingredients in beer production: water, malt (barley corn that goesthrough a germination controlled process), hop (responsible for thebitter taste of tap beers) and yeast (Saccharomyces Cerevisiae Spe-cies), essential for beer production.

The two-stage production process can be seen in Fig. 2: liquidpreparation (stage I) and liquid bottling (stage II). In the former,several tasks have to be considered: mashing and lautering (wortpreparation, in Fig. 2A), cooling (before adding the yeast, inFig. 2B), fermentation and maturation (Fig. 2C), and filtering (thisoccurs between stage I and II, immediately after the ‘‘ready’’ liquidis removed from the tank). Mashing involves mixing the milledgrain (typically malt and adjuncts) with water, as well as respec-tive heating. In the lautering, the mixture is filtered and the wortis ready for boiling and joining the hops. These two processes lastfrom 3 to 8 h, depending on the type of beer. The wort is filtered

Fig. 2. The beer production process is divided into two main stag

and must be quickly cooled before adding yeast. At this moment,the beer is called green beer (Fig. 2B). The cooled wort and the lea-ven (yeast cells) are put in the fermentation tanks and then the fer-mentation phase starts, controlling the temperature. Afterfermentation, the brewer waits for the yeast to be separated bydecanting (in the same tank), so that its elements achieve the rightbalance to get ready (the maturation phase). This subprocess cantake from 3 to 41 days, depending on the type of beer, and it isone of the main production bottlenecks of the whole system. Final-ly, the beer is filtered and carbonated. Beer that has completly gonethrough all the preparation steps will be hereafter called readybeer or ready liquid.

Liquid bottling is the final stage of the production process(Fig. 2D–H), where the beer is bottled (in bottles, cans or kegs)and packed. The filling process involves several subprocesses to ob-tain the final products. Generally, theses subprocesses are similarto those of bottling in soft drink industries (Ferreira et al., 2009).For instance, in Fig. 2D, washing and sterilizing returnable contain-ers takes place (this step can be suppressed in the presence of cans,as they are purchased and sterilized), followed by the filling(Fig. 2E) of cans/bottles/kegs, which is the bottleneck of stage II,bottling and sealing (Fig. 2F), labelling (Fig. 2G) and finally, packingthe products in packs (Fig. 2H). The filling lines are initially ad-justed to produce beer of a given liquid and type of package. Ateach changeover of liquid and/or packages in the filling lines, it isnecessary to perform a sequence-dependent setup for cleaningand/or filling line adjustments, which is time consuming.

Between stages I and II, the filtered beer can stay in holdingtanks until being bottled (see Fig. 2 – holding tanks). Both stagespresent particularities, for example, the fermentation/maturationtanks have different sizes and each tank is able to prepare all kindsof liquids, contrary to each filling line, which can only producesome final items, depending on the packaging and bottling typeof the line. Furthermore, only one liquid can be produced in eachtank per period, and only one product can be bottled on each fillingline at each point in time. A filling line can receive ready beer fromonly one tank at each time. In contrast, a tank can simultaneouslysupply a liquid to several filling lines, in case they are bottlingbeers of the same liquid. One of the most challenging tasks forstage I is the use of the available resources, more specifically, thetanks. The subprocesses before fermentation take a few hoursand many of these can be done is one day, e.g. several tankscan be filled during a day, hence they are not considered theproduction bottleneck. On the other hand, the fermentation and

es: liquid preparation (stage I) and liquid bottling (stage II).

Page 4: An optimization approach for the lot sizing and scheduling problem in the brewery industry

T.A. Baldo et al. / Computers & Industrial Engineering 72 (2014) 58–71 61

maturation phases occupy the tank for many days, which is thebottleneck of stage I. In stage II, the difficulty to manage the fillinglines with their limited capacity (fulfilling the demand of differentitems) has one of the main challenging tasks concentrated in thepack filling subprocess. Therefore, as more liquid is bottled, thetanks are emptied more quickly, and are consequently releasedearlier to prepare more liquid. In this study, our focus is on inte-grating stages I and II within the production planning decisions,but considering just the bottlenecks of each stages (fermentation/maturation tanks and filling subprocess).

The production process described in Fig. 2 is found in differentbreweries. The companies in this sector are distinguished mainly inhow they organize themselves to plan and execute the productionat every stage. Usually production managers of the companies firstplan the production of the first stage and afterwards, the produc-tion of the second stage, based on the first stage plan. Especiallysome Brazilian and Portuguese companies (which have motivedour research) have many similarities in brewing process produc-tion, in terms of ingredients (but different proportions), productionprocess phases (but with different duration times), characteristicsof final items, and so on. Some differences are found in terms oforganization and structure of companies, for example, the numberof final products, production capacities (tanks and filling line num-bers) and the workforce.

3. Model development

The lot sizing and scheduling model presented in this researchintends to represent the brewing production process consideringdemand requirements, capacity of machine(s), among other fea-tures in order to provide feasible plans that minimize the costs in-volved during the production process (production, changeovernumber, inventory, etc.) and the number of item changeovers infilling lines. The production plan includes the quantity, sequenceand timing, in which each product is produced to meet thedemand.

Only the bottlenecks involved in each production process stageare considered for the model. As mentioned before, the bottleneckof production in stage I is the fermentation/maturation subprocessand, in stage II, the filling subprocess. Therefore, holding tanks arenot considered here. For stage II, the similarities to the soft drinkfilling lines are clear, and therefore, the model development in thispaper is based on that of Ferreira et al. (2009). For the proposedmodel, without loss of generality and due to the planning and pro-duction processes, the following assumptions are made:

� Contrary to other beverage industries, the ready liquids maystay in tanks while waiting to be bottled.� There are no holding costs of the ready liquids in the tanks

because of the relatively short periods of time that they remainin the tanks.� There is no sequence-dependent setup costs in filling lines (a

penalty cost is considered every turn, denoted as a, regardlessof which items are part of this changeover).� There are no setup costs in the tanks since in each liquid

exchange, the tanks need to be washed, consuming a mean timeknown in advance, therefore the tank setup times are includedin the definition of fermentation/maturation times.� The validity of the liquids is not considered due to the high rota-

tion of the tanks, which avoids the liquid spoiling.

The planning horizon comprises a few weeks and it is parti-tioned in intervals (periods). For stage I, these periods correspondto jTj days. For stage II, the jTj days are divided into two parts,jT1j and jT2j, each one with a different time granularity, flexible

shifts and days. To keep track of the process features of stage II, atwo level time-structure is considered. Therefore, each day t is sub-divided into a set kt of subperiods p (see Fig. 3); for everyt 2 T1; jkt j ¼ X and for every t 2 T2; jktj ¼ 1 (i. e. just a single timestructure is used in part of the horizon). The number of subperiodsper day differs in the first part T1 of the horizon from the second T2

(T ¼ T1 [ T2). Next, the rest of the model is defined.

Sets

N set of items (i and j 2 N) L set of liquids (l 2 L) M set of bottling/kegging/canning lines (m 2 M) O set of tanks (o 2 O) T set of periods (T ¼ T1 [ T2 and t 2 T) T1 set of periods of the first part of the planning

horizon

T2 set of periods of the second part of the planning

horizon

ktðt 2 TÞ set of subperiods p of period t (see Fig. 3) cl set of items made of liquid l lm set of items that can be produced on filling line m

Parameters

Dl number of periods required for processing liquid l

(fermentation/maturation)

dit demand for item i in period t hi inventory cost for one unit of item i over one time

period

h�i backlogging cost for one unit of item i over one time

period

ami production time of one unit of item i on filling line

m

Cmt total bottling/kegging/canning line m time capacity

in period t

rli quantity of liquid l necessary for the production of

one unit of item i

bmji setup time of filling line m due to the changeover

from item j to i

Capo

min

lower bound on the amount of liquid in tank o

Capomax

maximum capacity of tank o

X

maximum number of preparations in each fillingline in period t

a

sufficiently small number B sufficiently large number Kol0 ¼ 0 there is no ready liquid in tank o at the start of the

planning horizon

Ii0 ¼ 0 there is no stock of items i at the start of the

planning horizon

I�i0 ¼ 0 there is no backlog items i at the start of the

planning horizon

VariablesStage I

Kolt amount of ready liquid l available (to feed the

bottles/kegges/cannes) in tank o in period t

Qolt total amount of liquid l (to feed the bottles/kegges/

cannes) that gets ready in tank o in period t

YIolt

1, if liquid l gets ready in period t in tank o; 0otherwise

Stage II

Iit inventory of item i at the end of period t I�it backlog of item i at the end of period t Zmjip 1 if there is a changeover on filling line m from item

j to i in subperiod p; 0 otherwise

(continued on next page)

Page 5: An optimization approach for the lot sizing and scheduling problem in the brewery industry

62 T.A. Baldo et al. / Computers & Industrial Engineering 72 (2014) 58–71

YIIomip

1 if tank o supplies ready liquid to filling line m insubperiod p, and the line is set up for item i, 0otherwise

Common to both stages

Xomip amount of item i produced on filling line m in

period p, made of liquid fed by o

We note that the outputs from stage I are the inputs of stage II(Fig. 2). At the end of stage I (i.e., after the end of the maturationprocess), an amount Qolt of liquid l gets ready in tank o in periodt. This prepared amount Q olt of liquid l (or part of it) is either used

on filling lines to produce itemsP

m2M

Pi2cl\lm

Pp2kt

rliXomip

� �in

period t or it is stored in tank o (Kolt) to produce items in futureperiods. If liquid l is used to produce items on filling lines, anamount Xomip of item i is produced on filling line m in subperiodp (of period t) made of liquid fed by o (stage II). This producedamount Xomip of item i (or part of it) is either used to meet the de-mand of item i in period t or it is stored (Iit) to meet future de-mands of item i. We note that the production on the filling lines(stage II) occurs only in case there are ‘‘ready’’ liquids available(after the end of the maturation process of stage I). The other deci-sion variables of stages I and II of the model (YI

olt; Zmjip;YIIomip) are

used to control the processes or the backlogging (I�it ). In this way,the model coordinates the decisions of stages I and II relating theirvariables and provides feasible production plans for the brewerylot sizing and scheduling problem.

MinimizeXi2N

Xt2T

hiIit þXi2N

Xt2T

h�i I�it þXm2M

Xj;i2lm

Xp2kt\t2T1

aZmjip ð1Þ

Subject to:(Stage I and II)

Kolt ¼ Kol;t�1 �Xm2M

Xi2cl\lm

Xp2kt

rliXomip þ Q olt; o 2 O; l 2 L; t 2 T

ð2Þ

(Stage I)

XL

l0¼1

XDlþ1

t0¼1

Kol0 ;t�t0 6 Bð1� YIoltÞ; o 2 O; l 2 L; t 2 T ð3Þ

Xl2L

XDl

t0¼0

YIol;t�t0 6 1; o 2 O; t 2 T ð4Þ

Capmino YI

olt 6 Q olt 6 Capmaxo YI

olt; o 2 O; l 2 L; t 2 T ð5Þ

(Stage II)Xo2O

Xm2Mi2lm

;Xp2kt

Xomip þ Ii;t�1 þ I�it ¼ dit þ I�i;t�1 þ Iit; t 2 T; i 2 N ð6Þ

Xj2lm

Xi2lm

Xp2kt :t2T1

bmjiZmjip þXo2O

Xi2lm

Xp2kt

amiXomip 6 Cmt; t 2 T; m 2 M

ð7Þ

Fig. 3. The time granularity

Xomip 6Cmt

amiYII

omip; o 2 O; m 2 M; i 2 lm; p 2 kt ; t 2 T ð8Þ

Xo2O

Xi2lm

YIIomip ¼ 1; m 2 M; p 2 kt; t 2 T1 ð9Þ

Xo2O

Xi2lm

YIIomip 6 X; m 2 M; p 2 kt; t 2 T2 ð10Þ

Xo2O

YIIomj;p�1 ¼

Xi2lm

Zmjip; m 2 M; j 2 lm; p 2 kt; t 2 T1 ð11Þ

Xo2O

YIIomip ¼

Xj2lm

Zmjip; m 2 M; i 2 lm; p 2 kt ; t 2 T1 ð12Þ

Xomip P 0; Kolt P 0; Q olt P 0; YIolt 2 f0;1g; i; j 2 N;

o 2 O; l 2 L;

YIIomip 2 f0;1g; Zmjip P 0; m 2 M; p 2 kt ; t 2 T ð13Þ

The objective function (1) aims to minimize the sum of finalproduct inventory, demand backlogging and a term proportionalto the number of item changeovers on the filling lines. It is worthnoting that constraints (2), representing the tank liquid balanceequality, integrate stages I and II. The demand for liquid l in eachtank o and period t comes from the item production quantities de-fined by

Pm2M

Pi2cl\lm

Pp2kt

rliXomip. In case the liquid gets ready inperiod t (Qolt > 0), Kol;t�1 ¼ 0, as it was not available in the previousperiod. Constraints (3) ensure that in order to get the liquid readyin t(Yolt ¼ 1), the fermentation/maturation process has to takeplace during the previous Dl periods; naturally, during this periodthe liquid is being prepared, thus not prompt yet. The tank must beemptied to receive liquids to ferment/mature in period t � ðDl þ 1Þ.Constraints (4) ensure that during any period of the fermentation/maturation process the tank has no available liquid, i.e. YI

olt equalsto zero, see Fig. 4. Finishing stage I, constraints (5) impose bound-aries on the amount of ready liquid.

Regarding stage II (the filling), constraints (6) balance theinventory, backlogs, production and demand. Constraints (7) en-sure that the limited capacity of the filling lines is respected forranges T1 and T2, respectively. During T1, the setup time contrib-utes for the capacity consumption, in opposition to T2 (seeFig. 5). In constraints (8), it is guaranteed that the production ofionly occurs in case the filling line is ready. According to con-straints (9), the filler must be prepared for a single item for eachsubperiod p 2 kt; t 2 T1. Constraints (10) limit the number of prep-arations of the filler to X in every subperiod p 2 kt ; t 2 T2. Recallthat in the second part of the horizon (T2) the length of each sub-period is bigger than that of T1. Sequencing decisions are not per-formed here, but several lots (up to X) may be produced on thesame filling line per subperiod. Finally, constraints (11) and (12)capture the switchover of items on the filling lines in T1, balancingthe flow in and flow out of setups. Moreover, constraints (13) de-fine the domain of the variables. It should be observed that in caseDl ¼ 0 for all l, then the model represents a (fictious) situation

of the planning horizon.

Page 6: An optimization approach for the lot sizing and scheduling problem in the brewery industry

Fig. 4. The tank needs to be empty before starting the fermentation/maturation of a new liquid (Kolt ¼ 0) that will get ready Dl þ 1 days after the liquid has been first put inthe tank.

Fig. 5. Illustrative solution of lot sizing and scheduling at the brewery.

T.A. Baldo et al. / Computers & Industrial Engineering 72 (2014) 58–71 63

where the preparation of the liquids may take place in the sameperiod in which the liquids become ready for bottling.

Based on Ferreira et al. (2009), the requirements (11) and (12)could be rewritten as Zmjip P Yomjðp�1Þ þ Yomip � 1 (o 2 O;m 2 M;

j 2 N; i 2 N; p 2 kt; t 2 T). However, these expressions are not usedhere because in Wolsey (1997) they are considered less strong thanthe ones used here.

3.1. Numerical example

The model restrictions can be better understood with theillustration of a numerical solution. A small-size instance with2 tanks (each with Capmax = 10,000), 2 filling lines and threeitems is solved by the MIP model presented before untiloptimality. Fig. 5 depicts a Gantt chart illustrating the maindecisions of the two stages of the production process through-out the planning horizon, namely the variables Kolt and Xomip.Tanks are represented at the top, while lines at the bottom ofthe figure. The numerical example was solved by a commercialsolver (CPLEX 12.4) in 100 s. The respective planning horizonT ¼ 12, and the first 3 periods are described in detail(jT1j ¼ 3) for the filling process. The instance considers differentliquids used to produce 3 items. Two items are made of ‘liquid1’ (D1 ¼ 1 for fermentation/maturation, r11 ¼ 5 and r13 ¼ 7) and

‘liquid 2’ produces just one item (D2 ¼ 2 for fermentation/maturation, r22 ¼ 4).

Note in Fig. 5, that in t ¼ 1 the production of item i ¼ 3 occurson line m ¼ 1 and of item i ¼ 1 on m ¼ 2, both lines receive readyliquid from tank o ¼ 1 (Q 111 ¼ 9791). In t ¼ 2, on m ¼ 1, there is achangeover from i ¼ 3 to i ¼ 2, consuming part of the ready liquidfrom tank o ¼ 2 (2664) to produce this item. Consequently, thetank contains K223 ¼ 6936 of ready liquid in the subsequent period.In this same period, the tank o ¼ 1 is fermenting and maturing li-quid l ¼ 1, which gets ready in t ¼ 3. The same analysis is con-ducted for the tanks during the other periods. Remember thatfrom t ¼ 4 to the end of the planning horizon (i.e., T2), the lotsare not sequenced on lines (despite the figure inducing the readerin error). Observe t ¼ 4, there is a changeover of items, but there isno setup time.

3.2. The time influence of fermentation and maturation

Liquid preparation in soft drink industries (as in the case of nat-ural and carbonated water, soda, juice) takes some minutes or atmost a few hours. In the brewery industry, the fermentation andmaturation stages (of the first stage) of the beer production areslow. This feature directly influences the production plan, sincethe bottling (stage II) can only start after the liquid gets ready(stage I). The ready liquid can remain for some time in tanks before

Page 7: An optimization approach for the lot sizing and scheduling problem in the brewery industry

Fig. 6. Influence of fermentation and maturation times in terms of: (I) the GAP (see Eq. (14)) and (II) the percentual contribution of inventory costs and backlogs in theobjective function.

64 T.A. Baldo et al. / Computers & Industrial Engineering 72 (2014) 58–71

being bottled, which is different from the beverage industry wherethere is no possibility of holding the liquid that has to be bottledimmediately after getting ready.

To clarify the influence of the duration on the fermentation andmaturation (Dl), the model introduced in this section was solved bya commercial solver (CPLEX 12.4), considering a set of 7 artificialinstances with the same characteristics in Section 3.1. The in-stances were generated using the same data, but the number oftanks is now eight with the lowest capacity for each one (threetanks with capacity of 3000 and the others with 1000), and the fer-mentation/maturation times for each combination of liquids(D1;D2) are: (0,0), (0,2), (2,0), (2,2), (2,3), (2,4), (2,6), (2,7) and(2,8) these are presented at the bottom of Fig. 6. A runtime limitof 1 h was considered. The results of these tests are shown inFig. 6, where axis ‘x’ represents the instances. In Fig. 6I, the graphshows the GAP on the axis ‘y’, as defined in expression (14) interms of %, where Fo is the current value of the objective functionand Best is the best lower bound found during the model resolu-tion, both delivered by CPLEX, at the top part. In Fig. 6, the respec-tive running time is shown (it only differs from 3600 s in caseCPLEX is able to prove optimality before the time limit). InFig. 6II, the percentual contribution of holding and backloggingcosts for the objective function value are depicted.

GAP ¼ Fo� BestFo

� 100� �

% ð14Þ

Analyzing the results shown in Fig. 6I, only the instances with(Dl¼1;Dl¼2) equal to (0,0) and (0,2) were solved for optimality dur-ing the time limit. Also observe the gradual increasing in the GAPas Dl increases. The difficulty of solving the last instances ofFig. 6 is worth noting. Clearly, the highest GAPs are due to high val-ues of Dl. Naturally, as the fermentation/maturation duration in-creases, the flexibility of the production process decreases,causing an impact on the customer service level (unsatisfied de-mand may occur), as shown in instance (2,4). The backlog beginsfor the instances (2,6) onwards also with a positive trend alongthe increase of Dl¼1.

When Dl ¼ 0 for every liquid, the optimal solution is found in afew seconds. Even the beer with shortest fermentation and matu-ration times gets ready in three days (e.g., some non-alcoholicbeers). The case where Dl ¼ 0 (or even Dl ¼ 1) resembles the indus-try of other drinks (soft drinks, carbonated water, juices, etc.)where the preparation and filling of liquids occur typically within24 h, the model does not represent accurately this industry due

to the possibility of storing ready liquid inside the tanks waitingfor the filling. Nevertheless, the adaptation would bestraightforward.

4. MIP-based heuristics

In Section 3.2, we presented results that are compatible withthe literature in terms of difficulty to solve the two-stage lot sizingand scheduling problem, especially for problems whose sizeresembles the situations found in brewery industries, thus moti-vating heuristics to produce good quality solutions. Several MIP-based decomposition approaches have been developed to solvecombinatorial problems. This is the case of the well known relax-and-fix (Pochet & Wolsey, 2006; Stadtler, 2003) and fix-and-opti-mize procedures (Helber & Sahling, 2008; Pochet & Wolsey,2006), which have been used to tackle beverage lot sizing andscheduling problems (Ferreira et al., 2009, 2012). The good resultsobtained in previous researches have motivated us to adapt thesemethods to the present study.

4.1. Relax-and-fix constructive heuristics

In relax-and-fix heuristics, all integer variables of the model (YI

and YII) are relaxed and partitioned into disjunctive subsets

(Y ¼ Yf1 [ Yf

2 [ � � � [ Yfk [ � � � [ Yf

u). In each iteration, the variablesof one of these subsets are defined as integers, obtaining a smallersub-MIP. This submodel is solved and the integer variables fixed totheir current value. This iterative process is repeated until allvariables of the subsets are fixed, or one of the subproblems isinfeasible, failing the heuristic to find a feasible solution – seeAlgorithm 1.

In case this procedure includes overlapping (Yok , being

Y ¼ Yo1 [ Yo

2 [ � � � [ Yok [ � � � [ Yo

u), the subsets that will switch thedomain of variables (from continuous to integer) and the subsets

that will have their values fixed (Yfk) can be of different sizes. The

set of variables that will be fixed is a subset of the overlappingset. In other words, consider Y the set of integer variables of the

model that is divided in subsets Yok and Yf

k, as follows:

(i) Yok \ Yo

k0 ¼ ; and Yfk \ Yf

k0¼ ;ðk – k0;8k; k0 2 f1; . . . ;ug,

(ii) Y ¼Yf1[Yf

2[�� �[Yfk[�� �[Yf

u¼Yo1[Yo

2[�� �[Yok [�� �[Yo

u,(iii) Yf

1 # Yo1;Y

f2 # Yo

1 [ Yo2; . . . ;Yf

u # Yo1 [ � � � [ Yo

u.

Page 8: An optimization approach for the lot sizing and scheduling problem in the brewery industry

T.A. Baldo et al. / Computers & Industrial Engineering 72 (2014) 58–71 65

Algorithm 1. Pseudocode of the relax-and-fix with overlappingprocedure

Let MIPk be the submodel of the k-th iteration;

Define each subset Yok and Yf

k (k ¼ 1; . . . ;u), according to therules defined;

Define runtime limit RT;

Define bS ¼£ (solution set for the problem);Relax the model variables (Y);k ¼ 0;While Runtime 6 RT and k 6 u and MIPk is feasible do

k ¼ kþ 1;Switch Yo

k domain, defining the respective variables asintegers;

Solve the MIPk subproblem (respecting the runtime limitdesignated for k-subproblem);

Fix variable set Y to the current values that are in

Yf1 [ � � � [ Yf

k;

Update bS with variables Y fixed;endif MIPk is infeasible then

The procedure, with partitions Yo and Yf , does not solvethe problem;

end

Fig. 7 helps to understand the partitions (Yok and Yf

k; k ¼ 1; . . . ;u,see Algorithm 1) of the overall scheme of decompositions to tacklethe problem. To simplify, the subsets Yo

k and Yfk (k ¼ 1; . . . ;u) are

abbreviated to Yo and Yf , respectively.

The heuristic relax-and-fix forward with overlapping (denotedas RF_Forw, depicted in Fig. 7A) is a time-decomposition heuristic,based on a time-interval progression scheme. Its partitions are de-fined according to the duration of fermentation and maturation of

Fig. 7. (A) RF_Forw, (B) RF_Back an

the liquids. The partitions for sets Yo and Yf are defined within theplanning horizon, from the beginning to the end of the horizon. Thesize of each subset Yo is given by max8l2L Dl and each subset Yf bymin8l2L Dl. In case max8l2L Dl differs from min8l2L Dl, overlapping oc-curs. Consequently, the sizes of the partitions are based on thecharacteristics of each instance.

The heuristic relax-and-fix backward with overlapping(RF_Back), Fig. 7B, relies on the same settings to define the sizesof subsets Yo and Yf , but now on a backward switching move to-wards the first period.

The third relax-and-fix heuristic (Fig. 7C) hybridizes the sets ofperiod-decomposition and stages-decomposition. The RF_Forwpartitions are used, however, instead of the usual way, where initeration k the Yo

k and Yfk are related to both stages (I and II), in this

heuristic, the Yok and Yf

k are related only to stage II in iteration k,while the Yo

kþ1 and Yfkþ1 only to stage I in iteration kþ 1. This heu-

ristic is denoted as RF_Forw_II-I.Other two relax-and-fix heuristics, which are not represented in

Fig. 7, do not make use of a period-oriented decomposition. Thefirst orders the tanks in the decreasing order of their sizes. SubsetsYo and Yf are of the same size, i.e., jYo

1j ¼ jYf1j defined by the largest

tank, jYo2j ¼ jY

f2j defined by the second largest tank, and so on, and

is denominated RF_Tank heuristic.The last relax-and-fix heuristic (RF_Demand) considers parti-

tions Yf and Yo defined from a liquid-oriented decomposition,being the set defined ordering to the increase of liquid demand(along with the respective related items). The total demand forthe final items is aggregated in terms of each liquid demand in adescending order. Subsets Yo and Yf are of the same size. In eachiteration, all the subset variables related to each decomposed li-quid are released and also those of the items made of the sameliquid.

In order to illustrate the performance of relax-and-fix heuris-tics, the artificial instance in Section 3.1 is used again, under thesame time limit (1 h). The results indicate the superiority of theRF_Forw heuristic, whose results are illustrated in Fig. 8. In case

d (C) RF_Forw_II-I procedures.

Page 9: An optimization approach for the lot sizing and scheduling problem in the brewery industry

Fig. 8. RF_Forw performance for artificial example.

Fig. 9. The Populate method and Opt_Forw procedure performance for the artificial examples.

66 T.A. Baldo et al. / Computers & Industrial Engineering 72 (2014) 58–71

Dl ¼ 0, partition Yok and Yf

k with size 1 is used. Observe the similar-ity of the results obtained by the model resolution (Fig. 6) and bythe heuristic (Fig. 8).

4.2. Fix-and-optimize improvement heuristics

Starting with an initial feasible solution of the problem (see bS inAlgorithm 2), the fix-and-optimize heuristic attempts iteratively toimprove it. The current solution bS contains integer values for vari-ables Y which are denominated by bY . The fix-and-optimize heuris-tic decomposes the bY variables into disjunctive subsets. Thus, ineach iteration of the method there are two basic steps: first, onesubset of variables is selected to be free for the (re)optimization,and the remaining variables keep the value of the best solutionfound so far. The resulting sub-MIP is solved until optimality orruntime limit. If the objective function of the new solution is bet-ter, then the variables bY are redefined into the current value, other-wise the value of the best solution found so far (bS) is kept. This stepis repeated until all subsets are visited at least once and while theprocedure is able to find better solutions within the runtime limit.The fix-and-optimize procedure can also be used with overlapping.

In our experiments, the five decomposition schemes used in the re-lax-and-fix heuristics are used for the fix-and-optimize. Therefore,the partitions Yo and Yf defined for each strategy of the relax-and-fix heuristics are used in the fix-and-optimize heuristics (bY o andbY f ); the procedures are denoted here as: Opt_Forw, Opt_Back,Opt_Forw_II-I, Opt_Tank and Opt_Demand (related to RF_Forw,RF_Back, RF_Forw_II-I, RF_Tank and RF_Demand, respectively).

Algorithm 2. Pseudocode of fix-and-optimize with overlappingprocedure

Given a feasible solution bS for the problem with objective

value FðbSÞ;Define each subset bY o

k and bY fk (k ¼ 1; . . . ;u), according to the

two defined rules;Define the runtime limit RT;

Define bSold ¼ ; (the previous solution);

Define bSnew ¼ ; (the new solution);k ¼ 0 and q ¼ 0;

Page 10: An optimization approach for the lot sizing and scheduling problem in the brewery industry

T.A. Baldo et al. / Computers & Industrial Engineering 72 (2014) 58–71 67

While {(Runtime 6 RT and F (bSoldÞ > FðbS)) or (q 6 u)} dok ¼ kþ 1 and q ¼ qþ 1;bSold ¼ bS;

Release bY ok for reoptimization;

Solve the MIP-subproblem (respecting the runtime limit);

Update bSnew to the MIP-subproblem solution;

if F (bSnewÞ < FðbS) then

Fix variables bY to the current values in Yf ;

Update bS;endif k = u then

k ¼ 0;end

end

To illustrate the performance of fix-and-optimize heuristics, theprocedures were run with the initial feasible solution provided byCPLEX Populate method. This method may return a feasible solu-tion (not necessarily optimal). For a first assessment of theimprovement method, the artificial instance in Section 3.1 is againsolved within one-hour time limit. The results obtained by each offix-and-optimize procedures show similar performances and theinitial solutions were improved in most of the cases. The OPT_Forwhas delivered the best results in terms of average GAP, and therespective results are shown in Fig. 9.

5. Computational tests and results

Some computational experiments are shown and analyzed inthis section. Both the mathematical model and the solution ap-proaches presented in Sections 3 and 4 have been coded in C++programming language, linked to the Concert Library (CPLEX ver-sion 12.4), used as the optimization engine for the linear and mixedinteger programs. The experiments were run on a PC Intel(R) i72600 with eight cores of 3.4 GHz each and a memory of 16 GB.

The computational study was conducted on 20 problem tests,where the number of items and filling lines have a similar dimen-sion to real-world instances of the brewery industries. Our in-stances were created based on the real data collected. The nextsection describes the data generator and the instance tests.

5.1. The test instances

The test instances of this study are based on real world datafrom a Portuguese brewery industry. However, due to non-disclo-sure with the company, these cannot be explicitly revealed. Thecompany data was used to generate small, medium and big-sizedproblems, with consistent advice to reality, as well as complex in-stances similar to those of the real-world. However, informationabout item demands provided for the industry relate to a short per-iod of time, therefore a demand coefficient of variability 10% hasbeen used. Consequently, we are not able to perform direct com-parisons to the company production plans.

The number of filling lines is equal to five (jMj ¼ 5) and thenumber of items (jNj) belongs to the set f35;40g. The horizon plan-ning is of 6 weeks, the same size used by the company, thus thenumber of (daily) periods is 42 (jTj ¼ 42). The first seven daysare discretized in 3 subperiods each, i.e., jT1 ¼ 7j and jkt j ¼ 3,8t 2 T1. We give hereafter the interval of data sets used in our tests.The quantities of liquid l to produce one unit of product i (rli)are chosen from the set {1.98,4.00,4.80,5.00,6.00,6.00,6.60,7.92,12.00,17.82,20.00,30.00,50.00}. The week demand is defined in

the interval [60,256710] (demand expressed in units varies consid-erably according to the size of the stock keeping unit, but the var-iation is smoother when computed in liters). The unitary holding(inventory) costs of each item over one time period are definedfrom [0.009,0.35], considering the types of liquids and sizes ofitems; these values are similar to the ones used by the companyand include the opportunity costs of the products. The shortage(backlogging) costs for one unit of each item over one time periodare defined as sufficiently large values (e.g., one hundred times thecorresponding holding costs) to reflect the priorities of the com-pany in meeting the customer demands without delays and pro-viding high service levels. The processing times on the fillinglines range in [0.018,9.6]. Each product is made of one liquid withthe fermentation/maturation times selected from the set{5,10,13,15,16,17,21}. The filling lines are capable of producingall the items. The different characteristics of each item define thesetup times. The greater the differences between the items, the lar-ger the value of the setup time between them. The used values are{30,40,45,60,75,90,100,120,150,160, 165, 180, 195, 210, 240,260,300,380,480}.

The number of tanks (jOj) and the filling lines capacity (Cmt)were generated according to the necessity and characteristics ofeach instance. The number of tanks is given by expression (15),dividing the quantity into 75% of the tanks which have a capacityof Capo

max = 100,000, and 25% Capomax = 300,000. The El is defined in

expression (16) and it refers the number of tanks that is necessaryto satisfy the demand for each liquid. The lines capacity is calcu-lated from expression (17) that takes into account the setup timestogether with the production time of items capable to be producedby the line. The minimum time considered to keep the filling linesturned on is 60 min.

jOj ¼P

l2L

Pi2cl

Pt2T ditrli

ð0:75Capomax þ 0:25Capo

maxÞP

l2L El

& ’ð15Þ

El ¼T

Dl þ 1

� �; 8l 2 L ð16Þ

Cmt ¼max 60 min;Xl2L

Pt2T

Pi2lmðamiditþmax8j2lm

fbmjigÞjTj

" #& ’( );

8m2M and 8t2 T ð17Þ

5.2. Results

Because of the number of relax-and-fix and fix-and-optimizeheuristics presented in the previous section, we used some strate-gies to categorize the best combination of heuristics. The next sec-tion describes how this combination was found and used,posteriorly to the results being obtained.

The solution method proposed in this paper is based on the gen-eration of good initial solutions using relax-and-fix and improvingthem with the help of fix-and-optimize strategies. Initially, we ranall the relax-and-fix approaches and the results were compared inrelation to the GAP, expression (14), considering a one-hour timelimit. Preliminary tests were conducted on 7 instances of mediumsize, jMj ¼ 1 and jNj ¼ 5; jMj ¼ 2 and jNj 2 f5;10g, and jMj ¼ 4 andjNj 2 f5;10;15;20g. The heuristic RF_Forw achieved the best per-formance for all instances, followed by RF_Back. The heuristicsRF_Forw_II-I, RF_Tank and RF_Demand, in general did not achievea good performance, therefore the results for these heuristics arenot described in detail. RF_Forw heuristic seems to find feasiblesolutions more frequently than RF_Back. Therefore, RF_Forw heu-ristic is used to generate the initial solution of our method. Otherstests were performed, such as using relax-and-fix where only

Page 11: An optimization approach for the lot sizing and scheduling problem in the brewery industry

Table 1Ratio values obtained using the model and heuristics Proc_Incr and Proc_Dec to the 20 instance tests with similar sizes to the real-world case.

Data 3600 s (runtime limit) 7200 s (runtime limit)

jNj Model(%)

RF_Forw (900 s) RF_Forw (1800 s) Model(%)

RF_Forw (1800 s) RF_Forw (3600 s)

Initialsolution (%)

Proc_Incr(%)

Proc_Dec(%)

Initialsolution (%)

Proc_Incr(%)

Proc_Dec(%)

Initialsolution (%)

Proc_Incr(%)

Proc_Dec(%)

Initialsolution (%)

Proc_Incr(%)

Proc_Dec(%)

35 97.89 99.85 0.00 26.22 99.85 10.28 63.03 98.16 99.87 0.00 12.05 99.57 0.11 22.4798.46 99.93 3.23 38.25 99.93 0.00 31.26 97.89 99.93 2.97 27.32 99.87 0.00 17.3998.93 99.84 0.00 27.75 99.84 3.92 72.41 98.93 99.85 0.00 22.87 99.85 10.07 14.7799.92 99.84 0.00 22.73 99.84 6.42 91.28 98.84 99.84 1.08 10.27 99.84 4.62 0.0098.72 99.79 4.41 37.95 99.79 0.00 61.31 97.49 99.89 6.45 3.60 99.89 0.00 77.2999.51 99.91 0.00 23.47 99.84 19.12 30.02 98.30 99.86 0.00 6.41 99.85 3.45 16.6099.93 99.85 0.00 30.88 99.85 6.40 79.78 98.32 99.86 0.00 13.07 99.86 3.19 3.8998.73 99.88 0.00 8.75 99.88 15.46 30.58 98.85 99.89 2.88 1.38 99.89 4.38 0.0099.92 99.84 0.00 32.77 99.84 17.89 34.06 98.85 99.84 0.00 5.16 99.84 17.68 16.8999.92 99.88 0.00 23.56 99.88 14.01 43.24 98.76 99.89 0.00 25.81 99.89 3.07 29.97

40 99.89 99.77 0.00 84.69 99.77 99.77 94.65 99.92 99.83 0.00 12.42 99.83 17.02 79.5299.90 99.79 0.00 83.89 99.79 57.56 87.09 99.06 99.84 0.00 17.77 99.84 10.02 16.5799.90 99.88 0.00 6.85 99.80 89.96 41.53 99.92 99.84 5.27 65.90 99.84 0.00 52.1399.92 99.88 0.00 90.47 99.88 53.54 76.08 99.92 99.89 0.00 38.88 99.89 10.79 61.9599.80 99.75 53.19 38.11 99.57 0.00 85.12 99.32 99.83 3.90 6.77 99.83 0.00 8.5999.91 99.80 0.00 78.90 99.80 63.78 71.48 97.21 99.82 0.00 12.19 99.82 27.85 75.0399.92 99.83 0.00 64.30 99.83 46.50 82.63 99.92 99.85 0.00 21.69 99.85 13.60 55.0699.41 98.81 0.00 61.71 98.80 98.80 76.93 99.92 99.84 0.00 73.17 99.84 3.08 86.8599.87 99.84 0.00 60.20 99.72 48.45 79.79 99.42 99.84 0.00 17.80 99.90 10.82 25.9099.85 99.68 0.00 4.40 99.67 91.15 63.88 99.91 99.80 0.00 13.06 99.80 7.65 14.60

Average 99.51 99.78 3.04 42.29 99.76 37.15 64.81 98.95 99.86 1.13 20.38 99.84 7.37 33.77

68 T.A. Baldo et al. / Computers & Industrial Engineering 72 (2014) 58–71

integer variables are fixed at each iteration. In other tests, we havealso considered the real variables Qolt inferiorly bound by the ob-tained values in the earlier partitions or fixing Qolt to the first valuefound. The strategy of fixing the Q olt variables does not yield a goodperformance, because it triggers backlog. The heuristic RF_Forw isused with variables Q olt inferiorly bounded, as it seems to be fasterthan the simple strategy (where only integer variables are fixed).

In order to find out the best fix-and-optimize combination to beused in the final method, we also conducted preliminary tests onthe same instances. Firstly, we use the Populate method providedby CPLEX optimization software to generate the initial solution be-fore applying the respective improvement procedures. All strate-gies are able to improve the solutions with a significant GAPreduction over the initial solution found by Populate. Thus, forour method, all the partitions of the problem are combined to ob-tain two improvement fix-and-optimize heuristics. These are ap-plied in two different ways, the first procedure implementsconsecutively the several fix-and-optimize variants in a decreasingorder regarding the respective average GAP obtained in the preli-minary tests: OPT_Forw, OPT_Back, Opt_Demand, OPT_Forw_II_Iand Opt_Tank. This procedure is denominated as Proc_Dec (abbevi-ation for Decreasing Procedure). In the second case, denominatedIncreasing Procedure (Proc_Inc), the improvement heuristics wereused in the reverse order of the first case (Opt_Tank, RF_Forw_II_I,Opt_Demand, OPT_Back and OPT_Forw).

Hence, as to select the best strategy to come up with an initialsolution, we compared the behavior of RF_Forw heuristic againstthe Populate method. We have considered different time limitsfor both methods, namely 900, 1800 and 3600 s, and the 20 biggestinstances were used with jMj ¼ 5 and jNj 2 f35;40g. In general, theperformance of both procedures is not good for the resolution ofthese instances (as expected, as their aim is only to provide a firstsolution). The RF_Forw heuristic is faster than Populate to find aninitial solution and therefore has been used for the final test.

The improvements methods Proc_Incr and Proc_Dec weretested with different configurations on 20 instances (jMj ¼ 5 andjNj 2 f35;40g). Due to the weak lower bound given by the model,the methods were computed using expression (18), instead ofthe GAP. The overall best value found (with the same time limit)

is selected (Best) and it is used to compare the solution obtainedby each method (Fo). The effective success of a method increasesas the Ratio measure tends to zero.

The first test was conducted with a runtime limit of 3600 s (seeresults in Table 1), and the runtime for our procedures to obtainthe initial solutions (in RF_Forw) is limited to 900 and 1800 s.The results of the procedures using the RF_Forw with 900 s werebetter than the procedure with 1800 s. The Proc_Incr deliveredthe best solution for the majority of examples. The solutions ob-tained by both procedures are better than the solutions obtainedby the model through CPLEX in one and two hours running time.

The discrepancy among the results was investigated, revealingsignificant delays in demand delivery throughout the planninghorizon, obtained by CPLEX, as shown in Table 1. On the otherhand, the Proc_Incr and Proc_Dec deliver all demands until theend of the horizon.

Ratio ¼ Fo� BestFo

� 100� �

% ð18Þ

The second test of the Proc_Incr and Proc_Dec procedures havebenefited from a time limit of 7200 s, as shown by the results in Ta-ble 1, and the heuristic RF_Forw with a runtime limit of 1800 and3600 s. Both algorithms have better Ratio values. Table 2 providesthe percentage of undelivered demand, however even within thetime given, the solution obtained by CPLEX contained significantbacklogging.

The procedures Proc_Incr and Proc_Dec seem promising, out-performing CPLEX for the overall method on every large probleminstance. Therefore, results indicate their applicability to real-world situations, fulfilling the demand for items during the courseof the planning horizon, as shown in Table 2. We note that as theruntimes dedicated to the improvement methods increase, the per-formances of procedures Proc_Incr and Proc_Dec become better.Using the same heuristics but differing only in the order that thefix-and-optimize heuristics are applied, the procedure Proc_Incrpresents a superior performance than procedure Proc_Dec whensolving almost all problem instances. The greedy procedure ofstarting with the best partitioning strategies seems to converge

Page 12: An optimization approach for the lot sizing and scheduling problem in the brewery industry

Table 2Percentage of undelivered demands after ending the planning horizon for theinstances in Table 1 (runtime limited to 1 and 2 h). For Proc_Incr and Proc_Dec, theminimum and maximum values undelivered are presented (in case they aredifferent).

(1 h) (2 h)

jNj Model(%)

Proc_Incr andProc_Dec

Model(%)

Proc_Incr andProc_Dec

RF_Forw – 15 min(%)

RF_Forw – 30 min(%)

35 4.37 0–0.22 4.37 0.007.37 0.00 3.59 0.00

14.30 0.00 10.85 0–0.02100.00 0.00 11.50 0.00

14.09 0.00 5.49 0.0017.14 0.00 7.77 0.0099.32 0.00 7.96 0.0014.23 0.00 14.23 0.00

100.00 0–0.8 13.80 0.00100.00 0.00 9.82 0.00

40 100.00 0–1.05 100.00 0.0099.48 0.00 14.70 0.00

100.00 0.00 100.00 0.0098.88 0–0.25 98.88 0.00

100.00 0.00 17.38 0.0098.80 0.00 11.42 0.0098.80 0.00 98.80 0.00

100.00 0.00 100.00 0.0099.50 0.00 15.91 0.0098.84 0.00 98.84 0.00

Average 73.26 0–0.19 37.27 0.00

T.A. Baldo et al. / Computers & Industrial Engineering 72 (2014) 58–71 69

prematurely the search to local optima. These results are indepen-dent of the underlying parameters, as illustrated in next section.

5.3. Sensitivity analysis

Computational tests were also performed in order to analyzethe sensitivity of the model and heuristics solutions to perturba-tions of some parameters of the problem. For example, acquisition

Table 3Ratio values obtained after varying the number of tanks and the number of days to complete

Data 3600 s (runtime limit)

jNj Model(%)

RF_Forw (900 s) Model(%)

RF_Forw (9

Initialsolution (%)

Proc_Incr(%)

Proc_Dec(%)

Initialsolution (%)

35 99.03 99.87 0.00 22.29 99.16 99.8697.06 99.87 0.00 7.91 95.71 99.8799.92 99.83 0.00 19.50 99.93 99.8499.93 99.84 0.00 18.75 99.91 99.8199.93 99.70 0.00 91.51 99.93 99.6397.30 99.75 0.00 12.13 97.81 99.8596.28 99.86 0.00 41.04 88.84 99.8596.57 99.85 0.00 14.68 99.39 99.8999.93 99.84 0.00 26.31 99.92 99.8399.91 99.88 0.00 9.17 99.90 99.53

40 99.88 99.75 6.53 0.00 99.90 99.7899.43 99.81 11.98 0.00 99.45 99.7199.36 99.68 0.00 55.50 98.87 98.8798.94 98.92 0.00 9.42 99.47 99.4899.85 99.83 0.00 94.94 99.55 99.8199.90 99.78 0.00 59.92 99.90 99.8099.91 99.83 0.00 13.45 98.73 99.5899.92 99.83 0.00 88.40 99.92 99.8399.86 99.70 20.77 0.00 99.42 99.7599.61 99.79 0.00 75.08 90.73 99.71

Average 99.13 99.76 1.96 33.00 98.32 99.71

(A) jOj ¼ 1:05jOoriginal jl m

(B) jOj ¼ 1:10jOoriginall

of new tanks to increase the capacity of fermentation and matura-tion processes and use of new procedures to speed up these pro-cesses. In this way, new problem instances were generated fromthe 20 largest instances (jMj ¼ f5g e jNj ¼ f35;40g) by changing

the original number of tanks (jOoriginalj) and the original numberof days necessary to complete the fermentation and maturation

of the liquids (Doriginall ). The variations in these parameters were:

(i) increase of the number of tanks in 5% and 10%

(jOj ¼ 1:05� jOoriginaljl m

) (jOj ¼ 1:10� jOoriginaljl m

) and (ii) reduction

of the number of days necessary to complete the fermentation and

maturation times in 10% (Dl ¼ 0:9� Doriginall

j k;8l 2 L). These sets of

instances were solved using the model and the heuristics Proc_Incrand Proc_Dec. The runtimes were limited to 3600 s. For the heuris-tics, a time limit of 900 s was also imposed for the relax-and-fixexecution and the remaining time for the fix-and-optimize. Weanalyzed the Ratio and the percentage of unmet demand at theend of the planning horizon. All the solution methods reachedthe runtime stoppage criterion and the respective results are pre-sented in Tables 3 and 4.

For the instance sets with increased number of tanks, proce-dures Proc_Incr and Proc_Dec had better performances than solv-ing the whole model, producing solutions with better Ratiovalues and able to deliver all product demand until the end ofthe planning horizon; this was not the case for the model solutions(Tables 3(A)–(B) and 4(A)–(B)). We note that the Proc_Incr solu-

tions were better for the instances with jOj ¼ 1:05jOoriginaljl m

, while

the Proc_Dec solutions were better for jOj ¼ 1:10jOoriginaljl m

.

Regarding the instance set with reduced number of days tocomplete the fermentation and maturation processes, see Tables3(C) and 4(C), the model also found difficulties to obtain goodsolutions if compared to procedures Proc_Incr and Proc_Dec, yield-ing Ratio values higher than 97% (Table 3(C)) for all instances andwith an average demand shortage of 63% (Table 4(C)). Half of themodel solutions fails to meet demand in more than 90%, whereasthe heuristics solutions were able to meet the whole demand

fermentation and maturation using the model and heuristics Proc_Incr and Proc_Dec.

00 s) Model(%)

RF_Forw (900 s)

Proc_Incr(%)

Proc_Dec(%)

Initialsolution (%)

Proc_Incr(%)

Proc_Dec(%)

0.00 5.64 97.27 99.85 4.48 0.000.00 9.44 99.94 99.84 5.03 0.000.00 39.17 99.93 99.82 0.00 83.380.00 27.91 99.89 99.73 0.00 49.960.00 31.73 99.93 99.59 0.00 19.720.00 11.03 99.40 99.82 0.00 40.230.00 6.56 99.63 99.83 0.00 87.650.00 17.54 99.22 99.88 0.00 7.340.00 15.11 98.95 99.81 0.00 76.08

24.79 0.00 99.93 99.64 0.00 69.02

73.54 0.00 99.89 99.73 0.00 88.9850.68 0.00 98.91 99.65 0.00 75.9567.64 0.00 99.89 99.75 0.00 69.2383.29 0.00 99.91 99.86 0.00 12.7648.93 0.00 99.90 99.75 24.21 0.00

1.81 0.00 99.84 99.77 0.00 67.0357.23 0.00 99.29 99.77 0.00 91.12

0.00 74.29 99.74 99.36 0.00 37.0344.18 0.00 99.22 99.60 0.00 93.3238.17 0.00 98.70 99.60 0.00 44.22

24.51 11.92 99.47 99.73 1.69 50.65

jm

(C) Dl ¼ 0:9Doriginall

j k. 8l 2 L

Page 13: An optimization approach for the lot sizing and scheduling problem in the brewery industry

Table 4Percentage of undelivered demands obtained after varying the number of tanks and the number of days to complete fermentation and maturation using the model and heuristicsProc_Incr and Proc_Dec.

jNj (1 h)

Model (%) Proc_Incr and Proc_Dec Model (%) Proc_Incr and Proc_Dec Model (%) Proc_Incr and Proc_DecRF Forw – 15 min (%) RF Forw – 15 min (%) RF Forw – 15 min (%)

35 16.70 0.00 13.51 0.00 6.86 0.007.19 0.00 0.26 0.00 99.34 0.00

100.00 0.00 100.00 0.00 100.00 0.00100.00 0.00 100.00 0.00 100.00 0.00100.00 0.00 100.00 0.00 100.00 0.00

5.50 0.00 5.91 0.00 20.84 0.003.21 0.00 1.46 0.00 26.12 0.005.99 0.00 22.20 0.00 15.24 0.00

100.00 0.00 100.00 0.00 11.69 0.0087.64 0.00 92.89 0.00 100.00 0.00

40 100.00 0.00 100.00 0.00 92.88 0.0028.12 0.00 30.31 0.00 19.56 0.0032.82 0.00 28.83 0.00 95.38 0.0035.85 0.00 30.01 0.00 95.93 0.0058.60 0.00 27.00 0.00 100.00 0.0098.83 0.00 98.83 0.00 98.80 0.0098.83 0.00 29.11 0.00 22.86 0.00

100.00 0.00 100.00 0.00 100.00 0.0094.72 0.00 31.61 0.00 32.67 0.0038.73 0.00 2.83 0.00 21.06 0.00

Average 60.64 0.00 50.74 0.00 62.96 0.00

(A) jOj ¼ 1:05jOoriginal jl m

(B) jOj ¼ 1:10jOoriginal jl m

(C) Dl ¼ 0:9Doriginall

j k. 8l 2 L

70 T.A. Baldo et al. / Computers & Industrial Engineering 72 (2014) 58–71

(Table 4(C)). In summary, the quality of the heuristics solutionswas superior in terms of both the Ratio and the undelivered de-mands if compared to the model solutions, and Proc_Incr wassuperior to Proc_Dec in most of the experiments.

6. Conclusions

In this paper, we consider the lot sizing and scheduling problemin the brewery industry. This problem differs from other problemsin the beverage industries mainly due to the time required for thefermentation and maturation processes during the liquid prepara-tion in the tanks. Moreover, the ‘‘ready’’ liquid can be stored in thetanks for several days while waiting for bottling in the filling lines.To the best of our knowledge, there are no other studies in the lit-erature addressing this problem at the brewery companies. Themain planning challenge is the synchronization of the two stages,as the production bottlenecks alternate between them. We proposea novel model that integrates both stages, as well as MIP-basedheuristics that explore the model structure. Two solution methodsare proposed using a constructive method based on the relax-and-fix heuristic and several improvement procedures based on fix-and-optimize strategies. The results are better than those obtainedby solving the overall model with the CPLEX 12.4 solver in terms ofapplicability of the solutions and computational performance(average Ratio and CPU time).

An interesting line of research would be to explore alternativeformulations for the problem based on ATSP (Asymmetric Travel-ling Salesman Problem) constraints, as well as problem decompo-sition using the structure of stages. These formulations couldprovide tighter lower bounds than the aggregate formulation. An-other potential future research would be to develop heuristics andmetaheuristics which could be more effective to solve the problemrather than the present MIP-heuristics.

Acknowledgements

The authors would like to thank the two anonymous reviewersfor their constructive comments and suggestions which have

improved the presentation of the paper. This study was partiallysupported by CAPES, CNPq and FAPESP. The third author would liketo acknowledge Project ‘‘NORTE-07-0124-FEDER-000057’’, fundedby the North Portugal Regional Operational Programme (ON.2 –O Novo Norte), and by national funds, through the Portuguesefunding agency, Fundação para a Ciência e a Tecnologia, and to pro-ject EXPL/EMS-GIN/1930/2013, funded by the ERDF – European Re-gional Development Fund through the COMPETE Programme(operational programme for competitiveness) and FCT.

References

Almada-Lobo, B., Oliveira, J. F., & Carravilla, M. A. (2008). Production planning andscheduling in the glass container industry: A VNS approach. International Journalof Production Economics, 114(1), 363–375.

Araujo, S., Arenales, M., & Clark, A. (2007). Joint rolling-horizon scheduling ofmaterials processing and lot-sizing with sequence-dependent setups. Journal ofHeuristics, 13, 337–358.

Araujo, S. A., & Clark, A. (2013). A priori reformulations for joint rolling-horizonscheduling of materials processing and lot-sizing problem. Computers andIndustrial Engineering, 65(4), 577–585.

Billington, P. J., McClain, J. O., & Thomas, L. J. (1986). Heuristics for multilevel lot-sizing with a bottleneck. Management Science, 32(8), 989–1006.

Bitran, G. R., & Yanasse, H. H. (1982). Computational complexity of the capacitatedlot size problem. Management Science, 28(10), 1174–1186.

Clark, A. R., & Clark, S. J. (2000). Rolling-horizon lot-sizing when set-up times aresequence-dependent. International Journal of Production Research, 38(10),2287–2307.

Clark, A., Morabito, R., & Toso, E. (2010). Production setup-sequencing and lot-sizingat an animal nutrition plant through ATSP subtour elimination and patching.Journal of Scheduling, 13, 111–121.

Drexl, A., & Kimms, A. (1997). Lot sizing and scheduling – Survey and extensions.European Journal of Operational Research, 99(2), 221–235.

Ferreira, D., Clark, A. R., Almada-Lobo, B., & Morabito, R. (2012). Single-stageformulations for synchronised two-stage lot sizing and scheduling in soft drinkproduction. International Journal of Production Economics, 136(2), 255–265.

Ferreira, D., Morabito, R., & Rangel, S. (2009). Solution approaches for the soft drinkintegrated production lot sizing and scheduling problem. European Journal ofOperational Research, 196(2), 697–706.

Fleischmann, B. (1994). The discrete lot-sizing and scheduling problem withsequence-dependent setup costs. European Journal of Operational Research,75(2), 395–404.

Guimarães, L., Klabjan, D., & Almada-Lobo, B. (2012). Annual production budget inthe beverage industry. Engineering Applications of Artificial Intelligence, 25(2),229–241.

Page 14: An optimization approach for the lot sizing and scheduling problem in the brewery industry

T.A. Baldo et al. / Computers & Industrial Engineering 72 (2014) 58–71 71

Haase, K., & Kimms, A. (2000). Lot sizing and scheduling with sequence-dependentsetup costs and times and efficient rescheduling opportunities. InternationalJournal of Production Economics, 66(2), 159–169.

Helber, S., & Sahling, F. (2008). A fix-and-optimize approach for the multi-levelcapacitated lot sizing problems. Diskussionspapiere der Wirtschaftswissens-chaftlichen Fakultt der Leibniz Universitt Hannover dp-393, Leibniz UniversittHannover, Wirtschaftswissenschaftliche Fakultt.

Jans, R., & Degraeve, Z. (2007). Meta-heuristics for dynamic lot sizing: A review andcomparison of solution approaches. European Journal of Operational Research,177(3), 1855–1875.

Karimi, B., Fatemi Ghomi, S. M. T., & Wilson, J. M. (2003). The capacitated lot sizingproblem: A review of models and algorithms. Omega, 31(5), 365–378.

Kirin (2012). Global beer production by country in 2011 (Vol. 36). Kirin Institute ofFood and Lifestyle Report.

Luche, J. R. D., Morabito, R., & Pureza, V. (2009). Combining process selection and lotsizing models for production scheduling of electrofused grains. Asia–PacificJournal of Operational Research, 26(03), 421–443.

Marinelli, F., Nenni, M. E., & Sforza, A. (2007). Capacitated lot sizing and schedulingwith parallel machines and shared buffers: A case study in a packagingcompany. Annals of Operations Research, 150, 177–192.

Meyr, H. (2000). Simultaneous lotsizing and scheduling by combining local searchwith dual reoptimization. European Journal of Operational Research, 120(2),311–326.

Meyr, H. (2002). Simultaneous lotsizing and scheduling on parallel machines.European Journal of Operational Research, 139(2), 277–292.

Meyr, H., & Mann, M. (2013). A decomposition approach for the general lotsizingand scheduling problem for parallel production lines. European Journal ofOperational Research, 229, 718–731.

Pochet, Y., & Wolsey, L. (2006). Production planning by mixed integer programming.Springer series in operations research and financial engineering. Springer.

Santos, M. O., & Almada-Lobo, B. (2012). Integrated pulp and paper mill planningand scheduling. Computers and Industrial Engineering, 63(1), 1–12.

Santos-Meza, E., dos Santos, M. O., & Arenales, M. N. (2002). A lot-sizing problem inan automated foundry. European Journal of Operational Research, 139(3),490–500.

Shim, I.-S., Kim, H.-C., Doh, H.-H., & Lee, D.-H. (2011). A two-stage heuristic forsingle machine capacitated lot-sizing and scheduling with sequence-dependentsetup costs. Computers and Industrial Engineering, 61(4), 920–929.

Silva, C., & Magalhaes, J. M. (2006). Heuristic lot size scheduling on unrelatedparallel machines with applications in the textile industry. Computers andIndustrial Engineering, 50, 76–89.

Stadtler, H. (2003). Multilevel lot sizing with setup times and multiple constrainedresources: Internally rolling schedules with lot-sizing windows. OperationsResearch, 51(3), 487–502.

Toledo, C. F. M., da Silva Arantes, M., França, P. M., & Morabito, R. (2012). A memeticframework for solving the lot sizing and scheduling problem in soft drinkplants. In R. Chiong, T. Weise, & Z. Michalewicz (Eds.), Variants of evolutionaryalgorithms for real-world applications (pp. 59–93). Springer.

Toledo, C., França, P., Morabito, R., & Kimms, A. (2009). Multi-population geneticalgorithm to solve the synchronized and integrated two-level lot sizing andscheduling problem. International Journal of Production Research, 47(11),3097–3119.

Toso, E. A., Morabito, R., & Clark, A. R. (2009). Lot sizing and sequencing optimisationat an animal-feed plant. Computers and Industrial Engineering, 57(3), 813–821.

Wolsey, L. A. (1997). MIP modelling of changeovers in production planning andscheduling problems. European Journal of Operational Research, 99(1), 154–165.