Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Everyone knows the situation: You go shopping in your favorite supermarket and all the items on your list are available, except for one. Therefore, you have to drive to the next store and hope that you can get the product there.

Situations like that decrease customer satisfaction quite noticeably and affect both retailer and producer. That is why customer service has become the main objective of consumer goods supply chains. However, too often higher customer service is accompanied by higher investments in inventory. State-of-the-art Advanced Planning Systems are basic tools for achieving both conflicting management goals, high customer service and low stock levels.

This chapter provides some insights into the implementation of Oracle’s Value Chain Planning software (see Chap. 18 and Oracle 2014) for the food and beverages division of a large European consumer goods company. The aim of the project was to build the infrastructure for more flexible, accurate and faster planning processes.

After introducing the most important attributes of the supply chain in Sect. 21.1.1, the planning architecture for the company’s German food branch is described (Sect. 21.1.2). Furthermore, model-building with the Oracle module Strategic Network Optimization is specified (Sects. 21.3 and 21.4). This model served as a template for the whole division and therefore had to integrate requirements of other product lines of the company, too.

1 Case Description

After introducing the supply chain itself a description of the architecture of the planning system will follow.

1.1 The Supply Chain

The supply chain under consideration consists of production plants, a distribution network and some key suppliers. Each of the three production sites produces up to 70 different products, but only a few products can be made in all three plants.

Procurement. The material procured for food production can be divided into two classes. The first type of materials are the raw materials and ingredients which the food is prepared from. They are usually bought on the free market and therefore the ordering decision noticeably depends on the current market price. Packaging and labeling material on the other hand is usually single or double sourced. For those items annual basic agreements are made with the suppliers. Therefore, the ordering decision neither causes additional costs nor depends on the order size or the price.

Production. The production process consists of three consecutive stages: pre-blending, blending and packaging. The first one is physically separated from the others and only available at plant 3 (see Fig. 21.1). From plant 3 all plants are supplied with pre-blend just-in-time. The pre-blend process comprises a complex production network consisting of batch processes. As more than one product is based on the same pre-blend, the number of pre-blend types is less than the number of end products.

Fig. 21.1
figure 1

Supply chain structure

If the production equipment has to be switched from one product to another, significant sequence-dependent changeover costs and times occur on the first and second stage. In each production plant more than five blenders/ packers (dedicated to a specific range of products) operate in parallel. A fixed 1:1 relationship usually holds between blenders and packers, but it is also possible that one blender feeds two packers (simultaneously or alternatively). As the pre-blending stage supplies the blenders just-in-time, there are only small buffers for storage of 1 day’s demand at the most. Between stages two and three there are no buffers, as there are fixed pipes which connect both stages (Fig. 21.2). While most products are produced once per week, a few are set up every second week (cyclic schedule). Therefore, the reorder lead-time for the distribution centers equals 1 to 2 weeks, depending on the product.

Fig. 21.2
figure 2

The production processes

The regular working time in the plants is based on a three shift pattern (24 h) on 5 days per week. This regular time can be extended by one to three shifts overtime on Saturdays, resulting in additional costs for higher wages.

Distribution. After packaging, the products are transported to the distribution center (DC) next to each production site. Those items which are not available at the local factory are supplied by one of the other two plants. Each customer is served from the next DC either directly or via cross docking in 1 to 2 days (three-stage distribution system). Therefore, each DC has the whole assortment of products available. Only if stock-outs are impending, emergency transports between the DCs are initiated to balance the stocks.

Sales. Most products are made to stock and only a few items are made according to customer orders. These make-to-order products are supplied exclusively for one customer under his own brand name. The customer service level is determined by matching orders and available stock at the DC daily. The “customer” ordering the product is usually not the consumer, but mostly a retailer (chain) which operates the retail outlets. Even though the sales for some products are quite constant over time, most of the products are influenced by seasonality and promotional activities. Storage of finished products is limited in time due to shelf-life restrictions.

This type of supply chain has already been introduced in Chap. 3. The food and beverages case considered here is additionally summarized in Table 21.1.

Table 21.1 Typology for the food and beverages supply chain

1.2 The Architecture of the Planning System

