1.44k likes | 1.95k Views
ジョブショップスケジューリング問題に対する 遺伝的アルゴリズムの交叉の検討. A Discussion on Crossover of Genetic Algorithm for Job-shop Scheduling Problem. 同志社大学大学院工学研究科知識工学専攻 博士前期課程 2003年度 724番. 森 隆史. はじめに. スケジューリング問題. 交通機関の時刻表の決定 病院の看護士勤務順の決定 工場での生産スケジュールの決定. 最適なスケジュールの生成 は非常に重要. スケジューリング問題の1つ. ジョブショップスケジューリング問題
E N D
ジョブショップスケジューリング問題に対する遺伝的アルゴリズムの交叉の検討ジョブショップスケジューリング問題に対する遺伝的アルゴリズムの交叉の検討 A Discussion on Crossover of Genetic Algorithmfor Job-shop Scheduling Problem 同志社大学大学院工学研究科知識工学専攻 博士前期課程 2003年度 724番 森 隆史
はじめに スケジューリング問題 • 交通機関の時刻表の決定 • 病院の看護士勤務順の決定 • 工場での生産スケジュールの決定 最適なスケジュールの生成は非常に重要 スケジューリング問題の1つ ジョブショップスケジューリング問題 (Job-shop Scheduling Problem : JSP)
ジョブショップスケジューリング問題(JSP) 一定数の仕事を一定数の機械で処理する時の 最適なスケジュールを求める 全体の処理にかかる時間(makespan)の最小化 <問題による制約> • 各仕事が機械を使う順序(技術的順序) • 各仕事が各作業を各機械上で処理する時間
JSPの最適化 JSPには技術的順序などの制約条件がある JSPの最適化は非常に困難 JSPに特化した手法でなければ,簡単に制約を外れてしまう 高性能で汎用性の高い最適化手法 遺伝的アルゴリズム(Genetic Algorithm : GA) による最適化 <GAで考慮する点> • 個体の表現方法 • 遺伝的オペレータ
遺伝的アルゴリズム(GA) • 生物の進化を模倣した最適化手法 • 多点探索 • 選択,交叉,突然変異を繰り返し適用し 個体を進化させ,最適化を行う 交叉 : 個体情報の交換手段 GAは多点探索であり,個体(解)間の情報交換を行うことで最適化を行う 適切な交叉の設定が重要 <研究目的> JSPの最適化の際に適切な交叉手法について検討
交叉 一般的な交叉手法を用いると制約条件を満たせない可能性が高い 制約を満たすことができる交叉手法 • Inter-machine Job-based Crossover (Inter-machine JOX)[小野,1998] • JSPに有効である交叉手法 • Deterministic Multi-step Crossover Fusion (dMSXF)[Ikeda,2002] • JSPに有効なMSXFを元に提案された手法 • 温度パラメータの設定が必要ない
2つの親個体のペアを選択 Step 1 Inter-machine JOX
2つの親個体のペアを選択 Step 1 Inter-machine JOX
保存する仕事として1つ以上の仕事を選択(ここではJ2)保存する仕事として1つ以上の仕事を選択(ここではJ2) Step 2 Inter-machine JOX
残りの仕事を順序を崩さないように他方の親から継承残りの仕事を順序を崩さないように他方の親から継承 Step 3 Inter-machine JOX
残りの仕事を順序を崩さないように他方の親から継承残りの仕事を順序を崩さないように他方の親から継承 Step 3 Inter-machine JOX
2つの親個体のペアを選択 Step 1 Deterministic Multi-step Crossover Fusion
生成された個体の中でもっとも良い個体を選択生成された個体の中でもっとも良い個体を選択 親1の周りに子個体を生成 Step 2 Step 3 Deterministic Multi-step Crossover Fusion 生成される個体は全て親2に近づく
生成された個体の中でもっとも良い個体を選択生成された個体の中でもっとも良い個体を選択 親1の周りに子個体を生成 Step 2 Step 3 Deterministic Multi-step Crossover Fusion 生成される個体は全て親2に近づく
もっとも良い個体に関して同じ操作を繰り返すもっとも良い個体に関して同じ操作を繰り返す 生成された個体の中で最も良い個体を選択 Step 4 Step 5 Deterministic Multi-step Crossover Fusion • 親個体の周りに個体を生成する方法(近傍) • 他方の親へ近づいているかの判定方法(距離)
近傍 dMSXFにおける個体生成 一つの親個体の周りに子個体を生成する 近傍を決定する必要がある 用いる近傍 ・・・ CB近傍 [山田,1994]
近傍 dMSXFにおける個体生成 一つの親個体の周りに子個体を生成する 近傍を決定する必要がある 用いる近傍 ・・・ CB近傍 [山田,1994]
近傍 dMSXFにおける個体生成 一つの親個体の周りに子個体を生成する 近傍を決定する必要がある 用いる近傍 ・・・ CB近傍 [山田,1994]
近傍 dMSXFにおける個体生成 一つの親個体の周りに子個体を生成する 近傍を決定する必要がある 用いる近傍 ・・・ CB近傍 [山田,1994]
近傍 dMSXFにおける個体生成 一つの親個体の周りに子個体を生成する 近傍を決定する必要がある 用いる近傍 ・・・ CB近傍 [山田,1994]
近傍 dMSXFにおける個体生成 一つの親個体の周りに子個体を生成する 近傍を決定する必要がある 用いる近傍 ・・・ CB近傍 [山田,1994]
個体間の距離 dMSXFにおける個体生成 一方の親個体から他方の親個体に近づくよう個体を生成する 個体間の距離を図る必要がある <距離の測定方法> • 各機械上である仕事の 次の仕事が違う場合 距離を 1 増加させる • 各機械上である順番で 処理される仕事が異なるとき 距離を1増加させる
距離の測定方法 <処理する作業が異なる順序> 1番目
距離の測定方法 <処理する作業が異なる順序> 1番目,2番目 ・・・ 2個
距離の測定方法 <処理する作業が異なる順序> 1番目,2番目 ・・・ 2個 <次に処理する作業が異なる仕事> J1
距離の測定方法 <処理する作業が異なる順序> 1番目,2番目 ・・・ 2個 <次に処理する作業が異なる仕事> J1,J2 ・・・ 2個 距離 = 2 + 2 = 4
Inter-machine JOXとdMSXFの比較 以下の2点について検討を行う • Inter-machine JOXとdMSXFの解探索性能の違い • 解探索性能が異なるとき,その原因 <比較手法> 交叉に以下の2つを適用したGAのモデル ・ Inter-machine JOX ・ dMSXF <対象問題> ft20(20仕事5機械問題) abz9(20仕事15機械問題)
解探索性能 abz9 ft20 Inter-machine JOXが良好な結果を示している
解探索性能の違い Inter-machine JOXの方が良好な解探索性能を示した Inter-machine JOXとdMSXFの 探索方法の違いが原因 <検討事項> • 探索途中での個体の多様性 • 1回の交叉による個体の変化量 多様性が失われると交叉が意味を成さない 局所的探索か大域的探索か
個体の多様性 dMSXF : 1回の交叉で個体を大量に生成し, 最も良い個体を子個体とする 選択圧が非常に高い可能性がある 選択圧が高いと母集団内の個体に多様性が無くなる 個体の多様性が失われると交叉が無意味になってしまう (同じ親個体から新しい個体は生成されないため) 両交叉手法の多様性の変化について検討する
個体の多様性の変化 個体の多様性の変化について検討を行う <検討手法> 交叉に以下の2つを適用したGAのモデル • Inter-machine JOX • dMSXF <対象問題> ft20(20仕事5機械問題) abz9(20仕事15機械問題)
個体の多様性(ft20) Inter-machine JOX dMSXF Inter-machine JOX : 探索序盤で良好な解を発見 dMSXF : 良好な解を発見する前に多様性が無くなる
個体の多様性(abz9) Inter-machine JOX dMSXF Inter-machine JOX : 探索序盤で良好な解を発見 dMSXF : 良好な解を発見する前に多様性が無くなる
個体の多様性の変化とその影響 両手法ともに個体に多様性がある間は良好な探索 Inter-machine JOX • 探索序盤に多様性は急激に低下する • 探索終盤でもある程度多様性が維持される • 多様性が失われる前にある程度良好な解を発見できる dMSXF • 探索序盤はInter-machine JOXよりも多様性は大きい • 探索終盤は多様性は失われる • 多様性が失われる前にある程度良好な解を発見できない 最終的に発見された解は,Inter-machine JOXの方が良好 良好な解が発見できるまで 十分な個体の多様性が必要
交叉による個体の変化量 dMSXFでは親個体間に大量の個体を生成し,局所探索を行う 複数ステップ個体生成を続けるため,最終的な子個体は大きく変化している可能性がある Inter-machine JOXとdMSXFの間に 個体の変化量の違いがある場合 一方は局所的探索,もう一方は大域的探索 探索する空間の広さが大きく異なる
交叉による個体の変化量の検討 交叉による個体の変化量について検討を行う <検討手法> 交叉に以下の2つを適用したGAのモデル • Inter-machine JOX • dMSXF <対象問題> ft20(20仕事5機械問題) abz9(20仕事15機械問題)
交叉による個体の変化(ft20) Inter-machine JOX dMSXF Inter-machine JOXの方が個体の変化量が大きい 個体の変化量に10倍程度の差が現れている
交叉による個体の変化(abz9) Inter-machine JOX dMSXF Inter-machine JOXの方が個体の変化量が大きい 個体の変化量に10倍程度の差が現れている
交叉による個体の変化量とその影響 Inter-machine JOXの方が個体が大きく変化 変化量の差は非常に大きい Inter-machine JOXは大域的探索 dMSXFは局所的探索 解探索性能はInter-machine JOXの方が良好 局所的探索ではなく大域的な探索が重要
まとめ JSPをGAで最適化する際の交叉設定の指針について検討 JSPに有効なInter-machine JOX JSPに対して有効性が検討されていないdMSXF • 解探索性能はInter-machine JOXがdMSXFよりも良好 • 個体の多様性が維持されている間は良好な探索が可能 • 交叉による個体の変化が小さいと 個体の多様性が失われるまでに良好な解を発見できない JSPに対して有効な交叉設定の指針 • 十分な個体の多様性の維持 • 局所的探索よりも大域的探索
発表論文 三木光範,廣安知之,勝崎俊樹,森 隆史 「分散遺伝的アルゴリズムにおける 多様性を考慮した世代交代モデルの検討」 同志社大学 理工学研究報告第45巻 第3号 2004年10月