Sign In to Follow Application
View All Documents & Correspondence

Scheduling Device Scheduling Method And Computer Program

Abstract: Resources product classes processes and product orders are mutually associated and logged. From the information of product classes processes and resources variables and constants are built which are used when formularizing an objective function and a constraint formula. A constraint setting screen is displayed including a description of a constraint formula expressed using a selection input field of identifying information of the product classes processes and resources. The description of the constraint is set on the basis of the result of the selection input in the constraint setting screen. Additionally an objective setting screen is displayed including: a description of an objective which is described using the product classes and processes and text information which denotes a description of the objective; and a selection input field thereof. On the basis of the result of the selection input in the objective setting screen the description of the objective is logged. Then the constraint formula and the objective function are formularized on the basis of the built variables and constants the information of the product classes processes and resources and the set descriptions of the constraint formula and the objective function.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
12 September 2014
Publication Number
24/2016
Publication Type
INA
Invention Field
COMPUTER SCIENCE
Status
Email
remfry-sagar@remfry.com
Parent Application
Patent Number
Legal Status
Grant Date
2023-10-16
Renewal Date

Applicants

NIPPON STEEL & SUMITOMO METAL CORPORATION
6 1 Marunouchi 2 chome Chiyoda ku Tokyo 1008071

Inventors

1. KOBAYASHI Hirokazu
c/o NIPPON STEEL & SUMITOMO METAL CORPORATION 6 1 Marunouchi 2 chome Chiyoda ku Tokyo 1008071
2. YAJI Yasuhito
c/o NIPPON STEEL & SUMITOMO METAL CORPORATION 6 1 Marunouchi 2 chome Chiyoda ku Tokyo 1008071
3. FURUKAWA Akihito
c/o NITTETSU ELEX CO. LTD. 8 8 Shinkawa 1 chome Chuo ku Tokyo 1040033
4. INATOMI Minenori
c/o NITTETSU ELEX CO. LTD. 8 8 Shinkawa 1 chome Chuo ku Tokyo 1040033

Specification

DESCRIPTION TITLE OF INVENTION: SCHEDULING APPARATUS, SCHEDULING METHOD, AND COMPUTER PROGRAM TECHNICAL FIELD
[0001] The present invention relates to a scheduling apparatus, a scheduling method, and a computer program. In particular, it is preferably used for automatically planning a manufacturing plan or a distribution plan by mathematical programming. BACKGROUND ART
[ 000 2] In manufacturing industry, various resources are used in various processes for manufacturing products from rav/ materials, assembling parts to make products, or the like. In order to effectively utilize these resources or to appropriately adjust stock amounts, it is essential to create a production plan or a distribution plan to perform operation following this plan. The same is true not only in manufacturing industry but also in distribution business or the like.
However, on the site of product manufacturing or distribution, there exist numerous raw materials, intermediate products, and products, and resources for machining, transportation, or the like of them are associated with each other intricately. Accordingly, constraints which should be considered become complicated. Therefore, for example, it is uneasy to create a production plan or a distribution plan for keeping stocks appropriately or producing
- 1 -

products v/ithout delaying the delivery date. [0003] As a technology for solving such a problem, conventionally, scheduling apparatuses have been developed for rewriting a rule made by a person (for example, a rule to start production first from a product whose delivery date is closer) into a program, and creating the production plan or the distribution plan automatically.
Such a rule-based scheduling apparatus can make a certain kind of plan quickly even for a complicated problem. Hov/ever, there are a problem that there is no proof for whether a mathematically optimum plan is really made or not, a problem that the rules become quite enormous, and the like.
[0004] Then, as such a rule-based scheduling apparatus, there is a technology described in Patent Literature 1. Patent Literature 1 discloses a technology which obtains a first measure corresponding to a difference between an end time and a scheduled end time of a series of processes obtained from a result of temporarily assigning processes to a resource, and a second measure obtained by digitizing compatibility between the temporarily assigned resource and the processes, and repeatedly corrects the temporary assignment until a best assignment result is obtained. In this manner, in the technology disclosed in Patent Literature 1, based on predetermined measures, correction to assign necessary processes to a resource is repeated. Thus,
- 2 -

it is not ensured that a mathematically really optimum plan is made.
[0005] Accordingly, as a method to mathematically solving them, scheduling apparatuses creating a production plan or a distribution plan using mathematical programming have been developed.
By using the mathematical programming, it is possible to make a production plan or a distribution plan vjhose optimality is mathematically ensured. Hov/ever, to make the production plan or the distribution plan according to this method, the planner needs to have high-level mathematical expertise. Thus, it has been often difficult for a general user v/ho plans production and distribution handles such a scheduling apparatus creating the production plan or the distribution plan using the mathematical programming.
[0006] Accordingly, it is demanded to construct a system v;hich allows even a general user v/ho has no high-level mathematical expertise to simply make the production plan or the distribution plan in a form according to the mathematical programing.
As such a scheduling apparatus using the mathematical programming, there is a technology described in Patent Literature 2. Patent Literature 2 discloses that after a production plan is made by performing optimization calculation by the mathematical programming, a quantitative relation ratio is fixed betv/een raw materials and products in
- 3 -

this production plan, the amounts of the raw materials and the products are then corrected by using GUI {Graphical User Interface), and a production plan is remade v/ith the amounts after correction and the quantitative relation ratio, thereby, enabling a verification by v/hich a planning result is not largely changed.
Hov/ever, in the technology disclosed in Patent Literature 2, only a production plan specialized to specific operations can be made. Accordingly, by the technology described in Patent Literature 2, a general-purpose production plan or distribution plan cannot be made.
[0007] As a technology to make a general-purpose production plan or distribution plan according to a mathematical method by using the mathematical programming, there is AIMMS developed by Paragon Decision Technology B.V. This technology allov/s the user to define variables for the mathematical programming by using GUI, and formulate an objective function and a constraint expression by using the defined variables.
However, such technology requires the user himself/herself to input variables to be used in the mathematical programming one by one, and to describe also to write constraint expressions one by one as a mathematical expression. Accordingly, a general user v;ho has no mathematical expertise cannot easily make full use of such technology.
- 4 _

CITATION LIST
PATENT LITERATURE
[0008] Patent Literature 1: Japanese Laid-open
Patent Publication No. 8-212264
Patent Literature 2: Japanese Laid-open Patent
Publication No. 2000-254839
SUMMARY OF INVENTION
TECHNICAL PROBLEM
[0009] As above, it has been difficult by the
conventional technologies to provide a general user
v/ho has no high-level mathematical expertise with a
system to make a general-purpose production plan or
distribution plan by using the mathematical
programming.
Accordingly, it is an object of the present invention to provide a general user who has no high-level mathematical expertise v;ith a system to make a production plan or distribution plan more diverse than hitherto by using the mathematical programming. SOLUTION TO PROBLEM
[0010] A scheduling apparatus of the present invention is a scheduling apparatus automatically making a production plan or a distribution plan by mathematical programming by using information of each of a product order indicating contents of an order of a product, a process which is processing executed in a course of production or distribution of the product, a resource v/hich is a human resource and a material resource used in the process, and a product class
- 5 -

v/hich is identification information for
distinguishing orders for which processes executed in the course of production or distribution of the product, an order of execution of the processes, and resources used respectively in the processes are same, as one set from others, the scheduling apparatus including: a registration means registering the resources and the processes, the processes and the product classes, and the product classes and the product orders in mutual association in a recording medium; a construction means constructing variables including a start time and end time of each product order/each process/each resource as decision variables used when formulating an obj ective function and a constraint expression according to the mathematical programming based on the product classes, the processes, the resources, and the product orders v;hich are mutually associated by the registration means; a constraint setting means setting contents of the constraint expression based on an input operation of identification information by a user to a selection input field for inputting at least one piece of identification information of the product classes, the processes, and the resources v/hich are mutually associated by the registration means; an object setting means setting contents of the objective function based on an input operation of identification information and an object by the user to a selection input field for inputting
- 6 -

identification information of the product classes and the processes which are mutually associated by the registration means and an object by the objective function; a constraint expression formulating means formulating the constraint expression by using the variables constructed by the construction means based on the product classes, the processes, the resources, and the product orders v/hich are mutually associated by the registration means and the contents of the constraint expression set by the constraint setting means; an objective function formulating means formulating the objective function by using the variables constructed by the construction means based on the product classes, the processes, the resources, and the product orders v/hich are mutually associated by the registration means and the contents of the objective function set by the O'bject setting means; and a plan creating means performing optimization calculation by the mathematical programming to derive the decision variable which maximize or minimize the objective function formulated by the objective function formulating means within a range which satisfies constraints based on the constraint expression formulated by the constraint expression formulating means.
[0011] A scheduling method of the present invention is a scheduling method automatically making a production plan or a distribution plan on a computer by mathematical programming by using information of
- 7

each of a product order indicating contents of an order of a product, a process v/hich is processing executed in a course of production or distribution of the product, a resource which is a human resource and a material resource used in the process, and a product class which is identification information for distinguishing orders for v/hich processes executed in the course of production or distribution of the product, an order of execution of the processes, and resources used respectively in the processes are same, as one set from others, the scheduling method including: a registration step of registering the resources and the processes, the processes and the product classes, and the product classes and the product orders in mutual association in a recording medium; a construction step of constructing variables including a start time and end time of each product order/each process/each resource as decision variables used when formulating an objective function and a constraint expression according to the mathematical programming based on the product classes, the processes, the resources, and the product orders v/hich are mutually associated by the registration step; a constraint setting step of setting contents of the constraint expression based on an input operation of identification information by a user to a selection input field for inputting at least one piece of identification information of the product classes, the processes, and the resources which are

mutually associated by the registration step; an object setting step of setting contents of the objective function based on an input operation of identification information and an obj ect by the user to a selection input field for inputting identification information of the product classes and the processes which are mutually associated by the registration step and an object by the objective function; a constraint expression formulating step of formulating the constraint expression by using the variables constructed by the construction step based on the product classes, the processes, the resources, and the product orders which are mutually associated by the registration step and the contents of the constraint expression set by the constraint setting step; an objective function formulating step of formulating the objective function by using the variables constructed by the construction step based on the product classes, the processes, the resources, and the product orders which are mutually associated by the registration step and the contents of the objective function set by the object setting step; and a plan creating step of performing optimization calculation by the mathematical programming to derive the variable which maximize or minimize the objective function formulated by the objective function formulating step v/ithin a range v/hich satisfies constraints based on the constraint expression formulated by the constraint expression formulating
- 9 -

step .
[0 012] A computer program of the present invention is a computer program for causing a computer to perform automatically making a production plan or a distribution plan by mathematical programming by using information of each of a product order indicating contents of an order of a product, a process v/hich is processing executed in a course of production or distribution of the product, a resource v/hich is a human resource and a material resource used in the process, and a product class which is identification information for distinguishing orders for which processes executed in the course of production or distribution of the product, an order of execution of the processes, and resources used respectively in the processes are same, as one set from others, the computer program causing a computer to execute: a registration step of registering the resources and the processes, the processes and the product classes, and the product classes and the product orders in mutual association in a recording medium; a construction step of constructing variables including a start time and end time of each product order/each process/each resource as decision variables used when formulating an obj ective function and a constraint expression according to the mathematical programming based on the product classes, the processes, the resources, and the product orders v/hich are mutually associated by the registration
- 10 -

step; a constraint setting step of setting contents of the constraint expression based on an input operation of identification information by a user to a selection input field for inputting at least one piece of identification information of the product classes, the processes, and the resources which are mutually associated by the registration step; an object setting step of setting contents of the objective function based on an input operation of identification information and an object by the user to a selection input field for inputting identification information of the product classes and the processes v/hich are mutually associated by the registration step and an object by the objective function; a constraint expression formulating step of formulating the constraint expression by using the variables constructed by the construction step based on the product classes, the processes, the resources, and the product orders v^hich are mutually associated by the registration step and the contents of the constraint expression set by the constraint setting step; an objective function formulating step of formulating the objective function by using the variables constructed by the construction step based on the product classes, the processes, the resources, and the product orders v/hich are mutually associated by the registration step and the contents of the objective function set by the object setting step; and a plan creating step of performing optimization
- 11 -

calculation by the mathematical programming to derive the variable v;hich maximize or minimize the objective function formulated by the objective function formulating step v/ithin a range v/hich satisfies constraints based on the constraint expression formulated by the constraint expression formulating step .
ADVANTAGEOUS EFFECTS OF INVENTION
[0013] According to the present invention, resources and processes, processes and product classes, and product classes and product orders are registered in mutual association via processes. Then, contents of constraint expression are set based on an input operation of identification information to a selection input field for inputting identification information of at least one of the product classes, processes, and resources. Further, contents of an objective function are set based on an input operation of identification information and an object to a selection input field for inputting identification information of product classes and processes and an object by the objective function. Therefore, it is possible to provide a general user v/ho has no high-level mathematical expertise with a system to make a production plan or distribution plan more diverse than hitherto by using mathematical programming.
- 12 -

