コンピュータ科学

講義一覧(2019年度)

2019年度研究科授業時間割
共通科目コード

研究科共通

※○:本年度開講科目
科目番号/Code 科目名/Subject 担当教員/Instructor ターム/Term 単位/Credit 曜限/Schedule 時間/Time 講義室/Room 備考/Remark 重複履修制限/Restriction
4810-1103 自然言語処理システム論
Advanced Natural Language Processing
相澤 彰子, 宮尾 祐介 A1A2 2 Mon 2 10:25-12:10 理7号館214号室
4810-1180 ソフトウェアのテストと検証
Software Testing and Verification
萩谷 昌己
田辺 良則
A2 1 Fri 4 14:55-16:40 理7号館007号室 ※E 情 4810-1107
4860-1019
4860-1041,0510101
4810-1111 アルゴリズム論
Algorithmics
今井 浩 S1S2 2 Thu 3 13:00-14:45 理7号館007号室
4810-1130 メディア情報学
Multimedia Interface
五十嵐 健夫 A1A2 2 Thu 2 10:25-12:10 理7号館007号室 4860-1073
4810-1109 計算機言語システム論
Programming Language Systems
小林 直樹 A1A2 2 Tue 2 10:25-12:10 理7号館214号室
4810-1115 並列数値計算論
Parallel Numerical Computations
須田 礼仁 S1S2 2 Mon 3 13:00-14:45 理7号館007号室 ※E 情
4810-1123 計算生物物理
Computational Biophysics
清水 謙多郎 S1 1 Mon 2 10:25-12:10 農2号館化学第3教室
4810-1149 配列解析アルゴリズム特論
Algorithms for Sequence Analysis
渋谷 哲朗 S1S2 2 Thu 4 14:55-16:40 理7号館007号室
4810-1124 DNA情報解析特論
DNA Information Analysis
宮野 悟
井元 清哉
A1A2 2 Tue 2 10:25-12:10 理7号館214号室
4810-1132 ゲノム機能情報解析特論
Information Analysis for Functional Genomics
中井 謙太
Patil Ashwini Ajay
S1S2 2 Wed 2 10:25-12:10 理7号館214号室 ※E 情
4810-1142 プログラミング代数特論
Algebra of Programming
高野 明彦 A1A2 2 Fri 2 10:25-12:10 理7号館007号室
4810-1163 先端アルゴリズム論
Advanced Algorithms
今井 浩
渋谷 哲朗
S1S2 2 Thu 3 13:00-14:45 理7号館007号室 ※E 情
4810-1171 実践英語対話表現演習I
Practical English Presentation Skill I
S1S2 集中(土) ※E 4810-1172
4810-1173
4810-1166 量子計算論
Introduction to Quantum Computation
Raymond Rudy S1S2 2 Fri 5 16:50-18:35 理7号館214号室 ※E 0510062
4810-1169 戦略ソフトウェア特論
Strategic Software
稲葉 真理 S1S2 2 Tue 3 13:00-14:45 理7号館214号室 4810-1144
4810-1145
4860-1013
4860-1014
4810-1053
4810-1170 論文構成法
English Paper Writing
McDonald Michael James A1A2 2 Tue 4 14:55-16:40 理7号館007号室 ※E 0510027
4810-1175 学際計算科学特論
Interdisciplinary Lecture in Scientific Computing
吉本 芳英 A1A2 2 Wed 2 10:25-12:10 理7号館214号室
4810-1176 先端データ解析論
Advanced Data Analysis
杉山 将
本多 淳也
S1S2 2 Tue 2 10:25-12:10 理1号館285号室 47130-53
4810-1178 先端統計モデリング論
Advanced Statistical Modeling
佐藤 一誠 A1A2 2 Wed 4 14:55-16:40 理1号館285号室 47130-55
4810-1181 コンピュータアーキテクチャ特論
Advanced Computer Architecture
中田 登志之 A1A2 2 Thu 2 10:25-12:10 理7号館214号室 ※E 情
4810-1182 オペレーティングシステム特論
Advanced Operating Systems
加藤 真平
千代 浩之
A1A2 2 Fri 3 13:00-14:45 理7号館007号室 ※E 情
4810-1183 近似・オンラインアルゴリズムとその応用
Approximation and Online Algorithms with Applications
Suppakitpaisarn Vorapong S1S2 2 Tue 4 14:55-16:40 理7号館214号室 ※E 情
4810-1184 情報セキュリティのためのアルゴリズム
Algorithms for Information Security and Privacy
Suppakitpaisarn Vorapong A1A2 2 Tue 3 13:00-14:45 理7号館214号室 ※E 情 4810-1206
4810-1185 ネットワーク最適化
Network Optimizations
Suppakitpaisarn Vorapong A1A2 2 Mon 3 14:55-16:40 理7号館214号室 ※E 情 4810-1165
4810-1186 計算科学プログラミングI
Programming for Computational Science I
松本 正晴 S1S2 2 Fri 1 8:30-10:15 情報基盤センター(本郷)演習室
4810-1187 計算科学プログラミングII
Programming for Computational Science II
松本 正晴 A1A2 2 Fri 1 8:30-10:15 情報基盤センター(本郷)演習室
4810-1188 計算科学における情報圧縮
Information Compression in Computational Science
山地 洋平
大久保 毅
A1A2 2 Thu 3 13:00-14:45 理1号館中央棟233号室 35603-0116
3752-092
47100-81
4810-1189 視覚情報処理応用
Advanced Computer Vision
佐藤 いまり A1A2 2 Wed 4 14:55-16:40 理7号館214号室
4810-1177 研究倫理
Information Science and Technology Ethics
萩谷 昌己 通年 0.5 集中 ※E 0510801
4810-1215 計算科学アライアンス特別講義I
Special Lecture on Computational Science I
中島 研吾 S1S2 2 Mon 1 8:30-10:15 情報基盤センター(本郷)演習室 ※E 4820-1027
3747-110
4810-1204
4810-1216 計算科学アライアンス特別講義II
Special Lecture on Computational Science II
中島 研吾 A1A2 2 Mon 1 8:30-10:15 情報基盤センター(本郷)演習室 ※E 4820-1028
4810-1205
4810-1207 コンピュータ科学特別講義IV
Seminar on Computer Science IV
枝廣 正人 S1S2 2 Fri 3 13:00-14:45 理7号館214号室
4810-1208 コンピュータ科学特別講義 V
Seminar on Computer Science V
Nguyen Phong S1S2 2 Fri 2 10:25-12:10 理7号館214号室 ※E
4810-1213 コンピュータ科学プロジェクト研究I 各教員 S1S2 集中 ※E 4810-2006
4810-2007
4810-3001
4810-3002
4810-2003
4810-2004
4810-2005
4810-3003
4810-3004
4810-3005
4810-1214 コンピュータ科学プロジェクト研究II 各教員 A1A2 集中 ※E 4810-2006
4810-2007
4810-3001
4810-3002
4810-2003
4810-2004
4810-2005
4810-3003
4810-3004
4810-3005
4810-2006 コンピュータ科学修士輪講I
コンピュータ科学修士輪講I(10月入学)
Computer Science Seminar(Master's Course)I
各教員 通年
年度跨り
集中
4810-2007 コンピュータ科学修士輪講II
コンピュータ科学修士輪講II(10月入学)
Computer Science Seminar(Master's Course)II
各教員 通年
年度跨り
集中
4810-3001 コンピュータ科学修士特別研究I
コンピュータ科学修士特別研究I(10月入学)
Special Lectures in Computer Science(M'Course)I
各教員 通年
年度跨り
集中
4810-3002 コンピュータ科学修士特別研究II
コンピュータ科学修士特別研究II(10月入学)
Special Lectures in Computer Science(M'Course)II
各教員 通年
年度跨り
集中
4810-2003 コンピュータ科学博士輪講I
コンピュータ科学博士輪講I(10月入学)
Computer Science Seminar(Doctoral Course)I
各教員 通年
年度跨り
集中
4810-2004 コンピュータ科学博士輪講II
コンピュータ科学博士輪講II(10月入学)
Computer Science Seminar(Doctoral Course)II
各教員 通年
年度跨り
集中
4810-2005 コンピュータ科学博士輪講III
コンピュータ科学博士輪講III(10月入学)
Computer Science Seminar(Doctoral Course)III
各教員 通年
年度跨り
集中
4810-3003 コンピュータ科学博士特別研究I
コンピュータ科学博士特別研究I(10月入学)
Special Lectures in Computer Science(D'Course)I
各教員 通年
年度跨り
集中
4810-3004 コンピュータ科学博士特別研究II
コンピュータ科学博士特別研究II(10月入学)
Special Lectures in Computer Science(D'Course)II
各教員 通年
年度跨り
集中
4810-3005 コンピュータ科学博士特別研究III
コンピュータ科学博士特別研究III(10月入学)
Special Lectures in Computer Science(D'Course)III
各教員 通年
年度跨り
集中

※科目番号下にある“※E”は、原則として英語で行う講義を表す。
※備考欄内「情」は、教育職員免許法の免許教科『情報』の教科に関する認定科目。
※次の科目同士は、開講年度が異なっても、両方の履修は認められない。
4810-1107「計算システム検証論」と4810-1180, 4860-1019, 4860-1041
4810-1180「ソフトウェアのテストと検証」と4810-1107, 4860-1019, 4860-1041,0510101
4810-1130「メディア情報学」と4860-1073 (創造情報)
4810-1179「テキストメディア特論」と4810-1153
4810-1171「実践英語対話表現演習I」と4810-1172, 4810-1173
4810-1172「実践英語対話表現演習II」と4810-1171, 4810-1174
4810-1165「通信理論のアルゴリズム的側面」と4810-1185
4810-1166「量子計算論」と0510062
4810-1169「戦略ソフトウェア特論」と4810-1144, 4810-1145, 4860-1013, 4860-1014, 4810-1053
4810-1170「論文構成法」と0510027
4810-1176「先端データ解析論」と47130-53
4810-1178「先端統計モデリング論」と47130-55
4810-1184「情報セキュリティのためのアルゴリズム」と4810-1206
4810-1185「ネットワーク最適化」と4810-1165
4810-1188「計算科学における情報圧縮」と35603-0116, 3752-092, 47100-81
4810-1177「研究倫理」と0510801
4810-1173「グローバル・クリエイティブリーダー実践英語演習I」と4810-1171
4810-1174「グローバル・クリエイティブリーダー実践英語演習II」と4810-1172
4810-1215「計算科学アライアンス特別講義I」と4820-1027 (数理情報), 3747-110, 4810-1204
4810-1216「計算科学アライアンス特別講義II」と4820-1028 (数理情報), 4810-1205
4810-1204「コンピュータ科学特別講義I」と4820-1027 (数理情報), 3747-110
4810-1205「コンピュータ科学特別講義II」と4820-1028 (数理情報)
4810-1206「コンピュータ科学特別講義III」と4810-1184
4810-1213「コンピュータ科学プロジェクト研究I」と4810-2006, 4810-2007, 4810-3001, 4810-3002, 4810-2003, 4810-2004, 4810-2005, 4810-3003, 4810-3004, 4810-3005
4810-1214「コンピュータ科学プロジェクト研究II」と4810-2006, 4810-2007, 4810-3001, 4810-3002, 4810-2003, 4810-2004, 4810-2005, 4810-3003, 4810-3004, 4810-3005

講義内容

授業科目 担当教員 講義内容
4810-1103
自然言語処理システム論
Advanced Natural Language Processing
相澤 彰子, 宮尾 祐介 人間の言語をコンピュータで処理するための基礎理論、および最先端の技術や研究動向を論文輪読を通して学ぶ。
本講義は2名の教員で担当し、輪読形式で行う。
自然言語処理の以下の分野について、代表的な論文や最近の国際会議の論文について輪読を行う。
- 構文解析
- 文生成・機械翻訳
- 機械読解・質問応答
- 情報検索
- その他自然言語処理技術
具体的な論文の割り当てやスケジュールは、講義の開始後に登録者を確認の上、担当教員から連絡する。
4810-1180
ソフトウェアのテストと検証
Software Testing and Verification
萩谷 昌己
田辺 良則
This short course focuses on methodologies for software testing and verification. It consists of 6 lectures, each with an assignment. Students will be given a one-unit credit if they submit reports for those assignments.
1. Introduction and software testing
white box testing, black box testing, triangle example, unit testing, JUnit
2. Assertion and property-based testing
assertion, property-based testing, QuickCheck, ScalaCheck
3. Model-based testing
model-based testing, Modbat
4. Software model checking
software model checking, Java PathFinder (JPF)
5. Basic model checking
model checking, SPIN, temporal logic, linear temporal logic (LTL)
6. Software model checking by linear temporal logic
JPF+LTL
4810-1111
アルゴリズム論
Algorithmics
今井 浩 大学院のアルゴリズム入門講義として、縦軸に乱択アルゴリズムをすえ、横軸に基本的な問題から応用分野のものまでを対象に、アルゴリズムの設計と解析そして計算量理論について講究する。
1. 乱択アルゴリズム入門
2. 乱択アルゴリズムと計算量
3. ゲーム理論と乱択アルゴリズム
4. 確率不等式と乱択アルゴリズムへの適用1
5. 確率不等式と乱択アルゴリズムへの適用2
6. 確率的方法
7. マルコフ連鎖とランダムウォーク1
8. マルコフ連鎖とランダムウォーク2
9. 代数的手法1
10. 代数的手法2
11. 近似数え上げ
12. 応用問題
4810-1130
メディア情報学
Multimedia Interface
五十嵐 健夫 HCI(human-computer-interaction)分野の最近の論文を輪講形式で読む。 HCIの 最近のトピックスに関する見識を深めるとともに、英語の論文読解、発表・議論 の訓練を行う。
第1週 ガイダンス
第2週~最終週前週 輪講
最終週 課題成果発表
4810-1109
計算機言語システム論
Programming Language Systems
小林 直樹 計算モデル、型システムなどのプログラミング言語の基礎理論と、その言語処理系、プログラム検証などへの応用について、最新のトピックを交えながら解説する。今年度は特に、並行計算モデルに焦点を当て、並行計算の代表的なモデルであるCCS、π計算をとりあげ、操作的意味、仕様記述のための様相論理、検証手法(双模倣、モデル検査、型システム)、セキュリティプロトコルへの応用などについて概説する。
1. 導入
2. 並行計算モデル(CCS)
3. プロセス等価性
4. 様相論理
5. モデル検査
6. π計算
7. 並行計算の型システム
8. spi計算とセキュリティプロトコル
9. プロトコル検証
10. 並行計算やプログラム等価性に関するその他の話題
4810-1115
並列数値計算論
Parallel Numerical Computations
須田 礼仁 並列処理を中心とした高性能な計算環境における数値計算のアルゴリズムと手法について講究する。
・並列計算の手法と性能
・高性能数値アルゴリズム
Lectures numerical algorithms and methods for parallel and high performance computing systems.
・Parallel processing methods and performance
・High performance numerical algorithms
1. Architecture and performance
2. Dependency
3. Locality
4. Scheduling
5. MPI
6. Collective communication
7. Distributed data structure
8. Supercomputer How To
9. OpenMP
10. Cache performance
11. Dynamic parallelism
12. GPU and CUDA
13. SIMD performance
4810-1123
計算生物物理
Computational Biophysics
清水 謙多郎 バイオインフォマティクスおよび計算生物物理の最新のトピックスのいくつかについて、それらの理論と応用を理解する。
4月16日 清水 謙多郎 「タンパク質相互作用予測と膜タンパク質構造の比較解析」
4月23日 池口 満徳 「生体系の分子シミュレーション」
5月7日 高橋 広夫 「バイオインフォマティクスによる動植物オミクス解析」
5月14日 川端 猛 「電顕マップと原子モデルのフィッティング」
5月21日 東 光一 「Hi-C法による染色体の高次構造解析」
5月28日 坊農 秀雅 「データベースを活用した知のめぐりのよい生命科学データ解析」
4810-1149
配列解析アルゴリズム特論
Algorithms for Sequence Analysis
渋谷 哲朗 文字列アルゴリズムについて極める!
前半で文字列アルゴリズム(文字列探索アルゴリズム・検索アルゴリズム・圧縮アルゴリズム他)を網羅的に学習した後、後半で、それらの応用として、生物配列情報の解析アルゴリズムなどを紹介する。
4810-1124
DNA情報解析特論
DNA Information Analysis
宮野 悟
井元 清哉
4810-1132
ゲノム機能情報解析特論
Information Analysis for Functional Genomics
中井 謙太
Patil Ashwini Ajay
授業の目標・概要*必須
(Course Objectives/Overview) 多細胞生物の個々の細胞は各々がその個体全体に関する生物学的全情報(ゲノム情報)を保有しているが、その情報はDNAの分子構造(塩基配列)という形で記録され、そこに構造情報が遺伝暗号によって記載された種々のタンパク質が主要な生命現象を司っている。本講義は、ゲノム情報とはいかなるもので、どのような情報がどのような形で書かれているのか、ゲノムの塩基配列やタンパク質のアミノ酸配列・三次元立体構造からどこまで機能情報が読み取られているのか、などの疑問に、なるべく予備知識を要求しないで答えていくことで、受講者にゲノム情報のコンピュータ解析(バイオインフォマティクス)の入門的な理解を与えることを目標としている。
1 ゲノム生物学入門
ゲノムの情報 (4/10)、バイオテクノロジー (4/17)
分子生物学データベース (4/24)
2 ゲノム配列解析
アラインメントとホモロジー検索 (5/8)、
進化解析(5/15)、遺伝子発見 (5/22)
3 ポストゲノム時代の情報解析
トランスクリプトーム・エピゲノム解析 (5/29)、転写制御領域の配列解析 (6/5)
システム生物学 (6/12)
4 タンパク質の情報科学 (in English)
Single-cell transcriptomics,
introductions to Proteins (6/19)、
Protein structure determination,
prediction and databases(6/26)
Protein function and interactions (7/3)
4810-1142
プログラミング代数特論
Algebra of Programming
高野 明彦
4810-1163
先端アルゴリズム論
Advanced Algorithms
今井 浩
渋谷 哲朗
A graduate-school-level course on advanced algorithms such as randomized algorithms, string algorithms, algebraic algorithms, etc.
1, Guidance/Introduction
2. Algebraic Algorithm I (basic algorithms)
3. Algebraic Algorithm II (number-theoretic algorithms)
4. Algebraic Algorithm III (advanced number-theoretic algorithms)
5. Algebraic Techniques I (finger print, fundamental applications)
6. Algebraic Techniques II (interactive proof)
7. String Algorithms I
8. String Algorithms II
9. String Algorithms III
10. Advanced Topics I
11. Advanced Topics II
12. Advanced Topics III
4810-1166
量子計算論
Introduction to Quantum Computation
Raymond Rudy This course gives introduction to the theory and applications of quantum computing. The course covers broad topics ranging from the basics of quantum mechanics and quantum algorithms (e.g., the Shor's prime factorization and the Grover's search) to recent advances of algorithms for noisy intermediate-scale quantum devices as well as their possible applications in machine learning and optimization. The course also introduces how to implement quantum algorithms using open-source framework of quantum computing.
1. Introduction and Outline
2. Basics of Quantum Mechanics for Quantum Computing
3. Quantum Finite Automata
4. Quantum Bits, Gates, and Circuits
5. Programming Quantum Bits
6. Quantum Teleportation, Superdense Coding, and Random Access Coding
7. Quantum Algorithms: Deutsch-Jozsa and Bernstein-Vazirani
8. Quantum Algorithms: Grover Search and Applications
9. Quantum Algorithms: Simon and Shor
10. Programming Quantum Algorithms
11. Quantum Query and Communication Complexity
12. Noisy Intermediate-Scale Quantum Devices
13. Quantum Error Correction and Error Mitigation
14. Quantum Machine Learning and Optimization
15. Programming Noisy Intermediate-Scale Quantum Devices
4810-1169
戦略ソフトウェア特論
Strategic Software
稲葉 真理 社会基盤としての情報システムについて講究する。
前半は、公と社会基盤整備との関係、規格の定められ方を概観し、ネットワークシステムについて論ずる。
後半は、グラフアルゴリズムを簡単に紹介した後、巨大グラフについて論ずる。
1. 社会基盤としての通信
2. 規格と歴史
3. 計算と通信
4. グラフアルゴリズム
4810-1170
論文構成法
English Paper Writing
McDonald Michael James Students will learn how to write better technical papers and theses in English. Since most of the students will be using the structure IMRC (Introduction, Methods, Results, Conclusion), the course will emphasize the components of that specific structure and most of the class examples will be in that style. The motivation of a research paper will be clarified as the key claim (thesis) of the research.
1. Syllabus, Getting started
2. Ways to organize papers
3. Paragraphs
4. Titles
5. Abstracts
6. Introductions
7. Methods sections
8. Results sections
9. Conclusions/Discussions and miscellaneous
10. Describing actions and processes
11. Consistency
12. Coherence and sentence structures
13. Introduction to editing
14. Final examination
4810-1175
学際計算科学特論
Interdisciplinary Lecture in Scientific Computing
吉本 芳英 計算機科学を専門とする学生向けに、計算科学、すなわちコンピュータシミュレーションを活用する科学を理解するために必要な基礎知識について講義を行なう。
計算科学は大変広い分野であるが、その中から古典粒子系、古典場(電磁場、流体)の2分野と余裕があれば統計力学、量子力学の2分野を取り上げて、それぞれ基礎的な話題を扱う。大学教養課程における数学、物理、化学の知識の復習から解説を行なう。
以下から受講者の希望を考慮して話題を選択する
古典粒子系のシミュレーション
リウヴィルの定理、正準変換、シンプレクティック数値積分法、
多重極展開、Barns-Hutのtree algorithm、高速多重極展開法
流体力学のシミュレーション
ナビエ=ストークス方程式、流体の変形と粘性項、非圧縮流体、
最小の空間スケール、レイノルズ数、粗視化と物理モデル、SMAC法、SPH法
電磁気学のシミュレーション
Maxwell方程式、境界要素法、代用電荷法、FDTD法
統計力学のシミュレーション
等重率の原理とボルツマンの原理、カノニカルアンサンブル、メトロポリス法
統計誤差、温度一定の分子動力学、拡張アンサンブル法
量子力学のシミュレーション
シュレディンガー方程式、多体問題と密度汎関数法、Kohn-Sham方程式
擬ポテンシャル、平面波基底による実装
4810-1176
先端データ解析論
Advanced Data Analysis
杉山 将
本多 淳也
回帰,分類,次元削減,クラスタリング,異常検出などのデータ解析技術の基本的な考え方と数理的基礎,および,先端的なアルゴリズムを,最新のトピックを交えながら解説する.
最小二乗法、正則化、スパース回帰、ロバスト回帰、サポートベクトルマシン、ロジスティック回帰、ブースティング、主成分分析、判別分析、k平均クラスタリング、スペクトラル・クラスタリング
4810-1178
先端統計モデリング論
Advanced Statistical Modeling
佐藤 一誠
4810-1181
コンピュータアーキテクチャ特論
Advanced Computer Architecture
中田 登志之 To provide students of computer architecture with very hot topics on current computing platforms in order to make it possible to design modern computers
Starts on the 28th of September
Basic Concepts
Memory Hierarchy
Instruction-Level Parallelism
Data-Level Parallelism,
Thread-Level Parallelism
Request-Level Parallelism
4810-1182
オペレーティングシステム特論
Advanced Operating Systems
加藤 真平
千代 浩之
マルチコアやメニーコア、GPU、スパコン、クラウド環境向けのオペレーティングシステム技術についてLinuxカーネルを題材にして論じる。主な内容は、マルチコア資源管理、メニーコア資源管理、GPU資源管理、仮想マシン管理、分散ファイルシステム管理、およびその他の計算資源管理など。
第1回:オペレーティングシステムとLinuxカーネル(Linux設計と実装)[加藤 真平]
第2回:OS研究事例1(マルチコアのスケジューリングやメモリ管理など)[加藤 真平]
第3回:OS研究事例2(メニーコアのスケーラビリティなど)[加藤 真平]
第4回:OS研究事例3(GPUのドライバ実装やMMIO通信など)[加藤 真平]
第5回:Linuxカーネル1(プロセス管理)[加藤 真平]
第6回:Linuxカーネル2(スケジューラ実装)[加藤 真平]
第7回:Linuxカーネル3(ロック機構実装)[加藤 真平]
第8回:Linuxカーネル4(メモリ管理実装)[加藤 真平]
第9回:Linuxカーネル5(デバイスドライバ実装)[加藤 真平]
第10回:OS応用1(仮想マシン)[千代 浩之]
第11回:OS応用2(分散ファイルシステム)[千代 浩之]
第12回:OS応用3(ネットワークオンチップ)[千代 浩之]
第13回:OS応用4(高性能ネットワーク)[千代 浩之]
第14回:OS応用5(組込みリアルタイムシステム)[千代 浩之]
第15回:OS応用6(組込みリアルタイムシステム)[千代 浩之]
4810-1183
近似・オンラインアルゴリズムとその応用
Approximation and Online Algorithms with Applications
Suppakitpaisarn Vorapong In this class, we discuss basic concepts in algorithmics such as NP-hardness, approximation algorithms, and online algorithms. Then, we give examples how to apply them to practical research.
At the end of this class, students who are not familiar with these theoretical concepts are expected to learn their importance in practical point of views. On the other hands, students who are familiar with them are expected to gain more experiences on applying the concepts to practical settings.
本講義では、NP困難、近似アルゴリズム、オンラインアルゴリズムなどアルゴリズムを解析する理論の概要を説明し、機械学習や データベースなど応用分野に適用する事例を挙げる。
アルゴリズム論を勉強したことがない学生には理論的な解析の重要性を実感させ、勉強したことがある学生にはアルゴリズム論の応用を経験させることを目的としている。
Class 1: Linear Programming, Optimization Models
Class 2: NP-Hardness, Product Selection Problem
Approximation Algorithms
Class 3: Basic Definitions, Greedy Techniques
Class 4: Adaptive Bloom Filter
Class 5: Deterministic Rounding, Network Monitoring
Class 6: Randomized Rounding, Sparse PCA
Class 7: Exercises on Approximation Algorithms
Class 8: Inapproximability
Online Algorithms
Class 9: Basic Definitions
Class 10: Online Machine Learning
Class 11: Online Graph Algorithms
Class 12: Online Scheduling (Guest Lectures)
Class 13: Exercises on Inapproximability and Online Algorithms
4810-1184
情報セキュリティのためのアルゴリズム
Algorithms for Information Security and Privacy
Suppakitpaisarn Vorapong In this class, we discuss algorithms that use for speeding up systems for information security and privacy. Particularly, the class focuses on algorithms for elliptic curve cryptography, one of the most well-known cryptographic system. We also explain ideas behind discrete algorithms that can protect users' personal information in large-scale database.
本授業には、情報セキュリティ・情報プライバシーを保護するシステムを最速するアルゴリズムについて講義する。特に、セキュリティ技術の代表になっている楕円曲線暗号の実装アルゴリズムについて議論し、巨大データベースに入っている個人情報を保護する離散アルゴリズムを解説する。
Differential Privacy
Class 1: Notations, Laplacian mechanism
Class 2: Exponential mechanism, Composition theorem
Class 3: SmallDB algorithm
Class 4: PAC Learning, Private PAC Learning
Class 5: Other privacy techniques
Class 6: Exercises on information privacy
Elliptic Curve Cryptography
Class 7: Introduction to Abstract Algebra
Class 8: Calculation on elliptic curves, Diffie-Hellman Key Exchange Protocol
Class 9: Discrete logarithm problem
Class 10: Efficient algorithms
Class 11: Divisors
Class 12: Pairing-based cryptography
Class 13: Exercises on Ellliptic curve cryptography
4810-1185
ネットワーク最適化
Network Optimizations
Suppakitpaisarn Vorapong During this class, we discuss fundamental and state-of-the-art research results on network optimization. The class covers results on sensor networks and social networks. Network design algorithms and efficient algorithms for networks with several million nodes are also discussed during the class.
通信ネットワーク、センサーネットワークやソーシャルネットワークの効率を最適化するアルゴリズムを、基礎から最近の研究成果まで議論する講義である。ネットワークデサインアルゴリズムや数千万ノードがある巨大ネットワークを高速に最適化できるアルゴリズムも議論する。
Social Networks
Class 1: Graph Theory, Betweenness Centrality
Class 2: Graph Partitioning, Pagerank Centrality
Class 3: Graph Decomposition
Class 4: Submodular Function Optimization (I)
Class 5: Influence Maximization, LP Duality
Class 6: Exercises on Social Networks
Sensor Networks
Class 7: Submodular Function Optimization (II), Target Coverage Problem
Class 8: Garg-Konemann Framework (I)
Class 9: Garg-Konemann Framework (II)
Class 10: Semi-Definite Programming
Class 11: Network Localization Problem
Class 12: Guest Lecture
Class 13: Exercises on Sensor Networks
4810-1186
計算科学プログラミングI
Programming for Computational Science I
松本 正晴 計算科学とは,科学技術上の様々な問題に対して数値的なモデル化を施し,計算機シミュレーションによる評価を行う学問分野である。本講義では,座学とスーパーコンピュータによる実習を通じて,計算科学についての実践的な知識やプログラミング技術を身につけることを目的とする。特に,マルチコアCPUを搭載する計算機上での並列計算に関する知識・経験を習得する。
物理現象の偏微分方程式による記述とその特性や種類の解説,偏微分方程式の数値解法の1つである差分法を基にした支配方程式の離散化手法と計算精度,計算スキームアルゴリズムと数値安定性,数値計算ライブラリの解説などの他,並列計算を行うために必要となる知識として,マルチコア/メニーコアCPUを搭載する計算機アーキテクチャの特性,並列計算のためのMPI/OpenMPプログラミング手法,逐次計算/並列計算の高速化などについて学ぶ。
4810-1187
計算科学プログラミングII
Programming for Computational Science II
松本 正晴 計算科学とは,科学技術上の様々な問題に対して数値的なモデル化を施し,計算機シミュレーションによる評価を行う学問分野である。本講義では,「計算科学プログラミングI」に引き続き,座学とスーパーコンピュータによる実習を通じて,計算科学についての実践的な知識やプログラミング技術を身につけることを目的とする。特に,メニーコアアーキテクチャであるGPUを搭載する計算機上での並列計算に関する知識・経験を習得する。
GPU上で計算を行うために必要となる知識として、CPUをGPUで補うヘテロジニアスアーキテクチャとヘテロジニアス並列プログラミングへのパラダイムシフト、GPUをはじめとするアクセラレータ、メニーコアアーキテクチャの特性、並列計算のためのOpenACCやCUDA C/CUDA Fortranなどのプログラミング手法、GPUアクセラレーションライブラリ、MPI + OpenACC、MPI + CUDAなどのマルチGPUプログラミング手法などについて学ぶ。
4810-1188
計算科学における情報圧縮
Information Compression in Computational Science
山地 洋平
大久保 毅
現在の計算科学では、銀河のダイナミクスから量子ビット間のエンタングルメントまで多岐にわたる問題が研究対象となっている。これら多様な問題を計算機で扱う際には、対象系の巨大な自由度をいかに圧縮し、効率的に有限のメモリ内で表現するかが、共通する課題となる。とくに多体問題では、しばしば、構成要素数に対して指数関数的に自由度が増大するため、膨大な自由度をいかに扱うかが普遍的に重要な課題となってきた。現在では、天文や物理学、化学などの個々の科学分野での発展に加え、応用数理や量子情報からの知見を取り入れた情報圧縮手法が輒椶鮟犬瓩討い襦
本講義では、情報圧縮の基礎となる、スパース・モデリングやクリロフ部分空間法、よび、特異値分解等を用いた、行列・テンソルの低ランク近似の紹介から始め、物質科学や素粒子理論で自由度の効率的な圧縮に用いられている matrix product stateやそれを拡張した tensor network state、さらに、効率的な圧縮の背景にあるエンタングルメントの概念について学ぶ。
第1回: 現代物理学における巨大なデータ
第2回: 現代物理学と情報圧縮
第3回: 情報圧縮の数理1 (線形代数の復習)
第4回: 情報圧縮の数理2 (特異値分解と低ランク近似)
第5回: 情報圧縮の数理3 (スパース・モデリングの基礎)
第6回: 情報圧縮の数理4 (クリロフ部分空間法の基礎)
第7回: 物質科学における情報圧縮
第8回: データ解析の高速化:スパース・モデリングの物質科学への応用
第9回: データ空間の圧縮:クリロフ部分空間法の物質科学への応用
第10回: 高度なデータ圧縮:情報のエンタングルメントと行列積表現
第11回: 行列積表現の固有値問題への応用
第12回: テンソルネットワーク表現への発展
第13回: テンソルネットワーク繰り込みによる情報圧縮
4810-1189
視覚情報処理応用
Advanced Computer Vision
佐藤 いまり
4810-1177
研究倫理
Information Science and Technology Ethics
萩谷 昌己 現在の科学研究の望ましい進め方とその歴史的背景を説明した後、以下の課題について議論する。再現性のためのノート、記録・資料の取り方・保存仕方など、研究不正の定義(捏造、改ざん、剽窃、その他)とその実例、誰が論文の著書になるべきか(なってはいけないか)、重複パブリケーションについてのルール、利益相反、知的財産(主に特許)に関する倫理的課題、研究費申請及び論文査読の有り方、政府と研究機関の関係及び法律及び諸規則(予算執行、ハラスメント、安全、動物実験管理、野外調査など)の遵守の必要性、マスコミ対応とアウトリーチの適切なあり方など。なお、各専攻のニーズによって授業内容は多少異なる。
Best practices for conducting scientific research will be introduced, and the reasons the scientific community has adopted these procedures will be briefly covered. Appropriate methods of record-keeping and documentation, which are essential to ensure replicability of research results, will be explained. Research misconduct (fabrication, falsification, plagiarism and other forms of misconduct) will be defined and explained, and examples will be presented. Authorship of papers, the need to avoid dual publication, dealing with conflicts of interest, and issues related to intellectual property (mainly patents and copyrights) will be discussed. Issues involved in reviewing scientific papers and funding applications, and in applying for funding will also be discussed. The need for compliance with governmental and institutional regulations (governing usage of funds, harassment, safety, animal welfare, field surveys, etc.) will be covered. Appropriate procedures for dealing with the news media and the public when publicizing scientific research results will be briefly introduced. The material covered by this lecture may differ somewhat to match the needs of each Department.
日本語: 2コマ連続(105分 x 2、計210分、間に休憩)、その直後試験(20分程度)
English: Two conecutive periods (105 min x 2, Total 210 minutes, with a brief rest interval), followed immeditely by an examination (20 min).
4810-1215
計算科学アライアンス特別講義I
Special Lecture on Computational Science I
中島 研吾
4810-1216
計算科学アライアンス特別講義II
Special Lecture on Computational Science II
中島 研吾
4810-1207
コンピュータ科学特別講義IV
Seminar on Computer Science IV
枝廣 正人 テーマ:「マルチコア並列アルゴリズム」
いまやサーバからPC、組込み機器までマルチコア、メニーコア化している。プロセッサの動作周波数の伸びが飽和し、性能は並列によって向上させる時代になった。従ってアルゴリズムが並列対応され、プログラムが並列動作するように書かれていなければ、計算機の進歩に伴って性能向上するソフトウェアにはならない。本講義では、最近のマルチコアプロセッサにおいて動作させるための実用的なアルゴリズムについて扱う。新しい分野で今後伸びている分野であるが、講義では以下のようなトピックに関して、基礎と事例について紹介する。
・マルチコアプロセッサの基礎
・マルチコアプロセッサ向けアルゴリズムの基礎
・マルチコアプロセッサ向けアルゴリズムの事例
初回講義の際に指示する
4810-1208
コンピュータ科学特別講義 V
Seminar on Computer Science V
Nguyen Phong This course will present the fundamentals of cryptography and information security. We will explain widespread cryptographic algorithms such as: the DES block cipher, the RC4 stream cipher, the AES block cipher and the MD5 hash function. We will also explain the main hard problems used in public-key cryptography. We will discuss current trends, such as post-quantum cryptography and homomorphic encryption.
Every friday morning, 10:25 - 12:10. Room 214.
ISTyくん