Oracle Inventory Optimization Warehouse Capacity Constraints and Cycle Inventory Safety Stock

Oracle Inventory Optimization Warehouse Capacity Constraints

Oracle Inventory Optimization has added a new IO constraint set to implement warehouse capacity. These warehouse constraints are considered as hard constraints when combined with budget or capacity constraints. They are considered as soft constraints when combined with service level constraints. These constraints are defined either at the organization level or at the category org. level, depending on the value you specify for the profile option MSR: Warehouse Capacity Granularity.

Organization Level Constraints

The organization level Warehouse Capacity Constraint for an organization and each planning time buckets is calculated by taking into consideration the following criteria:

Order Quantity and Effects of Order Modifiers

The IO Planning engine considers the following item order modifiers when calculating Cycle Stock:

If FOQ is defined for an item, then the system ignores the MIN and FLM order modifiers and sets the Order Quantity to FOQ:

Order Quantity = FOQ

If there is no FOQ, then the system calculates the order quantity based on the item's demand with respect to MIN and FLM:

A NULL value for MIN is considered as zero.

A NULL value for FLM is considered as 1.

Accounting for Supply Variability in Warehouse Capacity Constraints

Oracle Inventory Optimization considers the warehouse capacities in conjunction with the safety stock generated, based on the supply lead time variability. IO also considers the safety stock needed for demand variability when determining the final inventory location for the safety stock of an item. That is, the safety stock generated based on the supplier variability also adjusted with respect to warehouse capacity constraints.

Example of Accounting for Supply Variability in Warehouse Capacity Constraints

In this example 17 units of safety stock are pushed down from the Regional Warehouse to the Distribution Warehouses. As a result the IO engine recommends an additional 8 units of safety stock to be stored at the Distribution Warehouse DW1 and 12 units at the Distribution Warehouse DW2 for a total of 20 units.

The Central Product Facility (CPF) sends product to the Regional Warehouse and has a lead time of 10, plus or minus 5. The Regional Warehouse has:

The lead time to DW1 = 3

The lead time to DW2 = 4

The result is:

Available Capacity = 20,000 cubic feet

Required Capacity per Unit of Item = 130 cubic feet

Total Warehouse Capacity Requirement = [(the sum of 43, 51, 40, and 19) multiplied by 130] = 19,890 cubic feet, which is less than 20,000 cubic feet.

The warehouse capacity at the Regional Warehouse is respected and considers all inventories stored at this location, including the supplier variability safety stock.

Seventeen units of safety stock are pushed down to the distribution warehouses. The total safety stock, including the safety stock due to lead time variability, respects the warehouse capacity constraints. The 17 units of safety stock that are pushed down is increased to 20 units for the distribution centers to satisfy the service level requirements.

the picture is described in the document text

Safety Stock Push Down to Downstream Locations

The objective of warehouse capacity constraints is to minimize the total system inventory cost. To do this, the IO Postponement algorithm in determines the safety stock levels at downstream warehouses as a result of restricted capacity at their upstream warehouse.

Example:

Consider items A and B at 3 inventory locations:

CP: Central Production Facility (Upstream)

DW1: Distribution Warehouse 1 (Downstream)

DW2: Distribution Warehouse 2 (Downstream)

Customer demands are satisfied from distribution warehouses.

The item costs and unit volumes are:

Without any warehouse capacity constraints, the optimized inventory levels determined by IO for items A and B at Central Production Facility are:

the picture is described in the document text

With a total warehouse capacity of 20,000 cuft for the Central Production Facility (CP), the optimized inventory levels determined by IO for items A and B at each warehouse become:

the picture is described in the document text

Based on the warehouse capacity constraints, IO keeps the inventory of higher priced item (A) at the upstream location (CP) to minimize the inventory holding costs.

the picture is described in the document text

As shown in the above table, some of inventory of the lower priced item B is pushed down to downstream locations due to the warehouse capacity constraint at the upstream location.

The total inventory of item B is increased from 200 to 220 because IO can no longer use a single pool of inventory at CP warehouse to buffer against the uncertainty.

Specifying Warehouse Capacity Level

You can use instruct the system to constrain the IO plan with the total warehouse capacity or the storage capacities of different storage types within the warehouse.

To model the warehouse capacity granularity you can use a new profile option MSR: Warehouse Capacity Granularity. Valid values are:

Specifying Safety Stock Days

The “Safety Stock Days” is used in calculation of an item Average Daily Demand for each planning bucket, which is subsequently used in calculation of the item Average Cycle Stock.

Average Daily Demand for a Planning Bucket = Sum of item's independent and dependent demands from the start of the planning bucket to the Safety Stock Days working days after the start of the planning bucket, divided by Safety Stock Days.

You specify the Safety Stock Days at the item-org level in the Item Attributes Mass Maintenance window, in the Attribute Name field of the Item attributes available for update field.

Note: The Average Demand (AD) is calculated over the working days based on the Organization Manufacturing Calendar.

You then specify the Simulation Set with the desired values for the Order Modifiers or Safety Stock Days in the Plan Options window. Alternatively, you can define the Safety Stock Bucket Days in the General Planning tab of Oracle Inventory Master Item or Organization Item window.

