[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP7147243B2 - Scheduling device, method and program - Google Patents

Scheduling device, method and program Download PDF

Info

Publication number
JP7147243B2
JP7147243B2 JP2018082223A JP2018082223A JP7147243B2 JP 7147243 B2 JP7147243 B2 JP 7147243B2 JP 2018082223 A JP2018082223 A JP 2018082223A JP 2018082223 A JP2018082223 A JP 2018082223A JP 7147243 B2 JP7147243 B2 JP 7147243B2
Authority
JP
Japan
Prior art keywords
solving
relaxation
schedule
lagrangian
main
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018082223A
Other languages
Japanese (ja)
Other versions
JP2019191803A (en
Inventor
敬和 小林
邦春 伊藤
優 影山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Steel Corp
Original Assignee
Nippon Steel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Steel Corp filed Critical Nippon Steel Corp
Priority to JP2018082223A priority Critical patent/JP7147243B2/en
Publication of JP2019191803A publication Critical patent/JP2019191803A/en
Application granted granted Critical
Publication of JP7147243B2 publication Critical patent/JP7147243B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • General Factory Administration (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、生産又は物流に係るスケジュールを作成するスケジュール作成装置、方法及びプログラムに関する。 The present invention relates to a scheduling device, method, and program for creating a schedule for production or physical distribution.

製造業や流通業において業務を円滑に進める上で、生産のための仕事とその時刻を決定したり、搬送すべき商品とその時刻を決定したりするスケジューリング業務はなくてはならないものである。スケジューリング業務は、絶えず発生する新たな注文、生産量の変更、搬送時刻の遅れといった変動に常に晒されるため、都度スケジュールの作成と修正を余儀なくされる等、業務負荷が高い。また、一度作成したスケジュールは何度も人が見直し、前提条件を変更したり、一部を固定したりすることを繰り返す必要があり、人が我慢できる限界として一度のスケジュールの作成は10分程度が限界となるため、スケジュール作成は高速に行われる必要がある。このため、スケジューリングの支援技術が必須である。 2. Description of the Related Art Scheduling tasks such as determining work for production and its time and products to be transported and their time are indispensable for smooth progress of business in the manufacturing and distribution industries. Scheduling work is constantly exposed to fluctuations such as new orders, production volume changes, and delivery time delays, so the work load is high, such as creating and correcting schedules each time. In addition, once a schedule has been created, it is necessary for people to review it many times, change the preconditions, and fix some parts. is the limit, scheduling needs to be done quickly. Therefore, scheduling support technology is essential.

これを実現する技術として、スケジュールの作成を最適化問題として捉え、その最適解を求める数理計画法、或いは準最適解を求めるヒューリスティック手法等が提案されている。産業界で取り扱う問題は、考慮しなくてはならない項目、対象とする工程、対象物が非常に多く、かつ複数工程に跨って処理される仕事の調整を取りながら、各工程で要求される日時設定された納期や設備(機械)使用の平準化の実現や、各貯蔵庫での在庫切れ回避と貯蔵容量上限制限を遵守する必要がある等、複雑な制約が設定されるために、その規模が膨大なものとなり、計算時間が長く掛かる問題があった。また、スケジュールを作成する場合に、経済状況や景気変動による操業の変化が頻繁に起き、制約の変更や、目的となる納期遵守と設備使用の平準化の優先度の変化、或いは他の目的の追加等、メンテナンスの必要に迫られ、この負荷削減が望まれていた。 As techniques for realizing this, mathematical programming methods that consider schedule creation as an optimization problem and seek the optimal solution, heuristic methods that seek quasi-optimal solutions, and the like have been proposed. The problems to be dealt with in the industrial world are the items that must be considered, the processes to be processed, the number of objects to be processed, and the time and date required for each process while coordinating the work that is processed over multiple processes. Complex constraints are set, such as the realization of set delivery dates and equipment (machinery) usage leveling, the need to avoid stockouts in each storage and the need to comply with storage capacity upper limits, so the scale is There was a problem that the number of calculations became enormous and the calculation time was long. Also, when creating a schedule, there are frequent changes in operations due to economic conditions and economic fluctuations, changes in constraints, changes in the priority of meeting the delivery date and leveling the use of equipment, or other purposes. The need for maintenance, such as additions, is pressing, and this load reduction has been desired.

特開2002-328977号公報JP-A-2002-328977 特開2010-285053号公報JP 2010-285053 A

特許文献1には、ラグランジュ分解調整法を用いる多品目多工程ロットサイズスケジューリング方法が開示されている。特許文献1では、機械干渉の解消の有無と仕掛品在庫の充足の有無とを判定し、機械干渉が解消されていないか、あるいは仕掛品在庫が充足していない場合には、対応するラグランジュ乗数を更新するようにしている。しかしながら、このラグランジュ乗数の更新により機械干渉の解消や在庫の充足が実現されることを保証するものではなく、全ての制約を満足した実行可能なスケジュールを得られる保証はない。 Patent Literature 1 discloses a multi-item, multi-process lot size scheduling method using the Lagrangian decomposition adjustment method. In Patent Document 1, it is determined whether or not the machine interference is resolved and whether or not the work-in-progress inventory is sufficient. is updated. However, there is no guarantee that the update of the Lagrangian multiplier will eliminate machine interference or suffice inventory, and there is no guarantee that a workable schedule that satisfies all constraints will be obtained.

特許文献2には、列車の運行ダイヤに変更が生じたときに鉄道車両もしくは乗務員の運用計画の再作成を行う運用計画再作成に関する技術が開示されている。特許文献2では、
ラグランジュ緩和法を用いて、最適解の下界値を求め、主問題の実行可能解と比較することで反復処理を行うようにしている。しかしながら、ラグランジュ緩和法を用いる際の計算と、実行可能解を求める際の計算とが大きく異なっており、仕組みが複雑なものとなっている。
Patent Literature 2 discloses a technique related to recreating an operation plan for recreating an operation plan for railway vehicles or crews when a train operation schedule is changed. In Patent Document 2,
Using the Lagrangian relaxation method, the lower bound of the optimal solution is found and compared with the feasible solution of the primal problem to perform iterative processing. However, the calculation when using the Lagrangian relaxation method and the calculation when obtaining a feasible solution are significantly different, and the mechanism is complicated.

本発明は上記のような点に鑑みてなされたものであり、大規模で複雑な制約を有するスケジューリング問題であっても、全ての制約を満足した実行可能解を従来よりも高速に求めることができ、かつ従来よりも簡単にメンテナンスできる仕組みで、生産又は物流に係るスケジュールを作成できるスケジュール作成装置等を提供することを目的とする。 The present invention has been made in view of the above points, and is capable of finding a feasible solution that satisfies all constraints at a higher speed than before, even for a scheduling problem with large-scale and complicated constraints. To provide a schedule creating device or the like capable of creating a schedule related to production or physical distribution with a mechanism that can be maintained more easily than before.

上記の課題を解決するための本発明の要旨は、以下のとおりである。
[1] 制約及び目的関数で定式化される数理計画問題である主問題に基づいて、生産又は物流に係るスケジュールを作成するスケジュール作成装置であって、
前記主問題から前記制約の一部を取り除き、前記目的関数を修正した緩和問題を構築する緩和問題構築手段と、
前記緩和問題構築手段で構築した前記緩和問題を求解する緩和問題求解手段と、
前記緩和問題求解手段で前記緩和問題を求解した結果に基づいて、前記主問題に含まれる条件を固定化するための制約式を前記主問題に追加する固定化手段と、
前記固定化手段で前記条件を固定化した前記主問題を求解する求解手段とを備えたことを特徴とするスケジュール作成装置。
[2] 前記緩和問題構築手段は、前記取り除いた制約の違反量に対してペナルティが課されるように、ラグランジュ乗数を用いて前記目的関数を修正したラグランジュ緩和問題を構築することを特徴とする[1]に記載のスケジュール作成装置。
[3] ラグランジュ乗数を更新する更新手段を備え、
前記緩和問題求解手段は、前記更新手段で更新したラグランジュ乗数を反映させたラグランジュ緩和問題を求解することを特徴とする[2]に記載のスケジュール作成装置。
[4] 前記緩和問題構築手段は、ラグランジュ分解調整法により、ラグランジュ緩和問題を分解することを特徴とする[2]又は[3]に記載のスケジュール作成装置。
[5] 前記緩和問題求解手段は、前記緩和問題構築手段で構築した緩和問題を求解するために、最適化又は準最適化することで、最適解又は準最適解を得ることを特徴とする[1]乃至[4]のいずれか一つに記載のスケジュール作成装置。
[6] 選択可能な複数の機械を含む一工程を少なくとも含み、対象物に処理を行うプロセスにおけるスケジュールを作成することを特徴とする[1]乃至[5]のいずれか一つに記載のスケジュール作成装置。
[7] 前記主問題は、同一機械が同一タイミングに処理できる対象物数の上限と、対象物毎、工程毎及び機械毎の処理に掛かる時間と、製品毎及び工程毎の処理開始可能時刻とに基づいて、所定の操業指標を良くすることを目的とすることを特徴とする[6]に記載のスケジュール作成装置。
[8] 前記主問題は、さらに対象物毎及び工程毎の納期時刻と、対象物毎及び工程毎の納期遅れに掛かる単価とに基づいて、納期遅れ費用を最小化することを目的とすることを特徴とする[7]に記載のスケジュール作成装置。
[9] 前記固定化手段は、前記緩和問題求解手段で求解した結果に基づいて、対象物毎の使用機械を固定化することを特徴とする[6]乃至[8]のいずれか一つに記載のスケジュール作成装置。
[10] 前記固定化手段は、前記緩和問題求解手段で求解した結果に基づいて、処理順を固定化することを特徴とする[6]乃至[9]のいずれか一つに記載のスケジュール作成装置。
[11] 制約及び目的関数で定式化される数理計画問題である主問題に基づいて、生産又は物流に係るスケジュールを作成するスケジュール作成方法であって、
前記主問題から前記制約の一部を取り除き、前記目的関数を修正した緩和問題を構築するステップと、
前記緩和問題を求解するステップと、
前記緩和問題を求解した結果に基づいて、前記主問題に含まれる条件を固定化するための制約式を前記主問題に追加するステップと、
前記条件を固定化した前記主問題を求解するステップとを有することを特徴とするスケジュール作成方法。
[12] 制約及び目的関数で定式化される数理計画問題である主問題に基づいて、生産又は物流に係るスケジュールを作成するためのプログラムであって、
前記主問題から前記制約の一部を取り除き、前記目的関数を修正した緩和問題を構築する緩和問題構築手段と、
前記緩和問題構築手段で構築した前記緩和問題を求解する緩和問題求解手段と、
前記緩和問題求解手段で前記緩和問題を求解した結果に基づいて、前記主問題に含まれる条件を固定化するための制約式を前記主問題に追加する固定化手段と、
前記固定化手段で前記条件を固定化した前記主問題を求解する求解手段としてコンピュータを機能させるためのプログラム。
The gist of the present invention for solving the above problems is as follows.
[1] A schedule creation device that creates a schedule for production or distribution based on a primal problem that is a mathematical programming problem formulated with constraints and objective functions,
a relaxation problem constructing means for constructing a relaxation problem in which part of the constraints are removed from the main problem and the objective function is modified;
a mitigation problem solving means for solving the mitigation problem constructed by the mitigation problem construction means;
fixation means for adding, to the main problem, a constraint expression for fixing conditions included in the main problem based on the result of solving the relaxed problem by the relaxed problem solving means;
and a solution finding means for solving the main problem in which the conditions are fixed by the fixing means.
[2] The relaxation problem constructing means constructs the Lagrangian relaxation problem in which the objective function is modified using Lagrangian multipliers so that the amount of violation of the removed constraint is penalized. The scheduling device according to [1].
[3] comprising updating means for updating the Lagrangian multiplier;
The schedule creation device according to [2], wherein the relaxation problem solving means solves the Lagrangian relaxation problem reflecting the Lagrangian multipliers updated by the updating means.
[4] The schedule creation device according to [2] or [3], wherein the relaxation problem construction means decomposes the Lagrangian relaxation problem by a Lagrangian decomposition adjustment method.
[5] The relaxation problem solving means obtains an optimal solution or a quasi-optimal solution by optimizing or quasi-optimizing in order to solve the relaxation problem constructed by the relaxation problem structuring means [ 1] to [4].
[6] The schedule according to any one of [1] to [5], which includes at least one step including a plurality of selectable machines and creates a schedule in a process of processing an object. creation device.
[7] The main problem is the upper limit of the number of objects that can be processed by the same machine at the same timing, the time required for processing each object, each process, and each machine, and the possible processing start time for each product and each process. The schedule creation device according to [6], wherein the purpose is to improve a predetermined operation index based on.
[8] The objective of the main problem is to minimize late-delivery costs based on the delivery time for each object and each process and the unit cost for late delivery for each object and each process. The schedule creation device according to [7], characterized by:
[9] According to any one of [6] to [8], the fixation means fixes the machine to be used for each object based on the result of solving by the relaxation problem-solving means. Scheduling device as described.
[10] The schedule creation according to any one of [6] to [9], wherein the fixing means fixes the processing order based on the result of solving by the relaxation problem solving means. Device.
[11] A schedule creation method for creating a schedule for production or distribution based on a primal problem that is a mathematical programming problem formulated with constraints and objective functions,
constructing a relaxed problem that removes some of the constraints from the primal problem and modifies the objective function;
solving the relaxation problem;
adding a constraint equation to the main problem for fixing conditions included in the main problem based on the result of solving the relaxed problem;
and a step of solving the main problem in which the conditions are fixed.
[12] A program for creating a production or distribution schedule based on a primal problem that is a mathematical programming problem formulated with constraints and objective functions,
a relaxation problem constructing means for constructing a relaxation problem in which part of the constraints are removed from the main problem and the objective function is modified;
a mitigation problem solving means for solving the mitigation problem constructed by the mitigation problem construction means;
fixation means for adding, to the main problem, a constraint expression for fixing conditions included in the main problem based on the result of solving the relaxed problem by the relaxed problem solving means;
A program for causing a computer to function as solving means for solving the main problem with the conditions fixed by the fixing means.

本発明によれば、大規模で複雑な制約を有するスケジューリング問題であっても、全ての制約を満足した実行可能解を従来よりも高速に求めることができ、かつ従来よりも簡単にメンテナンスできる仕組みで、生産又は物流に係るスケジュールを作成することができる。 According to the present invention, even for a scheduling problem with large-scale and complicated constraints, a feasible solution that satisfies all constraints can be found faster than before, and maintenance is easier than before. can create a schedule for production or distribution.

実施形態に係るスケジュール作成装置の機能構成を示す図である。It is a figure showing functional composition of a schedule creation device concerning an embodiment. 実施形態に係るスケジュール作成装置によるスケジュール作成方法の手順を示すフローチャートである。It is a flowchart which shows the procedure of the schedule creation method by the schedule creation apparatus which concerns on embodiment. 多段工程並列機械フローショップ問題の概要を説明するための図である。1 is a diagram for explaining an outline of a multi-step parallel machine flow shop problem; FIG. ラグランジュ緩和問題を求解した結果を示すガントチャートである。10 is a Gantt chart showing the results of solving the Lagrangian relaxation problem; ラグランジュ乗数を更新してラグランジュ緩和問題を求解した結果を示すガントチャートの遷移を表す図である。FIG. 12 is a diagram showing transition of a Gantt chart showing the result of solving the Lagrangian relaxation problem by updating the Lagrangian multiplier; 主問題を求解した結果を示すガントチャートである。4 is a Gantt chart showing the result of solving the main problem; 取り扱う製品数が増えたときの計算時間の変化を示す特性図である。FIG. 9 is a characteristic diagram showing changes in calculation time when the number of products to be handled increases.

以下、添付図面を参照して、本発明の好適な実施形態について説明する。
図1に、実施形態に係るスケジュール作成装置100の機能構成を示す。スケジュール作成装置100は、制約及び目的関数で定式化される数理計画問題に基づいて、生産又は物流に係るスケジュールを作成する。スケジュール作成装置100は、入力部101と、主問題構築部102と、緩和問題構築部103と、緩和問題求解部104と、ラグランジュ乗数更新部105と、固定化部106と、主問題求解部107と、出力部108とを備える。
Preferred embodiments of the present invention will now be described with reference to the accompanying drawings.
FIG. 1 shows the functional configuration of a schedule creation device 100 according to the embodiment. The schedule creation device 100 creates a schedule for production or physical distribution based on a mathematical programming problem formulated with constraints and objective functions. The schedule creation device 100 includes an input unit 101, a primal problem construction unit 102, a relaxation problem construction unit 103, a relaxation problem solving unit 104, a Lagrangian multiplier updating unit 105, a fixation unit 106, and a primal problem solving unit 107. and an output unit 108 .

入力部101は、スケジュールを作成するのに必要な情報を入力する。
主問題構築部102は、スケジュールを作成するための、制約及び目的関数で定式化される数理計画問題を主問題として構築する。
The input unit 101 inputs information necessary for creating a schedule.
The main problem constructing unit 102 constructs a mathematical programming problem formulated with constraints and objective functions for creating a schedule as a main problem.

緩和問題構築部103は、主問題構築部102で構築した数理計画問題から制約の一部を取り除き、目的関数を修正した緩和問題を構築する。緩和問題として、取り除いた制約の違反量に対してペナルティが課されるように、ラグランジュ乗数を用いて目的関数を修正したラグランジュ緩和問題を構築する。本実施形態では、緩和問題構築部103が本発明でいう緩和問題構築手段として機能する。 The relaxed problem constructing unit 103 removes some of the constraints from the mathematical programming problem constructed by the primal problem constructing unit 102, and constructs a relaxed problem in which the objective function is modified. As a relaxation problem, we construct a Lagrangian relaxation problem in which the objective function is modified with Lagrangian multipliers such that the amount of violation of the removed constraint is penalized. In this embodiment, the mitigation problem construction unit 103 functions as the mitigation problem construction means of the present invention.

緩和問題求解部104は、緩和問題構築部103で構築したラグランジュ緩和問題を求解する。また、ラグランジュ乗数更新部105は、ラグランジュ乗数を更新する。緩和問題求解部104及びラグランジュ乗数更新部105は、所定の条件を満たすまで、ラグランジュ乗数を更新し、このラグランジュ乗数を反映させたラグランジュ緩和問題を求解することを繰り返す。本実施形態では、緩和問題求解部104が本発明でいう緩和問題求解手段として機能し、ラグランジュ乗数更新部105が本発明でいう更新手段として機能する。 The relaxation problem solving unit 104 solves the Lagrangian relaxation problem constructed by the relaxation problem construction unit 103 . Also, the Lagrangian multiplier update unit 105 updates the Lagrangian multiplier. The relaxation problem solving unit 104 and the Lagrangian multiplier updating unit 105 repeat updating the Lagrangian multiplier and solving the Lagrangian relaxation problem reflecting the Lagrangian multiplier until a predetermined condition is satisfied. In this embodiment, the relaxed problem solving unit 104 functions as the relaxed problem solving means of the present invention, and the Lagrangian multiplier updating unit 105 functions as the updating means of the present invention.

固定化部106は、緩和問題求解部104で求解した結果に基づいて、主問題構築部102で構築した数理計画問題に含まれる条件を固定化する。本実施形態では、固定化部106が本発明でいう固定化手段として機能する。
主問題求解部107は、固定化部106で条件を固定化した数理計画問題を求解する。本実施形態では、主問題求解部107が本発明でいう求解手段として機能する。
出力部108は、主問題求解部107で求解した結果であるスケジュールを出力する。ここでいう出力とは、例えば不図示のディスプレイに表示したり、本装置100の外部機器に送出したりすることをいう。
The fixing unit 106 fixes the conditions included in the mathematical programming problem constructed by the primal problem construction unit 102 based on the result obtained by the relaxed problem solving unit 104 . In this embodiment, the immobilizing section 106 functions as the immobilizing means of the present invention.
The main problem solving unit 107 solves the mathematical programming problem whose conditions are fixed by the fixing unit 106 . In this embodiment, the main problem solving section 107 functions as the solution finding means of the present invention.
The output unit 108 outputs a schedule that is the result of solving by the main problem solving unit 107 . The output here means, for example, displaying on a display (not shown) or transmitting to an external device of the apparatus 100 .

以下、スケジュール作成装置100によるスケジュール作成方法の具体例を説明する。図2は、スケジュール作成装置100によるスケジュール作成方法の手順を示すフローチャートである。
本実施形態では、生産プロセスにおけるスケジュールを作成する。本実施形態で取り扱う生産プロセスは、選択可能な複数の機械を含む一工程を少なくとも含む複数の工程を有し、各工程で対象物である製品に対して処理を行う。説明の簡単化のため、制約を表す制約式は単純なものに限定して記述した多段工程並列機械フローショップ問題を例とする。フローショップ問題とは、製品の生産工程の順序が同一のものをいう。なお、本実施形態では、多段工程並列機械フローショップ問題を例とするが、選択可能な複数の機械を含む一工程のスケジュール問題であっても、ジョブショップ問題であっても、また制約式が複雑になり、かつ問題規模が大きくなったとしても一般性は失わない。ジョブショップ問題とは、製品毎に生産工程が異なるものをいう。
A specific example of the schedule creation method by the schedule creation device 100 will be described below. FIG. 2 is a flow chart showing the procedure of the schedule creation method by the schedule creation device 100. As shown in FIG.
In this embodiment, a schedule is created for the production process. The production process dealt with in this embodiment has a plurality of steps including at least one step including a plurality of selectable machines, and each step processes a product, which is an object. For simplicity of explanation, a multi-step parallel machine flow-shop problem, in which constraint expressions are limited to simple ones, is taken as an example. The flow shop problem refers to a problem in which the order of the production processes of products is the same. In this embodiment, the multi-step parallel machine flow-shop problem is taken as an example, but the problem may be a schedule problem of one process including a plurality of selectable machines or a job-shop problem, and the constraint equation may be Generality is not lost even if the problem becomes complicated and the scale of the problem increases. The job shop problem means that the production process differs for each product.

図3を参照して、本実施形態で取り扱う多段工程並列機械フローショップ問題の概要を説明する。図3に示すのは2工程2機械フローショップ問題であり、工程P1及び工程P2の2工程があり、各工程P1及びP2には選択可能な2台の機械J1及びJ2が存在する。図中の左から右方向は時間を表す。また、処理301は、製品に対して行う所定の処理を表し、その長さが実施期間を表し、処理301同士をつなぐ線が製品の移行を表す。なお、工程P1及び工程P2に存在する機械名を同一としたが、別機械である。 With reference to FIG. 3, an overview of the multi-step parallel machine flow shop problem handled in this embodiment will be described. Shown in FIG. 3 is a two-process, two-machine flow shop problem, where there are two processes, process P1 and process P2, where each process P1 and P2 has two machines J1 and J2 that can be selected. The direction from left to right in the figure represents time. A process 301 represents a predetermined process to be performed on a product, the length of which represents the implementation period, and the line connecting the processes 301 represents the transition of the product. It should be noted that although the names of the machines existing in process P1 and process P2 are the same, they are different machines.

製品iは、工程(p∈{1、2})の全てを順次通過し、工程を通過する際には機械(j∈{1、2})のいずれか一つで処理が行われる。同一機械は同一タイミング(同一時刻)にN個までの製品数しか処理できない。本実施形態ではN=1とする。製品毎・工程毎・機械毎の処理に掛かる時間が予め与えられており、ある工程で処理が完了すると、その後に次の工程に移動可能となる。また、製品毎・工程毎の処理開始可能時刻と、製品毎・工程毎の納期時刻とが予め与えられている。これらの制約を守り、良くしたい操業指標として納期遅れ費用を最小化することを目的として、製品毎の使用機械、処理開始時刻を決定することが、本実施形態で取り扱う主問題である。以下に述べる例では、i={1、2、・・・、8}であるとする。 A product i passes through all of the processes (p ∈ {1,2}) in sequence and is processed by any one of the machines (j ∈ {1,2}) as it passes through the processes. The same machine can only process up to N products at the same timing (at the same time). In this embodiment, N=1. The time required for processing each product, each process, and each machine is given in advance, and when processing is completed in a certain process, it is possible to move to the next process. In addition, the time at which processing can be started for each product and each process and the delivery time for each product and each process are given in advance. The main problem dealt with in this embodiment is to determine the machine to be used and the processing start time for each product, with the aim of minimizing the late delivery cost as an operational index that is desired to be improved while observing these constraints. In the example described below, let i={1, 2, . . . , 8}.

ステップS1で、入力部101は、スケジュールを作成するのに必要な情報を入力する。これらの情報は、例えばネットワーク上の不図示の上位コンピュータから入力されるようにしてもよいし、ユーザが直接入力するようにしてもよい。
具体的には、スケジュールを作成したい期間であるスケジュール作成期間や、同一機械が同一時刻に処理できる製品数の上限N(本実施形態ではN=1)を入力する。
In step S1, the input unit 101 inputs information necessary for creating a schedule. These pieces of information may be input, for example, from a host computer (not shown) on the network, or may be directly input by the user.
Specifically, the user inputs the schedule creation period, which is the period for which the schedule is to be created, and the upper limit N of the number of products that can be processed by the same machine at the same time (N=1 in this embodiment).

また、表1に示すように、製品毎・工程毎・機械毎の処理に掛かる時間を入力する。 Also, as shown in Table 1, the processing time for each product, each process, and each machine is entered.

Figure 0007147243000001
Figure 0007147243000001

また、表2に示すように、製品毎・工程毎の処理開始可能時刻を入力する。ここでは、処理開始可能時刻を、スケジュール作成期間の最初の時刻を0として与えている。 In addition, as shown in Table 2, the processing start time is input for each product and each process. Here, the time at which processing can be started is given with 0 as the first time of the schedule creation period.

Figure 0007147243000002
Figure 0007147243000002

また、表3に示すように、製品毎・工程毎の納期時刻を入力する。ここでは、納期時刻を、スケジュール作成期間の最初の時刻を0として与えている。 Also, as shown in Table 3, the delivery time for each product and each process is entered. Here, the delivery time is given with 0 as the first time of the schedule creation period.

Figure 0007147243000003
Figure 0007147243000003

また、表4に示すように、製品毎・工程毎の納期遅れに掛かる単価(1日当たりの費用)を入力する。 Also, as shown in Table 4, the unit price (expense per day) for delay in delivery is entered for each product and each process.

Figure 0007147243000004
Figure 0007147243000004

ステップS2で、主問題構築部102は、制約及び目的関数で定式化される数理計画問題を主問題として構築する。上述したように、納期遅れ費用を最小化することを目的として、製品毎の使用機械、処理開始時刻を決定することが、本実施形態で取り扱う主問題である。主問題の制約及び目的関数は、数学式を用いて定式化する。なお、ここでいう主問題の構築、制約及び目的関数の定式化とは、ユーザにより予め与えられている数学式の枠組みに対して、入力部101で入力した情報を反映させて制約式、目的関数とすることをいう。本実施形態では、厳密解を求める手法として混合整数線形計画法を用い、この形式に則って、制約及び目的関数を定式化する。 In step S2, the primal problem constructing unit 102 constructs a mathematical programming problem formulated with constraints and objective functions as a primal problem. As described above, the main problem to be addressed in this embodiment is to determine the machine to be used and the processing start time for each product with the aim of minimizing the delivery delay cost. The constraints of the primal problem and the objective function are formulated using mathematical expressions. It should be noted that the construction of the main problem, the formulation of the constraint and the objective function referred to here mean that the information input by the input unit 101 is reflected in the framework of the mathematical formula given in advance by the user to obtain the constraint formula and the objective function. It means to make it a function. In the present embodiment, mixed integer linear programming is used as a technique for obtaining exact solutions, and constraints and objective functions are formulated according to this form.

定式化にあたり、次のように定数、決定すべき変数(決定変数)が定義されており、ステップS1で入力した情報に基づいて値を設定する。
[定数]
N:同一機械が同一時刻に処理できる製品数の上限
ipj:製品iの工程p、機械jでの処理時間
ip:製品iの工程pの処理開始可能時刻
ip:製品iの工程pの納期時刻
ip:製品iの工程pの納期遅れに掛かる単価
In formulating, constants and variables to be determined (decision variables) are defined as follows, and values are set based on the information input in step S1.
[constant]
N: Upper limit of the number of products that can be processed by the same machine at the same time D ipj : Processing time for process p of product i, machine j A ip : Processing start time for process p of product i L ip : Process p of product i delivery time c ip : Unit cost for late delivery of process p of product i

本実施形態では、1日を均等分割したタイムスロットを考え(分割数M)、この離散的な時刻であるタイムスロットを用いて定式化を行う。例えばM=4とすると、タイムスロットの単位は6時間となり、6時間単位での離散的な時間をイメージした定式化となる。本実施形態でではM=10とする。 In the present embodiment, time slots obtained by equally dividing one day (number of divisions M) are considered, and formulation is performed using time slots that are discrete times. For example, if M=4, the unit of the time slot is 6 hours, and the formulation is based on the image of discrete times in units of 6 hours. In this embodiment, M=10.

[決定変数/独立なもの]
δitmpj:製品iが工程p、機械jでt日、タイムスロットmで処理を開始する場合は1、それ以外は0とする変数
δTitmpj:製品iが工程p、機械jでt日、タイムスロットmで処理中の場合は1、それ以外は0とする変数
[decision variable/independent]
δ itmpj : Variable set to 1 if product i starts processing in process p, machine j, t days, time slot m, otherwise 0 δT itmpj : Product i, process p, machine j, t days, time A variable that is 1 if processing is in progress in slot m and 0 otherwise

[決定変数/従属なもの]
ip:製品iの工程pの処理開始時刻(日)
δJipj:製品iが工程p、機械jで処理する場合は1、それ以外は0とする変数
ip:製品iの工程pの納期からの遅れ時間(日)
[decision variable/dependent]
b ip : Processing start time of process p of product i (day)
δJ ipj : Variable set to 1 when product i is processed by process p and machine j;

以上のようにした定数、決定変数を用いて、目的関数は、式(1)のように納期遅れ費用を最小化させるものとして定式化される。 Using the above-described constants and decision variables, the objective function is formulated as shown in Equation (1) to minimize late delivery costs.

Figure 0007147243000005
Figure 0007147243000005

また、制約式は、例えば式(2)~式(9)のように定式化される。式(2)は、各製品は各工程では必ず一度処理される必要があることを表す。式(3)は、各製品は同一機械を一度しか使用できないことを表す。式(4)は、各製品の各工程での処理開始時刻bipが、どのタイムスロットに対応するかを示す関係式を表す。式(5)は、製品がある工程のある機械を使用する場合には、処理開始時刻から処理時間分は処理中となることを表す。式(6)は、一度に同一機械が処理できる製品数の上限はN個までであることを表す。式(7)は、δitmpjが1となる場合は、δJipjも1となることを表す。式(8)は、製品を処理する場合には前工程の処理終了後に次工程の処理が開始されることを表す。式(9)は、製品の納期時刻Lipに対して処理の終了が遅れた分の時間を納期遅れとして定義した式である。 Also, the constraint equations are formulated as, for example, equations (2) to (9). Equation (2) expresses that each product must be processed exactly once in each step. Equation (3) expresses that each product can use the same machine only once. Equation (4) represents a relational expression indicating which time slot the processing start time b ip in each process of each product corresponds to. Equation (5) expresses that when a machine with a certain process for a product is used, the process is in progress for the processing time from the processing start time. Equation (6) expresses that the upper limit of the number of products that can be processed by the same machine at one time is N. Equation (7) expresses that if δ itmpj is 1, then δJ ipj is also 1. Equation (8) indicates that when a product is processed, the processing of the next process is started after the processing of the previous process is completed. Expression (9) is an expression that defines the amount of time by which the end of processing is delayed with respect to the delivery time Lip of the product as delivery delay.

Figure 0007147243000006
Figure 0007147243000006

ステップS3で、緩和問題構築部103は、ステップS2において構築した数理計画問題から制約式の一部を取り除き、目的関数を修正したラグランジュ緩和問題を構築する。ラグランジュ緩和問題では、取り除いた制約式に対して、制約を違反する量を違反量として新たに数式で定義し、その数式(例えば1次式)を目的関数に取り込むことで、違反量を最小化するように定式化する。
定式化にあたり、次のようなwtmpj(定数)を設ける。
tmpj:製品iが工程pの機械jを占拠することに対するタイムスロット当たりのペナルティ単価
ペナルティ単価wtmpjの初期値、表5に示すように所与条件として与え、この情報に基づいて値が設定される。このwtmpjはラグランジュ乗数と呼ばれる。
In step S3, the relaxation problem constructing unit 103 constructs a Lagrangian relaxation problem in which a part of the constraint equation is removed from the mathematical programming problem constructed in step S2 and the objective function is modified. In the Lagrangian relaxation problem, the quantity that violates the constraint is defined as a new formula as a violation quantity for the removed constraint equation, and the violation quantity is minimized by incorporating that formula (for example, a linear expression) into the objective function. be formulated as
For formulation, the following w tmpj (constants) are provided.
w tmpj : Penalty unit price per time slot for occupation of machine j in process p by product i Initial value of penalty unit price w tmpj , given as a given condition as shown in Table 5, the value is set based on this information be done. This w tmpj is called the Lagrangian multiplier.

Figure 0007147243000007
Figure 0007147243000007

本実施形態では、式(6)を緩和、つまり制約式から取り除くとともに、取り除いた制約式の違反量(ΣiδTitmpj-N)(>0)に対してペナルティが課されるように、式(1-2)のように、ラグランジュ乗数wtmpjを用いて目的関数を修正する。ラグランジュ乗数wtmpjが大きいほど、違反量が少なくなるように最適化又は準最適化が実行されることとなる。 In this embodiment, the expression (6) is relaxed , that is, removed from the constraint , and the expression Modify the objective function using the Lagrange multiplier w tmpj as in (1-2). The larger the Lagrangian multiplier w tmpj , the less the amount of violations the optimization or semi-optimization will be performed.

Figure 0007147243000008
Figure 0007147243000008

ここで、ラグランジュ分解調整法により、ラグランジュ緩和問題を分解するようにしてもよい。式(1-2)の目的関数は、iに着目すると、式(1-3)に変形することも可能である。式(1-3)において、最終項は定数であるため省略可能であり、式(1-4)のように変形できる。このようにラグランジュ緩和問題の制約式(式(2)~式(5)、式(7)~式(9))と目的関数(式(1-4))は、製品iに対して、それぞれ分けて問題を解ける形となっているため、それぞれに分解して問題を解いてもかまわない。 Here, the Lagrangian relaxation problem may be decomposed by the Lagrangian decomposition adjustment method. Focusing on i, the objective function of formula (1-2) can be transformed into formula (1-3). In equation (1-3), since the last term is a constant, it can be omitted and can be transformed into equation (1-4). Thus, the constraint equations (equations (2) to (5), equations (7) to (9)) and the objective function (equation (1-4)) of the Lagrangian relaxation problem are respectively Since the problem can be solved separately, you can solve the problem separately.

Figure 0007147243000009
Figure 0007147243000009

なお、どの制約式を取り除き、違反量を目的関数にどう取り込むかは、ユーザにより予め定義されており、緩和問題構築部103はそれに従ってラグランジュ緩和問題を構築する。或いは、緩和問題構築部103は、例えば対話形式のユーザインタフェースを介してユーザからの指示を受け、その指示に従って、どの制約式を取り除き、違反量を目的関数にどう取り込むかを都度決定するようにしてもよい。 It should be noted that the user predefines which constraint equations are to be removed and how the amount of violation is incorporated into the objective function, and the relaxation problem construction unit 103 constructs the Lagrangian relaxation problem accordingly. Alternatively, the mitigation problem construction unit 103 receives an instruction from the user, for example, via an interactive user interface, and according to the instruction, decides each time which constraint equation to remove and how to incorporate the amount of violation into the objective function. may

ステップS4で、緩和問題求解部104は、ステップS3において構築したラグランジュ緩和問題を求解するために、最適化又は準最適化することで、最適解又は最適解に近い値の準最適解を得る。例えば最適化の手法として分枝限定法を用いて、ラグランジュ緩和問題の厳密解を得る。なお、分枝限定法は一般に知られた手法であり、ここではその説明を省略する。また、ラグランジュ緩和問題の求解には、最適化又は準最適化の手法が実装された市販のソルバーを用いてもよい。
この求解により、制約式(式(2)~式(5)、式(7)~式(9))を満足し、目的関数(式(1-2)~式(1-4)のいずれか)を最小化する決定変数の値が計算される。すなわち、式(6)で表される同一機械が同一時刻に処理できる製品数の上限制約を緩和したかたちで、製品毎の使用機械、処理開始時刻が決定される。
In step S4, the relaxation problem-solving unit 104 performs optimization or semi-optimization to solve the Lagrangian relaxation problem constructed in step S3, thereby obtaining an optimal solution or a sub-optimal solution close to the optimal solution. For example, the branch-and-bound method is used as an optimization technique to obtain an exact solution of the Lagrangian relaxation problem. Note that the branch-and-bound method is a generally known method, and its description is omitted here. Also, a commercially available solver implemented with an optimization or semi-optimization technique may be used to solve the Lagrangian relaxation problem.
By this solution, the constraint formulas (formulas (2) to (5), formulas (7) to (9)) are satisfied, and any of the objective functions (formulas (1-2) to (1-4) ) is computed. That is, the machine to be used and the processing start time for each product are determined by relaxing the upper limit on the number of products that can be processed by the same machine at the same time, which is expressed by the equation (6).

表6及び図4に、ラグランジュ緩和問題を求解した結果を示す。図4のガントチャートにおいて、横軸が時間を表す。また、矩形が各処理の実施期間を表し、各矩形に示されている数字は製品番号を表す。図4に示すようにガントチャートを画面表示する際には、各矩形に色を付しておく(図4、図5、図6ではドットで表現する)。同一機械が同一時刻に処理できる製品数の上限制約を緩和しているので、同一時刻で同一機械を使用している状況も発生し、その重なりの数が多いほど矩形の色が濃くなる(図4、図5ではドットの密度が増えている)。破線は、処理開始可能時刻から処理開始時刻までを表し、製品毎に引かれている。また、実線は、処理終了時刻から納期までを表し、製品毎に引かれており、細線は納期が守られている場合を、太線は納期より遅れている場合を表す。 Table 6 and FIG. 4 show the results of solving the Lagrangian relaxation problem. In the Gantt chart of FIG. 4, the horizontal axis represents time. Also, the rectangles represent the execution period of each process, and the number shown in each rectangle represents the product number. When the Gantt chart is displayed on the screen as shown in FIG. 4, each rectangle is colored (represented by dots in FIGS. 4, 5, and 6). Since the upper limit on the number of products that can be processed by the same machine at the same time has been relaxed, there are cases where the same machine is used at the same time. 4, the density of dots is increased in FIG. 5). A dashed line is drawn for each product from the processing start time to the processing start time. A solid line represents the time from the end of processing to the delivery date, and is drawn for each product.

Figure 0007147243000010
Figure 0007147243000010

ステップS5で、ラグランジュ乗数更新部105は、ラグランジュ乗数wtmpjを更新するか否かの判定を行う。本実施形態では、次に述べるようにループ回数21でラグランジュ乗数の更新を終了する。ラグランジュ乗数wtmpjを更新する必要があれば(ステップS5;Yes)、ステップS6に処理を進め、更新する必要がなければ(ステップS5;No)、ステップS7に処理を進める。 In step S5, the Lagrangian multiplier update unit 105 determines whether or not to update the Lagrangian multiplier w_tmpj . In this embodiment, the update of the Lagrangian multiplier is terminated at the loop count of 21 as described below. If the Lagrangian multiplier w tmpj needs to be updated (step S5; Yes), the process proceeds to step S6; otherwise (step S5; No), the process proceeds to step S7.

ステップS6で、ラグランジュ乗数更新部105は、ラグランジュ乗数を更新し、その後、ステップS4に処理を戻す。
本実施形態では、式(10)に従って、ラグランジュ乗数を更新する。lはループ回数を示し、定数及び決定変数の右肩の(l)は各ループでの定数、決定変数の取る値を表す。また、wはラグランジュ乗数更新用の係数を示し、本実施形態はw=0.5とした。式(10)では、ループ回数lでの違反量(Σi (l)δTitmpj-N)が大きいほど、次のループでのラグランジュ乗数wtmpj (l+1)が大きくなるかたちとなっている。また、ループ回数を重ねるほど、次のループでのラグランジュ乗数wtmpj (l+1)の変化量が抑えられるかたちとなっている。
In step S6, the Lagrangian multiplier update unit 105 updates the Lagrangian multiplier, and then returns to step S4.
In this embodiment, the Lagrangian multiplier is updated according to equation (10). l indicates the number of loops, and (l) on the right side of the constant and decision variable indicates the value taken by the constant and decision variable in each loop. Also, w indicates a coefficient for updating the Lagrangian multiplier, and in this embodiment, w=0.5. In equation (10), the larger the violation amount (Σ i (l) δT itmpj −N) at the loop count l, the larger the Lagrangian multiplier w tmpj (l+1) in the next loop. . Also, as the number of loops increases, the amount of change in the Lagrangian multiplier w tmpj (l+1) in the next loop is suppressed.

Figure 0007147243000011
Figure 0007147243000011

ラグランジュ乗数の更新を終了する条件は、予め設定されている。例えば前回のループからのラグランジュ乗数の変化量に対する閾値や、ループ回数の閾値等を予め設定しておき、これら閾値との比較に基づいてラグランジュ乗数を更新するか否かを判定する。本実施形態ではループ回数21でラグランジュ乗数の更新を終了する。 A condition for ending the update of the Lagrangian multiplier is set in advance. For example, a threshold for the amount of change in the Lagrangian multiplier from the previous loop and a threshold for the number of loops are set in advance, and whether or not to update the Lagrangian multiplier is determined based on comparison with these thresholds. In this embodiment, the update of the Lagrangian multiplier is terminated at the loop count of 21 .

図5に、ラグランジュ乗数を更新してラグランジュ緩和問題を求解した結果を示すガントチャートの遷移を表す。ループ回数が増えるほど、矩形の濃い色の箇所(矩形の重なり)が減っており、同一機械が同一時刻に処理できる製品数の上限制約が徐々に守られるようになっていることがわかる。 FIG. 5 shows the transition of a Gantt chart showing the result of solving the Lagrangian relaxation problem by updating the Lagrangian multipliers. As the number of loops increases, the number of dark-colored rectangles (overlapping rectangles) decreases, indicating that the upper limit on the number of products that can be processed by the same machine at the same time is gradually being complied with.

ステップS7で、固定化部106は、ステップS4において求解した結果に基づいて数理計画問題に含まれる条件を固定化する。
例えば、固定化部106は、ステップS4においてラグランジュ緩和問題を求解して得られた製品毎の使用機械のうち、実現可能解である機械を使用するものとして、選択的に固定化する。21回目のループでラグランジュ緩和問題を求解した結果として、例えば製品1の工程1で機械2を使用することが得られた場合、主問題に式(11)のような固定化制約式を追加する。
In step S7, the fixing unit 106 fixes the conditions included in the mathematical programming problem based on the result obtained in step S4.
For example, the fixation unit 106 selectively fixes a machine that is a feasible solution to be used among the use machines for each product obtained by solving the Lagrangian relaxation problem in step S4. If the result of solving the Lagrangian relaxation problem in the 21st loop is, for example, that machine 2 is used in process 1 of product 1, add a fixed constraint equation such as equation (11) to the main problem. .

Figure 0007147243000012
Figure 0007147243000012

また、固定化部106は、ステップS4においてラグランジュ緩和問題を求解して得られた処理開始時刻のうち、実現可能解である順にて処理を行うものとして、選択的に固定化する。21回目のループでラグランジュ緩和問題を求解した結果として、例えば工程1での機械1で製品1、製品2の順で処理する場合、主問題に式(12)のような固定化制約式を追加する。
≦b ・・・(12)
Further, the fixation unit 106 selectively fixes the processing start times obtained by solving the Lagrangian relaxation problem in step S4 as those to be processed in the order of feasible solutions. As a result of solving the Lagrangian relaxation problem in the 21st loop, for example, when machine 1 in process 1 processes product 1 and then product 2 in that order, a fixed constraint equation such as equation (12) is added to the main problem. do.
b 1 , 1 ≤ b 2 , 1 (12)

なお、数理計画問題に含まれるどの条件を固定化するかは、ユーザにより予め定義されており、固定化部106はそれに従って固定化する。或いは、固定化部106は、例えば対話形式のユーザインタフェースを介してユーザからの指示を受け、その指示に従って、数理計画問題に含まれるどの条件を固定化するかを都度決定するようにしてもよい。 It should be noted that which condition included in the mathematical programming problem is to be fixed is defined in advance by the user, and the fixing unit 106 fixes accordingly. Alternatively, the fixation unit 106 may receive an instruction from the user via, for example, an interactive user interface, and may determine each time which condition included in the mathematical programming problem is to be fixed according to the instruction. .

ステップS8で、主問題求解部107は、ステップS7において条件を固定化した数理計画問題を求解する。主問題求解部107は、製品毎の使用機械、及び処理順を固定化した状態で主問題を求解することで、短い計算時間で求解することができる。しかも、ラグランジュ緩和問題の解では、同一機械が同一時刻に処理できる製品数の上限制約が緩和されていたが、ここでは要求されている全ての制約を満足した実行可能なスケジュールを得ることができる。 In step S8, the main problem solving unit 107 solves the mathematical programming problem whose conditions are fixed in step S7. The main problem solving unit 107 solves the main problem in a state in which the machine used for each product and the order of processing are fixed, so that the main problem can be solved in a short calculation time. Moreover, in the solution of the Lagrangian relaxation problem, the upper limit of the number of products that can be processed by the same machine at the same time was relaxed, but here we can obtain a feasible schedule that satisfies all the required constraints. .

表7及び図6に、主問題を求解した結果を示す。図6は、図4と同じくガントチャートを表す。矩形の濃い色の箇所(矩形の重なり)がなく、同一機械が同一時刻に処理できる製品数の上限制約が守られるように動作することが示されている。また、本例での納期遅れ費用は、0.31と十分に小さな値となっている。 Table 7 and FIG. 6 show the results of solving the main problem. FIG. 6 represents a Gantt chart like FIG. It shows that there are no dark colored rectangles (overlapping rectangles) and that the upper limit of the number of products that can be processed by the same machine at the same time is obeyed. Also, the delivery delay cost in this example is a sufficiently small value of 0.31.

Figure 0007147243000013
Figure 0007147243000013

ステップS9で、出力部108は、ステップS8において求解した結果であるスケジュールを出力する。例えば図6に示すように、制約を守り、納期遅れ費用を最小化することを目的として決定した製品毎の使用機械、処理開始時刻を表すガントチャートを画面表示する。 At step S9, the output unit 108 outputs the schedule resulting from the solution obtained at step S8. For example, as shown in FIG. 6, a Gantt chart showing the machines to be used and the processing start times for each product, determined for the purpose of keeping the constraints and minimizing the delivery delay costs, is displayed on the screen.

図7に、取り扱う製品数が増えたときの計算時間の変化を示す。上記実施形態を適用して、ループ回数25回及びループ回数50回として主問題を求解した場合と、主問題を分枝限定法を用いて一括で解いた場合とを比較した。
分枝限定法を用いて一括で主問題を解いた場合、実線で示すように、製品数が100を超えると急激に計算時間が掛かるようになり、解を得ることさえできなかった。ここでは、計算は600秒で打ち切った。
それに対して、上記実施形態を適用して主問題を解いた場合、破線及び一点鎖線で示すように、製品数が増えたときにも計算時間が大幅に増えることはなく、安定して高速に解を得ることが可能である。
FIG. 7 shows changes in calculation time when the number of products handled increases. A comparison was made between the case where the main problem was solved with 25 loops and 50 loops by applying the above embodiment and the case where the main problem was solved all at once using the branch and bound method.
When the branch-and-bound method was used to solve the main problem all at once, as indicated by the solid line, when the number of products exceeded 100, the calculation time abruptly increased, and a solution could not even be obtained. Here, the calculation was terminated at 600 seconds.
On the other hand, when the main problem is solved by applying the above embodiment, as indicated by the dashed line and the dashed line, the calculation time does not increase significantly even when the number of products increases, and the calculation time is stable and fast. It is possible to obtain a solution.

以上述べたように、制約及び目的関数で定式化される数理計画問題に基づいて、生産又は物流に係るスケジュールを作成する場合に、数理計画問題を緩和した緩和問題を構築、求解して、その結果に基づいて数理計画問題に含まれる条件を固定化する処理を行うことにより、大規模で複雑な制約を有するスケジューリング問題であっても、全ての制約を満足した実行可能解を従来よりも高速に求めることができる。また、一つのスケジュールを作成する際に、複数の大きく異なるスケジュール作成計算を行ってスケジュールを作成する場合と比べて、制約を削除したり、新たな制約を加えたりする際にも、修正箇所が少なくて済み、簡単にメンテナンスできる仕組みで、スケジュールを作成することが可能となる。 As described above, when creating a schedule related to production or distribution based on a mathematical programming problem formulated with constraints and objective functions, a relaxation problem that relaxes the mathematical programming problem is constructed, solved, and By fixing the conditions contained in the mathematical programming problem based on the results, even for large-scale scheduling problems with complex constraints, a feasible solution that satisfies all constraints can be generated faster than before. can be asked for. Also, when creating a single schedule, it is easier to modify when deleting constraints or adding new constraints, compared to creating a schedule with multiple, wildly different scheduling calculations. It is possible to create a schedule with a mechanism that requires less and can be easily maintained.

なお、上記実施形態のスケジュール作成装置100は、例えばCPU、ROM、RAM等を備えたコンピュータ装置により実現される。図1ではスケジュール作成装置100を一台の装置として図示したが、例えば複数台の装置により構成される形態でもかまわない。
また、上記実施形態のスケジュール作成装置100の各種機能は、ソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータがプログラムを読み出して実行することによっても実現可能である。
上記実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
Note that the schedule creation device 100 of the above embodiment is implemented by a computer device including, for example, a CPU, a ROM, a RAM, and the like. Although the schedule creation device 100 is illustrated as one device in FIG. 1, it may be configured by, for example, a plurality of devices.
Further, the various functions of the schedule creation device 100 of the above embodiment are to supply software (programs) to a system or device via a network or various storage media, and the computer of the system or device to read and execute the programs. It can also be realized by
The above-described embodiments are merely specific examples for carrying out the present invention, and the technical scope of the present invention should not be construed to be limited by these. That is, the present invention can be embodied in various forms without departing from its technical concept or main features.

100:スケジュール作成装置
101:入力部
102:主問題構築部
103:緩和問題構築部
104:緩和問題求解部
105:ラグランジュ乗数更新部
106:固定化部
107:主問題求解部
108:出力部
100: Schedule Creation Device 101: Input Unit 102: Main Problem Construction Unit 103: Relaxation Problem Construction Unit 104: Relaxation Problem Solving Unit 105: Lagrange Multiplier Update Unit 106: Fixation Unit 107: Main Problem Solving Unit 108: Output Unit

Claims (12)

制約及び目的関数で定式化される数理計画問題である主問題に基づいて、生産又は物流に係るスケジュールを作成するスケジュール作成装置であって、
前記主問題から前記制約の一部を取り除き、前記目的関数を修正した緩和問題を構築する緩和問題構築手段と、
前記緩和問題構築手段で構築した前記緩和問題を求解する緩和問題求解手段と、
前記緩和問題求解手段で前記緩和問題を求解した結果に基づいて、前記主問題に含まれる条件を固定化するための制約式を前記主問題に追加する固定化手段と、
前記固定化手段で前記条件を固定化した前記主問題を求解する求解手段とを備えたことを特徴とするスケジュール作成装置。
A scheduling device for creating a schedule for production or distribution based on a primal problem, which is a mathematical programming problem formulated with constraints and objective functions,
a relaxation problem constructing means for constructing a relaxation problem in which part of the constraints are removed from the main problem and the objective function is modified;
a mitigation problem solving means for solving the mitigation problem constructed by the mitigation problem construction means;
fixation means for adding, to the main problem, a constraint expression for fixing conditions included in the main problem based on the result of solving the relaxed problem by the relaxed problem solving means;
and a solution finding means for solving the main problem in which the conditions are fixed by the fixing means.
前記緩和問題構築手段は、前記取り除いた制約の違反量に対してペナルティが課されるように、ラグランジュ乗数を用いて前記目的関数を修正したラグランジュ緩和問題を構築することを特徴とする請求項1に記載のスケジュール作成装置。 2. The relaxation problem constructing means constructs the Lagrangian relaxation problem in which the objective function is modified using Lagrangian multipliers so that the amount of violation of the removed constraint is penalized. The scheduling device according to . ラグランジュ乗数を更新する更新手段を備え、
前記緩和問題求解手段は、前記更新手段で更新したラグランジュ乗数を反映させたラグランジュ緩和問題を求解することを特徴とする請求項2に記載のスケジュール作成装置。
comprising updating means for updating the Lagrangian multiplier;
3. The schedule generating apparatus according to claim 2, wherein said relaxation problem solving means solves the Lagrangian relaxation problem reflecting the Lagrangian multipliers updated by said updating means.
前記緩和問題構築手段は、ラグランジュ分解調整法により、ラグランジュ緩和問題を分解することを特徴とする請求項2又は3に記載のスケジュール作成装置。 4. The schedule creation device according to claim 2, wherein said relaxation problem construction means decomposes the Lagrangian relaxation problem by a Lagrangian decomposition adjustment method. 前記緩和問題求解手段は、前記緩和問題構築手段で構築した緩和問題を求解するために、最適化又は準最適化することで、最適解又は準最適解を得ることを特徴とする請求項1乃至4のいずれか1項に記載のスケジュール作成装置。 3. The relaxation problem solving means obtains an optimal solution or a semi-optimal solution by optimizing or semi-optimizing in order to solve the relaxation problem constructed by the relaxation problem constructing means. 5. The schedule creation device according to any one of 4. 選択可能な複数の機械を含む一工程を少なくとも含み、対象物に処理を行うプロセスにおけるスケジュールを作成することを特徴とする請求項1乃至5のいずれか1項に記載のスケジュール作成装置。 6. A scheduling device according to any one of claims 1 to 5, characterized in that it comprises at least one step involving a plurality of selectable machines and creates a schedule for a process of processing an object. 前記主問題は、同一機械が同一タイミングに処理できる対象物数の上限と、対象物毎、工程毎及び機械毎の処理に掛かる時間と、製品毎及び工程毎の処理開始可能時刻とに基づいて、所定の操業指標を良くすることを目的とすることを特徴とする請求項6に記載のスケジュール作成装置。 The main problem is based on the upper limit of the number of objects that can be processed by the same machine at the same timing, the time required for processing each object, each process, and each machine, and the processing start time for each product and each process. 7. The schedule creation device according to claim 6, wherein the purpose is to improve a predetermined operational index. 前記主問題は、さらに対象物毎及び工程毎の納期時刻と、対象物毎及び工程毎の納期遅れに掛かる単価とに基づいて、納期遅れ費用を最小化することを目的とすることを特徴とする請求項7に記載のスケジュール作成装置。 The main problem is characterized in that it aims at minimizing the late delivery cost based on the delivery time for each object and each process and the unit price for delay in delivery for each object and each process. The schedule creation device according to claim 7. 前記固定化手段は、前記緩和問題求解手段で求解した結果に基づいて、対象物毎の使用機械を固定化することを特徴とする請求項6乃至8のいずれか1項に記載のスケジュール作成装置。 9. The schedule creation device according to claim 6, wherein said fixation means fixes a machine to be used for each object based on the result of solving by said relaxation problem-solving means. . 前記固定化手段は、前記緩和問題求解手段で求解した結果に基づいて、処理順を固定化することを特徴とする請求項6乃至9のいずれか1項に記載のスケジュール作成装置。 10. The schedule generating apparatus according to claim 6, wherein said fixing means fixes the processing order based on the result obtained by said relaxation problem solving means. 制約及び目的関数で定式化される数理計画問題である主問題に基づいて、生産又は物流に係るスケジュールを作成するスケジュール作成方法であって、
前記主問題から前記制約の一部を取り除き、前記目的関数を修正した緩和問題を構築するステップと、
前記緩和問題を求解するステップと、
前記緩和問題を求解した結果に基づいて、前記主問題に含まれる条件を固定化するための制約式を前記主問題に追加するステップと、
前記条件を固定化した前記主問題を求解するステップとを有することを特徴とするスケジュール作成方法。
A schedule creation method for creating a schedule for production or distribution based on a primal problem that is a mathematical programming problem formulated with constraints and objective functions,
constructing a relaxed problem that removes some of the constraints from the primal problem and modifies the objective function;
solving the relaxation problem;
adding a constraint equation to the main problem for fixing conditions included in the main problem based on the result of solving the relaxed problem;
and a step of solving the main problem in which the conditions are fixed.
制約及び目的関数で定式化される数理計画問題である主問題に基づいて、生産又は物流に係るスケジュールを作成するためのプログラムであって、
前記主問題から前記制約の一部を取り除き、前記目的関数を修正した緩和問題を構築する緩和問題構築手段と、
前記緩和問題構築手段で構築した前記緩和問題を求解する緩和問題求解手段と、
前記緩和問題求解手段で前記緩和問題を求解した結果に基づいて、前記主問題に含まれる条件を固定化するための制約式を前記主問題に追加する固定化手段と、
前記固定化手段で前記条件を固定化した前記主問題を求解する求解手段としてコンピュータを機能させるためのプログラム。
A program for creating a schedule related to production or distribution based on a primal problem that is a mathematical programming problem formulated with constraints and objective functions,
a relaxation problem constructing means for constructing a relaxation problem in which part of the constraints are removed from the main problem and the objective function is modified;
a mitigation problem solving means for solving the mitigation problem constructed by the mitigation problem construction means;
fixation means for adding, to the main problem, a constraint expression for fixing conditions included in the main problem based on the result of solving the relaxed problem by the relaxed problem solving means;
A program for causing a computer to function as solving means for solving the main problem with the conditions fixed by the fixing means.
JP2018082223A 2018-04-23 2018-04-23 Scheduling device, method and program Active JP7147243B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018082223A JP7147243B2 (en) 2018-04-23 2018-04-23 Scheduling device, method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018082223A JP7147243B2 (en) 2018-04-23 2018-04-23 Scheduling device, method and program

Publications (2)

Publication Number Publication Date
JP2019191803A JP2019191803A (en) 2019-10-31
JP7147243B2 true JP7147243B2 (en) 2022-10-05

Family

ID=68390392

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018082223A Active JP7147243B2 (en) 2018-04-23 2018-04-23 Scheduling device, method and program

Country Status (1)

Country Link
JP (1) JP7147243B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102707077B1 (en) * 2021-11-15 2024-09-19 네스트필드(주) Demand response management method for discrete industrial manufacturing system based on constrained reinforcement learning

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009258863A (en) 2008-04-14 2009-11-05 Tokai Univ Multi-item and multi-process dynamic lot size scheduling method
JP2009277095A (en) 2008-05-15 2009-11-26 Nippon Steel Corp Production plan making device, production plan making method, program, and computer-readable storage medium
JP2009294874A (en) 2008-06-04 2009-12-17 Fuji Electric Systems Co Ltd Model prediction controller and program
JP2010285053A (en) 2009-06-11 2010-12-24 Hitachi Ltd Operation plan recreating apparatus and method
JP2011170408A (en) 2010-02-16 2011-09-01 Sumitomo Forestry Co Ltd Member assignment system
JP2013064245A (en) 2011-09-16 2013-04-11 Hitachi Ltd Water intake/conveyance operation controller

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009258863A (en) 2008-04-14 2009-11-05 Tokai Univ Multi-item and multi-process dynamic lot size scheduling method
JP2009277095A (en) 2008-05-15 2009-11-26 Nippon Steel Corp Production plan making device, production plan making method, program, and computer-readable storage medium
JP2009294874A (en) 2008-06-04 2009-12-17 Fuji Electric Systems Co Ltd Model prediction controller and program
JP2010285053A (en) 2009-06-11 2010-12-24 Hitachi Ltd Operation plan recreating apparatus and method
JP2011170408A (en) 2010-02-16 2011-09-01 Sumitomo Forestry Co Ltd Member assignment system
JP2013064245A (en) 2011-09-16 2013-04-11 Hitachi Ltd Water intake/conveyance operation controller

Also Published As

Publication number Publication date
JP2019191803A (en) 2019-10-31

Similar Documents

Publication Publication Date Title
Bożek et al. Flexible job shop scheduling with lot streaming and sublot size optimisation
Stefansson et al. Discrete and continuous time representations and mathematical models for large production scheduling problems: A case study from the pharmaceutical industry
Voß et al. Hybrid flow shop scheduling as a multi-mode multi-project scheduling problem with batching requirements: A real-world application
JPH05225205A (en) Sequential defined production planning system
Ronconi et al. Mixed-integer programming models for flowshop scheduling problems minimizing the total earliness and tardiness
Sawik Batch versus cyclic scheduling of flexible flow shops by mixed-integer programming
Chu et al. Hybrid method integrating agent-based modeling and heuristic tree search for scheduling of complex batch processes
JP5885637B2 (en) Scheduling method, scheduling program, and scheduling apparatus
Velez et al. A branch-and-bound algorithm for the solution of chemical production scheduling MIP models using parallel computing
Pacheco et al. A multi-start tabu search method for a single-machine scheduling problem with periodic maintenance and sequence-dependent set-up times
Zipfel et al. An iterated local search for customer order scheduling in additive manufacturing
Hansmann et al. Flexible job shop scheduling with blockages
Hamdi et al. Minimizing total tardiness in the permutation flowshop scheduling problem with minimal and maximal time lags
JP2009048580A (en) Project planning method, project planning program, and project planning system
Gerpott et al. Integration of the a2c algorithm for production scheduling in a two-stage hybrid flow shop environment
JP7147243B2 (en) Scheduling device, method and program
Sawik A new MIP approach for balancing and scheduling of mixed model assembly lines with alternative precedence relations
JP2003030395A (en) Method, device, program, and recording medium for project management
Wagner Sim4edu. com—web-based simulation for education
Gürel et al. Rescheduling with controllable processing times for number of disrupted jobs and manufacturing cost objectives
Liu Single machine scheduling to minimize maximum lateness subject to release dates and precedence constraints
Tang et al. Modelling and a tabu search solution for the slab reallocation problem in the steel industry
Chakrabortty et al. A comparative study of different integer linear programming approaches for resource-constrained project scheduling problems
Mercier-Aubin et al. Leveraging constraint scheduling: a case study to the textile industry
Al-Salem et al. A free-slack-based genetic algorithm for the robotic cell problem with controllable processing times

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201203

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210825

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210914

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211020

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220308

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220412

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220823

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220905

R151 Written notification of patent or utility model registration

Ref document number: 7147243

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151