モード付き並列機械における オンラインスケジューリング

2008 年度
卒業論文
モード付き並列機械における
オンラインスケジューリング
指導教員
宮本
裕一郎
助教
上智大学 理工学部 機械工学科 管理工学講座
A0571139
杉本
敦紀
目次
1.はじめに
1.1
1.2
2.基本事項
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・3
研究背景
研究目的
・・・・・・・・・・・・・・・・・・・・・・・3
・・・・・・・・・・・・・・・・・・・・・・・4
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・5
2.1
2.2
2.3
2.4
生産スケジューリング ・・・・・・・・・・・・・・・・・5
モード付きスケジューリング ・・・・・・・・・・・・・・12
リスケジューリング ・・・・・・・・・・・・・・・・・・14
タブーサーチ ・・・・・・・・・・・・・・・・・・・・・16
3.従来研究
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・19
4.提案手法
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・21
4.1
4.2
4.3
題材となるモード付き並列機械モデル ・・・・・・・・・・22
オフライン問題の定式化 ・・・・・・・・・・・・・・・・24
リスケジューリングの方法 ・・・・・・・・・・・・・・・27
5.数値実験
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・30
5.1
5.2
定期的稼働とイベント稼働の比較実験 ・・・・・・・・・・36
リスケジューリングの有効性を示す実験 ・・・・・・・・・40
6.結論
謝辞
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・47
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・48
参考文献
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・49
-2-
1. はじめに
1.1 研究背景
近年,生産の現場では生産管理を入念に行うことに大きな関心を持っている.企業
にとって,無駄なコストを抑えたり,納期遅れを防ぐことは重要であり,これからも
より改善すべき点である.そのためにもより有効なスケジューリングを作ることは必
要不可欠である.
生産スケジューリングの分野には様々な種類のスケジューリングがある.並列機械
スケジューリング,フローショップ・スケジューリング(以下 FSP),ジョブショップ・
スケジューリング(以下 JSP)などがその代表格に挙げられる.実際の工場でもこのス
ケジューリングが基本となって,製造工程が組み立てられている.しかし,消費者の
ニーズが場合によって,増えたり減ったりする変種変量生産が主体となっている現在,
これらのスケジューリングはまだ現実的なスケジューリングとは言い難い.また,ス
ケジューリングを作る際,優先的なジョブの増加や機械の故障が起こった際,今行っ
ているスケジューリングを改めて考え直さなければならない.このリスケジューリン
グを取り入れることによって,よりスムーズなスケジューリングが可能になる.なお,
このセクションでは参考文献[1]をもとに論述している.
-3-
1.2 研究目的
本研究では,オンラインスケジューリング問題に対してリスケジューリングをアプ
ローチとして使用し,より良いリスケジューリングを見つけることを目的とした.
並列機械の中でモード(機械選択をする際の選択肢)を付加させることで実用性を
高くした,モード付き並列機械スケジューリングを題材にする.また,到着するジョ
ブのデータが分からずに,機械故障や優先的に行わなければならないジョブなどが現
実では起こりうる.このように予測できない様々な出来事が生じると,生産のクオリ
ティが低下してしまい,生産に遅れが生じてしまう.この生産遅れを考慮に入れた,
オンラインスケジューリング問題を取り扱う.しかし,このようなオンラインスケジ
ューリング問題での機械選択問題の研究はまだ明らかになっていない.
そこで本研究では,オンラインスケジューリングの方法の中から,リスケジューリ
ングを適用する.リスケジューリングの中で,決まった周期のタイミングでリスケジ
ューリングする定期的リスケジューリングを使用する.また,この問題をとくための
手法として,より迅速に解を見つける,タブーサーチ(TS : Tabu Search)を採用し
た.
本研究の評価方法としてまず,定期的リスケジューリングの有効性を示すため,イ
ベント稼動リスケジューリングと比較実験する.その後,モードを考慮したオンライ
ンスケジューリング問題に定期的リスケジューリングを適用した提案手法とリスケ
ジューリングを行っていない手法を比べ,その優位性を示すことにする.
-4-
2. 基本事項
2.1 生産スケジューリング
2.
2.
1
生産スケジューリングの現在の位置づけ
生産スケジューリングは,生産活動の中で最も具体的な計画の作成を意味している.
通常,製造業は,絶えず変動する市場に柔軟に対応するために,一連のしくみがある.
すなわち,生産活動を長期計画,中期計画,短期計画などに階層化し,上層から下層
に進むにしたがって計画対象期間と生産設備などの物的な計画対象を限定ある.そし
てより確度の高い情報に基づいていっそう具体的な計画が立てられる.つまり,実際
の生産現場では生産に先行して生産準備を行うことができ,生産計画時と生産実行時
の間に生じた情報の変化に順応に対処することができる.この結果,計画をより具体
化することが可能となる.今述べた計画の対象期間に基づく分類から,生産スケジュ
ーリングは短期計画に対応する.
生産活動に関する計画は計画の機能に基づく分類法で区分できる.それは,生産計
画,負荷計画,日程計画,差立てという区分であり,生産スケジューリングはおおよ
そ日程計画に対応する.しかし,生産形態によっては,負荷計画と日程計画を分離で
きない場合もあるので,生産スケジューリングには負荷計画が含まれたり,両者は完
全に分離できるものではない.
これらの生産活動の名称は,生産現場の自動化が今日のように発達していなかった
時代に生まれたものであり,日程計画と統制のための活動である差立ての間には明確
な違いがあった.また,近年の顧客重視指向によって,受注に先立って精度の高い納
期見積もりが要求される場合が増えてきている.近年になって,差立てが人ではなく
システムによって行われるFMSのような自動生産システムが普及することで,内容
としてはスケジューリングと変わらないシミュレーションが実地されるようになり
始めている.しかしながら,このようなシステムでは,日程計画と差立ての区別がで
きなくなり,作業の実地に関する決定や作業の実地段階における計画の修正を意味す
る.差立ても生産スケジューリングに含める見方が一般化してきている.
また,現在の社会の情勢から,企業は顧客満足度の向上が最優先として考えており,
そのため,生産活動では納期厳守が掲げられている.納期の保障をするために,生産
設備や中間製品などさまざまな生産資源の予約が行われる.このように生産管理の中
で,とりわけ外部から閉ざされた活動としての性質が強かった生産スケジューリング
は,いまや顧客が直接関わる生産活動の一部として考えなければならなくなっている.
なおこのセクションでも,参考文献[1]をもとに論述している.
-5-
2.
2.
2
生産活動の中の生産スケジューリングの役割
生産スケジューリングとは,工場で製品を生産するための具体的な計画,つまり,
いつ,どの装置・資源で,どの仕事をするかというスケジュールを決定することを指
す.企業が利益拡大のため,近年では生産活動での利益追求が必然となってきている.
利益追求の上で,より高いレベルでの製品の動きや作業員の管理体系が求められる生
産スケジューリングは,中心的な役割を担うものであり,いかに無駄の無い生産活動
を行うかということは非常に重要視されている.どのような生産スケジュールを選択
するかによって,生産活動の効率は大きく違ってくる.そのためこの選択が不適切で
あると,生産活動における様々な問題を引き起こしてしまい,企業の不利益につなが
っていく.このことから生産活動における生産スケジューリングの役割は重要である.
顧客ニーズ
需要予測
受注処理
経営・製品計画
製品設計
生産設計
生産スケジューリング
生産指示
資材・材料
情報管理
生産システム
図 2.1
生産スケジューリングの位置づけ
-6-
製品
2.
2.
3
生産スケジューリングの分類
生産設備の構成から,生産スケジューリングは 2 種類に分類することができる.以
下に 2 種類の分類を述べる.
単一機械スケジューリング
単一の生産設備がスケジューリングの対象になる場合であり,必然的に加工対象物
の生産順序はその投入順序と等しくなる.つまり,このスケジューリング問題は,加
工対象物の投入順序を決定するというものになる.
機械
図 2.2
単一機械スケジューリング
並列機械スケジューリング
複数の生産設備を用いて同種の加工を行う場合にこのスケジューリング問題が生
じる.加工対象はそれらの生産設備のいずれかを用いて処理されるが,処理可能な生
産設備が一部に限られていてもよいことがある.したがって,このスケジューリング
問題は,加工対象物がどの生産設備で処理され,それぞれの生産設備での生産順序を
どうするかを決定する.
機械1
機械2
機械3
図 2.3
並列機械スケジューリング
-7-
また,以上で述べた生産設備の構成をより複雑に組合せた問題として,2 つの種類
のモデルがある.以下に 2 種類のモデルを述べる.
フローショップ・スケジューリング
ある生産システムで,生産が予定されている製品やジョブの加工順序に従って生産
設備を配列し,それを用いて加工対象物を生産する場合の生産物的システムの構成を
フローショップ・スケジューリングという.このスケジューリング問題の典型的な構
成として,全ての加工対象物が同一の加工順序に従って生産できる場合であるが,加
工対象物によっては使用しない生産設備がある場合もある.つまり,フローショッ
プ・スケジューリングとは,このような構成をする各生産設備での加工時間を考慮し
て,加工対象物の投入順序を決定する問題のことを意味する.
機械1
図 2.4
機械2
機械3
フローショップ・スケジューリング
ジョブショップ・スケジューリング
上に述べた FSP 問題の中で,仮に加工対象物によって加工順序が異なる場合,こ
のような構成の生産設備の配列は用いられない.そのため,加工対象物はそれぞれの
加工順序に従って生産設備へ搬送されて,加工が行われる.このような構成をジョブ
ショップ・スケジューリングと呼ぶ.この場合,生産設備ごとに生産順序を決定する
必要がある.また同一の機能を有する生産設備が一箇所に複数台集めて配置されてお
り,仕掛品が加工順序に従って,異なった機械群を訪れてはその中の1台の機械を用
いて加工が行われる場合,それぞれの機械群はワークセンタと呼ばれる.この場合は,
それぞれの機械が並列機械に置き換えた構成になっていると考えればよい.
機械1
機械3
機械2
機械4
図 2.5
ジョブショップ・スケジューリング
-8-
2.
2.
4
生産スケジューリングの方法
生産スケジューリングの方法を体系的に述べることは容易でない.なぜなら,スケ
ジューリング問題自体が分類法によって整理しきれないからである.また,近年では
方法も多様化していつことや問題とその方法の間に密接な関係が存在していること
も理由に挙げられる.そのため,ここでは,生産スケジューリングの方法をその問題
解決の姿勢に基づいて以下の3つに分類する[1].
OR 的アプローチ
OR 的アプローチは生産スケジューリング研究の発端となる考え方であり,その発
展を支えてきた.一般的な特徴はスケジューリング問題を目的関数と制約式,あるい
は評価関数と記述的な制約を用いて表現し,その最適化を指向するところにある.本
研究でもこの研究法を用いている.
AI 的アプローチ
AI 的アプローチとは人間がもっている特定の問題領域に関する知識をシステムに
与え,それを用いてスケジュールを自動的あるいは半自動的に作成する方法である.
人間には本来最適化指向はなく,目標達成指向に基づいて行動するために,数学的枠
組みの中で最適化を行う OR 的アプローチとは対照的な特徴を持つ.
マンマシンシステム的アプローチ
マンマシンシステム的アプローチとは,現実のシステム化の過程で生まれたもので
すべてを形式化する必要はなく,人間の所有する知識・情報の活用,人間とシステム
の親和性,人間も含むシステムの全体的合理性が重視されるものである.ちなみに,
OR 的アプローチや AI 的アプローチはスケジューリングに関する情報をすべて形式
化する必要がある.
本研究では,OR 的アプローチに注目を集めた.OR 的アプローチとは,主に5つ
の解法に振り分けることができる.特定の計算問題に依存せず,あらゆる問題に対応
できるメタヒューリスティクスや与えられた制約条件のもとで,ある一つの目的関数
を最大あるいは最小にするという最適化手法としての数理計画法がある.また,シス
テムの挙動を理解するため,現実のシステムのモデルを作成しそのモデルを実験して
みる過程であるシミュレーション,科学研究における非形式的で動的な過程にかかわ
る発見的方法,非構成的変換法則を実装するために,プログラムの自動変換の方法で
ある構成的アルゴリズムなどがある.以上で述べた OR 的アプローチと他のアプロー
チの解法を表 2.1 でまとめた.
-9-
表 2.1
スケジューリング手法の分類
メタヒューリスティクス
数理計画法
OR 的アプローチ
発見的方法
シミュレーション
構成的アルゴリズム
ルールベースシステム
AI 的アプローチ
制約誘導推論
事例ベース推論
階層型・階層分散型
マンマシンシステム的アプローチ
対話型
本研究ではメタヒューリスティクスを用いるので,以下に詳しく説明する.
メタヒューリスティクスとは,最適解は保障できないが,少ない計算時間で近似解
を求めることである.極めて実用性が高く,様々な問題に利用されている.メタヒュ
ーリスティクスの手法の特徴として,手法が適応される問題とは独立の,あらかじめ
用意された解法の枠組みを用いて,基本となるアルゴリズムを構成する.個々の問題
が持っている性質はアルゴリズムの細部において反映させ,これによって近似解を求
めるところにある.数理計画法が網羅的な解の探索を行うのに対し,これらは非網羅
的な解の探索,あるいは確率的な解の探索を行う.最大のポイントとして,数理計画
法ほどの計算時間を使わず,十分良好な解を得ることができることが挙げられる.以
下に3つのメタヒューリスティクスの手法を紹介する.
タブーサーチ
以下に述べる遺伝的アルゴリズム(GA : Genetic Algorithm)やシミュレーテッ
ド・アニーリングが解を確率的に探索するのに対し,TS は確定的な探索方法として
使われることが多い.また特徴として,今までに探索した解を再び探索しないように,
探索を禁じる解のリストであるタブーリストをの過程中保有している.本研究ではこ
の TS を用いているため,後にさらに詳しいことを説明するセクションを用意した[2].
遺伝的アルゴリズム
GA とは,生物の進化過程をシミュレートして,近似的な最適化をする方法であり,
複数個の解を並列的に探索して解集合全体について評価尺度を改良する.最も単純な
- 10 -
考え方として,最適化問題の決定変数ベクトル x をいくつかの記号の列で表して,こ
れを規定個の遺伝子からなる染色体とみなす.またいくつかの個体からなる集合に突
然変異が起き,次の世代に変異が起きる.このような世代の更新が繰り返され,更新
のたびによりよい個体(より最適解に近い解)が増えるようにしていき,やがて最適
化を得られるという方法である[3].
シミュレーテッド・アニーリング
シミュレーテッド・アニーリングとは,物質の温度を徐々に冷却して,低エネルギ
ーの状態に落ち着かせる焼きなまし過程をシミュレートした組合せ最適化問題の近
似解法である.この解法の基本的な考え方は,解のランダム検索であり,解をランダ
ムで繰り返し検索した後,最終的に最適解に近い解を効率よく導くものである.解法
の特徴としては先ほど触れたように,温度と呼ばれるパラメータにあり,最初に大き
な値が設定され,徐々に引き下げられる.温度は新しく作られた解がもとの解より悪
い評価値をもつ場合にその解に置き換えられるかどうかを決定するのに利用される.
温度が高い場合は,例え解の値が悪かったとしても置き換えるよう確率を大きくし,
温度が低いときはその解に置き換える確率を小さくするといった検索が温度を用い
ることで行える.
温度は最初高く設定され,徐々に下げられるため,検索過程の初期の段階では解の
評価値は激しく振動し,評価値が減少するに従って,その振動幅も小さくなり,最終
的には収束したかのような経路をたどる.またシミュレーテッド・アニーリングはエ
ネルギーの減少過程をシミュレートするため,通常最小化問題として扱われる.
- 11 -
2.2 モード付きスケジューリング
モードの概念
モードとは,実行可能な選択肢の中で,各資源がその場その場の状況に応じて,適
切な選択を行う際に,選択肢として与えるもの.例として缶ジュースを買う場合に,
自動販売機で買う選択肢とコンビニまで買いに行く選択肢があるとする.自動販売機
では距離は近いが値段は一般価格で,コンビニでは距離は遠いが値段は安く売られて
いる.普通であれば自動販売機を選ぶかもしれないが,今の状況として,手持ちに一
般価格を支払える価格がない場合,コンビニを選ばなければならない.
本研究の場合,各ジョブがその場の状況に応じて,適切な機械選択を行う際に,与
えられるオペレーション選択をモードと考えている.各ジョブ毎に,どの選択肢を選
ぶことでより効率的かという問題を考慮して,研究を進める.
変種変量生産とモード付きスケジューリング
変種変量生産が主に目立ってきた近年では,それに応じて,スケジューリングの発
達も考えなければならなくなってきた.その中でも,多品種多量生産の場合,多品種
で段取り替えの回数も増大し,ジョブの到着率も多くなるときに,ある機械は稼動し
すぎる状態で,他の機械は暇を持て余すような問題が生じてくる.つまり,システム
の稼働率が低下してしまう.
そこで,各ジョブに一つのルートだけでなく,違う機械選択も可能ないくつかの別
のルートを選ぶようにすれば,どのようなときも高い生産性を保ちながら,対応する
ことができる.そこで適切な機械選択,つまりモードを考慮したスケジューリング問
題を考えることは近年では特に盛んになっている.
例えば, 3 機械 2 ジョブ 3 工程の一般的な JSP を考える.それぞれのジョブをジ
ョブ 1,ジョブ 2 とし,2 つのジョブが 1→2→3 の順番で処理されるとすると,メイ
クスパン(総滞留時間)は 17 となる.ここで,同じモデルのモード付き JSP では,ジ
ョブ 2 が 2 つの機械処理ルート,モード 1(1→2→3)or モード 2(2→1→3)を選択でき,
その場に応じてどちらか選ぶことができる.その結果,ジョブ 2 はモード 2 を選択
し,メイクスパンは 14 と前者より良い値を示した.以下にその様子を図 2.6 に示す.
{一般のジョブショップモデル(ジョブ2が 1→2→3 しか選べない場合)}
- 12 -
機械1
ジョブ1
ジョブ2
機械2
ジョブ1
機械3
ジョブ2
ジョブ1
ジョブ2
17
{モード付きモデル(ジョブ2が 1→2→3 と 2→1→3 のどちらかを選べる場合)}
機械1
機械2
ジョブ1
ジョブ2
ジョブ2
ジョブ1
機械3
ジョブ1 ジョブ2
14
図 2.6
一般モデルとモード付きモデル
2.3 リスケジューリング
- 13 -
オンラインスケジューリング
製造現場において,ジョブの処理を行うとき,無差別で予期しない出来事が起きる.
例としては,到着ジョブの待ち行列,機械故障,急ぎの注文,材料不足などが考えら
れる.これらの出来事は工場の生産性をひどく減少させてしまう.そこで,生産効率
の悪化を解消するような,例えば納期遅れを和らげたり,現存のスケジューリングを
改正したり,リスケジューリングするといった作業をオンラインスケジューリングと
呼ぶ.このオンラインスケジューリングを構築する最も重要な要因は,工場の不確か
な出来事を管理することである[4].
リスケジューリングの種類
本研究では,オンラインスケジューリングの中でもスケジュール全体を再生するリ
スケジューリングを適用する.リスケジューリングを行うことによって,生産効率の
減少を小さくすることができる.このリスケジューリングは主に2つの種類に分類す
ることができる.それを以下に示す.
・ 定期的リスケジューリング(periodic rescheduling)
・ イベント稼働リスケジューリング(event-driven rescheduling)
前者のリスケジューリングは,リスケジューリングをする周期を固定して行う方法
である.例え不確かな出来事が起きなくても,必ず周期になるとリスケジューリング
を行う.後者のリスケジューリングは,前者とは違って,周期を固定せず,不確かな
出来事が起こり,生産効率が悪化し,遅れが蓄積していく.その結果,ある決まった
値に生産効率や生産遅れが到達した場合に,リスケジューリングを行い,生産性の減
少を小さくするものである.本研究においては前者を適用する.その理由として前者
は,後者より実際に一般的に適用されているリスケジューリングであるためである.
2.4 タブーサーチ
- 14 -
TS は,1989 年にフレッド・グローバーによって考案された手法である.この手法
は,同じメタヒューリスティクスの GA や焼きなまし法が特定の自然現象を模倣した
に対し,人工知能の概念に基づいた局所探索法として一般化されている[2].
この手法の概要として,近傍全体の中で,暫定解以外の最良の解を次の解として選
ぶ.このルールにより,現在の解が局所最適解であっても他の解への移動が強制され
る.
しかし,現在の解が局所最適解である場合,他の解に移った後,同様ので最良の解
を求めると,再びもとの解に戻る可能性が高い.一般に探索がいくつかの解を経由し
て,もとに戻ることをサイクリング(cycling)と呼ぶ.TS ではこのサイクリングを避
けるために,タブーリスト(tabu list)と呼ばれる解集合を用意し,これに含まれる解
への移動を禁止する.この操作の利用により,解は近傍全体の最良の解へ移動するこ
とになる.
TS の長所としては,
・
・
・
・
最適解を見つけることができる.
GA などの他のメタヒューリスティクスに比べて,最適解の探索が早い.
確定的探索手法である.
探索解の特徴を長期間記憶することができる.
などが挙げられる.
図 2.7 は TS の基本的な処理について述べる.まず,ランダムに初期解を決定し,
タブーリストを初期化する.近傍の中から現在の解より,最も良い値を選ぶ.しかし
選ぶ際,タブーリストに記載されていないものを選ばなければならない.選んだ解を
タブーリストに記載し,終了条件が満たされるまで,処理を続ける.
- 15 -
Step1: 初期解をランダムに決定
Step2: タブーリストを初期化する
Step3: 終了条件が満たすまで以
下の操作を繰り返し
終了条件は満たされれば
暫定解を出力して探索を
終了する
Step4: タブーリストに記載されて
いない近傍の中で,最良の
解を暫定解として更新する
Step5: タブーリストに最良解の値
を記憶する.
図 2.7
TS の基本処理
Step1: 初期解をランダムに決定
近傍の範囲内から初期解をランダムに決定する.この近傍の範囲決定は,次のよう
な要因を考慮する.近傍を探索する数を多くした場合,非常に解の改善が早くなる一
方,局所解に陥りやすくなる.逆に探索する数を小さくした場合,局所解には陥りに
くくなるが解の精度は大きく劣る可能性がある.ただし探索の数を大きくしすぎると,
少数の状態が常に採択され,その状態への遷移が全てタブーリストに記載されている
場合は探索が停滞してしまうので,常に別状態へ遷移する可能性は残しておくような
範囲で設定しなければならない.その近傍範囲として,実行可能な選択肢があったと
すると,その選択肢のちょうど半分を考えるのが妥当である.
- 16 -
Step2: タブーリストを初期化する
タブーリストに何も記載されていない状態にする.このときに,現在状態と暫定解
に初期解を記憶させておく.
Step3: 繰り返し
次の終了条件を満たすまで,以下の Step4 から Step5 の操作を繰り返す.
・ あらかじめ定められた反復回数で終了する.
・ あらかじめ定められた反復回数の間に暫定解の更新がなければ終了する.
本研究の場合,より迅速に解を見つけることを優先したいため,前者のあらかじめ
定められた反復回数で終了する条件を適用する.
Step4: TS の移動戦略
タブーリストに記載されていない近傍範囲内の中から,評価値が最良の解を見つけ,
もし暫定解より良い値ならば,暫定解に更新する.本研究で使用する評価値として,
後のセクションで述べるが,目的関数である納期遅れを最小にする値を採用する.
また,本研究の TS では,ジョブの順番とどのモードを選択するかという2つのこ
とを考慮に入れた TS である.
Step5: タブーリストへの更新
暫定解が更新され,終了条件が満たされてない場合は,タブーリストに記憶する.
その際に,最近探索した解を直接記憶するのが一つの方法であるが,この場合,デー
タ構造をとくに工夫しなければ,生成した解がタブーリストに含まれているかどうか
の確認に時間を要する.また,サイクリングを防ぐのに十分な効果が得られない場合
もある.そこで,解をそのまま記憶するのではなく,最近の近傍において移動前と後
で値の変わった変数や,変数とその値のペアなどを記憶する場合が通常である.また,
・ タブーリスト内の変数の値を変更することを禁止する
・ タブーリスト内の変数の値が変更前の値に戻ることを禁止する
などのルールが一般的に用いられる.このようなルールに利用される移動の特徴を属
性(attribute)と呼ぶ.
- 17 -
タブーリストに移動前と後の変数を記憶する際に,このような禁止規則を探索の間
中,保持し続けると,移動できる解がいずれなくなってしまう.そこでそれぞれの解
にタブー期間(tabu length)と呼ばれるパラメータを設定する.タブーリストに記憶し
てから,この期間に表示されている回数反復すると,その変数をタブーリストから除
外する.この変数ごとのタブー期間はランダムに与えることとし,その期間は適切な
反復回数の値として,一緒に記憶させる.
- 18 -
3. 従来研究
過去におけるスケジューリング問題の中で,オンラインスケジューリング問題に対
して,リスケジューリングを適用し,高い生産性を示した研究がある.また機械選択
を行う JSP において,独自の最適化手法で論述している研究をいくつか挙げた.以
上を次の表.1 にまとめた.以下にそれぞれの関連研究について比較してゆく.
表 3.1 従来研究との比較
文献
EDR[4]
NAE[6]
MIP[7]
FYCX[8]
本研究
発表年度
2007
1990
2000
2005
2009
問題の種類
単一機械
JSP
JSP
JSP
JSP
○
○
○
○
×
×
○
○
イベント
稼働
×
×
×
定期的
FIFO
NAE
MIP
GA
TS
機械選択の
有無
機械順序の
制約
リスケジューリン
グ手法
最適化の
手法
JSP のリアクティブスケジューリング(reactive scheduling)を題材として,TS を
解法としている[9]では,機械故障によるスケジュールの遅れを取り上げている.定
- 19 -
期的リスケジューリングでのスケジュール改正を行っているが,まだその手法は確立
されていない状態であった.Suwa らの[5]では,JSP で不確かな出来事である機械
故障に対して,最大遅れがある値に達したときに,リスケジューリングするイベント
稼働リスケジューリングを提案している論文である.また[10]のように複雑な工場で
のリアクティブスケジューリングの提案している論文もある.本研究の比較論文とし
て選んだ[4]は,問題の種類こそ単一機械ではあるが,イベント稼働リスケジューリ
ングと定期的リスケジューリングをそれぞれ比較し,優位性を示している研究である.
機械選択の研究として,1990 年より前から FSP や JSP を,独自の理論を使って
提案したものがあった.以前から様々な問題の種類で研究されてきたが,いずれもそ
の詳細な設定や問題の規模は小さい.
[6]の論文では,自らの概念から存在するヒューリスティクスを改善して,発達さ
せた特殊な手法で小規模な JSP を取り上げ,最適解を得ようとしていた.また,1997
年の[11]では,FSP を使った 2 機械の機械選択を,分枝限定法を使って行う問題とし
て細部まで研究されている.
近年では続々とメタヒューリスティクスを使った論文が発表されてきた.[7]では,
[6]で提案された技法と比較して,独自の MIP(Mixed Integer Programming)として
定式化していた.問題の具体例として,3 工程 4 ジョブ6機械の JSP を取り上げ,
そのパフォーマンスの良さを提案している.またさらにこれらの論文を発達させ,納
期遅れを評価値として,機械選択を行う際に機械順序の制約を取り入れ,より現実的
に取り上げた[8]もある.日本でも[12]のような動的なジョブの機械選択をする際のル
ール決定などがあり,近年でもこのテーマの発達は進んでいる.
- 20 -
4. 提案手法
本研究では,スケジューリングモデルとしてモード付き並列機械スケジューリング
を扱う.また現実では,到着するジョブのデータが分からずに,リアルタイムで様々
なことが起こりうる.そのため生産工程に遅れが出てしまい,生産性は低くなってし
まう.このように,ジョブの全てのデータがわかっていない状態で不慮の事故に備え
る,オンラインスケジューリング問題を取り扱う.
提案手法として,オンラインスケジューリング問題の解法として,定期的リスケジ
ューリングを適用する.このリスケジューリングは,決まった周期のタイミングでス
ケジュールを再構築するため,遅れに関わらずリスケジューリングを行う.また,ス
ケジューリングをとくための手法として,より迅速に解を見つける,TS を採用した.
モード付き並列機械におけるオンラインスケジューリング問題に,定期的リスケジュ
ーリングを適用した本研究の提案手法とリスケジューリングを行っていない手法を
比べ,その優位性を示すことにする.
- 21 -
4.1 題材となるモード付き並列機械モデル
工程 1
工程 2
・・・
工程 L
機械
・・
完成
・
・
・
・
・
図 4.1
モード付き並列機械スケジューリングのモデル
本研究では,工程数 L,ジョブの種類 N,機械の種類を M とした,モード付き並
列機械スケジューリングモデルを考える.今回のモデルでは,各ジョブがそれぞれの
工程で,K 種類の処理可能な機械があり,その場の状況に応じて,それぞれ機械ルー
ト選択ができるモデルを考えた.そして,各機械ルートの選択をここでモードと表す
こととする.つまり,図 3.1 の上にあるようなモデルがジョブごとにその下にも N
種類あるということである.各ジョブで使用する機械それぞれが,N 個のモデル内の
機械と同じ機械で,それぞれがリンクしているために同じ時間内に,同じ機械で処理
することはできない.なお,ジョブとは生産資源や仕掛品であるものとする.それぞ
れのジョブが各機械によって,処理時間が異なる.各工程で処理が行われ,最後の工
程で加工が終了した時刻をジョブの完成時刻とする.
各ジョブに決められた納期を設定し,納期遅れの総和を最小化することを目的とす
る.
モード付き並列機械スケジューリング問題の具体例として,工程数 2,ジョブの種
類 1,機械の種類を 4 とした小規模問題のモデルを考える.各ジョブがそれぞれの工
程で2種類の処理可能な機械のどちらかをその場の状況から選択でき,必ず機械 1,
2 を処理した後で,機械 3,4 の処理を行うものとする.目的関数を総滞留時間最小
- 22 -
として,その最適解を求める.なお,ジョブ数は 5 とした.ジョブは1秒間隔で着く
ものとし,着いた順番にジョブ 1,ジョブ 2,ジョブ 3,ジョブ 4,ジョブ 5 とした.
また解法として,着いた順番に処理される FIFO(First in First out)を使用する.す
るとそれぞれがその場の状況で適切な機械選択を行い,目的関数値は 14 を示した.
以下に各機械の処理時間,モデル,ガントチャートを述べる.
表 4.1
各機械の処理時間
各機械の処理時間
機械 1
機械 2
機械 3
機械 4
2
4
5
3
ジョブ
図 4.2
機械1
機械2
O11
工程 1
工程 2
機械1
機械3
機械2
機械4
モード付き並列機械スケジューリング問題の具体例
O31
O21
O51
O41
機械3
機械4
O22
O12
1 2 3 4
O32
5 6 7 8
O52
O42
9 10 11
12 13 14 15 16 17 18 19 20
14
図 4.3
具体例におけるガントチャート
- 23 -
4.2 オフライン問題の定式化
本研究ではオンラインスケジューリング問題を扱っているため,ここではオフライ
ン問題での定式化を行う.オフラインスケジューリング問題における制約条件ならび
に目的関数を以下に定式化する.
前提条件は以下の通りである.
・ 各機械は同一時間内に 1 つのジョブしか加工できない.
・ 段取り時間は順序依存とする.
・ 1つのジョブの1工程での加工は1回とする.
・ 機械は故障しないものとする.
・ ジョブは選ばれたモードのルートに沿って,加工される.
ここでの決定変数は同じ機械で処理される作業の相互間の順序であり,これらが決ま
ると開始時刻は一意に決定される.[6],[7]では目的関数を滞留時間で扱っていたが,
本研究では,目的関数を納期遅れ最小とすることで,現実的かつ顧客満足度をより考
えた問題として扱うことにする.
- 24 -
Minimize
f =
N
∑
i =1
max( c i − d i ) ...( 1 )
s .t c ijk − c ijk − 1 ≥ p ijk − 1 ...( 2 ) b ijk ≥ c ijk − 1 ...( 3 )
c ijk = b ijk + p ijk ...( 4 )
c ijk , b ijk ≥ 0 ...( 5 )
x ijk ∈ { 0 ,1} ...( 6 )
ただし,
i :ジョブの番号( i =1,2,3,.... N )
j :工程番号( j =1,2,3,.... J )
k :機械番号( j =1,2,3,....6)
Cijk :工程 j におけるジョブ i の機械 k での完了時間
Ci :ジョブ i の完成時刻
di :ジョブ i の納期
bijk :工程 j におけるジョブ i の機械 k での開始時刻
pijk :工程 j におけるジョブ i の機械 k での処理時間
xijkt :決定変数;工程 j におけるジョブ i の機械 k で時刻 t に加工中のとき 1,
そうでないとき 0
- 25 -
目的関数は納期遅れ最小(式(1))とした.ただし,式(2)は仕事内の作業遵守を,(3)
は前工程での加工が終わらなければ次工程に移れないことを,(4)では加工時間によ
る制約を表した.
本研究では,モードをそれぞれ選ぶことで各ジョブの処理機械ルートが変わるため,
それぞれの変数には,どの機械で処理されたかも考えなければならない.
また,リスケジューリングすることによって加工時間や処理時間に影響がでるが,
それは後の実験で詳細を述べる.
- 26 -
4.3 リスケジューリングの方法
解法には TS を用いるが,TS の具体的な値は各実験で詳細に述べることとする.
ここでは,オンラインスケジューリング問題の解法として,リスケジューリングの方
法について説明する.リスケジューリングの中から,決まった周期のタイミングでリ
スケジューリングする定期的リスケジューリングを使用する.これは定期的にスケジ
ュールを再構築することで,遅れの大きさに左右されずに常に遅れを最小限に食い止
めることができるのではないかと考えたからである.このリスケジューリング手法に
関しては,[4]のリスケジューリングについての論文を参考にした.
4.
3.
1
リスケジューリング周期
リスケジューリングを行う際に欠かせないのは周期である.本研究では,ジョブの
待ち行列で関連してリスケジューリングを行っている.ジョブの待ち行列が徐々に増
えると,それだけ納期遅れが増大してしまう.[4]で述べられているイベント移動リ
スケジューリングでは,を行うタイミングとしての周期は,ジョブの待ち行列のサイ
ズに依存しており,あるサイズに到達するとリスケジューリングを行い,遅れを減少
させている.
一方定期的リスケジューリングは,決まった値に周期を設定し,待ち行列のサイズ
に依存してなく,小さくても大きくてもリスケジューリングを行う.しかし,この周
期は段取り時間や処理時間に大きく関連しており,適切な周期でないと最適な値を示
すことができない.
ここでは,リスケジューリングすることで得られる段取り時間や処理時間を表す式
を導くことにする.
- 27 -
4.
3.
2
スケジュール実行時間の決定
本研究ではジョブには到着率があり,その到着率に従って,ジョブの到着順番が決
まる.また到着率は各変数にも影響している.
まず各ジョブの到着時間間隔の中で,リスケジューリング周期 δ に到着する確率
は,
αi = 1 − exp(−θiδ )
( i =1,2,3,….
N)
に従っている.ここで θi は,ジョブ i タイプの到着率とする.
各到着確率に,段取りを1回行うということなので,本研究では段取りは順序独立
とするので,段取り時間を S とすると各ジョブのスケジュール実行時間での段取り
は,
φi = αi S
と表すことができる.
リスケジューリングしたときに到着する各ジョブの数は,
ε i = λiδ
とする.ここで λi は,ジョブ i タイプのサイズを考慮した,総到着率( = θi
は各ジョブの大きさ)とする.スケジュール実行時間での処理時間は,
νi =
εi
μj
(
- 28 -
j =1,2,3,…. J )
⋅ π i )( π i
と表すことができる.ここで μ j は,各機械
j における機械処理能力を表している.
よって,トータルでのスケジュール実行時間は以下のようになる.
ωi = φi +ν i = (1 − exp(−θiδ )) ⋅ S +
λδi
μj
以下にスケジュール実行時間とリスケジューリング周期の関係を図で示す.
ジョブの開始時刻
ジョブの完了時刻
時間
ω
暇
δ
図 4.4
スケジュール実行時間とリスケジューリング周期との関係
図 3.1 を見ても明らかなように,到着率が上がり,リスケジューリング周期が一定
に保ち続けた場合, αi は増大する.またそれによって, φi も増えることになる.よ
って, φi
= δ となる臨界点が存在する.しかし,本研究の場合,各機械には常に暇
な時間はあるものとし,この臨界点のケースを考えないものとする.
- 29 -
5. 数値実験
予備実験
定期的リスケジューリングとイベント稼働リスケジューリングの比較実験や定期
的リスケジューリングを考慮したオンラインスケジューリング問題に取り組む前に,
TS の優位性を示すための予備実験を行った.
対象とする問題の具体例として,3工程,4ジョブ,6 機械のモード付き並列機械
スケジューリング問題を考える.この問題を比較対象とする理由は,従来研究の[6],
[7],[8]に論述されているサンプルであり,その方法と比較し,効果的であることを
証明しやすいためである.
表 5.1 各ジョブが選択できる機械と各機械における加工時間
機械選択
Job 1
Job 2
Job 3
Job 4
1
2
3
4
5
6
O11
2
3
4
-
-
-
O12
-
3
-
2
4
-
O13
1
4
5
-
-
-
O21
3
-
5
-
2
-
O22
4
3
-
-
6
-
O23
-
-
4
-
7
11
O31
5
6
-
-
-
-
O32
-
4
-
3
5
-
O33
-
-
13
-
9
12
O41
9
-
7
9
-
-
O42
-
6
-
4
-
5
O43
1
-
3
-
-
3
- 30 -
ここで,本研究の手法である TS の具体的な値を設定する.オンラインスケジューリ
ング問題に対しての TS の基本設定を述べるため,改めて図 2.7 を図示した.
Step1: 初期解をランダムに決定
Step2: タブーリストを初期化する
Step3: 終了条件が満たすまで以
下のを繰り返し
終了条件は満たされれば
暫定解を出力して探索を
終了する
Step4: タブーリストに記載されて
いない近傍の中で,最良の
解を暫定解として更新する
Step5: タブーリストに最良解の値
を記憶する.
図 5.1
TS の基本処理
・今回はジョブ数を 1 とした小規模問題での比較であるので,初期解はすべてのジョ
ブの中からランダムで選べることとする
・本研究で,近傍の中で移動するための基準となる評価値は納期遅れ最少とした
・また,最良解をタブーリストに記憶する際,その詳細データを記憶する期間である
タブー期間は,本実験では 10~20 回の反復回数をランダムに割り当てるものとする.
割り当てられた値が過ぎたら,リストから除外する.また本研究においてタブーリス
トは,現在のジョブと近傍の中で評価値が最良の解に移動した後のジョブ,そして評
価値を記載するものとする
・終了条件として,合計で5回反復を行ったら,終了する
- 31 -
・また,目的関数をメイクスパン最小とした
以上のように数値を決定して,実験を行った.
予備実験の数値実験結果
数値実験結果として,以下に表とガントチャートを示す.
表 5.2 は各ジョブのオペレーション Oxy ( x ,
y は 1~4 までの値)がどの機械選択を
したか,その結果と各手法における総滞留時間の値を記したものである.MIP,GA,
TS では最適解である 17 を示した.どの機械がどの時間で処理を行っているかわか
るように図 5.2~5 にガントチャートを示し,各機械の稼働具合を比較した.
表 5.2 各手法のモード選択の結果と総滞留時間の値
比較対象の手法
Job 1
Job 2
Job 3
Job 4
NAE
MIP
GA
TS
O11
1
2
2
2
O12
4
4
4
4
O13
1
1
1
1
O21
5
5
5
5
O22
1
2
2
2
O23
3
3
3
3
O31
2
1
1
1
O32
4
4
4
4
O33
5
5
5
5
O41
3
3
3
3
O42
6
4
6
6
O43
1
1
1
1
総滞留時間
18
17
17
17
- 32 -
機械1
O11
O22
機械2
O43
O31
機械3
O41
機械4
O12
機械5
O13
O23
O32
O21
O33
機械6
O42
1 2 3 4
5 6 7 8
9 10 11 12 13 14 15 16 17 18 19 20
図 5.2
機械1
機械2
O31
機械5
O43
O22
O41
機械4
NAE
O13
O11
機械3
18
O23
O12
O32
O42
O21
O33
機械6
17
1 2 3 4
5 6 7 8
9 10 11 12 13 14 15 16 17 18 19 20
図 5.3
- 33 -
MIP
機械1
機械2
O31
O11
機械3
O43
O22
O41
機械4
機械5
O13
O23
O12
O32
O21
O33
機械6
17
O42
1 2 3 4
5 6 7 8
9 10 11 12 13 14 15 16 17 18 19 20
図 5.4
機械1
機械2
O31
O11
機械3
O43
O22
O41
機械4
機械5
O13
GA
O23
O12
O32
O21
O33
機械6
O42
1 2 3 4
5 6 7 8
図 5.5
17
9 10 11 12 13 14 15 16 17 18 19 20
本研究の TS
- 34 -
予備実験の考察
TS の実験では比較対象とする手法として,NAE,MIP,GA,TS の4種類を取り
上げた.すると,NAE の最適解は 18,その他の手法では最適解は 17 という値を得る
ことができた.17 という最適解を得た MIP,GA,TS だが,その中でも GA と TS
はよりよい結果を得ることができたと考察できる.なぜなら,実験結果のそれぞれの
ガントチャートを見ると,MIP は機械 6 の稼働がない状態である.それと比較する
と,GA と TS は機械 6 が稼動するように振り分けている.ある機械を暇な状態とし
て,作業を行うのは生産性に欠けるし,もし使わないのであれば,暇な機械を維持す
る費用も削減できる.つまり,機械はなるべく均等に振り分け,それぞれの機械で高
い生産性を生みつつ,最適解を得る手法が良いのである.つまり, TS の有効性を示
せた.
- 35 -
5.1 定期的稼働とイベント稼働の比較実験
5.
1.
1
定期的稼働とイベント稼働の比較実験の概要
本実験では,本研究で提案した,決まった周期で必ずリスケジューリングする,定
期的リスケジューリングの優位性を示す実験である.そこで,生産の遅れの蓄積が,
ある値を超えたときにリスケジューリングする,イベント稼働リスケジューリングの
比較実験を行う.モード付き並列機械におけるオンラインスケジューリングを取り上
げ,それぞれジョブ数を変化させることでどのような結果を示すか考察する.
5.
1.
2
具体的な数値の設定
次に定期的リスケジューリングとイベント稼動リスケジューリングとの比較実験
を行った.対象とする問題の種類は先ほど使用した,3工程,4ジョブ,6 機械のモ
ード付き並列機械スケジューリング問題を考え,値もそのまま使用する.ただし,次
のように問題内容を変更する.
・目的関数は納期遅れ最小とする
・ジョブ数を 20,50,100 とする
・4 種類のジョブが到着する間隔を順に,0.075,0.068,0.091,0.093 とする
・初期解は最初に到着する 4 種類のジョブの中からランダムで選べることとする
・TS の終了条件で,10 回反復を行ったら終了する
目的関数を納期遅れ最小としたので,それぞれに納期を付加させた.以下の表 5.3 に
まとめる.
表 5.3
納期
各ジョブの納期
Job1
Job2
Job3
Job4
25
30
35
25
- 36 -
また,定期的リスケジューリングの周期とイベント稼動リスケジューリングのリスケ
ジューリングするタイミングとなる蓄積した遅れの値は,従来研究の[4]の任意の値
を使用し,周期を 25,遅れの値を 14 とする.
以上の設定から数値実験を行った.
5.
1.
3
数値実験結果
数値実験結果として,以下に表と図を示す.表 5.4 はジョブ数をそれぞれ 20,40,
100 と変化させた上で,それぞれのリスケジューリングの手法で得た目的関数値であ
る.図 5.6 はさらにジョブ数を 10~100 まで広げ,それぞれのジョブ数での納期遅れ
の変化を表している.
表 5.4
ジョブ数に伴う各リスケジューリングの目的関数値
目的関数値
ジョブ数
定期的
イベント稼動
20
67.8
78.2
40
1349.71
1061.79
100
7293.84
8009.11
16000
14000
目的関数値
12000
10000
定期的稼動
8000
イベント稼動
6000
4000
2000
0
0
図 5.6
50
100
ジョブ数
150
各リスケジューリングのジョブ数に伴う目的関数値の比較
- 37 -
また図 5.7 は理想となるリスケジューリングの理想値からの差を示したものであ
る.理想値に近いほど,その状況で安定した値を取ることがわかる.イベント稼働リ
スケジューリングはジョブ数が 60 や 90 のとき,目的関数値は定期的リスケジュー
リングに比べ,とても良い値を示しているが,70 や 100 のときは生産性の遅れの改
善があまり見られなかった.
2500
2000
1500
1000
500
目的関数値
0
-500 0
-1000
-1500
-2000
-2500
定期的稼動
イベント稼動
50
100
150
ジョブ数
図 5.7
各リスケジューリングの理想値からの差
- 38 -
理想値
5.
1.
4
定期的稼働とイベント稼働の比較実験の考察
定期的稼働とイベント稼働の比較実験では,ジョブ数や到着間隔などジョブのデー
タに応じて,比較した各リスケジューリングの有効性が異なっていた.これは,イベ
ント稼動のリスケジューリングするタイミングである値まで,生産工程の遅れが蓄積
されない状態が続いたとする.すると,定期的にリスケジューリングするほうが良い
値を示すのは当然であるからだ.また,周期の間で遅れの蓄積が,ある値を超える場
合が続いたとき,ある値のタイミングでリスケジューリングする方が良いことも当然
である.つまり状況によって,どちらかのリスケジューリングを使い分ける手段が最
善の策である.しかし図 5.6 を見てみるとわかるとおり,2 つの値から平等に書いた
理想値からの差を見てみると,明らかにイベント稼動リスケジューリングの振動が激
しいことがわかる.本研究では,リスケジューリングを 1 回するたびにペナルティを
支払うなどの制約は設けていない.何度も定期的にリスケジューリングした方が遅れ
は減少し,良い値が得られる.よって,安定した値を取り続ける定期的リスケジュー
リングのほうがあらゆる状況で遅れを確実に減少させ,高い生産性を生み出すことが
できる.
- 39 -
5.2 リスケジューリングの有効性を示す実験
5.
2.
1
実験の概要
この実験では,モード付き並列機械におけるオンラインスケジューリングをモデルと
する.定期的リスケジューリングを行った Re1 と行っていない Re2 とを比較するこ
とで,その優位性を示す.各ジョブのデータをより現実的に細かく与え,リスケジュ
ーリング周期との関連性を示した.
5.
2.
2
具体的な数値の設定
対象とする問題の種類は,以下の表の通りである.今回の比較実験も結果がわかり
やすいように従来研究の[8]で使用したモデルであり,以下のような値を取った.表
5.5 は,本実験における問題設定値である.ここでの各値は[8]で任意に決められた値
をそのまま使用している.
表 5.5 リスケジューリング実験の設定値
工程数
3
機械の種類
6
機械台数
各工程3台
ジョブの種類
4
ジョブ数
20,40,80
到着率
0.081,0.0912,0.0955,0.0716
各機械の処理能力
3.2,4.1,2.8,3.5,4.2,3.7
各ジョブのサイズ
10,7,8,16
納期
14,16,32,20
リスケジューリング周期
1~100
ここでは述べてないが,各機械における各ジョブの段取り時間はすべて 1 とする.
また,この実験では機械の順序による制約も組み込んだ.これは各ジョブが機械選
択をする際に,処理順序の中に規制を作る制約である.例えば,1→2→3→4 と 2→1
→3→4 のどちらかの処理順序のモードを選ぶことで処理されるジョブがあったとす
- 40 -
る.いずれも処理する過程で,機械の種類 1,2 は 3,4 の機械よりも先に処理しな
ければならない.このような具体的な制約を付加することで,より実際の工場での適
用をスムーズに可能にする.本研究の実験では以下の表のように設定した.
次の表 5.6 ではそれぞれ機械の処理の順番をモードとして付加させており,色塗りを
している部分が順序制約を適用している値である.
表 5.6 各ジョブの機械選択モードの値と処理順序制約
ジョブ 1
ジョブ 2
ジョブ 3
ジョブ 4
モード 1
2
4
1
モード 2
3
4
1
モード 3
5
6
1
モード 1
5
1
6
モード 2
5
3
4
モード 3
2
1
3
モード 1
1
4
5
モード 2
2
4
5
モード 3
6
5
4
モード 1
3
6
1
モード 2
3
6
4
モード 3
2
6
5
- 41 -
またここで,TS の具体的な値を示す.基本的な設定は予備実験の段階で決定した事
柄をそのまま使用する.
・今回はジョブ数を 20~80 とした実際の工場の規模を考えた問題での比較であるの
で,初期解は最初に到着する 4 種類のジョブの中からランダムで選べることとする.
・また,最良解をタブーリストに記憶する際,その詳細データを記憶する期間である
タブー期間は,本実験では 10~20 回の反復回数をランダムに割り当てるものとして,
割り当てられた値が過ぎたら,リストから除外する.
・終了条件として,合計で 10 回反復を行ったら,終了する.
・また,目的関数を納期遅れ最小とした.
以上のように数値を決定して,実験を行った.
- 42 -
5.
2.
2
数値実験結果
まず,最適なリスケジューリング周期を決めなければならない.そこで,1~100
までの周期の中で最良なリスケジューリング周期を決定する.ジョブ数を 20 に固定
し,総滞留時間,段取り頻度,リスケジューリング頻度を評価値として,評価関数か
ら求める.以下にその式を示す.
C ( Ft , Fs , Fr ) = αFt + β Fs + χFr
この式の α , β , χ はそれぞれ評価尺度である 3 つのを行う際に,発生するコストで
ある.その値はそれぞれ,
α = 0.1 ($ /(time unit ) 2 )
β = 10.0 ($ / set − up )
χ = 1.0 ($ / rescheduli ng )
とする.これは,比較対象とする論文[4]で指定されている値であり,その値を参考
にした.以下にその結果を図で示した.図 5.8 はリスケジューリング周期を変化させ
ることで得た評価関数である.
- 43 -
周期δの最適コストに関するグラフ
45
9
40
8
Cost [$/time]
35
7
30
6
5
25
4
20
C ( Ft , F s , F r ) = α Ft + β F s + χ F r
15
3
10
2
51
0
1
1
11
216
31
41 11 51
61
71
16
81
91
リスケジューリング周期δ[time]
図 5.8
リスケジューリング周期の評価関数
図 5.8 より,最良なリスケジューリング周期は δ =15 で,コストは 22.84 であっ
た.問題の種類やジョブのデータなどで,最適なリスケジューリング周期は違うが,
今回のモデルでは 15 が最適な周期である.次の実験はリスケジューリング周期を 15
として進めることにする.
- 44 -
以上のリスケジューリング周期 15 を使い,数値実験を行った.数値実験結果は,
以下の表やグラフの通りである.表 5.7 は定期的リスケジューリングを行った手法と
行っていない手法のジョブ数における目的関数値の値を記した.図 5.9 では Re1,
Re2 のジョブ数に伴う関係性をわかりやすくするため,グラフで表した.
表 5.7 各ジョブ数と Re1,Re2 の最良目的関数値
目的関数値
ジョブ数
Re1
Re2
20
46.75
117.34
40
1114.77
2883.96
80
6589.81
10151.71
ジョブ数と目的関数値の関係
3000
目的関数値
2500
2000
Re1
Re2
1500
1000
500
0
1 10 2 20 3 30 4 40 5 50 6 60 7 70 8 80 9 9010 100
ジョブ数
図 5.9
ジョブ数に伴う目的関数値
- 45 -
5.
2.
3
リスケジューリングの有効性を示す実験の考察
リスケジューリングを組み込んだ実験では,組み込んでない実験に比べ,良い解を
得られた.本研究には記してないが,ジョブ数を増やしたり,機械台数を増やしたり
などの様々な実験を行った結果も良い値であった.
本研究では,リスケジューリング周期は最適な 15 を使用したが,図 5.8 を見ても
らってもわかる通り,周期 6~20 にかけてはあまりコストに変動はないため,実際に
はこの範囲内で周期を決定すれば,より良い値が求められると考えられる.
また,リスケジューリングは図 5.9 を見てみると,ジョブ数に関係なく,リスケジ
ューリングを行っていないものと比べ,常に差が生じている.これは定期的にリスケ
ジューリングを行うことによって,少ないジョブ数でも,常に遅れを減少させる役割
を担っているからである.
- 46 -
6. 結論
本研究では,JSP の一部として,その場の状況に応じて適切なジョブの処理の仕方
を選択するモード付き並列機械スケジューリング問題を取り上げた.現在では機械選
択を行うスケジューリング問題はあまり市場に出ていないので,さらなる発達が必要
である.また,ジョブの全てのデータがわかっていない状態で不慮の事故に備える,
オンラインスケジューリング問題を扱った.本研究での提案手法として,オンライン
スケジューリング問題において,ある周期が来たら遅れが少なくても必ずスケジュー
ルを再度構築する,定期的リスケジューリングを適用した.
数値実験では,オンラインスケジューリング問題において,定期的リスケジューリ
ングとイベント稼働リスケジューリングを比較実験し,どちらが有効であるかを示し
た.その後モード付き並列機械におけるオンラインスケジューリングに定期的リスケ
ジューリングを適用したものと適用していないものを比較し,その優位性を示す数値
実験を行った.
また,機械の順序制約を提案した.この制約を付加させることで,より実用的なス
ケジューリング問題を扱うことができる.このような製造過程を考えるときに,理論
と現場の融合を目指した本研究は生産性を上げる緻密なシミュレーションを可能に
した.さらに,TS を適用することで,GA や他のヒューリスティクスに比べ,より
迅速に効果的な解を求められた.
今後の課題として,まず,目的関数を在庫コストとの関連も考慮に入れることが挙
げられる.本研究では,入力情報,前提条件ともに納期遅れ最小を考えたが,在庫コ
ストに関する条件には触れていない.しかし,スケジュールを考える際に,納期遅れ
に重きを置いた場合,各ジョブの在庫コスト(人件費や在庫スペース)のばらつきが生
じる.つまり様々な目的関数を考慮して,スケジューリングする必要がある.また段
取り時間を順序依存とすることも課題の 1 つである.本研究では,段取り時間につい
て詳しく触れていないが,段取り時間はジョブの種類や大きさなどから変わってくる.
順序依存を考慮したスケジューリングはより現実的なスケジュールを表している.ま
た本研究では,実験の結果が良いものであると比較するために,比較的小規模な問題
を扱ってきた論文を取り上げた.しかし実際の現場では,大規模問題がほとんどであ
る.大規模問題に発展させ,様々な状況化での理論と現場の融合がこれからは必要で
ある.
- 47 -
謝辞
本研究を進めるにあたり,テーマの選択からバックアップ論文の調達,研究の検討,
論文の作成の細部まで,終始変わらぬ暖かいご指導を賜りました宮本 裕一郎 助教
には深く感謝致します.
また,プレゼンテーションや研究全般に渡り,常に的確なご指導,ご助言を賜りま
した伊呂原 隆 准教授にも深く感謝致します.
さらに,本研究を進めるにあたり,的確なアドバイスをして頂いた管理工学講座の
研究室の学生や院生の方々にも深く感謝の意を表し,結びと致します.
- 48 -
<参考文献>
[1]
黒田 充,村松 健児,「生産スケジューリング」,経営科学のニューフロン
ティア 11,pp.2-35,朝倉書店,2002.
[2]
柳浦 睦憲,茨木 俊秀,「組合せ最適化 –メタ戦略を中心として-」,経営科
学のニューフロンティア 2,pp105-116,朝倉書店,2001.
[3]
電気学会 GA 等組合せ最適化手法応用調査専門委員会,
「遺伝アルゴリズムと
ニューラルネットワーク」,pp1-25,コロナ社,1997.
[4]
Guilherme E.Vieira,Jeffrey W.Herrmann and Edward Lin,“Analytical
models to predict the performance of single-machine system under
periodic and event-driven rescheduling strategies”,International Journal
of Production Research,Vol.38,No.8,pp1899-1915,2000.
[5]
Haruhiko Suwa,Hiroaki Sandoh,“Capability of cumulative delay based
reactive scheduling for Job shop with machine breakdowns”,Computers
& Industrial Engineering,Vol.53,pp63-78, 2007.
[6]
Nasr and E.A.Elsayed,
“Job Shop Scheduling with Alternative Machine”,
International Journal of Production Research,Vol.28,No.9,pp1595-1609,
1990.
[7]
Ilkyeong.Moon,Jieom.Lee,
“Genetic Algorithm Application to the Job Shop
Scheduling Problem with Alternative Routings”,2000.
[8]
Fu-ming Li , Yun-long Zh ,
Chao-wan Yinnd Xiao-yu Song “ Fuzzy
Programming for Multi-objective Fuzzy Job Shop Scheduling with
Alternative Machine through Genetic Algorisms”,Advances in Natural
Computation,Vol.3611,2005.
[9]
Morton.T.E,Pentico.D.W,“Heuristic scheduling systems”,1993.
- 49 -
[10]
Sabuncuoglu.I & Kizililsik.O.B,“Reactive scheduling in a dynamic and
stochastic FMS environment ”,International Journal of Production
Research,Vol.37,pp3913-3925,1999.
[11]
Pan C-H,Chen J-S,“Scheduling alternative operation in two-machine
flow shops”,Journal of the Operational Research Society,Vol.48,
pp533-540,1997.
[12]
Eguchi Tooru,Oba Fuminori,Toyooka Satoru,
“A Machine Selection Rule
for Dynamic Job Shop having alternative Machine with Different
Processing Times ”, Journal of the Japan Society for Precision
Engineering,Vol.72,pp459-464,2006.
- 50 -