The architecture template had to take into account the specific requirements of different production processes in the whole food and beverages division. Furthermore, the existing planning systems and the IT-landscape needed to be integrated into the new architecture. Also, obsolete spreadsheet solutions which had been developed by the planners only for their specific purposes should be replaced by the Advanced Planning System of Oracle.

For the project it was decided to focus on the following planning processes (for a description of general planning tasks in the consumer goods industry see also Chap. 4):

  • Long-term production and distribution planning

  • Mid-term master planning (production and distribution)

  • Short-term production scheduling.

For demand planning and short-term distribution planning third-party systems already existed before implementing Oracle’s Value Chain Planning. As these modules have tight connections to Oracle’s new supply chain planning modules, they needed to be integrated accordingly (see Fig. 21.3). Procurement processes were only integrated if they had been identified as potential bottlenecks.

Fig. 21.3
figure 3

The architecture of the planning system

Long-Term Production and Distribution Planning. Long-term planning tasks in the food and beverages business comprise a time horizon between 1 and 5 years. In this range strategic decisions on the product program to be offered, the opening or closing of production lines or plants, and the distribution network are made. But in case of the company described here, the long-term production and distribution planning is restricted to 18 months, as in this time horizon production lines can be built up or moved from one site to another. Furthermore, changes in the shift-pattern have to be coordinated with the works committee and therefore need to be initiated months in advance.

This planning task is based on monthly time buckets and aggregated products and resources. The Strategic Network Optimization module is utilized to simulate different scenarios. The software calculates a capacity-constrained, optimized flow of goods and the respective costs for the 18 months horizon. Therefore, the planning process consists of the following steps, iteratively executed:

  1. 1.

    evaluate the status quo,

  2. 2.

    change the network structure manually, e.g. close a line, allow three instead of two shifts etc. and

  3. 3.

    evaluate the new model.

Mid-Term Master Planning (Production and Distribution). The Master Planning module integrates all decisions on materials and capacities concerning the whole network of plants and DCs. Therefore, the connecting material flows between the different locations need to be planned on this level. The more detailed Production Scheduling module considers only local resources and assumes the inflow to and the outflow from the site as being given.

The Master Planning decisions taken in this case study are:

  • Weekly transportation quantities from production sites to DCs and between the DCs

  • Weekly material requirements (i.e. packaging material) which have to be ordered from suppliers

  • Necessary overtime on the production lines

  • Assignment of products to production lines per time bucket

  • Weekly inventory levels in DCs.

As the number of product types is relatively small in this application, the products and resources do not have to be aggregated. The time horizon of half a year is divided in 26 weekly time buckets. Strategic Network Optimization was selected as the premier solution for this task because it provides easy to use graphical modeling capabilities and a powerful optimization engine (CPLEX; see IBM ILOG CPLEX Optimizer 2014). The model has tight data integration to the short-term Production Scheduling module via the Oracle middleware and an Oracle database which holds all relevant planning data.

The objective of the Master Planning model is to minimize all costs which are influenced by the decisions described above. Therefore, transportation costs, production costs, costs for overtime and storage costs have been considered.

Short-term Production Scheduling. The production scheduling task is implemented using Oracle’s Production Scheduling Process module. It covers both the lot-sizing and the scheduling task and therefore integrates the modules Production Planning and Scheduling (see Chap. 5). Production Scheduling only has to plan stages two and three of production as the first stage is decoupled by transport and therefore can be planned independently by an additional scheduling model.

The objective is to create a cost-optimized schedule for the production facilities of a single factory. Inventory holding costs, setup costs and penalty costs for not meeting the desired minimum inventory levels form the objective function.

The model covers a planning horizon of 4 weeks rolled forward once a week. However, the plan may even be revised daily on an event-driven basis. These events are caused by machine breakdowns or impending stock-outs. As some materials and pre-blend have to be ordered 2 days in advance, the frozen horizon only covers the next 2 days. The “demand” (requirements) which drives the scheduling model is calculated considering

  • Updated daily forecasts

  • Actual and planned shipments to all DCs

  • Safety stocks which have to be held at the DCs

  • Actual inventory levels at the DCs, in transit to the DCs and at the plant

  • A “sourcing-matrix” which states the quota to be sourced from a specific plant (calculated from the results of Master Planning; see Sect. 21.4).

