分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法
Download
1 / 52

分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法 - PowerPoint PPT Presentation


  • 208 Views
  • Uploaded on

分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法. ○水田 伯典(同志社大学大学院) 三木 光範(同志社大学工学部) 廣安 知之(同志社大学工学部). ・. ・. ・. 遺伝的アルゴリズム ( GA). 遺伝的アルゴリズム ( GA). 高い解探索能力 - 実装が容易. 反復計算のため計算負荷が高い. 処理の並列化. 島モデルの分散 GA( DGA ). 遺伝的操作. 移住. 分散 GA(DGA) の操作. 母集団を複数のサブ母集団に分割. 母集団を複数のサブ母集団に分割. 母集団を複数のサブ母集団に分割. 各サブ母集団ごとに遺伝的操作を行う.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' 分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法' - havily


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

○水田 伯典(同志社大学大学院)

三木 光範(同志社大学工学部)

廣安 知之(同志社大学工学部)


分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

遺伝的アルゴリズム(GA)

遺伝的アルゴリズム(GA)

  • 高い解探索能力

  • - 実装が容易

反復計算のため計算負荷が高い

処理の並列化

島モデルの分散GA(DGA)


Ga dga

遺伝的操作分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

移住

分散GA(DGA)の操作

母集団を複数のサブ母集団に分割

母集団を複数のサブ母集団に分割

母集団を複数のサブ母集団に分割

各サブ母集団ごとに遺伝的操作を行う

各サブ母集団ごとに遺伝的操作を行う

各サブ母集団ごとに遺伝的操作を行う

一定期間ごとに異なるサブ母集団間で移住を行う

一定期間ごとに異なるサブ母集団間で移住を行う


研究背景と目的分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

DGAは単一母集団GA(SPGA)と比較して

連続最適化問題‥‥高品質の解が得られる

組合せ最適化問題‥性能は明らかではない

巡回セールスマン問題(TSP)における DGAの性能を検証

DGAの性能を向上させる新手法の提案


パラメータ分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

SPGAとDGAを比較

母集団サイズ

400

サブ母集団数

4, 16

交叉法

枝交換交叉(EXX)

交叉率

0.8

突然変異

2-change法

突然変異率

1/ L(染色体長)

移住間隔

10世代

移住率

0.5

対象問題

51都市問題(eil51)


親 1分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

子 1

枝交換

子 2

EXX

親 2

枝交換交叉(EXX)

2つの親の持つ枝のうち1つを交換する交叉法


その他の交叉法分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

EXX以外の交叉法

・ Partially Mapped Crossover (PMX) [Goldberg 85]

・ Cycle Crossover (CX) [Oliver 87]

・ サブツアー交換交叉 (SXX)[山村 92]

・ 枝組み立て交叉 (EAX) [永田 97]


パラメータ分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

SPGAとDGAを比較

母集団サイズ

400

サブ母集団数

4, 16

交叉法

枝交換交叉(EXX)

交叉率

0.8

突然変異

2-change法

突然変異率

1/ L

移住間隔

10世代

移住率

0.5

対象問題

51都市問題(eil51)


Spga dga

分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

SPGAとDGAの比較結果

SPGAとDGAの比較

DGAの性能が高い

SPGA, DGAともに

最適解とはやや差がある

結果は30試行の平均値


Tsp dga
TSP分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法でのDGAの問題点

・ 探索後半に解が改善されにくい

母集団全体の個体の差がなくなっている

交叉法の枝交換が機能しにくい

GAで厳密な最適解を得ることは困難

突然変異を用いて解を改善できないか


最適解と局所解の比較分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

最適解: 距離428.8

局所解: 距離429.8


突然変異分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法1回

距離が長くなる

突然変異2回

距離が短くなる

431.1

429.5

突然変異の効果

局所解

429.8

突然変異によって最適解が得られる可能性は低い


10分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法ヶ所以上異なる

枝を突然変異により

作ることは困難

最適解と局所解の比較

TSPにおいては突然変異によって

局所解からの脱出を行うことが困難

黒: 共通部分 赤: 最適解青: 局所解


