アルゴリズム,計算量,数値計算,シミュレーション,暗号などコンピュータサイエンスにおける重要なテーマの中からクラスごとに問題を設定する.そしてその問題の単純な解法から高度な解法までを順に,講義による理論的な理解とプログラミングの演習を両輪にして学んでいく.ひとつの問題を深く掘り下げることで,他の問題にも応用可能なコンピュータサイエンスの基礎を学ぶ.
コンピュータサイエンス第一で学んだ内容を深化させ,理工系学生として必要なコンピュータサイエンスの理論・技術を身に付ける.
コンピュータサイエンス,プログラミング,アリゴリズム.
✔ 専門力 | 教養力 | コミュニケーション力 | 展開力(探究力又は設定力) | ✔ 展開力(実践力又は解決力) |
講義とプログラミング演習を隔週で実施する.
授業計画 | 課題 | |
---|---|---|
第1回 | (講義)導入. | 授業時に指示する. |
第2回 | (演習)プログラムの基本的な作成,実行. | プログラムの基本的な作成,実行. |
第3回 | (講義)問題の設定と基本的な説明. | 授業時に指示する. |
第4回 | (演習)プログラムの作成:前の時間に学んだ内容をプログラムとして作成し,実行させることで問題へ計算機実験からアプローチできることを体験する.また,問題の規模やパラメターを調整することで,単純な方式では扱えない場合があることについて学ぶ. | プログラム作成と実験. |
第5回 | (講義)性能・機能の改善:前回作成した単純なプログラムには性能や機能に制約があった.素朴な方式の問題点を明らかにし,アルゴリズムを改善することで解決を図る手段について学ぶ. | 授業時に指示する. |
第6回 | (演習)性能・機能の改善に関する演習:前回学んだアルゴリズムの改善についての指針にしたがってプログラムを修正し,当初,指摘された問題点が解消されることについて学ぶ. | プログラム作成と実験. |
第7回 | (講義)テーマの応用・発展:これまでに学んだアプローチを科学技術の応用事例にさまざまに適用できることについて学ぶ. | 授業時に指示する. |
第8回 | まとめと補足. | 授業時に指示する. |
未定
未定
レポート (50%) と期末試験 (50%) により評価する.
コンピュータサイエンス第一(LAS.I121) を履修していること,または同等の知識があること.