IP Library Granted Patent US 7,685,015
Granted Patent B2
US 7,685,015 · App. 12/031,975 · Granted Mar 23, 2010

Optimized deployment of parts in a supply chain network

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,685,015
App. No.
12/031,975
Granted
Mar 23, 2010
Kind
B2
Abstract

Locations that include supply, manufacturing, demand locations, and channels are defined. A demand is computed for each part at each location. An availability lead-time is estimated for each part at each location and for each part at each channel. A total landed cost is calculated for each part at each location and each channel. A lead-time demand is computed for each part at each location using the availability lead-times for the part. A demand over lead-time is computed for each part at each location using the availability lead-times for the part. A completely filled demand is determined from the lead-time demands and the stock levels, and a partially filled demand is determined from the lead-time demands and the stock levels. A coverage function is generated for the parts at the locations and the channels from the completely filled demand and the partially filled demand.

Claims (201)

1. A computer-implemented method for deploying a plurality of parts, comprising:

defining by a computer, a plurality of locations comprising a plurality of supply locations, a plurality of manufacturing locations, a plurality of demand locations, and a plurality of channels;

computing by the computer, a demand for each part at each location;

estimating by the computer, an availability lead-time for each part at each location and for each part at each channel;

calculating by the computer, a total landed cost for each part at each location and for each part at each channel;

computing by the computer, a lead-time demand for each part at each location and for each part at each channel using the availability lead-times for the part;

computing by the computer, a stock level for each part at each location and for each part at each channel;

determining by the computer, a completely filled demand from the lead-time demands and the stock levels;

determining by the computer, a partially filled demand from the lead-time demands and the stock levels; and

generating by the computer, a coverage function for the parts at the locations and the channels from the completely filled demand and the partially filled demand.

2. The method of claim 1 , further comprising:

transferring a demand from each of the plurality of demand locations and from each of the plurality of channels to one or more of the plurality of supply locations based on the order lead-time profiles;

creating virtual demand locations and virtual channels for the order lead-time demand transfers, wherein the virtual demand locations and the virtual channels represent the plurality of demand locations and the plurality of channels; and

generating a coverage function for the parts at the virtual locations and channels from the completely filled demand and the partially filled demand.

3. The method of claim 1 , further comprising:

optimizing the coverage function; and

determining an optimal deployment of the parts at the locations for all the time periods according to the optimized coverage function.

4. The method of claim 1 , further comprising:

determining a maximum stock level for the parts at the locations across the all the time periods in a multi-time period model; and

computing new purchases for each part at each location in a multi-time period model.

5. The method of claim 1 , further comprising:

determining a replenishment policy for each part at each location and for each time period.

6. The method of claim 1 , further comprising:

classifying the parts at each location into categories based on demand volume and cost;

generating a coverage function according to the part categories; and

determining a marginal value for minimizing the expected backorders and cost.

7. The method of claim 1 , further comprising:

classifying intermediate locations;

grouping each intermediate location as echelons;

computing a total network cost according to the total landed cost of each part at each location;

using echelons for iterating coverage levels in order to find the optimal coverage levels for the intermediate locations according to the minimum total network cost; and

determining optimal coverage levels for the intermediate locations by iteratively minimizing the total network cost objective function.

8. The method of claim 1 , further comprising:

creating one or more criticality groups of parts and service level bands based on one or more segmentation rules.

9. The method of claim 1 , wherein calculating the total landed cost for each part at each location comprising a target demand location comprises:

computing the total landed cost for each part at a supply endpoint;

computing the total landed cost for each part at each supply location; and

computing the total landed cost for each part at each demand location according to the total landed cost for each part at the supply location.

10. The method of claim 1 , wherein computing the lead-time demand for each part at each location comprising a manufacturing location comprises:

calculating a probability for supplying each part to each manufacturing location;

computing a process lead-time for an end product at each manufacturing location according to the probability; and

computing the lead-time demand of an end product at each manufacturing location.

11. The method of claim 1 , wherein computing the lead-time demand for an end product at each manufacturing location comprises:

receiving an ordered list comprising at least a subset of each supply location;

calculating a probability for supplying a plurality of raw material parts to each manufacturing location; and

