# US 7,610,212 B2 · System and method for determining a demand promise date based on a supply available date

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 7,610,212 B2
- Document ID: US7610212B2
- Status: Granted
- Kind: B2
- Application number: 10/438,932
- Filed: 2003-05-16
- Published: 2003-11-20
- Granted: 2009-10-27
- Earliest claimed: 2002-05-17
- Assignees: Kinaxis Holdings Inc.
- Inventors: Robert Duncan Klett; James Robert Crozman; Vasile Gelu Ticala
- Web page: https://patentgrep.com/patent/US7610212B2

## CPC

- G06Q 10/087: Inventory or stock management, e.g. order filling, procurement or balancing against orders
- G06Q 10/0631: Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q 10/06315: {Needs-based resource requirements planning or analysis}
- G06Q 10/0872: {using inventory planning}
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR

## Abstract

The present invention provides a method and a system for determining a promise date for a demand whose supply depends on constraints in a business environment. According to the present invention, information related to the business environment is stored within a data storage means. The present invention provides a processor coupled to the data storage means from which it requests and retrieves data. The processor also determines a plan date for each supply in the supply structure. The plan date is determined, from a highest level to a lowest level in the supply structure, based on existing and planned supply in the supply structure. After determining a plan date, the processor determines an available date for each supply in the supply structure. The available date is determined, from the lowest level to the highest level in the supply structure, based on the availability of each supply in the supply structure, and the plan date determined for each supply. Finally, the processor generates a promise date for the demand for the item based on each available date determined for a corresponding supply in the supply structure. The present invention advantageously generates promise dates based on information available in real-time on both the supply structure and the capacity constraints for a given item.

## Claims

### Claim 1

A computer-readable medium having computer-readable information stored thereon, for determining respective promise dates for two or more demands produced for an item based on a supply structure for fulfilling the demands, and having stored thereon computer-executable instructions which, when executed by a processor, cause the processor to perform the steps of:
(a) associating an assigned priority value to each of the demands produced for the item;
(b) for each supply in the supply structure, determining a plan date, based on an existing and planned supply in the supply structure, from a highest level to a lowest level in the supply structure until plan dates have been determined for all supplies in the supply structure for the two or more demands;
(c) determining available dates for the item based on an availability of each supply in the supply structure, wherein the available dates are determined based on the following steps:
(c1) sorting a supply list by supply availability;
(c2) sorting a demand list by plan date;
(c3) determining when a last available supply on the sorted supply list fulfills a last planned demand on the sorted demand list by its plan date;
(c4) for the last planned demand fulfilled by its plan date, allocating the last available supply to the last planned demand based on its plan date;
(c5) for the last planned demand not fulfilled by its plan date, allocating the last available supply to an unfulfilled demand having a lowest assigned priority value;
(c6) recording the allocation in steps (c4) and (c5) in an allocation record;
(c7) repeating steps (c3) to (c6) successively for each supply on the sorted supply list until lowest level available dates are determined for the lowest level of the supply structure; and
(c8) propagating the lowest level available dates to a next level in the supply structure, repeating steps (c1) to (c7) to provide next level available dates;
wherein steps (c1) through (c8) are executed for each supply in the supply structure successively from the lowest level to the highest level in the supply structure; and
(d) generating the respective promise dates for the demands based on the available dates determined in step (c), whereby the respective promise dates are committed to the demands produced for the item.

### Claim 2 (depends on 1)

The computer-readable medium according to claim 1, further containing computer-readable and computer executable instructions, wherein in step (b) the plan dates are further determined based on the availability of at least one capacity constraint required to fulfill at least one supply.

### Claim 3 (depends on 1)

The computer-readable medium according to claim 1, further containing computer-readable and computer executable instructions, wherein in step (d) a given promise date is generated for a given demand by using a sub-priority to maintain at least one promise date previously committed for a previous demand and wherein the at least one promise date previously committed for the previous demand is at least equal in priority value to the priority value assigned to the given demand.

### Claim 4 (depends on 2)

The computer-readable medium according to claim 2, further containing computer-readable and computer executable instructions, wherein in step (d) a given promise date is generated for a given demand by using a sub-priority to maintain at least one promise date previously committed for a previous demand and wherein the at least one promise date previously committed for the previous demand is at least equal in priority value to the priority value assigned to the given demand.

### Claim 5 (depends on 1)

The computer-readable medium according to claim 1, further containing computer-readable and computer executable instructions for further including the steps of:
in step (c), determining an excess supply based on a quantity of supply that exists to fulfill the demands; and
in step (c4), when allocating on-time supplies, setting aside remaining ones of the excess supply thereby allowing earlier supplies to fulfill earlier planned demands as early as possible.

### Claim 6 (depends on 1)

The computer-readable medium according to claim 1, further containing computer-readable and computer executable instructions, wherein in step (c), the available dates are further determined based on the availability of at least one capacity constraint required to fulfill at least one supply and wherein the at least one capacity constraint has an availability defined as a rate per period.

### Claim 7 (depends on 2)

The computer-readable medium according to claim 2, further containing computer-readable and computer executable instructions, wherein in step (c), the available dates are further determined based on the availability of at least one capacity constraint required to fulfill at least one supply and wherein the at least one capacity constraint has an availability defined as a rate per period.

