シラバス参照/View Syllabus

授業情報/Class Information

科目一覧へ戻る/Return to the Course List 2020/09/23 現在/As of 2020/09/23

基本情報/Basic Information

開講科目名
/Course
情報システム論a/INFORMATION THEORY OF SYSTEMS(A)
開講所属
/Course Offered by
経済学部経営学科/ECONOMICS MANAGEMENT
ターム・学期
/Term・Semester
2020年度/2020 Academic Year  春学期/SPRING SEMESTER
曜限
/Day, Period
金2/Fri 2
開講区分
/semester offered
春学期/Spring
単位数
/Credits
2.0
学年
/Year
2,3,4
主担当教員
/Main Instructor
今福 啓

担当教員情報/Instructor Information

教員名
/Instructor
教員所属名
/Affiliation
今福 啓 経営学科/MANAGEMENT
授業の目的・内容
/Course Objectives
・この講義では、現代社会で不可欠となったコンピュータを使って問題解決するための手法と、プログラミング言語「Python」を使って問題解決するプログラムを作成する実習を行います。
・Pythonについてはソフトウェアのインストールを含めて初歩から説明しますので、プログラムを全く作成したことがない学生でも受講できます。
・講義を通じて、コンピュータを用いた問題解決手法の基本を身につけることを目標とします。
授業の形式・方法と履修上の注意
/Teaching method and Attention the course
コンピュータでデータを処理する方法を学ぶと同時に、プログラミング言語のPythonを使ったプログラム作成による実習を行います。

1. 自宅でコンピュータを利用できる方のみ受講してください。
・コンピュータは、1週間に1回程度使えれば問題ありません。
・家族と共用のコンピュータでもかまいません。
・対応機種:Windows, mac, linux

2. 動画を使った講義を行います。
・ライブ講義ではなく、YouTubeの限定配信を好きな時間に見る形式の講義を予定しています。
・動画のアドレスは毎週1つずつ指定します。
・毎週、講義内課題でプログラムを作成し、その内容を説明したレポートを作成し、指定した期日(各講義の5日後を予定)までに提出してください。
事前・事後学修の内容
/Before After Study
講義で理解できなかった点をそのままにせず、質問や自習で解決するようにしてください。
テキスト1
/Textbooks1
書籍名
/Title
著者
/Author name
出版社
/Publisher
ISBN
/ISBN
その他(任意)
/other
必要に応じて講義資料を配布します。
テキスト2
/Textbooks2
書籍名
/Title
著者
/Author name
出版社
/Publisher
ISBN
/ISBN
その他(任意)
/other
テキスト3
/Textbooks3
書籍名
/Title
著者
/Author name
出版社
/Publisher
ISBN
/ISBN
その他(任意)
/other
参考文献等1
/References1
書籍名/サイト名
/Title
アルゴリズム図鑑 絵で見てわかる26のアルゴリズム
著者
/Author name
石田保輝、宮崎修一
出版社/URL
/Publisher
翔泳社
ISBN
/ISBN
ISBN978-4-7981-4977-6
その他(任意)
/other
参考文献等2
/References2
書籍名/サイト名
/Title
著者
/Author name
出版社/URL
/Publisher
ISBN
/ISBN
その他(任意)
/other
参考文献等3
/References3
書籍名/サイト名
/Title
著者
/Author name
出版社/URL
/Publisher
ISBN
/ISBN
その他(任意)
/other
評価方法
/Evaluation
講義内課題でプログラムを作成し、その内容を説明したレポートを成績評価の対象とします。
・全て講義内課題(100%)で評価します。
・詳しい評価方法は、第1回目の講義の際に動画で説明します。
関連科目
/Related Subjects
・コンピュータアーキテクチャ
・情報通信ネットワーク
・プログラミング論
・データベース論
・マルチメディア論
・Webデザイン論
備考
/Notes
到達目標
/Learning Goal
コンピュータ内部でのデータ構造、情報処理手順、およびコンピュータ自身が問題の変化に応じて解決手順を構築する手法等に関して専門知識を習得し、コンピュータを用いたより効率的な問題解決ができるようにする。

/Time
授業計画(主題の設定)
/Class schedule
授業の内容
/Contents of class
事前・事後学修の内容
/Before After Study
1 コンピュータのシステム構成、アルゴリズム コンピュータとはどのような構造であるか概要を学ぶ。また、コンピュータで問題解決する手順を「アルゴリズム」と呼ぶことを学ぶ。
2 プログラミング言語Pythonとは プログラミング言語「Python」の基礎を学び、簡単なプログラムを作成する。
3 関数を利用したプログラム作成 プログラムで関数を利用する方法と、関数を作成する方法を学ぶ。
4 モジュールを利用したプログラム作成 複雑な処理を容易に行う際に使用するモジュールを使ってプログラム作成する方法を学ぶ。
5 データ構造1:配列、リスト、タプル、マップ 複数のデータをまとめて記憶する構造を学び、プログラムを作成して処理する方法を学ぶ。
6 データの並べ替え、探索 「データ構造1」で学んだ内容を使って、データの並べ替えと探索を行うプログラムを作成する。
7 データ構造2:スタック、キュー、木、ハッシュ さまざまなアルゴリズムで利用されるデータの記憶構造を学び、プログラムを作成する。
8 深さ優先探索、幅優先探索 「データ構造2」で学んだ内容を使って、さまざまな問題を解く際に用いられる手法である深さ優先探索、幅優先探索について学ぶ。
9 迷路を解く 深さ優先探索、幅優先探索で迷路を解くプログラムを作成する。
10 データ構造3:グラフ、ネットワーク グラフとネットワークとはどのような構造か学び、プログラムで表現する。
11 ダイクストラ法 「データ構造3」で学んだ内容を使って、始点から各地点までの最短経路を求める際に使用するダイクストラ法を学び、プログラムを作成する。
12 (時間があれば実施)A*アルゴリズム ダイクストラ法を応用した手法であるA*アルゴリズムを学び、プログラムを作成する。
13 クラスNP:ナップサック問題、巡回セールスマン問題 解くために膨大な時間を要する問題「クラスNP」について学び、具体的にどのような問題が存在するか学ぶ。
14 (時間があれば実施)分枝限定法、動的計画法 クラスNPに属する問題を効率的に解くための手法を学び、プログラムを作成する。

科目一覧へ戻る/Return to the Course List