METHOD FOR COMPUTERIZED SUPPLY CHAIN PLANNING

Abstract: A data model for a supply chain is provided whereby individual working steps in a production process are defined as activities, and organized groups of such activities are defined as orders. Activities are allocated to no more than one resource and contain information concerning the start and finish time for the activity, any resource on which the activity is currently scheduled, and a list of alternative resources, if any. Activities are linked to each other via auxillary objects, which contain information concerning the minimum and maximum time between activities. Orders may contain input and/or output interface nodes, representing the materials consumed and produced by the order. Each output interface node representing a quantity of material created from one order is linked via an auxiliary object to respective input interface node or nodes form other orders that are scheduled to receive that material. Order anchors are defined whereby a planning algorithm can easily reference an order by its order number in a database table. Planning algorithm can easily reference an order by its order number in a database table. Planning object anchors allow the planning algorithm to access all the orders for a given material, and resource anchors permit access to all activities scheduled for that resource.

Description: METHOD FOR COMPUTERIZED SUPPLY CHAIN PLANNING Background of the invention Supply chain planning ("SCP"), which comprises the logistical plan of an in-house supply chain, is essential to the success of many of today's manufacturing firms. Most manufacturing firms rely on control of their production plants using computerized supply chain planning in some form to ensure the timely delivery of products in response to customer demands. Typically, supply chain planning is hierarchical in nature, extending from distribution and production planning driven by customer orders, to materials and capacity requirements planning, to shop floor scheduling, manufacturing execution, and deployment of products. Supply chain planning ensures the smooth functioning of different aspects of production, from the ready supply of components to meet production demands to the timely transportation of finished goods from the factory to the customer. The modern supply chain often encompasses a vast array of data. The planning applications that create and dynamically revise plans in the supply chain in response to changing demands and capacity require rapid access to data concerning the flow of materials through the supply chain. The efficient operation of the supply chain depends upon the ability of the various plans to adjust to changes, and the way in which the required data is stored determines the ease with which it can be accessed. In the conventional relational model, supply chain data is stored in multiple relational database tables. If a parameter of a manufacturing order is changed, all of the aspects of the supply chain affected by such change must be re-calculated using the relational tables. Before a planning algorithm can change the date and/or quantity of a manufacturing order in response to changing capacities, for example, it must take into account the effect that the date and/or quantity change will have on other production and sales orders. Such a calculation is very complex, and requires that the algorithm have access to data concerning all the other orders, materials and resources that would be affected by the change. In the conventional model that information must be calculated by tracing through relational database tables. Such calculations are cumbersome and delay planning functions unnecessarily . There is therefore a need for all data relevant to supply chain planning to be made available by a computerized method in the most efficient and usable manner possible so as to reduce drastically the runtime of the planning functions, thus allowing the required control of production processes with given computer resources in an improved manner. Summary of the invention To cope with this need the present invention relates to a data model for storing objects that are relevant for planning the logistical processes along the entire supply chain of a company. A data structure is defined whereby individual working steps in the production process are defined as activities, and organized groups of such activities are defined as orders. Activities are allocated to no more than one resource, if any, and contain information concerning the start and finish time for the activity, any resource on which the activity is currently scheduled, and a list of alternative resources, if any. Activities representing a time calculation only are not required to correspond to a resource. Activities are linked to each other via auxiliary objects, which contain information concerning the minimum and maximum time between activities. Orders may contain input and/or output interface nodes, representing the materials consumed and produced by activities within the order. An output interface node representing a quantity of material created from one order is linked via an auxiliary object to respective input interface node or nodes from other orders that require that material . Order anchors are defined whereby a planning algorithm can easily reference an order in the data structure by its order number in a database table. Planning object anchors allow the planning algorithm to access all the orders for a given material, and resource anchors permit access to all activities scheduled for that resource. More specifically the invention provides a method for computerized supply chain planning, comprising a data model, said data model comprising at least one order which comprises at least one activity, wherein each of said at least one activity represents a working step that is indivisible from a production planning perspective; each of said at least one activity is linked to a reference to all immediately subsequent activities of said order; and each of said at least one activity is linked to a reference to all immediately preceding activities of said order. Preferred embodiments are defined in the subclaims. In summary, the following features and achievements of supply chain planning using the instant data model may be noted: The invention allows to store manufacturing process data so as to provide planning algorithms and applications programs with the most efficient access possible to the data that they require . The data are stored in a logical manner that reflects the progress of materials and orders along the supply chain. Discrete data elements representing individual working steps in the production process are defined, and the relationships between said elements are stored. Specific information about each working step is linked with those data elements, including the start time, finish time, and the resources upon which the working step is performed or alternatively may be performed. Groups of working steps in the manufacturing process are organized as objects that can be accessed by planning algorithms, and the relationships between said groups of working steps are stored. A planning algorithm has efficient access to any organized group of working steps in the production process by providing a database table whereby each of the groups of working steps is referenced to its location in the data structure. A planning algorithm also has efficient access to the working step performed by a given resource at a specific time, by providing a database table whereby the dates and times of all working steps performed by each resource are referenced to that resource. A planning algorithm furthermore has efficient access to organized groups of working steps involved in creating or consuming a specific material, by providing a database table whereby information identifying the material is referenced to the input or output of each such organized group of working steps . Brief Description of the Drawings Figure 1 is a representation of the relationship between an order and its activities. Figure 2 is a representation of the fusing of activities to make operations. Figure 3 is a representation of the input and output interface nodes of an order. Figure 4 is a representation of input activities, output activities, and activities with no input or output . Figure 5 is a representation of how temporal constraints between activities are modeled. Figure 6 is a representation of how temporal constraints between orders are modeled. Figure 7 is a representation of a simple order network with pegging. Figure 8 is a representation of how pegging between orders is modeled. Figure 9 is a representation of an order anchor and an operation anchor. Figure 10 is a representation of a planning object anchor . Figure 11 is a representation of a resource anchor. Detailed Description of the Drawings As shown in Figure 1, an order 10 represents an organizational unit that may group together several activities 11. Each order points to the first activity and the last activity of its activity network. Thus, order 10 points to activity 12 and activity 13. Each activity 11 contains a reference 14 to its order. As depicted in Figure 2, related activities such as a chain of activities 11a, lib, and lie that must be executed in order may be grouped together into an "operation" 20 to avoid having to map each activity individually on a planning table. An order, such as order 10, may have one or more input interface nodes 30 and/or one or more output interface nodes 31, as shown in Figure 3. Each input interface node 30 represents one material. An input interface node also has attributes containing information as to the quantity of the material required, the time requirement of the material, and the shortage of that material, which is derived from the difference between the quantity of material required and the quantity that it delivered by other orders or stock. Each output interface node 31 has similar attributes, such as type of material created, the quantity of the material, the time availability of the material, and the surplus of that material, which is derived from the quantity of material produced that is not yet delivered to other orders . Each input interface node 30 may refer to the activity 12, if any, in which the material that it represents is consumed, and each output interface node 31 points to the activity 13, if any, in which the material that it represents is created. If an activity 12 consumes a material, all input materials of this activity can be traced via arrow marked with dashes and dots 32a that points from activity 12 to input interface node 30. If input activity 12 consumes more than one material, arrow 32b joins input interface node 30a to the next input interface node 30b, which links on the same input activity 12. The chain of input interface nodes 30, which can have an infinite length, allows to ascertain which materials are required for the order in question, which means that the bill of materials for the output materials can be determined. Similarly, the output materials of an activity can be traced via arrow marked with dashes and dots 34 joining the activity with the first output interface node 31 of the activity 13. If there are several output materials, then an arrow 33 joins output interface node 31a to the next output interface node 31b, which represents the second material created. Like the input interface nodes 30, this chain can have an infinite length. Figure 4 illustrates order 10 having activities 41 with no input or output materials, and also activities such as assembly process 42 that both consume and create materials. Stock or a purchase order of a material is modeled by an order with one output interface node 31 and with no input interface nodes or activities. If the capacity of the vendor is to be taken into account in modeling a purchase order, however, the purchase order must contain at least one activity representing the available capacity of the vendor (as accurately as possible) . A plurality of purchase orders may be grouped into a "schedule line", which is modeled as a purchase order with several output interface nodes, each with a different delivery time. Customer requirements mirror purchase orders : each order has one input interface node 30, but no output interface nodes or activities. Orders that consume materials such as customer orders are modeled as "issuing elements", while orders that create materials are modeled as "receiving elements", allowing both types of orders to be modeled as objects similar to other components in the SCP model, thereby saving the need to create additional algorithms to operate on the model . An order without input or output interface nodes may exist, for example, as an order representing a test or maintenance on a resource . Links may also be created between successive activities, said links containing references not only to successor activities, but also to the minimum and maximum time between activities. These temporal constraints can exist both between activities in the same order (intra-order constraints) , and between activities belonging to different orders (cross-order constraints) . Figure 5 illustrates intra-order temporal constraints between activities. As shown in Figure 5a, activity lid has three successor activities lie, llf, and llg. Edges 50, 51 and 52 representing the temporal constraints have attributes, which are the minimum and maximum time interval between activities, and the type of temporal constraint, such as start-start, start-finish, finishfinish, or finish-start. References to successive activities are modeled by following the full and dashed straight arrows. In Figure 5b, starting from activity lid, first follow the arrow "succ_edge" 51 to reach the first successor activity from the small square 53 along the edge "succ_act" 52. This process is repeated from the first small square in order to reach all other successor activities successively. The small squares 53 are symbols of auxiliary objects, which store the references to the successor activities, the next auxiliary object, and all the attributes of the temporal constraint between activities. The same technique can be used to model predecessor constraints, for example by following the curved arrows "pred_edge" 54 and "pred_act" 55 to find the predecessors of activity llh. Cross-order temporal constraints are illustrated in Figure 6. A first order 61 and a second order 62 each contain three activities 11. There is a cross-order temporal constraint between activity llj of first order 61 and activity lln of second order 62. This constraint is mapped in the same way as described above for an intra-order temporal constraint, showing that activity llj has successor activities Ilk and llo, and that activity llo has predecessor activities llj and lln. 10 Similarly, "pegging" links two orders wherein one of the orders supplies a material consumed by the other order. Pegging tracks the type and quantity of material supplied by one order (the "subordinate order") to another order (the "superior order"). Pegging allows to ascertain the superior and subordinate orders for any given order at any given time. If the dates of an order are rescheduled, pegging allows all other orders influenced by this change to be updated. Figure 7 illustrates an example of pegging between orders, consisting of five orders 71, 72, 73, 74 and 75 that produce or consume materials Ml, M2 and/or M3. As shown, for example, one piece each of M2 and M3 is required to produce Ml . Next to each input interface node 30 respective attributes are shown which are the required quantity and the requirements date. Next to each output interface 31 node the shown attributes are the quantity created and the availability date. For example, order 71 produces 100 M2 , which is sufficient to satisfy the demands of orders 72 and 73 producing Ml. The demand of order 73 is satisfied by orders 71 and 75. As shown in Figure 8, relationships between orders are mapped in the same manner as are temporal constraints between activities. The orders which M2 order 71 supplies can be found by starting from output interface node 31 of the M2 order 71 and alternately following the full straight arrows ("succ_edge") 51 and the dashed straight arrows ( "succ_act" ) 52. Similarly, the orders that supply Ml order 73 can be found by starting from the input interface nodes 30 of Ml order 73, and alternately following the full curved arrows ( "pred_edge" ) 54 and dashed arrows ( "pred_output " ) 55 to output interface node 31 of the supplying orders 71 and 75. 11 While pegging can link a large network of orders, not all orders have relationships to each other. Accordingly, the SCP network is usually a collection of disjunctive subnetworks, making it difficult to scan the whole network to locate a specific order. Accordingly, an "order anchor" 90 as shown in Figure 9 can provide direct access to an order 10 or group of orders in the SCP network via an "order number" 91. This information is preferably stored in a RAM-buffered relational database table with a primary index for the order number and a secondary index for the reference to the order in the network, or object identity ("OID") 92. Similarly, an "operation anchor" 93 can provide direct access to an operation 20, or fused activities, within an order 10. The key 97 of the operation anchor 93 is the OID 92 for order 10, which is referenced to the predetermined operation number 94, an operation number within that order 95, and the first activity 96 of the respective operation 20. So for an application program to access a certain operation 20 of an order 10, it must first use the order anchor 90 to determine the OID 92 for the order, then use the operation anchor 93 to find the first activity 96 of the operation 20 that it is seeking. Planning object anchors 100, illustrated in Figure 10, enable an application program to determine efficiently all the orders 10 for a given material. Each material is identified in a relational database table according to its material number 101, plant 102, storage location 103, and batch 104, collectively designated as a "planning object". Planning object anchors in table 109 reference to first input interface node 105 for material M4 , and first output interface node 106 for material Ml. All input interface nodes 30 and output interface nodes 31 of 12 each material are kept in doubly concatenated lists which are sorted according to requirements and availability dates, as shown in Figure 10. Thus, it is possible to select all receiving and issuing elements for each material or "planning object", which can be important for materials requirements planning. Since each activity preferably corresponds to one specific resource, a resource anchor is provided to enable an application program to determine all activities for a specific resource. Figure 11 depicts a resource anchor 110 modeled as a relational database table 119 that references each resource number 111 to the corresponding first activity A2 scheduled on that resource. The first activity A2 112 is then linked to the next activity A3 113 scheduled on the same resource, which is in turn linked to subsequent activities A5 115 and A8 118 in chronological order according to schedule time. This facilitates the scheduling of new activities on particular resources. For example, in order to schedule a new activity on a resource, an application program must first check the activity immediately before and the activity immediately after the proposed time for the new activity to determine whether there is sufficient time to perform the new activity on that resource. Since resource anchor 110 stores all activities of a particular resource chronologically referenced to that resource, this information is easily and rapidly accessible to an applications program.

