Oracle Inventory Optimization Policy Planning

Introduction to Policy Planning

Policy based planning allows you to plan spare items based on policy setups.

Policy Parameters are calculated in an IO Plan based on user inputs. The IO plan is then referenced in Oracle Service Parts Planning Plan Options as a Demand Schedule. These policy parameters could be overridden either automatically by SPP or manually.

Policy based planning is based on policy setups. The general overall flow of information is as follows:

Within IO, a Policy Parameters Set helps you specify Policy Parameters by Category. Other enhancements to IO include the ability to consider two tiered service levels and an ability calculate safety stock using a loss function based approach.

The existing Items Classification functionality is utilized throughout the Policy Planning solution to set up Category specific behavior. This functionality has been enhanced to enable the creation of Category Sets and Categories within Planning, without requiring them to be created in Inventory.

You can also specify Policy Parameters externally at the item level and uploaded to IMM using the OA template. These parameters override the Category level parameters, however, they are not time varying.

Functional IO Components

The following map illustrates the functional components of the IO portion of Policy Planning..

the picture is described in the document text

For information on Policy Parameters for SPP, refer to the Oracle Service Parts Planning Implementation and User's Guide.

For information on Policy Parameters for APCC, refer to the Oracle Advanced Planning Command Center User's Guide.

Publishing Parts Classification

As Items are classified into categories on the destination using the Parts Classification functionality, the categorization must be used throughout the Policy Planning solution.

After you have completed the Parts Classification to your satisfaction, you publish the classification.

To publish your classification, click PUBLISH at the bottom of the Parts Classification Rule screen. The action of publishing invokes a concurrent request that copies the classification data from the simulation set in which it resides into an area where Planning engines can read the classification, and where subsequent collections will not override it.

In the Parts Classification screen, the Categories that you can select depend on the Category Set that you choose. In the event that you choose a Category Set that was specified on the source, then only those Categories that correspond to the Category set that was specified in the source can be selected. If you choose a Category Set that was created on the destination, then only those categories created on the destination can be selected. Collected categories are not visible.

the picture is described in the document text

Different aspects in the Policy Planning solution now use the published categorization by referring to the Policy Parameter Set that holds the classification, with the following stipulations:

Creating New Categories and Category Sets

The Policy Planning feature allows you to create a new Category Set and new Categories directly on the destination. When you select the Category Set through the drop-down in the Part Classification Rule screen, you can see all the Category Sets that are available. A link, New, enables you to specify the name of a new Category Set. You are guided to a window in which you can create a new Category or Category Set.

In the Parts Classification screen, the Categories that are enabled depend on the Category Set that is chosen. If you choose a Category Set that was specified on the source, then only the Categories corresponding to that Category Set can be selected. If you create a Category Set on the destination, then only those categories created on the destination are accessible. Collected categories are visible.

To create a new Category set, click New from the drop-down menu.

Different aspects in the Policy Planning solution use the published Categorization, by referring to the Policy Parameter Set that holds the classification.

Note: Be sure to choose the Category Set within the Policy Parameters Set that holds the correct Parts Classification

Setting Up Policy Parameters

IO introduces a Policy Parameters Set that allows you to specify Category Specific Policy Parameters, in which you can set out time varying policy parameters. In the time varying parameters, you can specify a time varying value of Target Service Level %. This value influences the Safety Stock calculation and therefore, the Min.

Note: You can specify either the Target Service Level % or the Min and Max, but not both

You can choose whether you want you plan to be a Policy Planning or a regular plan, but it can only be one at a time. If you choose Policy Planning, it references an existing a Policy Parameters Set.

Policy Planning calculates Inventory Parameters only at specific organizations. There are no forecast values propagated automatically to upstream organizations to calculate safety stock. Forecast values must be calculated independently to calculate safety stock.

If you wish to specify policy values at the Item-Org lever, you must specify them externally and upload them to the IMM using the OA template.

Managing Policy Parameter Sets

You manage Policy Parameters Sets in the IO workbench.

To manage Policy Parameters Set:

  1. Log on to IO as Inventory Planner responsibility.

  2. Expand Setup and then click Manage Policy Parameters sets.

the picture is described in the document text

The Manage Policy Parameters Sets screen comes up.

the picture is described in the document text

The sequence of Categories specified in the Manage Policy Parameters Sets screen is significant. If an item is assigned to two Categories, the first category that is listed is the one that provides the policy parameters. You can change the order of the Categories in the list to specify in which order they will be evaluated by using the Move Up and Move Down buttons.

