分散遺伝的アルゴリズムを用いた巡回セールスマン問題

分散遺伝的アルゴリズムを用いた
組合せ最適化問題の解法
○水田 伯典(同志社大学大学院)
三木 光範(同志社大学工学部)
廣安 知之(同志社大学工学部)
Intelligent Systems Design Laboratory, Doshisha Univ.
遺伝的アルゴリズム(GA)
遺伝的アルゴリズム(GA)
- 高い解探索能力
- 実装が容易
反復計算のため計算負荷が高い
処理の並列化
・・
・
島モデルの分散GA(DGA)
Intelligent Systems Design Laboratory, Doshisha Univ.
分散GA(DGA)の操作
母集団を複数のサブ母集団に分割
各サブ母集団ごとに遺伝的操作を行う
一定期間ごとに異なるサブ母集団間で移住を行う
遺伝的操作
移住
Intelligent Systems Design Laboratory, Doshisha Univ.
研究背景と目的
DGAは単一母集団GA(SPGA)と比較して
連続最適化問題‥‥高品質の解が得られる
組合せ最適化問題‥性能は明らかではない
巡回セールスマン問題(TSP)における
DGAの性能を検証
DGAの性能を向上させる新手法の提案
Intelligent Systems Design Laboratory, Doshisha Univ.
パラメータ
SPGAとDGAを比較
母集団サイズ
サブ母集団数
交叉法
交叉率
400
4, 16
枝交換交叉(EXX)
突然変異
0.8
2-change法
突然変異率
移住間隔
移住率
1/ L(染色体長)
10世代
0.5
対象問題
51都市問題(eil51)
Intelligent Systems Design Laboratory, Doshisha Univ.
枝交換交叉(EXX)
2つの親の持つ枝のうち1つを交換する交叉法
親
枝交換
1
親
2
子
1
EXX
子
2
Intelligent Systems Design Laboratory, Doshisha Univ.
その他の交叉法
EXX以外の交叉法
・ Partially Mapped Crossover (PMX) [Goldberg 85]
・ Cycle Crossover (CX) [Oliver 87]
・ サブツアー交換交叉 (SXX) [山村 92]
・ 枝組み立て交叉 (EAX) [永田 97]
Intelligent Systems Design Laboratory, Doshisha Univ.
パラメータ
SPGAとDGAを比較
母集団サイズ
サブ母集団数
交叉法
交叉率
突然変異
突然変異率
移住間隔
移住率
対象問題
400
4, 16
枝交換交叉(EXX)
0.8
2-change法
1/ L
10世代
0.5
51都市問題(eil51)
Intelligent Systems Design Laboratory, Doshisha Univ.
SPGAとDGAの比較結果
SPGAとDGAの比較
・・
・
DGAの性能が高い
SPGA, DGAともに
最適解とはやや差がある
結果は30試行の平均値
Intelligent Systems Design Laboratory, Doshisha Univ.
TSPでのDGAの問題点
・ 探索後半に解が改善されにくい
母集団全体の個体の差がなくなっている
交叉法の枝交換が機能しにくい
GAで厳密な最適解を得ることは困難
突然変異を用いて解を改善できないか
Intelligent Systems Design Laboratory, Doshisha Univ.
最適解と局所解の比較
最適解: 距離428.8
局所解: 距離429.8
Intelligent Systems Design Laboratory, Doshisha Univ.
突然変異の効果
突然変異1回
局所解
突然変異2回
距離が長くなる 距離が短くなる
429.8
431.1
429.5
突然変異によって最適解が
得られる可能性は低い
Intelligent Systems Design Laboratory, Doshisha Univ.
最適解と局所解の比較
TSPにおいては突然変異によって
局所解からの脱出を行うことが困難
10ヶ所以上異なる
枝を突然変異により
作ることは困難
黒: 共通部分 赤: 最適解 青: 局所解
Intelligent Systems Design Laboratory, Doshisha Univ.
TSPでのDGAの問題点
・ 探索後半に解が改善されにくい
・ 突然変異では局所解から脱出が困難
(選択によって淘汰される)
良好な結果を得ることは容易ではない
Intelligent Systems Design Laboratory, Doshisha Univ.
新手法の提案
DGAの問題点
探索の後半に局所解に陥り脱出が困難
局所解を利用する
局所解に存在する,
部分解の要素の組み合わせにより最適解を得る
部分解の要素の組み合わせ
Intelligent Systems Design Laboratory, Doshisha Univ.
提案手法の概念
枝をうまく組み合わせると最適解を得られる
DGAの結果得られた
巡回路
最適解
Intelligent Systems Design Laboratory, Doshisha Univ.
新手法の提案
DGAの問題点
探索の後半に局所解に陥り脱出不可能
局所解を利用する
局所解に存在する,
部分解の要素の組み合わせにより最適解を得る
集中的に交叉のみを行う
集中多段交叉 (Centralized Multiple Crossover: CMX)
Intelligent Systems Design Laboratory, Doshisha Univ.
提案手法の流れ
初期化
個体を集める
個体生成
連続交叉
個体を分割
DGA
iDGA
Intelligent Systems Design Laboratory, Doshisha Univ.
提案手法の流れ(1)
母集団の個体を初期化
初期化
ランダム個体の生成
個体集める
個体生成
部分解の要素の生成
連続交叉
個体を分割
・・
・
DGA iDGA
2-opt法を用いて局所解を生成
Intelligent Systems Design Laboratory, Doshisha Univ.
提案手法の流れ(2)
CMXに適用する個体を集める
初期化
母集団
9個体
エリート個体
を集める
個体集める
個体生成
連続交叉
3 個体を分割
個
体 DGA iDGA
交叉島
(交叉のみを行う島)
Intelligent Systems Design Laboratory, Doshisha Univ.
提案手法の流れ(3)
連続交叉に用いる個体を生成する
初期化
交叉をおこなって個体数を増やす
・・・ 交叉島の個体数=母集団の個体数
交叉
3
個
体
交叉島
親個体を
残す
個体集める
個体生成
9
個
体
連続交叉
個体を分割
DGA iDGA
交叉島
Intelligent Systems Design Laboratory, Doshisha Univ.
提案手法の流れ(4)
連続して交叉を行う
定められた回数、交叉を連続して行う
初期化
個体集める
個体生成
連続交叉
個体を分割
連続交叉
DGA iDGA
交叉島
選択・突然変異
行わない
交叉島
Intelligent Systems Design Laboratory, Doshisha Univ.
提案手法の流れ(5)
生成個体を母集団に分割する
初期化
母集団
個体集める
個体生成
連続交叉
個体を分割
DGA iDGA
交叉島
Intelligent Systems Design Laboratory, Doshisha Univ.
提案手法の流れ
初期化
CMX
個体を集める
個体生成
連続交叉
CMXの複数回
適用時には
iDGAを行う
個体を分割
DGA
iDGA
Intelligent Systems Design Laboratory, Doshisha Univ.
iDGAとは
iDGA (isolated DGA)
= 移住操作を行わないDGA
CMXを複数回適用時
多くの部分解の要素が必要
・・
・
初期化
個体集める
個体生成
連続交叉
個体を分割
DGA iDGA
iDGAでは情報交換が行われない
DGAよりも多くの種類の部分解の要素を生成可能
Intelligent Systems Design Laboratory, Doshisha Univ.
提案手法の流れ
初期化
CMX
個体を集める
個体生成
連続交叉
最後の
CMX終了
・・
・
DGAに移る
CMXの複数回
適用時には
iDGAを行う
個体を分割
DGA
iDGA
Intelligent Systems Design Laboratory, Doshisha Univ.
パラメータと対象問題
提案手法とDGAの性能を比較
母集団サイズ
サブ母集団数
交叉法
交叉率
突然変異
突然変異率
移住間隔
移住率
対象問題
400
16
枝交換交叉(EXX)
0.8
2-change法
1/ L
10世代
0.5
51都市問題(eil51)
Intelligent Systems Design Laboratory, Doshisha Univ.
51都市問題の結果
CMXはDGAより
高い性能を示す
CMXの適用回数が
多いほど性能が良い
結果は30試行の平均値
Intelligent Systems Design Laboratory, Doshisha Univ.
CMXを複雑な問題に適用
CMXとDGAの性能を比較
母集団サイズ
サブ母集団数
交叉法
交叉率
突然変異
突然変異率
移住間隔
移住率
対象問題
400
16
枝交換交叉(EXX)
0.8
2-change法
1/ L
10世代
0.5
100都市問題
Intelligent Systems Design Laboratory, Doshisha Univ.
100都市問題の結果
CMXの適用回数
1 ‥ DGAより悪い
2 ‥ DGAより良い
5 ‥ DGAより良い
結果は30試行の平均値
Intelligent Systems Design Laboratory, Doshisha Univ.
サブ母集団数の影響
サブ母集団数ごとの性能比較
CMXとDGAを比較する
母集団サイズ
サブ母集団数
400
2~200
サブ母集団サイズ 200~2
10
CMX適用回数
10
CMX交叉回数
10世代
CMX適用間隔
対象問題
100都市問題
Intelligent Systems Design Laboratory, Doshisha Univ.
サブ母集団数ごとの性能
平均巡回路長の比較
CMX適用時の
性能が高い
サブ母集団数多い
性能が高い
結果は40試行の平均値
Intelligent Systems Design Laboratory, Doshisha Univ.
サブ母集団数ごとの性能
最適解を得た割合の比較
CMX適用時の
性能が高い
サブ母集団数多い
性能が高い
結果は40試行の平均値
Intelligent Systems Design Laboratory, Doshisha Univ.
CMXの性能
CMXはDGAよりも高い性能を示す
適用回数が1回ではDGAより劣る
適用回数を増やせば性能が向上する
適切なパラメータは存在する
適切なパラメータ設定には検討の余地がある
他の問題に対する適用
Intelligent Systems Design Laboratory, Doshisha Univ.
まとめ
結 論
提案手法(CMX)はDGAよりも良好な性能を示す
今後の課題
・ 適切なCMXパラメータの設定の検討
・ 提案手法の並列化モデルの検討
・ 他の離散的問題への提案手法の適用
Intelligent Systems Design Laboratory, Doshisha Univ.