IP Library Granted Patent US 6,988,104
Granted Patent B2
US 6,988,104 · App. 09/825,083 · Granted Jan 17, 2006

System and method for allocating data in a hierarchical organization of data

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 6,988,104
App. No.
09/825,083
Granted
Jan 17, 2006
Kind
B2
Abstract

A method for allocating data in a hierarchical organization of data ( 16 ) includes determining new values for one or more parents ( 200, 220 ) in the organization of data ( 16 ) and determining current values for one or more children ( 210, 230 ) in the organization of data ( 16 ). Each child ( 210, 230 ) is hierarchically related to one or more of the parents ( 200, 220 ). The method also includes determining the relationship between each parent ( 200, 220 ) and its children ( 210, 230 ) and determining a variation for each child ( 210, 230 ). Furthermore, the method includes determining a new value for each child ( 210, 230 ) by allocating the new values of the parents ( 200, 220 ) to the children based on the parent-child relationships, the current values of the children ( 210, 230 ), and the variations of the children ( 210, 230 ).

Claims (210)

1. A computer-implemented method for allocating data in a hierarchical organization of data, comprising:

determining new values for one or more parents in the organization of data;

determining current values for one or more children in the organization of data, each child being hierarchically related to one or more of the parents;

determining the relationship between each parent and its children;

determining a variation for each child; and

determining a new value for each child by allocating the new values of the parents to the children based on the parent-child relationships, the current values of the children, and either the sum of the variations of the children or a matrix of the variations of the children.

2. The method of claim 1 , wherein the new values of the parents represent demand forecasts to be allocated to the children.

3. The method of claim 1 , wherein the variation of each child is calculated using statistical techniques based on the historical variation in the values of the child over a specified time period.

4. The method of claim 1 , wherein the new value of each child is determined using the equation:

{overscore (x)}′={overscore (x)}+ΣR T ( RΣR T ) −1 ( {overscore (y)}−R{overscore (x)} ),

in which {overscore (x)}′ comprises a vector of the new values of the children, {overscore (x)} comprises a vector of the current values of the children, Σ comprises a matrix of the variations of the children, R comprises a matrix identifying the parent-child relationships, R T comprises the transpose of R, and {overscore (y)} comprises a vector of the new values of the parents.

5. The method of claim 1 , wherein the new value of each child is determined using the equation:

x

_

i

=

x

_

i

+

σ

i

,

i

i

σ

i

,

i

(

y

_

-

i

x

_

i

)

,

in which {overscore (x)}′ i comprises the new value of the child i, {overscore (x)} i comprises the current value associated with a child i, σ i,i comprises the variation of the child i, Σ i σ i,i comprises the sum of the variations of the children, Σ i {overscore (x)} i comprises the sum of the current values of the children, and {overscore (y)} comprises the new value of the parent of the child i.

6. The method of claim 1 , wherein:

the organization of data comprises one or more dimensions; and

the parents and children are all members of the same dimension within the organization of data.

7. The method of claim 1 , wherein:

the organization of data comprises multiple dimensions; and

the parents and children are each associated with multiple dimensions of the organization of data.

8. The method of claim 7 , wherein the parents and children each represent a storage location within the organization of data that is uniquely identified by the positions of members in two or more of the dimensions.

9. The method of claim 7 , wherein the organization of data comprises at least two dimensions selected from the group consisting of a time dimension, a product dimension, and a geography dimension.

10. A system for allocating data in a hierarchical organization of data, comprising:

data storage including:

one or more parents having associated values; and

a plurality of children having associated values, each child being hierarchically related to one or more of the parents; and

a server coupled to the organization of data and operable to:

receive a new value for one or more of the parents;

receive a current value for one or more of the children;

receive an identification of the relationship between each parent and its children;

receive a variation for each child; and

determine a new value for each child by allocating the new values of the parents to the children based on the parent-child relationships, the current values of the children, and either the sum of the variations of the children or a matrix of the variations of the children.

11. The system of claim 10 , wherein the new values of the parents represent demand forecasts to be allocated to the children.

12. The system of claim 10 , wherein the variation of each child is calculated using statistical techniques based on the historical variation in the values of the child over a specified time period.