estimating the availability lead-time at each location based on the calculated probabilities.

12. The method of claim 1 , wherein estimating the availability lead-time for an end product at each location comprising a target manufacturing location comprises:

determining the availability lead-time for an end product at each manufacturing location by repeating the following for a plurality of raw material parts:

estimating an availability lead-time for each raw material part at a supply endpoint;

estimating an availability lead-time for each raw material part at each supply location; and

estimating a process lead-time for the end product at each manufacturing location according to the availability lead-time for each raw material part at each supply location.

13. The method of claim 1 , further comprising:

computing a demand for a plurality of raw material parts at each location comprising a supply location comprises:

calculating a demand for an end product at each manufacturing location to receive a plurality of raw material parts from each supply location;

calculating a dependent demand at each supply location according to the demand for the end product at each manufacturing location;

calculating an independent demand at each supply location; and

computing the demand at each supply location based on the dependent demand and the independent demand.

14. The method of claim 1 , further comprising:

computing a demand for a plurality of raw material parts at each manufacturing location with an assembly process comprises:

calculating a demand for each raw material part from a demand for an end product at each manufacturing location based on a process yield;

calculating a demand for the end product at a demand endpoint;

calculating a demand for the end product at each demand location; and

calculating a demand for the end product at each supply location.

15. The method of claim 1 , further comprising:

computing the demand for a plurality of raw material parts at each location comprising a manufacturing location comprises:

determining a total demand by calculating a demand for each raw material from a demand for each co-product at each manufacturing location based on a process yield;

calculating a demand for each co-product at a demand endpoint;

calculating a demand for each co-product at each demand location; and

calculating a demand for each co-product at each supply location.

16. A computer-implemented system for deploying a plurality of parts, comprising a server associated with one or more software components collectively configured to:

define a plurality of locations comprising a plurality of supply locations, a plurality of manufacturing locations, a plurality of demand locations, and a plurality of channels;

compute a demand for each part at each location;

estimate an availability lead-time for each part at each location and for each part at each channel;

calculate a total landed cost for each part at each location and for each part at each channel;

compute a lead-time demand for each part at each location and for each part at each channel using the availability lead-times for the part;

compute a stock level for each part at each location and for each part at each channel;

determine a completely filled demand from the lead-time demands and the stock levels;

determine a partially filled demand from the lead-time demands and the stock levels; and

generate a coverage function for the parts at the locations and the channels from the completely filled demand and the partially filled demand.

17. The system of claim 16 , wherein the one or more software components are further configured to:

transfer a demand from each of the plurality of demand locations and from each of the plurality of channels to one or more of the plurality of supply locations based on the order lead-time profiles;

create virtual demand locations and virtual channels for the order lead-time demand transfers, wherein the virtual demand locations and the virtual channels represent the plurality of demand locations and the plurality of channels; and

generate a coverage function for the parts at the virtual locations and channels from the completely filled demand and the partially filled demand.

18. The system of claim 16 , wherein the one or more software components are further configured to:

optimize the coverage function; and

determine an optimal deployment of the parts at the locations for all the time periods according to the optimized coverage function.

19. The system of claim 16 , wherein the one or more software components are further configured to:

determine a maximum stock level for the parts at the locations across the all the time periods in a multi-time period model; and

compute new purchases for each part at each location in a multi-time period model.

20. The system of claim 16 , wherein the one or more software components are further configured to:

determine a replenishment policy for each part at each location and for each time period.

21. The system of claim 16 , wherein the one or more software components are further configured to:

classify the parts at each location into categories based on demand volume and cost;

generate a coverage function according to the part categories; and

determine a marginal value for minimizing the expected backorders and cost.

22. The system of claim 16 , wherein the one or more software components are further configured to:

classify intermediate locations;

group each intermediate location as echelons;

compute a total network cost according to the total landed cost of each part at each location;

use echelons for iterating coverage levels in order to find the optimal coverage levels for the intermediate locations according to the minimum total network cost; and

determine optimal coverage levels for the intermediate locations by iteratively minimizing the total network cost objective function.

23. The system of claim 16 , wherein the one or more software components are further configured to:

