# The Generic Materials and Operations Planning (GMOP) Problem Solved Iteratively: A Case Study in Multi-site Context

Julien Maheut, Jose P. Garcia-Sabater, Josefa Mula

► To cite this version:

Julien Maheut, Jose P. Garcia-Sabater, Josefa Mula. The Generic Materials and Operations Planning (GMOP) Problem Solved Iteratively: A Case Study in Multi-site Context. International Conference on Advances in Production Management Systems (APMS), Sep 2011, Stavanger, Norway. pp.66-73, 10.1007/978-3-642-33980-6_8. hal-01524234

HAL Id: hal-01524234

https://inria.hal.science/hal-01524234

Submitted on 17 May 2017

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# The Generic Materials and Operations Planning (GMOP) problem solved iteratively: a case study in multi-site context

Julien Maheut, Jose P. Garcia-Sabater, Josefa Mula

ROGLE - Departamento de Organización de Empresas, Universitat Politècnica de València,
Camino de Vera S/N, 46022 Valencia, Spain
Research Center on Production Management and Engineering (CIGIP), Universitat Politècnica
de València, Plaza Ferràndiz y Carbonell 2, 03801 Alcoy, Spain

Juma2@upv.es, jpgarcia@upv.es, fmula@upv.es

**Abstract.** This paper addresses the Generic Materials and Operations Planning (GMOP) problem, a multi-site operations planning problem based on the "stroke" concept. The problem considers a multinational company subject to positive and negative backlogs imposed by using returnable racks that have to be filled by end products and transported to customers, alternative operations (purchase, transformation and transport), different BOM structures given the different operation types (injection operations, assembly operations) performed in the various factories of the supply chain, and capacitated production resources. This paper describes and defines the "stroke" construct that mathematically models the relationships between operations and materials. The mathematical modelling approach is provided, as is a brief description of an operations planning tool that has been implemented. Furthermore, some results obtained in a first-tier level supplier of the automotive industry have been introduced.

## 1 Introduction

One of the most well-accepted definitions in the literature of supply chain management (SCM) is that SCM is a task that involves integrating organisational units through the supply chain (SC) and coordinates the flow of material, information and financing for the purpose of fulfilling customer demands (Stadtler and Kilger 2002). Dudek (2004) states three SCM objectives: improve customer service; lower the amount of resources to serve customers; improve the SC's competitiveness. Improving competitiveness lies on two main pillars: integrating the SC and coordinating it (Stadtler 2005).

Many managers tend to think that Enterprise Requirement Planning (ERP) systems will solve their planning issues, but despite their name, ERP systems are usually transaction-based systems rather than planning systems. Traditional production planning methods, such as Material Requirements Planning (MRP), consider only availa-
bility of materials, and completely ignore factors such as capacity limits and SC con-
figurations (Caridi and Sianesi 1999). In most software, alternative operations can be
introduced as data, but the optimisation methods available do not consider them sim-
ultaneously. Moreover, packaging and its planning is a special concern in some indus-
tries and, to the best of our knowledge, ERP cannot plan them in any detail. Further-
more, operations planning functions in large companies are usually executed by dif-
ferent organisational units at distinct locations. Generally, excess inventories, poor
customer service and insufficient capacity utilisation are due to the lack of coordina-
tion between these operations planning functions. Broadly extended ERP systems
have led to the emergence of the so-called Advanced Planning and Scheduling Sys-
tems (APS), which may be viewed as "add-ons" of the ERP system to plan and opti-
mise the SC. For this support, APS uses optimisation techniques to model and deter-
mine the quantities to be produced, stored, transported, and procured by respecting the
SC's real constraints (Garcia-Sabater et al. 2012; Günther and Meyr 2009).

The commonest name with which to consider the mathematical model that simul-
taneously solves the materials and operations planning problem is the Multi-level
Capacitated Lot-Sizing Problem (MLCLSP). All in all, most works on the MLCLSP
still assume that BOM is made up of assembly products. A series of problem variants
based on amending the structure of BOMs may also be found in practice and in the
literature. In (Garcia-Sabater et al. 2013), an extensive literature review about the
MLCLSP and the need to use the stroke concept in the GMOP problem is introduced.
In (Maheut and Garcia-Sabater 2011), a variant of the GMOP problem is introduced,
which considers scheduled receptions and the initial stock level. Nevertheless, to the
best of our knowledge, a case study about the multi-site, multi-level, capacitated op-
erations planning problem with lead times that simultaneously considers alternative
operations (purchasing, transport - replenishment, transshipments and distribution -
and production) and returnable packaging has not yet been studied.