13. The system of claim 10 , wherein the server is operable to determine the new value of each child using the equation:

{overscore (x)}′={overscore (x)}+ΣR T ( RΣR T ) −1 ( {overscore (y)}−R{overscore (x)} ),

in which {overscore (x)}′ comprises a vector of the new values of the children, {overscore (x)} comprises a vector of the current values of the children, Σ comprises a matrix of the variations of the children, R comprises a matrix identifying the parent-child relationships, R T comprises the transpose of R, and {overscore (y)} comprises a vector of the new values of the parents.

14. The system of claim 10 , wherein the server is operable to determine the new value of each child is determined using the equation:

x

_

i

=

x

_

i

+

σ

i

,

i

i

σ

i

,

i

(

y

_

-

i

x

_

i

)

,

in which {overscore (x)}′ i comprises the new value of the child i, {overscore (x)} i comprises the current value associated with a child i, σ i,i comprises the variation of the child i, Σ i σ i,i comprises the sum of the variations of the children, Σ i{overscore (x)} i comprises the sum of the current values of the children, and {overscore (y)} comprises the new value of the parent of the child i.

15. The system of claim 10 , wherein:

the organization of data comprises one or more dimensions; and

the parents and children are all members of the same dimension within the organization of data.

16. The system of claim 10 , wherein:

the organization of data comprises multiple dimensions; and

the parents and children are each associated with multiple dimensions of the organization of data.

17. The system of claim 16 , wherein the parents and children each represent a storage location within the organization of data that is uniquely identified by the positions of members in two or more of the dimensions.

18. The system of claim 16 , wherein the organization of data comprises at least two dimensions selected from the group consisting of a time dimension, a product dimension, and a geography dimension.

19. Software for allocating data in a hierarchical organization of data, the software embodied in a computer-readable medium and operable to:

determine new values for one or more parents in the organization of data;

determine current values for one or more children in the organization of data, each child being hierarchically related to one or more of the parents;

determine the relationship between each parent and its children;

determine a variation for each child; and

determine a new value for each child by allocating the new values of the parents to the children based on the parent-child relationships, the current values of the children, and either the sum of the variations of the children or a matrix of the variations of the children.

20. The software of claim 19 , wherein the new values of the parents represent demand forecasts to be allocated to the children.

21. The software of claim 19 , wherein the variation of each child is calculated using statistical techniques based on the historical variation in the values of the child over a specified time period.

22. The software of claim 19 , wherein the new value of each child is determined using the equation:

{overscore (x)}′={overscore (x)}+ΣR T ( RΣR T ) −1 ( {overscore (y)}−R{overscore (x)} ),

in which {overscore (x)}′comprises a vector of the new values of the children, {overscore (x)} comprises a vector of the current values of the children, Σ comprises a matrix of the variations of the children, R comprises a matrix identifying the parent-child relationships, R T comprises the transpose of R, and {overscore (y)} comprises a vector of the new values of the parents.

23. The software of claim 19 , wherein the new value of each child is determined using the equation:

x

_

i

=

x

_

i

+

σ

i

,

i

i

σ

i

,

i

(

y

_

-

i

x

_

i

)

,

in which {overscore (x)}′ i comprises the new value of the child i, {overscore (x)} i comprises the current value associated with a child i, σ i,i comprises the variation of the child i, Σ i σ i,i comprises the sum of the variations of the children, Σ i{overscore (x)} i comprises the sum of the current values of the children, and {overscore (y)} comprises the new value of the parent of the child i.

24. The software of claim 19 , wherein:

the organization of data comprises one or more dimensions; and

the parents and children are all members of the same dimension within the organization of data.

25. The software of claim 19 , wherein:

the organization of data comprises multiple dimensions; and

the parents and children are each associated with multiple dimensions of the organization of data.

26. The software of claim 25 , wherein the parents and children each represent a storage location within the organization of data that is uniquely identified by the positions of members in two or more of the dimensions.

27. The software of claim 25 , wherein the organization of data comprises at least two dimensions selected from the group consisting of a time dimension, a product dimension, and a geography dimension.

28. A system for allocating data in a hierarchical organization of data, comprising:

means for determining new values for one or more parents in the organization of data;

means for determining current values for one or more children in the organization of data, each child being hierarchically related to one or more of the parents;