Claims: 13 Claims Method for computerized supply chain planning, comprising a data model, said data model comprising at least one order which comprises at least one activity, wherein: each of said at least one activity represents a working step that is indivisible from a production planning perspective; each of said at least one activity is linked to a reference to all immediately subsequent activities of said order; and each of said at least one activity is linked to a reference to all immediately preceding activities of said order. The method of claim 1, wherein said at least one order comprises at least one of one or more input interface nodes, wherein each input interface node represents a material consumed by said at least one order, each input interface node being linked to all activities that consume said material; and one or more output interface nodes, wherein each output interface node represents a material created by said at least one order, each output interface node being linked to all activities that create said material . 14 The method of claim 1, wherein said data model comprises a plurality of orders and each output interface node of a first order is linked to a reference to a respective input interface node of each subsequent order scheduled to consume the material associated with said output interface node of said first order. The method of any one of claims 1 to 3 , wherein said data model comprises an order in which said reference to all immediately preceding activities and said reference to all immediately subsequent activities each have at least two attributes, said at least two attributes including (i) the minimum and maximum time interval between activities and (ii) the type of temporal constraint . The method of any one of claims 1 to 4 , wherein said data model comprises an order in which each of said at least one activity has at least four attributes, said at least four attributes including (i) a start and (ii) finish time, a (iii) reference to the resource on which the activity is currently scheduled, and (iv) a reference to a list of one or more alternative resources. The method of any one of claims 2 to 5, wherein said data model comprises an order in which each input interface node contains information regarding a required material, required quantity, the time at which said required material is required, and any shortage of said required material, said shortage defined as the difference between the required quantity and the quantity of said required material that is delivered by other orders or stock, and vo co 1 ≤; cπ 3 Ω P- 3 ft ) Cb 3 •"3 o 3 0 Ω ft ) 0 CQ Cb _ O P- TJ Ω J Cb >-3 3 Ω CD Ω Λ P- Ξ d O 3 ft ) 3 ft ) ft ) tr TJ ft ) tr 0 ra TJ fu fu tr hi Cb hj 0 1 ft ) tr ft ) hi ft ) H d 3 tr 00 3 3 rt rt ri ¬ rt Φ Φ rt t_ι. 3 ra φ P- rt Φ Cb Φ Φ 3 φ rt Φ rt Φ P- φ j" Hi Φ σ CD Φ Ω Φ ft ) Φ i Ω Φ TJ P- hi Cb ft ) Φ 3 TJ ft ) Φ ft ) !-b ft ) P 0 11 Φ d p. tr 3 h{ 3 ft ) tr Ω hj CQ ft ) 3 hj rt ft ) 11 ft ) 3 t. rt rt rt P Φ i 3 Hi φ rt 3 P- φ rt Φ rt P- 3 rt ft ) 3 φ P- CD P- CD 3 Φ P- φ ra Φ P- 3 P- φ ft ) Cb hi 0 ft ) rt P- Cb CQ Φ P- Ω 0 rt rt CD ra CD 0 rt ft ) Cb d b rt ft ) 3 3 Cb Ω ^ Cb tr o p- P- Cb 0 rt b tr "< P- P- P- b tr h- 1 hj ^ rt ft ) ^ Φ rt Φ 0 3 rt Cb t- 3 P- Φ 0 " • CQ 3 CQ φ 0 Λ TJ P- Φ rt O Hi tr Cb • 0 Φ CQ 0 <ϊ Cb 3 CQ 3 h- 1 Cb rt d ft ) 0 ft ) Ω ft ) 3 O ø ) ti TJ P- Φ Φ tr ft ) d 3 rt 3 Ω tr trs O ft ) . Hi CD 0 rt rt ft ) φ ft ) rt Ω 0 tr Cb ft ) Cb Ω 0 ft ) t CD Cb tr tr φ Cb ,Cb f- Hi tr p- hj 3 P- O Hi P- 0 Hi rt rt Φ hi Cb Φ i Φ hj ft ) Φ rt Cb ft ) Cb Φ 3 Ω 0 Cb o 3 P- Cb ft ) Φ 0 ft ) Φ ft ) rt ft ) • : ft ) rt D TJ ft ) tr hj ft ) hj J ft ) P- rt Φ 3 rt CQ d rt 3 ft ) Hi Ω t TJ 0 Φ rt P- s; hj 3 Cb rt Cb P 3 ra • ; Hi P- ft ) rt 0 rt Φ tr Φ hj •<. » ) fi ) ft ) 0 tr s; P- ^ P- Φ ft ) Φ P- ^ P- 3 hi TJ Φ p hj φ hi t ) tr 3 φ P- ra ra hi tr j ra 3 ft ) 3 CQ Φ Cb d ft ) 3 S Φ TJ 0 Cb ø ) 11 rt φ o ft ) Φ 0 0 3 Φ d P- rt rt t t- hj Ω ft ) 0 P- ω 3 φ tr CD 3 ft ) 3 ω 3 ra 3 rt Cb Cb H ft ) 3 hi hi P- Ω Φ o ω φ φ TJ Φ d P- P- Φ d φ d Φ TJ rt CQ P- Φ •• Ω Φ 3 ra ra hi 3 3 3 ft ) hj 3 3 ft ) "< rt ft ) P' 3 P 1 Hi tr ft ) TJ P- 0 rt φ rt tr 3 O φ tr ri ¬ tr 0 Φ tr CD d ≤ ft ) rt cπ Φ Hi rt ra hj CQ Hi ft ) Φ Φ ra Hi Hi Φ ft ) Φ TJ Hi rt φ αi tr Φ P 0 rr 0 ω P- ts ft ) ft ) tr hj ft ) ft ) o φ hi tr hj H rr P- Ω hi Φ hi tr P- ra Φ Ω Ω CQ ^ Ω P- hj Ω P H- 1 ra d Ω Cb Λ tr o Ω hi Hi 3 φ ft ) CQ P- Cb rt CQ Φ tr Cb Cb Φ 3 Φ ^ hj Φ d φ Hi tr Φ ft ) Ω Φ rt 3 3 ft ) P- P- ra φ ft ) 3 ft ) ft ) ft ) h-> .ft ) ft ) Ω Φ SU P. φ CQ 3 P- <! CQ tr ft ) o 0 hi P- Ω rt tr ra h- 1 P- P- 3 l-b CQ CD rt Φ Ω φ &, ft ) 3 P- V ft> P- J hj 3 φ Ω ft ) ft ) P- 3 rt P- ft ) ft ) Φ rt tr CD Φ ft ) rt ra rt φ Cb Φ C , b P- CD tr < P- rt CD φ P- Hi P- P- Cb 3 o J SD 3 Φ ^ Cb P- hi Φ 3 ■ rt φ P- Cb ^ hj rt Hi Cb Cb O TJ Φ CD JU Cb hi t 3 b ft ) hj 0 Cb 3 P 1 Φ ^ Φ 3 Cb ft ) hi Ω rt rt ft ) P- 0 0 CQ ft ) rt s- CQ Cb 0 Cb P Ω Ω ft ) Φ rt φ rt Φ ri ¬ ft ) rt Hi J rt P- Ω tr rt rt rt ft ) Hi rt 0 Φ P. hj rt i P- 0 hj ft ) 0 Φ ft ) ft ) 0 0 P- O tr 0 ft ) ri ¬ 0 rt Hi 3 Φ Φ Φ Ω h- 1 ft ) < 3 P- tr rt hi 3 3 tr Ω φ 3 ft ) 0 0 Ω ft ) ft ) hj 0 Φ ra Φ Φ ft ) ft ) ,3 co tr ft ) 3 CD tr -J P- P σ-ι CD φ rt rt P- 3 ft ) ra D d ~ Φ rt Φ 0 tr rt •» j rt Φ 3 Cb ~ 0 ft ) Φ Φ ft ) rt ra P- 3 P- Φ 1 p- 3 Cb ft ) H- ft ) φ CD 3 o φ rt P- tr Cb Cb ft ) rt CQ ft ) P 3 Ξ P O rt Φ D rt ≤ ra rt Cb hj ≤ tr Cb Φ ^ P- 3 rt J d ri ¬ Φ tr Φ 3 H d TJ t TJ 0 hj φ ra tr Φ rt 3 3 3 0 Φ Φ d 3 ft ) hj Φ ra ^ ft ) rt Φ Φ tr ^ h- 1 Φ hj Ω ft ) ft ) Ω CQ 3 b hj rt tr tr - j J 3 Hi φ d hi Ω hj hj Φ rt rt hi Φ P- Φ Φ Φ d Hi d TJ ra hi Φ rt φ Hi Hi tr Φ o φ Φ Φ Φ Φ O 3 ft ) hj φ CD P- Ω g 0 P hi ft ) P- P- Ω o d P- P- hj ft ) 3 hj hj ft ) H O ft ) ft ) 3 rt hi rt Φ ft ) 3 < rt P P Ω 3 Cb rt P- P- rt d rt tr P- P- Φ tr 3 P- Φ rt tr Φ Φ rt ft ) ft ) Φ rt φ P- ft ) Cb Φ "0 < hi Φ Φ rt ra φ tr CD hi Cb tr h- 1 h- 1 Cb vo TJ hi ra <. Si ) φ ft ) hj ^ ft ) ft ) Φ tr ft ) ra Φ ~ vo d P- P- Ω Ω P- Ω 1 ft ) P- . P- rt ft ) 3 tr tr 0 Cb tr < Cb CD CQ Hi Φ ON 16 interface node at which the respective material is created. 10. The method of claim 9, wherein said database table further comprises identifying information for each material including at least one of plant, storage location, and batch. 11. The method of any one of claims 2 to 10, wherein each resource has a pre-assigned resource number, said data model further comprising a database table having an entry for each pre-assigned resource number matched to a chronological sequence of activities scheduled on the respective resource.

Inventors: SOEHNER VOLKMAR, SOEHNER, VOLKMAR
Applicants: SAP AKTIENGESELLSCHAFT, SOEHNER VOLKMAR, SOEHNER, VOLKMAR
Application year: 1999
Main classification: G06F17
IPC codes: B65G1, G06Q10, G06Q50