If the Policy Parameters are enabled for Time Phased Setup, the section Specify Policy Date Ranges area of the screen becomes editable. The Policy Date Ranges can be specified per Category. You can then specify the values Min (Override), Max (Override) and Target Service Level % for each date range across time.

Note: You can specify the Policy Parameters at the Category AND Organization.

Specifying Policy Details in the Policy Parameters Set

The detailed attributes of the Policy Parameters Set are:

Section Values Comments
Header Policy Parameter Set Name User specified
  Description User specified
Specify Item Categories Category Set Category Set, which holds Items Classification Categories, required field
  Category Drop-down menu to select the Categories associated with the above Category Set.
  Organization Organization for which the Policy Parameters are applicable
  Time Phased Setup Valid Values are:
  • Yes

  • No


The default is No.
  Include in Calculations Specifies whether or not the policy values for this Category must be recalculated.
If it is not recalculated, the existing Policy Parameters must be retained in the IO Plan Output.
Per Selected Category Policy Attributes N/A N/A
  Forecast Error Distribution This would be an LOV for the planner to specify the kind of distribution that IO should assume while calculating safety stock.
    If this is set to Item Level Specification, IO looks at the Intermittent Demand item-attribute in the IMM, as referenced in the IO Plan Option. If this is set to No, IO assumes a Normal distribution. If this is set to Yes, IO looks at the profile MSR: Variance to Mean Threshold for Use of Negative Binomial Distribution and based on that, assumes either a Poisson or Negative Binomial distribution
Per Selected Category / Policy Parameters Policy Type One of:
  • Min-Max

  • ROP-EOQ

  • ROP-OQ

  • FOC-Max

  Policy UOM Either Units or Days”
  Annual Order Count This is relevant and must be editable only for the policy = ROP-OQ. This is a specification that is used to derive the Order Quantity by dividing the total demand over the last year by this number
  Order Cycle Calendar This is reference to a Calendar which determines when orders can be placed. This is only relevant and must be editable only for the “FOC-Max” Policy
  Fixed Order Quantity Either used as EOQ for the Items where EOQ cannot be calculated, or as the Order Quantity for the ROP-OP policy if specified. Editable only for ROP-EOQ and ROP-OQ type of policies.
  Min Override
Max Override
Manually specified overrides to Policy Parameters. Iin case these are specified, they are considered, and IO will not calculate any Min-Max values.
Per Selected Items Class/Time Phased Policy Overrides   Ability to specify time varying Min, Max and Target Levels by Category

Importing Time Varying Policy Parameter Values

You can import policy parameters defined in a .csv file. The .csv template enable the import of Time Phased Policy Planning Parameters into the IO Plan Options.

When you choose to import, you are directed to the Load Data Files screen, where you can import time Policy Parameter data into the IO Plan Options through a .csv.

You can specify the following information:

Policy Parameter Set Category Organization Start Date End Date Min Max Target Service Level (%)
Set1 Category1 M1 1/1/2015 1/31/2015 100 200 70
Set1 Category1 M1 2/1/2015 2/28/2015 50 100 80
Set1 Category1 M1 3/1/2015 3/31/2015 200 300 90
Set1 Category1 M2 1/1/2015 1/31/2015 10 20 65
Set1 Category1 M2 2/1/2015 2/28/2015 5 15 55
Set1 Category1 M2 3/1/2015 3/31/2015 10 15 80

The Min and Max values specified are interpreted in the UOM format of the Policy. If the Policy UOM is Days, it is interpreted in Days. If the Policy UOM is Units, it is interpreted in Units.

Note: You can specify either Target Service Level % OR Min., not both. This is because the Target Service Level % influences the Safety Stock calculation, which in turn, impacts the calculation of Min.

Loss Function Based Safety Stock Calculation Profile

A site level profile, MSC: Enable Loss Function Based Safety Stock Calculation, determines whether the safety stock calculation uses a loss function based approach or a regular approach.

The Loss Function Based Calculation

There are two different approaches to calculating the safety stock in IO. Currently, IO supports only the Service Level approach. With the introduction of Policy Planning, it now also supports consideration of the loss function while calculating safety stock. Determining whether to use the service level approach or the quantity weighted approach is determined by the setting of the profile option MSC: Enable Loss Function Based Calculation

Note: Loss Function based approach is only relevant for Policy Plans, not for regular IO.

Service Level Approach

