コンピュータ科学

講義一覧(2022年度)/ Lecture List(2022AY)2022.9.07時点

2022年度研究科授業時間割(2022AY Graduate School Course Timetable)
共通科目コード(Common Subject Code)
研究科共通(Common Graduate School Subjects)
2022年度Aセメスターの講義の実施形態(2022AY Lecture Delivery Format for Semester A)

※○:本年度開講科目(2022AY Opening of Subjects)
科目番号/Code 科目名/Subject 担当教員/Instructor ターム/Term 単位/Credit 曜限/Schedule 時間/Time 講義室/Room 備考/Remark 重複履修制限/Restriction
4810-1103 自然言語処理システム論
Advanced Natural Language Processing
相澤 彰子 宮尾 祐介 A1A2 2 ※E
4810-1105 分散並列計算論
Parallel and Distributed Computing Systems
2 ※E 4860-1018(創造情報学専攻)
4860-1047(創造情報学専攻)
4810-1107 計算システム検証論
Verification of Computing Systems
2 ※E 4810-1180
4860-1019(創造情報学専攻)
4860-1041(創造情報学専攻)
0510101(理学部情報科学科)
4810-1180 ソフトウェアのテストと検証
Software Testing and Verification
A2 1 ※E 情 4810-1107
4860-1019(創造情報学専攻)
4860-1041(創造情報学専攻)
0510101(理学部情報科学科)
4810-1111 アルゴリズム論
Algorithmics
今井 浩 S1S2 2
4810-1128 分散システムソフトウェア
Distributed System Software
2 ※E
4810-1130 メディア情報学
Multimedia Interface
五十嵐 健夫 A1A2 2 4860-1073(創造情報学専攻)
4810-1109 計算機言語システム論
Programming Language Systems
小林 直樹 A1A2 2
4810-1113 コンピュータグラフィクス
Computer Graphics
2
4810-1115 並列数値計算論
Parallel Numerical Computations
須田 礼仁 S1S2 2 Mon 3 13:00-14:45 理7号館 007号教室 ※E 情 0510105(理学部情報科学科)
4810-1119 三次元画像処理特論
Three-Dimentional Image Processing
2 ※E 4840-1017(電子情報学専攻)
4915030(学際情報学府)
4810-1123 計算生物物理
Computational Biophysics
清水 謙多郎 S1 1 Mon 2 10:25-12:10 農学部2号館 化学第3講義室
4810-1149 配列解析アルゴリズム特論
Algorithms for Sequence Analysis
渋谷 哲朗 S1S2 2
4810-1124 DNA情報解析特論
DNA Information Analysis
井元 清哉 片山 琴絵 A1A2 2 Tue 2 10:25-12:10 理7号館 214号室
4810-1132 ゲノム機能情報解析特論
Information Analysis for Functional Genomics
中井 謙太 朴 聖俊 S1S2 2
4810-1140 エージェントシステム特論
Agent Systems
2
4810-1142 プログラミング代数特論
Algebra of Programming
A1A2 2
4810-1201 戦略ソフトウェア特別講義I
Seminar on Strategic Softwere I
集中 1
4810-1202 戦略ソフトウェア特別講義II
Seminar on Strategic Softwere II
集中 1
4810-1203 戦略ソフトウェア特別講義III
Seminar on Strategic Softwere III
通年(集中) 1
4810-1179 テキストメディア特論
Advanced Text Media Informatics
相澤 彰子 A1 1 4810-1153
4810-1154 実践システムソフトウェア
Practical System Software
2
4810-1155 実践コンピュータシステムI
Practical Computer Systems I
1
4810-1156 実践コンピュータシステムII
Practical Computer Systems II
1
4810-1163 先端アルゴリズム論
Advanced Algorithms
今井 浩 渋谷 哲朗 S1S2 2 Thu 3 13:00-14:45 ※E 情 0510106(理学部情報科学科)
4810-1164 コンピュータアーキテクチャとシステムソフトウェア
Modern Computer Architectures and System Software
2 ※E
4810-1171 実践英語対話表現演習I
Practical English Presentation Skill I
S1S2 1 Sat ※E 4810-1172
4810-1173
4810-1174
4810-1172 実践英語対話表現演習II
Practical English Presentation Skill II
1 ※E 4810-1171
4810-1173
4810-1174
4810-1165 通信理論のアルゴリズム的側面
Algorithmic Aspects of Communication
2 ※E 4810-1185
0510058(理学部情報科学科)
4810-1162 データ可視化論
Data Visualization
2
4810-1166 量子計算論
Introduction to Quantum Computation
Raymond Rudy 小野寺 民也 S1S2 2 Fri 5 16:50-18:35 理学部1号館東棟 285講義室(NSSOL Learning Studio) ※E 0510062(理学部情報科学科)
4810-1168 計算機システムの数理的意味論
Mathematical Semantics of Computer Systems
2 ※E
4810-1169 戦略ソフトウェア特論
Strategic Software
稲葉 真理 S1S2 2 4810-1144
4810-1145、 4810-1146、
4860-1013(創造情報学専攻)
4860-1014(創造情報学専攻)
4860-1053(創造情報学専攻)
4810-1170 論文構成法
Academic Writing in English
Whittaker Edward William Daniel A1A2 2 Tue 4 14:55-16:40 理7号館 214号室 修士課程:本学情報科学科出身者以外は原則履修
※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 47130-53(新領域)
4810-1178 先端統計モデリング論
Advanced Statistical Modeling
佐藤 一誠 S1S2 2 Wed 4 14:55-16:40 理7号館 214号室 47130-55(新領域)
4810-1181 コンピュータアーキテクチャ特論
Advanced Computer Architecture
中田 登志之 S1S2 2 Wed 2 10:25-12:10 理7号館 007号教室 ※E 情 0510061(理学部情報科学科)
4810-1182 オペレーティングシステム特論
Advanced Operating Systems
加藤 真平 A1A2 2 Mon 2 10:25-12:10 理7号館 214号室 ※E 情 0510060(理学部情報科学科)
4860-1080(創造情報学専攻)
4810-1183 近似・オンラインアルゴリズムとその応用
Approximation and Online Algorithms with Applications
Suppakitpaisarn Vorapong S1S2 2 Mon 5 16:50-18:35 理7号館 007号教室 ※E 情
4810-1184 情報セキュリティのためのアルゴリズム
Algorithms for Information Security and Privacy
Suppakitpaisarn Vorapong A1A2 2 ※E 情 0510063(理学部情報科学科)
4810-1185 ネットワーク最適化
Network Optimizations
Suppakitpaisarn Vorapong A1A2 2 Mon 3 13:00-14:45 理7号館 007号教室 ※E 情 0510058(理学部情報科学科)
4810-1165
4810-1186 計算科学プログラミングI
Programming for Computational Science I
S1S2 2
4810-1187 計算科学プログラミングII
Programming for Computational Science II
A1A2 2
4810-1188 計算科学における情報圧縮
Information Compression in Computational Science
A1A2 2 35603-0116(理学系)
3752-092(工学系)
47100-81(新領域)
35603-0126(理学系)
3752-094(工学系)
47100-98(新領域)
4810-1192
4810-1189 視覚情報処理応用
Advanced Computer Vision
佐藤 いまり A1A2 2 Wed 5 16:50-18:35 理7号館 007号教室
4810-1190 カスタムコンピューティング特論
Advanced Custom Computing
高前田 伸也 A1A2 2 Thu 2 10:25-12:10 理7号館 214号室 ※E
4810-1191 リモートセンシング画像解析
Remote Sensing Image Analysis
横矢 直人 A1A2 2 Mon 4 14:55-16:40 理7号館 214号室 ※E 47130-61(新領域)
4810-1192 計算科学・量子計算における情報圧縮
Data Compression in Computational Science and Quantum Computing
大久保 毅 藤堂 眞治 A1A2 2 Thu 3 13:00-14:45 理学部1号館東棟 285講義室(NSSOL Learning Studio) 35603-0116(理学系)
3752-092(工学系)
47100-81(新領域)
35603-0126(理学系)
3752-094(工学系)
47100-98(新領域)
4810-1188
4810-1193 自然言語処理応用
Applied Natural Language Processing
谷中 瞳 A1A2 2 Tue 5 16:50-18:35 理7号館 214号室
4810-1194 多体問題の計算科学
Computational Science for Many-Body Problems
大久保 毅 山地 洋平 S1S2 2 Tue 4 14:55-16:40 理学部1号館東棟 285講義室(NSSOL Learning Studio) 35603-0117(理学系)
3752-091(工学系)
47100-80(新領域)
4810-1195 「量子現象・量子論入門」初学者のための量子論
Introduction to Quantum Theory --- A lecture for beginners
清水 明 S1S2 2 Fri 2 10:25-12:10 理7号館 214号室 0510098(理学部情報科学科)
4810-1177 研究倫理
Information Science and Technology Ethics
今井 浩 通年 0.5 集中 0510801(理学部情報科学科)
4810-1215 計算科学アライアンス特別講義I
Special Lecture on Computational Science I
中島 研吾 S1S2 2 Wed 1 8:30-10:15 情報基盤センター 情報基盤センター1階大演習室2 ※E 4820-1027(数理情報学専攻)
3747-110(工学系)
4810-1204
4810-1216 計算科学アライアンス特別講義II
Special Lecture on Computational Science II
中島 研吾 A1A2 2 Wed 1 8:30-10:15 情報基盤センター 情報基盤センター1階大演習室2 ※E 4820-1028(数理情報学専攻)
4810-1205
4810-1217 計算科学アライアンス特別講義III
Special Lecture on Computational Science III
2
4810-1218 計算科学アライアンス特別講義IV
Special Lecture on Computational Science IV
2
4810-1219 計算科学アライアンス特別講義V
Special Lecture on Computational Science V
1
4810-1220 計算科学アライアンス特別講義VI
Special Lecture on Computational Science VI
1
4810-1221 計算科学アライアンス特別演習I
Practice on Computational Science I
1
4810-1222 計算科学アライアンス特別演習II
Practice on Computational Science II
1
4810-1204 コンピュータ科学特別講義I
Seminar on Computer Science I
2 ※E 4820-1027(数理情報学専攻)
3747-110(工学系)
4810-1215
4810-1205 コンピュータ科学特別講義II
Seminar on Computer Science II
2 ※E 4820-1028(数理情報学専攻)
4810-1216
4810-1206 コンピュータ科学特別講義III
Seminar on Computer Science III
CODOGNET Philippe A1A2 2 Thu 4 14:55-16:40 理7号館 007号教室 ※E 0510059(理学部情報科学科)
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
S1S2 2 ※E
4810-1210 コンピュータ科学特別講義VI
Seminar on Computer Science VI
Zoltán Porkoláb S1S2 1 集中 ※E 0510066(理学部)
4810-1211 コンピュータ科学特別講義VII
Seminar on Computer Science VII
須田 礼仁 Suppakitpaisarn Vorapong Zsók Viktória S1S2 1 集中 ※E
4810-1212 コンピュータ科学特別講義VIII
Seminar on Computer Science VIII
今井 浩 A1A2 1 Thu 5 16:50-18:35 理7号館 007号教室
4810-1213 コンピュータ科学プロジェクト研究I
Computer Science Project Reseach I
各教員 S1S2 3 集中 4810-2006
4810-2007
4810-3001
4810-3002
4810-2003
4810-2004
4810-2005
4810-3003
4810-3004
4810-3005
4810-1214 コンピュータ科学プロジェクト研究II
Computer Science Project Reseach II
各教員 A1A2 3 集中 4810-2006
4810-2007
4810-3001
4810-3002
4810-2003
4810-2004
4810-2005
4810-3003
4810-3004
4810-3005
4810-2006 コンピュータ科学修士輪講I
Computer Science Seminar(Master's Course)I
各教員 通年 1 集中 4810-1213
4810-1214
4810-2007 コンピュータ科学修士輪講II
Computer Science Seminar(Master's Course)II
各教員 通年 1 集中 4810-1213
4810-1214
4810-3001 コンピュータ科学修士特別研究I
Special Lectures in Computer Science(M'Course)I
各教員 通年 6 集中 4810-1213
4810-1214
4810-3002 コンピュータ科学修士特別研究II
Special Lectures in Computer Science(M'Course)II
各教員 通年 6 集中 4810-1213
4810-1214
4810-2003 コンピュータ科学博士輪講I
Computer Science Seminar(Doctoral Course)I
各教員 通年 2 集中 4810-1213
4810-1214
4810-2004 コンピュータ科学博士輪講II
Computer Science Seminar(Doctoral Course)II
各教員 通年 2 集中 4810-1213
4810-1214
4810-2005 コンピュータ科学博士輪講III
Computer Science Seminar(Doctoral Course)III
各教員 通年 2 集中 4810-1213
4810-1214
4810-3003 コンピュータ科学博士特別研究I
Special Lectures in Computer Science(D'Course)I
各教員 通年 4 集中 4810-1213
4810-1214
4810-3004 コンピュータ科学博士特別研究II
Special Lectures in Computer Science(D'Course)II
各教員 通年 4 集中 4810-1213
4810-1214
4810-3005 コンピュータ科学博士特別研究III
Special Lectures in Computer Science(D'Course)III
各教員 通年 4 集中 4810-1213
4810-1214

※科目番号下にある“※E”は、原則として英語で行う講義を表す。
※備考欄内「情」は、教育職員免許法の免許教科『情報』の教科に関する認定科目。
※次の科目同士は、開講年度が異なっても、両方の履修は認められない。
4810-1105「分散並列計算論」と4860-1018(創造情報学専攻), 4860-1047(創造情報学専攻)
4810-1107「計算システム検証論」と4810-1180, 4860-1019(創造情報学専攻), 4860-1041(創造情報学専攻), 0510101(理学部情報科学科)
4810-1180「ソフトウェアのテストと検証」と4810-1107, 4860-1019(創造情報学専攻), 4860-1041(創造情報学専攻), 0510101(理学部情報科学科)
4810-1130「メディア情報学」と4860-1073(創造情報学専攻)
4810-1115「並列数値計算論」と0510105(理学部情報科学科)
4810-1119「三次元画像処理特論」と4840-1017(電子情報学専攻), 4915030(学際情報学府)
4810-1179「テキストメディア特論」と4810-1153
4810-1163「先端アルゴリズム論」と0510106(理学部情報科学科)
4810-1171「実践英語対話表現演習I」と4810-1172, 4810-1173, 4810-1174
4810-1172「実践英語対話表現演習II」と4810-1171, 4810-1173, 4810-1174
4810-1165「通信理論のアルゴリズム的側面」と4810-1185, 0510058(理学部情報科学科)
4810-1166「量子計算論」と0510062(理学部情報科学科)
4810-1169「戦略ソフトウェア特論」と4810-1144, 4810-1145、 4810-1146、, 4860-1013(創造情報学専攻), 4860-1014(創造情報学専攻), 4860-1053(創造情報学専攻)
4810-1170「論文構成法」と0510027(理学部情報科学科)
4810-1176「先端データ解析論」と47130-53(新領域)
4810-1178「先端統計モデリング論」と47130-55(新領域)
4810-1181「コンピュータアーキテクチャ特論」と0510061(理学部情報科学科)
4810-1182「オペレーティングシステム特論」と0510060(理学部情報科学科), 4860-1080(創造情報学専攻)
4810-1184「情報セキュリティのためのアルゴリズム」と0510063(理学部情報科学科)
4810-1185「ネットワーク最適化」と0510058(理学部情報科学科), 4810-1165
4810-1188「計算科学における情報圧縮」と35603-0116(理学系), 3752-092(工学系), 47100-81(新領域), 35603-0126(理学系), 3752-094(工学系), 47100-98(新領域), 4810-1192
4810-1191「リモートセンシング画像解析」と47130-61(新領域)
4810-1192「計算科学・量子計算における情報圧縮」と35603-0116(理学系), 3752-092(工学系), 47100-81(新領域), 35603-0126(理学系), 3752-094(工学系), 47100-98(新領域), 4810-1188
4810-1194「多体問題の計算科学」と35603-0117(理学系), 3752-091(工学系), 47100-80(新領域)
4810-1195「「量子現象・量子論入門」初学者のための量子論」と0510098(理学部情報科学科)
4810-1177「研究倫理」と0510801(理学部情報科学科)
4810-1215「計算科学アライアンス特別講義I」と4820-1027(数理情報学専攻), 3747-110(工学系), 4810-1204
4810-1216「計算科学アライアンス特別講義II」と4820-1028(数理情報学専攻), 4810-1205
4810-1204「コンピュータ科学特別講義I」と4820-1027(数理情報学専攻), 3747-110(工学系), 4810-1215
4810-1205「コンピュータ科学特別講義II」と4820-1028(数理情報学専攻), 4810-1216
4810-1206「コンピュータ科学特別講義III」と0510059(理学部情報科学科)
4810-1210「コンピュータ科学特別講義VI」と0510066(理学部)
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-2006「コンピュータ科学修士輪講I」と4810-1213, 4810-1214
4810-2007「コンピュータ科学修士輪講II」と4810-1213, 4810-1214
4810-3001「コンピュータ科学修士特別研究I」と4810-1213, 4810-1214
4810-3002「コンピュータ科学修士特別研究II」と4810-1213, 4810-1214
4810-2003「コンピュータ科学博士輪講I」と4810-1213, 4810-1214
4810-2004「コンピュータ科学博士輪講II」と4810-1213, 4810-1214
4810-2005「コンピュータ科学博士輪講III」と4810-1213, 4810-1214
4810-3003「コンピュータ科学博士特別研究I」と4810-1213, 4810-1214
4810-3004「コンピュータ科学博士特別研究II」と4810-1213, 4810-1214
4810-3005「コンピュータ科学博士特別研究III」と4810-1213, 4810-1214

講義内容

授業科目 担当教員 講義内容
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月11日 門田 幸二「遺伝子発現解析のバイオインフォマティクス」
4月18日 川端 猛「電顕からの原子モデリングの情報処理 ‐混合正規分布モデルの適用‐」
4月25日 河野 秀俊「核内DNA動態と遺伝子発現制御」
5月2日 中村 周吾「機械学習・深層学習の方法概論と生命科学への応用」
5月9日 池口 満徳「生命系の分子シミュレーション」
5月16日 関嶋 政和「シミュレーションと機械学習による創薬支援手法とその応用」
5月23日 池谷 鉄兵「NMRデータと計算化学的手法を用いたタンパク質の立体構造・ダイナミクス解析」
4810-1124
DNA情報解析特論
DNA Information Analysis
井元 清哉 片山 琴絵 近年のゲノム科学の進展や生体分子測定技術の進歩によって個人のゲノムシークエンスに加え、RNAやタンパク質といったさまざまなゲノム由来物質を網羅的に測定出来るようになってきました。それら細胞内のさまざまな物質が複雑なネットワークを構成して、私たちの体の恒常性は保たれています。このネットワークは、個人のゲノムの違いや生活環境や習慣の違いによって少しずつ異なり、ウイルスの暴露や加齢などの要因によりシステムのバランスが乱れ、その破綻がいわゆる疾患として現れることになります。これまで生命科学は、この生命の理解に対して事例の積み上げるという博物学に近い戦略を多くはとってきましたが、膨大なパターンを前には明らかな限界がありました。現在私たちはこの複雑なシステムを解明する大きなパラダイム転換の時期にきています。この講義では、ヒトゲノムの多様性や細胞の分子ネットワークについて、その恒常性と破綻がどのように疾患に影響するか最新の研究成果を交えて講義します。また、ヒトの高次機能は、ヒトゲノム由来の物質のみから成っているわけではなく、ヒトに共生する細菌叢(メタゲノム)がさまざまな部分を補いながら全体のネットワークを構築しています。このような拡大されたヒト全体についても講義します。
1.ヒトゲノムと統計的データ解析
2.ヒトゲノムの多様性とデータ解析による疾患関連遺伝子の同定
3.ヒトゲノムシークエンスデータの解析技術と解析インフラ
4.データ解析によるがんゲノム変異の同定とゲノム医療
5.感染症のゲノム解析
6.一細胞シークエンスデータの解析
7.システム生物学入門
8.生命システムネットワークを予測する方法
9.生命システムネットワークの多様性解析
10.ヒト免疫とがんのシステム解析
11.生命システムネットワークのシミュレーションモデル
12.腸内細菌叢の解析
13.腸内ウイルス叢の解析
14.腸内細菌叢パスウェイ解析
15.ヒトゲノム、腸内細菌叢、生活習慣の統合解析
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
13. Advanced Topics IV
4810-1171
実践英語対話表現演習I
Practical English Presentation Skill I
本講義には、英語で学術的なプレセンテーションのやり方について議論する。コンピュータ科学専攻修士課程入学者が原則的に履修する必要である。
We will discuss how to make an academic presentation during this course. This course is a mandatory course for all master students at Department of Computer Science.
上述したように、基本的に連続した4回の土曜日を利用して開講される集中講義である。開講日程は:
6月4日(土)、6月11日(土)、6月18日(土)、6月25日(土)
を予定している。11日、18日、25日の講義はハイブリッド形式で行い、オンラインか対面で参加できるようにする。
This is an intensive course held on successive Saturdays (4 lectures) as mentioned above. The classes will be held on the Saturdays as below ;
June 4th, June 11th, June 18th, June 25th
Classes on June 11th, June 18th, and June 25th will be hybrid classes. Student can participate both online and in-person.
4810-1166
量子計算論
Introduction to Quantum Computation
Raymond Rudy 小野寺 民也 This course gives introduction to quantum computing with near-term quantum devices. The course covers broad topics ranging from the basics of quantum algorithms to recent advances of quantum algorithms for noisy 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 of Quantum Computing
2. Basics of Quantum Mechanics for Quantum Computing
3. Quantum Bits, Gates, and Circuits
4. Quantum Teleportation, Superdense Coding, and Random Access Coding
5. Quantum Algorithms: Deutsch-Jozsa and Bernstein-Vazirani
6. Quantum Algorithms: Grover Search and Applications
7. Quantum Algorithms: Quantum Fourier Transform and Phase Estimation
8. Quantum Hardware and Pulse Programming (1)
9. Quantum Hardware and Pules Programming (2)
10. Optimization of Quantum Circuits
11. Simulating Quantum Circuits
12. Quantum Algorithms for Optimization
13. Quantum Algorithms for Machine Learning
14. Quantum Algorithms for Chemistry
15. Presentation of Group Projects
4810-1170
論文構成法
Academic Writing in English
Whittaker Edward William Daniel This class will teach you how to plan and do research in Computer Science, as well as how to structure and write a research paper for publication in English-language conference proceedings and journals.
In particular, we will look at how planning and performing your research affects how you should structure and write your paper and why considering both together early on can make both tasks easier.
We will discuss how to increase your chances of acceptance and how to improve your paper based on feedback and formal reviews.
The class assumes proficiency in English reading and writing. It does not aim to be an English language class. Moreover, improvement in writing comes from actually writing, so the course will have a significant in-class practical aspect: students should be prepared to write and discuss their work in-class and in English.
The class will be useful for computer science students and researchers, whether native English speakers or not, who have possibly read many research papers in their field but never written one themselves. The class will be particularly beneficial for students who have already started to do research or at least know in which area they plan to do research.
1. Introduction to the Lecturer and the Course
2. Starting to Write
3. Completing the Front Matter
4. The Research Process (part one) - The Research Process and Hypotheses
5. The Research Process (part two) - Research Questions and Types of Evidence
6. The Research Process (part three) - Data Selection, Experiments and Measurements
7. The Introduction and Literature Review, Citations and Bibliography
8. Results and Discussion, Conclusions and Abstract
9. Style - Content and Language
10. Style - Content and Formatting
11. Graphs and Tables, Ethics, Editing and Proof-Reading
12. Guest Lecture (schedule subject to change)
13. Individual feedback on trial academic paper writing
4810-1175
学際計算科学特論
Interdisciplinary Lecture in Scientific Computing
吉本 芳英 計算機科学を専門とする学生向けに、計算科学、すなわちコンピュータシミュレーションを活用する科学を理解するために必要な基礎知識について講義を行なう。
計算科学は大変広い分野であるが、その中から古典粒子系、古典場(電磁場、流体)の2分野と余裕があれば統計力学、量子力学の2分野を取り上げて、それぞれ基礎的な話題を扱う。大学教養課程における数学、物理、化学の知識の復習から解説を行なう。
以下から受講者の希望を考慮して話題を選択する
古典粒子系のシミュレーション
リウヴィルの定理、正準変換、シンプレクティック数値積分法、
多重極展開、Barns-Hutのtree algorithm、高速多重極展開法
流体力学のシミュレーション
ナビエ=ストークス方程式、流体の変形と粘性項、非圧縮流体、
最小の空間スケール、レイノルズ数、粗視化と物理モデル、SMAC法、SPH法
電磁気学のシミュレーション
Maxwell方程式、境界要素法、代用電荷法、FDTD法
統計力学のシミュレーション
等重率の原理とボルツマンの原理、カノニカルアンサンブル、メトロポリス法
統計誤差、温度一定の分子動力学、拡張アンサンブル法
量子力学のシミュレーション
シュレディンガー方程式、多体問題と密度汎関数法、Kohn-Sham方程式
擬ポテンシャル、平面波基底による実装
講義計画の例
(1) はじめに、計算機科学からみた計算科学、数学的基礎
(2) 古典粒子系のシミュレーション: 解析力学、リウヴィルの定理
(3) 古典粒子系のシミュレーション: 正準変換、シンプレクティック数値積分法
(4) 統計力学のシミュレーション: カノニカルアンサンブル、メトロポリス法
(5) 統計力学のシミュレーション: 統計誤差、単原子分子での例
(6) 古典粒子系のシミュレーション: 力場計算の高速化、多重極展開1
(7) 古典粒子系のシミュレーション: 多重極展開2
(8) 古典粒子系のシミュレーション: Barns-Hutのtree algorithm、高速多重極展開法
(9) 統計力学のシミュレーション: 温度一定の分子動力学
(10) 統計力学のシミュレーション: 拡張アンサンブル法
(11) 連続体のシミュレーションの数学的基礎
(12) 電磁気学のシミュレーション: 境界要素法、代用電荷法、FDTD法
(13) 流体力学のシミュレーション: SMAC法、SPH法
4810-1178
先端統計モデリング論
Advanced Statistical Modeling
佐藤 一誠 機械学習における統計モデリングの深い理解を目指して、そのモデリングを先端的な理論に基づき解析する方法について説明する。また、その背景となる数学の知識を身につけることを目標とする。
第1回:授業ガイダンス
第2回:学習の統計モデリング
第3回:最も単純な学習モデルの理論解析1
第4回:最も単純な学習モデルの理論解析2
第5回:最も単純な学習モデルの理論解析3
第6回:スパースモデルの理論解析
第7回:サポートベクターマシンの理論解析
第8回:ブースティングの理論解析
第9回:ベイズモデリングの基礎とPAC Bayes理論
第10回:PAC Bayesに基づく深層学習モデルの理論解析1
第11回:PAC Bayesに基づく深層学習モデルの理論解析2
第12回:再生核ヒルベルト空間とカーネル法の基礎
第13回:再生核ヒルベルト空間とカーネル法の基礎
第14回:ガウス過程の理論解析
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
Fundamentals of Quantitative Design and Analysis(1/2)
Defining Computer Architecture, Trends in Technology, Power, Cost
Fundamentals of Quantitative Design and Analysis(2/2)
Dependability, Performance, Quantitative Principle of Computer Design
Memory Hierarchy(1/2)
Memory Technology and Optimizations, Optimization of Cache Performance
Memory Hierarchy(2/2)
Virtual Memory and Virtual Machines
Instruction-Level Parallelism(1/3)
Concepts and Challenges, Compiler Techniques for Exploiting ILP, Branch Prediction
Instruction-Level Parallelism(2/3)
Dynamic Scheduling, Hardware Based Speculation,
Instruction-Level Parallelism(3/3)
Exploiting ILP using Multiple Issue and Static Scheduling / Dynamic Scheduling and Speculation
Data-Level Parallelism(1/2)
Vector Architectures
Data-Level Parallelism(2/2)
SIMD Architectures / GPGPUs
Thread-Level Parallelism(1/2)
Centralized Shared-Memory Architectures
Thread-Level Parallelism(2/2)
Distributed Shared-Memory and Directory Based Coherence, Synchronization, Memory Consistency
Warehouse Scale Computers (1/1)
Data Center Architectures / Cloud
Domain-Specific Architectures(1/1)
Guide Lines for DSAs, Deep Neural Networks, Tensor Processing Unit
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
Class 3: Product Selection Problem
Approximation Algorithms
Class 4: Basic Definitions, Greedy Techniques
Class 5: Adaptive Bloom Filter
Class 6: Deterministic Rounding, Network Monitoring
Class 7: Randomized Rounding
Class 8: Sparse PCA
Class 9: Exercises on Approximation Algorithms
Class 10: Inapproximability
Online Algorithms
Class 11: Basic Definitions
Class 12: Online Machine Learning
Class 13: Online Graph Algorithms
Class 14: Online Scheduling (Guest Lectures)
Class 15: Exercises on Inapproximability and Online Algorithms
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: Basic Graph Theory
Class 2: Betweenness Centrality
Class 3: Graph Partitioning, Pagerank Centrality
Class 4: Tree Decomposition
Class 5: Submodular Function Optimization (I)
Class 6: Influence Maximization, LP Duality
Class 7: Exercises on Social Networks
Class 8: Guest Lecture
Sensor Networks
Class 9: Submodular Function Optimization (II), Target Coverage Problem
Class 10: Garg-Konemann Framework (I)
Class 11: Garg-Konemann Framework (II)
Class 12: Primal-Dual Optimization Framework
Class 13: Semi-Definite Programming
Class 14: Network Localization Problem
Class 15: Exercises on Sensor Networks
4810-1189
視覚情報処理応用
Advanced Computer Vision
佐藤 いまり
4810-1190
カスタムコンピューティング特論
Advanced Custom Computing
高前田 伸也 コンピュータシステムの更なる高性能化・効率化のためには、アプリケーションドメインに特化したハードウェアおよびソフトウェアを活用するカスタムコンピューティングが重要である。本講義では、カスタムコンピューティングを行う際に必要となるコンピュータアーキテクチャに関する知識と、高度なアプリケーションを実現するためのハードウェア、ソフトウェア、アルゴリズムに関する技術を、アクセラレータ・ハードウェア開発を通じて習得する。
Custom computing, which effectively utilizes domain-specific hardware and software, is a crucial approach for further performance and efficiency improvements of computer systems. In this lecture, you will learn the fundamental knowledge of computer architecture for custom computing. You will then earn various hardware, software, and system-aware algorithm techniques for realizing advanced applications via the development of an accelerator hardware.
(1) カスタムコンピューティング導入: コンピュータアーキテクチャの基礎、性能評価指標
(2) 並列処理と性能モデル: アムダールの法則、グスタフソンの法則、ルーフラインモデル、スケーリング
(3) 並列アーキテクチャ: SIMD、マルチコア、GPU
(4) ディジタル回路設計: 組み合わせ回路、順序回路、有限状態機械、メモリ回路
(5) FPGAの原理と構成: FPGAアーキテクチャ、論理合成、配置配線
(6) ハードウェア記述言語と高位合成ツール: Verilog HDL、Vitis HLS、Veriloggen
(7) ハードウェアアルゴリズムとシストリックアレイ: ソーティング、行列積、Google TPU
(8) ドメイン特化アーキテクチャ: DNNの基礎、DNNアクセラレータ
(9) ドメイン特化アーキテクチャのメモリシステム: スクラッチパッドメモリ、データ転送、データ再利用
(10) ハードウェアとアルゴリズムの協調設計: ハードウェア指向機械学習アルゴリズム
(11) DNNアクセラレータの開発: 基礎編
(12) DNNアクセラレータの開発: 発展編
(13) DNNアクセラレータの開発: 発表
(1) Introduction of Custom Computing: Computer architecture basics, Performance evaluation metrics
(2) Parallel Processing and Performance Model: Amdahl's law, Gustafson's law, Roofline model, Scaling
(3) Parallel Architecture: SIMD, Multithread, GPU
(4) Digital Circuit Design: Combinational circuit, Sequential circuit, Finite state machine, Memory circuit
(5) FPGA Fundamentals: FPGA Architecture, Logic synthesis, Place and route
(6) Hardware Description Language and High-Level Synthesis Tool: Verilog HDL, Vitis HLS, Veriloggen
(7) Hardware Algorithm and Systolic Array: Sorting, Matrix multiplication, Google TPU
(8) Domain-Specific Architecture: DNN basics, DNN accelerator
(9) Memory System for Domain-Specific Architecture: Scratchpad memory, Data transfer, Data reuse
(10) Hardware/Algorithm Co-design: Hardware-oriented machine learning algorithm
(11) DNN Accelerator Development: Basics
(12) DNN Accelerator Development: Advanced
(13) DNN Accelerator Development: Presentation
4810-1191
リモートセンシング画像解析
Remote Sensing Image Analysis
横矢 直人 リモートセンシング画像解析の基礎と最新動向を学ぶことを目的とする
/Learn the basics and latest trends of remote sensing image analysis
1. Introduction
2. Digital image processing
3. Optical remote sensing
4. SAR remote sensing
5. Scene classification
6. Image restoration
7. Resolution enhancement
8. Semantic segmentation I
9. Semantic segmentation II
10. Spectral unmixing
11. 3D reconstruction
12. Change detection
13. Advanced applications
4810-1192
計算科学・量子計算における情報圧縮
Data Compression in Computational Science and Quantum Computing
大久保 毅 藤堂 眞治 現在の計算科学では、銀河のダイナミクスから量子ビット間のエンタングルメントまで多岐にわたる問題が研究対象となっている。これら多様な問題を計算機で扱う際には、対象系の巨大な自由度をいかに圧縮し、効率的に有限のメモリ内で表現するかが、共通する課題となる。とくに多体問題では、しばしば、構成要素数に対して指数関数的に自由度が増大するため、膨大な自由度をいかに扱うかが普遍的に重要な課題となってきた。現在では、天文や物理学、化学などの個々の科学分野での発展に加え、応用数理や量子情報からの知見を取り入れた情報圧縮手法が注目を集めている。本講義では、情報圧縮の基礎となる線形代数、特に特異値分解等を用いた、行列・テンソルの低ランク近似の紹介から始め、物質科学や素粒子理論で自由度の効率的な圧縮に用いられている行列積状態それを拡張したテンソルネットワーク状態、効率的な圧縮の背景にあるエンタングルメントの概念、さらにはテンソルネットワークの量子計算への応用について学ぶ。
In today's computational science, various problems ranging from galaxy dynamics to entanglement between qubits are being studied. When dealing with these problems on a (classical) computer, a common issue is how to compress the vast degrees of freedom of the target problem and efficiently represent them in a finite memory. In particular, in many-body problems, the number of degrees of freedom often increases exponentially with the number of components, so how to handle the vast number of degrees of freedom has become a universally important issue. Nowadays, in addition to developments in individual scientific fields such as astronomy, physics, and chemistry, data compression methods that incorporate knowledge from applied mathematics and quantum information are attracting attention. In this lecture, we introduce linear algebra, especially low-rank approximation of matrices and tensors using singular value decomposition, which is the basis of data compression. Then, we discuss matrix product state and its generalization, i.e., tensor network state, which are used to efficiently compress degrees of freedom in material science and particle theory, the concept of entanglement in the background, and the application of tensor network to the quantum computing.
・ 第1回: 計算科学・量子計算と情報圧縮
・ 第2回: 線形代数の復習
・ 第3回: 特異値分解
・ 第4回: 特異値分解のテンソルへの拡張+応用
・ 第5回: 情報のエンタングルメントと行列積表現
・ 第6回: 行列積表現の固有値問題への応用
・ 第7回: テンソルネットワーク表現への発展
・ 第8回: テンソルネットワークにおける情報圧縮
・ 第9回: テンソルネットワーク繰り込み群
・ 第10回: 量子力学と量子計算
・ 第11回: 量子コンピュータ・シミュレーション
・ 第12回: 量子古典ハイブリッドアルゴリズムとテンソルネットワーク
・ 第13回: 量子誤り訂正とテンソルネットワーク
#1: Computational science, quantum computing, and data compression
#2: Review of linear algebra
#3: Singular value decomposition
#4: Application of singular value decomposition to tensor network
#5: Entanglement of information and matrix product state
#6: Application of matrix product state to eigenvalue problems
#7: Tensor network representation
#8: Data compression in tensor network
#9: Tensor network renormalization group
#10: Quantum mechanics and quantum computation
#11: Simulation of quantum computers
#12: Quantum-classical hybrid algorithms and tensor network
#13: Quantum error correction and tensor network
4810-1193
自然言語処理応用
Applied Natural Language Processing
谷中 瞳 自然言語処理の基礎理論を俯瞰し、自然言語処理を用いた技術開発および実社会応用を学ぶ。グループ課題としてのプロダクト開発を通して、実社会において自ら自然言語処理を用いたプロダクトを開発し、課題を解決することができる知識と技術の習得を目指す。また、現在、リモートでのチーム開発の重要性が高まっている。本講義では、可能な限りリモート環境でのチーム開発に関する座学・演習を取りいれていく。
1. イントロダクション:自然言語処理の最近のトピックの紹介・論文の読み方の説明・チーム作成
2. ゲスト講師による講演1(基礎技術)
3. テキストデータの基礎技術(形態素解析、構文解析、意味解析他)に関するチーム論文紹介
4. ゲスト講師による講演2(応用技術1)
5. ゲスト講師による講演3(応用技術2)
6. テキストデータの応用技術(情報抽出、文書分類、文生成他)に関するチーム論文紹介
7. 言語モデル(汎用言語モデル)に関するチーム論文紹介
8. 振り返り・グループワーク(プロジェクト決め)
9. グループワーク
10. 中間発表
11. グループワーク
12. グループワーク・最終発表に向けた作業日
13. 最終発表・講評
4810-1194
多体問題の計算科学
Computational Science for Many-Body Problems
大久保 毅 山地 洋平 多体問題は、銀河のダイナミクスから量子ビット間のエンタングルメントまで、自然科学研究の様々な場面に現れ、計算機を用いた計算科学の主な研究対象となっている。本講義では、物質科学を具体例として多体問題に現れる、モンテカルロ法や、ランチョス法などのクリロフ部分空間法など、多体問題が内包する巨大な自由度を有限の計算機資源で扱うためのアルゴリズムを学ぶ。
また、実際にこれらのアルゴリズムを実装したアプリケーション、ALPSやHPhiを使った計算機シミュレーションを、レポート課題を通して習得する。今日のスーパーコンピュータの主流である大規模並列計算機に対応するため、ALPSやHPhiに実装されているアルゴリズムには並列化が施されている。本講義ではこれらの並列化手法についても学んで行く。
From dynamics of galaxy to entanglement among quantum bits, many-body problems have been studied in the wide range of science by computational science approaches. In this lecture, numerical algorithms for many-body problems in condensed matter physics, such as Monte Carlo samplings and Krylov subspace methods represented by the Lanczos method, are introduced with emphasis on treatment of the large degrees of freedom inherent in the many-body problems.
Through exercises by using these algorithms implemented in open source software for many-body problems, ALPS and HPhi, students will learn how to utilize them. Papers on application of the algorithms and software to selected many-body problems are assigned as requirements for a credit. Parallelized algorithms for modern supercomputers, which are implemented in these softwares, will be also discussed.
第1回: 物理学における多体問題とその困難
第2回: 古典統計力学模型と数値計算
第3回: 古典モンテカルロ法の基礎
第4回: 古典モンテカルロ法の応用
第5回: 分子動力学法とその応用
第6回: 拡張アンサンブル法によるモンテカルロ計算
第7回: 量子統計力学模型と数値計算
第8回: 量子モンテカルロ法
第9回: 量子モンテカルロ法の応用
第10回: 量子多体問題と巨大な疎行列の線形代数
第11回: クリロフ部分空間法の量子多体問題への応用
第12回: 巨大な疎行列と量子統計力学
第13回: 多体問題の並列計算アルゴリズム
#1 Many-body problems in physics and why they are hard to solve
#2 Classical statistical model and numerical simulation
#3 Classical Monte Carlo method
#4 Applications of classical Monte Carlo method
#5 Molecular dynamics and its application
#6 Extended ensemble method for Monte Carlo methods
#7 Quantum lattice models and numerical approaches
#8 Quantum Monte Carlo methods
#9 Applications of quantum Monte Carlo methods
#10 Linear algebra of large and sparse matrices for quantum many-body problems
#11 Krylov subspace methods and their applications to quantum many-body problems
#12 Large sparse matrices and quantum statistical mechanics
#13 Parallelization for many-body problems
4810-1195
「量子現象・量子論入門」初学者のための量子論
Introduction to Quantum Theory --- A lecture for beginners
清水 明 簡単な例を用いて量子現象・量子論を学び、その特徴について考察することにより、古典現象・古典論との相違や共通点について理解できるようになることを目指す。
1. 序
2.古典物理学の破綻
3. 古典論の基本的枠組み
4. 量子論の基本的枠組み
5. 物理量と物理状態
6. 有限個の値しか取りえない物理量だけを持つ量子系の理論
7. ベルの不等式
8. 量子文脈依存性
9. 様々な量子現象
10. 無限個の値を取りうる物理量を持つ量子系の理論
11. 展望
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
中島 研吾 OpenMPは指示行を挿入するだけで手軽に「マルチスレッド並列化(multi-threading)」ができるため,マルチコアプロセッサ内の並列化に広く使用されている。本講義ではOpenMPによる並列化に関する講義・実習を実施する。本講義では対象アプリケーション(有限体積法(finite-volume method, FVM)によってポアソン方程式)をOpenMPによってマルチコアプロセッサ上で並列化するのに必要な計算手法,アルゴリズム,プログラミング手法の講義,実習の他,並列前処理手法の最新の研究に関する講義も実施する。プログラミング実習にはスーパーコンピュータシステム(Wisteria/BDEC-01(Odyssey))を使用する。
OpenMP is the most widely-used way for parallelization on each compute node with multiple cores because multi-threading can be done easily by just inserting "directives". In this class, lectures and exercises for parallelization by multi-threading of the target application (Poisson's equation solver by FVM (finite-volume method)) on multicore processors using OpenMP are provided, which covers numerical algorithms, and programming methods. Moreover, lectures on recent research topics on parallel preconditioning methods will be also provided. The "Supercomputer System (Wisteria/BDEC-01(Odyssey))" is available for hands-on exercises.
・有限体積法
・クリロフ部分空間法
・前処理
・OpenMP入門
・リオ-ダリング/色づけ法
・OpenMPによる並列化
・並列反復法に関する研究動向
・Wisteria/BDEC-01(Odyssey)(情報基盤センター)による実習
- Finite-Volume Method (FVM)
- Krylov Iterative Method
- Preconditioning
- Introduction to OpenMP
- Reordering/Coloring Method
- Parallel FVM Code using OpenMP
- Recent Research Topics on Parallel Preconditioning Methods
- Exercise using Wisteria/BDEC-01(Odyssey) of ITC
4810-1216
計算科学アライアンス特別講義II
Special Lecture on Computational Science II
中島 研吾 並列計算プログラミング技法に関する講義、実習を実施する。並列計算に広く使用されているMPI(Message Passing Interface), OpenMPを使用したプログラミングを中心に扱う。様々な計算機における最適化技術についても併せて講義,実習を実施する。プログラミング実習には東大情報基盤センターのWisteria/BDEC-01(Odyssey)を使用する。ターゲットとするアプリケーションは有限要素法による一次元及び三次元定常熱伝導解析プログラムであり,背景となる基礎的な理論から,実用的なプログラムの作成法まで,連立一次方程式解法などの周辺技術も含めて講義を実施する。
Lectures and hands-on exercises on parallel programming methods for large-scale scientific computing will be provided. This class focuses of programming using MPI (Message Passing Interface) and OpenMP, which is widely used method for “de facto standard" of parallel programming. Lectures on optimization methods on various types of architectures are also given. Wisteria/BDEC-01(Odyssey) at ITC is available for hands-on exercises. Target applications are 1D/3D codes for steady-state heat transfer by finite-element method (FEM). This class covers wide range of topics related to FEM, such as fundamental mathematical theory, programming method, and solving large-scale linear equation.
・High-Performance Computingの現状と動向
・一次元及び三次元有限要素法
・MPIを使用した並列プログラミングの基礎
・OpenMPを使用した並列プログラミングの基礎
・MPI,OpenMPを使用したアプリケーションの開発実習(有限要素法)
・チューニング入門
・最近の話題
- Overview of High-Performance Computing (HPC)
- 1D & 3D Finite-Element Method (FEM)
- Parallel Programming using MPI
- Parallel Programming using OpenMP
- Development of Scientific Applications using MPI and OpenMP (FEM)
- Introduction to Tuning
- Advanced Topics
4810-1206
コンピュータ科学特別講義III
Seminar on Computer Science III
CODOGNET Philippe This course will present and detail several combinatorial optimization search techniques which are used in artificial intelligence (AI)
01) Introduction
02) State Graphs
03) Constraint Satisfaction Problems
04) Constraint Solving Techniques
05) Constraint Solving Techniques (cont.)
06) Constraint Programming & Global Constraints
07) Combinatorial Optimization Problems
08) Local Search & Metaheuristics
09) Tabu Search
10) Simulated Annealing
11) Quadratic Unconstrained Binary Optimization (QUBO)
12) QUBO modeling and solving
4810-1207
コンピュータ科学特別講義IV
Seminar on Computer Science IV
枝廣 正人 テーマ:「マルチコア並列アルゴリズム」
いまやサーバからPC、組込み機器までマルチコア、メニーコア化している。プロセッサの動作周波数の伸びが飽和し、性能は並列によって向上させる時代になった。従ってアルゴリズムが並列対応され、プログラムが並列動作するように書かれていなければ、計算機の進歩に伴って性能向上するソフトウェアにはならない。本講義では、最近のマルチコアプロセッサにおいて動作させるための実用的なアルゴリズムについて扱う。新しい分野で今後伸びている分野であるが、講義では以下のようなトピックに関して、基礎と事例について紹介する。
・マルチコアプロセッサの基礎
・マルチコアプロセッサ向けアルゴリズムの基礎
・マルチコアプロセッサ向けアルゴリズムの事例
・プロセッサのマルチコア化についての背景
・マルチコア・アーキテクチャについて
・並列プログラム言語
・並列プログラム記述
・並列アルゴリズム設計
・並列アルゴリズムに関する諸法則
・スケーラビリティについて
・並列アルゴリズム(1):ソートアルゴリズム
・並列アルゴリズム(2):ソーティングネットワーク
・並列アルゴリズム(3):Parallel Prefix
・並列アルゴリズム(4):最短経路
・並列アルゴリズム(5):木構造探索
・マルチコアの課題
4810-1210
コンピュータ科学特別講義VI
Seminar on Computer Science VI
Zoltán Porkoláb The aim of the course is to learn professional C++ methods and techniques, typically beyond the scope of the University beginners C++ course. Also, this training is an introduction to the C++11/14/17 features. The course is now extended with some new C++20 elements.
This is an intensive course which will be given at the following date/time:
June 2nd, 2022 (Thursday) 17:00 - 20:30
June 7th, 2022 (Tuesday) 17:00 - 20:30
June 9th, 2022 (Thursday) 17:00 - 20:30
Class 1: Constant magic
Class 2: Constructors, destructors
Class 3: Move semantics
Class 4: Advanced memory usage
Class 5: Advanced template techniques
Class 6-7: Concurrent programming in C++11
4810-1211
コンピュータ科学特別講義VII
Seminar on Computer Science VII
須田 礼仁 Suppakitpaisarn Vorapong Zsók Viktória The main motivation of the intensive course is to provide the attendees with short introduction to functional programming paradigm, followed by advanced topics. FP offers excellent language elements for the trends in computer science, and the high abstraction level enables the development of applications for specific purposes. The presentations of such highly studied topics are beneficial for students to get involved more and more with this programming style. Alternating lecture presentations with practical exercises are planned for better and quick knowledge acquiring.
Class 1: FP elements - functions and data structures (lists, tuples, arrays, record, trees)
Class 2: Higher order functions, currying, generators, ADT, classes
Class 3: Object I/O library (events, files)
Class 4: Monadic style and abstractions, algebraic effects
Class 5: Efficiency of programs (advanced type issues, equivalences)
Class 6-7: Research questions, parallelism
4810-1212
コンピュータ科学特別講義VIII
Seminar on Computer Science VIII
今井 浩 量子コンピュータの実機が利用可能になった環境を活用して、最先端の量子計算の研究開発に触れることを目的に、講義では、量子プログラミングに必要な基礎をおさえ、その上で量子計算先端の問題を通して実際の問題を解決することを目指して、プロジェクト形式の実習部分も含めた講義を行う。
10月7日開講
1.量子計算入門
2.量子回路・量子プログラミング
3.浅層量子回路での計算
4.古典・量子ハイブリッド計算
5.量子線形計算
6.古典・量子シミュレーション
7.プロジェクト形式の研究発表
なお、量子計算基礎を十分修めている受講者は、7の点に軸にした方式での履修を可能とする。

ISTyくん