Note: If you are an E1 user, you can specify this item attribute by populating the following parameter in the Item.dat file and then upload this file by means of the Legacy Collections: SAFETY_STOCK_BUCKET_DAYS: This is the item Safety Stock Days.

Defining Item Order Modifiers

Specifying item order modifiers is very similar to specifying Safety Stock Day. Specify the item order modifiers at the item-org level in the Item attribute available for update field of the Item Attributes Mass Maintenance window, under Attribute Name. You then specify the Simulation Set with the desired values for the Order Modifiers or Safety Stock Days in the Plan Options window.

Alternatively, you can define the item order modifiers in the General Planning tab of Oracle Inventory Master Item or Organization Item window.

The IO Planning engine considers the following item order modifiers for calculating the Average Cycle Stock:

If FOQ is defined for an item, then the system ignores the MIN and FLM order modifiers and sets the Order Quantity to FOQ then Order Quantity = FOQ.

If there is no FOQ, then the system calculates the order quantity based on the item's demand with respect to MIN and FLM, then Order Quantity = Smallest Multiple of FLM is larger than or equal to the Maximum (MIN, Demand).

A NULL value for MIN is considered as zero.

A NULL value for FLM is considered as 1.

Note: E1 users can define Fixed Order Quantity and Order Multiplier in E1 source and then upload these attributes to planning server via E1-VCP Integration. Alternatively, E1 users can specify these item order modifiers by populating the following parameters in the Item.dat file and then upload this file via Legacy Collections FIXED_ORDER_QUANTITY ( the item Fixed Order Quantity) and FIXED_LOT_MULTIPLIER (the item Fixed Lot Multiplier).

Specifying Order Period