This paper proposes an alternative modelling technique that stresses what is known
to be done rather than the result of the action (the product). The proposed modelling
method is useful given its simplicity and generality. Furthermore, its proposal is fea-
sible since the mathematical programming solving technology has considerably im-
proved in the last 10 years. The model's objective is to minimise total costs by ful-
filling lead times and by considering alternative operations and returnable racks. The
model has been designed for a first-tier level company of the automotive sector and
operations plans are performed daily.

## 2 The “stroke” concept

To consider this proposal, it is necessary to specify some concepts. Products must
consider the site where they are stored at and also their packaging. This implies loss
of generality, which is compensated by simplified data loading. For example:

- Part item "01" stored in factory A will be called P01@A,

- Rack "01" filled with 12 "02" part items stored in factory B will be called R01#12P02@A,

- Empty rack "01" in factory C will be considered R01#00@C.
Each stroke corresponds to a specific located operation (Maheut et al. 2012). It is characterised by the use of located resources. A set of products is assigned to each stroke, which is consumed when a stroke unit is executed. This set (known as “stroke input”) can be null, unitary or multiple, while its coefficients (the Gozinto factor) can be above one unit. A set of SKUs is assigned to each stroke, which is produced when a stroke unit is carried out. This set (called “stroke output”) can consist in several different items, a single item or none, and its coefficients (amount of each item produced) can be above one unit (Garcia-Sabater et al. 2013). Moreover, lead times, setup times and costs, time consummation and the costs of performing one stroke unit are assigned to the stroke and not to the result of the operation. Resources are associated with each stroke, but not with the product (or the series of products) obtained.

## 3 Mathematical formulation of the GMOP problem

Due to software limitations, the problem is solved on an iterative basis. Therefore, the GMOP problem was modelled by considering that each stroke level, or each stroke, was independent of the rest. The GMOP model presented herein has been, therefore, slightly modified to represent this new approach. To mathematically formulate the problem, it is necessary to define the nomenclature presented in Table 1. Table 2 contains the notations per parameter and Table 3 presents the notations per variable.

<table><caption>**Table 1.** Sets and indices</caption><thead><tr><th>Symbol</th><th>Definition</th></tr></thead><tbody><tr><td><i>i</i> &isin; <i>P</i></td><td>Index set of products (includes product, packaging and site)</td></tr><tr><td><i>r</i> &isin; <i>R</i></td><td>Index set of resources (includes product and site)</td></tr><tr><td><i>k</i> &isin; <i>Z</i></td><td>Index set of strokes (includes stroke and site)</td></tr><tr><td><i>j</i> &isin; <i>J</i></td><td>Index set of sites</td></tr><tr><td><i>t</i> = 1,...,T</td><td>Index set of planning periods</td></tr><tr><td><i>Z</i><sub>r</sub></td><td>Set of strokes that are performed in resource <i>r</i> (<i>Z</i><sub>r</sub> &sube; <i>Z</i>)</td></tr><tr><td>FP</td><td>Set of end-products (<i>FP</i> &sube; <i>P</i>)</td></tr></tbody></table>

