シラバス
授業科目名 | 年度 | 学期 | 開講曜日・時限 | 学部・研究科など | 担当教員 | 教員カナ氏名 | 配当年次 | 単位数 |
---|---|---|---|---|---|---|---|---|
大規模・高速計算 | 2024 | 前期 | 月4 | 理工学部 | 久保田 光一 | クボタ コウイチ | 3年次配当 | 2 |
科目ナンバー
SE-IG3-8C42
履修条件・関連科目等
「C プログラミング初級演習」,「C プログラミング中級演習」,「プログラミング上級演習」の履修が望ましい.
授業で使用する言語
日本語
授業で使用する言語(その他の言語)
授業の概要
抽象的なアルゴリズムを理解することは大事であるが,実際に中規模,大規模な問題を高速に処理するには,使用する計算機の仕組みやオペレーティングシステムなどに関する知識も必要である.そのための適切なデータ構造選定法やアルゴリズム自身の改良法などの高速化技法を学ぶ.
科目目的
大規模計算を高速に行う必要のあるトピックを取り上げ,プログラムの実装を通じてプログラミングの実際を知る.
到達目標
大規模計算を高速に行うプログラムの実装を通じてプログラミングの実際を知る.有限体係数の連立一次方程式, 100万桁の円周率の計算方法, 100万元連立一次方程式の共役勾配法による解法など大規模高速計算に関連する事項について理解する.
授業計画と内容
第1回 大規模計算の特徴
第2回 高速計算のための技術
第3回 計算時間の実測と対数グラフ
第4回 解の探索
第5回 整数剰余と連立一次方程式
第6回 帯行列, 大規模疎行列のLU分解
第7回 RCM法,最小次数順序法
第8回 多倍長演算 (基礎)
第9回 多倍長演算 (分割統治法)
第10回 多倍長演算 (FFT)
第11回 共役勾配法(原理の説明)
第12回 共役勾配法の例 (100万次元連立一次方程式)
第13回 前処理つき共役勾配法不完全LU分解
第14回 共役勾配法由来の手法群
授業時間外の学修の内容
指定したテキストやレジュメを事前に読み込むこと
授業時間外の学修の内容(その他の内容等)
レポート課題などを通じて大規模高速計算を実際に実施する. そのためのプログラム作成や計算環境整備などを行い, 実際の問題解決の難しさを各自確認すること.
授業時間外の学修に必要な時間数/週
・毎週1回の授業が半期(前期または後期)または通年で完結するもの。1週間あたり4時間の学修を基本とします。
・毎週2回の授業が半期(前期または後期)で完結するもの。1週間あたり8時間の学修を基本とします。
成績評価の方法・基準
種別 | 割合(%) | 評価基準 |
---|---|---|
期末試験(到達度確認) | 65 | 大規模連立一次方程式の解法,有限体係数の連立一次方程式, 100万桁の円周率の計算方法, 100万元連立一次方程式の共役勾配法による解法など大規模高速計算に関連する事項について説明できる. |
レポート | 30 | 実際に大規模計算を実行し,そのプログラミングや実行方法,アルゴリズムの工夫などについて理解し説明できる. |
平常点 | 5 | 授業関連の小テスト等に正解できる. |
成績評価の方法・基準(備考)
大規模問題を高速に解くためのアルゴリズムを設計し,プログラムを組み,計算実験を行ない,レポートを提出する.
課題や試験のフィードバック方法
授業時間内で講評・解説の時間を設ける
課題や試験のフィードバック方法(その他の内容等)
アクティブ・ラーニングの実施内容
PBL(課題解決型学習)
アクティブ・ラーニングの実施内容(その他の内容等)
授業におけるICTの活用方法
クリッカー
授業におけるICTの活用方法(その他の内容等)
実務経験のある教員による授業
いいえ
【実務経験有の場合】実務経験の内容
【実務経験有の場合】実務経験に関連する授業内容
テキスト・参考文献等
毎回プリントを配布する.