The Order Period is the interval between orders. It is used in the calculation of the Average Cycle Stock as in the section Warehouse Capacity Constraints. The purpose of the Order Period is to allow the specification of an alternate order quantity that may be larger than the item's FOQ, MIN or FLM attributes. This allows the consideration of both production mechanics (e.g., must process 500 pounds = 1 container at a time) (by means of the item's order modifier attributes) and manufacturing operations constraints (e.g., must produce at least 3 week's worth of a product at a time) (by means of the Order Period) in determining an effective order quantity to be used for cycle stock calculation purposes.

You define the Order Period (OP) item attribute at the item-org level in the Item Attributes Mass Maintenance window in the same way as you defined Safety Stock Days and Order Modifiers.

Note: The attribute value for the Order Period is specified in working days based on the Organization Manufacturing Calendar.

Specifying Inventory Days Increment

The Inventory Days Increment is an item attribute, which can represent the number of days that supply of an item remains on hold for quality testing.

You define the Inventory Days Increment (IDI) attribute at the item-org level in the Item Attributes Mass Maintenance window in the same way as you defined Safety Stock Days and Order Modifier

Note: The attribute value for the Inventory Days Increment is specified in working days based on the Organization Manufacturing Calendar.

Defining Warehouse Capacity at the Organization Level

You define the total volume capacity available in a warehouse in the Inventory Parameters tab of the Organization Parameters window

The value of this field represents the warehouse capacity for the organization as specified in the Organization Parameters window or as uploaded by means of the Trading Partner.dat file.

The planning engine constrains the plan with the warehouse capacities at the org level when the profile option MSR: Warehouse Capacity Granularity is set to “Organization Level”.

Note: There are no source fields in E1 for warehouse capacity volume and volume unit of measure. E1 users can specify warehouse capacity volume and its unit of measure by populating the following parameters in the TradingPartner.dat file and then upload this file by means of Legacy Collections MAXIMUM VOLUME (the warehouse capacity volume) and . VOLUME_UOM (the capacity volume unit of measure).

Defining Storage Capacity at the Category Level

To set up your system to define storage capacity at the category level, follow the steps below:

  1. Define a category set and then define your storage types as categories in this category set. For example:

    • Category set: ABC

    • Category Set: Storage Type

  2. Define your storage types as categories in this category set:

    • Category: Frozen

    • Category: Refrigerated

    • Category: Dry

    • Category: Other

  3. Define capacities for your storage types, using the category set and categories defined in steps 1 and 2.

You can define the capacities for different storage types in a warehouse in the Storage Capacity window under the Setup menu for the Inventory Planner responsibility.

In the Storage Capacity window, you specify capacities for the categories in the category set defined in Step 1 above

You specify capacities for storage types in multiple warehouses (organizations) in the Storage Capacity window.

Note: You can only define one category set at a time for specifying storage capacity. This means that when you select a category set in the Storage Capacity window and define capacities, selecting another category set will replace the one previously defined.

For example, if you select category set ABC in the Storage Capacity window and define the storage capacity and then alter decide to specify storage capacity in category set DEF, the new definition of capacity in category set DEF replaces the previous definition of capacity in category set ABC. Therefore, there is a maximum of one record associated to the Storage Capacity window.

Note: If you try to save a new definition of capacity in a different category set, the systems alerts you with a pop-up window, which says “This action replaces storage capacities defined in category set <ABC> do you want to continue? You can respond by clicking the Yes or No button.

The planning engine constrains the plan with the warehouse capacities at the category org level when the profile option MSR: Warehouse Capacity Granularity is set to Category Organization Level.

Note: E1 users can utilize a user-configurable category code to define a Category Set for storage types. Each category code that comes over by means of E1-VCP integration becomes a Category Set, and the values that are held in that category code field for various items become the Categories. Subsequently these attributes can be uploaded to planning server via E1-VCP Integration. Alternatively E1 users can specify category sets and categories in the CategorySet.dat and Category.dat files and then upload these files via Legacy Collections.

Defining Item Volume

You specify the item volume and its unit of measure at the item-org level in the Item Attributes Mass Maintenance window. You then specify the Simulation Set with the desired values for the item volume in the Plan Options window.

Alternatively you can define the item volume in the Physical Attributes tab of Oracle Inventory Master Item or Organization Item window.

Note: E1 users can define item volume and item volume unit of measure in E1 source and then upload these attributes to planning server via E1-VCP Integration. Alternatively you can specify item volume and its unit of measure by populating the following parameters in the Item.dat file and then upload this file via Legacy Collections: UNIT_VOLUME (the item volume and VOLUME_UOM (the item volume unit of measure).

Specifying the Enforce Warehouse Capacity Constraints Plan Option

You enforce warehouse capacity constraints by selecting the plan option Enforce Warehouse Capacity Constraints. The following table summarizes the IO engine behavior when the plan option Enforce Warehouse Capacity Constraints is checked. Note that Enforce Budget Constraints, Enforce Capacity Constraints and Enforce Service Level Constraints are all selected, as shown in italics.

Plan Level Constraints Status Engine Behavior
Enforce Service Level Constraints Warehouse capacity and budget are hard constraints
Enforce Budget Constraints Warehouse capacity and budget are hard constraints
Enforce Capacity Constraints Warehouse capacity and budget are hard constraints
Enforce Service Level Constraints Warehouse, material, and resource capacities are hard constraints
Enforce Budget Constraints Warehouse, material, and resource capacities are hard constraints
Enforce Capacity Constraints Warehouse, material, and resource capacities are hard constraints
Enforce Service Level Constraints Service levels are hard constraints. Warehouse capacities are soft constraints
Enforce Budget Constraints Service levels are hard constraints. Warehouse capacities are soft constraints
Enforce Capacity Constraints Service levels are hard constraints. Warehouse capacities are soft constraints

Warehouse Capacity Exceeded Exception

The warehouse capacity or the warehouse storage type capacities could be exceeded above the available capacity when the Warehouse Capacity Constraints are considered as soft constraints by the planning engine. This can happen when the plan option Enforce Service Level Constraints is checked:

Plan Level Constraints Status Engine Behavior
Enforce Service Level Constraints Service levels are hard constraints. Warehouse capacities are soft constraints.
Enforce Budget Constraints Service levels are hard constraints. Warehouse capacities are soft constraints.
Enforce Budget Constraints Service levels are hard constraints. Warehouse capacities are soft constraints.

The generated exception is called Warehouse Capacity Exceeded.

When the plan is constrained by the warehouse capacity at the org level, this exception is generated by organization and planning bucket. When the plan is constrained by the warehouse storage type capacity at the category org level, this exception is generated by organization, category, and planning bucket.

The Exception Details window displays the following fields:

Note: The exception is part of the Material and resource capacity exception group.

Pushing Warehouse Capacity Facts to APCC

The Archive Plan Summary concurrent program is enhanced by adding the following facts and dimensions and pushing them to the APCC repository:

Setting Up Warehouse Constraints

To set up IO warehouse constraints, follow the steps below:

  1. Set up the profile option MSR: Warehouse Capacity Granularity

    • Organization level

    • Category Organization Level

  2. Specify the “Safety Stock Days” at item-org level in the “Item Attributes Mass Maintenance” window (Alternatively you can define this attribute in Oracle Inventory Organization Item window, General Planning tab). This item attribute is used as the time horizon for calculating the Average Demand.

  3. Specify item order modifiers at item-org level in the “Item Attributes Mass Maintenance” window (Alternatively you can define item order modifiers in Oracle Inventory Organization Item window, General Planning tab).

  4. Specify the “Order Period” at item-org level in the Item Attributes Mass Maintenance window.

  5. Specify the “Inventory Days Increment” at item-org level in the Item Attributes Mass Maintenance window.

  6. Define the “Warehouse Volume Capacity” in Oracle Inventory (Organization Parameters window, Inventory Parameters tab). This is used if the “Organization Level: is selected in Step 1.

  7. Define the storage capacities at the org category level in the “Storage Capacity” window under the Setup menu for the Inventory Planner responsibility. The category level capacities are used if the “Category Organization Level: is selected in Step 1.

  8. Define the item's “Unit Volume” and item's “Volume Unit of Measure” at item-org level in the “Item Attributes Mass Maintenance” window (Alternatively you can define these attributes in Oracle Inventory Organization Item window, Physical Attributes tab).

  9. Enforce Warehouse Capacity Constraints in the Constraints tab of the Inventory Optimization Plan Options window.