Tsp dga1
TSP分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法でのDGAの問題点

・ 探索後半に解が改善されにくい

・ 突然変異では局所解から脱出が困難  (選択によって淘汰される)

良好な結果を得ることは容易ではない


局所解を利用する分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

局所解に存在する,

部分解の要素の組み合わせにより最適解を得る

新手法の提案

DGAの問題点

探索の後半に局所解に陥り脱出が困難

部分解の要素の組み合わせ


提案手法の概念分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

枝をうまく組み合わせると最適解を得られる

DGAの結果得られた巡回路

最適解


集中的に交叉のみを行う分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

新手法の提案

DGAの問題点

探索の後半に局所解に陥り脱出不可能

局所解を利用する

局所解に存在する,

部分解の要素の組み合わせにより最適解を得る

集中多段交叉 (Centralized Multiple Crossover: CMX)


個体を集める分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

個体生成

連続交叉

個体を分割

iDGA

DGA

提案手法の流れ

初期化


初期化分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

個体集める

個体生成

連続交叉

個体を分割

iDGA

DGA

提案手法の流れ(1)

母集団の個体を初期化

 ランダム個体の生成

部分解の要素の生成

2-opt法を用いて局所解を生成


初期化分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

母集団

9個体

個体集める

エリート個体を集める

個体生成

連続交叉

個体を分割

iDGA

DGA

交叉島

(交叉のみを行う島)

提案手法の流れ(2)

CMXに適用する個体を集める

3個体


初期化分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

個体集める

個体生成

連続交叉

9個体

個体を分割

交叉

iDGA

DGA

親個体を残す

交叉島

提案手法の流れ(3)

連続交叉に用いる個体を生成する

交叉をおこなって個体数を増やす

・・・ 交叉島の個体数=母集団の個体数

3個体

交叉島


初期化分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

個体集める

個体生成

連続交叉

個体を分割

連続交叉

iDGA

DGA

提案手法の流れ(4)

連続して交叉を行う

定められた回数、交叉を連続して行う

選択・突然変異行わない

交叉島

交叉島


初期化分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

母集団

個体集める

個体生成

連続交叉

個体を分割

iDGA

DGA

提案手法の流れ(5)

生成個体を母集団に分割する

交叉島


CMX分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

個体を集める

個体生成

連続交叉

個体を分割

iDGA

DGA

提案手法の流れ

初期化

CMXの複数回適用時にはiDGAを行う


初期化分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

個体集める

個体生成

連続交叉

個体を分割

iDGA

DGA

iDGAとは

iDGA (isolated DGA)

= 移住操作を行わないDGA

CMXを複数回適用時

多くの部分解の要素が必要

iDGAでは情報交換が行われない

DGAよりも多くの種類の部分解の要素を生成可能


CMX分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

個体を集める

個体生成

連続交叉

個体を分割

iDGA

DGA

提案手法の流れ

初期化

CMXの複数回適用時にはiDGAを行う

最後のCMX終了

DGAに移る


パラメータと対象問題分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

提案手法とDGAの性能を比較

母集団サイズ

400

サブ母集団数

16

交叉法

枝交換交叉(EXX)

交叉率

0.8

突然変異

2-change法

突然変異率

1/ L

移住間隔

10世代

移住率

0.5

対象問題

51都市問題(eil51)


51分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法都市問題の結果

CMXはDGAより  高い性能を示す

CMXの適用回数が 多いほど性能が良い

結果は30試行の平均値


CMX分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法を複雑な問題に適用

CMXとDGAの性能を比較

母集団サイズ

400

サブ母集団数

16

交叉法

枝交換交叉(EXX)

交叉率

0.8

突然変異

2-change法

突然変異率

1/ L

移住間隔

10世代

移住率

0.5

対象問題

100都市問題


100分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法都市問題の結果

CMXの適用回数

1 ‥ DGAより悪い

2 ‥ DGAより良い

5 ‥ DGAより良い

結果は30試行の平均値


サブ母集団数の影響分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

サブ母集団数ごとの性能比較

CMXとDGAを比較する

母集団サイズ

400

サブ母集団数

2~200