means for determining the relationship between each parent and its children;

means for determining a variation for each child; and

means for determining a new value for each child by allocating the new values of the parents to the children based on the parent-child relationships, the current values of the children, and either the sum of the variations of the children or a matrix of the variations of the children.

29. A computer-implemented method for allocating data in a hierarchical, multi-dimensional organization of data, comprising:

determining demand forecasts for one or more parents in the organization of data;

determining current demand values for one or more children in the organization of data, each child being hierarchically related to one or more of the parents;

determining the relationship between each parent and its children, the parents and children each representing a storage location within the organization of data that is uniquely identified by the positions of members in two or more dimensions of the organization of data;

determining a variation for each child, the variation calculated using statistical techniques based on the historical variation in the values of the child over a specified time period; and

determining a new demand value for each child by allocating the demand forecasts for the parents to the children based on the parent-child relationships, the current demand values of the children, and either the sum of the variations of the children or a matrix of the variations of the children.

30. The method of claim 29 , wherein the new demand value of each child is determined using the equation:

{overscore (x)}′={overscore (x)}+ΣR T ( RΣR T ) −1 ( {overscore (y)}−R{overscore (x)} ),

in which {overscore (x)}′ comprises a vector of the new demand values of the children, {overscore (x)} comprises a vector of the current demand values of the children, Σ comprises a matrix of the variations of the children, R comprises a matrix identifying the parent-child relationships, R T comprises the transpose of R, and {overscore (y)} comprises a vector of the demand forecasts of the parents.

31. A system for allocating data in a hierarchical, multi-dimensional organization of data, comprising:

a hierarchical, multi-dimensional organization of data including:

one or more parents having demand associated values; and

a plurality of children having associated demand values, each child being hierarchically related to one or more of the parents;

the parents and children each representing a storage location within the organization of data that is uniquely identified by the positions of members in two or more dimensions of the organization of data; and

a server coupled to the organization of data and operable to:

receive a forecasted demand value for one or more of the parents;

receive a current demand value for one or more of the children;

receive an identification of the relationship between each parent and its children;

receive a variation for each child, the variation calculated using statistical techniques based on the historical variation in the values of the child; and

determine a new demand value for each child by allocating the demand forecasts of the parents to the children based on the parent-child relationships, the current demand values of the children, and either the sum of the variations of the children or a matrix of the variations of the children.

32. The system of claim 31 , wherein the new demand value of each child is determined using the equation:

{overscore (x)}′={overscore (x)}+ΣR T ( RΣR T ) −1 ( {overscore (y)}−R{overscore (x)} ),

in which {overscore (x)}′ comprises a vector of the new demand values of the children, {overscore (x)} comprises a vector of the current demand values of the children, Σ comprises a matrix of the variations of the children, R comprises a matrix identifying the parent-child relationships, R T comprises the transpose of R, and {overscore (y)} comprises a vector of the demand forecasts of the parents.

33. Software for allocating data in a hierarchical organization of data, the software embodied in a computer-readable medium and operable to:

determine demand forecasts for one or more parents in the organization of data;

determine current demand values for one or more children in the organization of data, each child being hierarchically related to one or more of the parents;

determine the relationship between each parent and its children, the parents and children each representing a storage location within the organization of data that is uniquely identified by the positions of members in two or more dimensions of the organization of data;

determine a variation for each child, the variation calculated using statistical techniques based on the historical variation in the values of the child; and

determine a new demand value for each child by allocating the demand forecasts for the parents to the children based on the parent-child relationships, the current demand values of the children, and either the sum of the variations of the children or a matrix of the variations of the children.

34. The software of claim 33 , wherein the new demand value of each child is determined using the equation:

{overscore (x)}′={overscore (x)}+ΣR T ( RΣR T ) −1 ( {overscore (y)}−R{overscore (x)} ),

in which {overscore (x)} comprises a vector of the new demand values of the children, {overscore (x)} comprises a vector of the current demand values of the children, Σ comprises a matrix of the variations of the children, R comprises a matrix identifying the parent-child relationships, R T comprises the transpose of R, and {overscore (y)} comprises a vector of the demand forecasts of the parents.

Assignments (10)
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 →
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 →