2 Aim of the Project

The aim of the project was to automate the planning processes by providing a decision support system

  • Which is able to make planning proposals on its own

  • And can be used to interactively simulate several planning alternatives

  • Thus enabling the planner to select the best one with respect to supply chain costs and constraints.

Expected results were an increased supply chain visibility, reduced inventories and supply chain costs and shorter planning cycles.

3 Model Building in Oracle’s Strategic Network Optimization

Models built in Strategic Network Optimization do not use any mathematical notation. A production and distribution system is modeled graphically (e.g. by means of drop down menus) and interactively within the system. A Strategic Network Optimization model consists of the following basic elements (see e.g. Günther et al. 1998, Kolisch 1998 and Oracle 2010):

  • Time periods

  • Commodities

  • Nodes

  • Arcs.

Their most important properties will now be introduced.

3.1 Time Periods

An optimization model considers a certain planning horizon that may be subdivided into several time buckets. Since the model structure has to be the same in all periods, it has to be graphically defined only once. This structure is then copied for each period to be considered and the period-specific data (e.g. demand varying over time) have to be filled in each copy. In an optimization run all periods are considered simultaneously. Thereby, each period is linked with the preceding one by the stock that is held at the beginning of the period (of course being equal to the stock at the end of the previous period).

3.2 Commodities

Two different kinds of “commodities” may occur. First, commodities denote distinct types of (physical) goods like raw materials, work-in-process or final products—no matter in which stage of production they are. In this case study the various kinds of pre-blend and packaged goods are examples of such goods. Secondly, commodities represent the time spent in production, transport or storage processes. For example, the commodities regular blending time or blending overtime may be used to distinguish between the cheaper and the more expensive variant of the blending process.

3.3 Nodes

“Nodes” represent the processes themselves, e.g. all activities supplying, storing, consuming, transforming or simply controlling any type of commodity. Therefore, nodes model the critical components and constraints of a production and distribution system, but not the material flow within the system. Different kinds of nodes have been launched to represent different types of activities. Generally, nodes can have several input and several output commodities. Nodes without either input or output commodities are available as well. However, nodes of the same kind share common input and output characteristics.

A few kinds of nodes—later on used in this case study—shall illustrate the function and dominant role of nodes. For sake of clarity only the main attributes of each kind of nodes are presented:

Supply node: :

A supply node supplies a single commodity (usually of the physical goods type) and therefore does not have any input commodities. Upper and lower bounds of the amount to be supplied can be specified as given data. Also unit costs for supplying the commodity can be particularized in order to consider total costs of supply. The result of an optimization run is the amount of the commodity actually (and optimally) to be supplied.

Machine node: :

A machine node has a quite similar function, but is intended to supply the commodity machine (or personnel) time. Therefore, the capacity and unit costs of a machine have to be specified. The optimal run length of a machine (of both regular time and overtime, depending on the type and costs of the commodity supplied) results.

Process node: :

A process node transfers input commodities (goods and/or time) into output commodities and therefore may have several input and output commodities. This transformation is done with respect to fixed rates of input and output. For example, two units of intermediate product, one tub and 2 seconds machine time are combined in a packaging process to obtain one unit of a final product.

Batch node: :

Batch nodes restrict the flow of a commodity. A batch node can e.g. be used to specify a minimum run length of a process or a minimum lot-size—depending on the type of commodity considered. Note, by this a binary decision is implied: either nothing or more than the minimum lot-size have to be produced. As Chaps. 8 and 30 show, a model containing batch nodes is quite hard to solve because the underlying optimization problem has changed from a simple LP to a more complex combinatorial MIP. The user should therefore utilize a batch node only if it is absolutely indispensable to represent reality correctly. Other types of integer/binary decisions like batch sizes (predefined amounts of commodities with only integer multiples being allowed) or setup times can be modeled by a batch node, too.

StorageCoverLocal (SCL) node: :