create one or more criticality groups of parts and service level bands based on one or more segmentation rules.

24. The system of claim 16 , wherein the one or more software components are further configured to calculate the total landed cost for each part at each location comprising a target demand location by:

computing the total landed cost for each part at a supply endpoint;

computing the total landed cost for each part at each supply location; and

computing the total landed cost for each part at each demand location according to the total landed cost for each part at the supply location.

25. The system of claim 16 , wherein the one or more software components are further configured to compute the lead-time demand for each part at each location comprising a manufacturing location by:

calculating a probability for supplying each part to each manufacturing location;

computing a process lead-time for an end product at each manufacturing location according to the probability; and

computing the lead-time demand of an end product at each manufacturing location.

26. The system of claim 16 , wherein the one or more software components are further configured to compute the lead-time demand for an end product at each manufacturing location by:

receiving an ordered list comprising at least a subset of each supply location;

calculating a probability for supplying a plurality of raw material parts to each manufacturing location; and

estimating the availability lead-time at each location based on the calculated probabilities.

27. The system of claim 16 , wherein the one or more software components are further configured to estimate the availability lead-time for an end product at each location comprising a target manufacturing location by:

determining the availability lead-time for an end product at each manufacturing location by repeating the following for a plurality of raw material parts:

estimating an availability lead-time for each raw material part at a supply endpoint;

estimating an availability lead-time for each raw material part at each supply location; and

estimating a process lead-time for the end product at each manufacturing location according to the availability lead-time for each raw material part at each supply location.

28. The system of claim 16 , wherein the one or more software components are further configured to compute a demand for a plurality of raw material parts at each location comprising a supply location by:

calculating a demand for an end product at each manufacturing location to receive a plurality of raw material parts from each supply location;

calculating a dependent demand at each supply location according to the demand for the end product at each manufacturing location;

calculating an independent demand at each supply location; and

computing the demand at each supply location based on the dependent demand and the independent demand.

29. The system of claim 16 , wherein the one or more software components are further configured to compute a demand for a plurality of raw material parts at each manufacturing location with an assembly process by:

calculating a demand for each raw material part from a demand for an end product at each manufacturing location based on a process yield;

calculating a demand for the end product at a demand endpoint;

calculating a demand for the end product at each demand location; and

calculating a demand for the end product at each supply location.

30. The system of claim 16 , wherein the one or more software components are further configured to computing the demand for a plurality of raw material parts at each location comprising a manufacturing location by:

determining a total demand by calculating a demand for each raw material from a demand for each co-product at each manufacturing location based on a process yield;

calculating a demand for each co-product at a demand endpoint;

calculating a demand for each co-product at each demand location; and

calculating a demand for each co-product at each supply location.

31. Software for deploying a plurality of parts, the software embodied in a computer-readable medium and, when executed using one or more computers is configured to:

define a plurality of locations comprising a plurality of supply locations, a plurality of manufacturing locations, a plurality of demand locations, and a plurality of channels;

compute a demand for each part at each location;

estimate an availability lead-time for each part at each location and for each part at each channel;

calculate a total landed cost for each part at each location and for each part at each channel;

compute a lead-time demand for each part at each location and for each part at each channel using the availability lead-times for the part;

compute a stock level for each part at each location and for each part at each channel;

determine a completely filled demand from the lead-time demands and the stock levels;

determine a partially filled demand from the lead-time demands and the stock levels; and

generate a coverage function for the parts at the locations and the channels from the completely filled demand and the partially filled demand.

32. The software of claim 31 , further configured to:

transfer a demand from each of the plurality of demand locations and from each of the plurality of channels to one or more of the plurality of supply locations based on the order lead-time profiles;

create virtual demand locations and virtual channels for the order lead-time demand transfers, wherein the virtual demand locations and the virtual channels represent the plurality of demand locations and the plurality of channels; and

generate a coverage function for the parts at the virtual locations and channels from the completely filled demand and the partially filled demand.

33. The software of claim 31 , further configured to:

optimize the coverage function; and

determine an optimal deployment of the parts at the locations for all the time periods according to the optimized coverage function.

34. The software of claim 31 , further configured to:

determine a maximum stock level for the parts at the locations across the all the time periods in a multi-time period model; and