IO determines the safety stock required to meet a certain Service Level by calculating the frequency of loss. This calculation determines what the probability is of not meeting the demand with the calculated safety stock, as shown in the following diagram:

the picture is described in the document text

If there is a regular demand, this method then calculates the value of 'k' from the Normal Distribution tables, and uses the 'k' value to determine the safety stock.

New Calculation: Loss Function Approach

An alternate approach to the calculation of safety stock weighs the probability of not meeting the demand with a certain stock, with the quantity by which demand exceeds the stock, and uses that to determine the safety stock

the picture is described in the document text

Again, in case of regular demand, this method determines the value of 'k' for service level from the Loss Function tables, and then uses that value of 'k' to determine the safety stock. Similarly in the case of intermittent demand, the probability of not meeting the demand is weighed by the quantity by which demands exceed stock, and that can be used to determine the optimal safety stock. This method of weighing the probability with the quantity is referred to the as Loss Function approach

IMM Inputs to Policy Planning

IMM supports Policy Planning where the Policy Parameters are specified externally and loaded into the IMM. To accomplish this, IMM has added additional fields to support Policy Planning.

Attribute Existing/New Possible Values
Inventory Policy New
  • Min-Max

  • ROP-EOQ

  • ROP-OQ (Annual Order Count)

  • FOC-Max

Policy UOM New Units / Days
Min (units) New N/A
Max (units) New N/A
Min (days) New N/A
Max (days) New N/A
Safety Stock (units) Existing A single value of safety stock can be specified as input
Safety Stock (days) New A single value of safety stock can be specified as input
Annual Order Count New Indicates number of orders to be placed per year. Used in ROP-OQ policies
Fixed Order Quantity Existing Used as the Order Quantity or EOQ for ROP-OQ or ROP-EOQ policies. If specified, this must be respected
Order Cycle Calendar New Relevant only in FOC-Max policies
Average Daily Demand New Required for converting Quantity to Days in the various policies
Fixed Cost per order New Required for EOQ calculations
Annual Carrying Cost per Unit New Required for EOQ calculations
Target Service Level % Existing Used to determine the safety stock

Policy Parameters Calculated by IO

Policy Parameters are saved within the IO Plan as additional measures when the IO plan is complete. No policy parameters are saved to the IMM or to the Policy Parameters Set.

The IO Plan saves the Policy Parameters as either Item attributes within the Plan, or as measures at the Item-Org level as outlined in the following table:

Attribute Existing/ New Possible Values Description
Inventory Policy New Item Attribute
  • Min-Max

  • ROP-EOQ

  • ROP-OQ (Annual Order Count)

  • FOC-Max

