Core Concepts
mlroseライブラリを使用して巡回セールスマン問題を解決する際の改善点を提案し、遺伝的アルゴリズムとヒルクライミングアルゴリズムの性能を向上させた。
Abstract
本論文では、高架倉庫の注文ピッキング問題を巡回セールスマン問題として定式化し、mlroseライブラリを使用して解決する際の改善点を提案している。
まず、遺伝的アルゴリズムについて、ツアーの方向性を考慮した新しい交叉演算子を提案した。これにより、親個体が良好な場合でも、子個体の性能が大幅に低下するという問題を解決できた。実験の結果、提案手法は元のmlrose実装と比べて平均ツアー長を46%短縮できることが示された。
次に、ヒルクライミングアルゴリズムについて、局所最適解からの脱出を容易にする改善を行った。具体的には、局所最適解から1ステップ下降することを許可し、過去に訪れた状態への再訪問を防ぐ機能を追加した。実験の結果、提案手法は元のmlrose実装と比べて平均ツアー長を4.6%短縮できることが示された。
これらの改善は、巡回セールスマン問題に限らず、対称性を持つ問題全般に適用可能であり、一般的な意義を持つ。一方で、計算時間は増加する傾向にあるため、実用上のトレードオフを考慮する必要がある。
Stats
遺伝的アルゴリズムの実験結果:
元のmlrose実装: 125019 ± 4438
修正版mlrose実装: 110137 ± 6677
提案手法: 67961 ± 3602
ヒルクライミングアルゴリズムの実験結果:
元のmlrose実装(0リスタート): 50263 ± 4498
提案手法(0リスタート): 47944 ± 4348
元のmlrose実装(1リスタート): 46438 ± 3427
提案手法(1リスタート): 45420 ± 3340