compute new purchases for each part at each location in a multi-time period model.

35. The software of claim 31 , further configured to:

determine a replenishment policy for each part at each location and for each time period.

36. The software of claim 31 , further configured to:

classify the parts at each location into categories based on demand volume and cost;

generate a coverage function according to the part categories; and

determine a marginal value for minimizing the expected backorders and cost.

37. The software of claim 31 , further configured to:

classify intermediate locations;

group each intermediate location as echelons;

compute a total network cost according to the total landed cost of each part at each location;

use echelons for iterating coverage levels in order to find the optimal coverage levels for the intermediate locations according to the minimum total network cost; and

determine optimal coverage levels for the intermediate locations by iteratively minimizing the total network cost objective function.

38. The software of claim 31 , further configured to:

create one or more criticality groups of parts and service level bands based on one or more segmentation rules.

39. The software of claim 31 , further configured to calculate the total landed cost for each part at each location comprising a target demand location by:

computing the total landed cost for each part at a supply endpoint;

computing the total landed cost for each part at each supply location; and

computing the total landed cost for each part at each demand location according to the total landed cost for each part at the supply location.

40. The software of claim 31 , further configured to compute the lead-time demand for each part at each location comprising a manufacturing location by:

calculating a probability for supplying each part to each manufacturing location;

computing a process lead-time for an end product at each manufacturing location according to the probability; and

computing the lead-time demand of an end product at each manufacturing location.

41. The software of claim 31 , further configured to compute the lead-time demand for an end product at each manufacturing location by:

receiving an ordered list comprising at least a subset of each supply location;

calculating a probability for supplying a plurality of raw material parts to each manufacturing location; and

estimating the availability lead-time at each location based on the calculated probabilities.

42. The software of claim 31 , further configured to estimate the availability lead-time for an end product at each location comprising a target manufacturing location by:

determining the availability lead-time for an end product at each manufacturing location by repeating the following for a plurality of raw material parts:

estimating an availability lead-time for each raw material part at a supply endpoint;

estimating an availability lead-time for each raw material part at each supply location; and

estimating a process lead-time for the end product at each manufacturing location according to the availability lead-time for each raw material part at each supply location.

43. The software of claim 31 , further configured to compute a demand for a plurality of raw material parts at each location comprising a supply location by:

calculating a demand for an end product at each manufacturing location to receive a plurality of raw material parts from each supply location;

calculating a dependent demand at each supply location according to the demand for the end product at each manufacturing location;

calculating an independent demand at each supply location; and

computing the demand at each supply location based on the dependent demand and the independent demand.

44. The software of claim 31 , further configured to compute a demand for a plurality of raw material parts at each manufacturing location with an assembly process by:

calculating a demand for each raw material part from a demand for an end product at each manufacturing location based on a process yield;

calculating a demand for the end product at a demand endpoint;

calculating a demand for the end product at each demand location; and

calculating a demand for the end product at each supply location.

45. The software of claim 31 , further configured to compute the demand for a plurality of raw material parts at each location comprising a manufacturing location by:

determining a total demand by calculating a demand for each raw material from a demand for each co-product at each manufacturing location based on a process yield;

calculating a demand for each co-product at a demand endpoint;

calculating a demand for each co-product at each demand location; and

calculating a demand for each co-product at each supply location.

