離散数理特論
Numbering Code |
G-INF04 63413 LJ54 G-INF04 63413 LJ10 |
Year/Term | 2022 ・ Second semester | |
---|---|---|---|---|
Number of Credits | 2 | Course Type | Lecture | |
Target Year | Master's students | Target Student | ||
Language | Japanese | Day/Period | Tue.3 | |
Instructor name | NAGAMOCHI HIROSHI (Graduate School of Informatics Professor) | |||
Outline and Purpose of the Course |
離散数学から、基本的および新しい話題を選んで講述する。具体的には、離散アルゴリズムの設計原理である動的計画法、分割統治法、貪欲法、離散最適化の双対性について講義した後、グラフ・ネットワークの理論、FPT (Fixed Parameter Tractability) や kernel などについて解説する。 Lecture on the fundamental technique for designing algorithms such as dynamic programming, divide-and-conquer, greedy method and min-max property (duality) in discrete optimization, introducing some new topics from graph network theory, FPT and kernel. |
|||
Course Goals | 動作原理の異なるアルゴリズムがあることを理解し,自分で離散問題をアルゴリズムを設計する際に,適切な設計手法が選べるようになること. | |||
Schedule and Contents |
<授業で扱うトピックス> 分枝限定法; 動的計画法;分割統治法;マトロイド;最大最小性(双対性);Fixed Parameter Tractable (FPT) 第1回 離散最適化問題に関する導入, アルゴリズムの記述の仕方,分枝限定法,動的計画法の考え方を説明する. 第2回 最適性の原理について説明する.行列積順序問題に対して動的計画法アルゴリズムを設計する. 第3回 最適二分木設計問題,三角形分割問題に対して動的計画法アルゴリズムを設計する. 第4回 弾性マッチング問題対して動的計画法アルゴリズムを設計する. 第5回 グローバルアラインメント問題,ローカルアラインメント問題に対して動的計画法アルゴリズムを設計する. 第6回 トラベリングセールスマン問題(TSP), cutwidthの問題に対して動的計画法アルゴリズムを設計する. 第7回 グラフの木幅(tree width)について説明し,2-tree上の最長路問題に対して動的計画法アルゴリズムを設計する. 第8回 分割統治法の考え方を説明する.分割統治法としてのマージソート,クイックソートの説明,長大数の積,行列積,凸包計算に対する分割統治法動的計画法アルゴリズムを説明する. 第9回 線分交差問題に対して分割統治法アルゴリズムを設計する.トラベリングセールスマン問題(TSP)に対して多項式領域の厳密解法アルゴリズムを設計する. 第10回 縮小法の考え方を説明する.第k要素選択,2次元LP線形に対して線形時間アルゴリズムを設計する.グローバルアラインメントに対する線形領域アルゴリズムを設計する. 第11回 マトロイド,貪欲法について説明をする. 第12回 マッチングマトロイド,系列化問題について説明をする.マトロイド交叉の考え方について説明をする. 第13回 マトロイド交叉を使って化学グラフの実現性問題を解く.最大最小性の考え方について説明し,最大フローアルゴリズムを設計する. 第14回 最大パス問題,最小カット問題,長方形分割問題の解き方を説明する.Dilworthの定理の証明を与える. 第15回 Fixed Parameter Tractable (FPT)やカーネルの考え方を説明する.important separatorについて説明し,これらを利用したFPTアルゴリズムを設計する. One or two lectures for each of the following topics. 1. Discrete Optimization, Computational Complexity, and Branch-and-bound 2. Dynamic Programming 3. Divide-and-conquer 4. Matroid 5. Min-max property 6. FPT & kernel |
|||
Evaluation Methods and Policy |
到達目標についての達成度をレポートを含む平常点と期末試験の成績を総合して評価し,情報学研究科成績評価規程第7条による成績評価を行う.詳細は授業時に説明する. The goal of this subject is to understand the mechanism of each of the representative algorithm design techniques. Assignments (50%) and end-of-term examination (50%). |
|||
Course Requirements |
基本的なデータ構造,計算オーダーの見積もり方に関する基礎知識を学んでいることが望ましい. Basic knowledge on data structure and time bound analysis. |
|||
Study outside of Class (preparation and review) | この授業では特に予習,復習の必要はないが,講義で分からないことがあれば,その講義中,あるいは講義直後に質問すること.疑問点は放置せずに,すぐに質問すること.同じような疑問を持つ人は他にもいるものです.質問するためには,自分がしっかり理解できている部分とそうでない部分が自分で見極めらなければ,的を絞った質問自体ができません.この整理がつくように復習することは有用です. | |||
Textbooks | Textbooks/References |
なし (適宜,資料を配布) None (ppt slide files etc will be provided) |
||
References, etc. | アルゴリズム入門 -設計と解析-Computer Algorithms: Introduction to Design and Analysis, Sara Baase著 (岩野和生,加藤直樹,永持仁訳)Sara Baase, Longman Higher Education, (アジソン・ウェスレイ・パブリッシャーズ・ジャパン株式会社,星雲社), ISBN:1998 (ISBN 4-7952-9720-7) |