<table><caption>**Table 2.** Parameter notation</caption><thead><tr><th>Symbol</th><th>Definition</th></tr></thead><tbody><tr><td><i>D</i><sub>it</sub></td><td>Demand of product <i>i</i> in period <i>t</i> (due date)</td></tr><tr><td><i>CA</i><sub>it</sub></td><td>Acquired compromised in product <i>i</i> in period <i>t</i> (due date)</td></tr><tr><td><i>X</i><sup>rec</sup><sub>it</sub></td><td>Planned reception for products <i>i</i> in period <i>t</i></td></tr><tr><td><i>H</i><sub>i</sub></td><td>Non-negative holding cost per period for storing one unit of product <i>i</i></td></tr><tr><td><i>Y</i><sup>0</sup><sub>i</sub></td><td>Initial inventory of product <i>i</i></td></tr><tr><td><i>P</i><sup>F</sup><sub>i</sub></td><td>Benefit of delivering product <i>i</i></td></tr><tr><td><i>P</i><sup>P</sup><sub>i</sub></td><td>Cost of purchasing product <i>i</i></td></tr></tbody></table>
<table><caption>**Table 3.** Variable notation</caption><thead><tr><th>Symbol</th><th>Definition</th></tr></thead><tbody><tr><td>TO<sub>kr</sub></td><td>Capacity of resource <i>r</i> required for performing one stroke <i>k</i> unit (in time units)</td></tr><tr><td>TS<sub>kr</sub></td><td>Capacity required of resource <i>r</i> required for the setup of stroke <i>k</i> (in time units)</td></tr><tr><td>K<sub>rt</sub></td><td>Capacity available of resource <i>r</i> in period <i>t</i> (in space units)</td></tr><tr><td>M</td><td>A sufficiently large number</td></tr><tr><td>CO<sub>k</sub></td><td>Cost of performing one stroke <i>k</i> unit</td></tr><tr><td>CS<sub>k</sub></td><td>Cost of the setup of stroke <i>k</i></td></tr><tr><td>SO<sub>ik</sub></td><td>Number of product <i>i</i> units produced by performing one stroke <i>k</i> unit (stroke output)</td></tr><tr><td>SI<sub>ik</sub></td><td>Number of product <i>h</i> units required for performing one stroke <i>k</i> unit (stroke input)</td></tr><tr><td>LT(<i>k</i>)</td><td>Lead time of stroke <i>k</i></td></tr><tr><td>B<sub>i</sub></td><td>Initial backlog of product <i>i</i></td></tr><tr><td>C<sup>β+</sup><sub>i,t</sub>/C<sup>β-</sup><sub>i,t</sub></td><td>Cost of positive/negative backlog for one unit of <i>i</i> in period <i>t</i></td></tr></tbody></table>

<table><thead><tr><th>Symbol</th><th>Definition</th></tr></thead><tbody><tr><td>z<sub>kt</sub></td><td>Quantity of strokes <i>k</i> to be performed in period <i>t</i></td></tr><tr><td>y<sub>it</sub></td><td>Inventory of product <i>i</i> at the end of period <i>t</i></td></tr><tr><td>o<sub>it</sub></td><td>Quantity of <i>i</i> that it is to be delivered at the end of period <i>t</i></td></tr><tr><td>q<sub>it</sub></td><td>Quantity of demand of product <i>i</i> at the end of period <i>t</i> that it is not to be delivered</td></tr><tr><td>w<sub>it</sub></td><td>Requirements of product <i>i</i> at the end of period <i>t</i></td></tr><tr><td>δ<sub>kt</sub></td><td>Binary variable which indicates if stroke <i>k</i> is set up in period <i>t</i></td></tr><tr><td>β<sup>+</sup><sub>i,t</sub>/β<sup>-</sup><sub>i,t</sub></td><td>Positive/negative backlog of product <i>i</i> in period <i>t</i></td></tr></tbody></table>

The GMOP problem adapted for an iterative resolution can be formulated as shown below:

$$ \text{Maximize } F(o, z, y, \delta) = \sum_{i \in P} \sum_{t=1}^{T} (P_{it}^{F} \cdot o_{it} - P_{it}^{C} \cdot w_{it}) - \sum_{i \in P} \sum_{t=1}^{T} (\beta_{it}^{+} \cdot C_{it,t}^{\beta+} + \beta_{it}^{-} \cdot C_{it,t}^{\beta-} + H_{it} \cdot y_{it}) - \sum_{k \in Z} \sum_{t=1}^{T} (CO_{k,t} \cdot z_{kt} + CS_{k,t} \cdot \delta_{kt}) \quad (1) $$

Subject to

$$ o_{it} + q_{i,t} = D_{i,t}, \quad i \in P, i \in FP, t = 1, \dots, T \quad (2) $$

$$ y_{it} = y_{i,t-1} + X_{it}^{\text{rec}} + \sum_{k \in Z} (SO_{ik} \cdot z_{k,t-LT(k)} - SI_{ik} \cdot z_{kt}) - CA_{i,t} - o_{i,t}, \quad i \in P, i \notin FP, t = 2, \dots, T \quad (3) $$

