JPH01277902A - スケジューリング問題解決支援システム - Google Patents
スケジューリング問題解決支援システムInfo
- Publication number
- JPH01277902A JPH01277902A JP63107330A JP10733088A JPH01277902A JP H01277902 A JPH01277902 A JP H01277902A JP 63107330 A JP63107330 A JP 63107330A JP 10733088 A JP10733088 A JP 10733088A JP H01277902 A JPH01277902 A JP H01277902A
- Authority
- JP
- Japan
- Prior art keywords
- jobs
- job
- scheduling
- time
- machines
- 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.)
- Pending
Links
Landscapes
- Complex Calculations (AREA)
- Control By Computers (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔概要〕
所定の制約条件を満足するように、ジョブを機械に割り
当てるという枠組みで捉えることのできるスケジューリ
ング問題を、計算機によって処理するスケジューリング
問題解決支援システムに関し。
当てるという枠組みで捉えることのできるスケジューリ
ング問題を、計算機によって処理するスケジューリング
問題解決支援システムに関し。
効率よく妥当なスケジュール解を導出する手段を提供す
ることを目的とし。
ることを目的とし。
決定的な手順により、逐次的にジョブを機械に割り当て
ていき、そのスケジューリングが成功しなかった場合に
、制約条件を緩和することにより。
ていき、そのスケジューリングが成功しなかった場合に
、制約条件を緩和することにより。
全ジョブの割り付け状態を生成する第1の処理手段と、
前記第1の処理手段が生成した全ジョブの割り付け状態
をもとに、任意の機械の間で交換可能な割り付け済みジ
ョブまたはジョブ群を抽出し。
前記第1の処理手段が生成した全ジョブの割り付け状態
をもとに、任意の機械の間で交換可能な割り付け済みジ
ョブまたはジョブ群を抽出し。
それらの機械間でジョブまたはジョブ群を交換した状態
の評価値を計算することによって、より制約条件が充足
される方向に逐次的に改善を行い。
の評価値を計算することによって、より制約条件が充足
される方向に逐次的に改善を行い。
スケジュール解を生成する第2の処理手段とを備えるよ
うに構成する。
うに構成する。
本発明は、所定の制約条件を満足するように。
ジョブを機械に割り当てるという枠組みで捉えることの
できるスケジューリング問題を、計算機によって処理す
るスケジューリング問題解決支援システムに関する。
できるスケジューリング問題を、計算機によって処理す
るスケジューリング問題解決支援システムに関する。
スケジューリング問題の多くは、「ジョブを機械に割り
付ける問題」と捉えることができる6機械とは、ジョブ
によって一定時間拘束される対象であって1割り当てら
れたジョブを実行するものである。例えば、トラックに
より、所要の地点間で貨物を輸送する場合に、貨物を運
搬するトラック等が機械であり、貨物輸送要求がジョブ
となる。
付ける問題」と捉えることができる6機械とは、ジョブ
によって一定時間拘束される対象であって1割り当てら
れたジョブを実行するものである。例えば、トラックに
より、所要の地点間で貨物を輸送する場合に、貨物を運
搬するトラック等が機械であり、貨物輸送要求がジョブ
となる。
このようなスケジューリング問題は、計画型エキスパー
トシステム等の適用対象問題の1つであるが、この種の
問題が組み合わせ問題に陥りやすいなどの特質から、高
速な解生成が困難であり。
トシステム等の適用対象問題の1つであるが、この種の
問題が組み合わせ問題に陥りやすいなどの特質から、高
速な解生成が困難であり。
それを解決して、実用的システムを構築できるようにす
る技術的手段が望まれている。
る技術的手段が望まれている。
例えば、n個所の営業所とm台のトランクが与えられ、
それらの営業所間に所要数の便を実現するようなトラン
クの運行計画を行うスケジューリング問題の処理を考え
る。
それらの営業所間に所要数の便を実現するようなトラン
クの運行計画を行うスケジューリング問題の処理を考え
る。
その場合に、各営業所の地理的関係(営業所を結ぶ経路
、その間の運行の所要時間等)、各営業所における荷積
み、尚下ろしその他の所要時間。
、その間の運行の所要時間等)、各営業所における荷積
み、尚下ろしその他の所要時間。
営業所の営業時間、営業所ごとの荷の到着および積み出
し等の時刻の要求その他が制約条件として与えられる。
し等の時刻の要求その他が制約条件として与えられる。
この問題の解は1例えば各トラックTI、T2゜・・・
が、どの営業所を何時に出発して、どの営業所に何時に
到着し、そこで何分間作業し、さらに他の営業所へ向か
って何時に出発し、・・・というような1日のスケジェ
ールであり、この解を前記の制約条件を満足するように
求めることが必要とされる。
が、どの営業所を何時に出発して、どの営業所に何時に
到着し、そこで何分間作業し、さらに他の営業所へ向か
って何時に出発し、・・・というような1日のスケジェ
ールであり、この解を前記の制約条件を満足するように
求めることが必要とされる。
このようなスケジューリング問題は、一般にトラックを
「機械」とし、ある営業所から他の営業所への運行等を
、その機械で処理される「ジョブ」として2機械にジョ
ブを割り付ける問題としてIにえることができる。
「機械」とし、ある営業所から他の営業所への運行等を
、その機械で処理される「ジョブ」として2機械にジョ
ブを割り付ける問題としてIにえることができる。
この種の問題を解く場合に1問題を数式化して数学的に
解を求める。いわゆるオペレーション・リサーチ等の解
析手法があるが、前記のような現実の問題では2問題を
大幅に単純化しない限り。
解を求める。いわゆるオペレーション・リサーチ等の解
析手法があるが、前記のような現実の問題では2問題を
大幅に単純化しない限り。
それを数式化することが掻めて困難であり、そのため、
実際に適用できない場合が多い。
実際に適用できない場合が多い。
また5数式化が可能であっても、制約条件の変更がある
と、一般に数式の構成から再検討を要することになり、
事態の変化に対応することが困難な場合が多い。
と、一般に数式の構成から再検討を要することになり、
事態の変化に対応することが困難な場合が多い。
一方、 pk1析的手法ではな(1機械に対するジョブ
割り当ての5時間軸上おけるすべての組み合わせについ
て、制約条件を満足するものを、網羅的に探索する方式
も考えられているが、探索空間が広すぎるため、一般に
実用的な処理時間でスケジュール解を得ることが困難で
ある。
割り当ての5時間軸上おけるすべての組み合わせについ
て、制約条件を満足するものを、網羅的に探索する方式
も考えられているが、探索空間が広すぎるため、一般に
実用的な処理時間でスケジュール解を得ることが困難で
ある。
そこで1本発明者等は、スケジューリング問題の解を高
速に得るための方式/方法として1次の2種類の技術を
提案している。
速に得るための方式/方法として1次の2種類の技術を
提案している。
その1つは、ヒユーリスティクスを用いて決定的なスケ
ジューリングを行うものであり1機械とジョブの選択を
分離し、前空間を部分空間に限定することにより、計算
時間を短縮するものである(特願昭62−267561
号)。
ジューリングを行うものであり1機械とジョブの選択を
分離し、前空間を部分空間に限定することにより、計算
時間を短縮するものである(特願昭62−267561
号)。
もう1つは、とりあえず制約条件を緩和して全ジョブを
機械に割り付け5機械間で交換可能なジョブまたはジョ
ブ群を、評価値の計算結果に従って逐次交換することに
より、新たな状態を生成していき、最終的にすべての制
約条件を満たすスケジュール解を求めるものである(特
願昭62−274089号)。
機械に割り付け5機械間で交換可能なジョブまたはジョ
ブ群を、評価値の計算結果に従って逐次交換することに
より、新たな状態を生成していき、最終的にすべての制
約条件を満たすスケジュール解を求めるものである(特
願昭62−274089号)。
前者の手法では、決定的にジョブを機械に割り付けてい
くので、Ill械やジョブの増加に対して。
くので、Ill械やジョブの増加に対して。
組み合わせ問題的な計算時間の増加を避けることができ
る。しかし、場合によっては、すべての制約条件を満た
す完全な解の生成率がよくないことがある。
る。しかし、場合によっては、すべての制約条件を満た
す完全な解の生成率がよくないことがある。
一方、後者の逐次改善をベースにする手法では。
最初に全ジョブを機械に割り付ける状態によって。
ジョブまたはジョブ群の交換回数が大幅に増加すること
があり、特に大規模データを取り扱うスケジューリング
問題では、高速な解生成が難しくなることがある。
があり、特に大規模データを取り扱うスケジューリング
問題では、高速な解生成が難しくなることがある。
本発明は上記問題点の解決を図り、前記の2つの手法を
組み合わせて2段階制御を行うことにより1両者の長所
を活かし、効率よく妥当なスケジュール解を導出する手
段を提供することを目的としている。
組み合わせて2段階制御を行うことにより1両者の長所
を活かし、効率よく妥当なスケジュール解を導出する手
段を提供することを目的としている。
第1図は本発明の詳細な説明するための図である。
第1図において、10はスケジューリングの対象として
入力される問題、11はCPUおよびメモリ等からなる
処理装置、12はヒユーリスティクスを用いてジョブの
選択および機械に対する割り付けを行うジョブアロケー
タ、13は状態の改善を行いスケジュール解を生成する
ジョブモディファイヤ、14は得られたスケジュール解
を出力するスケジュール解出力部、15は与えられた間
B10に対するスケジュール解を表す。
入力される問題、11はCPUおよびメモリ等からなる
処理装置、12はヒユーリスティクスを用いてジョブの
選択および機械に対する割り付けを行うジョブアロケー
タ、13は状態の改善を行いスケジュール解を生成する
ジョブモディファイヤ、14は得られたスケジュール解
を出力するスケジュール解出力部、15は与えられた間
B10に対するスケジュール解を表す。
ジョブアロケータ12は、ジップ9機械および制約条件
により規定された間uioが与えられると、ジップを機
械に対して時間軸上で割り当てるという枠組みのもとで
、ヒユーリスティクスを用いることにより、決定的な手
順でジョブを機械に割り付けていき、スケジューリング
を行っていく。
により規定された間uioが与えられると、ジップを機
械に対して時間軸上で割り当てるという枠組みのもとで
、ヒユーリスティクスを用いることにより、決定的な手
順でジョブを機械に割り付けていき、スケジューリング
を行っていく。
jllI的に、すべてのジップが制約条件を満たして各
機械に割り付けられれば、スケジューリング成功として
、その結果をスケジュール解15とする。
機械に割り付けられれば、スケジューリング成功として
、その結果をスケジュール解15とする。
決定的なジョブの割り付けにあたって、制約条件を満た
すことができず、未割り付けのジョブが残された場合5
与えられた制約条件を緩和することにより、未割り付け
のジョブを制約条件未充足のままll械に割り付け、一
応全ジョブの割り付け状態を生成して、その結果をジリ
ブモディファイヤ13に通知する。 ・ ジョブモディファイヤ13は、ジップアロケータ12が
スケジュール解を導出できず、制約条件が未充足の全ジ
ョブ割り付け状態情報を通知してきた場合、その全ジョ
ブ割り付け状態を初期状態として、異なる機械の間で交
換可能な割り付け済みジョブまたはジョブ群を抽出し、
それらの機械間でジョブまたはジョブ群を交換した状態
の評価値を計算することによって、より制約条件が充足
される方向に逐次的に改善を行い、スケジュール解を生
成する処理を行う、こうして得られたスケジュール解を
、スケジュール解出力部14を介して出力する。
すことができず、未割り付けのジョブが残された場合5
与えられた制約条件を緩和することにより、未割り付け
のジョブを制約条件未充足のままll械に割り付け、一
応全ジョブの割り付け状態を生成して、その結果をジリ
ブモディファイヤ13に通知する。 ・ ジョブモディファイヤ13は、ジップアロケータ12が
スケジュール解を導出できず、制約条件が未充足の全ジ
ョブ割り付け状態情報を通知してきた場合、その全ジョ
ブ割り付け状態を初期状態として、異なる機械の間で交
換可能な割り付け済みジョブまたはジョブ群を抽出し、
それらの機械間でジョブまたはジョブ群を交換した状態
の評価値を計算することによって、より制約条件が充足
される方向に逐次的に改善を行い、スケジュール解を生
成する処理を行う、こうして得られたスケジュール解を
、スケジュール解出力部14を介して出力する。
本発明では、ジップアロケータ12によるヒユーリステ
ィクスを用いた決定的なスケジューリングと、ジョブモ
ディファイヤ13による逐次改善法をベースにしたスケ
ジューリングの2段階制御によって、スケジュール解の
生成を行うようにしている。
ィクスを用いた決定的なスケジューリングと、ジョブモ
ディファイヤ13による逐次改善法をベースにしたスケ
ジューリングの2段階制御によって、スケジュール解の
生成を行うようにしている。
ジョブ70ケータ12では、ジョブを決定的に機械に割
り付けていくので、ジョブ数が増加しても、全ジョブに
対する処理時間は、リニアに増加するだけである。また
、スケジュール解に到達できない場合でも、ある程度、
解に近い割り付け状態を生成して終了する。従って8ジ
ヨブアロケータ12によって生成した状態から、ジョブ
モディファイヤ13によって逐次改善を行っていけば8
解に近い状態からの改善によって、少ない状態の評価お
よびジップ等の交換の回数で、スケジュール解に到達す
ることができるようになる。
り付けていくので、ジョブ数が増加しても、全ジョブに
対する処理時間は、リニアに増加するだけである。また
、スケジュール解に到達できない場合でも、ある程度、
解に近い割り付け状態を生成して終了する。従って8ジ
ヨブアロケータ12によって生成した状態から、ジョブ
モディファイヤ13によって逐次改善を行っていけば8
解に近い状態からの改善によって、少ない状態の評価お
よびジップ等の交換の回数で、スケジュール解に到達す
ることができるようになる。
すなわち、単独にジョブモディファイヤ13だけで、初
期状態を生成して、その逐次改善を行った場合には、ジ
ョブ数の増加に伴い、交換実行回数等の組み合わせ問題
的増加が生じることになるが、ジップアロケーク12と
の連携により、交換実行回数等を削減し、大規模データ
を取り扱うようなスケジューリング問題についても、高
速な解生成を実現することが可能になる。
期状態を生成して、その逐次改善を行った場合には、ジ
ョブ数の増加に伴い、交換実行回数等の組み合わせ問題
的増加が生じることになるが、ジップアロケーク12と
の連携により、交換実行回数等を削減し、大規模データ
を取り扱うようなスケジューリング問題についても、高
速な解生成を実現することが可能になる。
第2図は本発明の一実施例に係るジョブアロケータの処
理フロー、第3図は本発明の一実施例に係るジョブモデ
ィファイヤの処理フロー、第4図はジョブモディファイ
ヤによる処理の例、第5図は本発明の詳細な説明するた
めのスケジューリングデータの例、第6図はジョブおよ
び機械の記述例、第7図はジップアロケークによる強制
割り付け説明図、第8図は本発明の適用例によるスケジ
ューリング結果の例を示す。
理フロー、第3図は本発明の一実施例に係るジョブモデ
ィファイヤの処理フロー、第4図はジョブモディファイ
ヤによる処理の例、第5図は本発明の詳細な説明するた
めのスケジューリングデータの例、第6図はジョブおよ
び機械の記述例、第7図はジップアロケークによる強制
割り付け説明図、第8図は本発明の適用例によるスケジ
ューリング結果の例を示す。
トランクによる一日の陸送計画を立てるスケジューリン
グ問題では1例えば機械としてm台のトラックが指定さ
れ、n個所の営業所間について。
グ問題では1例えば機械としてm台のトラックが指定さ
れ、n個所の営業所間について。
「営業所Pから営業所Qへの便」というようなジョブが
指定される。また、営業所間の所要時間その他の制約条
件が設定される。
指定される。また、営業所間の所要時間その他の制約条
件が設定される。
このようなスケジューリング問題の入力に対し。
第1図に示すジョブアロケータ12は、第2図に示すよ
うな処理により、決定的なスケジューリングを行う、以
下の説明における■〜0は、第2図に示す処理■〜■に
対応する。
うな処理により、決定的なスケジューリングを行う、以
下の説明における■〜0は、第2図に示す処理■〜■に
対応する。
■ 現時点において1割り当て可能な注目機械を選択す
る。なお2割り当て可能な機械がない場合には、最も早
くジョブから解放される機械に着目し、その解放される
時点まで時間を進めて。
る。なお2割り当て可能な機械がない場合には、最も早
くジョブから解放される機械に着目し、その解放される
時点まで時間を進めて。
その機械を注目機械とする。
次に割り当て候補となるジョブ集合の選択を行うが、こ
の選択にあって2本実施例では、妥当なジョブを対象と
するための時間幅として。
の選択にあって2本実施例では、妥当なジョブを対象と
するための時間幅として。
必要最大時間と、可能最小時間の2つの時間パラメータ
を用いる。必要最大時間は、どのジョブを刷り当てても
、その機械はその時間後に割り当て可能になるという時
間であり、可能最小時間は2機械の遊び時間が少なくな
るように。
を用いる。必要最大時間は、どのジョブを刷り当てても
、その機械はその時間後に割り当て可能になるという時
間であり、可能最小時間は2機械の遊び時間が少なくな
るように。
遊びの許容時間とジョブの発生頻度との関係から定める
時間である。これらの時間は1問題に応じて定数として
与えられるが2試行によるチューニングによって、適当
な値を選ぶようにするとよい。
時間である。これらの時間は1問題に応じて定数として
与えられるが2試行によるチューニングによって、適当
な値を選ぶようにするとよい。
■ 注目機械を基準として、ジョブの割り当て開始可能
時間の最終時刻が、現時刻から必要最大時間内に含まれ
るジョブ(以下、必要最大ジョブという)の集合Jsl
を抽出する。
時間の最終時刻が、現時刻から必要最大時間内に含まれ
るジョブ(以下、必要最大ジョブという)の集合Jsl
を抽出する。
■ また8注目機械を基準として9 ジョブの割り当て
開始可能時間の最初の時刻が、現時刻から可能最小時間
内に含まれるジョブ(以下、可能最小ジョブという)の
集合Js2を抽出する。
開始可能時間の最初の時刻が、現時刻から可能最小時間
内に含まれるジョブ(以下、可能最小ジョブという)の
集合Js2を抽出する。
■ 次に、注目機械以外のi械が、必要最大ジョブの集
合Jslを処理可能であるか否かを判断する。ここでは
3次のような判断を行う。
合Jslを処理可能であるか否かを判断する。ここでは
3次のような判断を行う。
必要最大ジョブとして、第2図falに示すように、ジ
ョブJ、〜J4があったとする。まず。
ョブJ、〜J4があったとする。まず。
最初のジョブJ1を処理可能な機械で、最も遅(空きに
なる機械M、をジョブJ1に対応づける0次にジョブJ
□について、同様に機械M8を対応づける。ジップJ、
についても同様である。最終的に、ジップJ4について
も、注目機械以外に割り当て可能である機械Mlがあれ
ば。
なる機械M、をジョブJ1に対応づける0次にジョブJ
□について、同様に機械M8を対応づける。ジップJ、
についても同様である。最終的に、ジップJ4について
も、注目機械以外に割り当て可能である機械Mlがあれ
ば。
必要最大ジップを、注目機械以外で処理可能であること
になる。
になる。
■ 注目機械以外の機械で、必要最大ジョブの集合Js
lを処理できない場合2選択ジョブとしてこの集合Js
lを採用する。
lを処理できない場合2選択ジョブとしてこの集合Js
lを採用する。
■ 注目機械以外の機械で、必要最大ジョブの集合Js
lを処理できる場合、注目機械を早く稼動させたほうが
よいので、可能最小ジョブの集合Js2を選択ジョブと
して採用する。
lを処理できる場合、注目機械を早く稼動させたほうが
よいので、可能最小ジョブの集合Js2を選択ジョブと
して採用する。
■ 選択ジョブの中から注目機械に割り当てるジョブを
決定する。制約条件を考慮するとともに。
決定する。制約条件を考慮するとともに。
選択ジョブ集合の要素を評価し、最もよいジョブを割り
当てるようにする。
当てるようにする。
■ 制約条件を満たすジョブの割り付けが可能であった
かどうかを判定し、制約条件を満たす解が得られなかっ
た場合、処理@へ移る。
かどうかを判定し、制約条件を満たす解が得られなかっ
た場合、処理@へ移る。
■ 全ジョブについてのスケジュールが終了したかどう
かを判定する。全ジョブについてのスケジュールが終了
した場合、必要とするスケジュール解が得られたことに
なるので、第1図に示すスケジュール解出力部14に結
果を通知し。
かを判定する。全ジョブについてのスケジュールが終了
した場合、必要とするスケジュール解が得られたことに
なるので、第1図に示すスケジュール解出力部14に結
果を通知し。
処理を終了する。
0 処理すべきジョブが残っている場合1時間の経過や
条件の変更に応じて5新しいジョブの生成が必要になっ
たかどうかを調べる。ジョブの生成が必要でない場合、
処理■へ制御を戻し。
条件の変更に応じて5新しいジョブの生成が必要になっ
たかどうかを調べる。ジョブの生成が必要でない場合、
処理■へ制御を戻し。
同様に処理を繰り返す0例えば、営業時間の終了時刻が
近づいたときに、トラックが車庫のない営業所にいる場
合には、そのトラックを車庫のある営業所へ移すための
ジョブの生成が必要になる。
近づいたときに、トラックが車庫のない営業所にいる場
合には、そのトラックを車庫のある営業所へ移すための
ジョブの生成が必要になる。
■ ジョブの生成が必要になった場合には、そのジョブ
を生成して内部テーブル(図示省略)に設定し、処理■
へ制御を戻して同様に処理を繰り返す。
を生成して内部テーブル(図示省略)に設定し、処理■
へ制御を戻して同様に処理を繰り返す。
■ 制約条件を満たずジョブの割り付けができなくなっ
た場合、制約条件を緩和して1強制的に未割り付けジョ
ブを機械に割り付ける。そして。
た場合、制約条件を緩和して1強制的に未割り付けジョ
ブを機械に割り付ける。そして。
その結果を第1図に示すジップモディファイヤ13に通
知し、ジョブアロケータ12の処理を終了する。
知し、ジョブアロケータ12の処理を終了する。
ジョブモディファイヤ13では、ジップアロケータ12
からの通知により2例えば第3図に示す処理Φ〜■のよ
うな処理を実行する。
からの通知により2例えば第3図に示す処理Φ〜■のよ
うな処理を実行する。
■ まず、制約条件が未充足である全ジョブ割り付け状
態の情報を受は取る。それを初期状態として、以下の処
理による逐次改善を行う。
態の情報を受は取る。それを初期状態として、以下の処
理による逐次改善を行う。
■ 現在の割り付け状態を、制約条件に基づいてチエツ
クし、制約条件をすべて満足していれば。
クし、制約条件をすべて満足していれば。
その状態をスケジュール解と判断して、その状態の情報
を、第1図に示すスケジュール解出力部14を介して出
力する。
を、第1図に示すスケジュール解出力部14を介して出
力する。
■ 状態が制約条件を満足していない場合、そのジョブ
の割り付け状態から、任意の機械に割り付けられている
ジョブの部分集合で、相互に交換可能な部分集合を検索
して、それをスワップ候補とする。
の割り付け状態から、任意の機械に割り付けられている
ジョブの部分集合で、相互に交換可能な部分集合を検索
して、それをスワップ候補とする。
交換可能な部分集合として2例えば異なる2つの機械に
割り当てられているジョブで、出発営業所を同じくする
ジョブ以降に並ぶ1以上のジョブからなる各ジョブの列
、あるいは出発営業所を同じくするジョブから、到着営
業所を同じくするジョブまでの各ジョブの列その他を選
ぶことができる。また、一方の部分集合が空な場合を含
めて、単にある機械に割り当てられているジョブまたは
ジョブの列を、他の機械に移動する場合もスワップ候補
となる。
割り当てられているジョブで、出発営業所を同じくする
ジョブ以降に並ぶ1以上のジョブからなる各ジョブの列
、あるいは出発営業所を同じくするジョブから、到着営
業所を同じくするジョブまでの各ジョブの列その他を選
ぶことができる。また、一方の部分集合が空な場合を含
めて、単にある機械に割り当てられているジョブまたは
ジョブの列を、他の機械に移動する場合もスワップ候補
となる。
■ スワップ候補が検索されると、その候補のジョブ部
分集合を、該当する機械間で交換して得られる状態につ
いて、制約条件に関連する評価値を計算する。この評価
値として1例えば各便の超過時間を採ることができる。
分集合を、該当する機械間で交換して得られる状態につ
いて、制約条件に関連する評価値を計算する。この評価
値として1例えば各便の超過時間を採ることができる。
■ 交換して得られる状態の評価値が、交換前の現状態
の評価値より改善されているかどうかを。
の評価値より改善されているかどうかを。
判定条件に基づいて判定する。改善されないと判定した
場合には、処理■へ戻り、別のスワップ候補を検索する
。
場合には、処理■へ戻り、別のスワップ候補を検索する
。
■ 交換によって改善される場合には、スワップ候補の
ジップまたはジップ群の交換を実行し。
ジップまたはジップ群の交換を実行し。
状態を新しい状態に更新した後、処理■へ制御を戻して
、断状態が解になっているかどうかをチエツクする。以
下、処理■ないし処理■を繰り返し、状態を逐次改善し
て、スケジュール解を求める。
、断状態が解になっているかどうかをチエツクする。以
下、処理■ないし処理■を繰り返し、状態を逐次改善し
て、スケジュール解を求める。
このジップモディファイヤ13による逐次改善の処理を
、第4図に示す具体例に従って説明する。
、第4図に示す具体例に従って説明する。
なお、説明を簡単にするために、ここでは、ジョブ70
ケータ12による処理とは独立した処理として説明する
。
ケータ12による処理とは独立した処理として説明する
。
例えば第4図(イ)に示すように、営業所A〜営業所り
の4個所の営業所があり、営業所A−B間で4便(2往
復)、他のすべての営業所間でそれぞれ2便のジョブが
あったとする。そのジョブを実行する機械であるトラッ
ク(Tl、T2.T3)は、3台あったとする。
の4個所の営業所があり、営業所A−B間で4便(2往
復)、他のすべての営業所間でそれぞれ2便のジョブが
あったとする。そのジョブを実行する機械であるトラッ
ク(Tl、T2.T3)は、3台あったとする。
また1次のような制約条件が与えられたとする。
(l)トラックTI、T2.T3は、各々営業所A。
B、Cに初期配置されている。
(2)各営業所間の所要時間は、すべて50分を要する
。
。
(3)各トランクに割り当てる便の所要時間は。
200分以下でなければならない。
(4) 全トラックを運行する。
(5) 各トラックは、終了時に営業所A、B、Cに
配備されなければならない。
配備されなければならない。
ここで、各トラックに割り当てた便の総研要時間のうち
200分を超える時間の値を評価値とし。
200分を超える時間の値を評価値とし。
判定条件として9次の条件を指定する。
スワップ候補の現評価値の一方をeI+ 他方をC2と
し、交換実行後の新評価値を、それぞれne、 、ne
z として。
し、交換実行後の新評価値を、それぞれne、 、ne
z として。
wax(e+ + ex ) >wax(ne+ 、
nflx )または((e、 =ne、 )かつ(e
、 >net ) 1または((e、 =ne、 )か
つ(1lll >nel ) 1を満足するとき、状態
が改善されるとする。
nflx )または((e、 =ne、 )かつ(e
、 >net ) 1または((e、 =ne、 )か
つ(1lll >nel ) 1を満足するとき、状態
が改善されるとする。
ここで、スワップ候補におけるジョブの部分集合の交換
は、出発点と到着点が同一のパスを構成するジョブの列
について行うループスワップと。
は、出発点と到着点が同一のパスを構成するジョブの列
について行うループスワップと。
ある出発点以降の全ノ?スを構成するジョブの列につい
て行うテールスワップの2種類とし、このような条件の
パスで出発点を同じくするパスを異なるジョブ集合から
検索して、スワップ候補とする。
て行うテールスワップの2種類とし、このような条件の
パスで出発点を同じくするパスを異なるジョブ集合から
検索して、スワップ候補とする。
以上を条件としてスケジューリングを行うと。
例えば第4図(ロ)に示す(al〜(C1のように、逐
次改善によるスケジュール解が求められる。
次改善によるスケジュール解が求められる。
すなわち9 ジップモディファイヤが処理する初期状態
が、仮にfalOようであったとすると1例えばトラン
クTIとT2間のスワップ候補として。
が、仮にfalOようであったとすると1例えばトラン
クTIとT2間のスワップ候補として。
図に点線の枠で示した部分をとりあげ、ループスワップ
の対象とする。なお、ここでジョブの割り当てがないト
ランクT2およびT3には、それぞれ営業所BからB、
営業所CからCへのダミーの便があるものと見ることが
できる。
の対象とする。なお、ここでジョブの割り当てがないト
ランクT2およびT3には、それぞれ営業所BからB、
営業所CからCへのダミーの便があるものと見ることが
できる。
(alの状態における評価値は、トラックT1について
、50X12−200=400であり、T2については
、−200である。ここで、前記のループスワップを行
った場合、評価値は2 トランクTlについてO,トラ
ンクT2について200となる。従って、前記判定条件
により、改善が得られると判断し、交換を実行して、
Cblの断状態を得る。
、50X12−200=400であり、T2については
、−200である。ここで、前記のループスワップを行
った場合、評価値は2 トランクTlについてO,トラ
ンクT2について200となる。従って、前記判定条件
により、改善が得られると判断し、交換を実行して、
Cblの断状態を得る。
次に、評価値の間隔の大きいトラックT2とT3との間
のスワップ候補を検索し9山)において点線の枠で示し
た部分のテールスワップをとりあげるとすると、そのス
ワップ候補を交換した場合の評価値は、トラックT2.
T3のいずれについても、0になる。従って1判定条件
により、改善が得られることがわかり、交換を実行する
。これにより5(C)の状態を得る。この状態は5制約
条件をすべて満足するので、スケジュール解となる。
のスワップ候補を検索し9山)において点線の枠で示し
た部分のテールスワップをとりあげるとすると、そのス
ワップ候補を交換した場合の評価値は、トラックT2.
T3のいずれについても、0になる。従って1判定条件
により、改善が得られることがわかり、交換を実行する
。これにより5(C)の状態を得る。この状態は5制約
条件をすべて満足するので、スケジュール解となる。
本発明では、第4図(ロ)に示すfalの初期状態など
を、あらかじめ第1図に示すジョブアロケータ12によ
って生成し、スケジュール解に近い状態から逐次改善を
行うので、もっと複雑な問題に対しても、高速にスケジ
ュール解を得ることができる。
を、あらかじめ第1図に示すジョブアロケータ12によ
って生成し、スケジュール解に近い状態から逐次改善を
行うので、もっと複雑な問題に対しても、高速にスケジ
ュール解を得ることができる。
次に、同種のスケジューリング問題であって。
実用上必要となるようなスケジューリング問題の例を説
明する。
明する。
トランクによる1日の陸送計画を立てる問題で。
スケジューリングデータとして与えられたデータは1例
えば第5図(A)ないしくD)のようなデータである。
えば第5図(A)ないしくD)のようなデータである。
スケジューリングのための営業所情報として5例えば第
5図(A)示すように、各営業所ごとに。
5図(A)示すように、各営業所ごとに。
営業時間、夜間設備(車庫)の有無、トラックの初期配
置台数、荷積み、荷下ろしの時間および点検時間などの
情報がある。
置台数、荷積み、荷下ろしの時間および点検時間などの
情報がある。
また、トランク便数の情報として2例えば第5図(B)
に示すように、出発営業所から目的営業所への必要なト
ラック便数情報が入力情報とされる。ここで、O印で囲
んだ数値は、出発時刻または出発時間が定められた定期
便を含む便数を示している。
に示すように、出発営業所から目的営業所への必要なト
ラック便数情報が入力情報とされる。ここで、O印で囲
んだ数値は、出発時刻または出発時間が定められた定期
便を含む便数を示している。
この定期便の情報は、別に例えば第5図(C)に示すよ
うな情報として入力される。 ゛さらに、出発営業所
から目的営業所までの、トラックでの所要時間情報が2
例えば第5図(D)に示すような情報として与えられる
。
うな情報として入力される。 ゛さらに、出発営業所
から目的営業所までの、トラックでの所要時間情報が2
例えば第5図(D)に示すような情報として与えられる
。
このようなスケジューリング問題を解くにあたって、ト
ランクは機械として扱われ5便数に応してトランクを移
動させる仕事がジョブとして扱われるが、これを1例え
ば第6図に示すジョブおよび機械の記述のようにまとめ
る。
ランクは機械として扱われ5便数に応してトランクを移
動させる仕事がジョブとして扱われるが、これを1例え
ば第6図に示すジョブおよび機械の記述のようにまとめ
る。
第6図(イ)に示すジョブの表現において、最早開始時
刻は、このジョブを開始することができる最も早い時刻
である。最遅開始時刻は、このジョブを開始することが
できる最も遅い時刻である。
刻は、このジョブを開始することができる最も早い時刻
である。最遅開始時刻は、このジョブを開始することが
できる最も遅い時刻である。
最早終了時刻、最遅終了時刻は、それぞれこのジョブを
終了することができる最も早い時刻、最も遅い時刻であ
る。ジョブサイズは、ある機械がそのジョブを実行する
のに必要な時間である。
終了することができる最も早い時刻、最も遅い時刻であ
る。ジョブサイズは、ある機械がそのジョブを実行する
のに必要な時間である。
各機械についても、第6図(ロ)に示すように。
ジョブ処理性能、動作開始可能時刻、最遅動作終了時刻
、最初に配置されている位置などの情報の記述にまとめ
られる。
、最初に配置されている位置などの情報の記述にまとめ
られる。
第6図に示すような記述は、第5図(A)ないしCD)
に示す情報を入力するために、ユーザ自身が行ってもよ
く、またユーザインタフェース部において、メニュー等
による入力情報に基づき。
に示す情報を入力するために、ユーザ自身が行ってもよ
く、またユーザインタフェース部において、メニュー等
による入力情報に基づき。
システム内部で自動的に生成するようにしてもよい。
各種制約条件については9例えばプロダクションルール
等で記述することができる。
等で記述することができる。
第1図に示すジョブアロケータ12は、内部知識として
有するヒユーリスティクスを用いて、各ジョブの割り付
け処理を行う、朝の初期状態では。
有するヒユーリスティクスを用いて、各ジョブの割り付
け処理を行う、朝の初期状態では。
例えば第2営業所にある1台のトランクを注目機械とし
て、それを最初のスケジューリング対象とする。ここで
2割り付け候補のジョブ集合は、第1営業所への輸送、
第3営業所への輸送、第4営業所への輸送、・・・であ
る、必要最大時間は1例えば2時間、可能最小時間は3
0分というように適当に定めてよい、。
て、それを最初のスケジューリング対象とする。ここで
2割り付け候補のジョブ集合は、第1営業所への輸送、
第3営業所への輸送、第4営業所への輸送、・・・であ
る、必要最大時間は1例えば2時間、可能最小時間は3
0分というように適当に定めてよい、。
最初、第2営業所には、4台のトランクがいるので、注
目機械以外の機械は、残りの3台のトラックということ
になる。なお、各トラックのスケジューリングが進み、
必要最大時間内に、他の営業所から到着したトランクが
使用可能になると。
目機械以外の機械は、残りの3台のトラックということ
になる。なお、各トラックのスケジューリングが進み、
必要最大時間内に、他の営業所から到着したトランクが
使用可能になると。
そのトラックも対抗機械の1つとして数えられる。
第2図に従って説明した処理により、注目機械に対する
選択ジップとして、必要最大ジョブを採用するか、可能
最小ジョブを採用するかを決め。
選択ジップとして、必要最大ジョブを採用するか、可能
最小ジョブを採用するかを決め。
その注目機械(トランク)に、どの営業所へ出発すれば
よいかのジョブを割り付ける。その後5次に現在割り当
て可能であるトラックを注目機械として選択し、同様に
ジョブを選択してスケジューリングを進める。
よいかのジョブを割り付ける。その後5次に現在割り当
て可能であるトラックを注目機械として選択し、同様に
ジョブを選択してスケジューリングを進める。
この結果、すべてのジョブを、制約条件を満たすように
割り付けることができれば1それがスケジュール解とな
る。しかし、第7図(イ)に示すジョブJ23.J26
.・・・のように、制約条件を満たして割り付けること
ができないジョブが残った場合1例えば時間的な制約条
件を緩和し、未割り付けジョブの開始状態、終了状態の
みを考慮して、第7図(ロ)に示すように、接続可能な
位置に強制的にジョブを押し込む、こうして全ジョブ割
り付け状態を生成し、第1図に示すジョブモディファイ
ヤ13を起動する。
割り付けることができれば1それがスケジュール解とな
る。しかし、第7図(イ)に示すジョブJ23.J26
.・・・のように、制約条件を満たして割り付けること
ができないジョブが残った場合1例えば時間的な制約条
件を緩和し、未割り付けジョブの開始状態、終了状態の
みを考慮して、第7図(ロ)に示すように、接続可能な
位置に強制的にジョブを押し込む、こうして全ジョブ割
り付け状態を生成し、第1図に示すジョブモディファイ
ヤ13を起動する。
ジョブモディファイヤ13は、第3図に示す処理により
、第4図の例と同様な逐次改善を行い。
、第4図の例と同様な逐次改善を行い。
すべての制約条件を満たずスケジュール解を求める。す
なわち、第7図(ロ)に示す機械(Ml。
なわち、第7図(ロ)に示す機械(Ml。
M2.・・・)に割り付けられたジョブのシーケンスに
対し1部分シーケンスの交換操作を行い、層状態への収
束を図る。
対し1部分シーケンスの交換操作を行い、層状態への収
束を図る。
以上の2段階制御によるスケジューリング処理により、
最終的に例えば第8図に示すようなスケジェーリング結
果が得られる。この結果では、最初に第2営業所にいる
トランクAが、4時00分に第1営業所へ向かって出発
し、第1営業所に5時00分に到着した後、50分間の
作業時間をとリ、5時50分に第1営業所から第2営業
所へ戻る。また、第9営業所から第2営業所への定期便
として、このトランクAが、第9営業所を16時10分
に出発するようになっている。他のトランクについても
、それぞれ同様に、現在いる営業所からの出発時刻と、
その目的営業所等が得られる。
最終的に例えば第8図に示すようなスケジェーリング結
果が得られる。この結果では、最初に第2営業所にいる
トランクAが、4時00分に第1営業所へ向かって出発
し、第1営業所に5時00分に到着した後、50分間の
作業時間をとリ、5時50分に第1営業所から第2営業
所へ戻る。また、第9営業所から第2営業所への定期便
として、このトランクAが、第9営業所を16時10分
に出発するようになっている。他のトランクについても
、それぞれ同様に、現在いる営業所からの出発時刻と、
その目的営業所等が得られる。
もちろん1本発明は、このようなトラックの陸送計画に
限らず、他のスケジューリング問題にも。
限らず、他のスケジューリング問題にも。
同様に適用可能である。
例えば次のような輸送計画のスケジューリングデータに
よる各問題について、実測した処理時間等は、以下のと
おりであった。
よる各問題について、実測した処理時間等は、以下のと
おりであった。
(1) スケジューリングデータ
ここで、ジシブの欄における括弧内の数値は。
定期便のように開始時刻が定められているジョブ(固定
ジョブという)の数である。エリア八では。
ジョブという)の数である。エリア八では。
全ジョブ49個のうち、16個が固定ジョブであること
を意味している。
を意味している。
(2) ヒユーリスティクスを用いたスケジューリン
グの結果 (3)逐次改善法だけを用いて、ランダムな初期状態か
ら開始したスケジューリングの結果操作回数は、ジョブ
またはジョブ群の交換回数である。エリアへの場合を除
き、スケジュール解が得られているが、ジョブ数の増加
に伴って、急激に処理時間が楢大している。
グの結果 (3)逐次改善法だけを用いて、ランダムな初期状態か
ら開始したスケジューリングの結果操作回数は、ジョブ
またはジョブ群の交換回数である。エリアへの場合を除
き、スケジュール解が得られているが、ジョブ数の増加
に伴って、急激に処理時間が楢大している。
(4)本発明により、ヒユーリスティクスを用いる手法
と逐次改善法とを組み合わせて行ったスケジューリング
の結果 このスケジューリングの実験例から明らかなように0本
発明によれば、スケジュール解の生成率が高くなるとと
もに、特にジョブ数が増加した場合に、逐次改善の操作
回数が単独の場合よりもかなり削減されるので、処理時
間も大幅に短縮されることが予想できる。
と逐次改善法とを組み合わせて行ったスケジューリング
の結果 このスケジューリングの実験例から明らかなように0本
発明によれば、スケジュール解の生成率が高くなるとと
もに、特にジョブ数が増加した場合に、逐次改善の操作
回数が単独の場合よりもかなり削減されるので、処理時
間も大幅に短縮されることが予想できる。
以上説明したように1本発明によれば、大規模データを
取り扱うスケジューリング問題についても、高い生成率
でスケジュール解を生成することができるようになり、
またスケジューリングのための計算時間を大幅に短縮す
ることができるようになる。
取り扱うスケジューリング問題についても、高い生成率
でスケジュール解を生成することができるようになり、
またスケジューリングのための計算時間を大幅に短縮す
ることができるようになる。
第1図は本発明の原理説明図。
第2図は本発明の一実施例に係るジョブアロケータの処
理フロー。 第3図は本発明の一実施例に係るジョブモディファイヤ
の処理フロー。 第4図はジョブモディファイヤによる処理の例。 第5図は本発明の詳細な説明するためのスケジューリン
グデータの例。 第6図はジョブおよび機械の記述例。 第7図はジョブアロケータによる強制割り付け説明図。 第8図は本発明の適用例によるスケジューリング結果の
例を示す。 図中、10は問題、11は処理袋!112はジョブアロ
ケータ、13はジョブモディフ1イヤ。 14はスケジュール解出力部、15はスケジュール解を
表す。
理フロー。 第3図は本発明の一実施例に係るジョブモディファイヤ
の処理フロー。 第4図はジョブモディファイヤによる処理の例。 第5図は本発明の詳細な説明するためのスケジューリン
グデータの例。 第6図はジョブおよび機械の記述例。 第7図はジョブアロケータによる強制割り付け説明図。 第8図は本発明の適用例によるスケジューリング結果の
例を示す。 図中、10は問題、11は処理袋!112はジョブアロ
ケータ、13はジョブモディフ1イヤ。 14はスケジュール解出力部、15はスケジュール解を
表す。
Claims (1)
- 【特許請求の範囲】 所定の制約条件を満足するように、ジョブを機械に割り
付けるという枠組みで捉えることのできるスケジューリ
ング問題を、計算機によって処理するスケジューリング
問題解決支援システムであって、 決定的な手順により、逐次的にジョブを機械に割り当て
ていき、そのスケジューリングが成功しなかった場合に
、制約条件を緩和することにより、全ジョブの割り付け
状態を生成する第1の処理手段(12)と、 前記第1の処理手段(12)が生成した全ジョブの割り
付け状態をもとに、任意の機械の間で交換可能な割り付
け済みジョブまたはジョブ群を抽出し、それらの機械間
でジョブまたはジョブ群を交換した状態の評価値を計算
することによって、より制約条件が充足される方向に逐
次的に改善を行い、スケジュール解を生成する第2の処
理手段(13)とを備えたことを特徴とするスケジュー
リング問題解決支援システム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63107330A JPH01277902A (ja) | 1988-04-28 | 1988-04-28 | スケジューリング問題解決支援システム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63107330A JPH01277902A (ja) | 1988-04-28 | 1988-04-28 | スケジューリング問題解決支援システム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH01277902A true JPH01277902A (ja) | 1989-11-08 |
Family
ID=14456319
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63107330A Pending JPH01277902A (ja) | 1988-04-28 | 1988-04-28 | スケジューリング問題解決支援システム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH01277902A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH03233637A (ja) * | 1990-02-09 | 1991-10-17 | Nec Corp | スケジュール作成方式 |
| JPH043227A (ja) * | 1990-04-20 | 1992-01-08 | Toshiba Corp | 割当て装置 |
| JP2003216205A (ja) * | 2002-01-18 | 2003-07-31 | Toshiba Corp | プラント運用制御装置 |
-
1988
- 1988-04-28 JP JP63107330A patent/JPH01277902A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH03233637A (ja) * | 1990-02-09 | 1991-10-17 | Nec Corp | スケジュール作成方式 |
| JPH043227A (ja) * | 1990-04-20 | 1992-01-08 | Toshiba Corp | 割当て装置 |
| JP2003216205A (ja) * | 2002-01-18 | 2003-07-31 | Toshiba Corp | プラント運用制御装置 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Dell'Amico et al. | Exact models for the flying sidekick traveling salesman problem | |
| Hoitomt et al. | A practical approach to job-shop scheduling problems | |
| Carroll | Heuristic sequencing of single and multiple component jobs. | |
| Ulusoy et al. | Simultaneous scheduling of machines and automated guided vehicles | |
| Roh et al. | Due-date based loading and scheduling methods for a flexible manufacturing system with an automatic tool transporter | |
| JP5618857B2 (ja) | 資源運用計画作成装置および資源運用計画作成方法 | |
| Cai et al. | A bi-objective constrained robust gate assignment problem: Formulation, instances and algorithm | |
| Chiang et al. | Knowledge-based system for railway scheduling | |
| Laesanklang et al. | Decomposition techniques with mixed integer programming and heuristics for home healthcare planning | |
| EP0992868B1 (en) | Device and method for calculating required quantity of material | |
| JPH01277902A (ja) | スケジューリング問題解決支援システム | |
| CN116009419A (zh) | 复杂装备制造过程虚拟重构与仿真运行方法及系统 | |
| Kumar et al. | Integrated scheduling of part, tool and automated guided vehicles in a flexible manufacturing system using modified genetic algorithm | |
| Sivarami Reddy et al. | Simultaneous scheduling of machines and tools considering tool transfer times in multimachine FMS using CSA | |
| Baid et al. | An integrated decision support system for FMS: using intelligent simulation | |
| JP2608129B2 (ja) | スケジューリング処理装置 | |
| JPH02226467A (ja) | 動的ジョブ処理を含むスケジューリング問題解決支援システム | |
| Pan et al. | Large-Scale Storage Location Assignment via Hierarchical Reinforcement Learning: A Rank and Assign Approach | |
| Shah et al. | New modeling and performance evaluation of tool sharing control in FMS using colored Petri nets | |
| Pereira | The effect of assignment and sequencing rules on the performance of a flexible manufacturing system | |
| Ono et al. | An heuristic approach to acceptance rules in integrated scheduling systems | |
| Angra | Evaluation of tool selection rules in the flexible manufacturing system | |
| JPH01114979A (ja) | スケジューリング処理方法 | |
| Wang | Improving planning for railroad yard, forestry and distribution | |
| JPH04146055A (ja) | スケジュール作成方法 |