BRIEF DESCRIPTION OF DRAWINGS
[0014] [Fig. 1] Fig. 1 is a diagram illustrating an example of a functional structure of a scheduling apparatus.
[Fig. 2] Fig. 2 is a diagram conceptually illustrating an example of a relation of respective information of resource, product class, process, product order.
[Fig. 3A] Fig. 3A is a diagram illustrating an example of an initial state of a resource registration screen.
[Fig. 3B] Fig, 3B is a diagram illustrating an example of the resource registration screen to which an initial attribute of the resource is inputted.
[Fig. 3C] Fig. 3C is a diagram illustrating an example of the resource registration screen to which the initial attribute of the resource and an attribute newly added by a user are inputted.
[Fig. 4A] Fig. 4A is a diagram illustrating an example of an initial state of a product class registration screen.
[Fig. 4B] Fig. 4B is a diagram illustrating an example of the product class registration screen to which product class information is inputted.
[Fig. 5A] Fig. 5A is a diagram illustrating an example of an initial state of a process registration screen.
[Fig. 5B] Fig. 5B is a diagram illustrating an example of the process registration screen to which
- 13 -

process information related to processes executed by a product class named "normal operation" is inputted.
[Fig. 5C] Fig. 5C is the process registration screen to which process information related to processes executed in a product class named "special operation 1" is inputted.
[Fig. 6A] Fig. 6A is a diagram illustrating an example of an initial state of a product order registration screen.
[Fig. 6B] Fig. 6B is a diagram illustrating an example of the product order registration screen to v/hich product order information is inputted.
[Fig. 7A] Fig. 7A is a diagram illustrating an example of an initial state of a resource simultaneous use constraint setting screen.
[Fig. 7B] Fig. 7B is a diagram illustrating an example of the resource simultaneous use constraint setting screen to v;hich information of resource simultaneous use constraint is inputted.
[Fig. 8A] Fig. 8A is a diagram illustrating an example of an initial state of a resource use pattern constraint setting screen.
[Fig. 8B] Fig. 8B is a diagram illustrating an example of the resource use pattern constraint setting screen to which information of resource use pattern constraint is inputted.
[Fig. 9A] Fig. 9A is a diagram illustrating an example of an initial state of a resource use pattern processing time constraint setting screen.
- 14 -

[Fig. 9B] Fig. 9B is a diagram illustrating an example of the resource use pattern processing time constraint setting screen to which information of resource use pattern constraint is inputted.
[Fig. lOA] Fig. lOA is a diagram illustrating an example of an initial state of a same lot constraint setting screen.
[Fig. lOB] Fig. lOB is a diagram illustrating an example of the same lot constraint setting screen to which information of same lot constraint is inputted,
[Fig. IIA] Fig. IIA is a diagram illustrating an example of an initial state of a different lot constraint setting screen.
[Fig. IIB] Fig. IIB is a diagram illustrating an example of the different lot constraint setting screen to v/hich information of different lot constraint is inputted.
[Fig, 12A] Fig. 12A is a diagram illustrating an example of an initial state of a resource operation constraint setting screen.
[Fig. 12B] Fig. 12B is a diagram illustrating an example of the resource operation constraint setting screen to which information of resource operation constraint is inputted.
[Fig. 13A] Fig. 13A is a diagram illustrating an example of an initial state of a resource maximum capacity constraint setting screen.
[Fig. 13B] Fig, 13B is a diagram illustrating an example of the resource maximum capacity constraint
- 15 -