$$ \beta_{it}^{+} - \beta_{it}^{-} = \beta_{i,t-1}^{+} - \beta_{i,t-1}^{-} + X_{it}^{\text{rec}} + \sum_{k \in Z} (SO_{ik} \cdot z_{k,t-LT(k)}) + q_{i,t}, \quad i \in FP, t = 2, \dots, T \quad (4) $$
$$y_{i,1} = Y_i^0 + X_{i,1}^{\text{rec}} + \sum_{k \in L_0} (SO_{ik} \cdot z_{k,1} - SI_{ik} \cdot z_{k,3}) - CA_{i,1} - o_{i,1} \quad i \in P, i \notin FP \quad (5)$$

$$\beta_{i,1}^{+} - \beta_{i,1}^{-} = B_{i}^{0} + X_{i,1}^{\text{rec}} + \sum_{k \in L_0} (SO_{ik} \cdot z_{k,1}) + q_{i1} \quad i \in FP \quad (6)$$

$$w_{i,t} = \sum_{k} (SI_{ik} \cdot z_{k,1}) - X_{i,t} \quad i \notin FP, t \quad (7)$$

$$z_{kt} - M \cdot \delta_{kt} \le 0 \quad k \in Z, t = 1, \dots, T \quad (8)$$

$$\sum_{k \in Z_r} (TO_k \cdot z_{kt} + TS_k \cdot \delta_{kt}) \le K_{rt} \quad r \in R, t = 1, \dots, T \quad (9)$$

$$z_{kt} \in \Box_{-}, \quad t = 1, \dots, T \quad (10)$$

$$o_{i,t}, q_{i,t}, w_{i,t}, y_{it}, \beta_{it}^{+}, \beta_{it}^{-} \ge 0 \quad i \in P, t = 1, \dots, T \quad (11)$$

$$\delta_{kt} \in \{0,1\} \quad k \in Z, t = 1, \dots, T \quad (12)$$

Objective (1) is to maximise the profit of delivering products minus the sum of the storage costs, the stroke execution costs, the stroke setup costs, and the positive (classical) and negative (serving in advance) backlogging costs. Equation (2) splits external demand into real sales and the demand that is to be delayed. Equations (3) and (5) provide the continuity equation of the inventory levels. The inventory level at the end of a period considers the inventory level at the end of the previous period, planned receptions, product demand, and the products generated and consumed after executing those strokes with their associated lead times. Equations (4) and (6) provide the continuity equation of the backlogging levels. Two types of backlogs exist: the traditional positive backlog (also called Delay at the shipment level or the underdelivery level) and the negative backlog (also called Serve in Advance or the overdelivery level). Given the difference with inventory levels, Backlogging levels are generally applied to the product in the inventory at customers' locations. Backlog levels are the determined inventory levels of products based on demand plans, but they do not have to be physical inventory levels in customer plans. This concept is regularly used in the automotive industry because products are sent in packaging (pallets or racks). In this case, if demand is regular and not proportional to the packaging capacity because of the cost of negative backlogging and the policy of optimising resources, packaging is fulfilled and a negative backlog level is generated. Constraint (9) evaluates the quantity of products *i* that should be acquired in order to fulfill requirements. Constraint (8) is introduced to know if stroke *k* is produced in *t* by, therefore, employing the capacity associated with the setup (setup forcing). Constraint (9) is a capacity constraint that limits the use of resource *r* in period *t* by considering both the setup and operations times. Constraints (10), (11) and (12) define the range of variables.
The model is solved iteratively for each product with internal or external demand. The value of *o* will be converted for the following iterations into a constant *CA* since it has been accepted. The value of *w* will be converted into new demand that will be fulfilled in subsequent iterations.

## 4 Case study

This model is implemented if it is particularly motivated by the problem faced by a company manufacturing plastic products from two factories located in Spain and which sells the product in this country. Production management develops a 3-month operations plan by considering the inventory level, resources capacity, routes and packaging availability to fulfill demand.

A specific operations planning tool has been deployed by the ROGLE research Group. The development process of the information system has been carried out completely. The system not only includes the model presented herein, but also other features related with SC activities, like Demand Planning or Scheduling tasks. The software runs beyond the official ERP system. To obtain data from it and to generate a parallel database that stores official company data and the rest of parameters that need to be used, specific connections were created using XML files. Users interact with the software by using standard browsers (to activate and input data) and spreadsheets (to analyse and use the results).