The StorageCoverLocal node calculates the desired stock level of a commodity (physical good) at the end of the time period considered. This calculation is due to the inventory balance equation:

$$\displaystyle\begin{array}{rcl} & & \mathit{stock\ at\ the\ end\ of \ the\ current\ period} = {}\\ & & = \mathit{stock\ at\ the\ end\ of \ the\ previous\ period} + \mathit{inflow} -\mathit{demand}. {}\\ \end{array}$$

Thereby, the demand (e.g. market demand for a final product) is not computed within the model but has to be pre-specified. Inflow and stock levels (except for beginning inventory) are results of an optimization run. The inflow is an input commodity of the SCL node whose amount is usually further restricted by another node, e.g. a process node representing some production process.

The resulting amount of stock is influenced by three types of (increasing) “target” stock levels: the minimum, safety, and maximum stock level. While minimum and maximum stock levels usually are hard constraints that must not be violated, the safety stock level is a soft constraint which will be punished by penalty costs if fallen short of. These stock levels have to be specified by the number of periods of future demand, they are expected to cover. Each stock keeping unit—independent of the stock level—is priced with actual per unit holding costs.

Monitor node: :

A monitor node takes different types of commodities as input and limits the total number of (stock keeping) units consigned. This is useful for modeling the storage capacity of a warehouse where stocks of distinct products share a common inventory space. For example, the total stock held in several SCL nodes can jointly be controlled by a single monitor node.

3.4 Arcs

Arcs connect nodes, thereby carrying exactly one commodity, each. Therefore, arcs represent the material or time flows within a production and distribution network. The amount of the commodity to be carried is a decision variable. It can be restricted by predefined upper and lower bounds (e.g. minimum or maximum transport capacities if the commodity denotes deliverable goods). Again, the unit cost of the commodity can be specified.

For aesthetic purposes and sake of clarity a further kind of nodes, a working node, has been introduced in Strategic Network Optimization. It bundles arcs connecting two bipartite sets of nodes, but carrying the same commodity. So an n : m relation of nodes is replaced by an n : 1 : m relation, thus reducing the number of arcs significantly.

After analyzing the decision situation (see Sect. 8.1), the elements of the Strategic Network Optimization model have to be defined and the necessary data (e.g. resource capacities, production rates, costs) have to be filled in. This may either be done graphically and interactively or via import files. A trial solution run has to be started, checking whether predefined solver parameters are set adequately or refinements have to be made.

These may especially be necessary if a MIP model has been defined, for example by use of some batch nodes. In the most lucky case such a refinement just requires some changes in the parameters of the solver heuristics that Strategic Network Optimization provides for MIP problems. In the worst case a redefinition of the optimization model is necessary, possibly inducing serious modifications in the design of the planning module (see Chap. 4).

4 Implementing the Master Planning Model

4.1 Model Structure

In the following section the elements of the mid-term Strategic Network Optimization model and the solution approaches actually used in this project are described. The model covers the food supply chain from some important external suppliers to the final distribution centers. Master Planning is usually done every Thursday starting with the following week over a rolling horizon of 26 weeks. Four different groups of commodities are considered: raw/packaging material, intermediates, finished products and time. All nodes and arcs utilized in the model are described in the following subsections. A graphical overview of the node structure is given in Fig. 21.4.

Fig. 21.4
figure 4

Overview of the Strategic Network Optimization model

4.1.1 Procurement

Procurement processes are implemented in Master Planning only if the supply of material is restricted in some manner. This applies to the internal supply of pre-blend from plant 3 and to some critical suppliers of packaging material whose weekly production (or supply) capacities are known. As already mentioned, the production processes of pre-blending are not explicitly considered in the Master Planning model, but their capacities are restricted and therefore have to be modeled as material bottlenecks.

In Strategic Network Optimization the internal and external suppliers are represented as supply nodes. For each material and supplier a respective supply node is needed (only a small section of the procurement part is shown in Fig. 21.5).

Fig. 21.5
figure 5

Example of procurement processes in the Strategic Network Optimization model

The fields of the node are filled with the data described in Table 21.2.

Table 21.2 Supply node data fields