setting screen to which information of resource maximum capacity constraint is inputted.
[Fig. 14A] Fig. 14A is a diagram illustrating an example of an initial state of a new constraint setting screen.
[Fig. 14B3 Fig. 14B is a diagram illustrating an example of the nev/ constraint setting screen to which information of nev/ constraint is inputted.
[Fig. 15] Fig. 15 is a diagram illustrating an example of an object setting screen.
[Fig, 16A3 Fig. 16A is a diagram illustrating an example of an initial state of a nev/ object setting screen.
[Fig. 16B] Fig. 16B is a diagram illustrating an example of the nev/ object setting screen to which information of nev/ objects is inputted.
[Fig. 17A] Fig. 17A is a flowchart describing an example of a processing operation of the scheduling apparatus.
[Fig. 17B] Fig. 17B is a flowchart continued from Fig. 17A.
[Fig. 17C] Fig. 17C is a flowchart continued from Fig. 17B.
[Fig. 17D] Fig. 17D is a flov/chart continued from Fig. 17C.
[Fig. 18] Fig, 18 is a diagram illustrating an example of a hardware structure of the scheduling apparatus.
- 16 -

DESCRIPTION OF EMBODIMENTS
[0015] Hereinafter, one embodiment of the present invention will be described with reference to drav/ings .
Fig. 1 is a diagram illustrating an example of a functional structure of a scheduling apparatus 100. Note that the scheduling apparatus 100 illustrated in Fig. 1 can be realized by using an information processing apparatus having, for example a CPU, a ROM, a RAM, an HDD, and various interfaces.
The scheduling apparatus 100 of this embodiment sets an objective function and a constraint expression by using information inputted based on an operation of an input device by the user, calculates an optimum value of the objective function by using mathematical programming, makes a production plan from the calculated result, and presents the result to the user. In particular, this embodiment enables a general user who has no high-level mathematical expertise to input information needed for setting the objective function and the constraint expression. [0016] Before describing the function of the scheduling apparatus 100, an overview of "resource, product class, process, product order" described in the following description will be described.
Fig. 2 is a diagram conceptually illustrating an example of a relation of respective information of resource, product class, process, product order.
In this embodiment, a resource, a product class,
- 17 -

a process, and a product order are inputted to the scheduling apparatus 100 based on an operation of the input device by the user and registered.
The resource is a general term for human resource and material resource used in respective processes for carrying out production and distribution of products, and information to be "constant" in at least one of the objective function and the constraint expression is contained as an attribute thereof (see "maximum capacity", "minimum use interval", "availability start date" of Figs. 3). The material resource is, for example, a storage place for machine/equipment for machining and transportation, raw materials, intermediate products, and products, and includes all kinds of material resources generally involved in the fields of production planning and distribution planning. The human resource includes, for example, workers, and includes all kinds of human resources generally involved in the fields of production planning and distribution planning.
The product class is identification information for distinguishing processes executed in the course of production or distribution of a product included in a product order (order), an execution order of the processes, and a resource used in each of the processes as one block from others (see Figs. 4 and Figs. 5) . The product order belongs to one of the product classes (see Figs. 6}.
- 18 -

[00171 In this embodiment, as v/ill be described later, a resource used in each process is registered (see Figs, 5), a process executed in each product class is registered (see Figs. 5), and a product class is registered with respect to the product order (see Figs. 6). Thus, as illustrated in Fig. 2, the resource and the process, the process and the product class, and the product class and the product order are mutually associated one another. That is, the resource, the product class, the process, and the product order are registered in a mutual association. Details of an example of inputting and registering method of the resource, the product class, the process, and the product order will be described later with reference to Figs. 3 to Figs. 6.
Details of an example of the functions which the scheduling apparatus 100 has v/ill be described in detail below. [0018] (Resource input registration unit 101)
A resource input registration unit 101 first displays a resource registration screen on a display device.
Figs. 3 are diagrams illustrating an example of a resource registration screen 300. Specifically, Fig. 3A is a diagram illustrating an example of an initial state of the resource registration screen 30 0. Fig. 3B is a diagram illustrating an example of the resource registration screen 3 00 to v/hich an initial attribute (attribute set in advance) of the resource
- 19

is inputted. Fig. 3C is a diagram illustrating an example of the resource registration screen 300 to which the initial attribute of the resource and an attribute nev/ly added by the user are inputted. [0019] In Figs. 3, the resource registration screen 300 is a GUI and has a resource input field 301, a register button 302, an add button 303, and a delete button 304.
The resource registration screen 30 0 is a screen for registering a resource name for identifying a resource and an attribute of the resource identified by this resource name.
As illustrated in Fig. 3A and Fig. 3B, in this embodiment, the initial attribute of the resource is a "resource name", a "maximum capacity", and a "minimum use interval".
The "resource name" means the name of a resource as a registration target. In this embodiment, for example, a text of the resource name can be inputted in a column v^here characters of "resource name" are displayed.
The "maximum capacity" means the maximum capacity of the resource as the registration target. In this embodiment, for example, the value (numeral) of the number [number/min] v/hich can be processed per unit time by the resource can be inputted as a maximum capacity in the field where characters of "maximum capacity" are displayed.
The "minimum use interval" means a time which has
- 20 -

to be ensured after use of the resource as the registration target is finished. In this embodiment, for example, in the column where characters of "minimum use interval" are displayed, the value (numeral) of this time [min] can be inputted as a minimum use interval.
[0020] In the second line of the resource registration screen 300 illustrated in Fig. 3C, there is illustrated a state that resource information indicating that the "resource name" is "machine 1", the "maximum capacity" is "1 [number/min]", the "minimum use interval" is "0.3 [min]", and the "availability start date" is "10 December 2011" in inputted.
[0021] When the user operates the input device to press down the add button 303 in a state that a specific line or column of the resource input field 301 of the resource registration screen 300 is specified, a line or a column is added next to the specified line or column.
For example, when the add button 303 is pressed dovjn in a state that the column v7here the "minimum use interval" is displayed in the resource input field 301 illustrated in Fig. SB is specified, one blank column is added next to the column vjhere the "minimum use interval" is displayed. In the resource registration screen 300 illustrated in Fig. 3C, a state that the "availability start date" is added as an attribute of the resource in this column is
- 21 -

illustrated.
The "availability start date" means the first date v;hen the resource as the target of registration becomes available. In the resource registration screen 300 of this embodiment, for example, in the column where characters of "availability start date" are displayed, the values (numerals) of this date can be inputted as the availability start date (see Fig. 3C) .
First, when the add button 303 is pressed dov/n in a state that the columns v/here the "resource name" and the "maximum capacity" are displayed are specified, one blank column is added each between the "resource name" and the "maximum capacity" and between the "maximum capacity" and the "minimum use interval".
In this manner, attributes of the resource can be added.
[0022] Further, v/hen the add button 303 is pressed down in a state that the line where the "machine 1" is displayed is specified, one blank column is added between the "machine 1" and the "machine 2". Similarly, when the add button 303 is pressed dov;n in a state that the line v/here "machine L" is displayed is specified, one blank column is added next to the line where the "machine L" is displayed. In this manner, (an item of) the resource can be added. [002 3] Further, when the user operates the input device to press down the delete button 304 in a state
- 22 -

that a certain line or column is specified in the resource input field 301 of the resource registration screen 300, the specified line or column is deleted.
For example, v/hen the delete button 304 is pressed down in a state that the column where the "availability start date" is displayed in the resource input field 301 illustrated in Fig. 3C is specified, the column where the "availability start date" is displayed is deleted. In this manner, an attribute of the resource can be deleted. Hov;ever, in this embodiment, deleting the initial attributes ("maximum capacity" and "minimum use interval") is not allov/ed. Note that of course it may also be structured to allow deleting the initial attributes.
Further, for example, when the delete button 304 is pressed dov/n in a state that the column v/here the "machine L" is displayed in the resource input field 301 illustrated in Fig. 3C is specified, the column where the "machine L" is displayed is deleted. In this manner, (an item) of the resource can be deleted However, in this embodiment, deleting the input field (blank field of Fig. 3A) which is displayed in the initial state is not allov;ed,
[0024] As described above, vjhen the input operation to the resource input field 301 of the resource registration screen 3 00 is finished, and the register button 302 is pressed dovm by the user operating the input device, the resource input registration unit 101 stores in a storage medium the contents inputted
- 23 "

in the resource input field 301 v;hen the register button 302 is pressed dov/n.
The "maximum capacity" and the "minimum use interval" which are attributes of the resource registered in this manner are set automatically as constants in a constraint expression which v/ill be described later {see expression (4) and expression (10)). Further, the "availability start date" is set automatically as a constant in an objective function which v/ill be described later {see expression {11) ) . [0025] The resource input registration unit 101 is realized by that, for example, the CPU generates display data for displaying the resource registration screen 300 according to the contents of the input operation by the user and outputs them to the display device, and stores the resource information in the HDD or the like. [002 6] {Product class input registration unit 102).
A product class input registration unit 102 first displays a product class registration screen on the display device.
Figs. 4 are diagrams illustrating an example of a product class registration screen 400. Specifically, Fig. 4A is a diagram illustrating an example of an initial state of the product class registration screen 400. Fig. 4B is a diagram illustrating an example of the product class registration screen 400 to v/hich product class information is inputted.
In Figs. 4, the product class registration screen
- 24 -

400 is a GUI and has a product class input field 401, a register button 402, an add button 403, and a delete button 404,
The product class registration screen 400 is a screen for registering a name of product class. Fig. 4B illustrates a state that "normal operation", "special operation 1", .../ "special operation M" are inputted as names of "product class".
In the product class registration screen 400 of this embodiment, for example, texts of names of product class can be inputted in the column v/here characters of "product class" are displayed. [0027] When the user operates the input device to press down the add button 403 in a state that a certain line of the product class input field 4 01 of the product class registration screen 400 is specified, one blank line is added next to the specified line. In this manner, the product class can be added.
Further, when the user operates the input device to press down the delete button 404 in a state that a certain line of the product class input field 401 of the product class registration screen 400 is specified, the specified one line is deleted. In this manner, the product class can be deleted. [0028] As described above, v/hen the input operation to the product class input field 401 of the product class registration screen 4 00 is finished, and the register button 302 is pressed down by the user
„ 25 -

operating the input device, the product class input registration unit 102 stores the contents inputted in the product class input field 401 in the storage medium v/hen the register button 4 02 is pressed dov/n. Note that at this point, the product class information is not mutually associated v/ith other information.
[0029] The product class input registration unit 102 is realized by that, for example, the CPU generates display data for displaying the product class registration screen 400 according to the contents of the input operation by the user and outputs them to the display device, and stores the product class information in the HDD or the like. [0030] (Process input registration unit 103)
A process input registration unit 103 first displays a process registration screen on the display device.
Figs. 5 are diagrams illustrating an example of a process registration screen 50 0. Specifically, Fig. 5A is a diagram illustrating an example of an initial state of the process registration screen 500. Fig. 5B is a diagram illustrating an example of the process registration screen 500 to v/hich process information related to processes executed by a product class named "normal operation" is inputted. Fig. 5C is the process registration screen 500 to which process information related to processes executed in a product class named "special operation
- 26 -

1" is inputted.
In Figs. 5, the process registration screen 500 is a GUI and has a process input field 501, a register button 502, an add button 503, and a delete button 504.
The process registration screen 500 is a screen for registering attributes of processes for every product class.
[0031] In the process registration screen 500 of this embodiment, the name of "product class" registered in the product class input registration unit 102 is displayed on a tab of each process registration screen 500. Among the tabs displayed on the process registration screen 500 of Fig. 5A to Fig 5C, an input operation to a non-hatched tab is effective. For example, when the user operates the input device to press down the "tab on which characters of 'special operation 1' are displayed" of the process registration screen 500 illustrated in Fig. 5A, Fig. 5B, the process registration screen 500 illustrated in Fig. 5C is displayed. Then, in this embodiment, by inputting and registering process information as follov/s in each process registration screen 500, the process information related to processes executed for each product class are registered. The contents of the process registration screen 500 will be described be lev/.
[0032] As illustrated in Fig. 5A to Fig. 5C, in this embodiment, initial attributes of a process are
- 27 -

"processing order", "process name", "minimum time", "maximum time", and "'machine 1', 'machine 2', .../ 'machine L-1', 'machine L'".
The "process order" means the order of executing this process for the product class to which the process as a registration target belongs. In this embodiment, "1" is automatically displayed in the first input field of the "process order". Thereafter, an integer is automatically assigned (displayed) sequentially in ascending order from an upper line.
The "process name" means a name of the process as the registration target. In this embodiment, for example, texts of the process name can be inputted in a column where characters of "process name" are displayed.
[0033] "Minimum time" indicates a minimum value [hour] of a time period allovjed for a raw material, an intermediate product, and a product to stay in the process of the registration target. In this embodiment, for example, in the column where characters of "minimum time" are displayed, this value (numeral) can be inputted as the minimum time,
"Maximum time" indicates a maximum value [hour] of a time period allowed for a raw material, an intermediate product, and a product to stay in the process of the registration target. In this embodiment, for example, in the column where characters of "maximum time" are displayed, this value (numeral) can be inputted as the maximum time,
- 28 -

[0034]. "'machine 1', 'machine 2', ... 'machine L-1', 'machine L'" indicates resource names registered by the resource input registration unit 101 (see Figs. 3). In this embodiment, for example, in the columns where characters of "'machine 1', 'machine 2', ... 'machine L-1', 'machine L'" are displayed, any of "primary", "secondary", or "blank" can be selectively inputted. This selective input can be realized by performing a pull-down menu display for example. Here, the "primary" indicates a primary resource used in the process as the registration target. The "secondary" indicates that a secondary resource used in the process as the registration target. The "blank" means that the resource of this "resource name ("machine 1", "machine 2", ... "machine L-1", "machine L")" being blank is not used in the process as the registration target.
[0035] The bottom line of the process registration screen 500 illustrated in Fig. 5C indicates a state that process information is inputted indicating that, among processes used in the product class named "special operation 1", the "process name" of the process v;hose "process order" is "P"-th is "assembly", and the "minimum time" of this process is "1.0 [hour]", and the "maximum time" of this process is "1.2 [hour]", and that resources to be used in this process are "machine L-1" and "machine L", the "machine L-1" is used as. a primary resource, and the "machine L" is used as a secondary resource.
- 29 -

[0036] When the user operates the input device to press dov/n the add button 503 in a state that a certain line or column of a process input field 501 of the process registration screen 500 is specified, a line or a column is added next to the specified line or column. Thus, an attribute of the process can be added or the number of processes can be added.
Further, v/hen the user operates the input device to press down the delete button 504 in a state that a certain line or column is specified in the process input field 501 of the process registration screen 500, the specified line or column is deleted. Thus, an attribute of the process can be deleted or the number of processes can be deleted. Hov/ever, in this embodiment, deleting the initial attributes and input field (field of the resource name ("machine 1", "machine 2", ... "machine L-1", "machine L")) of resource is not allov/ed. Note that of course it may also be structured to allov/ deleting the initial attributes.
Note that these methods of adding and deleting a line or a column are the same as the methods described for the resource registration screen 30 0 illustrated in Figs. 3, and thus the detailed description thereof is omitted here.
[0037] As described above, when the input operation to the process input field 501 for all the product classes of the process registration screen 50 0 is finished, and the register button 502 is pressed down
30 -

by the user operating the input device, the process input registration unit 103 stores the contents inputted regarding each product class in the process input field 501 in the storage medium when the register button 502 is pressed dov/n. For example, the process input registration unit 10 3 stores information in v/hich "'process order', 'processing amount', 'minimum time *, 'maximum time', and 'resource (machine 1, machine 2, ... machine L)'" registered in respective lines of the process input field 501 are mutually associated as product order information.
As described above, by using this process registration screen 500, the product class and the resources are mutually associated via the process {see Fig. 2) .
[0038] The process input registration unit 103 is realized by that, for example, the CPU generates display data for displaying the process registration screen 500 according to the contents of the input operation by the user and outputs them to the display device, and stores the resource information in the HDD or the like. [0039] (Product order input registration unit 104)
A product order input registration unit 10 4 first displays a product order registration screen on the display device.
Figs. 6 are diagrams illustrating an example of a product order registration screen 600. Specifically,
- 31 -

Fig. 6A is a diagram illustrating an example of an initial state of the product order registration screen 600. Fig. 6B is a diagram illustrating an example of the product order registration screen 600 to v/hich product order information is inputted.
In Figs. 6, the product order registration screen 600 is a GUI and has a product order input field 601, a register button 602, an add button 603, and a delete button 604.
The product order registration screen 60 0 is a screen for registering attributes of each product order.
[0040] As illustrated in Figs. 6, in this embodiment, initial attributes of the product order are "order number", "name", "lot", "product class", "delivery date", and "delivery delay tolerance".
The "order number" is an identification number of a product order as a target of registration. In this embodiment, in the first input field of the "order number" of the product order input field 601, "00001" is automatically displayed. Thereafter, an integer is automatically assigned (displayed) sequentially in ascending order from an upper line.
The "name" means the name of the product order as the target of registration. In this embodiment, for example, in the column v/here characters of "name" are displayed in the product order input field 601, texts of the name of the product order can be inputted.
The "lot" means identification information of a
- 32 -

lot to v;hich the product order as the target of registration belongs. In this embodiment, for example, in the column v/here characters of "lot" are displayed in the product order input field 601, numerals and alphabets can be inputted as this identification information.
[0041] The "product class" means the names of "product class" registered in the product class input registration unit 102 (see Figs. 4). In this embodiment, for example, in the column v/here characters of "product class" are displayed in the product order input field 601, one of these names of product class can be selectively inputted. This selective input can be realized by performing a pull¬down menu display for example.
The "processing amount" means the amount of a product order as the target of registration. In this embodiment, for example, in the column v/here characters of "processing amount" are displayed in the product order input field 601, for example, a value (numeral) of this amount [ton] can be inputted as the processing amount.
The "delivery date" means the delivery date of the product order as the target of registration. In this embodiment, for example, in the column where characters of the "delivery date" are displayed in the product order input field 601, this date (numerals) can be inputted as the delivery date.
The "delivery delay tolerance" means the number
- 33 -

of tolerated days of delay from the delivery date of the product order as the registration target. In this embodiment, for example, in a column v/here characters of the "delivery delay tolerance" are displayed in the product order input field 601, this date (number) can be inputted as the delivery delay tolerance.
[0042] The second line of the product order registration screen 60 0 illustrated in Fig. 6B indicates a state that product order information is inputted indicating that the "order number" is "00001", the name is "1 for company A", the identification information of the belonging "lot" is "LOOl", the belonging "product class" is "normal operation", the "processing amount" is "5.0 [ton]", the "delivery date" is "10 December 2011", and the "delivery delay tolerance" is "3 [days]". [0043] When the user operates the input device to press down the add button 603 in a state that a certain line or column is specified in the product order input field 601 of the product order registration screen 600, a line or a column is added next to the specified line or column. Thus, an attribute of the product order can be added or the number of product orders can be added.
Further, when the user operates the input device to press dov/n the delete button 604 in a state that a certain line or column is specified in the product order input field 601 of the product order
- 34 -

registration screen 600, the specified line or column is deleted. Thus, an attribute of the product order can be deleted or the number of product orders can be deleted. Hov/ever, in this embodiment, the initial attributes cannot be deleted. Note that of course it may also be structured to allow deleting the initial attributes.
Note that these methods of adding and deleting a line or a column are the same as the methods described for the resource registration screen 30 0 illustrated in Figs. 3, and thus the detailed description thereof is omitted here.
[0044] As described above, vjhen the input operation to the product order input field 601 in the product order registration screen 60 0 is finished, and the register button 602 is pressed down by the user operating the input device, the product order input registration unit 104 stores the contents inputted in the product order input field 601 in the storage medium v/hen the register button 602 is pressed down. For example, the product order input registration unit 104 stores information in v/hich "'order number' , 'name', 'lot', 'product class', 'delivery date', and 'delivery delay tolerance'" registered in respective lines of the product order input field 601 are mutually associated as the product order information. [004 5] The product order input registration unit 10 4 is realized by that, for example, the CPU generates display data for displaying the product order
- 35

registration screen 600 according to the contents of the input operation by the user and outputs them to the display device, and stores the product order information in the HDD or the like.
[004 6] As described above, by using this product order registration screen 600, the product order and the product class are mutually associated (see Fig. 2). As already described, by using the process registration screen 500, the product class and the resources are mutually associated via the process. Therefore, the process and the product order are mutually associated via the product class. Therefore, the resources, the product class, the process, and the product order are registered in a mutually associated manner. [0047] (Variable/constant construction unit 105)
A variable/constant construction unit 105 automatically constructs variables and constants used when an obj ective function and a constraint expression are formulated according to the mathematical programming.
In this embodiment, variables described in folioV7ing (a) to (c) are constructed as decision variables.
(a) Start timCorder number, process name, resource name / eno
timeorder number, process name, resource name
(b) Ava iiabil Ityorder number, process name, resource name
(C) Prior and subsequent judgmentorder number, order number, process name, resource name
- 36 -

The start timeorder number, process name, resource name and end tllUeorder number, process name, resource name are a Start
time and an end time of each order number/each process name/each resource name.
Ihe avaiXaDl-Lltyorder number, process name, resource name 1S
a 0-1 variable. When the value of the
^VailaDllltyoj-^er number, proces s name, resource name IS 1 , it
indicates that the resource of "resource name" is used when the process of "process name" is executed v/ith respect to the product order of "order number", and v/hen it is "0", it indicates that such a resource is not used.
The prior and subsequent j udgmentorder number i, order
number 2, process name, resource name IS a (J — 1 Variable. When
the value of the prior and subsequent judgmentorder
number 1, order number 2, process name, resource name IS 1 , It
indicates that in the process of "process name", the resource of "resource name" is used with respect to the product order of "order number 1" before the product order of "order number 2". On the other hand, when this value is "0", in the process of "process name", the resource of "resource name" is used with respect to the product order of "order number 1" after the product order of "order number 2", Note that when it is decided in advance v/hich of the two product orders is desired to be executed first, a constraint to set the value of the "prior and
subsequent J udgmentorder number, order number, process name,
resource name" Corresponding to these two product orders
- 37 -

to "0" or "1" can be provided.
[0048] Here, an example of a construction method of
the variable (start timeo^der number, process name, resource name / end timCorder number, process name, resource name) Or (a) Will be
described here.
First, the variable/constant construction unit 105 extracts the "product class" from the "product order information of each order number" registered in the product order input registration unit 10 4 (see Figs. 6), and extracts process information belonging to the extracted "product class" from the process information registered in the process input registration unit 103 (see Figs. 5).
Next, based on the results of extraction as above, the variable/constant construction unit 105 constructs as decision variables a start time and an end time of each "order number" of the product order, each "process name" registered in association with this order number, and each "resource name" registered as the primary resource and the secondary resource in association with this order number. [0049] In this embodiment, for example, the foliovjing decision variables are constructed.
Start timeooooi, machining, machine 1/ end timeooooi,
machining, machine 1
Start timeooooi, machining, machine 2/ end timeooooi,
machining, machine 2
Start timeooooi, standby, machine 1/ end timeoooOl, standby, machine 1
- 38 -

start timeooooi, standby, machine 2/ end timeooooi, standby, machine 2
Start timeooooi, assembly, machine 1/ end timeooOOl, assembly, machine 1
Start timeooooi, assembly, machine L-1/ end timeooooi,
assembly, machine L-1
Start timeooooi, assembly, machine L/ end timeooOOl, assembly,
machine L
[0050] Start timeoooo2, machining, machine 1, end timeoooo2,
machining, machine 1
Start timeoooo2, machining, machine 2/ end timeoooo2,
machining, machine 2
Start timeoooo2, standby, machine 2r end timeooo02, standby,
machine 2
Start timeoo002, standby, machine 2, ©^d timeoo002, standby,
machine 2
Start timeo0002, assembly, machine 1/ end timeoo002, assembly, machine 1
Start timeoooo2, assembly, machine L-1/ end timeoooo2,
assembly, machine L-1
Start timeoo0 02, assembly, machine hr end time 0 00 02, assembly,
machine L
[0051] Start timeooooN, machining, machine ir end timeooooH,
machining, machine 1
Start time 00 0 OH, standby, machine L-1/ end timeooOON, standby,
machine L-1
- 39

start timeooooN, assembly, machine L-1/ end timeooooH,
assembly, machine L-1
Start timeooOON, assembly, machine L/ end tlmeooOON, assembly, machine L
[00 52] An example of a construction method of the
variable (availabllltyorder number, process name, resource name /
of (b) will be described.
First, the variable/constant construction unit 105 extracts the "product class" from the "product order information of each order number" registered in the product order input registration unit 104 (see Figs. 6), and extracts process information belonging to the extracted "product class" from the process information registered in the process input registration unit 103 (see Figs. 5).
Next, based on the results of extraction as above, the variable/constant construction unit 105 constructs as decision variables,availability of each "order number" of the product order, each "process name" registered in association v/ith this order number, and each "resource name" registered as the primary resource and the secondary resource in association with this order number. [0053] In this embodiment, for example, the following decision variables are constructed.
AvailabilityooOOl, machining, machine 1 Availabili tyooOOl, machining, machine 2 AvailabilityooOOl, standby, machine 1
- 40

AvailabilityoooOl, standby/ machine 2
AvailabilityoOOOl, assembly, machine 1
AvailabilityoooOl, assembly, machine L-1
AvailabilityoooOl, assembly, machine h
[0054] AvailabilityoO0O2, machining, machine 1
Availabilityooo02, machining, machine 2
AvailabilityoooOl, standby, machine 2
Availabilityooo02, standby, machine 2
Availabilityoo002, assembly, machine 1 Aval labili tyoo002, assembly, machine L-1 AvailabilityoO0O2, assembly, machine L
[0055] AvailabilityoooOl?, machining, machine 1
AvailabilityooOON, standby, machine L-1
AvailablityooOON, assembly, machine L-1 AvailablityooOON, assembly, machine L
[0056] Next, an example of a construction method of the variable (prior and subsequent j udgmentorder number,
order number, process name, resource name) Ol (C) Will be
described.
First, the variable/constant construction unit 105 extracts the "product class" from the "product order information of each order number" registered in the product order input registration unit 104 (see Figs. 6), and extracts process information belonging to the extracted "product class" from the process
- 41 -

information registered in the process input registration unit 103 {see Figs. 5).
Next, based on the results of extraction as above, the variable/constant construction unit 105 constructs as decision variables prior and subsequent judgment of each "order number" of tv/o different product orders, each "process name" registered in association v/ith this order number, and each "resource name" registered as the primary resource and the secondary resource in association with this order number.
[0057] In this embodiment, for example, the following decision variables are constructed. Prior and subsequent j udgmentooooi, 00002, machining, machine 1 Prior and subsequent judgmentooooi,00002, machining, machine 2 Prior and subsequent j udgmentooooi, 00002, standby, machine 1 Prior and subsequent judgmentooooi,00002, standby, machine 2
Prior and subsequent j udgmentooooi,00002, assembly, machine 1 Prior and subsequent j udgmentooooi, 00002, assembly, machine L-I Prior and subsequent j udgmentooooi, 00002, assembly, machine L
[0058] Prior and subsequent j udgmentooooi,OOOOM, machining,
machine 1
Prior and subsequent judgmentooooi,OOOOH, machining, machine 2 Prior and subsequent judgmentooooi,OOOOK, standby, machine 1 Prior and subsequent judgmentooooi,OOOON, standby, machine 2
Prior and subsequent judgmentooooi,OOOON, assembly, machine 1
- 42 -

Prior and subsequent j udgmentooooi,ooooH, assembly, machine L-I Prior and subsequent j udgmentooooi,ooooH, assembly, machine L
[0059] Prior and subsequent judgmentoooo (H-D ,000013,
machining, machine 1
Prior and subsequent j udgmentoooodi-i) ,OOOOH, machining, machine
2
Prior and subsequent judgmentoooo(H-i) ,OOOOH, standby, machine i Prior and subsequent judgmentoooo(H~ii ,OOOOH, standby, machine 2
Prior and subsequent judgmentoooo(i!-i) ,OOOOH, assembly, machine
1
Prior and subsequent j udgmentoooo (H-D ,OOOOH, assembly, machine
L-l
Prior and subsequent j udgmentoooo(H-i} ,OOOON, assembly, machine
L
[00 60] After finishing construction of decision variables as above, the variable/constant construction unit 105 automatically constructs as constants newly registered attributes as attributes of resource, product class, process, and product order.
In the example illustrated in Fig. 3B, as an attribute of resource, an "availability start date" is nev;ly set. Then, the variable/constant construction unit 10 5 constructs constants described in {c) below.
(c) Availability start date resource name
The availability start date^esource name is an
- 43 -

availability start date of each resource name.
In this embodiment, for example, foliov/ing variables are constructed.
Availability start datemachine i = 2011/12/10 Availability start datemachine 2 = 2011/12/7
Availability start datemachine L = 2011/12/12 [0061] The variable/constant construction unit 105 is realized by that, for example, the CPU reads the product order information and the process information from the HDD or the like and creates the above-described variables and constants, and stores the data thereof in the RAM or the like. [0062] (Constraint condition input setting unit 106)
In this embodiment, as v/ill be described later, the constraint expression obtained by formulating the constraint described using at least one of "product class, process, and resource" according to the mathematical programming is used.
Accordingly, the constraint condition input setting unit 106 displays a constraint setting screen displaying at least the contents of the constraint expression, which describes the contents of this constraint by using at least one selection input field of the identification information of "product class, process, and resource" v;hich are mutually associated as described above. Then, the constraint condition input setting unit 10 6 sets the contents of constraint based on results selectively inputted by

the user to the selection input field of this
constraint setting screen. In this embodiment,
follov/ing constraint conditions (A) to (G) are set.
An example of constraint conditions registered in the
constraint condition input setting unit 106 v/ill be
described belov/.
[0063] (A) Resource simultaneous use constraint
The constraint condition input setting unit 10 6 displays a resource simultaneous use constraint setting screen 7 00 illustrated in Figs. 7 on the display device. Fig. 7A is a diagram illustrating an example of an initial state of the resource simultaneous use constraint setting screen 700. Fig. 7B is a diagram illustrating an example of the resource simultaneous use constraint setting screen 7 00 to which information of resource simultaneous use constraint is inputted.
In Figs. 1, the resource simultaneous use constraint setting screen 7 00 is a GUI and has a constraint condition input field 701, a register button 702, an add current constraint button 703, an add next constraint button 7 04, and a delete button 705.
In the constraint condition input field 701 illustrated in Figs. 7, there are provided input fields of "product class" for identifying plural product classes belonging to one resource simultaneous use constraint identified by "constraint name ("constraint l->^")", "process name" for
- 45 -

identifying a process which each "product class" passes, and "resource name" for identifying a resource used in the process which each "product class" passes.
By inputs to this constraint condition input field 701, a resource simultaneous use constraint ("constraint name ("constraint 1-*")") can be registered which indicates that "resource (resource name)" used when a certain "product class" passes a certain "process (process name)" and "resource (resource name)" used when another one or more "product classes" pass a certain "process (process name)" cannot be used in a same period (temporally overlapping period). Details of respective fields will be described belov/.
[00 64] The "constraint name" displayed on the constraint condition input field 701 is identification information of the resource simultaneous use constraint. In this embodiment, in the first input field of the "constraint name", "constraint 1-1" is automatically displayed. Thereafter, an integer is automatically assigned (displayed) sequentially to the part of * in the term "constraint 1-*" in ascending order from an upper line ("constraint 1-1", "constraint 1-2" ...).
In columns v/here characters of "product class", "process name", "resource name" are displayed, any of the "product class" (name), "process name", "resource name" which are registered as described above can be
- 46 -

selectively inputted respectively. This selective input can be realized by performing a pull-dov/n menu display for example. Hov/ever, here, the "process name" and the "resource name" cannot be selectively inputted unless the "product class" is selectively inputted. Then, in the input fields of "process name" and "resource name", only ones registered in mutual association with the selectively inputted "product class" can be inputted selectively. Note that it may also be structured to allow selective input of the "process name" and "resource name" before the "product class". Also in this case, the "'product class', 'process name', 'resource name'" to be selectively inputted are registered in mutual association.
For example, in the process registration screen 500 illustrated in Fig. 5B, when the "process name" used in "normal operation" is "machining", resources whose "resource names" are "machine 1" and "machine 2" are to be used (that is, registered as the primary resource or the secondary resource). In this case, when "normal operation" is selectively inputted as the "product class" of the constraint condition input field 701, and "machining" is selectively inputted as the "process name", a pull-dov?n menu allowing selective input of only one of "machine 1" and "machine 2" as the "resource name" is displayed. Similarly, in the process registration screen 500 illustrated in Fig. 5C, in the process whose "process
- 47 -

name" is "machining" used in the "special operation 1", the resource v/hose "resource name" is "machine 1" is to be used. In this case, v/hen the "special operation 1" is selectively inputted as the "product class" of the constraint condition input field 701, and "machining" is selectively inputted as the "process name", a pull-dov/n menu allov/ing selective input of only "machine 1" as the "resource name" is displayed.
[00 65] In the resource simultaneous use constraint setting screen 7 00 illustrated in Fig. 7B, for example, as the resource simultaneous use constraint named "constraint 1-1", a resource simultaneous use constraint is set v/hich indicates that "machine 1" cannot be used simultaneously for the "machining" in "normal operation" and the "machining" in "special operation 1". Note that in Fig. 7B, the "machine 1" is a resource v/hich can be used simultaneously for plural product orders, and thus the resource simultaneous use constraint can be set. [0066] When the user operates the input device to press dov;n the add current constraint button 7 03 in a state that a specific line in "constraint 1-*" of the constraint condition input field 701 of the resource simultaneous use constraint setting screen 7 00 is specified, one blank line is added to a line next to the specified line. For example, by pressing down the add current constraint button 7 03 once in a state that the second line in the "constraint 1-1" of the
- 41

constraint condition input field 701 is specified, the number of lines of the selection input field of the "constraint 1-1" is changed from "2" as a current value to "3". In this manner, the forming conditions of the resource simultaneous use constraint can be increased.
[00 67] Further, v/hen the user operates the input device to press down the add next constraint button 704 in a state that a region of a left end column of the constraint condition input field 701 of the resource simultaneous use constraint setting screen 700 is specified, one blank selection input field is added to a line next to this region. In this manner, the resource simultaneous use constraint can be added
Further, when the user operates the input device to press dov/n the delete button 705 in a state that a specific line in the "constraint 1-*" of the constraint condition input field 701 of the resource simultaneous use constraint setting screen 700 is specified, the specified line is deleted.
Further, when the user operates the input device to press dov/n the delete button 705 in a state that a region of a second line and thereafter ("constraint 1-*") of the left end column of the constraint condition input field 701 of the resource simultaneous use constraint setting screen 7 00 is specified, (all of) the selection input fields of the specified region ("constraint 1-*") are deleted. For example, in the state illustrated in Fig. 7B, when
- 49 -

the delete button 705 is pressed down in a state that the region of "constraint 1-2" of the left end column is specified, all the selection input fields for the "constraint 1-2" are deleted.
[0068 ] VJhen the input operation to the constraint condition input field 701 of the resource simultaneous use constraint setting screen 7 00 is thus finished and the user operates the input device to press dov;n the register button 7 02, the constraint condition input setting unit 106 stores in the storage medium the contents inputted to the constraint condition input field 701 when the register button 7 02 is pressed down. [0 069] (B) Resource use pattern constraint
The constraint condition input setting unit 106 displays a resource use pattern constraint setting screen 800 illustrated in Fig. 8A on the display device. Fig. 8A is a diagram illustrating an example of an initial state of the resource use pattern constraint setting screen 80 0. Fig. 8B is a diagram illustrating an example of the resource use pattern constraint setting screen 80 0 to vjhich information of resource use pattern constraint is inputted.
In Figs. 8, the resource use pattern constraint setting screen 800 is a GUI and has a constraint condition input field 8 01, a register button 8 02, an add current constraint button 803, an add next constraint button 8 04, and a delete button 805. [007 0] In the constraint condition input field 801
50 -

illustrated in Figs. 8^ there are provided input fields of "product class" for identifying a product class belonging to the resource use pattern constraint identified by "constraint name ("constraint 2-*")", "process name" and "resource name" for identifying the "process" and "resource" corresponding to "condition" in this "product class", and "process name" and "resource name" for identifying the "process" and "resource" corresponding to a "result" v/ith respect to this "condition.
By an input to this constraint condition input field 801, a resource use pattern constraint ("constraint name ("constraint 2-*")") can be registe'red which indicates that, v^hen there is a "condition" that a certain "resource (resource name)" is used v/hen passing through a certain "process (process name)" in a certain "product class", a "result" should be obtained which indicates that a specific "resource (resource name)" should be used v;hen this "product class" passes through a specific "process (process name)". Details of respective fields will be described belov;.
[0071] The "constraint name" displayed on the constraint condition input field 801 is identification information of the resource use pattern constraint. In this embodiment, in the first input field of the "constraint name", "constraint 2-1" is automatically displayed. Thereafter, an
- 51 -

integer is automatically assigned (displayed) sequentially to the part of * in the term "constraint 2-*" in ascending order from an upper line ("constraint 2-1", "constraint 2-2" ...)•
In columns where characters of "product class", "process name", "resource name" are displayed, any of the "product class" (name), "process name", "resource name" v/hich are registered as described above can be selectively inputted respectively. This selective input can be realized by performing a pull-down menu display for example. However, here, the "process name" and the "resource name" cannot be selectively inputted unless the "product class" is selectively inputted. Then, in the input fields of "process name" and "resource name", only ones registered in mutual association with the selectively inputted "product class" can be inputted selectively. Note that it may also be structured to allow selective input of the "process name" and "resource name" before the "product class". Also in this case, the "'product class', 'process name', 'resource name'" to be selectively inputted are registered in mutual association.
[0072] In the resource use pattern constraint setting screen 800 illustrated in Fig. 8B, when "machine 1" is used for "machining" in "normal operation" as the resource use pattern constraint named "constraint 2-1", the resource use pattern constraint indicating that the "machine 1" should be
- 52 -

used for "standby" and "assembly" in the "normal operation" is set,
[0073] When the user operates the input device to press down the add current constraint button 803 in a state that a certain line in the "constraint 2-*" of the constraint condition input field 801 of the resource use pattern constraint setting screen 800 is specified; one blank line is added to a line next to the specified line. In this manner, the forming conditions of the resource use pattern constraint can be increased.
Further, when the user operates the input device to press down the add next constraint button 804 in a state that a region of a left end column of the constraint condition input field 801 of the resource use pattern constraint setting screen 8 00 is specified; one blank selection input field is added to a line next to this region. In this manner, the resource use pattern constraint can be added.
Further, v^hen the user operates the input device to press down the delete button 805 in a state that a specific line in the "constraint 2-*" of the constraint condition input field 801 of the resource use pattern constraint setting screen 800 is specified, the specified line is deleted.
Further, v/hen the user operates the input device to press down the delete button 805 in a state that a region of a second line and thereafter {"constraint 2"*") of the left end column of the constraint
- 53 -

condition input field 801 of the resource use pattern constraint setting screen 800 is specified, (all of) the selection input fields of the specified region ("constraint 2-*") are deleted,
[0074] When the input operation to the constraint condition input field 801 of the resource use pattern constraint setting screen 8 00 is thus finished and the user operates the input device to press down the register button 8 02, the constraint condition input setting unit 106 stores in the storage medium the contents inputted to the constraint condition input field 801 v/hen the register button 8 02 is pressed down .
[0075] (C) Resource use pattern processing time constraint
The constraint condition input setting unit 106 displays a resource use pattern processing time constraint setting screen 900 illustrated in Figs, 9 on the display device. Fig. 9A is a diagram illustrating an example of an initial state of the resource use pattern processing time constraint setting screen 900. Fig. 9B is a diagram illustrating an example of the resource use pattern processing time constraint setting screen 900 to v/hich information of resource use pattern constraint is inputted.
In Figs. 9, the resource use pattern processing time constraint setting screen 900 is a GUI and has a constraint condition input field 901, a register
- 54 -

button 902, an add button 903, and a delete button 904.
In the constraint condition input field 901 illustrated in Figs. 9, there are provided input fields of "product class" for identifying a product class belonging to the resource use pattern processing time constraint identified by "constraint name ("constraint 3-*")", "process name" and "resource name" for identifying the "process" and "resource" corresponding to "condition" in this "product class", and "process name" and "use time" for identifying the "process" and "use time" corresponding to a "result" with respect to this "condition.
By an input to this constraint condition input field 901, a resource use pattern processing time constraint {"constraint name ("constraint 3-*")") can be registered v/hich indicates that, when there is a "condition" that a "resource (resource name)" is used when passing through a certain "process (process name)" in a certain "product class", a "result" should be obtained v/hich indicates that a "use time" of a specific "process (process name)" in this "product class" is limited. Details of respective fields will be described belov/.
[0076] The "constraint name" displayed on the constraint condition input field 901 is identification information of the resource use pattern processing time constraint. In this
- 55 -

embodiment, in the first input field of the "constraint name", "constraint 3-1" is automatically displayed. Thereafter, an integer is automatically assigned (displayed) sequentially to the part of * in the term "constraint 3-*" in ascending order from an upper line .
In columns v/here characters of "product class", "process name", "resource name" are displayed, any of the "product class" (name), "process name", "resource name" which are registered as described above can be selectively inputted respectively. This selective input can be realized by performing a pull-down menu display for example. Hov/ever, here, the "process name" and the "resource name" cannot be selectively inputted unless the "product class" is selectively inputted. Then, in the "process name" and "resource name", only ones registered in mutual association with the selectively inputted "product class" can be inputted selectively. Note that it may also be structured to allov; selective input of the "process name" and "resource name" before the "product class". Also in this case, the "'product class', 'process name', 'resource name'" to be selectively inputted are registered in mutual association.
Further, in the column where characters of "use time" are displayed, a value (numeral) of the above-described "use time" can be inputted. Note that the "use time" for a certain "process name" of a certain "product class" is inputted in the range of "minimum
- 56 -

time" or more to "maximum time" or less registered v/ith respect to this "process name" of this "product class" (see Figs. 5 regarding the "minimum time", "maximum time").
[0077] In the resource use pattern processing time constraint setting screen 900 illustrated in Fig. 9B, when "machine 1" is used for "machining" in "normal operation" as the resource use pattern processing time constraint named "constraint 3-1", the resource use pattern processing time constraint indicating that the "use time" of the "machining" in the "normal operation" should be limited to 1.8 [hour] is set. [0078] When the user operates the input device to press dovm the add button 903 in a state that a certain line in the constraint condition input field 901 of the resource use pattern processing time constraint setting screen 900 is specified, one blank input field is added to a line next to the specified line. In this manner, the resource use pattern processing time constraint can be increased.
Further, when the user operates the input device to press dovm the delete button 904 in a state that a specific line of the constraint condition input field 901 of the resource use pattern processing time constraint setting screen 900 is specified, (all of) the input fields of the specified line are deleted. [007 9] VJhen the input operation to the constraint condition input field 901 of the resource use pattern processing time constraint setting screen 900 is thus
- 57 -

finished and the user operates the input device to press dov;n the register button 902, the constraint condition input setting unit 10 6 stores in the storage medium the contents inputted to the constraint condition input field 901 v/hen the register button 902 is pressed down, [0080] (D) Same lot constraint
The constraint condition input setting unit 10 6 displays a same lot constraint setting screen 10 00 illustrated in Figs. 10 on the display device. Fig. 10A is a diagram illustrating an example of an initial state of the same lot constraint setting screen 1000. Fig. lOB is a diagram illustrating an example of the same lot constraint setting screen 1000 to v/hich information of same lot constraint is inputted.
In Figs. 10, the same lot constraint setting screen 1000 is a GUI and has a constraint condition input field 1001, a register button 1002, an add button 1003, and a delete button 1004. [0081] An initial state of the same lot constraint setting screen 1000 is such that input items {region v/here characters of "constraint name", "product class", "process name", "prior process coupling type", "standby time" are displayed) of the constraint condition input field 1001, a first input field (input field for "constraint 4-1"), the register button 1002, the add button 1003, and the delete button 100 4 are displayed. Here, the lot means a set
- 58 -

of plural product orders, and manufacturing of product orders is carried out in units of this lot. Product orders of the same product class belong to the same lot.
[0082] In the constraint condition input field 1001 illustrated in Figs. 10, there are provided input fields of "product class" for identifying a product class belonging to the same lot constraint identified by "constraint name {"constraint 4-*")"^ "process name" for identifying a "process" v/hich this "product class" passes, "prior process coupling type" defining a temporally prior and subsequent relation of two product orders belonging to this "product class" v;hen passing through this "process", and "standby time" of a product order passing through this "process" temporally subsequently out of the tv/o product orders
By inputs to this constraint condition input field 1001, for a product order which passes the "process (process name)" temporally subsequently out of two product orders, which are temporally prior and subsequent, belonging to a certain "product order", a same lot constraint {"constraint name ("constraint 4-*'*)"} which indicates that the product order should pass through this "process (process name)" in the relation indicated by the "prior process coupling type" after waited by the "standby time" can be registered. Details of respective fields will be described below. [0083] The "constraint name" displayed on the
- 59 -

constraint condition input field 1001 is
identification information of the same lot constraint In this embodiment, in the first input field of the "constraint name"^ "constraint 4-1" is automatically displayed. Thereafter, an integer is automatically assigned (displayed) sequentially to the part of '^ in the term "constraint 4-*" in ascending order from an upper line.
In columns where characters of "product class", "process name" are displayed, any of the "product class" (name), "process name" which are registered as described above, can be selectively inputted respectively. This selective input can be realized by performing a pull-down menu display for example. Hov/ever, here, the "process name" cannot be selectively inputted unless the "product class" is selectively inputted. Then, in the input field of "process name", only one registered in mutual association v/ith the selectively inputted "product class" can be selectively inputted. Note that it may also be structured to allov; selective input of the "process name" before the "product class". Also in this case, the "'product class', 'process name'" to be selectively inputted are registered in mutual association.
[0084] The "prior process coupling type" indicates, out of "tv;o 'product orders' in the same lot" executed temporally sequentially in a process inputted in the input field of the "process name", a
- 60 -

temporally relation in this process betv/een one for which this process is executed first and one for v;hich this process is executed later. In this embodiment, it is possible to selectively input the "prior process coupling type" among preset ones. This selective input can be realized by performing a pull-down menu display for example, Note that in the foliov;ing description, the "product order executed later" will be referred to as "self order" as necessary, and the "product order executed first" will be referred to as "prior order" as necessary. [0085] In this embodiment, "(prior) end time (self) start" and "(prior) start time (self) start" are set in advance as the "prior process coupling type". The "(prior) end time (self) start" indicates that "process inputted to the input field of 'process name'" is started for a first raw
material/intermediate product/product of the self order after "process inputted to the input field of ^process name'" is finished for a last raw material/intermediate product/product of the prior order. The "(prior) start time (self) start" indicates that "process inputted to the input field of 'process name'" is started for a first raw material/intermediate product/product of the self order after "process inputted to the input field of 'process name '" is started for a first rav/ material/intermediate product/product of the prior order.
- 61 -

In the column v/here characters of "standby time" are displayed, a value (numeral) of standby time of the self order with respect to the prior order can be inputted,
[0086] In the same lot constraint setting screen 1000 illustrated in Fig. lOB, for example, as the same lot constraint named "constraint 4-1", v/hen the product class belonging to the same lot is "normal operation" and "assembly" is performed in the prior order and the self order belonging to this lot, a same lot constraint is set ("constraint name ("constraint 4-1")") which indicates that "assembly" of the first rav/ material/intermediate product of the self order is started as soon as "assembly" of the last rav/ material/intermediate product of the prior order is finished (after 0 [min]). Further, as the same lot constraint named "constraint 4-2", v/hen the product class belonging to the same lot is "special operation 1" and "assembly" is performed in the prior order and the self order belonging to this lot, a same lot constraint is set (("constraint name ("constraint 4-2")")) v/hich indicates that "assembly" of the first raw material/intermediate product of the self order is started as soon as "assembly" of the last rav/ material/intermediate product of the prior order is finished (after 0 [min]).
[008 7] When the user operates the input device to press dov/n the add button 1003 in a state that a specific line in "constraint 4-*" of the constraint
- 62 -

condition input field 10 01 of the same lot constraint setting screen 1000 is specified, one blank line is added to a line next to the specified line. In this manner, the resource use pattern constraint can be added.
Further, when the user operates the input device to press down the delete button 1004 in a state that a specific line of the constraint condition input field 1001 of the same lot constraint setting screen 1000 is specified, (all of) the input fields of the specified line are deleted.
[008 8] When the input operation to the constraint condition input field 1001 of the same lot constraint setting screen 100 0 is thus finished and the user operates the input device to press dov/n the register button 1002, the constraint condition input setting unit 106 stores in the storage medium the contents inputted to the constraint condition input field 1001 v/hen the register button 10 02 is pressed down. [0089] (E) Different lot constraint
The constraint condition input setting unit 106 displays a different lot constraint setting screen 1100 illustrated in Figs. 11 on the display device. Fig. IIA is a diagram illustrating an example of an initial state of the different lot constraint setting screen 1100. Fig. IIB is a diagram illustrating an example of the different lot constraint setting screen 110 0 to which information of different lot constraint is inputted.
- 63 -

In Figs. 11/ the different lot' constraint setting screen 1100 is a GUI and has a constraint condition input field 1101, a register button 1102, an add current constraint button 1103, an add next constraint button 1104, and a delete button 1105. [0090] In the constraint condition input field 1101 illustrated in Figs. 11, there are provided input fields of "product class" for identifying plural product classes belonging to the different lot constraint identified by "constraint name ("constraint 5-*")", "process names" for respectively identifying "processes" which these "product classes" pass, "prior process coupling type" defining a temporally prior and subsequent relation of each of two lots belonging to this "product class" when passing through these "processes", and "standby time" of a lot passing through the "process" temporally subsequently out of the two lots.
By inputs to this constraint condition input field 1101, for a lot v/hich passes the "process (process name) " temporally subsequently out of tv;o lots, which are temporally prior and subsequent, belonging to same or different "product classes", a different lot constraint ("constraint name ("constraint 5-*")") which indicates that the lot should pass through this "process (process name)" in the relation indicated by the "prior process coupling type" after waited by the "standby time" can be registered. Details of respective fields v/ill be
- 64 -

described below.
[0091] The "constraint name" displayed on the constraint condition input field 1101 is identification information of the different lot constraint. In this embodiment, in the first input field of the "constraint name", "constraint 5-1" is automatically displayed. Thereafter, an integer is automatically assigned (displayed) sequentially to the part of * in the term "constraint 5-*" in ascending order from an upper line.
In columns where characters of "product class", "process name" are displayed, any of the "product class" (name) , "process name" v/hich are registered as described above, can be selectively inputted respectively. This selective input can be realized by performing a pull-down menu display for example. However, here, the "process name" cannot be selectively inputted unless the "product class" is selectively inputted. Then, in the input field of "process name", only one registered in mutual association with the selectively inputted "product class" can be selectively inputted. Note that it may also be structured to allov/ selective input of the "process name" before the "product class". Also in this case, the "'product class', 'process name'" to be selectively inputted are registered in mutual association.
[0092] The "prior process coupling type" indicates, out of tv70 lots executed temporally sequential ly in a
- 65 -

process inputted in the input field of the "process name", a temporally relation in this process betv;een a lot for which this process is executed first and a lot for v;hich this process is executed later. In this embodiment, it is possible to selectively input the "prior process coupling type" among preset ones. This selective input can be realized by performing a pull-dov/n menu display for example. Note that in the following description, the "lot executed later" v/ill be referred to as "self lot" as necessary, and the "lot executed first" will be referred to as "prior lot" as necessary.
[0093] In-this embodiment, "(prior) end time (self) start" and "(prior) start time (self) start" are set in advance as the "prior process coupling type". The "(prior) end time (self) start" indicates that "process inputted to the input field of 'process name'" is started for a first raw
material/intermediate product/product of the self lot after "process inputted to the input field of 'process name'" is finished for a last rav/ material/intermediate product/product of the prior lot. The "(prior) start time (self) start" indicates that "process inputted to the input field of 'process name'" is started for a first rav/
material/intermediate product/product of the self lot after "process inputted to the input field of 'process name'" is started for a first raw material/intermediate product/product of the prior
- 66 -

lot.
In the column where characters of "standby time" are displayed, a value (numeral) of standby time of the self lot with respect to the prior lot can be inputted.
[009 4] In the different lot constraint setting screen 1100 illustrated in Fig. IIB, the foliov;ing first to four different lot constraints are set as a resource use pattern constraint named "constraint 5-1" .
First, when the product class to which the prior lot belongs is "normal operation" and the product class to vjhich the self lot belongs is "normal operation", and "assembly" is performed between the prior lot and the self lot, a different lot constraint is set which indicates that "assembly" of the first raw material/intermediate product of the self lot is started at 1.5 [min] after "assembly" of the last raw material/intermediate product of the prior lot is finished.
Second, when the product class to v/hich the prior lot belongs is "normal operation" and the product class to which the self lot belongs is "special operation 1", and "assembly" is performed between the prior lot and the self lot, a different lot constraint is set which indicates that "assembly" of the first rav/ material/intermediate product of the self lot is started at 2.0 [min] after "assembly" of the last raw material/intermediate product of the
- 67 -

prior lot is finished. When the product classes to which the prior lot and the self lot belong are thus different, a value of "standby time" set to the self lot is employed.
Third, when the product class to v/hich the prior lot belongs is "special operation 1" and the product class to v/hich the self lot belongs is "special operation 1", and "assembly" is performed betv/een the prior lot and the self lot, a different lot constraint is set which indicates that "assembly" of the first raw material/intermediate product of the self lot is started at 2.0 [min] after "assembly" of the last rav/ material/intermediate product of the prior lot is finished.
Fourth, vjhen the product class to v/hich the prior lot belongs is "special operation 1" and the product class to which the self lot belongs is "normal operation", and "assembly" is performed betv/een the prior lot and the self lot, a different lot constraint is set v;hich indicates that "assembly" of the first raw material/intermediate product of the self lot is started at 1.5 [min] after "assembly" of the last rav/ material/intermediate product of the prior lot is finished.
[0095] When the user operates the input device to press down the add current constraint button 1103 in a state that a specific line in "constraint 5-*" of the constraint condition input field 1101 of the different lot constraint setting screen 1100 is
- 68 -

specified^ one blank line is added to a line next to the specified line. In this manner, the forming conditions of the different lot constraint can be increased.
Further, when the user operates the input device to press dov/n the add next constraint button 1104 in a state that a region of a left end column of the constraint condition input field 1101 of the different lot constraint setting screen 1100 is specified, one blank input field is added to a line next to this region. In this manner, the different lot constraint can be added.
Further, when the user operates the input device to press dovm the delete button 110 5 in a state that a specific line in the "constraint 5-*" of the constraint condition input field 1101 of the different lot constraint setting screen 1100 is specified, the specified line is deleted.
Further, v/hen the user operates the input device to press down the delete button 1105 in a state that a region of a second line and thereafter ("constraint 5-*") of the left end column of the constraint condition input field 1101 of the different lot constraint setting screen 1100 is specified, (all of) the selection input fields of the specified region ("constraint 5^*") are deleted.
[0096] When the input operation to the constraint condition input field 1101 of the different lot constraint setting screen 1100 is thus finished and
- 69 -

the user operates the input device to press dovjn the register button 1102, the constraint condition input setting unit 106 stores in the storage medium the contents inputted to the constraint condition input field 1101 when the register button 1102 is pressed dov/n . [0097] (F) Resource operation constraint
The constraint condition input setting unit 10 6 displays a resource operation constraint setting screen 12 00 illustrated in Figs. 12 on the display device. Fig. 12A is a diagram illustrating an example of an initial state of the resource operation constraint setting screen 1200. Fig. 12B is a diagram illustrating an example of the resource operation constraint setting screen 1200 to which information of resource operation constraint is inputted.
In Figs. 12, the resource operation constraint setting screen 1200 is a GUI and has a constraint condition input field 1201, a register button 12 02, an add button 1203, and a delete button 1204. [0098] An initial state of the resource operation constraint setting screen 1200 is such that input items (region where characters of "constraint name", "resource name", "start date and time", "end date and time", "capacity" are displayed) of the constraint condition input field 1201, a first input field (input field for "constraint 6-1"), the register button 1202, the add button 12 03, and the delete
70 -

button 120 4 are displayed. In the initial state of the resource operation constraint setting screen 1200, the first input fields are all blank.
[0099] In the constraint condition input field 1201 illustrated in Figs. 12, there are provided input fields of "resource name" for identifying a "resource" belonging to the resource operation constraint identified by "constraint name {"constraint 6-*")", "start date and time" and "end date and time" of limiting "capacity" of this "resource", and "capacity (magnification to maximum capacity)" when it is limited by it.
By inputs to this constraint condition input field 1201, a resource operation constraint ("constraint name ("constraint 6-*")") indicating a limited "capacity" in a period from the "start date and time" to the "end date and time" of the "resource (resource name)" can be registered. Details of respective fields v/ill be described belov/. [0100] The "constraint name" displayed on the constraint condition input field 12 01 is identification information of the resource operation constraint. In this embodiment, in the first input field of the "constraint name", "constraint 6-1" is automatically displayed. Thereafter, an integer is automatically assigned (displayed) sequentially to the part of * in the term "constraint 6-*" in ascending order from an upper line.
In columns where characters of "resource name"
- 71 -

are displayed, any of the "resource names" v/hich are registered as described above can be selectively inputted. This selective input can be realized by performing a pull-down menu display for example.
The "start date and time" means timing to start limiting of the capacity of the resource. In this embodiment, for example, in the column where characters of "start date and time" are displayed, a date and time (numerals) representing this timing can be inputted as the start date and time.
The "end date and time" means timing to end limiting of the capacity of the resource. In this embodiment, for example, in the column where characters of "end date and time" are displayed, a date and time (numerals) representing this timing can be inputted as the end date and time.
The "capacity" means a capacity of the resource in the period in v;hich the capacity of this resource is limited. In this embodiment, for example, a magnification (numeral) v/ith respect to the maximum capacity can be inputted as the capacity. [0101] In the resource operation constraint setting screen 1200 illustrated in Fig. 12B, for example, as a resource operation constraint named "constraint 6-1", a resource operation constraint is set which indicates that the resource v/hose resource name is "machine 1" should use capacity of 0,7 time of its maximum capacity from 9:30 of 23 October 2011 to 8:30 of 24 October 2011.
- 72 -

[ 0102] When the user operates the input device to press dov/n the add button 1203 in a state that a specific line of the constraint condition input field 1201 of the resource operation constraint setting screen 120 0 is specified, one blank input field is added to a line next to the specified line. In this manner, the resource operation constraint can be added,
Further, when the user operates the input device to press down the delete button 120 4 in a state that a specific line of the constraint condition input field 1201 of the resource operation constraint setting screen 1200 is specified, (all of) the input fields of the specified line are deleted. [ 0103] When the input operation to the constraint condition input field 1201 of the resource operation constraint setting screen 1200 is thus finished and the user operates the input device to press dov/n the register button 12 02, the constraint condition input setting unit 10 6 stores in the storage medium the contents inputted to the constraint condition input field 1201 when the register button 1202 is pressed down . [0104] (G) Resource maximum capacity constraint
The constraint condition input setting unit 10 6 displays a resource maximum capacity constraint setting screen 13 00 illustrated in Figs. 13 on the display device. Fig. 13A is a diagram illustrating an example of an initial state of the resource
- 73 -

maximum capacity constraint setting screen 130 0. Fig 13B is a diagram illustrating an example of the resource maximum capacity constraint setting screen 1300 to which information of resource maximum capacity constraint is inputted.
In Figs. 13, the resource maximum capacity constraint setting screen 1300 is a GUI and has a constraint condition input field 1301, a register button 1302, an add button 1303, and a delete button 1304 .
An initial state of the resource maximum capacity constraint setting screen 1300 is such that input items (region where characters of "constraint name", "resource name", "start date and time", "end date and time" are displayed) of the constraint condition input field 1301, the first input field (input field for "constraint 7-1"), the register button 1302, the add button 1303, and the delete button 1304 are displayed. In the initial state of the resource maximum capacity constraint setting screen 1300, the first input fields are all blank.
[0105] In the constraint condition input field 1301 illustrated in Figs. 13, there are provided input fields of "resource name" for identifying a "resource" belonging to the resource maximum capacity constraint identified by "constraint name ("constraint 7-*")", and "start date and time" and "end date and time" of use of this "resource" at maximum capacity.
- 74 "

By inputs to this constraint condition input field 1301, a resource maximum capacity constraint ("constraint name ("constraint 7-*")") indicating a period (period from the "start date and time" to the "end date and time") in which the "resource (resource name)" can be used at its maximum capacity can be registered.
Note that in the above-described resource operation constraint of (F), a period in which a resource cannot be used or a period in which the capacity of a resource is dropped is specified, v;hereas the resource maximum capacity constraint of (G) specifies a resource which can use the maximum capacity and a period in which it can be used at its maximum capacity. Details of respective fields v/ill be described belov/.
[0106] The "constraint name" displayed on the constraint condition input field 1301 is identification information of the resource maximum capacity constraint. In this embodiment, in the first input field of the "constraint name", "constraint 7-1" is automatically displayed. Thereafter, an integer is automatically assigned (displayed) sequentially to the part of * in the term "constraint 7-*" in ascending order from an upper line .
In the column where characters of "resource name" are displayed, any of the "resource names" which are registered as described above can be selectively
- 75 -

inputted. This selective input can be realized by performing a pull~dov/n menu display for example.
The "start date and time" means timing to start use of the maximum capacity of the resource. In this embodiment, for example, in the column where characters of "start date and time" are displayed, a date and time {numerals) representing this timing can be inputted as the start date and time.
The "end date and time" means timing to end use of the maximum capacity of the resource. In this embodiment, for example, in the column v/here characters of "end date and time" are displayed, a date and time (numerals) representing this timing can be inputted as the end date and time.
[0107] In the resource maximum capacity constraint setting screen 1300 illustrated in Figs. 13, for example, as a resource maximum capacity constraint named "constraint 7-1", a resource maximum capacity constraint is set v/hich indicates that the resource v/hose resource name is "machine L-1" can be used at its maximum capacity from 9:30 of 23 October 2011 to 8:30 of 24 October 2011.
[0108] When the user operates the input device to press dov/n the add button 1303 in a state that a specific line of the constraint condition input field 1301 of the resource maximum capacity constraint setting screen 1300 is specified, one blank line is added to a line next to the specified line. In this manner, the resource maximum capacity constraint can
- 76 -

be added.
Further, when the user operates the input device to press dovm the delete button 1304 in a state that a specific line of the constraint condition input field 1301 of the resource maximum capacity constraint setting screen 1300 is specified, (all of) the input fields of the specified line are deleted. [0109] When the input operation to the constraint condition input field 12 01 of the resource maximum capacity constraint setting screen 1300 is thus finished and the user operates the input device to press down the register button 1302, the constraint condition input setting unit 106 stores in the storage medium the contents inputted to the constraint condition input field 1301 when the register button 1302 is pressed dovm. [0110] (H) New constraint
The above constraints of (A) to (G) are determined in advance except the parts inputted by the user. In this embodiment, in addition to these constraints, new constraint condition can be set. Accordingly, the constraint condition input setting unit 10 6 displays a new constraint setting screen 14 00 illustrated in Figs. 14 on the display device. Fig. 14A is a diagram illustrating an example of an initial state of the new constraint setting screen 1400. Fig. 14B is a diagram illustrating an example of the new constraint setting screen 14 00 to v/hich information of new constraint is inputted.
77 -

In Figs. 14, the new constraint setting screen 1400 is a GUI and has a variable name list 1401, a constant name list 1402, an operator list 1403, a new registration constraint input field 1404, a register button 1405, an add button 1406, a delete button 1407, and a registration unnecessary button 14 08. [0111] In the nev/ constraint setting screen 1400 illustrated in Figs. 14, there are provided the "variable name list 14 01" for selecting a variable, the "constant name list 1402" for selecting a constant, the operator list 1403 for selecting an operator, and the new registration constraint input field 1404 displaying a constraint expression formulated by these selections.
By inputs to them, a constraint expression formulated freely by the operator from a "variable (variable name list)" and a "constant (constant name list)" by using an "operator" can be registered as a new constraint (nev/ly registered constraint) " . Details of respective fields v;ill be described below, [0112] In the variable name list 1401, variables constructed by the variable/constant construction unit 105 are listed. When all the variables are not listed, a scroll bar can be displayed on the variable name list 14 01 to scroll display the variables.
In the constant name list 14 02, constants constructed by the variable/constant construction unit 105 are listed. When all the constants are not listed, a scroll bar can be displayed on the constant
- 78 -

CLAIMS
[Claim 1] A scheduling apparatus automatically making a production plan or a distribution plan by mathematical programming by using information of each of
a product order indicating contents of an order of a product,
a process which is processing executed in a course of production or distribution of the product,
a resource v?hich is a human resource and a material resource used in the process, and
a product class which is identification information for distinguishing orders for v;hich processes executed in the course of production or distribution of the product, an order of execution of the processes, and resources used respectively in the processes are same, as one set from others, the scheduling apparatus comprising:
a registration means registering the resources and the processes, the processes and the product classes, and the product classes and the product orders in mutual association in a recording medium;
a construction means constructing variables including a start time and end time of each product order/each process/each resource as decision variables used v/hen formulating an objective function and a constraint expression according to the mathematical programming based on the product classes, the processes, the resources, and the product orders
- 125 -

v/hich are mutually associated by the registration means;
a constraint setting means setting contents of the constraint expression based on an input operation of identification information by a user to a selection input field for inputting at least one piece of identification information of the product classes^ the processes, and the resources which are mutually associated by the registration means;
an object setting means setting contents of the obj ective function based on an input operation of identification information and an object by the user to a selection input field for inputting identification information of the product classes and the processes which are mutually associated by the registration means and an object by the obj ective function;
a constraint expression formulating means formulating the constraint expression by using the variables constructed by the construction means based on the product classes, the processes, the resources, and the product orders v/hich are mutually associated by the registration means and the contents of the constraint expression set by the constraint setting me a n s;
an objective function formulating means formulating the objective function by using the variables constructed by the construction means based on the product classes, the processes, the resources,
- 126 -

and the product orders v/hich are mutually associated by the registration means and the contents of the objective function set by the object setting means; . and
a plan creating means performing optimization calculation by the mathematical programming to derive the decision variable v;hich maximize or minimize the obj ective function formulated by the objective function formulating means within a range which satisfies constraints based on the constraint expression formulated by the constraint expression formulating means.
[Claim 2] The scheduling apparatus according to claim 1/ vj herein
the registration means
further has a resource registration screen display means displaying on a display device a resource registration screen displaying at least an input field of resource information including identification information of the resources and attribute information of the resources set in advance to be a constant in at least one of the objective function and the constraint expression, and
registers in a storage medium the resource information obtained based on an operation by the user to a resource registration screen displayed by the resource registration screen display means, and
the constraint expression formulating means formulates the constraint expression by using the
- 127 -

variables constructed by the construction means and the attribute information included in the resource information based on the product classes, the processes, the resources, and the product orders v/hich are mutually associated by the registration means and the contents of the constraint expression set by the constraint setting means, and
the objective function formulating means formulates the obj ective function by using the variables constructed by the construction means and the attribute information included in the resource information based on the product classes, the processes, the resources, and the product orders which are mutually associated by the registration means and the contents of the objective function set by the object setting means.
[Claim 3] The scheduling apparatus according to claim 2, wherein
the resource registration screen display means displays a resource registration screen in which an input field of attribute information to be a constant in at least one of the objective function and the constraint expression is added to an input field of the resource information based on an operation by the user to the resource registration screen, and
the construction means further constructs a constant based on the attribute information inputted to the input field added to the resource registration screen as a constant used when an objective function
- 128 -

and a constraint expression for the objective function are formulated according to the mathematical programming based on the product classes, the processes, the resources, and the product orders v/hich are mutually associated by the registration means.
[Claim 4] The scheduling apparatus according to claim 2 or 3, v;herein
the registration means
further has a product class registration screen display means displaying on a display device a product class registration screen displaying at least an input field of product class information including the identification information of the product class, and
registers in a storage medium the product class information obtained based on an operation by the user to the product class registration screen displayed by the product class registration screen display means.
[Claim 5] The scheduling apparatus according to claim 4, comprising
a process registration screen display means displaying on a display device a process registration screen displaying at least an input field of process information including information identifying each of processes executed on the product classes registered by the registration means, an order of executing the processes, and resources used respectively in the
129 -

processes, v/herein
an input field of the resources in the process registration screen is a field v/here resources to be used respectively in the processes are selectively inputted from among the resources registered by the registration means, and
the registration means registers in the storage medium the process information obtained based on an operation by the user to the process registration screen displayed by the process registration screen display means.
[Claim 6] The scheduling apparatus according to claim 5, v;herein
the process registration screen display means displays a process registration screen in v/hich an input field of attribute information of each of the processes is added to an input field of the process information based on an operation by the user to the process registration screen.
[Claim 7] The scheduling apparatus according to claim 5 or 6, wherein
the registration means further has a product order registration screen display means displaying on a display device a product order registration screen displaying at least an input field of product order information including the identification information of the product order, a product class to which the product order belongs, an ordered amount in this product order, and a delivery date of the product
- 130 -

order,
the input field of the product class in the product order registration screen is a field selectively inputted from the product classes registered by the registration means, and
the registration means registers in a storage medium the product order information obtained based on an operation by the user to the product order registration screen displayed by the product order registration screen display means.
[Claim 8] The scheduling apparatus according to claim 1, wherein
the product order registration screen display means displays a product order registration screen in which an input field of attribute information of each of the product orders is added to the input field of the product order information based on an operation by the user to the product order registration screen. [Claim 9] The scheduling apparatus according to any one of claims 1 to 8, wherein
the constraint expression formulating means
further has a new constraint setting screen display means displaying on a display device a nev/ constraint setting screen displaying at least a selection field of the variables constructed by the construction means and a selection field of operators, and
a constraint expression is further formulated based on an operation by the user to the new
~ 131 -

constraint setting screen displayed by the new constraint setting screen display means. [Claim 10] The scheduling apparatus according to any one of claims 1 to 9, wherein
the objective function formulating means
further has a new object setting screen display means displaying on a display device a new object setting screen displaying at least a selection field of the variables constructed by the construction means and a selection field of operators, and
formulates the objective function by using the variables constructed by the construction means based on the product classes, the processes, the resources, and the product orders which are mutually associated by the registration means, the contents of the obj ective function set by the object setting means, and the contents of the objective function based on an operation by the user to the nev; object setting screen displayed by the new object setting screen display means.
[Claim 11] The scheduling apparatus according to any one of claims 1 to 10, comprising
a plan output means outputting to an external apparatus a signal related to a production plan constituted of the decision variable created by the plan creating means.
[Claim 12] The scheduling apparatus according to claim 11, v/herein
the plan output means transmits to an external
- 132 -

apparatus a display instruction signal for instructing display of information related to the production plan as a signal related to the production plan, so as to display the information related to the production plan on a display device, [Claim 13] The scheduling apparatus according to claim 11, v/herein
the resources include a material resource which automatically operates based on a control signal, and
the plan output means transmits to an external apparatus a control signal for instructing a start of operation at the start time and an end of operation at the end time based on the production plan as a signal related to the production plan, so as to make the resource operate automatically basedon the control signal.
[Claim 14] The scheduling apparatus according to any one of claims 1 to 13, wherein
the mathematical programming is mixed integer programming or mixed integer second order programming [Claim 15] A scheduling method automatically making a production plan or a distribution plan on a computer by mathematical programming by using information of each of
a product order indicating contents of an order of a product,
a process which is processing executed in a course of production or distribution of the product,
a resource which is a human resource and a
" 133 -

material resource used in the process, and
a product class which is identification information for distinguishing orders for which processes executed in the course of production or distribution of the product, an order of execution of the processes, and resources used respectively in the processes are same, as one set from others, the scheduling method comprising:
a registration step of registering the resources and the processes, the processes and the product classes, and the product classes and the product orders in mutual association in a recording medium;
a construction step of constructing variables including a start time and end time of each, product order/each process/each resource as decision variables used v/hen formulating an obj ective function and a constraint expression according to the mathematical programming based on the product classes, the processes, the resources, and the product orders which are mutually associated by the registration step;
a constraint setting step of setting contents of the constraint expression based on an input operation of identification information by a user to a selection input field for inputting at least one piece of identification information of the product classes, the processes, and the resources v/hich are mutually associated by the registration step;
an object setting step of setting contents of the
- 134 -

objective function based on an input operation of identification information and an object by the user to a selection input field for inputting identification information of the product classes and the processes v;hich are mutually associated by the registration step and an object by the objective function;
a constraint expression formulating step of formulating the constraint expression by using the variables constructed by the construction step based on the product classes, the processes, the resources, and the product orders which are mutually associated by the registration step and the contents of the constraint expression set by the constraint setting step;
an objective function formulating step of formulating the objective function by using the variables constructed by the construction step based on the product classes, the processes, the resources, and the product orders v/hich are mutually associated by the registration step and the contents of the objective function set by the object setting step; and
a plan creating step of performing optimization calculation by the mathematical programming to derive the variable which maximize or minimize the objective function formulated by the obj ective function formulating step within a range which satisfies constraints based on the constraint expression
- 135 -

formulated by the constraint expression formulating step ,
[Claim 16] The scheduling method according to claim 15, wherein
the registration step
further has a resource registration screen display step of displaying on a display device a resource registration screen displaying at least an input field of resource information including identification information of the resources and attribute information of the resources set in advance to be a constant in at least one of the objective function and the constraint expression, and
registers in a storage medium the resource information obtained based on an operation by the user to a resource registration screen displayed by the resource registration screen display step, and
the constraint expression formulating step formulates the constraint expression by using the variables constructed by the construction step and the attribute information included in the resource information based on the product classes, the processes, the resources, and the product orders which are mutually associated by the registration step and the contents of the constraint expression set by the constraint setting step, and
the objective function formulating step formulates the objective function by using the variables constructed by the construction step and
- 136 -

the attribute information included in the resource information based on the product classes, the processes, the resources, and the product orders v/hich are mutually associated by the registration step and the contents of the objective function set by the object setting step.
[Claim 17] The scheduling method according to claim 16, wherein
the resource registration screen display step displays a resource registration screen in which an input field of attribute information to be a constant in at least one of the objective function and the constraint expression is added to an input field of the resource information based on an operation by the user to the resource registration screen, and
the construction step further constructs a constant based on the attribute information inputted to the input field added to the resource registration screen as a constant used v/hen an objective function and a constraint expression for the obj ective function are formulated according to the mathematical programming based on the product classes, the processes, the resources, and the product orders which are mutually associated by the registration step .
[Claim 18] The scheduling method according to claim 16 or 17, wherein
the registration step
further has a product class registration screen
- 137 -

display step of displaying on a display device a product class registration screen displaying at least an input field of product class information including the identification information of the product class, and
registers in a storage medium the product class information obtained based on an operation by the user to the product class registration screen displayed by the product class registration screen display step.
[Claim 19] The scheduling method according to claim 18, comprising
a process registration screen display step of displaying on a display device a process registration screen displaying at least an input field of process information including information identifying each of processes executed on the product classes registered by the registration step, an order of executing the processes, and resources used respectively in the processes, v?herein
an input field of the resources in the process registration screen is a field v/here resources to be used respectively in the processes are selectively inputted from among the resources registered by the registration step, and
the registration step registers in the storage medium the process information obtained based on an operation by the user to the process registration screen displayed by the process registration screen
- 138 -

display step.
[Claim 20] The scheduling method according to claim
19, wherein
the process registration screen display step displays a process registration screen in v/hich an input field of attribute information of each of the processes is added to an input field of the process information based on an operation by the user to the process registration screen.
[Claim 21] The scheduling method according to claim 19 or 20, wherein
the registration step further has a product order registration screen display step of displaying on a display device a product order registration screen displaying at least an input field of product order information including the identification information of the product order, a product class to which the product order belongs, an ordered amount in this product order, and a delivery date of the product order,
the input field of the product class in the product order registration screen is a field selectively inputted from the product classes registered by the registration step, and
the registration step registers in a storage medium the product order information obtained based on an operation by the user to the product order registration screen displayed by the product order registration screen display step.
- 139 -

[Claim 22] The scheduling method according to claim 21, wherein
the product order registration screen display step displays a product order registration screen in which an input field of attribute information of each of the product orders is added to the input field of the product order information based on an operation by the user to the product order registration screen. [Claim 23] The scheduling method according to any one of claims 15 to 22, v/herein
the constraint expression formulating step further has a new constraint setting screen display step of displaying on a display device a nev/ constraint setting screen displaying at least a selection field of the variables constructed by the construction step and a selection field of operators, and
a new constraint expression is further formulated based on an operation by the user to the new constraint setting screen displayed by the nev; constraint setting screen display step, [Claim 24] The scheduling method according to any one of claims 15 to 23, wherein
the objective function formulating step further has a new object setting screen display step of displaying on a display device a new object setting screen displaying at least a selection field of the variables constructed by the construction step and a selection field of operators, and
- 140 -

formulates the objective function by using the variables constructed by the construction step based on the product classes, the processes, the resources, and the product orders which are mutually associated by the registration step, the contents of the objective function set by the object setting step, and the contents of the objective function based on an operation by the user to the nev; object setting screen displayed by the new object setting screen display step.
[Claim 25] The scheduling method according to any one of claims 15 to 24, comprising
a plan output step of outputting to an external apparatus a signal related to a production plan constituted of the decision variable created by the plan creating step.
[Claim 26] The scheduling method according to claim 25, wherein
the plan output step transmits to an external apparatus a display instruction signal for instructing display of information related to the production plan as a signal related to the production plan, so as to display the information related to the production plan on a display device.
[Claim 27] The scheduling method according to claim 25, wherein
the resources include a material resource which automatically operates based on a control signal, and
the plan output step transmits to an external
- 141 -

apparatus a control signal for instructing a start of operation at the start time and an end of operation at the end time based on the production plan as a signal related to the production plan, so as to make the resource operate automatically based on the control signal.
[Claim 28] The scheduling method according to any one of claims 15 to 27, v/herein
the mathematical programming is mixed integer programming or mixed integer second order programming [Claim 29] A computer program for causing a computer to perform automatically making a production plan or a distribution plan by mathematical programming by using information of each of
a product order indicating contents of an order of a product,
a process v/hich is processing executed in a course of production or distribution of the product,
a resource which is a human resource and a material resource used in the process, and
a product class which is identification information for distinguishing orders for which processes executed in the course of production or distribution of the product, an order of execution of the processes, and resources used respectively in the processes are same, as one set from others, the computer program causing a computer to execute:
a registration step of registering the resources and the processes, the processes and the product
- 142 -

classes, and the product classes and the product orders in mutual association in a recording medium;
a construction step of constructing variables including a start time and end time of each product order/each process/each resource as decision variables used when formulating an objective function and a constraint expression according to the mathematical programming based on the product classes, the processes, the resources, and the product orders which are mutually associated by the registration step;
a constraint setting step of setting contents of the constraint expression based on an input operation of identification information by a user to a selection input field for inputting at least one piece of identification information of the product classes, the processes, and the resources which are mutually associated by the registration step;
an object setting step of setting contents of the objective function based on an input operation of identification information and an object by the user to a selection input field for inputting identification information of the product classes and the processes v/hich are mutually associated by the registration step and an object by the objective function;
a constraint expression formulating step of formulating the constraint expression by using the variables constructed by the construction step based
- 143 -

on the product classes, the processes, the resources, and the product orders v/hich are mutually associated by the registration step and the contents of the constraint expression set by the constraint setting s t e p ;
an objective function formulating step of formulating the objective function by using the variables constructed by the construction step based on the product classes, the processes, the- resources, and the product orders which are mutually associated by the registration step and the contents of the objective function set by the object setting step; and
a iplan creating step of performing optimization calculation by the mathematical programming to derive the variable v;hich maximize or minimize the obj ective function formulated by the objective function' formulating step v;ithin-a range which satisfies constraints based on the constraint expression formulated by the constraint expression formulating step .
Dated this 12.09.2014
[RANJNA MEHTA-DUTT]
OF REMFRY & SAGAR
ATTORNEY FOR THE APPLICANT[S]

Documents

Application Documents

# Name Date
1 7617-DELNP-2014-IntimationOfGrant16-10-2023.pdf 2023-10-16
1 PCT-IB-304.pdf 2014-09-26
2 7617-DELNP-2014-PatentCertificate16-10-2023.pdf 2023-10-16
2 Other relevant documnets.pdf 2014-09-26
3 GPA.pdf 2014-09-26
3 7617-DELNP-2014-Information under section 8(2) [10-05-2023(online)].pdf 2023-05-10
4 Form 5.pdf 2014-09-26
4 7617-DELNP-2014-Written submissions and relevant documents [10-05-2023(online)].pdf 2023-05-10
5 Form 3.pdf 2014-09-26
5 7617-DELNP-2014-Correspondence to notify the Controller [21-04-2023(online)].pdf 2023-04-21
6 Form 2 + Specification.pdf 2014-09-26
6 7617-DELNP-2014-FORM-26 [21-04-2023(online)].pdf 2023-04-21
7 Drawings.pdf 2014-09-26
7 7617-DELNP-2014-US(14)-HearingNotice-(HearingDate-26-04-2023).pdf 2023-04-06
8 7617-DELNP-2014.pdf 2014-11-01
8 7617-DELNP-2014-AMMENDED DOCUMENTS [03-10-2019(online)].pdf 2019-10-03
9 7617-DELNP-2014-FORM 13 [03-10-2019(online)].pdf 2019-10-03
9 7617-delnp-2014-Pct-(11-03-2015).pdf 2015-03-11
10 7617-delnp-2014-Form-3-(11-03-2015).pdf 2015-03-11
10 7617-DELNP-2014-MARKED COPIES OF AMENDEMENTS [03-10-2019(online)].pdf 2019-10-03
11 7617-delnp-2014-Form-1-(11-03-2015).pdf 2015-03-11
11 7617-DELNP-2014-RELEVANT DOCUMENTS [03-10-2019(online)].pdf 2019-10-03
12 7617-delnp-2014-Correspondance Others-(11-03-2015).pdf 2015-03-11
12 7617-DELNP-2014-Correspondence-180919.pdf 2019-09-19
13 7617-DELNP-2014-Power of Attorney-180919.pdf 2019-09-19
13 marked version_as filed.pdf 2015-03-13
14 7617-DELNP-2014-ABSTRACT [13-09-2019(online)].pdf 2019-09-13
14 Contrl ltr & Form 13_as filed.pdf 2015-03-13
15 7617-DELNP-2014-CLAIMS [13-09-2019(online)].pdf 2019-09-13
15 amended docs._as filed.pdf 2015-03-13
16 7617-DELNP-2014-COMPLETE SPECIFICATION [13-09-2019(online)].pdf 2019-09-13
16 7617-DELNP-2014-RELEVANT DOCUMENTS [17-06-2019(online)].pdf 2019-06-17
17 7617-DELNP-2014-FORM 13 [17-06-2019(online)].pdf 2019-06-17
17 7617-DELNP-2014-DRAWING [13-09-2019(online)].pdf 2019-09-13
18 7617-DELNP-2014-FER.pdf 2019-06-27
18 7617-DELNP-2014-FER_SER_REPLY [13-09-2019(online)].pdf 2019-09-13
19 7617-DELNP-2014-OTHERS [13-09-2019(online)].pdf 2019-09-13
19 7617-DELNP-2014-Power of Attorney-180619.pdf 2019-06-29
20 7617-DELNP-2014-Correspondence-180619.pdf 2019-06-29
20 7617-DELNP-2014-OTHERS-180619.pdf 2019-06-29
21 7617-DELNP-2014-Correspondence-180619.pdf 2019-06-29
21 7617-DELNP-2014-OTHERS-180619.pdf 2019-06-29
22 7617-DELNP-2014-OTHERS [13-09-2019(online)].pdf 2019-09-13
22 7617-DELNP-2014-Power of Attorney-180619.pdf 2019-06-29
23 7617-DELNP-2014-FER.pdf 2019-06-27
23 7617-DELNP-2014-FER_SER_REPLY [13-09-2019(online)].pdf 2019-09-13
24 7617-DELNP-2014-FORM 13 [17-06-2019(online)].pdf 2019-06-17
24 7617-DELNP-2014-DRAWING [13-09-2019(online)].pdf 2019-09-13
25 7617-DELNP-2014-COMPLETE SPECIFICATION [13-09-2019(online)].pdf 2019-09-13
25 7617-DELNP-2014-RELEVANT DOCUMENTS [17-06-2019(online)].pdf 2019-06-17
26 7617-DELNP-2014-CLAIMS [13-09-2019(online)].pdf 2019-09-13
26 amended docs._as filed.pdf 2015-03-13
27 7617-DELNP-2014-ABSTRACT [13-09-2019(online)].pdf 2019-09-13
27 Contrl ltr & Form 13_as filed.pdf 2015-03-13
28 7617-DELNP-2014-Power of Attorney-180919.pdf 2019-09-19
28 marked version_as filed.pdf 2015-03-13
29 7617-delnp-2014-Correspondance Others-(11-03-2015).pdf 2015-03-11
29 7617-DELNP-2014-Correspondence-180919.pdf 2019-09-19
30 7617-delnp-2014-Form-1-(11-03-2015).pdf 2015-03-11
30 7617-DELNP-2014-RELEVANT DOCUMENTS [03-10-2019(online)].pdf 2019-10-03
31 7617-delnp-2014-Form-3-(11-03-2015).pdf 2015-03-11
31 7617-DELNP-2014-MARKED COPIES OF AMENDEMENTS [03-10-2019(online)].pdf 2019-10-03
32 7617-DELNP-2014-FORM 13 [03-10-2019(online)].pdf 2019-10-03
32 7617-delnp-2014-Pct-(11-03-2015).pdf 2015-03-11
33 7617-DELNP-2014-AMMENDED DOCUMENTS [03-10-2019(online)].pdf 2019-10-03
33 7617-DELNP-2014.pdf 2014-11-01
34 7617-DELNP-2014-US(14)-HearingNotice-(HearingDate-26-04-2023).pdf 2023-04-06
34 Drawings.pdf 2014-09-26
35 7617-DELNP-2014-FORM-26 [21-04-2023(online)].pdf 2023-04-21
35 Form 2 + Specification.pdf 2014-09-26
36 7617-DELNP-2014-Correspondence to notify the Controller [21-04-2023(online)].pdf 2023-04-21
36 Form 3.pdf 2014-09-26
37 Form 5.pdf 2014-09-26
37 7617-DELNP-2014-Written submissions and relevant documents [10-05-2023(online)].pdf 2023-05-10
38 GPA.pdf 2014-09-26
38 7617-DELNP-2014-Information under section 8(2) [10-05-2023(online)].pdf 2023-05-10
39 Other relevant documnets.pdf 2014-09-26
39 7617-DELNP-2014-PatentCertificate16-10-2023.pdf 2023-10-16
40 PCT-IB-304.pdf 2014-09-26
40 7617-DELNP-2014-IntimationOfGrant16-10-2023.pdf 2023-10-16

Search Strategy

1 7617DELNP2014searchstrategy_27-06-2019.pdf

ERegister / Renewals

3rd: 29 Nov 2023

From 11/04/2015 - To 11/04/2016

4th: 29 Nov 2023

From 11/04/2016 - To 11/04/2017

5th: 29 Nov 2023

From 11/04/2017 - To 11/04/2018

6th: 29 Nov 2023

From 11/04/2018 - To 11/04/2019

7th: 29 Nov 2023

From 11/04/2019 - To 11/04/2020

8th: 29 Nov 2023

From 11/04/2020 - To 11/04/2021

9th: 29 Nov 2023

From 11/04/2021 - To 11/04/2022

10th: 29 Nov 2023

From 11/04/2022 - To 11/04/2023

11th: 29 Nov 2023

From 11/04/2023 - To 11/04/2024

12th: 29 Nov 2023

From 11/04/2024 - To 11/04/2025

13th: 18 Mar 2025

From 11/04/2025 - To 11/04/2026