Assignments (19)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053383/0117) Recorded Nov 3, 2021
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: BLUE YONDER GROUP, INC.
Reel/Frame 058794/0776 →
RELEASE OF SECURITY INTEREST Recorded Sep 16, 2021
From: JPMORGAN CHASE BANK, N.A.
To: BLUE YONDER GROUP, INC.; BLUE YONDER, INC.; JDA SOFTWARE SERVICES, INC.; I2 TECHNOLOGIES INTERNATIONAL SERVICES, LLC; MANUGISTICS SERVICES, INC.; MANUGISTICS HOLDINGS DELAWARE II, INC.; REDPRAIRIE COLLABORATIVE FLOWCASTING GROUP, LLC; JDA SOFTWARE RUSSIA HOLDINGS, INC.; REDPRAIRIE SERVICES CORPORATION; BY BOND FINANCE, INC.; BY NETHERLANDS HOLDING, INC.; BY BENELUX HOLDING, INC.
Reel/Frame 057724/0593 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REEL 026468 FRAME NUMBER FROM 0199 TO 0119 PREVIOUSLY RECORDED ON REEL 055136 FRAME 0623. ASSIGNOR(S) HEREBY CONFIRMS THE CORRECTION ASSIGNMENT. Recorded Apr 19, 2021
From: I2 TECHNOLOGIES US, INC.
To: JDA TECHNOLOGIES US, INC.
Reel/Frame 056813/0110 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NAME OF THE CONVEYING AND RECEIVING PARTIES TO INCLUDE A PERIOD AFTER THE TERM INC PREVIOUSLY RECORDED AT REEL: 026740 FRAME: 0676. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 8, 2021
From: JDA TECHNOLOGIES US, INC.
To: JDA SOFTWARE GROUP, INC.
Reel/Frame 055257/0747 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NAME OF THE CONVEYING AND RECEIVING PARTIES TO INCLUDE A PERIOD AFTER THE TERM INC PREVIOUSLY RECORDED ON REEL 026468 FRAME 0199. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME FROM I2 TECHNOLOGIES US, INC. TO JDA TECHNOLOGIES US, INC.. Recorded Dec 12, 2020
From: I2 TECHNOLOGIES US, INC.
To: JDA TECHNOLOGIES US, INC.
Reel/Frame 055136/0623 →
SECURITY AGREEMENT Recorded Aug 3, 2020
From: BLUE YONDER GROUP, INC.
To: U.S. BANK NATIONAL ASSOCIATION
Reel/Frame 053383/0117 →
CHANGE OF NAME Recorded Apr 14, 2020
From: JDA SOFTWARE GROUP, INC.
To: BLUE YONDER GROUP, INC.
Reel/Frame 052393/0450 →
RELEASE OF SECURITY INTEREST IN PATENTS AT REEL/FRAME NO. 29556/0809 Recorded Oct 12, 2016
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: JDA SOFTWARE GROUP, INC.
Reel/Frame 040337/0356 →
SECURITY AGREEMENT Recorded Oct 12, 2016
From: RP CROWN PARENT, LLC; RP CROWN HOLDING LLC; JDA SOFTWARE GROUP, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 040326/0449 →
RELEASE OF SECURITY INTEREST IN PATENTS AT REEL/FRAME NO. 29556/0697 Recorded Oct 12, 2016
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: JDA SOFTWARE GROUP, INC.
Reel/Frame 040337/0053 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jan 2, 2013
From: JDA SOFTWARE GROUP, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 029556/0697 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jan 2, 2013
From: JDA SOFTWARE GROUP, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 029556/0809 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Dec 21, 2012
From: WELLS FARGO CAPITAL FINANCE, LLC
To: JDA TECHNOLOGIES US, INC.
Reel/Frame 029529/0812 →
MERGER Recorded Dec 1, 2011
From: N.V. ORGANON
To: MSD OSS B.V.
Reel/Frame 027307/0482 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2011
From: JDA TECHNOLOGIES US, INC.
To: JDA SOFTWARE GROUP, INC.
Reel/Frame 026740/0676 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2011
From: I2 TECHNOLOGIES US, INC
To: JDA TECHNOLOGIES US, INC
Reel/Frame 026468/0119 →
PATENT SECURITY AGREEMENT Recorded Apr 4, 2011
From: JDA TECHNOLOGIES US, INC.
To: WELLS FARGO CAPITAL FINANCE, LLC, AS AGENT
Reel/Frame 026072/0353 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO ADD ASSIGNOR NAME PREVIOUSLY RECORDED ON REEL 020552 FRAME 0962. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 27, 2008
From: NAJMI, ADEEL; VEERAPPANAICKER, DHARMARAJ; KOHLI, ASEEM
To: I2 TECHNOLOGIES US, INC.
Reel/Frame 020570/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 25, 2008
From: NAJMI, ADEEL; VEERAPPANAICKER, DHARMARAJ
To: I2 TECHNOLOGIES US, INC.
Reel/Frame 020552/0962 →