The costs in the supply node are required only if a specific material is double-sourced or the prices are changing over time. Costs have to be filled in for all materials since the objective function calculates the whole procurement costs in this case.

The supply nodes are connected with process nodes representing the blending stage. If transportation costs for the transports to the plants occur (esp. for pre-blend from plant 3 to plants 1 and 2), these are modeled as a linear cost rate penalizing the flow on the arc.

4.1.2 Production

Since both production stages, blending and packaging, are potential bottlenecks, they cannot be considered as a single planning unit. Furthermore, the production model has to guarantee minimum lot-sizes on the production lines. For each production line and product a single process node is needed (see also Fig. 21.6). The blending process node combines the commodities pre-blend and (regular and over-) time for producing the intermediates. Therefore, the input rates are modeled as follows:

Fig. 21.6
figure 6

Example of production processes in the Strategic Network Optimization model

  • Pre-blend: quantity (in tons) needed for production of one ton intermediate product

  • Time: capacity (in hours) needed for production of one ton intermediate product.

Arcs connect the blending process nodes with the batch nodes which ensure that either nothing or more than the minimum lot-size is produced per week. This is the only kind of node in the model which induces integer variables (more precise: semi-continuous variables). This additional complexity (for further information see Sect. 8.2.2 and Chap. 30) has to be balanced carefully against the higher accuracy achievable by considering the minimum lot-sizes. The field “min-run-length” is filled with the minimum lot-size (in tons) which is given by technical restrictions of the machines. The arc (intermediate product) leaving the batch node is directly connected to the packaging process node. Variable production costs (excluding costs for material supply and personnel taken into account otherwise) are modeled as a cost rate on the arc. Input rates of these process nodes are set according to:

  • Intermediate product: quantity (in tons) required for one ton of finished products

  • Packaging material: quantity (in units) needed for one ton of finished products

  • Time: capacity (in hours) needed for the production of one ton of finished products.

Both types of process nodes (blending and packaging) consume capacity (time) which is supplied by machine nodes. For each process node two machine nodes are required: one provides regular capacity (RT) and the other overtime capacity (OT). Both machine nodes are connected with the process node. Table 21.3 shows the field entries which have to be made in machine nodes and arcs. The maximum capacity is calculated by reducing the total capacity (e.g. 5 days × 24 h per day = 120 h) per week by an efficiency factor. This value is retrieved from historical data by considering the following components: start-up/shut-down time, changeover time, maintenance and repair time.

Table 21.3 Capacity model data fields

4.1.3 Distribution and Sales

Each production site is able to serve all three DCs. Therefore the necessary transports from packaging to warehousing are modeled by arcs connecting the packaging process node with the SCL node. As in some cases an n:m relationship between production lines and DCs exists, a working node merges the flows from different production lines producing the same product (see e.g. lines 1 and 2 of plant 2 in Fig. 21.7). This also enables quick access to the overall production quantity of a specific plant/product combination. The transportation arcs carry linear transportation costs which are calculated from price lists of the third-party carriers.

Fig. 21.7
figure 7

Example of distribution and sales processes in the Strategic Network Optimization model

The SCL node stays abreast of inventory tracking and demand fulfillment. Limits on inventory levels are modeled as stock covers (number of periods of future demand covered by stock-on-hand), as it is common practice in the consumer goods industry. Here, all stock limits (min, safety and max) were modeled as soft constraints (with penalties) in order to ensure feasibility of the optimization model which could be endangered if the forecasted demand in the first week is much higher than stock-on-hand plus available production capacity. The minimum stock (min cover), the model has to guarantee, is calculated by summing the following components:

  • Lot-sizing stock (cycle stock): As most products are produced each week, the lot-size equals approximately the demand of 1 week. Therefore, the mean lot-sizing stock is half of the weekly demand.

  • Transit stock: The delivery lead-time from the plant to the DC is about 1 day. As the stock for this transport is not considered on the arc, the minimum stock in the DC has to be increased by this amount.

  • Quarantine stock: All products have to be kept at the plant for 24 h. This quarantine time is added to the minimum stock cover at the DC.

