検索結果画面へ戻る閉じる

入学年度
app year
科目名(クラス)
Course Title
単位数
credits
開講期
year
時間割
担当教員名
Instructor(S)
2000~演習第三 (13)SeminarⅢ
2
通年
月曜日4時限
墨岡 学

1.サブタイトル Subtitle
コンピュータ・サイエンスの基礎知識
2.関連する教育諸方針 Course-Related Policies; Diploma and Curriculum Policy

3.授業科目のテーマと目的 Theme of the Course
これまでプログラムをつくってきたが、この演習ではプログラムを作るための科学、コンピュータ・サイエンスについて学習する。現代人の生活のなかでパソコンで文書を作成することからはじまり、表計算でビジネスデータを分析することやWebで情報を交換することなどはほぼ常識的なことになるつつある。そこでその仕事を実行するための基礎となる科学を学習する。具体的には次のことを目指す。
①アルゴリズムとは何か理解する。
②アルゴリズムからプログラムが導かれることを理解する。
③コンピューティングの限界を理解する。
4.授業科目の内容・具体的な授業計画及び進度 Course Description and Outline
(1) アルゴリズムとは何か。
  コンピュータ科学の基礎となるアルゴリズムについて、具体的な例をあげながらアルゴリズムを記述する方法、データを記述する方法などを学習する。 
(2) アルゴリズムとプログラムの関係。
  現実のコンピュータでアルゴリズムを実行するために考えられたものがプログラムである。この両者の関係を考える。
(3) アルゴリズムの良し悪しの問題。
  非効率的なアルゴリズムをつくると、実際にそれを実行するにはたいへんな時間がかかってしまう。いくつかの例をあげながら、同じ問題を解くアルゴリズムにも良いものと悪いものがあることを考える。
(4) 計算可能性の問題。
  理論的にアルゴリズムを実行する機械として、チューリングマシンのようなものがある。手近なコンピュータで、このチューリングマシンのシミュレータを動かして、アルゴリズムの本質について考える。

第1回目 コンピュータ・サイエンスへのイントロダクション
第2回目 古代ギリシア時代のアルゴリズムによるコンピュータの可能性
第3回目 ニュートン、ライプニッツによるアルゴリズムと計算の実用化
第4回目 江戸時代和算家によるアルゴリズムの実例
第5回目 ニュートンと和算家のアルゴリズムを比較する
第6回目 チューリングによる万能計算機のアイデアを検証する
第7回目 ノイマン型コンピュータの利点と欠点
第8回目 世界初のアセンブラによるプログラムを読む
第9回目 マシン語からの脱却と第1世代言語の誕生の過程
第10回目 計算可能性問題をプログラム化する
第11回目 再帰的プログラミング
第12回目 人工知能システムの自動運転への応用例
第13回目 iPhone, Windows, Android の音声認識を比較する
第14回目 並列コンピューティングの可能性
第15回目 量子コンピュータへの道とまとめ
5.利用教科書 Textbook(s)
No.
書名
(Title)
出版社
(Publisher)
著者
(Author)
ISBN番号
(ISBN)
発刊年
(pub,year)
1
2
6.参考書 Reference Book(s)
No.
書名
(Title)
出版社
(Publisher)
著者
(Author)
ISBN番号
(ISBN)
発刊年
(pub,year)
1
2
3
4
5
※教科書・参考書以外の資料 Materials other than textbooks and Reference Books
適宜、授業中にWebサイトと参考書を指示する。
授業に必要な情報は、次のサイトに掲載する。
http://manabu.gomen.org/
7.準備学習(予習・復習) Expected Work outside of Class時間
この演習グループのウェブを使って、予習と復習を行う。その方法は、演習中に出された課題や議論について、グループウェアのなかでさらに議論をすることで学習する。



8.フィードバック Instructor Feedback

9.評価の方法・基準 Criteria for Evaluation
授業中発表50%,レポート50%の比率で評価する。
レポートは「授業計画」の(1)、(2)、(3)、(4)それぞれについて各1回を予定している.
10.学習の到達目標 The Main Goals of Course
ソフトウェアを作成するための科学として,コンピュータ・サイエンスの考え方を身につける.具体的には、次のことをできるようにする。
①与えられた問題を解決するための効率のよいアルゴリズムを選択することができるようになる。
②アルゴリズムとプログラムの関係について理解する。
③計算可能性の問題を理解する。
11.その他の留意事項について Additional Instractions / Comments to Students



Copyright(c)2007-2016 Matsuyama University.All rights reserved.