The operations plan consists in listing those operations with quantities to be performed with the different resources in the various factories for each time period of the horizon in order to serve customers in terms of time and quantity. Basically, operations are:

- Purchase operations, which determine the amount of raw material (plastic powder) to be purchased in each period by considering different lot sizes.

- The raw material is injected into a press injection machine and different products are obtained depending on the mould used.

- After injecting the obtained products, they are assembled on an assembly line to obtain the end products.

- End products must be stored in filled returnable racks and are transported to the customer's site.

Figure 1 displays a sharp drop in backlog levels. Throughout the horizon, a negative backlog is maintained because customers force the company to maintain a safety backlog level. Thanks to the operations planning tools, the company has been able to cut its overdelivery costs, while demand levels remain constant. In fact, this reduction might be considered the effect of simply applying the MRP concept.

With the software, we solved the GMOP problem by employing LP Solve IDE. We tested performance in a full-sized case study problem with seven different factories with approximately 500 end products, 30 resources and more than 700 different operations for distinct instances. The results show an average running time of 6 hours, for instance using a Pentium IV 1.22 GHz processor, 2 GB RAM and Windows XP as the OS.
<figure><img src="image_2.png" /><figcaption>Fig. 1. Demand and Backlog levels</figcaption></figure>

**5 Conclusions**

A form of modelling the relationship between operations and the materials required to manufacture a product has been considered. This way of defining the relationships between operations and materials suggests a compact mathematical programming model to plan operations in an SC. Apart from capacity constraints, this GMOP model also takes into account direct and reverse BOMs, multi-site, alternative operations by considering packaging, and briefly introduces one operations planning tool designed and used by one multinational company at the first-tier level of the automotive industry.

Two important research lines for the near future include the design of specific heuristics for the problem considered herein, and the incorporation of the central stroke concept for modelling and solving the distributed problems. The incorporation of variants such as uncertainty (if it is stochastic or uses fuzzy methods) is another future research line.

**Acknowledgments**

The work described in this paper has been supported by the "CORSARI MAGIC DPI2010-18243" project from the Spanish Ministry of Science and Innovation within
the Programme entitled "Proyectos de Investigación Fundamental No Orientada".
Julien Maheut holds a VALi+d grant funded by the Generalitat Valenciana (Regional
Valencian Government), Spain (Ref. ACIF/2010/222).

References

Caridi, M, Sianesi, A (1999) Trends in planning and control systems: APS - ERP Integration. Global Production Management, K. Mertins, O. Krause, y B. Schallock (dir) edn. Kluwer Academic Publisher

Dudek G (2004) Collaborative planning in supply chains. A negotiation-based approach. Springer, Berlin

Garcia-Sabater JP, Maheut J, Garcia-Sabater JJ (2012) A two-stage sequential planning scheme for integrated operations planning and scheduling system using MILP: the case of an engine assembler. Flexible Services and Manufacturing Journal 24:171-209

Garcia-Sabater JP, Maheut J, Marin-Garcia JA (2013) A new formulation technique to model Materials and Operations Planning: the Generic Materials and Operations Planning (GMOP) Problem. European J. Industrial Engineering 7:In Press

Günther HO, Meyr H (2009) Supply chain planning and Advanced Planning Systems. OR Spectrum 31:1-3

Maheut J, Garcia-Sabater JP (2011) La Matriz de Operaciones y Materiales y la Matriz de Operaciones y Recursos, un nuevo enfoque para resolver el problema GMOP basado en el concepto del Stroke. Dirección y Organización 45:46-57

Maheut, J, Garcia-Sabater, JP, Mula, J (2012) A supply Chain Operations Lot-Sizing and Scheduling Model with Alternative Operations. In: Sethi, S. P, Bogataj, Marija, and Ros-McDonnell, Lorenzo (ed), Industrial Engineering: Innovative Networks, 5th International Conference on Industrial Engineering and Industrial Management "CIO 2011", Cartagena, Spain, September 2011, Proceedings, Springer-Verlag London, London

Stadtler H (2005) Supply chain management and advanced planning--basics, overview and challenges. European Journal of Operational Research 163:575-588

Stadtler H, Kilger C (2002) Supply Chain Management and Advanced Planning: Concepts, Models, Software and Case Studies. springer