### Claim 8 (depends on 6)

The computer-readable medium according to claim 6, further containing computer-readable and computer executable instructions, wherein the availability of the at least one capacity constraint changes over time.

### Claim 9 (depends on 7)

The computer-readable medium according to claim 7, further containing computer-readable and computer executable instructions, wherein the availability of the at least one capacity constraint changes over time.

### Claim 10 (depends on 1)

The computer-readable medium according to claim 1, further containing computer-readable and computer executable instructions, wherein in step (c), the available dates are further determined based on the availability of at least one capacity constraint required to fulfill at least one supply and wherein the at least one capacity constraint has a cumulative maximum value.

### Claim 11 (depends on 2)

The computer-readable medium according to claim 2, further containing computer-readable and computer executable instructions, wherein in step (c), the available dates are further determined based on the availability of at least one capacity constraint required to fulfill at least one supply and wherein the at least one capacity constraint has a cumulative maximum value.

### Claim 12 (depends on 1)

The computer-readable medium according to claim 1, further containing computer-readable and computer executable instructions, wherein at least one supply in the supply structure has a plurality of sources for fulfilling the supply.

### Claim 13 (depends on 2)

The computer-readable medium according to claim 2, further containing computer-readable and computer executable instructions, wherein at least one supply in the supply structure has a plurality of sources for fulfilling the supply.

### Claim 14 (depends on 1)

The computer-readable medium according to claim 1, further containing computer-readable and computer executable instructions, further including the step of, prior to step (a), queuing the demands according to a sub-priority value assigned to each supply and each demand for the item, wherein the sub-priority value is defined by the sequence in which the each supply and the each demand for the item was committed, whereby in step (d) the promise dates are generated while maintaining at least one promise date previously committed for a previous demand.

### Claim 15 (depends on 2)

The computer-readable medium according to claim 2, further containing computer-readable and computer executable instructions, further including the step of, prior to step (a), queuing the demands according to a sub-priority value assigned to each supply and each demand for the item, wherein the sub-priority value is defined by the sequence in which the each supply and the each demand for the item was committed, whereby in step (d) the promise dates are generated while maintaining at least one promise date previously committed for a previous demand.

### Claim 16 (depends on 1)

The computer-readable medium according to claim 1, further containing computer-readable and computer executable instructions, wherein, following step (d), further comprising the steps of:
(d1) retrieving the allocation record of the each supply;
(d2) providing at least one peg record for each link determined from the highest level demand to a next highest demand;
(d3) tracking the each supply allocated to the demand, in step (d1), as a path of links, from the highest level to the lowest level in the supply structure; and
(d4) maintaining a record for the path of links determined in step (d3);
wherein step (d2) is repeated for the highest level to the lowest level of the supply structure.

### Claim 17 (depends on 2)

The computer-readable medium according to claim 2, further containing computer-readable and computer executable instructions, wherein, following step (d), further comprising the steps of:
(d1) retrieving the allocation record of the each supply;
(d2) providing at least one peg record for each link determined from the highest level demand to a next highest demand;
(d3) tracking the each supply allocated to the demand, in step (d1), as a path of links, from the highest level to the lowest level in the supply structure; and
(d4) maintaining a record for the path of links determined in step (d3);
wherein step (d2) is repeated for the highest level to the lowest level of the supply structure.

### Claim 18 (depends on 1)

The computer-readable medium according to claim 1, further containing computer-readable and computer executable instructions, wherein in step (c), the available dates are further determined based on the availability of at least one capacity constraint required to fulfill at least one supply.

### Claim 19 (depends on 2)

The computer-readable medium according to claim 2, further containing computer-readable and computer executable instructions, wherein in step (c), the available dates are further determined based on the availability of at least one capacity constraint required to fulfill at least one supply.

### Claim 20 (depends on 1)

The computer-readable medium according to claim 1, further containing computer-readable and computer executable instructions, wherein in step (d) the promise dates are generated while maintaining at least one promise date previously committed for a previous demand.

### Claim 21 (depends on 2)

The computer-readable medium according to claim 2, further containing computer-readable and computer executable instructions, wherein in step (d) the promise dates are generated while maintaining at least one promise date previously committed for a previous demand.

### Claim 22 (depends on 1)

The computer-readable medium according to claim 1, further containing computer-readable and computer executable instructions, wherein in step (c5) the last available supply is allocated to a last planned one of a plurality of unfulfilled demands having a same lowest assigned priority value.

### Claim 23 (depends on 1)

The computer-readable medium according to claim 1, further containing computer-readable and computer executable instructions, wherein in step (c5) the last available supply is allocated amongst a plurality of unfulfilled demands having a same lowest assigned priority value.

### Claim 24 (depends on 1)

The computer-readable medium according to claim 1, further containing computer-readable and computer executable instructions for further including the steps of:
in step (c), determining an excess supply based on a quantity of supply that exists to fulfill the demands; and
in step (c5), when allocating late supplies, setting aside remaining ones of the excess supply as available for future demands.

### Claim 25 (depends on 1)

The computer-readable medium according to claim 1, further containing computer-readable and computer executable instructions for further including the steps of, in step (c):
determining an excess supply based on a quantity of supply that exists to fulfill the demands; and
tracking the excess supplies to fulfill earlier planned demands.