サブ母集団サイズ

200~2

CMX適用回数

10

CMX交叉回数

10

CMX適用間隔

10世代

対象問題

100都市問題


サブ母集団数ごとの性能分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

平均巡回路長の比較

CMX適用時の性能が高い

サブ母集団数多い

性能が高い

結果は40試行の平均値


サブ母集団数ごとの性能分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

最適解を得た割合の比較

CMX適用時の性能が高い

サブ母集団数多い

性能が高い

結果は40試行の平均値


CMX分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法の性能

CMXはDGAよりも高い性能を示す

適用回数が1回ではDGAより劣る

適用回数を増やせば性能が向上する

適切なパラメータは存在する

適切なパラメータ設定には検討の余地がある

他の問題に対する適用


結 論分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

今後の課題

ま と め

提案手法(CMX)はDGAよりも良好な性能を示す

・ 適切なCMXパラメータの設定の検討

・提案手法の並列化モデルの検討

・ 他の離散的問題への提案手法の適用


交叉回数ごとの性能分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

CMXはDGAよりも性能が高い

CMXの適用回数を  増やすと性能があがる

51都市問題の結果

結果は30試行の平均値


交叉回数ごとの性能分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

CMXの適用回数

1 ‥ DGAより悪い

2 ‥ DGAより良い

5 ‥ DGAより良い

2回より悪い

100都市問題の結果

結果は30試行の平均値


CMX分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法の他のモデル

・ 生成個体の分割時に戻す個体

  個体の一部を戻す

・ 交叉島でエリート保存を行う

 (エリートの復帰は行わない)


一定期間ごとに情報交換分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

母集団

情報交換

CMX並列モデル

交叉島では常に交叉を行っておく

交叉繰り返し

iDGA

エリート

交叉島


150分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法都市問題の結果

CMXは

適用回数によらず

DGAより優れている

適用回数を増やす

解の性能が高まる

結果は30試行の平均値


交叉回数ごとの性能分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

CMXは

適用回数によらず

DGAより優れている

適用回数を増やす

解の性能が高まる

150都市問題の結果

結果は30試行の平均値


サブ母集団数ごとの性能分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

CMX適用時の性能が高い

サブ母集団数多い

性能が高い

結果は30試行の平均値


Cmx dga

分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

CMXとDGAの比較方法

CMX

DGA

初期化

初期化

10回の交叉

CMX

DGA

10回 繰り返し

200世代のDGAを行う

iDGA

10世代

CMX


分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

初期母集団での部分解の生成

提案手法の操作(1)

エリートのみ集める

初期個体

母集団サイズまで

子を生成

2-opt法による局所解の生成


移住無し分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法DGA(iDGA)

又は

通常のDGA

選択を行わないため

エリートの持つ部分解を

振り分けることが可能

提案手法の操作(2)

サブ母集団に分割

交叉のみ繰り返す


分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

提案手法の操作

母集団サイズまで

子を生成

エリートのみ集める

交叉

親個体も残す

交叉のみ複数回   集中して行う(CMX)

個体数を増やす

エリートの持つ枝の振り分け


2 change

2-分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法Change

2-Change法

・ 任意の枝を1つ選び枝の終点を変更する


提案手法のパラメータ分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

1. CMXを行う回数

2. CMXを行う世代間隔

3. CMXにおける多段交叉回数

4. CMXに適用する個体

5. CMXの結果適用する個体


EAX分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法の適用

枝組み立て交叉(Edge Assembly Crossover)

・ EXXよりも大域的な探索が可能な交叉法

・ 新たな枝を生成する能力が高い

(EXXでは親個体の持つ枝の交換のみ)

・ 3000都市以上の問題でも  最適解を得ることが可能


EAX分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法の適用結果

CMXを適用すると DGAよりも性能が高い

CMXの適用回数は 多い方が良い

150都市問題の結果


交叉回数ごとの性能分散遺伝的アルゴリズムを用いた組合せ最適化問題の解法

CMXを適用すると DGAよりも性能が高い

CMXの適用回数は 多い方が良い

150都市問題の結果(EAX)

結果は30試行の平均値


ad