Saved as an Item Attribute within the Plan. (This is required to have APCC and other UI's read the Inventory Policy.)
Policy UOM New Item Attribute Units/Days Saved as an Item Attribute
Min (units) New Measure As calculated by IO New Measure: Time varying Min and Max values are saved by day.
Max (units) New Measure As calculated by IO New Measure: Time varying Min and Max values are saved by day.
Min (days) New Measure As calculated by IO New Measure: Time varying Min and Max values are saved by day.
Max (days) New Measure As calculated by IO New Measure: Time varying Min and Max values are saved by day.
Target Service Level % Existing Measure This is either specified as Target Service Level 1% in the Service Level Set, or it is specified in the Policy Parameters Set (either a single or time varying value) Target Service Level % specified through the Service Level set overrides the value specified value within the Policy Parameters Set.

Note: In case the Min (Override) and Max (Override) is specified, the Safety Stock must be calculated from the Min value, and the Target Service Level % must hence be calculated/derived by SPP.

Safety Stock (units) Existing Measure Calculated Safety Stock value by IO This is the output of the IO calculation, saved to the IO plan into the existing measure.
Safety Stock (days) Existing Measure Calculated Safety Stock value by IO N/A
Annual Order Count New Item Attribute Indicates number of orders to be placed per year. This is specified at the Category Level using the Policy Parameters Set.
Order Quantity New Calculated based on the Annual Order Count, or specified directly in the Policy Parameter Set, or specified in the IMM using the Fixed Order Quantity field. IO must determine the appropriate Order Quantity applicable. For ROP-OQ, IO must use:
  • The Item Attribute in the IMM for Fixed Order Quantity if specified (highest priority)

  • Order Quantity if specified on the Policy Parameter Set (lower priority)

  • Order Quantity derived using the Annual Order Count specified on the Policy Parameter Set and using this value to derive the Annual Order Quantity using the Annual Shipment Count, determined by the Calculate Annual Demand concurrent program (lowest priority)


For ROP-EOQ, IO must use:
  • The Item Attribute in the IMM for “Fixed Order Quantity” if specified (highest priority)

  • Order Quantity if specified on the Policy Parameter Set (lower priority)

  • Order Quantity derived using the formula based on the carrying cost, Annual Demand Quantity (determined by the Calculate Annual Demand concurrent request, and Fixed Cost per order (specified as an item attribute in the IMM).

Order Cycle Calendar New Item Attribute As specified manually within the Policy Parameters Set Relevant for only the FOC-Max Policy Type.
IO must read the Order Cycle calendar from the Policy Parameters Set and populate the Item Attribute for every Item-Org
Average Daily Demand New Item Attribute Calculated, based on forecast data (total forecast quantity) / (number of horizon days) Calculated for every Item based on the forecast value (highest priority)
OR
Read in from the new IMM attribute called Average Daily Demand.

Calculating Policy Parameters

IO bases the calculations for Policy Parameters on how you have set your policy parameters. Policy parameters are specified at the Category level only, however, the required data for calculating safety stock, such as forecast, variance, and so on, is calculated at the Item-Org level.

General Overview of Policy Parameter Calculations

This section provides an overview of how IO calculates policy parameters.

  1. If the Policy Parameters for an item that was defined within the Policy Parameters Set for its Category, is NOT time varying, as defined by the Time Phased Setup parameter in the Policy Parameters Set, then safety stock calculations are driven by data setup in the Service Level Set, IMM, and the demand schedule is referenced in the IO:

    • If some parameters, such as the service levels, are not specified within the Service Level Set, the Policy Parameters are used to determine the Target Service Level %.

      Note: Service Level Set values always override the Policy Parameter values that are defined at the Category level.

    • The Policy Parameters Set can also specify the Forecast Error Distribution. If this is set to Normal, Poisson or Negative Binomial in the Policy Parameter Set for the entire Category, then this value must be used regardless of any item level distribution that may be specified in the IMM. However, if this is specified as Item Level Specification, then this value at the Item level is used.

    • IO uses its normal calculations and may calculate time-varying Safety Stock values even if the Policy Parameters are defined as non time varying. This influences the Policy Parameter calculations since the Min and Max are linked to Safety Stock, and as such, will also vary over time.

      However, if Min and Max are explicitly specified within the Policy Parameters, then these override calculated Min/Max parameters at the Item level

  2. If the Policy Parameters for an item that was defined within the Policy Parameters Set for its Category, ARE specified as time varying then the Target Service Level % values are determined by referencing the time varying Target Service Level % values specified in the Policy Parameters Set:

    • The Safety Stock calculations can vary with the varying Target Service Level % per day.

    • As the Safety Stock varies per day, the Min and Max values will also vary by day.

    • If the Min is specified in the Policy Parameters, then it must be respected. The Safety Stock value, and hence the Target Service Level % is then calculated by IO.

Calculating Safety Stock

Many parameters influence the calculation of safety stock, which serves as the input for several Policy Parameter calculations:

The method adopted by IO depends upon two options/attributes, Forecast Error Distribution and Safety Stock Calculation method. Both of these can be set at either the category level or at an individual item level. IO determines the setting that is applicable.

Two-Tiered Service Levels

Safety Stock for Policy Planned items is normally calculated at a single echelon, that is, for a specific Org, based on the forecast error distribution and calculation method specified at a specific organization.

The only exception to this is when the two tiered service levels attribute is enabled and the Service Level set has two tiered definitions for an item. Often, the lead time associated with fulfilling a demand, the DFLT, is larger than the amount of time required to transfer a Item from an upstream Organization to the Organization satisfying the demand. In such scenarios, it becomes feasible to hold Items at upstream organizations and still meet the required service levels.

However, at times it is advantageous to hold a minimum number of Items at the most downstream locations. To support this scenario, IO supports two Service Levels and DFLTs.

The Service Level Set form is enhanced to allow specifying two sets of Service Levels (SL1, SL2) and DFLTs (DFLT1, DFLT2). This is set in the Service Levels & Fulfillment Lead Time form.

Note: Two-tiered service levels are specified through the Service Level Set, and therefore cannot vary by time.

the picture is described in the document text

the picture is described in the document text

The previous Service Level and Fulfillment Lead Time fields are replaced by the Service Level 1 % and Fulfillment Lead Time 1 fields. Additionally, two fields Service Level 2 % and Fulfillment Lead Time 2 are added to the form.

To process the two tiered service levels, IO does an initial run, considering SL1, DFLT1 and calculates the stock required to meet this service level. IO then does a second run, considering SL2, DFLT2, but in this case, it ensures that the safety stock quantity as calculated in the first run is maintained at a minimum at each location. In this way, you can ensure that a certain (lower) level of service level (SL1) is maintained through stock at the most downstream location, by setting the DFLT1 to 0.

Calculating Policy Parameter Details

The Safety Stock is an essential Item of the Policy Parameter Calculation. The key parameters for Policy Planning are explained below.

Calculation of Min or Re-Order Point (ROP)

The Min is used in the Min-Max policy, and is calculated as Days or Units, depending on the Policy Type. The Min is calculated for every day of the Plan Horizon. Its value can vary by day.

In the ROP-OQ, or ROP-EOQ policies, the ROP calculation is similar to the Min calculation. The ROP or Min, is calculated as:

Note: If you have manually input the Min and Max fields in the Policy Parameters, your preset values override any calculations performed by IO.

Calculation of Max

The Max determines the upper inventory threshold. It is required in Min-Max and FOC-Max policies. The Max is calculated every day and its value can vary by day.

For Min-Max and ROP policies:

The Order Quantity can be specified on:

Calculation of Order Quantity and Economic Order Quantity (EOQ)

Order Quantity

The Order Quantity (OQ) is used in the ROP-OQ. The EOQ is used in the ROP-EOQ. The Quantity is always expressed in Units, not Days. For Policy type of Days, it is converted to Days by dividing it with the Average Daily Demand.

When the policy is set to ROP-OQ, the Order Quantity is specified in:

The IMM value is always preferred over the Policy Parameters Set value.

Economic Order Quantity

The Economic Order Quantity or EOQ is calculated using the formula below:

the picture is described in the document text

where,

The Annual Demand Quantity is derived from the IMM attribute Annual Sales – Quantity, which is populated when the concurrent request Calculate Annual Demand launches. The Fixed Cost per Unit and Annual Carrying Cost per Unit are new item attributes in the IMM.

If the EOQ is specified using the field Order Quantity in the Policy Parameters set, it must be used for all items where all the above data is not available in the IMM. However, if there is data available at the Item-Org level to calculate the EOQ, then IO calculates the EOQ for that Item-Organization.

Examples of Calculating Policy Parameter Details

Example: Min-Max (Units)

In this example:

Min (units) = Safety Stock (units) + Average Daily Demand * Lead Time

the picture is described in the document text

Example: ROP-OQ and ROP-EOQ (Units)

From the above section:

the picture is described in the document text

Example: ROP-OQ and ROP-EOQ (Days)

This is similar to the Min (Days) calculation in the Min-Max (Days) policy.

Note: ROP = Min, as calculated earlier

the picture is described in the document text

Viewing Calculated Policy Parameters in Material Plan

You are able to see the detailed policy parameters in IO in a new ADF based Material Plan

To access the Material Plan through the IO navigator, click Material Plan – ADF. You can also access the Material Plan from the APCC Policy Planning screen.

the picture is described in the document text

The Material Plan supports the following measures:

Measure Relevant for Regular IO Plans Relevant for Policy IO Plans
Sales Orders Yes No
Forecast Yes No
Dependent Demand Yes No
Gross Requirements Yes No
Requisitions Yes No
Planned Orders Yes No
Total Supply Yes No
Beginning On Hand Yes No
Projected Available Balance Yes No
Projected Safety Stock (non pooled) Yes No
Projected Safety Stock – Units Yes No
- % Manufacturing Variability Yes No
- % Supplier Lead Time Variability Yes No
- % In-Transit Lead Time Variability Yes No
- % Demand Variability Yes No
Projected Safety Stock – Days of Supply Yes No
Projected Safety Stock – Value Yes No
Target Safety Stock (Units) Yes Yes
Target Safety Stock (Days of Supply) Yes No
Target Service Level (%) Yes Yes
Projected Service Level (%) Yes No
Mean Absolute Deviation Yes No
Mean Absolute Percent Error Yes No
Safety Stock – Non Pooled Yes No
- Manufacturing Variability Yes No
- Supplier Lead Time Variability Yes No
- In-Transit Lead Time Variability Yes No
- Demand Variability Yes No
Policy Type No New