本講義では代表的な組合せ最適化問題とその解法を解説する.現実問題は本質的な目的や制約を抽出することで最適化問題としてモデル化される.抽象化された最適化問題を効率良く解くことは現実に重要な課題であり,そのために問題のもつ特有の性質や構造の利用が必要になる.本講義では「組合せ最適化問題」にフォーカスし,代表的な問題とその性質を利用したアルゴリズムを解説する.さらに,組合せ構造とアルゴリズムに関する理論を説明する.
本講義のねらいは,様々な例を通して組合せ最適化問題の代表的な問題とそのアルゴリズムに関する知識と,アルゴリズムの性能を数学的に説明するための基礎的な概念を与えることである.
本講義の目標は以下である.
1) 現実世界に表れる組合せ最適化問題の代表的な問題を認知できる.
2) その解法を大まかに思いつくことができる.
3) 解法の性能をある程度理論的に説明できる.
組合せ最適化, アルゴリズム, オンライン最適化, 動的計画法, モデル化
✔ 専門力 | 教養力 | コミュニケーション力 | 展開力(探究力又は設定力) | 展開力(実践力又は解決力) |
毎回ひとつの組合せ最適化問題に焦点を絞り,基本的なアルゴリズムを解説する.
授業計画 | 課題 | |
---|---|---|
第1回 | イントロダクション | 評価基準などの説明 |
第2回 | 最短路問題 | |
第3回 | 最大流問題 | |
第4回 | 最小費用流問題 | |
第5回 | 最大マッチング問題 | |
第6回 | 安定結婚問題 | |
第7回 | マトロイド | |
第8回 | 第1〜7回の復習と発展的話題 | |
第9回 | ナップサック問題と近似解法 | |
第10回 | ナップサック問題と動的計画法 | |
第11回 | 巡回セールスマン問題 | |
第12回 | 劣モジュラ関数最大化問題 | |
第13回 | オンライン問題 | |
第14回 | 秘書問題 | 期末レポート |
学修効果を上げるため,教科書や配布資料等の該当箇所を参照し,「毎授業」授業内容に関する予習と復習(課題含む)をそれぞれ概ね100分を目安に行うこと。
教科書は指定しないが,以下の参考書を基に作成した講義資料を用いる.
B. Korte and J. Vygen, "Combinatorial Optimization: Theory and Algorithms", Springer, 2018.
A. Schrijver, "Combinatorial Optimization: Polyhedra and Efficiency", Springer, 2003.
繁野 麻衣子,「ネットワーク最適化とアルゴリズム」,朝倉書店,2010.
河原 吉伸,永野 清仁,「劣モジュラ最適化と機械学習」,講談社,2015.
講義資料はOCW-i にアップロードする.
期末レポートと講義中に行うクイズにより評価する.
「数理最適化」を履修していることが望ましい.