Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
2019 年度
情報科学類シラバス
この冊子の内容は、オンラインでも閲覧可能です。http://www.coins.tsukuba.ac.jp/syllabus/
掲載内容に関しては、履修要覧・開設授業科目一覧を確認して下さい。 各授業の教室番号は、開設授業科目一覧で確認して下さい。
2019年 4月
筑 波 大 学 情 報 科 学 類
1
学年・学期 専門科目 ソフトウェアサイエンス主専攻 情報システム主専攻 知能情報メディア主専攻(数学系) (学生主導型) (プログラミング系) (ハードウェア系)線形代数A 情報科学特別演習情報数学A微分積分A プログラミング入門
線形代数B(物理系)
データ構造とアルゴリズム[3]
論理回路オブジェクト指向プログラミング実習[1]
微分積分B シミュレーション物理[1]データ構造とアルゴリズム実験[1.5]
論理回路実験[1.5] システム制御概論
確率論 電磁気学コンピュータとプログラミング[3]
論理システム[1]コンピュータグラフィックス基礎
数値計算法 ソフトウェア技法 論理システム実験[1.5] 電気回路情報理論
(学生主導型) (英語科目)
情報特別演習I専門英語基礎Introductory AcademicEnglish
統計学 情報特別演習IIComputer Science inEnglish A[1],B[1]
(主専攻共通科目)プログラム理論[1] 並列処理アーキテクチャI[1],II[1] 認知科学概論[1]
プログラム言語論I[1].II[1] 計算モデル論 VLSI工学 信号解析数理アルトリズムとシミュレーション
オートマトンと形式言語 プログラム言語処理 ディジタル信号処理
人工知能 プログラミングチャレンジ システムプログラム 音声聴覚情報処理コンピュータネットワーク システム数理I[1],II[1],III[1] ソフトウェア工学 自然言語処理計算機アーキテクチャ 数理メディア情報学 データベース概論II 視覚情報科学データベース概論I インタラクティブCG 情報検索概論 知識処理概論[1]オペレーティングシステムI 情報線形代数 オペレーティングシステムII[1] 画像メディア工学信号処理概論[1] 情報可視化 分散システム[1] 画像認識工学
パターン認識ソフトウェアサイエンス実験A[3],B[3]
電子回路 機械学習
ヒューマンインタフェース 情報システム実験A[3],B[3] 知能情報メディア実験A[3],B[3]情報セキュリティ(その他の専門科目)インターンシップI[1]インターンシップII[1]ソフトウェア品質保証[1]
4 専門語学A[1.5],B[1.5]
注1) 開設授業科目に変更が生じることもあるので注意のこと。 注2) 下線つきの科目は、必修科目を表す 注3) 科目名の後の"[ ]" は単位数を表す。"[ ]"が付いていない科目は2単位である。
卒業研究A[3],B[3]
1-春
情報科学類カリキュラム(平成31年度入学者用)
2
専門基礎科目
1-秋
3
2
5
6
解析学III[GB10504]
AnalysisIII
対象:2学年 開設学期:春AB 曜⽇・時限:⾦1・2 単位数:2単位
担当教員:⽚岸⼀起
概要
本講義においては、情報科学と解析学との接点に留意しつつ、解析学における多重積分・常微分⽅程式・級数に関わる基本的性質を学習する
学習・教育⽬標
1.2重積分および3重積分の概念とその計算⽅法および応⽤例を理解する(第1〜3週)
2.代表的な線形微分⽅程式の解法を理解する(第4〜7週)
3.級数の収束判定法、関数列の⼀様収束性とその意味を理解する (第8〜10週)
時間割
週 講義内容/理解すべき項⽬
第1週多重積分の計算とその幾何学的な意味
(2重積分と3重積分の考え⽅を理解し、計算する。積分順序を変更して2重積分を計算することの幾何学的な意味合いを理解する。)
第2週極座標変換・ヤコビアンによる多重積分の計算
(2変数、3変数の極座標変換・ヤコビアンを利⽤して2重積分、3重積分を求める⽅法を理解する。)
第3週多重積分の応⽤(体積、曲⾯積)
(2重積分、3重積分を応⽤して空間図形の体積や曲⾯の曲⾯積を求める⽅法を理解する。)
第4週
常微分⽅程式とその⼀般解・特殊解・特異解、変数分離形常微分⽅程式および同次形常微分⽅程式の解法
(常微分⽅程式の解にはどういうものがあるのかを理解する。代表的な関数を解にもつ微分⽅程式を導出し、今後の微分⽅程式を解く際の解につ
いての知⾒を得る。最も簡単な常微分⽅程式である変数分離形の常微分⽅程式の⼀般解を求める。簡単な変数変換によって解法可能な常微分⽅
程式の⼀例として、同次形常微分⽅程式を解く。)
第5週
線形常微分⽅程式、完全常微分⽅程式の解法
(1階の線形微分⽅程式の⼀般解を解析的に求める。その応⽤として、Bernoulliの微分⽅程式を解く。関数の全微分形式を利⽤して完全常微分⽅
程式の⼀般解を求める。)
第6週⻫次(同次)の定数係数2階線形常微分⽅程式の⼀般解の解法
(⻫次(同次)の定数係数2階線形常微分⽅程式の⼀般解を解析的に求める⽅法を理解する。)
第7週⾮⻫次(⾮同次)の定数係数2階線形常微分⽅程式の⼀般解の解法
(第6週の解法を応⽤して、⾮⻫次(⾮同次)の定数係数2階線形常微分⽅程式の⼀般解を解析的に求める⽅法を理解する。)
第8週無限数列の和とその収束判定法
(無限級数の収束・発散について復習する。正項級数の各種収束判定法を理解する。各種収束判定法を利⽤して、級数の収束性を議論する。)
第9週
絶対収束級数と条件収束級数
(絶対収束級数、条件収束級数とは何か、またそれぞれの無限級数の性質について理解する。それらの性質を利⽤して、無限級数の収束性を議論
する。)
第10週
べき級数の収束性と関数列の⼀様収束性
(べき級数の収束性について、収束半径の⽴場から議論する。べき級数の収束半径を解析的に求める。また、⼀様収束の意味を理解するととも
に、関数列の⼀様収束性と項別微分可能性および項別積分可能性との関係を理解する。テーラー級数、マクローリン級数について理解する。)
教材
⽮野健太郎・⽯原繁: 微分積分学(裳華房)
参考書籍
⾼⽊貞治: 解析概論(岩波書店)
寺澤寛⼀: ⾃然科学者のための数学概論(岩波書店)
予備知識・前提条件
⼀変数の微分・積分の知識があることが望ましい。
成績評価
期末試験(80%)、授業中に実施する演習問題(20%)により評価する。
教員メールアドレス
katagisi(AT)cc.tsukuba.ac.jp
オフィスアワー
⽊曜⽇の17:00-19:00(学術情報メディアセンター4階404号)
備考
7⽉中に希望者を対象に「情報と代数学・解析学との接点」と題して複数回「補講」を⾏う予定です。詳細は授業で説明します。
7
論理回路[GB10804]
IntroductiontoLogicCircuit
対象:2学年 開設学期:春AB 曜⽇・時限:⽕1,2 単位数:2単位
担当教員:朴泰祐,⼩林諒平
概要
初等的な論理回路から論理サブシステムまでについて、講義と演習を⾏う。授業は合計9回で前半4回、後半5回に分かれ、前半終了後に中間試験、後半終了
後に期末試験を⾏なう。
学習・教育⽬標
1. 組合せ回路とブール代数について理解する(第1〜4週)
2. 順序回路とディジタルディバイスについて理解する(第6〜10週)
キーワード
基本ゲート、ブール代数、組み合わせ回路、カルノー図、演算器、順序回路、フリップフロップ、カウンタ、フリップフロッププログラミング、デジタルデバ
イス
Keywords
logicgates,Booleanalgebra,combinatorialcircuits,Karnaughmaps,arithmeticunits,sequentialcircuits,flip-flops,counters,flip-flopprogramming,digitaldevices
時間割
週 講義内容
第1週(前半1) 基本ゲートとブール代数の基礎(教科書1-17⾴)
第2週(前半2) 標準形とカルノー図(教科書17-31⾴)
第3週(前半3) いろいろな組合せ回路、演算器、PLD(教科書31-38⾴、142-143⾴)
第4週(前半4) いろいろな組合せ回路、メモリの基礎、順序回路の基礎(教科書38-58⾴、129-139⾴)
第5週(中間試験) 前半4回の講義内容について、試験を⾏う
第6週(後半1) ⾊々なフリップフロップとその応⽤(教科書58-69⾴)
第7週(後半2) 順序回路の設計⼿法(教科書⾴70-75)
第8週(後半3) カウンタ、⾊々な順序回路(教科書76-94⾴)
第9週(後半4) ディジタルデバイス(教科書⾴95-128)
第10週(後半5) 総合学習。これまでの学習範囲について総合的な復習を⾏う。
第11週(期末試験) 講義内容全体について、試験を⾏う。
教材
磯秀夫監修、天野英晴、武藤佳恭共著、”だれにもわかるディジタル回路”(改訂4版)オーム社発⾏(改訂4版より前の版は不可)
成績評価
評価は、中間試験50%、期末試験50%とする。
教員メールアドレス
朴 泰祐:taisuke(AT)cs.tsukuba.ac.jp
⼩林諒平:kobayashi(AT)cs.tsukuba.ac.jp
("(AT)"を"@"に変更)
TF・TA
TA⼀名
講義のWebページ
http://www.hpcs.cs.tsukuba.ac.jp/~taisuke/logic-class.html
オフィスアワー
朴泰祐: ⽉14:00〜17:00 計算科学研究センター101
⼩林諒平: ⾦14:00〜17:00計算科学研究センター103
備考
授業の形式は、以下の通り:
1時限⽬: 講義(1時間15分全部)
2時限⽬: 講義(最初の45分)、演習(残りの30分)
演習では、その⽇の講義で⾏った内容に関して、幾つかの練習問題を解いてみる。
8
情報科学概論II[GB10991]
IntroductiontoInformationScienceII
対象:2学年 開設学期:春C 曜⽇・時限:⽔1・2,⽊3・4,⾦1・2 単位数:2単位
担当教員:保國惠⼀,⼭際伸⼀,滝沢穂⾼
概要
ソフトウェアサイエンス,情報システム,知能情報メディアに関する研究開発動向について解説する。内容は,数値アルゴリズムと数値解析,プログラム⾔語とソフ
トウェアの検証,⼈と計算機との関わり合い,計算機の仕組み,データ通信,VLSIと回路,⾼速計算,データベース,マルチメディア情報,分散システム,⼈⼯⽣命,情報量
と暗号,⾳響・画像メディア処理,ヒューマン・コンピュータ・インタラクション,デザインの評価など。
学習・教育⽬標
ソフトウェアサイエンス,情報システム,知能情報メディアに関する研究開発動向について理解する。内容は,数値アルゴリズムと数値解析,プログラム⾔語とソフ
トウェアの検証,⼈と計算機との関わり合い,計算機の仕組み,データ通信,VLSIと回路,⾼速計算,データベース,マルチメディア情報,分散システム,⼈⼯⽣命,情報量
と暗号,⾳響・画像メディア処理,ヒューマン・コンピュータ・インタラクション,デザインの評価などについて学ぶ。
キーワード
数値処理,プログラム⾔語と検証,計算機の仕組み,データ通信,VLSIと回路,データベース,マルチメディア情報,分散システム,⼈⼯⽣命,暗号,メディア処理,インタラ
クション,デザインの評価
Keywords
Numericalprocessing,programminglanguageandverification,computerarchitecture,datacommunication,VLSIandcircuit,database,multimediainformation,distributed
system,artificiallife,encryption,mediaprocessing,evaluationofdesign
時間割
曜⽇ 講義内容/理解すべき項⽬
⽔
「ソフトウエアサイエンス」
第1週
数値シミュレーションのためのモデル化・数値計算法の概要について解説する。(担当:今倉暁)
関数型⾔語で書かれた⾼レベルプログラムをモデル化・⾃動検証するための⼿法とツールを紹介する。(担当:海野広志)
第2週
情報学群が開講している「組込み技術キャンパスOJT」の概要と教育内容を紹介し、組込みハードウェア、組込みソフトウェア、産業ク
リェイティブの3つの分野の現状と課題を情報科学の観点から解説する。(担当:徳永隆治)
⼈と計算機との関わり合いについて、インタラクティブシステムに焦点を当てて、解説する。(担当:⾼橋伸)
第3週
⾃然現象、メディア情報処理などを解析するための数値解析学に関する種々の話題について解説する。数値アルゴリズム、数値シミュ
レーションなど。(担当:北川⾼嗣)
ゲーム制御プログラムなどの具体例を通じて、⼈⼯知能および進化計算プログラミングについて解説する。(担当:アランニャ・クラ
ウス)
⽊
「情報システム」
第1週
オープンデータの考え⽅および代表的なデータモデルであるRDF(ResourceDescriptionFramework)の基礎について学ぶととも
に、それらを⽀える情報システムについても解説する。(担当:天笠俊之)
VLSI(VeryLargeScaleIntegration)の構成、設計、製造⼿法を概説した後、VLSIが計算機システムに与える影響と今後の研究・開
発動向について講義する。(担当:安永守利)
第2週
計算機の基本的な仕組みと最近のマイクロプロセッサの動向や、⾼速化のための計算機アーキテクチャと並列システムについて解
説する。(担当:朴泰祐)
データ通信の基本事項を学習し、インターネットを含めたデータ通信システムの構築動向をわかり易く解説する。(担当:佐藤
聡)
第3週
WWW、データベース、データマイニングに関する基礎的事項と情報システムにおける役割について解説する。(担当:北川博
之)
分散システムの概要とクラウドコンピューティングに関して概説する。(担当:阿部洋丈)
⾦
「知能情報メディア」
第1週
⼈⼯⽣命と進化システム:知能や形態の創発に関する基本概念と情報科学への応⽤について概説する。(担当:狩野均)
暗号技術:データの暗号化を超えデータ処理そのものを暗号化する技術を紹介する。(担当:⻄出隆志)
第2週
デザインの評価: HCIやヒューマンインタフェースデザインの評価において注意すべきポイントを述べる。(担当:伊藤誠)
未定(担当:未定)
第3週
画像メディア処理: 画像メディア処理システムの⼀例として、医⽤福祉への応⽤などについて概説する。(担当:滝沢穂⾼)
⾳響メディア処理: ⾳響メディアを対象とした処理システムの⼀例として、ブラインド⾳源分離等について概説する。(担当:牧野
昭⼆)
⽔・⽊・⾦
第4週
・総合演習(必要に応じて適宜実施する。)
予備知識・前提条件
情報科学概論Iの内容を理解しておくことが必要である。
9
成績評価
各曜⽇ごとに算出された点数を合計して総合評価とする。各曜⽇ごとの評価⽅法は各曜⽇の授業開始時に説明する。
教員メールアドレス
保國:morikuni,⼭際:yamagiwa,滝沢:takizawa
いずれも後ろに@cs.tsukuba.ac.jpを付ける
オフィスアワー
各担当者ごとに質問の時間をとる。具体的な時間は各講義中に指⽰する。
備考
情報科学類⽣に限る。
10
電磁気学[GB11404]
Electromagnetics
対象:2学年 開設学期:秋AB 曜⽇・時限:⽊3,4 単位数:2単位
担当教員:安永守利
概要
情報機器の多く(コンピュータ,携帯電話,オーディオ・ビデオ機器など)は電気や磁気の物理現象を利⽤している.本講義では情報機器の物理的な原理を理
解する上で必要な電磁気学の基礎について演習を交えて解説する.
学習・教育⽬標
1. 電気・情報関係の学科において1〜2年⽣で講義されている標準的な電磁気学の内容が理解できる(第1〜10週).
2. 電磁気学の基本的な演習問題が解ける(第1〜10週).
キーワード
電界(電場),電荷,電位,磁界(磁場),キャパシタンス(コンデンサ),インダクタンス,マクスウェル⽅程式
Keywords
ElectricField,ElectricCharge,ElectricPotential,Capacitance,(Condenser),Inductance,Maxwell'sequations
時間割
週 講義内容/理解すべき項⽬
第1週電荷と電場
電荷,クーロンの法則,電荷と⼒,電場と電気⼒線,点電荷による電場,電気双極⼦・線電荷・⾯電荷による電場,問題演習
第2週ガウスの法則
クーロンの法則とガウスの法則,電束と電束密度,ガウスの法則,ガウスの法則の応⽤(円筒対称・平⾯対称・球対称の場合),問題演習
第3週電位
電位と等電位⾯,電場と電位,点電荷による電位,電気双極⼦・連続的な電荷分布による電位,問題演習
第4週
電気容量
キャパシターと電気容量,電気容量の計算,キャパシターの並列接続と直列接続,誘電体を含むキャパシター,誘電体とガウスの法則,問題演
習
第5週電流と抵抗
電流,電流密度,抵抗と抵抗率,オームの法則,問題演習
第6週磁場
磁場,荷電粒⼦の運動,電流に働く磁気⼒,磁気双極⼦モーメント,問題演習
第7週電流が作る磁場
電流が作る磁場,平⾏な導線間に働く⼒,アンペールの法則,問題演習
第8週電磁誘導とインダクタンス
ファラデーの電磁誘導の法則,レンツの法則,⾃⼰インダクタンス,相互インダクタンス,問題演習
第9週マクスウエルの⽅程式
変位電流,マクスウエルの⽅程式,問題演習
第10週電磁波
電磁波,波動⽅程式,電磁波の伝搬・反射・屈折,問題演習
教材
「技術者のための電磁気学⼊⾨」(安永守利,コロナ社)を教科書として使⽤する.
参考書籍
「物理学の基礎[3]電磁気学」(野崎光昭訳[ハリディ,レスニック,ウオーカー著],培⾵館)
「電磁気学」(⽯井良博著,コロナ社)
「電⼦情報通信レクチャーシリーズ:電磁気学」(後藤尚久著,コロナ社)
「電磁気学⼊⾨」(岡崎誠著,裳華房)
「なっとくする電磁気学」(後藤尚久著,講談社)
「電磁気学演習」(平沢⼀紘,根本承次郎,安永守利著,培⾵館)等
予備知識・前提条件
⾼校の物理の知識を習得していることが望ましいが,習得していない学⽣にも理解できるように配慮する.
成績評価
講義への出席を前提とし,期末試験の結果に演習の評価点を加え,総合的に評価する.
教員メールアドレス
安永守利:yasunaga[AT]cs.tsukuba.ac.jp
[AT]は(AT)と読み替える
講義のWebページ
https://manaba.tsukuba.ac.jp/
オフィスアワー
安永守利:⾦曜4,5時限総B棟1106(または総B棟1123)
11
シミュレーション物理[GB11514]
ComputerSimulationMethodsinPhysics
対象:2学年 開設学期:秋C 曜⽇・時限:⽊1・2 単位数:1単位
担当教員:狩野均
概要
計算機を⽤いた物理実験について、実験⽅法から結果のまとめ⽅まで、演習を交えて系統的に学ぶ。
学習・教育⽬標
1.シミュレーションの⽅法を理解し、プログラムが作成できるようになる。
2.実験データの統計処理⽅法を習得する。
3.テクニカルライティングの基本技法を習得する。
キーワード
モンテカルロ法、セルオートマトン、粒⼦コード、ガウス・ザイデル法
Keywords
MonteCarlomethod,cellularautomata,particlecode,Gauss-Seidelmethod
時間割
週 講義内容
第1週シミュレーションの⽅法:
シミュレーション物理とは、モンテカルロ法、ヒットミス法、テクニカルライティングの基礎、レポートの構成と図表の書き⽅
第2週セルオートマトン法:
1次元・2次元セルオートマトン、ライフゲーム、交通シミュレーション、動物の紋様
第3週偏微分⽅程式の差分近似:
ガウス・ザイデル法、宇宙の膨張、フリードマン⽅程式、ハッブルの法則
第4週粒⼦-メッシュ法:
宇宙のビッグバンシミュレーションを作成
第5週実験データの統計処理:
基本統計量、時系列データ、回帰分析、相関分析、信頼度と区間推定、t分布(Excel使⽤)
教材
授業内容を要約した資料をmanabaに掲⽰する。
参考書籍
「シミュレーション物理」⽮部孝他著、朝倉書店
「物理・制御シミュレーション」酒井幸市著、CQ出版
「計算物理学⼊⾨」ハーベイ・ゴールド著、(株)ピアソン・エデュケーション
「数値シミュレーション⼊⾨」峯村吉泰著、森北出版社
「統計解析のはなし」⽯村貞夫著、東京図書
「確率・統計の意味がわかる」野崎昭弘他著、ベル出版
「Excelでやさしく学ぶ統計解析」室淳⼦他著、東京図書
「テクニカルライティング」三島浩著、共⽴出版
予備知識・前提条件
科⽬「⼒学」を履修していることが望ましい。
科⽬「システムプログラミング序論」のC⾔語の内容を前提とする。
Microsoftoffice(Word,Excel)を使⽤するので、習得していない者は、合計3時間程度の予習をしておくこと。
成績評価
演習・レポートの成績を総合的に評価する。レポートの期限遅れ、遅刻、⽋席は減点対象となる。レポート未提出者、出席が60%未満の者は単位を取得できな
い。
教員メールアドレス
kanoh☆cs.tsukuba.ac.jp
講義のWebページ
manabaに登録
オフィスアワー
メールで予約すること
12
確率論[GB11601]
ProbabilityTheory
対象:2学年 開設学期:春AB 曜⽇・時限:⾦5・6 単位数:2単位
担当教員:⾺場雪乃
概要
確率論の基本的な概念や性質について,具体例などを⽤いながら説明する
学習・教育⽬標
公理に基づく確率論の組み⽴てを理解する
確率変数と確率分布およびその性質を理解する
期待値・分散およびそれらの性質を理解する
⼤数の法則、中⼼極限定理の意味を理解する
情報系の研究・実務に有⽤な、具体的な確率の計算ができるようになる
キーワード
確率,条件付き確率,ベイズの定理,独⽴性,確率変数,期待値,分散,⼤数の法則,中⼼極限定理
Keywords
Probability,Conditionalprobability,Bayes'theorem,Independence,Randomvariable,Expectation,Variance,Lawoflargenumbers,Centrallimittheorem
時間割
週 講義内容/理解すべき項⽬
第1〜2週確率論の基礎
標本空間、事象、公理から導かれる性質、条件付き確率、独⽴性、ベイズの定理
第3〜5週離散型確率変数
確率変数、確率質量関数、期待値、分散、同時分布
第6〜8週連続型確率変数
確率密度関数、累積分布関数、正規分布、共分散
第9週⺟関数と特性関数
モーメント⺟関数、特性関数
第10週⼤数の法則と中⼼極限定理
⼤数の弱法則、⼤数の強法則、中⼼極限定理
教材
manabaで提供する
参考書籍
本講義の内容は主に以下の書籍に基づく:
DimitriP.BertsekasandJohnN.Tsitsiklis.IntroductiontoProbability.AthenaScientific,2008.
また、以下の書籍を参考にしている:
平岡和幸,堀⽞.プログラミングのための確率統計.オーム社,2009.
渡辺澄夫,村⽥昇.確率と統計―情報学への架橋―.コロナ社,2005.
予備知識・前提条件
微積分と集合論の基礎知識が必要になるが、講義中で適宜補う
成績評価
演習課題(0〜20%)、試験(80〜100%)
教員メールアドレス
⾺場雪乃:baba(AT)cs.tsukuba.ac.jp
講義のWebページ
manabaを利⽤する
オフィスアワー
メールで⾯談⽇時を相談のうえ随時
13
複素関数論[GB11701]
ComplexAnalysis
対象:2学年 開設学期:春AB 曜⽇・時限:⽔1,2 単位数:2単位
担当教員:北川⾼嗣
概要
Realでは不可能(存在しない)と思っていたことが、Imaginaryというコンセプトを⼊れることにより可能となる。
例えば、Sin(z)=2を解く、Log(z)=-1を解くなど。
実積分では求まらない実関数の積分値を、複素積分を使って求めるという快感。例えばsin(x)/xを0から無限⼤まで積分すると?
学習・教育⽬標
時間割
週 講義内容
第1-2週
[複素数と複素数列]
複素平⾯と極形式
オイラーの公式、複素級数
第3-5週
[複素関数]
平⾯を平⾯に写すということ。
指数関数と三⾓関数、等⾓写像
第6-8週
[複素関数の微分]
正則関数、調和関数
コーシー・リーマンの微分⽅程式
第9-10週
[複素関数の積分]
コーシーの積分定理
留数定理
教材
講義ノート、配布プリント
成績評価
基本的に毎回の演習問題と期末試験で評価する。
オフィスアワー
⽔曜⽇17:00-18:00
備考
毎回演習問題を出す。
14
データ構造とアルゴリズム[GB11931]
DataStructuresandAlgorithms
対象:2学年 開設学期:春ABC 曜⽇・時限:⽉3・4 単位数:3単位
担当教員:北川博之,天笠俊之,⻑⾕部浩⼆
概要
ソフトウェアを書く上で基本となるデータ構造とアルゴリズムの考え⽅について学ぶ。線形構造、⽊構造、グラフ構造、データ整列、データ探索について学習
する。
学習・教育⽬標
プログラミング技術の基本となるデータ構造とアルゴリズムを理解する。
キーワード
リスト、⽊、グラフ、整列、探索
Keywords
list,tree,graph,sorting,andsearch
時間割
週 授業計画
第1週1.アルゴリズムとデータ構造の基本概念
アルゴリズムの正しさ、アルゴリズムの評価、データ構造
第2〜3週2.基本的なデータ構造
配列,リンク配置,連結リスト,スタック,キュー,⽊構造
第4週3.集合とハッシュ
集合の表現⽅法と集合に対する操作,辞書とハッシュ法
第5〜6週4.全順序集合
ヒープ,2分探索⽊,AVL⽊
第7〜8週5.整列
単純な整列アルゴリズム,ヒープソート,クイックソート,マージソート
第9週 第8週⽬までの復習及び中間試験
第10〜11週6.グラフアルゴリズム
隣接⾏列,隣接リスト,深さ優先探索,幅優先探索,Dijkstra法
第12〜13週7.⽂字列照合
単純照合法,KMP法,BM法
第14週8.アルゴリズムの設計⼿法
分割統治法,グリーディ法,動的計画法
第15週 第14週⽬までの復習及び期末試験
教材
教科書:「アルゴリズムとデータ構造」(原隆浩,⽔⽥智史,⼤川剛直著)共⽴出版
参考書籍
「Cで学ぶデータ構造とアルゴリズム」(⻄原清⼀著)オーム社
予備知識・前提条件
JavaまたはC⾔語による簡単なプログラミングの経験があること。
成績評価
成績評価は、中間試験、学期末試験および講義時間中に⾏われる何回かの⼩テストの成績を、中間・学期末試験80%、⼩テスト20%の割合で考慮して⾏う。
教員メールアドレス
北川博之:kitagawa,天笠俊之:amagasa,⻑⾕部浩⼆:hasebe
のあとに(AT)cs.tsukuba.ac.jp
TF・TA
TA:草村優太、⾼橋知克、菅野健太、三浦⼤地(コンピュータサイエンス専攻)
オフィスアワー
⽔12:00-13:30総B903(北川)
特に定めないので、事前にメール等でアポイントを取ること(天笠)
備考
平成25年度までに開設された「データ構造とアルゴリズム」(GB11911,GB11921)の単位を修得した者の履修は認めない。
15
データ構造とアルゴリズム実験[GB11936,GB11946]
DataStructuresandAlgorithmsLaboratory
対象:2学年 開設学期:春ABC 曜⽇・時限:⽉5・6 単位数:1.5単位
担当教員:12クラス:天笠俊之,34クラス:⼩林諒平
概要
データ構造とアルゴリズムに関して, Javaを⽤いてプログラムを作成し, そのプログラムが稼動することを確認する。プログラムは, 毎週または隔週に⼀個の
割合で作成する。
学習・教育⽬標
1. プログラミング技術の基本となるデータ構造とアルゴリズムを理解する
2. 基本的なデータ構造、アルゴリズムを⽤いたプログラミングの技術を習得する
キーワード
Java⾔語、リスト、⽊、グラフ、整列、探索
Keywords
Java,list,tree,graph,sorting,andsearch
時間割
課題 実験内容
課題1 Javaによるプログラミングの復習
課題2 連結リスト,スタック,キュー
課題3 ハッシュ法
課題4 ヒープ,2分探索⽊
課題5 整列
課題6 グラフアルゴリズム
課題7 ⽂字列照合
課題8 アルゴリズムの応⽤
教材
教科書:「アルゴリズムとデータ構造」(原隆浩,⽔⽥智史,⼤川剛直著)共⽴出版
参考書籍
「Cで学ぶデータ構造とアルゴリズム」(⻄原清⼀著)オーム社
成績評価
成績評価は、提出したレポートを主体に⾏う。
オプション課題は除くすべての課題のレポートを提出することを,合格の必須条件とする。
教員メールアドレス
天笠俊之:amagasa
⼩林諒平:kobayashi
のあとに(AT)cs.tsukuba.ac.jp
TF・TA
TA:草村優太、⾼橋知克、菅野健太、三浦⼤地(コンピュータサイエンス専攻)
オフィスアワー
特に定めないので、事前にメール等でアポイントを取ること。
備考
講義「データ構造とアルゴリズム」の進み⽅に合わせ、プログラミング実験を⾏う。平成26年度までに開設された「データ構造とアルゴリズム実験」(GB11916,
GB11926)の単位を修得した者の履修は認めない。
16
システムプログラミング序論[GB11954]
IntroductiontoSystemProgramming
対象:2学年 開設学期:秋ABC 曜⽇・時限:⽉3・4 単位数:3単位
担当教員:⼤⼭恵弘
概要
システムプログラミングの基礎を学ぶため、C⾔語およびx86アセンブリ⾔語によるプログラミングについて講義する。それらの⾔語によるプログラムの作成を
通して、ソフトウェアの低い層における構成や動作を理解することで、実際のコンピュータがどのようにしてプログラムを実⾏するのかを理解する。また、C⾔
語のプログラムとアセンブリ⾔語のプログラムの関係についても理解する。
学習・教育⽬標
1.C⾔語による簡単なプログラミングができるようになる。
2.x86アセンブリ⾔語による簡単なプログラミングができるようになる。
3.ソフトウェアの低い層におけるプログラムの記述や動作について理解する。
キーワード
C⾔語、システムプログラム、アセンブリ⾔語、機械語、x86、計算機アーキテクチャ
Keywords
Clanguage,systemprograms,assemblylanguage,machinelanguage,x86,computerarchitecture.
時間割
週 講義内容/理解すべき項⽬
第1,2週 オリエンテーション,C⾔語の基本,⽂字と⽂字列,多次元配列
第3,4週 ファイル⼊出⼒,コマンドライン引数,ポインタ
第5,6週 構造体,動的なメモリ割り当て,リスト構造,再帰呼び出し,⽊構造
第7週 関数ポインタ,不正なメモリアクセス
第8週 中間試験とその解説
第9,10週 コンピュータの仕組みと機械語,基本的な命令
第11,12週 最適化,フラグレジスタ,整数の表現,演算命令
第13,14週 関数呼び出し,C⾔語との連携,様々な命令,実⾏可能ファイル
第15週 期末試験とその解説
教材
講義資料、実習問題等を講義のWebページやmanabaを通じて配布する。
参考書籍
⾼橋⿇奈,やさしいC第5版,ソフトバンククリエイティブ
柴⽥望洋,新・明解C⾔語⼊⾨編,ソフトバンククリエイティブ
柴⽥望洋,新・明解C⾔語ポインタ完全攻略,ソフトバンククリエイティブ
B.W.カーニハン,D.M.リッチー,プログラミング⾔語C第2版,共⽴出版
DavidA.Patterson,JohnL.Hennessy,コンピュータの構成と設計第5版上,⽇経BP
IA-32インテルアーキテクチャソフトウェア・デベロッパーズ・マニュアル
Intel64andIA-32ArchitecturesSoftwareDeveloper'sManual
予備知識・前提条件
「コンピュータリテラシ」「プログラミング⼊⾨A,B」「論理回路」「データ構造とアルゴリズム」で学ぶ知識
成績評価
中間および期末試験、レポートを総合して評価する。出席状況が良くない場合には減点することがある.
教員メールアドレス
oyama
のあとに(AT)cs.tsukuba.ac.jp
オフィスアワー
⽔曜3限学術情報メディアセンターA416
備考
平成25年度までに開設された「機械語序論」(GB12701)の単位を修得した者の履修は認めない。
17
論理回路実験[GB12016]
LogicCircuitLaboratory
対象:2学年 開設学期:春AB 曜⽇・時限:⽊3・4・5 単位数:1.5単位
担当教員:和⽥耕⼀,庄野和宏,冨安洋史,三宮秀次
概要
基礎的な論理回路について、実際に回路を組んで学ぶ。
学習・教育⽬標
基本的な論理回路について、実際の論理素⼦を⽤いて回路を組み上げ、動作を確認することで論理回路に対する理解を深める。
キーワード
組み合わせ回路、順序回路、有限オートマトン
Keywords
combinatoriallogiccircuits,sequentiallogiccircuits,finiteautomata
時間割
実験テーマ 内容
標準ロジックICと、スイッチ、LED スイッチ、基本論理回路、Dフリップフロップなどの動作の確認を⾏なう。
順序回路とシフトレジスタ 順序回路の概念の理解と、⽚⽅向シフトレジスタの設計製作を⾏う。
セレクタや演算回路を組み合わせたシフトレジスタの拡張セレクタを⽤いたシフトレジスタの双⽅向化、リセット回路の付加等、簡単な演算回路を⽤
いて既存の回路を拡張していく⽅法を学ぶ。
発展 双⽅向シフトレジスタの周辺回路を各⾃で設計製作し、動作確認を⾏う。
教材
(a)ホームページ上の論理回路実験テキストをダウンロード、印刷して⽤いる。
(b)だれにもわかるディジタル回路(天野英晴・武藤佳恭、オーム社)
参考書籍
だれにもわかるディジタル回路(天野英晴・武藤佳恭、オーム社)
論理回路ノート(⾼橋寛、コロナ社)
予備知識・前提条件
論理回路の知識を前提とする。
成績評価
実験ノートへの記録状況、レポートの成績を総合して評価する。レポートは、⽴ち会い検査を受けてから提出すること。レポートは締め切りを厳守すること。
教員メールアドレス
和⽥耕⼀:wada
庄野和宏:shouno
冨安洋史:tomiyasu
三宮秀次:san
の後に(AT)cs.tsukuba.ac.jpを付ける
講義のWebページ
URL:http://www.coins.tsukuba.ac.jp/logic-circuit-jikken/
オフィスアワー
⽉10:00〜12:003F830(和⽥)
備考
第1週にガイダンスを⾏うので必ず出席すること。
18
電気回路[GB12201]
ElectricCircuitsandSystems
対象:2学年 開設学期:秋AB 曜⽇・時限:⾦1・2 単位数:2単位
担当教員:庄野和宏
概要
コンピュータ、携帯電話などの情報通信機器の中で、多くの電気回路が使われている。本講義では、社会に出て役に⽴つと思われる電気回路の基礎的な事柄を
解説し、演習を⾏う。なお「電気回路」の考え⽅は、様々なところで使われており、会社に⼊ってから最も役⽴つ科⽬の1つと⾔われている。
学習・教育⽬標
回路の振る舞いを、正しく把握できるようになることを⽬標とする。そのために、計算ミスを誘発しやすいキルヒホッフの法則をできるだけ「使わないで」回
路を解析できるようになることを⽬標とする。
1. 直流回路の理解を通して、回路に慣れる(第1〜2週)
2. 正弦波交流回路を理解する(第3〜5週)
3. 2端⼦対回路が扱えるようになる(第6週)
4. ⾮正弦周期波の性質を理解する(第7週)
5. 過渡現象を理解する(第8〜9週)
キーワード
直流回路,交流回路,テブナンの定理,過渡現象
Keywords
DCcircuit,ACcircuit,Thevenin'stheorem,Transientresponse
時間割
週 講義内容
第1週直流回路:
回路素⼦、キルヒホッフの法則、直流電⼒
第2週電気回路の諸定理:
重ね合わせの理、テブナンの定理、等価電圧源と等価電流源
第3,4週交流回路:
正弦波交流、交流回路における回路素⼦の性質、インピーダンス、正弦波交流の電⼒
第5週正弦波交流回路:
共振回路、相互誘導回路
第6週2端⼦対回路:
インピーダンス⾏列、アドミタンス⾏列、F⾏列、回路の接続
第7週⾮正弦波周期波とフーリエ級数:
⾮正弦波周期波、フーリエ級数
第8,9週過渡現象とラプラス変換:
回路の微分⽅程式と解き⽅、ラプラス変換による解き⽅
第10週 これまでの復習:
教材
「基礎電気回路」 岩重⼆郎、河村壽三著 愛智出版
参考書籍
電気回路の教科書は無数にある。本講義で使⽤する教科書の他に、⾃分の感覚に合ったものを⼊⼿するのがよいが、例えば、
「詳しく学ぶ電気回路〜基礎と演習〜」 南⾕晴之、松本佳宣共著 コロナ社
がある。また、⽐較的詳しく書かれているものとして、次のものがある。
「⼤学課程 電気回路(1)」 ⼤野克郎、⻄哲夫共著 オーム社
「⼤学課程 電気回路(2)」 尾崎弘著 オーム社
予備知識・前提条件
三⾓関数、複素数の知識が必要
成績評価
中間試験は予定していないが、前半終了時にレポートを課す。課題15%,中間レポート35%,期末試験50%で評価する。
教員メールアドレス
shouno(AT)cs.tsukuba.ac.jp
講義のWebページ
https://www.ecloud.tsukuba.ac.jp/manaba
オフィスアワー
⽔11:30〜12:153F532
19
数値計算法[GB12301]
IntroductiontoNumericalAnalysis
対象:2学年 開設学期:春AB 曜⽇・時限:⽕3・4 単位数:2単位
担当教員:櫻井鉄也,今倉暁,⼆村保徳
概要
本講義では,各種の分野で広く⽤いられる数値計算の基本的な概念と⼿法を学ぶことを⽬的としている.コンピュータにおける数値計算の仕組み,関数の近似
法,連⽴⼀次⽅程式の解法,⾮線形⽅程式の解法などについて講義する.数値計算に便利な⾔語であるMATLABおよびScilabによるプログラミング演習を通して
理解を深める.コンピュータによる数値計算は,研究開発,製品設計,⽣産管理,データ解析など幅広い分野で利⽤されており,数値計算の基礎知識や便利な
ツールを使いこなすスキルはその応⽤範囲が広い。
学習・教育⽬標
コンピュータにおける数値の表現や取り扱い,近似法や⽅程式の解法の基礎的な⼿法について理解する.また,数値計算に便利なツールの使い⽅を習得すると
ともに,プログラミングの基礎的な事項についても理解を深める.
キーワード
数値解析,計算ツール,可視化
Keywords
NumericalAnalysis,ComputationalTools,Visualization
時間割
週 講義内容/理解すべき項⽬
第1週 講義の概要説明と準備
第2〜3週 数値計算のためのツールと可視化,MATLAB・Scilabの使い⽅とプログラミング,グラフ作成
第4週 コンピュータにおける数の表現と四則演算,丸め誤差,桁落ち,情報落ち
第5〜6週 関数の近似法,多項式補間
第7週 最⼩⼆乗法,QR分解
第8週 マクローリン展開,初等関数の近似
第9週 連⽴⼀次⽅程式の解法,LU分解,前進・後退代⼊
第10週 ⾮線形⽅程式の解法,ニュートン法
教材
「MATLAB/Scilabで理解する数値計算」櫻井鉄也著,東京⼤学出版会
参考書籍
名取亮編:「数値計算法」,オーム社
名取亮著:すうがくぶっくす12「線形計算」,朝倉書店
⼆宮市三編:「数値計算のつぼ」,共⽴出版
⼆宮市三編:「数値計算のわざ」,共⽴出版
予備知識・前提条件
線形代数と微積分の基礎.
成績評価
講義と演習の取組状況,演習のレポートおよび期末試験の成績を総合して評価する.
教員メールアドレス
櫻井:sakurai(AT)cs.tsukuba.ac.jp、今倉:imakura(AT)cs.tsukuba.ac.jp、⼆村:futamura(AT)cs.tsukuba.ac.jp
講義のWebページ
manabaを利⽤する
オフィスアワー
講義時に指⽰する.
備考
基本的に1限⽬は計算機室で演習,2限⽬は教室で演習の解説および授業を⾏う.1週⽬は情報科学類計算機室3C113に集合すること.演習ではプログラミング
⾔語としてMATLABを⽤いるが,初⼼者でも使えるように配慮する.
20
システム制御概論[GB12401]
IntroductiontoSystemControl
対象:2学年 開設学期:秋AB 曜⽇・時限:⾦3・4 単位数:2単位
担当教員:⼤⽮晃久
概要
⼯学の対象となる各種システムとその数理モデルの解析法、およびシステム制御のための基礎について学ぶ。時間領域における制御系の解析および安定性や、
状態空間法をベースとしたレギュレータ、サーボ系の設計等のフィードバック制御の基礎について解説し、具体例として倒⽴振⼦の制御法を述べる。また、
ファジイ制御、ニューラルネットの応⽤等についても解説する。なお、ビデオ等を⽤いた応⽤例の紹介や、授業内容の理解を深めるための練習問題の演習など
も適宜⾏う。
学習・教育⽬標
1. システム制御の基礎について理解する。(第1〜2週)
2. システムのモデル化と解析について理解する。(第3〜4週)
3. フィードバック制御系の設計と実現⽅法について理解する。(第5〜7週)
4. システム制御に関する歴史と現状について理解する。(第8〜10週)
キーワード
線形システム、フィードバック制御、モデル化、安定性、状態⽅程式、レギュレータ、サーボ系、ファジイ制御
Keywords
LinearSystem,FeedbackControl,Modelling,Stability,EquationofState,Regulator,ServoControl,FuzzyControl
時間割
週 講義内容/理解すべき項⽬
第1週はじめに
システムとは,制御とは
第2週制御のための⽅法
フィードフォワード/フィードバック制御,制御装置,ブロック線図
第3週システムのモデル化
アナログ系/デジタル系の表現,システムの⽅程式,伝達関数
第4週システムの解析
ステップ応答,定常応答と過渡応答,平衡点と安定性
第5週制御系の設計
レギュレータの設計(極配置法,最適レギュレータ),サーボ系の設計
第6週制御系の実現
コンピュータの応⽤(計算機シミュレーションとデジタル実現)
第7週倒⽴振⼦の制御
モデル化(運動⽅程式の導出、パラメータ推定),制御系の解析・設計
第8週システム制御の歴史
古典制御から現代制御まで
第9週インテリジェント制御
ファジー制御,ニューラルネットの応⽤
第10週ロボットの制御
モータ制御,移動体の速度/位置/軌跡制御
教材
毎週プリントを配布する。
参考書籍
「システム制御へのアプローチ」(⼤須賀公⼀、⾜⽴修⼀:コロナ社)
「ディジタル制御⼯学」(兼⽥雅弘、⼭本幸⼀郎:共⽴出版)
「制御システム技術の理論と応⽤」(広井和夫編:電気書院)
成績評価
講義への出席を前提とし、演習課題の成績と学期末試験の成績を総合して評価を⾏う。
教員メールアドレス
⼤⽮晃久:ohya@cs.tsukuba.ac.jp
TF・TA
オフィスアワー
⽉10:30〜12:30 総合研究棟B棟1009(⼤⽮)
21
情報理論[GB12501]
InformationTheory
対象:2学年 開設学期:秋C 曜⽇・時限:⽕3・4,⾦3・4 単位数:2単位
担当教員:伊藤誠
概要
情報理論とは情報伝送(通信)の数学的理論である。特に、1948年にシャノンが発表した確率論を基礎とした情報理論は、情報伝送のみならず現代の情報学の
様々な分野で利⽤されている。情報学を学ぶ学⽣が知っていて当然と思われるシャノンの情報理論について演習を交えて解説する。
学習・教育⽬標
1. 情報を測る様々な量(各種情報量)を理解する。
2. 情報の効率的な表現⽅法について、その理論的限界と代表的⼿法を理解する。
3. 情報の効率的な伝送⽅法について、その理論的限界と代表的⼿法を理解する。
キーワード
通信,符号化,情報量
Keywords
communication,encoding,information
時間割
回 講義内容/理解すべき項⽬
第1回
情報とその表現
情報理論とは、情報とは何か、情報源の統計モデル、情報伝送系のモデル、標本化と量⼦化
CDのしくみ等の⾝近な例を使って、本講義で学ぶ内容を解説する。
第2回情報圧縮のための符号化(情報源符号化)
符号の種類、クラフトの不等式
第3〜5回情報源符号化の理論
情報量、エントロピー、マルコフ情報源、符号化の基本定理、ハフマン符号
第6〜7回信頼性向上のための符号化(通信路符号化)
誤り検出・訂正符号、パリティ検査符号、組織符号、ハミング距離
第8〜9回通信路符号化の理論
通信路と通信路⾏列、相互情報量、伝送情報量、通信路容量、通信路符号化の基本定理
第10回やや⾼度な話題
線形符号(巡回符号,特にCRC)
教材
manabaにて資料を適宜配布する
参考書籍
植松友彦,イラストで学ぶ情報理論の考え⽅,講談社
⽢利俊⼀,情報理論,ダイヤモンド社
⼩林欣吾,森⽥啓義,情報理論講義,培⾵館
横尾英俊,情報理論の基礎,共⽴出版
予備知識・前提条件
確率論の知識を前提とする。
成績評価
授業中に実施するクイズ,レポートと試験により評価を⾏う.
教員メールアドレス
TF・TA
TA涂 念之(リスク⼯学専攻博⼠前期課程1年)
講義のWebページ
manabaを利⽤する予定
オフィスアワー
メールにて事前に問い合わせてください.
備考
確率論の知識を必要とする。
22
論理と形式化[GB12601]
IntroductiontoFirst-orderLogicandFormalization
対象:2学年 開設学期:春AB 曜⽇・時限:⾦3・4 単位数:2単位
担当教員:⽔⾕哲也,海野広志
概要
ソフトウェア科学や⼈⼯知能など,種々の分野で⽤いられる論理式の正確な読み書きと証明の⽅法,論理学の情報科学への応⽤等を理解する.
学習・教育⽬標
命題論理および⼀階述語論理の形式体系と意味論を理解し,論理による形式化の⼿法を習得する.また,論理を使ったプログラミングなど,情報科学への論理
の応⽤について学ぶ.
キーワード
⼀階述語論理,⾃然演繹法,形式体系,証明,導出原理.
Keywords
first-orderlogic,naturaldeduction,formalsystem,proof,resolution.
時間割
週 講義内容/理解すべき項⽬
第1週 (担当:⽔⾕)論理とは何か:実例・応⽤・様々な論理,論理式による表現,情報科学における論理.
第2週 (担当:⽔⾕)⼀階述語論理の意味及び体系:意味論,形式体系,⼀階⾔語,⾃然演繹(NK).
第3-6週 (担当:⽔⾕)⼀階述語論理の証明:様々な論理式の証明,演習.
第7-9週 (担当:海野)命題論理・⼀階述語論理の計算:証明探索、導出原理、単⼀化、SAT、SMT.
第10週 (担当:海野)発展的な内容、授業のまとめ.
教材
講義もしくはmanabaなどを通じて配布する.
参考書籍
前原昭⼆: 記号論理⼊⾨[新装版],⽇本評論社,2005.
⼩野寛晰: 情報科学における論理,⽇本評論社,1994.
⿅島亮: 数理論理学,朝倉書店,2009.
予備知識・前提条件
「離散構造」の内容を修得していることが望ましい.
成績評価
授業への出席を前提として,期末試験(50%),レポート及び演習成績(50%)により評価する.
教員メールアドレス
⽔⾕:mizutani(at)cs(dot)tsukuba(dot)ac(dot)jp
海野:uhiro(at)cs(dot)tsukuba(dot)ac(dot)jp
オフィスアワー
⽔⾕:⽊5限3F708
海野:SB907で適宜受け付けるが、事前連絡をしてから訪問すること
23
論理システム[GB12801]
LogicSystem
対象:2学年 開設学期:春C 曜⽇・時限:⽊1・2 単位数:1単位
担当教員:⼭⼝佳樹,⾦澤健治
概要
論理回路を⽤いたシステム設計と実際について、順序回路の系統的設計法を中⼼に、解説を⾏う。
講義の前半は論理回路の復習と同期式回路について学ぶ。講義の後半はハードウェア記述⾔語の⼊⾨とそれを利⽤した具体的な論理システムへの応⽤を視野に
⼊れた授業となる。
学習・教育⽬標
1. 同期回路設計における基礎および設計⼿法を理解する
2. ハードウェア記述⾔語の考え⽅を理解する
3. ハードウェア記述⾔語を⽤いた設計⼿法を理解する
4. システム設計の基本となる、制御回路とデータバスの設計の実際を理解する
キーワード
論理回路、同期回路、有限状態機械、回路設計、ハードウェア記述⾔語
Keywords
LogicCircuit,SynchronousLogic,Finite-StateMachineDescription,LSIDesign,HardwareDescriptionLanguage
時間割
週 講義内容/理解すべき項⽬
第1週
論理回路の復習
組み合わせ回路と順序回路
真理値表、カルノー図
回路設計の考え⽅と基礎
加減算器、デコーダ、セレクタ、コンパレータ
基本記憶素⼦(ラッチ、フリップフロップ)
状態遷移図を⽤いた順序回路設計
第2週
同期回路設計の基礎
有限状態機械、状態遷移図、状態の簡単化
メモリと真理値表と組み合わせ回路
同期回路と⾮同期回路
フリップフロップ・プログラミング
タイミング設計の基礎
動特性、クリティカルパス
第3週
ハードウェア記述⾔語⼊⾨
ハードウェア記述⾔語の考え⽅と設計指針
モジュール構造と組み合わせ回路の記述
モジュール記述とポート宣⾔
always⽂の使い⽅
同期リセットと⾮同期リセット
第4週
ハードウェア記述⾔語による回路設計
回路シミュレータの利⽤
乗算器の設計
ステートマシンの設計
システムデザイン
プロセッサの設計
第5週
ハードウェア記述⾔語による回路設計2
ハードウェア記述⾔語を利⽤した論理システム開発⼿順
バス構成と論理回路によるシステム設計
バスと3ステート出⼒
同期式バスと⾮同期式バス
制御回路とデータバス
教材
スライドをmanabaで配布
参考書籍
「ディジタル集積回路の設計と試作」
VDEC監修、浅⽥邦博編、培⾵館
「だれにもわかるディジタル回路 改訂3版」
相磯秀夫(監修)、天野英晴、武藤佳恭(共著)、オーム社
「⼊⾨VerilogHDL記述―ハードウェア記述⾔語の速習&実践」⼩林優(著)
予備知識・前提条件
「論理回路」の単位を取得していることを推奨する。
成績評価
毎週課されるレポート(40点)と最終課題(60点)により総合的に評価する。
教員メールアドレス
⼭⼝佳樹:yoshiki(AT)cs.tsukuba.ac.jp,⾦澤健治:kanazawa(AT)cs.tsukuba.ac.jp
TF・TA
TA:1名
講義のWebページ
Manabaで開設予定。
オフィスアワー
⽊11:25〜12:15総合研究棟B1109(⼭⼝),メール連絡をもらえれば随時(⾦澤)
24
ソフトウェア技法[GB12901]
ArtofProgramming
対象:2学年 開設学期:春C 曜⽇・時限:⽕3・4、⾦3・4 単位数:2単位
担当教員:⻲⼭幸義
概要
関数プログラミングを通して、データ構造とアルゴリズムの設計、プログラムとしての実装の基本技法を学ぶ。使⽤するプログラム⾔語は、OCamlである。講
義とともに、情報科学類計算機システムを⽤いて、OCamlプログラミングの演習を⾏う。
学習・教育⽬標
関数プログラミングの基礎となる考え⽅を理解する。
代数データ型と再帰関数に基づくプログラミング技法を修得する。
関数プログラムミングに基づいて、まとまったソフトウェアを作成できるようになる。
キーワード
関数プログラミング、再帰関数、リスト・プログラミング、データ型、アルゴリズムの設計、プログラムの正しさ。
Keywords
FunctionalProgramming,RecursiveFunction,ListProgramming,DataType,AlgorithmDesign,CorrectnessofPrograms.
時間割
週 講義内容/習熟すべき項⽬
第1,2回概要
関数プログラミングの基本的な考え⽅、プログラム⾔語OCamlの概要、記号と変数、⼿続きの定義を理解する。
第3,4回基本的データ構造、リスト
データ構造とリストを理解し、これらに対する基本的なプログラムを書く。
第5,6回再帰によるプログラミング
再帰関数を⽤いたプログラミング技法を習得し、⾃然数やリストに対する様々なプログラムを作成する。
第7,8回
代数的データ型を⽤いたプログラミング
OCamlの代数的データ型により様々なデータ構造を定義および利⽤する技法を習得する。また、これらのデータ構造に対するプログラム
を作成する。
第9,10回ミニプロジェクト
前週までに習得した技法を組み合わせて、まとまったプログラムを作成する。
教材
講義の資料は、manabaシステムを通じて受講者に配布する。
参考書籍
プログラミングの基礎(ComputerScienceLibrary)、浅井健⼀(著)、サイエンス社、2007年。
⼊⾨OCamlプログラミング基礎と実践理解、OCaml-Nagoya(著)、毎⽇コミュニケーションズ、2007年。
プログラミングinOCaml,関数型プログラミングの基礎からGUI構築まで、五⼗嵐淳(著)、技術評論社、2007年。
予備知識・前提条件
情報科学類の計算機システムの基本的な使い⽅を修得していること。または、授業開始後短期間で修得する意欲と時間を持っていること。
必須ではないが、演習の効率を⾼めるため、emacsエディタの利⽤を推奨する。
成績評価
学習・教育⽬標ごとにレポートを出題して、それらの合計得点により評価する。期末試験は⾏わない。
教員メールアドレス
kamのあとにcs.tsukuba.ac.jp
TF・TA
未定。
講義のWebページ
担当教員のホームページからリンクする。また、講義資料はmanabaシステムに置く。
オフィスアワー
初回の授業で連絡する。
備考
情報科学類以外の学⽣は、初回の授業初回で計算機室利⽤のための⼿続きを取るので、遅刻しないこと。
25
オブジェクト指向プログラミング実習[GB13013]
ExcerciseinObject-OrientedProgramming
対象:2学年 開設学期:秋C 曜⽇・時限:⽔1・2,⽊3・4 単位数:1単位
担当教員:前⽥敦司
概要
Java⾔語を題材とし,実習を通じてオブジェクト指向プログラミングの基本的な技法を学ぶ.継承・カプセル化・ポリモーフィズム等の概念を,課題を通して
学習する.
学習・教育⽬標
オブジェクト指向プログラミング⾔語の特徴を理解し,活⽤したプログラミングができることを⽬標とする.
キーワード
プログラミング,オブジェクト指向プログラミング,抽象化,ソフトウェア開発
Keywords
Programming,Object-OrientedProgramming,Abstraction,SoftwareDevelopment
時間割
週 講義内容/理解すべき項⽬
1 基本概念(クラス,インスタンス,メソッド,フィールド,継承)
2 抽象クラス,インターフェース,再利⽤(継承,コンポジション)
3〜4 基礎的なプログラミング技法,データ構造の実現法,クラスライブラリ(特にコレクション)の利⽤法
5 より⾼度なプログラミング課題
参考書籍
IntroductiontoProgramminginJava:AnInterdisciplinaryApproach2ndEdition,Addison-WesleyProfessional(2017)
ガンマ他「オブジェクト指向における再利⽤のためのデザインパターン」ソフトバンクパブリッシング(1999)
メイヤー「オブジェクト指向⼊⾨第2版原則・コンセプト」翔泳社(2007)
予備知識・前提条件
Javaによる基本的なプログラミングができること.情報科学類教育⽤計算機の使⽤法に習熟していること.
成績評価
プロジェクト課題とクイズ(⼩テスト)によって各週の学習状況を評価し,個⼈課題等によって理解度を評価する.
教員メールアドレス
maeda@cs
講義のWebページ
学習管理システム(manaba)を⽤いる.
オフィスアワー
⽕曜6限・⾦曜5限.学術情報メディアセンター408または総合研究棟B棟1108.確実に⾯談したい場合には予約すること.
備考
平成25年度までに開設された「ソフトウェア構成論」(GB13001)の単位を修得した者の履修は認めない.
26
論理システム実験[GB13106]
LogicSystemLaboratory
対象:2学年 開設学期:秋AB 曜⽇・時限:火3・4・5 単位数:1.5単位
担当教員:冨安洋史,⼭⼝佳樹
概要
受講⽣は試作⽤基板(FPGAが実装された回路基板)の貸し出しを受け、その基板を⽤いてハードウェア記述⾔語によるシステム構築⽅法を学んでいく。第5週
頃からは、ステレオカメラモジュールも貸し出し、画像処理⽤ハードウェアシステムについて実践的な演習を⾏っていく。以上により、回路設計から実機動作
までの⼀貫した知識および経験を学習することができる。なお、第1週にガイダンスを⾏うのでこれに必ず出席すること。
学習・教育⽬標
FPGAという実機を⽤いた設計・実装・検証を体験を通して学ぶ。つまり、これまでに学んだ論理回路および論理システムで学習した知識を⾏動によって活
学とすることを⽬標とする。
実験には、カウンタ・バス制御・メモリ制御・論理演算・数値演算などの設計が含まれる。受講時に電⼦配布するテキスト(約100ページ)とソースコード
テンプレートによりかなりサポートされてはいるが、実システムを⾃分の⼒で設計することが求められる課題が⽤意されている。
キーワード
論理回路、論理システム実験、ハードウェア記述⾔語、FPGA、画像処理
Keywords
logicsystem,hardwaredescriptionlanguage,FPGA,imageprocessing,imagefiltering
時間割
週 授業計画
第1段階 ガイダンス
第2段階 ハードウェア記述⾔語の学習と設計ツールの利⽤⽅法
第3段階 FPGAボードの利⽤と回路設計
第4段階 基礎課題
第5段階 ⾃由課題
教材
manabaで配布する。
参考書籍
情報科学類科⽬:「論理回路」テキスト(相磯秀夫監修、天野英晴、武藤佳恭共著、”だれにもわかるディジタル回路”(改訂3版)オーム社発⾏)
予備知識・前提条件
情報学類科⽬:「論理回路」「論理回路実験」「論理システム」を修得していることが望ましい。
成績評価
成績は、毎週課される課題・実験結果・実験レポートによって評価する。単位の修得には以下の項⽬を満⾜する必要がある。
⼗分な出席
7回以上の出席(4回休むとD評価となります)。
体調不良等⽌むを得ず⽋席する場合は⽋席届を必ず提出すること。
期限内のレポート提出
(課題が早く終わる場合)次週以降の課題レポートを前倒しで提出しても構いません。
特別な事情でレポート提出が遅れた場合は改めて相談して下さい。
機材の返却
実験終了時(第10回⽬の授業終了時)に必ず返却して下さい。
機材貸出の延⻑を希望する場合、必ず担当教員に連絡してください。
履修放棄する場合は、履修放棄を決めた段階で機材を返却して下さい。
教員メールアドレス
実験世話⼈(冨安洋史)
tomiyasu[at]cs.tsukuba.ac.jp
[AT]を@と読み替える
実験世話⼈(⼭⼝佳樹)
yoshiki[AT]cs.tsukuba.ac.jp
[AT]を@と読み替える
講義のWebページ
教材はmanabaで配布するものが最新なので注意すること。
オフィスアワー
⽉曜四五限理修棟D306
⽕曜六限理修棟D306
27
情報特別演習I,II[GB13312,GB13322]
SpecialExerciseinInformationScienceI,II
対象:I:2学年,II:3学年 開設学期:通年 曜⽇・時限:随時 単位数:2単位
担当教員:海野,庄野,⼭⽥他
概要
学⽣が興味や能⼒に応じて⾃主的に演習テーマを設定して,それに適したアドバイザ教員を決定して打ち合わせを⾏いながら演習を実施する.どのようなテー
マを選択したら良いか分からない学⽣には,テーマの決定について教員が相談にのりアドバイスを⾏う.最後に演習結果を発表する公開発表会を⾏いレポート
を提出する.企画⼒,実⾏⼒,表現⼒,プレゼンテーション能⼒を養うことを⽬的とする.
学習・教育⽬標
1.⾃分の興味や能⼒に応じて適切な演習テーマを決定できること.
2.アドバイザ教員と打ち合わせを⾏いながら⾃⼒で演習を完成させること.
3.的確なプレゼンテーションが⾏えること.
時間割
⽉ 講義内容/理解すべき項⽬
4〜5⽉ 演習テーマとアドバイザ教員の決定4⽉の説明会の後,様々な教員を訪問し演習テーマとアドバイザ教員を決定する.
6〜12⽉ 演習実施アドバイザ教員と打ち合わせを⾏いながら演習を実施する.
7⽉ 中間発表会演習テーマの概要について,レポートを提出し中間発表会において報告する.
12⽉ 最終発表会公開発表会において,各⾃が10分程度で演習結果を発表する.
1⽉ レポート提出演習結果をまとめたレポートを提出する.
予備知識・前提条件
テーマの決定⽅法について:
4〜5⽉にかけて様々な教員を訪問し演習テーマとアドバイザ教員を決定するが,決定にあたって以下に注意すること.事前にアドバイザ教員を訪問しない学⽣
の履修は認めない.アドバイザ教員1⼈当たりの担当学⽣数は3⼈以内とする.1つのテーマを複数の学⽣がグループを作って分担してもよいが,1グループ
の学⽣数は3名以内とする.テーマとしてはプログラムを作ることに限定しない.例えば,ソースコードの解読や⽂献調査も認められる.
演習テーマの例:
サーバ構築とネットワーク管理
OpenTypeフォントの構造とレンダリング
Webアプリケーションに対する脆弱性スキャナの研究開発
ChineseLanguageAuditoryBCISpeller(中国語⼊⼒のための聴覚BCIスペル)
⾼次局所⾃⼰相関特徴を利⽤した印象語によるマルチメディアの検索
2次元物理シュミレータの開発
MIDIデバイスなどによるソフトウェアの制御を簡略化するためのライブラリの開発
マイコンを⽤いたスマートウォッチ制作
Haskellを⽤いたAPL⾵⾔語の処理系実装
WebUIを備えた脆弱性解析のためのHTTPProxyの実装
FPGAで作る⾃動演奏機械
XBeeを⽤いた通信機能付きセンサーモジュールによる畑のセンシング
株価の変動とTwitterにおける評判の相関分析
JavaによるGUI囲碁アプリケーションの作製
Railsを利⽤したWebアプリケーション「やる夫板エクスプレス」の開発
密⾏列におけるガウス消去法とLU分解による連⽴⽅程式ソルバーの並列実装
例外処理を追加したLua処理系の実装
密⾏列のブロックLU分解の実装と性能評価
luaでのカードゲームのAIスクリプト作成
Pythonによる混合ガウス分布を⽤いた多対多統計的声質変換の実装
影による物体の認識変容
数値計算⽤プログラミング⾔語の開発
SchemeSource-CodeOptimizerの実装
成績評価
中間発表会における発表(20%),最終発表会における発表(30%)とレポート(50%)を総合して評価する.
教員メールアドレス
海野:[email protected],庄野:shouno@cs.tsukuba.ac.jp,⼭⽥:takeshi@cs.tsukuba.ac.jp
講義のWebページ
http://www.coins.tsukuba.ac.jp/special-seminar/
オフィスアワー
電⼦メールにて予約
備考
情報科学類⽣に限る。
28
MathematicsforComputerScience [GB13604]
MathematicsforComputerScience
対象:2・3学年 開設学期:秋AB 曜⽇・時限:⽔5・6 単位数:2単位
担当教員:アランニャ・クラウス
概要
Thiscourseprovidesanoverallintroductiontoelementaryconceptsofmathematics,focusingonthefieldsofMathsthatareoftenusedincomputersciences.Topicsinclude:
formallogicnotation,induction,setsandrelations,graphs,permutationsandcombinations,countingprinciples,discreteprobability.
学習・教育⽬標
Thegoalofthiscourseistoprovidethestudentsawidegroundworkofmathematicalconceptsthatareusefultounderstandvarioustheoriesincomputerscience.Inparticular,
thiscoursefocusonteachingstudentshowtoprovedifferenttheoremsindifferentmathematicalfields,andhowthesemathematicalfieldsrelatetocomputersciences.
キーワード
英語講義、数論、グラフ論、統計、証明⽅法
Keywords
NumberTheory,GraphTheory,Statistics,ProofMethods,Combinatorics
時間割
Week Subjects
Week1 Whatisaproof?ProofMethods(ProofbyContradiction,ProofbyCases).Thewellorderingprinciple.Propositions,LogicandQuantifiers.
Week2 SetsandProofs.Induction.RelationsandFunctions.StateMachines.
Week3 NumberTheory.GCD.Primality.Euler'sTheorem.RSAAlgorithm.
Week4 Graphs.WalksandPaths.DirectedGraphsandScheduling.PartialOrdersandequivalences.
Week5 Graphs.DegreesandIsomorphism.Trees.ColoringandConnectivity.StableMatching.
Week6 SumsandProducts.Asymptotic.ComputationalComplexity.
Week7Counting.BijectionRules,Rulesforcountingsetcomponents(cards,dice,etc).DivisionRule,BinomialTheorem.BookkeeperPrinciple,Pigeonhole
Principle.
Week8 Probability.DiscreteProbability:ProbabilityandCounting.ProbabilitySpaces.InfiniteProbabilitySpaces.ConditionalProbability.Bayes'Theorem.
Week9 Probability.IndependenceandCausality.RandomVariablesandRandomWalks.ExpectationandMeanTimetoFailure.
Week10 Advancedtopics:ProbabilityGraphs,GooglePagerankAlgorithm.SamplingandConfidence.FinalExamPractice.
FinalExam Thefinalexamcoversallsubjectsinclassandwillbebasedontheweeklyexercises.OneA4consultationpageisallowed.
教材
ThisclassisbasedonMITOpenCourseware"MathematicsforComputerSciencesSpring2015"https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-
042j-mathematics-for-computer-science-spring-2015/InadditiontotheOCWtextbook,lecturenotesforeachweekwillbedistributedoverMANABA.
参考書籍
Thisclasswillcoverabout70%ofthefollowingtextbook.https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-042j-mathematics-for-computer-science-
spring-2015/LecturenotescoveringthekeypointswillbedistributedoverMANABA.
予備知識・前提条件
Thisclassfocusesonmathematicalgroundwork,sonoparticularmathematicalbackgroundisnecessary.LecturesinEnglish.
成績評価
WeeklyExercises(50%),FinalExam(50%).StudentsmaybringoneA4pageofhandwrittennotesforthefinalexam.
教員メールアドレス
オフィスアワー
Byappointment.Questionsbye-mailorMANABAforumsinEnglishorJapanesearewelcome.
備考
Thiscoursecoverssimilartopicsas"ProgrammingChallenges"(GB21802),butfromamoretheoreticalpointofview.
29
コンピュータグラフィックス基礎[GB13704]
ComputerGraphics
対象:2学年 開設学期:秋AB 曜⽇・時限:⽕1・2 単位数:2単位
担当教員:三⾕純,⾦森由博
概要
メディア産業、可視化技術等で使われるコンピュータグラフィックス技法の基本的な考え⽅および、⽣成⼿法について講義を⾏う。また、C⾔語、OpenGLライ
ブラリ環境を⽤いた課題演習で学習内容について理解を深め、グラフィックプログラミングの醍醐味を味わう。さらに応⽤例についても紹介する。
学習・教育⽬標
コンピュータグラフィックスの実⾏環境と基本操作について理解する。図形⽣成の基本⼿法、座標変換、形状表現⼿法、モデリング⼿法、レンダリング⼿法に
関する基本を学び、演習を通して実際にプログラミングの技術を⾝につける。
キーワード
コンピュータグラフィックス
Keywords
ComputerGraphics
時間割
週 講義内容/理解すべき項⽬
第1週授業、演習の全体計画を紹介する。その後コンピュータグラフィックスの歴史を簡単に紹介し、C⾔語とOpenGLグラフィックライブラリを⽤
いた演習環境の紹介と操作実習を⾏う。
第2〜4週
グラフィックスの基礎操作プログラミングと座標変換
座標変換⽅法と同次座標系の考え⽅を学ぶ。さらに、3次元座標変換、合成変換、透視変換⼿法などを使い3次元形状の動的表⽰⼿法を理解
する。また、マウス、キーボード等を⽤いた対話的操作の例を学ぶ。
第5〜6週
曲線・曲⾯のモデル化
ベクトル空間、アフィン結合、位置ベクトルの概念を学び、それらを⽤いて曲線、曲⾯のモデル化を学ぶ。特に、Bezier、B-spline曲線、曲⾯
の表現⼿法を理解する。
第7週
ソリッドモデリング
3次元形状を曖昧さを排除して表現するソリッドモデリングの基礎を学ぶ。特に重要なCSG表現と、B-rep表現⼿法を演習で⽤いて理解を深め
る。
第8〜9週
レンダリング⼿法
レンダリングの基本⼿法について学習する。表⾯の反射モデル、曲⾯近似⼿法、物理的法則に基づく光線追跡法、ラジオシティなどのリアル
な表現⼿法を学ぶ。
第10週
コンピュータグラフィックスの応⽤と実際
映像産業に浸透してきたコンピュータグラフィックスの例を紹介し、さらに新しく開発されている⼿法やバーチャルリアリティへの応⽤事例
などを紹介する。
教材
プリント配布、補充教材:コンピュータグラフィックス(ComputerGraphics)CG-ARTS協会
参考書籍
「CGとビジュアルコンピューティング⼊⾨」(伊藤貴之著、サイエンス社)
予備知識・前提条件
⾔語は問わないが、プログラミングについて学習済みであることが必須である。また、データ構造とアルゴリズムに関する知識があることが望ましい。
成績評価
演習問題および学期末試験により評価を⾏う。
教員メールアドレス
三⾕純:mitani(AT)cs.tsukuba.ac.jp⾦森由博:kanamori(AT)cs.tsukuba.ac.jp
オフィスアワー
電⼦メールにて予約のこと総合B棟906(三⾕純)
備考
平成25年度までに情報メディア創成学類で開設された「CG基礎」(GC23301)の単位を修得した者の履修は認めない。BC12624,GC23304と同⼀。
30