Since violation of minimum stocks is punished by very high penalty costs (under costs), the safety cover is only penalized by a lower unit cost (safety cost). The safety cover is calculated by adding the min cover and some further cover buffering against demand uncertainty. Table 21.4 summarizes the SCL node options.

Table 21.4 StorageCoverLocal node data fields

All SCL nodes for one product are connected to each other to enable emergency shipments between DCs. These transports should be avoided as they lead to additional administrative effort. Therefore, these shipments are only performed in the short run if stock-outs impend. The respective cost fields of the arcs are filled with penalties and not with real transportation cost rates.

Monitor nodes are connected to all SCL nodes of one DC to constrain the maximum inventory level.

4.2 Solution Approaches

An optimal solution can be calculated if minimum lot-sizes are not taken into account. Therefore, the model can be solved using one of the LP procedures offered by the optimization engine (primal and dual simplex, barrier) of Strategic Network Optimization. The optimal solution is retrieved in a few seconds or minutes.

However, if the batch nodes are taken into consideration, solution time increases up to several hours. For this kind of integer variables (min run length) special purpose heuristics guide the solution process. Feasible solutions can be computed (without an optimality proof).

4.3 Data Flows

All supply chain planning modules of this case study are connected to a common database (Oracle). This database stores all static and dynamic data required for planning. The planning software itself does not provide database connectivity and therefore needs to be integrated. This is enabled by an Oracle middleware solution (see Fig. 21.8) which retrieves data from the Oracle database and converts it to flat files which are accessible for the planning tools.

Fig. 21.8
figure 8

Data flows for integration

Strategic Network Optimization is able to generate the model from a flat file describing each node and arc. Therefore the Strategic Network Optimization model is created from scratch once per week. This automatic procedure bases on the data file generated by the middleware component. In addition, an update of dynamic data is possible upon request of the planner. In this case the following data flows are necessary:

  • Update of forecasts from Demand Planning (SCL node)

  • Calculation of beginning inventory positions for the first planning bucket (SCL node)

  • Import of planned production quantities from Production Scheduling within the fixed horizon (arc between packaging process node and working node).

Input to the database is gathered from the planning output of further Oracle modules and from the ERP system SAP R/3 (see SAP 2014), the demand planning solution of JDA (formerly Manugistics NetWORKS Demand; see JDA Software Group Inc. 2014), and some others. Reporting capabilities are necessary for two reasons: First of all the planner needs transparency of data available and all planning results. Therefore, the Strategic Network Optimization reporting capabilities are used to get overviews in tabular form. They can be customized and permit simple calculations on data available in nodes and arcs (e.g. calculation of seasonal stock from minimum stock and planned stock level). Further high-end reporting tools are also required, because the overall success of the project is measured by some core key performance indicators (KPIs). Every participant of the crew needs up-to-date information on these figures. The KPIs are based on planning and actual data which is only available in the database. Therefore, standard database reporting tools are used to build customized reports for this purpose.

5 Results and Lessons Learned

The Strategic Network Optimization model described above and the Production Scheduling model have gone “live” some years ago. To identify major mistakes in the implementation, both the new APS and the old planning system ran in parallel for just a few weeks.

Thus the question on benefits can now be answered with several years’ experience of practical use. The most important improvements measured are:

  • Reduced planning time: The planning time needed to create the weekly master plan was reduced to less than 30 % of the time required before the implementation of the APS. About 95 % of the decisions proposed by the planning system are put into practice without changes. This shows the reliability of the planning model and enables the planner to examine what-if analysis to evaluate process changes.

  • Reduced inventory levels: Without affecting customer service, it was possible to avoid buffers which were used to protect against planning inaccuracy and uncertainty. This also attributed to a new way of controlling inventories which is based on the inventory analysis methodology introduced in Chap. 2.

  • Reduced overtime: The bottleneck production lines can be identified very early. Therefore, production can be shifted to alternative sites, if necessary.

  • Less emergency transports between DCs: More accurate planning balances production and transports in advance.

The software template described so far has also been used for fast implementation of Oracle’s Value Chain Planning in other food-divisions of the company. This was possible because the template is based on intensive, collaborative analysis of several food and beverages supply chains covering the company’s whole food-branch.