Stock Planning
Companies have stock on hand to safeguard against uncertainties and fluctuations in demand. However, holding an excessive amount of stock ties up too much capital and generates high storage costs. If there is insufficient on-hand stock, there is a danger that unexpected demand might arise that cannot be fulfilled.
Therefore, the SNP optimizer’s main purpose in stock planning is to keep the on-hand stock between specific upper and lower bounds.
The prerequisites for stock planning using the SNP optimizer are the same as those for general optimization-based planning:
·
Set up of Master Data
for the Optimizer
·
Creation of Model Name
and Version
·
Set Up of Supply Chain
Model
·
Release of Demand Plan
to Supply Network Planning
When planning the on-hand stock, the SNP optimizer takes into account goods receipts and issues that were caused by other system application areas (PP/DS, deployment, or Transport Load Builder, for example) or fixed SNP orders.
If these orders involve goods issues that cannot be balanced by the optimizer within the relevant bucket (period), the optimizer has an infeasible problem. To avoid this, you can specify in the SNP optimizer profile (in the Integration tab) that goods issues caused by stock transfers or planned orders are to be treated the same as the customer demand, demand forecast, or corrected demand forecast, meaning that these demands do not have to be fulfilled. In the product master on the SNP1 tab page, you define penalty costs for non-fulfillment of these demands, which the SNP optimizer takes into account. This makes the problem feasible for the optimizer. However, the solution provided may contain shortfall quantities.
· First, you can set for the storage cost calculation whether you want the SNP optimizer to interpret the on-hand stock per bucket as the average stock on hand per bucket or as the stock on hand at the end of the bucket:
¡ Average stock on hand: The optimizer calculates the storage costs by multiplying together the on-hand stock, the storage costs defined in the location product master (see below), and the number of days in the bucket. This option is most appropriate when receipts and issues are evenly distributed over a bucket.
¡ Stock on hand at end of period: The optimizer calculates the storage costs by multiplying the stock on hand with the storage costs defined in the location product master. This option is most appropriate when receipts and issues are unevenly distributed over a bucket.
· You define storage costs for a specific product at a specific location in the Prod. Storage Costs field on the Procurement tab page of location product master data.
· You should always define storage costs since this is how you ensure that the SNP optimizer does not plan any unnecessary production. Using storage costs helps you to ensure that production, procurement, and transportation always match demand as near to the time as possible.
· Since storage costs are defined on a product-specific basis, you can use them to control where (in which locations) a product is stored.
· Storage costs are independent of storage resource consumption, which means you can define storage costs without creating a corresponding storage resource.
· The SNP optimizer decides whether safety stock is to be created for a product in specific locations, and if so, how it is to be created.
·
You have to
provide the optimizer with the information about the level of safety stock
that is required. You can either enter this level directly in the location
product master based on past experience or use
extended safety stock
planning to allow the system to determine it. The optimizer automatically
includes the results of extended safety stock planning in a key figure.
For more
information, see
Safety Stock
Planning.
· The optimizer considers safety stock as a soft constraint that can be violated with incurring penalty costs. In order for the optimizer to take safety stock into account, you have to either define penalty costs for violating safety stock in the Safety Stock Penalty field on the Procurement tab page of the location product master, or define them as a time-based key figure in interactive planning (planning book 9ATSOPT for instance); see also Definition of Time-Based Constraints in Interactive Planning. These costs must be higher than the storage costs. If not, the optimizer would never plan safety stock.
In the SNP optimizer profile (on the General Constraints tab page), you can define whether you want the optimizer to take into account safety stock at all, and if so, whether you want it to use the absolute deviation value or the relative deviation value when calculating the penalty costs for falling below the safety stock level. For absolute deviation, the optimizer multiplies the absolute value fallen below with the penalty costs defined in the product master (per day). For relative deviation, the optimizer multiplies the percentage fallen below with the penalty costs defined in the product master (per day).
· The safety stock level is not permitted to exceed the product-specific upper bound for storage defined in the location product master (the Maximum Stock Level field of the Lot Size tab page).
You can also use safety stock for static days’ supply planning with the SNP optimizer. When using static days’ supply planning, it should be ensured that there is at all times at least as much on-hand stock of a product as is required within the days’ supply horizon.
To do this, define a safety stock method for the appropriate product on the Lot Size tab page in the location product master (SZ, MZ, SM, or MM) and enter either a safety days’ supply that is not period-dependent in the location product master or a safety days’ supply that is period-dependent in the interactive planning table. Note that for safety stock methods SM and MM, the SNP optimizer only considers independent requirements as well as dependent and distributed demands caused by fixed orders, since these demands and the demand locations are already known before the optimization run.
The optimizer uses the days’ supply planning results as a basis for creating the safety stock.
You can define a product-specific stock upper bound for a location product in the location product master data. To do this, enter a value in the Maximum Stock Level field of the Lot Size tab page. The SNP optimizer takes this upper bound into account when planning if you set the Maximum Product-Specific Quantity Stored indicator of the General Constraints tab page in the SNP optimizer profile. The optimizer considers the upper bound for stock as a soft constraint, meaning that it can be violated subject to the calculation of penalty costs. These penalty costs are assigned by the optimizer, which means that you cannot set them in master data.
You can also define a time-based upper bound for stock in interactive Supply Network Planning. For more information about this, see Definition of Time-Based Constraints in Interactive Planning.
You can specify a multi-product stock upper bound by defining the available capacity of a storage resource in the resource master data. The SNP optimizer takes this upper bound into account when planning if you set the Storage Capacity indicator on the General Constraints tab page in the SNP optimizer profile (see also, Finite Capacity Planning).
You can use the shelf life functionality to define a dynamic stock upper bound for optimization-based planning. In product master data, if you set the Plng with Shelf Life indicator of the Attributes tab page and enter a horizon in the associated Shelf Life field, the optimizer ensures when planning that at no time is there more stock on hand than required in the specified horizon.
For example, if you enter a shelf life horizon of a week, you are specifying that you do not want any goods receipts to be planned for the demand that exists in the week before this horizon, which means that no stock should be kept on hand for longer than a week prior to the demand.
In order for the SNP optimizer to be able to take into account the product’s shelf life that you defined in the product master, you must set shelf life as a soft constraint in the SNP optimizer profile. To do this, go to the General Constraints tab and select the Continue Using Expired Product radio button. The optimizer then plans to continue using products that have passed their expiration date, but calculates penalty costs for doing so. We also recommend that you set the Product-Indep. Key figure Use Penalty Costs. If you do this, the optimizer does not use the procurement costs of the location product to calculate penalty costs (the default setting) but instead uses penalty costs that are not product-dependent, which you set yourself in the accompanying field.
The SNP optimizer can also take into account the shelf life of a product but in a restricted way. At no point in time does it try to plan more on-hand stock of this product than is required in the corresponding bucket. However, if a larger product quantity has to be stored than the quantity to be used in the bucket, the optimizer considers the surplus as quantities that are to be disposed of as waste and calculates corresponding penalty costs.
For this, first set the Plng with Shelf Life indicator of the Attributes tab page in the product master data (as previously mentioned) and enter a horizon in the associated Shelf Life field. Then, in the SNP optimizer profile, define shelf life as a hard constraint by selecting the Dispose of Expired Product radio button on the General Constraints tab page.We do not recommend that you set the Product-Indep. Key figure Use Penalty Costs. In this case, the optimizer calculates the costs for procuring the location product (defined in the product master) as penalty costs.
· When creating orders at the end of the optimization run, the system does not distinguish between the quantities the optimizer considers as waste and the other planned quantities. This means that the sum from both quantities is displayed as the planning results (in interactive planning, for example).
· The product shelf life defined in the product master data is not passed onto all the manufacturing levels, which means for instance that the shelf life of an input component has no effect on the shelf life of an output component. For example, if you define the shelf life of an active ingredient, the system does not transfer this shelf life to the subsequent pills containing this ingredient or their packaging.
· As with production, the product shelf life defined in the product master is not passed onto multiple locations during transportation. This means that if a product is transported from one location to another, the shelf life horizon starts anew.
The consequence of this is that when there are cycles in the distribution network (transporting a product from one location through another and then back to the start location), products lose their shelf life upon return arrival. In this instance, the optimizer would be able to continue using a product that, in fact, needed disposing as waste.
For more information about optimization-based planning and its execution, see:
· Execute Optimizer in the Background
· Execute Optimizer in Interactive Planning