2019年度
大学院情報科学研究科

2019年度

講義概要︵シラバス︶

大学院情報科学研究科
講義概要（シラバス）

科目一覧

最新版のシラバスは、法政大学 Web シラバス（https://syllabus.hosei.ac.jp/）で確認してください。

【TZ001】プログラミング言語処理系特論［佐々木晃］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

【TZ003】Parallel and Distributed Systems ［李亜民］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1
2【TZ005】仮想化技術特論［廣津登志夫］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3【TZ006】暗号理論［尾花賢］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4【TZ007】ディジタル情報の符号化と復号化［西島利尚］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5【TZ008】関数型言語と圏論［雪田修一］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6【TZ010】Software Verification and Validation ［劉 少英］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7【TZ011】データベースプログラミング言語［日高宗一郎］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8【TZ012】Advanced AI ［黄 潤和］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9【TZ013】進化システム論［佐藤裕二］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
【TZ014】可視化特論［細部博史］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
【TZ015】データマイニング特論［赤石美奈］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
【TZ017】Web システム構築［藤田悟］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
【TZ018】Advanced Networking and Computing ［馬 建華］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
【TZ019】数理モデリング特論［相島健助］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
【TZ020】音声・言語処理特論［伊藤克亘］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
【TZ021】多次元信号画像処理［花泉弘］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
【TZ022】パターン認識特論［若原徹］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
【TZ023】３次元映像技術特論［小池崇文］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
【TZ024】科学技術シミュレーション［善甫康成］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
【TZ025】線形システム特論［小西克巳］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
【TZ026】Global CIS Special Lecture 1 ［藤田 悟］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
【TZ027】Global CIS Special Lecture 2 ［藤田 悟］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
【TZ028】Global CIS Special Lecture 3 ［内田 薫］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
【TZ029】Global CIS Special Lecture 4 ［内田 薫］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
【TZ030】Communicating Sequential Processes for Secure System Development ［松井 和人］秋学期授業/Fall 26【TZ031】Business
Application System Development Using Java ［渡辺 正信］秋学期授業/Fall . . . 27
【TZ032】Web System Development by Ruby on Rails ［小林 郁夫］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . 28
【TZ033】Software Requirements Analysis and Specification Techniques ［佐原 伸］秋学期授業/Fall . . . . . . . 29
【TZ034】Software Process and Quality Assurance ［小池 太］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
【TZ035】Software Architecture for Enterprise Systems ［伊藤隆, 菊地弘晶, 串田高幸, 田中保夫, 土屋敦, 根岸康, 野口雅人, 水田秀行, 山本学, 山本宏, 若尾正樹］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
【TZ036】Object Oriented WEB Programming Using Ruby ［小林 郁夫］春学期授業/Spring . . . . . . . . . . . . . . . 33
【TZ037】Technical Writing for Software Engineers ［藤野 輝雄］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . 34
【TZ038】Writing and Presentation for Thesis ［藤田 悟］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
【TZ039】Japanese Comprehension １［村松葉子］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
【TZ040】Japanese Comprehension ２［村松葉子］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
【TZ041】情報科学特別講義１（アルゴリズムとデータ構造）［坂本寛］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . 38
【TZ042】Special Lecture for Computer and Information Sciences ２（Advanced Image processing）［内田薫］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
【TZ043】Special Lecture for Computer and Information Sciences ３（Operating System）［Nguyen Ngoc Binh］
春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
【TZ044】Special Lecture for Computer and Information Sciences ４ （Intelligent Media Processing）［内田薫］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
【TZ045】情報科学特別講義５（音声・音楽処理特論）［北原義典］春学期授業/Spring . . . . . . . . . . . . . . . . . . . . . . . . . 42
【TZ046】情報科学特別講義６（テキストマイニング特論）［横野光］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . 43
【TZ047】インターンシップ［日高宗一郎］秋学期集中/Intensive(Fall) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
【TZ049】情報科学オープンセミナー 2 ［善甫, 佐々木, 馬, 若原, 廣津, 佐藤, 西島, 小池, 黄, 李］春学期授業/Spring . 45
【TZ050】CIS Global Seminar ［尾﨑信之, 小西弘一, 杉山昭彦, 田中淳裕, 辻聡美, 中山浩一, 永吉洋登, 福住伸一, 渡邊高志］秋学期授業/Fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
【TZ201】コンピュータ基礎特別研究２［劉少英］ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
【TZ202】コンピュータ基礎特別研究３ A ［劉少英］ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
【TZ204】コンピュータ基礎特別演習２［劉少英］ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

—I—

【TZ205】コンピュータ基礎特別演習３ A ［劉少英］ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

50【TZ513】情報科学特別研究１ A, １ B ［藤田悟, 赤石美奈, 伊藤克亘, 尾花賢, 小池崇文, 佐々木晃, 佐藤裕二, 善甫康
成, 西島利尚, 花泉弘, 日高宗一郎, 廣津登志夫, 黄潤和, 細部博史, 馬建華, 雪田修一,Li Yamin, 劉少英, 若原徹, 小西克巳, 相島健助］ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

51【TZ515】情報科学特別研究２ A, ２ B ［藤田悟, 赤石美奈, 伊藤克亘, 尾花賢, 小池崇文, 佐々木晃, 佐藤裕二, 善甫康
成, 西島利尚, 花泉弘, 日高宗一郎, 廣津登志夫, 黄潤和, 細部博史, 馬建華, 雪田修一,Li Yamin, 劉少英, 若原徹, 小西克巳, 相島健助］ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

52【TZ517】情報科学特別演習１ A, １ B ［藤田悟, 赤石美奈, 伊藤克亘, 尾花賢, 小池崇文, 佐々木晃, 佐藤裕二, 善甫康
成, 西島利尚, 花泉弘, 日高宗一郎, 廣津登志夫, 黄潤和, 細部博史, 馬建華, 雪田修一,Li Yamin, 劉少英, 若原徹, 小西克巳, 相島健助］ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

53【TZ519】情報科学特別演習２ A, ２ B ［藤田悟, 赤石美奈, 伊藤克亘, 尾花賢, 小池崇文, 佐々木晃, 佐藤裕二, 善甫康
成, 西島利尚, 花泉弘, 日高宗一郎, 廣津登志夫, 黄潤和, 細部博史, 馬建華, 雪田修一,Li Yamin, 劉少英, 若原徹, 小西克巳, 相島健助］ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
【TZ889】情報システム特別研究３［佐藤裕二］ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
【TZ892】情報システム特別演習３［佐藤裕二］ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
【TZ895】情報システム特別研究３［馬建華］ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
【TZ898】情報システム特別演習３［馬建華］ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

— II —

54
55
56
57
58

発行日：2019/5/1

COT500K1

プログラミング言語処理系特論
佐々木 晃
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】
本講義では、コンパイラをはじめとする言語処理系の理論、構成法、実装技術について学ぶ。さらに、最近の論文などを通して、この分野での新しいトピックについて議論する。
【到達目標】
コンパイラでは特に、コード最適化、レジスタ割付、機械語コード生成といったコンパイラバックエンドついて理解を深めることを目指す。さらに論文講読を通じて当該分野に関する幅広い知識を得る。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
コンパイラバックエンドは、コード最適化、レジスタ割付、機械語コード生成のフェーズから構成される。これらについての理解を深めるとともに、演習としてそれぞれのフェーズの実装を行う。また、コンパイラを含む言語処
理系に関する論文や書籍をピックアップして講師、受講者が紹介し、この分
野での新しいトピックについて議論する。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
コンパイラの構成

2
3

レジスタ割付
コード生成 (1)4

コード生成 (2)5

コード最適化 (概要)6

コード最適化 (詳細)7

コード最適化 (最適化変換 1)
コード最適化 (最適化変換 2)
まとめ（コンパイラバッ
クエンド）
文献紹介 (1)
文献紹介 (2)
文献紹介 (3)
文献紹介 (4)
まとめ

8
9
10
11
12
13
14

内容
フェーズの概要およびコンパイラの全体像
中間表現とレジスタ割付
コード生成の基本と「式」のコード生
成「文」のコード生成とコード生成の定式化
コード最適化の概要およびデータフ
ロー解析の基礎
代表的なデータフロー解析とコント
ロールフロー解析
基本的な最適化変換、不要コード除去
効果的な最適化変換、ループ最適化
コンパイラバックエンドの全体像
メタプログラミング
ライブラリとフレームワーク
関数型言語
論理型言語
総括

【授業時間外の学習（準備学習・復習・宿題等）】
文献紹介の準備、小課題の取り組み（プログラミングとレポート作成）【テキスト（教科書）】
配布資料
【参考書】
・中田育男、コンパイラの構成と最適化（2 版）、朝倉書店
・佐々政孝、プログラミング言語処理系、岩波書店
・Aho ほか、Compilers: Principles, Techniques, and Tools
・最近の学会論文【成績評価の方法と基準】
授業への貢献度 (30%)、期間内に行うレポート (70%)
【学生の意見等からの気づき】
メンバー間での活発な討議を促進する。
【学生が準備すべき機器他】
ネットワーク使用あり。オンライン教材を用いることがあるので、コンピュー
タ持参のこと。
【Outline and objectives】
Students will learn organization and structure of compilers andadvanced technologies for realizing optimizing compilers. Students also
learn state-of-the-art theories and technologies in this field.

—1—発行日：2019/5/1

COT500K1

Parallel and Distributed Systems
李亜民

サブタイトル：並列及び分散システム
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
1. Parallel shared memory multiprocessor systems
2. Distributed message-passing multicomputer systems
3. Mobile ad hoc networks
4. Network on chip
【到達目標】
Parallel and distributed systems provide users high performanceby means of connecting multiple processors and multiple computers
together through network and Internet. The objectives of this course
are to provide basic concepts, wide background about parallel anddistributed systems, and design principles used in the construction ofparallel and distributed computer systems, Mobile ad hoc networks, andNetwork on chip.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連

10

Wireless ad hoc
networks

11

On the Efficiency ofRound-2 Algorithm

12

13

Recursive Dual-Net
and Hierarchical
Dual-Net
Network on Chip

14

Presentations

Mobile ad hoc networks (MANETs)
and Wireless sensor networks(WSNs), minimum spanning tree,
kruskal’s Algorithm
A simple algorithm to further
minimize connected dominating setof static protocols in ad hoc network
Recursive Dual-Net, Hierarchical
Dual-Net, and their topologicalproperties
Projection of interconnect
topologies onto two-dimensional
integraated circuit (IC) and cost
performance of on-chip mesh,torus, hypercube, and metacube
Present your theme【授業時間外の学習（準備学習・復習・宿題等）】
Prepare your theme and presentation slides【授業の進め方と方法】
We will study the architectures of SIMD (single instruction stream
over multiple data streams) and MIMD (multiple instruction streams
over multiple data streams), the interconnection networks andtheir properties, basic communication operations, SMP (symmetricmultiprocessors) and DSM (distributed shared memory) systems,
parallel algorithms, network security, cryptography algorithms, Mobile
Ad Hoc Networks, and Network on chip. We will also discuss theresearch topics in this field. In the last class, students will present theirwork related to this course.

【テキスト（教科書）】
Online materials【参考書】
1. Parallel Computer Architecture: A Hardware/software Approach,David E. Culler and Jaswinder Pal Singh, Morgan Kaufmann
Publishers, Inc.
2. Distributed Systems: Concepts and Design, George Coulouris, Jean
Dollimore and Tim Kindberg, Addison-Wesley Publishers.

【アクティブラーニング（グループディスカッション、ディベート等）の実施】
なし / No【成績評価の方法と基準】
1. Participation and discussion: 40%
2. Presentation: 60%【フィールドワーク（学外での実習等）の実施】
なし / No【学生の意見等からの気づき】
None【授業計画】
回
テーマ
1
Introduction to paralleland distributed
systems
2
Interconnection
networks andproperties
3
Adjusting Parametersof k-Ary n-Cube【学生が準備すべき機器他】
Bring your note PC to the class

4

5

6

7

8

9

内容
SISD, SIMD, MIMD, SMP, DSM,
and Ethernet

Ring, mesh, torus, hypercube,
node-degree, diameter, andbisection bandwidth
Topology of k-Ary n-Cube,
structure of a router, head of line
(HOL) blocking, structure of anode, and relative cost performance(RCP) evaluation
Basic communication
One-to-all and all-to-all broadcast,operations and Parallel One-to-all personalizedalgorithms
communication, total exchange,and parallel matrix multiplication
algorithms
Dual-Cube andDual-cube and Metacube INs andMetacube
their topological properties
interconnection
network
Symmetric
SMP and bus-snooping cache
multiprocessor (SMP)
coherence protocol; DSM andsystems anddirectory-based cache coherance
Distributed shared
protocolmemory (DSM)
systems
Networks,
TCP, UDP, and IP protocols, DNS,
internetworks, andfirewall, DES, Hash function,
Networks security
SHA-1, MD5, SSL/TLS, ssh and scp
RSA public key
Modular, Fermat’s Little Theorem,
cryptography
Chinese Remainder Theorem, andalgorithm
RSA public key encryption anddecryption
Elliptic Curve
Elliptic curve over real numbers,
cryptography
Elliptic curve group overalgorithm
field_prime, Euclidian algorithm,
adding distinct points and doubling
one point, Diffie-Hellman
algorithm【Outline and objectives】
1. Parallel shared memory multiprocessor systems
2. Distributed message-passing multicomputer systems
3. Mobile ad hoc networks
4. Network on chip—2—

発行日：2019/5/1

COT500K1

仮想化技術特論廣津登志夫
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
現在の情報社会を支える重要な技術である仮想化について、その目的と構成を基礎から学ぶ【到達目標】
現在の情報化社会において、データセンタなどの集約されたサーバ環境を支えている仮想化技術の詳細について理解する。また、それらに関する最新の研究についての知見を得る。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
この講義ではシステム・ＯＳ・言語・ネットワークなど様々なレベルの仮想化技術をとりあげ、その仕組みや目的を解説する。講義の後半には、最新の技術に関する文献から、最新の仮想化技術について学ぶ。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
仮想化技術の概要

2

エミュレーション3

バイナリ変換4

プロセスレベル仮想化 (1)5プロセスレベル仮想化 (2)6

動的バイナリ最適化

7

言語レベル仮想化

89

言語レベル仮想マシンの実装
システムレベル仮想化 (1)10システムレベル仮想化 (2)11並列処理と仮想化

12

ネットワーク仮想化

13

仮想化技術の動向調査と発表
仮想化技術の動向調査と
発表

14

内容
まず仮想化技術の全般を概観しその技術の目的と概要を理解する。
エミュレーションを用いた仮想化技術について学ぶ
仮想化の要素技術であるバイナリ変換
について学ぶＯＳのプロセスレベルでの仮想化の仕組みについて学ぶ
実際のＯＳにおけるプロセスレベル仮想化技術について概観する
実行時のバイナリ最適化手法について学ぶ
Java を例に言語レベルの仮想化技術について学ぶJava 仮想マシンを中心として、仮想マシンの実装について学ぶ
ハードウェアの支援などを用いたシス
テムレベルの仮想化技術について学ぶ
システムレベル仮想化について実際のシステムなども交えて理解する
並列処理プロセッサにおける仮想化技
術について学ぶ
VLAN などネットワークに置ける仮想化技術について学ぶ
各自が担当して読んだ論文について技
術紹介をする。
各自が担当して読んだ論文について技
術紹介をする。

【授業時間外の学習（準備学習・復習・宿題等）】
仮想化技術に関する論文を割り当てるので、その周辺調査と解説をする。
【テキスト（教科書）】
Web から配布する【参考書】
講義中に紹介する【成績評価の方法と基準】
レポートによる【学生の意見等からの気づき】
特になし【学生が準備すべき機器他】
CIS Moodle を使用【Outline and objectives】
The main target of this course is virtualization technologies which
is one of the core technologies supporting current Internet and cloudinfrastructue.

—3—発行日：2019/5/1

COT500K1

暗号理論
尾花賢
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
インターネットを安心・安全に利用する上で不可欠な技術である暗号・認証といった技術に求められる要件を学ぶ．
【到達目標】
暗号・認証といった技術に求められる要件を理解するとともに，それらの実際の構成法，安全性証明を理解することを目標とする．
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
本講義は，暗号，デジタル署名など，情報セキュリティの基礎となる技術がどのように形式的に定義されるかを学ぶとともに，技術の実際の構成法，および，その安全性証明の理解を通して，現代暗号理論の理解に必要な基礎知識を習得する．また，講義の後半では，秘密分散や，マルチパーティ計算といった多者間のやりとりを伴う複雑な暗号プロトコルの構成について触れ，複雑なプロトコルの中で基礎的な技術がどのように利用されるかを学ぶ．
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
暗号理論の概要

2

数論の基礎

3

一方向性関数4
5

一方向性関数のハードコ
アビット
擬似乱数生成

6

公開鍵暗号

7

ランダムオラクルモデルと RSA-OAEP

8

Cramer-Shoup 暗号

9ハイブリッド暗号

10

デジタル署名11

RSA-FDH 署名

12

秘密分散法

13

情報理論的に安全なマル
チパーティ計算計算量理論的に安全なマ
ルチパーティ計算14

内容
情報理論的安全性，計算量理論的安全性などの概念を理解する．
群，環，体といった暗号技術で利用する数論の基礎を理解する．
一方向性関数の定義と候補について学
ぶ．
Goldreich-Levin 定理について学ぶ．
擬似乱数生成の定義，安全性の概念と構成法を理解する．
公開鍵暗号の定義と安全性の概念を理解する．
ランダムオラクルモデルとRSA-OAEP，および RSA-OAEP の安全性証明を理解する．
Cramer-Shoup 暗号とその安全性証
明を理解する．
ハイブリッド暗号とその構成法の基礎を理解する．
デジタル署名の定義，安全性の概念，
および一方向性関数からの構成法を理解する．
RSA-FDH 署名とその安全性証明を理解する．
秘密分散法の定義，構成法，安全性証
明の基礎を学ぶ．
情報理論的に安全なマルチパーティ計
算の基礎を学ぶ．
計算量理論的に安全なマルチパーティ
計算の基礎を学ぶ．

【授業時間外の学習（準備学習・復習・宿題等）】
講義内で説明した内容は，次回までに完全に理解しておくこと【テキスト（教科書）】
必要な資料は講義で適宜配布【参考書】
森山大輔，西巻陵，岡本龍明，「公開鍵暗号の数理」，共立出版，ISBN978-4320-01951-5【成績評価の方法と基準】
レポートおよび授業への貢献度を考慮し，総合的に判断する．
【学生の意見等からの気づき】
特になし【Outline and objectives】
In this course, you will learn various cryptographic technologies such as
cryptosystem, authentication, and so on.

—4—発行日：2019/5/1

PRI500K1

ディジタル情報の符号化と復号化
西島利尚
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
通信路符号化と復号及び重み分布に焦点を絞りそれぞれの分野において、高い評価を得ている論文を選択して輪講する。その結果、通信路符号化と復号
及び重み分布の本質を理解する。
【到達目標】
それぞれの論文では、どういった問題がどのように解決され、なぜ高い評価を得ているのかを理解することを目標とする。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
3 件の論文（例えば、 J. Justesen, ‘A Class of Constructive AsymptoticallyGood Algebraic Codes,’ IEEE Trans. Info. Theory, IT-18, pp. 652-656,
1972. など）の輪講を中心に授業を進める。第 1 回で、論文の背景及び分野に与えた影響などの概説を与える。第 2 回〜第 4 で、補題・定理の証明の説
明、適当なプログラミング言語を使ってのアルゴリズムの実現とその説明などを学生からの発表を中心に進める。3 件の論文について第 1 回〜第 4 回を繰り返す。最後に、第 13 回と第 14 回で、3 件の論文にまつわる最近の研究
動向、そして担当教員の最近の研究についての概説、まとめを行う。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
なし / No【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
第1回
通信路符号化定理（1）

第2回

通信路符号化定理（2）

第3回
第4回
第5回

通信路符号化定理（3）通信路符号化定理（4）
通信路復号化（1）

第６回

通信路復号化（2）

第７回
第８回
第９回

通信路復号化（3）
通信路復号化（4）重み分布（1）

第 10 回重み分布（2）

第 11 回
第 12 回
第 13 回重み分布（3）重み分布（4）
通信路符号化と復号化及び重み分布に関する最近
の研究動向
まとめ

第 14 回内容
通信路符号化定理にまつわる鍵となる論文を 1 件紹介をし背景などを概説する。
第 1 回目で紹介された論文を輪講する。学生からの内容の説明・解説の発表を中心とする。
第 2 回目の継続輪講。
第 3 回目の継続輪講。まとめ。
通信路復号化にまつわる鍵となる論文を 1 件紹介をし背景などを概説する。
第 5 回目で紹介された論文を輪講する。学生からの内容の説明・解説の発表を中心とする。
第 6 回目の継続輪講。
第 7 回目の継続輪講。まとめ。
重み分布にまつわる鍵となる論文を 1
件紹介をし背景などを概説する。
第 9 回目で紹介された論文を輪講する。学生からの内容の説明・解説の発表を中心とする。
第 10 回目の継続輪講。
第 11 回目の継続輪講。まとめ。
通信路符号化と復号化及び重み分布に関する最近の研究動向の概説
まとめ【授業時間外の学習（準備学習・復習・宿題等）】
紹介された論文を読んでおく。
【テキスト（教科書）】担当教員が紹介をした 3 件の論文。
【参考書】[1] F. J. MacWilliams and N. J. A. Slone, The Theory of Error-Correcting
Codes, North-Holland, Amsterdam, 1977．
[2] Richard E. Blahut, Algebraic Codes for Data Transmission,
Cambridge University Press, 2003.
【成績評価の方法と基準】
授業中の参加、発表の度合、貢献度【学生の意見等からの気づき】
特になし。
【Outline and objectives】
This class deal with two areas of Shannon’s channel coding theorem andweight distribution of error-correcting codes.

—5—発行日：2019/5/1

COT500K1

関数型言語と圏論
雪田修一
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
We study Functional Programming and Category Theory.

【参考書】
Learn You a Haskell for Great Good!, Miran Lipovaca, No Starch Press.
Haskell – the craft of functional programming – 3rd edition, Simon
Thompson, Addison Wesley.

【到達目標】
Students will acquire working knowlege of category theory via
programming with Haskell. Basic notions such as functors, naturaltransformations, adjoints, Kleiski triples, and monads are fully
explained.

【成績評価の方法と基準】
Contributions to the discussions in class (50%).
presentation meetings(50%).

【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【学生の意見等からの気づき】
Lots of drawings are added to visual aids.
【学生が準備すべき機器他】
PC【授業の進め方と方法】
After basic materials are presented, students are asked to write Haskell
code to implement abstract concepts according to concrete examples.

【その他の重要事項】
None【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【Outline and objectives】
We study Functional Programming and Category Theory.

【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回テーマ
1st
Introduction

2nd

Programming
Categories

3rd

Products

4th

Programming with
Products

5th

Coproducts

6th

Programming with
Coproducts

7th

IO in Pure Languages

8th

Monads9th

Abstract Data Types

10th

Programming Abstract
Data Types

11th

Categories of Functors

12thProgramming with
Functors and Natural
Transformations
Kleisli Triples andMonads13th

14th

Programming Kleisli
Triples

内容
The goals of this course ispresented. Students will be able todecide whether to enroll in thisclass or not.
Text: Lec01-02
Programming with Haskell.
Implementing examples in
Lec01-02
The concept of products are
explained.
Text: Lec03-04
Students write programs withtuples, implementing examples in
Lec03-04.
The concept of coproducts are
explained.
Text: Lec05-06
Students write programs with theEither type constructor,
implementing examples in
Lec05-06.
IO in Haskell is explained.
Text: Lec07
Monads are explained.
Text: Lec08
Trees, stacks, queues, and otherstandard data types are viewed
from category theory.
Text: Lec09-10
Students write programs that
implement various arrows insample categories in Lec09-10.
The concepts of functor, thecategory of functors, and naturaltransformations are introduced.
Text: Lec11-12
Students write programs that
implement various functors inexamples in Lec11-12.
The concept of Kleisli triple isintroduced with various examples.
Text: Lec13 and Lec14
Students write programs that
implement various notions such as
state, continuation, and otherfunctors.
Text: Lec13【授業時間外の学習（準備学習・復習・宿題等）】
Perform all the tasks that are assigned in class.
Students areencouraged to do pencil-and-paper calculations in all examples.
【テキスト（教科書）】
Materials will be available on-line.

—6—

Talks at the発行日：2019/5/1

COT500K1

Software Verification and Validation
劉少英

サブタイトル：ソフトウェア検証と確証
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】This course aims to introduce both formal and practical software
verification and validation methods and techniques, including formal
specification, formal verification of program correctness, rigorous
software review, and rigorous software testing.
【到達目標】The students are expected to learn basic techniques for writing formal
specifications in the SOFL specification language and verifying thecorrectness of simple programs using Hoare logic, respectively, tounderstand the basic principles of specification-based inspection andtesting techniques.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連

2 回目

Axioms for assignment
and examples

3 回目

Axioms for conditional
statements andexamples 1

4 回目

Axioms for conditional
statements andexamples 2

5 回目

Axioms for iterations

6 回目

Axioms for procedure
calls

7 回目

Introduction to formal
specification
Formal process
specification
Module and CDFD

8 回目
9 回目

11 回目

Data types (2)

12 回目

The SOFL three-step
specification

13 回目Specification-based
inspection principle
Specification-based
testing

The basic types and set types are
introduced and examples are given
to explain how they are used in
specification.
Sequence types and composite
types are introduced and examples
are given to explain how they areused.
The SOFL three-step formal
specification approach is
introduced with an example.
What is inspection? the principle ofspecification-based inspection.
The general principle ofspecification-based testing is first
introduced. A specific functional
scenario-based testing method isthen explained with examples.

【授業時間外の学習（準備学習・復習・宿題等）】
Preview the contents of each class, complete the assigned exercises,
and review the contents taught in the class. If possible, read relatedmaterials.
【テキスト（教科書）】“Formal Engineering for Industrial Software Development”, Shaoying
Liu, Springer-Verlag, 2004, ISBN 3-540-20602-7.
【参考書】(1) C.A.R. Hoare and C. B. Jones, “Essays in Computing Science”,
Prentice Hall, 1989
(2) E. M. Clarke, O. Grumberg, and D. A. Peled, “Model Checking” theMIT Press, 1999.
【成績評価の方法と基準】
Class performance (40%) and a final report (60%)
【学生の意見等からの気づき】
None【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【授業計画】
回
テーマ
１回目
Formal verification ofprogram correctness

Data types (1)

14 回目【授業の進め方と方法】
This class introduces an integrated technology for software quality
assurance. The technology includes formal specification and threedifferent verification and validation techniques, including (1) formal
verification based on Hoare logic, (2) specification-based inspection, and(3) specification-based testing. The formal specification technique isusually applied in the early phase of software development to preventand remove requirements and design-related errors, while the threeverification and validation techniques target program errors. The
Hoare logic-based formal verification is more theoretical, while thespecification-based inspection and testing are more practical. By
introducing the theoretical techniques, students are expected to learn
basic concepts such as the partial and total correctness of programs,
program models, state, state transition, and formal proof. By introducing the practical techniques, students are expected to learn rigorous
but practically useful verification and validation techniqiues, such as
specification-based inspection, functional scenario-based testing, andthe relation between specification and program.
The class is taught by means of lectures, class exercises, and homework.
Sometimes, students are also required to present some part of theteaching material.

【フィールドワーク（学外での実習等）の実施】
なし / No

10 回目【学生が準備すべき機器他】
PC, paper, and pen.
【その他の重要事項】
The knowledge offered in this course provides a foundation forunderstanding and supporting the development of correct softwaresystems.

内容
Partial correctness, total
correctness, program state,
assertions, and Hoare logic.
Axioms for assignments is
introduced and examples are used
to illustrate how the axiom can beused. Class exercises will be
carried out by students.
Axioms for conditional statements
are introduced and examples areused to illustrate the principle ofapplying the axioms in practice.
More axioms for conditional
statements are introduced andexamples are used to illustrate theprinciple of applying the axioms inpractice.
Invariant of while loop statement,
axiom for while loop, examples, andhow can formal proof be used tohelp find bugs in programs.
Axioms for procedure calls are
introduced with example
illustrations.
The concepts of formal specification
are introduced.
The format and mechanism ofprocess specification are explained.
The association between a CDFD
and its module is discussed.

—7—発行日：2019/5/1

COT500K1

データベースプログラミング言語
日高宗一郎
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】
データベースに対する問い合わせ処理等を記述するプログラミング言語について、理論的背景や実装、研究動向を概観する。

【参考書】
Leonidas Fegaras and David Maier. Optimizing object queries using aneffective calculus. ACM Transactions on Database Systems Volume 25,
Issue 4 , pp.457-516, December 2000
Peter Buneman, Mary Fernandez, Dan Suciu. UnQL: a query language
and algebra for semistructured data based on structural recursion, The
International Journal on Very Large Data Bases, Volume 9, Number 1,
pp.76–110, March 2000
Haruo Hosoya, "Foundations of XML Processing – The Tree-Automata
Approach," Cambridge University Press, 2010 年 11 月
五十嵐淳「プログラミング言語の基礎概念」サイエンス社 2011 年 07 月
Benjamin C. Pierce 著／住井英二郎 監訳「型システム入門 プログラミング
言語と型の理論」オーム社 2013 年 3 月【到達目標】
データベースに対する問い合わせ処理等を記述するプログラミング言語について、基本データやその集まりに関する代数的性質を利用した統一的な扱い等の意義、意味論などの形式的な扱いに関す理解、代数的性質を利用した最適化を含む処理系の構造の理解を目標とする。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
データベースに対する問い合わせ処理等を記述するプログラミング言語について、理論的背景や実装、研究動向を概観する。
基本データやその集まりに関する代数的性質を利用し、一見異なるデータ処
理をモノイド準同型などの機構で統一的に表現し、系統的なプログラム変換を通した最適化にもつなげる。
また、木の自然な拡張としてのグラフの捉え方と構造再帰によるグラフの変換処理、その実装方法も扱う。

【成績評価の方法と基準】
レポートおよび授業内での質疑、討論による上記目標の達成度の確認により総合的に判断する。
【学生の意見等からの気づき】
サンプルプログラムの紹介などを通して講義で扱う概念の具体的なイメージを掴みやすくする。
理解を深めるための小課題を増やす。

【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
序論

2

3

データベースプログラミ
ング言語のための数学的準備
モノイド準同型

4

データベースプログラミ
ング言語における型

5

データベースプログラミ
ング言語における型

6

木オートマトン (1)7木オートマトン (2)8木オートマトン (3)9グラフデータモデル

10

グラフデータモデル

11

構造再帰 (1)12

構造再帰 (2)13

構造再帰 (3)14データベースプログラミ
ング言語の実装およびまとめ

内容
データベースプログラミング言語の特徴と意義
正規表現、オートマトン、内包表記、推論規則など本講義に必要となる基本概念や記法の確認
ブール値からリストまで広範囲にわたるデータとその操作を特徴付ける代数的構造を学ぶモノイド準同型およびモノイド内包表
記などの型付けの推論規則による表現を学ぶ対象とするデータを木やグラフに広げ、それらの型としての木スキーマとグラフスキーマの例について学ぶ
文字列に対するオートマトンの木への自然な拡張としての木オートマトンの基本定義とスキーマからの生成
木オートマトンが受理する言語のブール演算に対応する木オートマトン上の演算などの基本操作と性質
木オートマトンによる木のパターン
マッチング
木の自然な拡張としてのグラフの捉え方、グラフをボトムアップに構築する
基本演算子であるデータコンストラク
タとそれによる任意のグラフの表現の可能性
二つのグラフが同じかどうかの定義の一つである値等価性とそれを判定する
決定手続き
グラフの枝を繰り返し辿る操作としての構造再帰と、それによるグラフの変換異なる構造再帰関数がお互いを呼び合う相互構造再帰とそれを単一再帰への変換する組化、構造再帰による結合(Join) 処理の表現
経路の正規表現によるグラフ問い合わ
せとオートマトン
データベースプログラミング言語の実装法について、講義で取り上げたグラ
フ変換言語の実装例を紹介し、部分的な実装に取り組む
講義全体の総括を行う【学生が準備すべき機器他】
Web 上の資料の参照や演習に用いるコンピュータ【Outline and objectives】
This course overviews programming languages suitable for dataintensive processing, such as query processing of database systems,
along with their theoretical background, implementations and research
trends.
Algebraic properties of primitive data and their collections are
exploited to uniformly represent data processing that might seemdifferent using constructs such as monoid homomorphism, which also
opens various optimization opportunities through systematic programtransformations.
We also deal with graphs as natural extensions to trees, along withtransformations and their implementations by structural recursions.

【授業時間外の学習（準備学習・復習・宿題等）】
参考文献等の予習、授業内に出される小課題やレポート課題への取り組み【テキスト（教科書）】
なし。

—8—

発行日：2019/5/1

HUI500K1

Advanced AI
黄潤和

サブタイトル：人工知能特論
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
The topics include
・explaining advanced AI techniques
・introducing the state of the art AI techniques・solving some real world problems【テキスト（教科書）】[1]. “Artificial Intelligence ‒ A Modern Approach”, Stuart Russell andPeter Norvig, Prentice Hall.
[2]. “Java による知能プログラミング”、新谷 虎松、コロナ社.
【参考書】[1]. Rule-based Systems and Identification Trees, http://ai-depot.com/
Tutorial/RuleBased.html[2]. Data Mining: Practical Machine Learning Tools and Techniques,
Han H. Witten, Eibe Frank, and Mark A, Hall, Third Edition.
[3]. Neural networks and deep learning related web sites[4]. Distributed reading materials【到達目標】The objectives of this course are to make students master the basic
principles of AI, learn advanced AI techniques, know the state of theart AI researches, and able to solve the real world problems with what
they have learnt.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【成績評価の方法と基準】
Evaluation on students is based on assigned exercises, Mod-termpresentation and report, and Final term presentation and report.

【授業の進め方と方法】
This course is to review the basic AI techniques such as problem solving
algorithms and reasoning mechanisms; to learn some advanced AI
techniques such as decision trees and rule based systems; to practice
AI programming such as AI programming in Java; to apply what they
have learnt to the real world problems; to introduce current hot topics
and approaches in AI fields approaches such as big data mining andsmart systems.

【学生の意見等からの気づき】
interactive learning is preferable.
【Outline and objectives】
The topics include
・explaining advanced AI techniques
・introducing the state of the art AI techniques・solving some real world problems【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
第1回
Introduction
第2回

Problem solving

第3回

Application of problem
solving

第4回

Reasoning

第5回

A decision-making
system

第6回

Decision-making under
uncertainty

第7回

Mid-term presentation

第8回

Big data mining

第9回

Machine learning

第 10 回Machine learning andbig data mining
platforms and systems
Machine Learning
Algorithms

第 11 回

第 12 回
第 13 回

第 14 回

内容
Overview of AI, History of AI, andthe state of the art of AI
Searching for solutions to a
problem
Each student selects a search
problem topic to solve with aproblem solving algorithm
Knowledge representation andinference mechanisms-forward chaining-backward chaining
A rule based system-identification decision tree
-from a training data to a decisiontree-from a decision tree to refined
rules
Each student proposes andimplements a small
decision-making system withlearnt reasoning mechanisms
Students make presentation of
their work on searching for asolution system or adecision-making system
clustering, classification,knowledge discovery
Supervised/unsupervised/semisupervised learning and transfer
learning
Weka, Google tensorflow, etc.

Neuron Networks, Back
Propragation, CNN, Deep
Learning, LSTM
Introduction to IoT and Foundamental issues related to AI
Block Chain
Term project
Term project description andassignment referring to a realworld problem
Final term project
presentation of their solution to apresentation
real world problem【授業時間外の学習（準備学習・復習・宿題等）】
Students should be able to search for research articles and read them—9—

発行日：2019/5/1

HUI500K1

進化システム論佐藤裕二
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
教科書の輪講を行いながら、遺伝的アルゴリズムの理論的基礎、ビルディング
ブロックを考慮した設計手法、遺伝子座間のリンケージを考慮した学習や同定、分布推定に基づく手法、さらに進化計算の並列化手法に関して理解を深めることで、進化計算の理論的枠組みと応用に関して学ぶことを目的とする。

【授業時間外の学習（準備学習・復習・宿題等）】
1. 教科書の予習・復習を行うこと
2. 教科書で理解困難な個所は参考文献（主に英語の論文）で事前に調査する
こと
3. 実験のためのプログラムのデバッグや見直しを行うこと【到達目標】
進化計算の理論的枠組みを体系的に把握し、簡単な応用問題への適用法を習得することを到達目標とする。

【テキスト（教科書）】[1] 棟朝 著「遺伝的アルゴリズム」森北出版（2008） (Munetomo, “Genetic
Algorithms”, Morikita-shuppan, 2000.)【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【参考書】[1] D.E. Goldberg, “Genetic Algorithms in Search, Optimization andMachine Learning”, Addison-Wesley, 1989.
[2] 北野 編著「遺伝的アルゴリズム 1〜4」産業図書（2000）(Kitano,“Genetic Algorithms I - IV”, Sangyo-tosho, 2000.)[3] 有田 著「人工生命」科学技術出版（2000）(Arita, “Artificial
Life”, Kagaku-gijyutu-shuppan, 2000.)[4] Proc. The ACM/SIGEVO Genetic and Evolutionary Computation
Conference, 1999 ‒ 2018.
[5] Proc. The IEEE Congress on Evolutionary Computation Conference,
1999 ‒ 2018.
[5] 進化計算学会論文誌、シンポジウム論文集、および研究会論文集【授業の進め方と方法】
進化計算の理論的枠組みを体系的に把握することを目標として、まず基本となる、遺伝的アルゴリズムの理論的基礎（選択のパラメータである乗っ取り
時間や探索を制御するパラメータであるイノベーション時間など）、ビルディ
ングブロックを考慮した設計手法、遺伝子座間のリンケージを考慮した学習や同定、分布推定に基づく手法、さらに進化計算の並列化手法に関して学ぶ。
Web から入手したプログラムを用いた実験に基づく議論や査読付き論文の輪講を通して進化システムへの理解を深める。
You will learn the advanced theories of evolutionary computation
including (1) Theory of genetic algorithms such as takeover time andinnovation time, (2) Design for the building block, (3) Linkage learningand linkage identification, (4) Estimation of distribution algorithm, and(5) Parallel evolutionary computation. You will experiment and discuss
by using a prototype program obtained from several Web pages and/or
read a paper by turns, and learn about evolutionary systems.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
第1回
ガイダンス
第2回

第3回

第4回
第5回
第6回
第7回

第8回

第9回

第 10 回

第 11 回

第 12 回

第 13 回

第 14 回内容
授業の目標、内容、進め方、および評価方法の説明輪講 1 ：遺伝的アルゴリ スキーマとビルディングブロック、グズムの基礎と改良
レイコードによる符号化、実数値
GA、ニッチング手法、多目的最適化のための手法輪講 2 ：設計理論
遺伝的アルゴリズムの設計指針、初期
集団サイズの設定、選択・交叉のパラメータ設定の理論的解析
輪講 3 ：ビルディングブ Messy GA、fast messy GA、gem
ロック処理による手法
GA
輪講 4 ：リンケージ学
リンケージ、LLGA、リンケージ同定
習・同定
手法
輪講 5 ：分布推定に基づ PBIL, MIMIC, CGA, ECGA,
く手法
UMDA, BMDA, BOA
輪講 6 ：並列化手法
マスタースレーブ方式、島モデル
GA、超並列 GA、分布推定アルゴリ
ズムの並列化輪講 7
進化的計算、群知能やニューラルネッ
トワークなどの知的計算と呼ばれる分野の論文を取り上げ、輪講を行う。
輪講 8
進化的計算、群知能やニューラルネッ
トワークなどの知的計算と呼ばれる分野の論文を取り上げ、輪講を行う。
輪講 9
進化的計算、群知能やニューラルネッ
トワークなどの知的計算と呼ばれる分野の論文を取り上げ、輪講を行う。
実験 1
インターネットなどを通して公開された進化システム関連の実験用ソフト
ウェアを受講者が興味に応じて各自入
手し実験および議論を行う。
実験 2
インターネットなどを通して公開された進化システム関連の実験用ソフト
ウェアを受講者が興味に応じて各自入
手し実験および議論を行う。
実験 3
インターネットなどを通して公開された進化システム関連の実験用ソフト
ウェアを受講者が興味に応じて各自入
手し実験および議論を行う。
まとめ
実験を通して学んだ内容などを報告
し、レポートとしてまとめる。

【成績評価の方法と基準】
レポート（60%）および平常点（発表準備状況や質疑応答状況など）（40%）
reports and presentations in the class【学生の意見等からの気づき】
前提科目を未履修の学生が一部おり、そのような学生の理解力が不十分の傾向があるため、初回（履修登録前のガイダンス時）に前提科目の説明をしている。
【学生が準備すべき機器他】
特になし【その他の重要事項】
必要に応じて関連文献（主に英語の論文）を読んで理解を進めてもらうことがあります。
【Outline and objectives】
While conducting lectures in textbooks, understand the theoreticalfoundations of genetic algorithms, design methods considering building
blocks, learning and identification considering linkage between geneloci, methods based on distribution estimation, and parallelization
methods of evolutionary computation, it aims to learn about thetheoretical framework and application of evolutionary computation.

— 10 —

発行日：2019/5/1

HUI500K1

可視化特論
細部博史
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
種々の情報を目に見える形でコンピュータ画面上に表示する可視化の技術を幅広く概観する．
【到達目標】
可視化の技術の概要を理解し，可視化に関する最近の文献を独力で読解できるようになる．
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
学期の半ばまでにおいては，主に高次元データ，時系列データ，木構造からなる情報，グラフ構造からなる情報などのデータや情報の種類に応じた可視化技術について講義する．その後，可視化に関する最近の文献を履修者が紹介し，担当教員や他の履修者と議論することを通じて可視化技術の動向を把握し，レポートにまとめる．
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
可視化とは？
2
多次元データの可視化
3
非類似度データの可視化
4
時系列データの可視化
5
木構造の可視化

6

グラフ構造の可視化

7
8
9
10
11
12
13
14

対話的可視化
大規模情報の可視化
科学的可視化
可視化の応用
文献紹介 (1)
文献紹介 (2)
文献紹介 (3)
文献紹介 (4)

内容
概論
多次元データのための可視化技術
非類似度データのための可視化技術
時系列データのための可視化技術
木構造からなる情報のための可視化技
術
グラフ構造からなる情報のための可視化技術
ユーザとの対話に基づく可視化技術
大規模な情報のための可視化技術
科学的データのための可視化技術
可視化技術を用いた応用システム
可視化に関する文献紹介
可視化に関する文献紹介
可視化に関する文献紹介
可視化に関する文献紹介【授業時間外の学習（準備学習・復習・宿題等）】
可視化に関する最近の文献を読み，発表資料とレポートを作成する．
【テキスト（教科書）】担当教員が作成した講義資料をウェブ上で配布する．
【参考書】
必要に応じて紹介する．
【成績評価の方法と基準】
発表とレポートに加え，授業中の参加の度合，貢献度を考慮し，総合的に判断する．
【学生の意見等からの気づき】
特になし．
【学生が準備すべき機器他】
貸与ノート PC を使用する．
【Outline and objectives】
Students will overview the technology of visualization that displays
various data on computer screens so that people can see the data.

— 11 —

発行日：2019/5/1

COT500K1

データマイニング特論
赤石美奈
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
インターネットにより可能となった情報収集を利用することにより開けた新しい可能性について検討しながら、集合知とは何かについて考察していく。
【到達目標】
本講義では、Web データマイニングの分野で使われている技術やその理論について理解することを目標とする。インターネットを通じて集合知のもととなるデー タを集め、データの中に潜んでいる規則性を見つけるための各種ア
ルゴリズムに ついて学び、データの収集・分析・解釈に関する様々な手法を身に着ける。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
授業では、集合知に関する、身近な問題やシステムに関する具体例を取り上げ、その仕組みや動作について学習する。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
第１回
集合知とは？
第２回
推薦
第３回

グループを見つける

第４回
第５回
第６回
第７回
第８回

第 10 回検索とランキング (1)検索とランキング (2)
最適化 (1)
最適化 (2)ドキュメントフィルタリ
ング (1)
ドキュメントフィルタリ
ング (2)
決定木によるモデリング第 11 回演習

第 12 回演習発表

第 13 回

高度な分類手法

第 14 回特徴を発見する

第９回

内容
ガイダンス、及び、概論
協調フィルタリングの仕組みと応用について学習する。
各種のクラスタリング手法について学習する。
検索エンジン仕組みについて学習する。
ランキングの仕組みについて学習する。
最適化とは何かを理解する。
最適化の手法について学習する。
ドキュメントフィルタリングとは何かを理解する。
ドキュメントフィルタリングの手法について学習する。
決定木とモデリング手法について学習する。
授業で学んだ手法をデータに適用し、実際に分析を試みる。
各自の演習から得られた知見を発表する。
カーネルメソッド、SVM について学習する。
特徴抽出の手法について学習する。

【授業時間外の学習（準備学習・復習・宿題等）】
教科書の予習・復習。
課題が指示された場合は、課題レポート提出。
【テキスト（教科書）】
適宜、講義中に配布する。
【参考書】
参考書・参考資料等
集合知プログラミング
Toby Segaran (著), 當山 仁健 (翻訳), 鴨澤 眞夫 (翻訳) 、オライリージャパン【成績評価の方法と基準】
レポートに加え、授業中の参加の度合、貢献度を考慮し、総合的に判断する。
【学生の意見等からの気づき】
特になし【学生が準備すべき機器他】
貸与 Note PC を使用する場合がある。
【その他の重要事項】
特になし【Outline and objectives】
This course introduces collective intelligence. The topics will include
a quick overview of recommendation systems, clustering, ranking.
Optimization, classifiers, decision trees, k-nearest neighbors, kernel
methods and support vector machines and feature extraction. Students
will learn how to take advantage of collective intelligence throughcoursework and an experimental project.

— 12 —

発行日：2019/5/1

FRI500K1

Web システム構築
藤田悟
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
Web システムの 3 層アーキテクチャを理解し、基本構築技法を習得する。さらに、Web システムのデザインパターンやアーキテクチャの例を学ぶことにより、高度な Web システム設計に必要な基本スキルを身につける。
【到達目標】Web システムの基本アーキテクチャを理解した上で、フレームワーク、O/R
マッピング、DI などの個別技術について理解を深め、簡単なサンプルコード
で説明できるようになる。
Students understand the basic technologies for Web Systems, such as
frameworks, O/R mapping and dependency injection and explain themwith small sample code.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
Web システムの概要について理解した後、Web システムの共通モデルである
MVC モデルと 3 層アーキテクチャについて Java 言語によるシステム構築
手法を中心に学ぶ。3 層 (プレゼンテーション層、ロジック層、データアクセ
ス層) の詳細については、内在するデザインパターン、フレームワーク、サン
プルコードなどを多用しながら、実践的な構築手法を習得する。これらの共通基盤技術となっている DI(ディペンデンシ・インジェクション) や AOP(アスペクト指向プログラミング言語) についても技術概要を紹介する。最後に、Web システムとしての「良いアーキテクチャ」について著名なアーキテクトの文献を参考に議論し、Web システムへの理解を深める。
After understanding basic architecture of Web systems, students learn
MVC model and 3-tier architecture with Java implementation. They
also learn dependency injection and aspect oriented programing as basic
research topics in this domain.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【授業時間外の学習（準備学習・復習・宿題等）】
各テーマについて、学生が発表をし、教員が内容を補充する形で講義を進めるため、講義前に担当の学生は十分に技術調査をし、発表資料を準備すること。また、他の学生も、関連技術を調査し、授業に備えること。
Students must present selected thema and the lecturer gives complementary comments to them. Therefore, students need to research thethema and prepare presentation materials before classes.
【テキスト（教科書）】オンライン教材
Online documents【参考書】
Web アプリケーション設計・実装のためのフレームワーク活用の技術、古川/早川著、翔泳社
J2EE デザインパターン、W. Crawford 他著、オライリー
Beautiful Architecture、オライリー【成績評価の方法と基準】
技術領域ごとに担当者を決め、プレゼンテーションを実施する。プレゼンテー
ションの内容と議論への参加度、技術内容の理解度をもって評価を行う。
I evaluate the contents of presentations and deep discussion about them.
【学生の意見等からの気づき】
学生のプレゼンテーションに対して、十分な解説を行う。
The lecturer explain ane evaluate students’ presentation in deep.
【学生が準備すべき機器他】
ノート PC
インターネット接続
Note PC and internet connection.
【Outline and objectives】
Students first learn the basic technologies for Web systems, such as
three tier architecture. Then, they learn advanced technologies, suchas design patterns and frameworks in Web systems.

【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
第1回
Web システム概説

第2回

MVC モデルと 3 層アー
キテクチャ

第3回

Servlet による構築

第4回

JSP による構築

第5回

Struts フレームワーク

第6回

スケーラビリティのあるシステム構築

第7回

ロジック層

第8回

データ転送オブジェクト

第9回

ロジックとデータ間のデザインパターン

第 10 回

データアクセス層

第 11 回

トランザクション

第 12 回O/R マッピング

第 13 回Dependency Injection

第 14 回AOP

内容HTTP と Web サーバ、フレームワー
クなどの Web システムの基本構成について学ぶ
Model, View, Control からなる Web
システムの基本モジュール構成、プレゼンテーション層、ロジック層、データ層からなる 3 層アーキテクチャな
ど、Web システムのアーキテクチャを学ぶ
アプリケーションサーバの構築ツールの一つである Servlet による構築手法
を学ぶ
JSP を使った HTML と Java 技術の融合について学ぶ
プレゼンテーション層のフレームワー
クとして有名な Struts について学ぶ
Google App Engine のようなクラウドを利用した大規模システムの開発について学ぶ
それぞれのドメインに適したロジック層の構築法について学ぶ
ロジック層とデータ層の間のデータ転送について学ぶ
ロジック層とデータ層のシステム構築を支援するデザインパターンについて学ぶ
DAO などのデータアクセス層について学ぶ
アプリケーションからトランザクショ
ンを制御する方法について学ぶ
iBATIS, Hibernate, JPA などの O/R
マッピング技術についてまなぶ
開発基盤と実行基盤を切り離す
Dependency Injection の技術について学ぶ
Aspect Oriented Programing について学ぶ— 13 —

発行日：2019/5/1

COT500K1

Advanced Networking and Computing
馬建華

サブタイトル：先端網とコンピューティング
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】
The course attempts to provide a unified overview of the broad field ofadvanced networking and computing technologies.
【到達目標】
Students are expected to understand the latest network technologies
including wireless WAN, LAN and PAN, ad hoc and sensor networks,
and the next generation of the Internet, as well as the state of theart in advanced computing such as P2P computing, grid computing,cloud computing, fog/edge computing, ubiquitous/pervasive computing,autonomic computing, trusted computing, cyber-physical computing,social computing, big data, software defined system, etc.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
The course covers new paradigms of representative networks, communications, and related computing technologies. The course starts froma general introduction on the current trend of networking, and thendetailed discussions of a variety of networks and communications, tothe newest computing technologies. Students will write a class report
after each class in the first part. Every student is required to choose one
related topics to investigate, write a final report and finally present it in
the class.

【テキスト（教科書）】
Online teaching materials provided by this teacher【参考書】
・Y. Zhang, L.T. Yang, J. Ma, Unlicensed Mobile Access Technology:
Protocols, Architectures, Security, Standards and Applications, CRC
Press, ISBN-10: 1-4200-5537-2, 2009.
・Y. Zhou and Y. Zhang, Transparent Computing: Concepts, Architecture, and Implementation, Cengage Learning Asia Ltd, Singapore,
2009.
・Papers in related proceedings andmaterials on the Internet【成績評価の方法と基準】
Quality of class reports (40%), final course report (30%), andpresentation (30%)
【学生の意見等からの気づき】
Teach more on how to find the latest research papers【学生が準備すべき機器他】
Bring Note PC【アクティブラーニング（グループディスカッション、ディベート等）の実施】
なし / No【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Introduction

2

Network Past, Present
and Future

3

Next Generational
Internet Protocols
Network Security and
Cryptography

4

5
6
7

8

Advanced Internet and
Web Computing
Ubiquitous/Pervasive
Computing
Smart/Intelligent
Objects andEnvironments
Cyber, Physical andSocial Computing

9

Big Data, WaaS and
SDS

10Discussion and
Selection of Advanced
Computing
Themes11

Discussion on
Preparation ofPresentation andReports
Presentations &Discussions (I)1213Presentations &Discussions (II)14

Preparation ofReports

内容
Course outline and teachingapproach
Network technology history,
popular networks, wireless sensor
network
IPv6 Internet protocol, andresearch on future internets
History and typical security
technologies of computer andnetwork security
Grid, P2P, Web Services and Cloud
ComputingMain technologies in Ubicomp or
PerComp
Smart objects, spaces,
environments and services

Cyber world and cyber computing,digital-physcial integrated world,etc.
Big data problems andtechnologies, Wisdon as a Service(WaaS), Software Defined Systems
Cloud/Fog/Edge Computing,Internet of Things, Social
Computing, Cyber Technologies,
Software Defined Systems
Cloud/Fog/Edge Computing,Internet of Things, Social
Computing, Cyber Technologies,
Software Defined Systems
Specific topics in Cloud/Fog/Edge,
IoT, SDN, SocialComp, Cyber
Technologies
Specific topics in Cloud/Fog/Edge,
IoT, SDN, SocialComp, Cyber
Technologies
Subjects related to advanced
networking and computing【授業時間外の学習（準備学習・復習・宿題等）】
Read the corresponding materials before a class, do homework afterclass, and prepare presentation and the final report.

— 14 —

発行日：2019/5/1

COT500K1

数理モデリング特論
相島健助
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】
数理的観点から情報学的な諸問題を捉えて解くべき数理的な問題を定式化し，それを解くための技術を学びます．微分方程式の数値解法や数値積分，統計解析は重要な基盤です．主に数値シミュレーションやデータ解析を題材とします．
【到達目標】
数理的な解析技術と諸問題への応用とその重要性について理解することを目標とする．振り子のような単純なものだけでなく，カオス現象のような複雑なシミュレーションも行えるようになる．より具体的には，感染症のシミュ
レーション，金融商品の価格推定，手書き文字認識のような画像処理のように，数理モデリングからそれを解くアルゴリズム設計と性能評価におよぶ一連の流れを理解する．そのために必要な数理的な概念やプログラミング能力
は実際に使えるレベルでの習得を目指す．
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
数理モデリングとその周辺の学問体系を理解することを目指す．現象のモデ
リングやシステム設計には微分方程式や非線形方程式ならびに確率過程などが現れ，数値計算と統計解析はそれらの解法の基盤である．講義の前半では数理モデリングの技術とそれに必要なアルゴリズムについて，いくつかの具体例を交えた説明を行い，受講者の理解を深めて行く．またそのために有用な演習も適宜行っていく．後半では受講者自身で簡単な数理モデリングを行い，プログラミングによるシミュレーションを行う．また数理モデリングに関する文献を自身で精読し，輪講形式で内容を紹介するプレゼンを行う．

【参考書】
Mark M. Meerschaert (著), 佐藤 一憲 (翻訳), 梶原 毅 (翻訳), 佐々木 徹 (翻訳), 竹内 康博 (翻訳), 宮崎 倫子 (翻訳), 守田 智 (翻訳): 数理モデリング入門 ―ファイブ・ステップ法― 原著第 4 版，共立出版 (2015)
デヴィッド・バージェス モラグ・ボリー (著), 垣田 高夫 (翻訳), 大町 比佐栄(翻訳) : 微分方程式で数学モデルを作ろう，日本評論社 (1990)
浜田 宏: その問題、数理モデルが解決します，ベレ出版 (2018)
伊理 正夫，藤野 和建: 数値計算の常識，共立出版 (1985)【成績評価の方法と基準】
課題レポートとプレゼンおよび演習や議論における授業態度を加味して評価する．
【学生の意見等からの気づき】
特に無し【学生が準備すべき機器他】
貸与パソコン，授業支援システム【Outline and objectives】
From the mathematical point of view, a variety of scientific andengineering problems are reduced to ordinary equations, or nonlinear
equations. Statistics is also useful for such application areas. This
course focuses on numerical simulations and data analysis for themathematical modeling together with efficient algorithms for solving
the important mathematical problems.

【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
第１回
数理モデリングの概要
第２回

数値シミュレーション１

第３回

数値シミュレーション２

第４回

統計モデリング１

第５回

統計モデリング２

第６回

積分によるモデリング

第７回

数値表現

第８回

微分方程式の数値解法・
数値積分
非線形方程式の数値解法

第９回

第１０回 最適化手法
第１１回 スパース性の活用

第１２回 学習理論と人工知能

第１３回 学生による論文紹介１
第１４回 学生による論文紹介２

内容
現象の理解やシステム設計における数
理モデリングの重要性を理解します
理工学上の重要な現象の数値シミュ
レーションの具体例を学びます
情報社会を支えるシステム設計における重要な数理的技術を学びます
実用的な統計モデリングの技術の習得を目指し，重要な確率分布を実際に使えるレベルで理解します
ベイズ推定等を実際に使えるレベルで理解します
統計だけでなく信号処理や金融工学において積分やフーリエ変換が重要であることを理解し実際に応用する技術を身につけますコンピューターで数値的に数理的な問
題を解くための基礎知識やその問題点を学びます
微分方程式の数値解法や数値積分の実用的な手法について学びます
非線形方程式を解くニュートン法について学びます最適化におけるニュートン法および勾配法等を学びます
数理モデリングと数理的な問題を解く
技術にはスパース性の活用が重要であることを学び，圧縮センシングなどの重要な技法を理解します
人工知能を学習理論の側面から捉える
際の，重要な数理モデリングの技術と計算手法を習得します
学生による論文紹介
学生による論文紹介【授業時間外の学習（準備学習・復習・宿題等）】
学部１年時の微積分，線形代数，確率・統計を復習しておく．数値計算を行うので，予め Python で環境を整える，或いは MATLAB をインストールする．C 言語や Java で計算を行う技術を習得しておくのでも構わない．実際に受講する際は講義内容に関連する文献をよく読む．課題レポートをきちんと提出する．プレゼンの準備を入念に行う．
【テキスト（教科書）】
こちらで資料は適宜配布する．また有用な文献も適宜指示する— 15 —

発行日：2019/5/1

HUI500K1

音声・言語処理特論
伊藤克亘
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】
情報処理技術者・研究者として研究、開発の現場で活用できる音声・言語処理技術の習得。
具体的な内容は受講生の希望で変更することもある。
授業計画は 2010 年度の実施例である。
【到達目標】
各自の修士論文研究に役立つレベルの知識・スキルを得ることを目標とする。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
確率的言語モデルを中心にして、情報検索、音声認識などの音声言語処理の理論と技術を学ぶ。フリーのツールを利用した演習を交え、実用的な理論と技術の習得を目指す。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
ガイダンス

2
3
4
5
6
7
8
9
10
11
12
13
14

言語の特性
周波数領域の操作
LPC
音声認識システム
音声合成システム
音声インタフェース
信号処理応用 (1)
音声対話システム構築演
習 (1)
信号処理応用 (2)
音声対話システム構築演
習 (2)
信号処理応用 (3)
音声対話システム構築演
習 (3)
まとめ

内容
前提知識、スキルの確認。講義の進め方の説明。
自然言語の特徴
周波数領域のフィルタ
LPC による音源信号の推定
フリーツール julian の紹介
フリーツール gtalk の紹介
音声対話システムの事例研究
アンビエンス分離プログラムの概説
音声対話システム演習の途中経過発表
アンビエンス分離プログラムの演習
音声対話システム演習の途中経過発表
信号処理プログラム演習課題の発表
音声対話システム演習の発表
最終課題の発表【授業時間外の学習（準備学習・復習・宿題等）】
プログラミングを主とする講義に関する課題を課す。
【テキスト（教科書）】なし【参考書】
書名: IT Text 音声認識システム
著者名：鹿野清宏、伊藤克亘他
出版社: オーム社
出版年： 2016
書名: Theory and Applications of Digital Speech Processing 著者名: L.
Rabinar 他 出版社: Prentice Hall 出版年: 2010
【成績評価の方法と基準】
課題およびレポートで評価する。
【学生の意見等からの気づき】
特になし。
【学生が準備すべき機器他】
貸与ノート PC、授業支援システム【Outline and objectives】
Acquisition of speech and language processing technology that canbe utilized at the practical research and development as information
technology engineer / researcher.
Contents may be changed depending on student’s request.
The schedule is an example of 2010.

— 16 —

発行日：2019/5/1

HUI500K1

多次元信号画像処理
花泉弘
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
多次元の信号・画像データを処理することによって、どのような情報を得ることができるのかを理解し、自身の研究に役立てることを目的としている。基
礎的な概念とともに先人の開発したアルゴリズムや応用例を理解する。
【到達目標】
多次元の信号・画像を扱う場合、データ量が膨大になるため統計的な取り扱いが不可欠である。基本的な概念及び技術を学ぶ過程で、こうした統計的処理に精通するとともに、先人の研究の要点を理解し、そうしたデータ処理の考え方やアルゴリズムを自分の研究に活かせるようにする。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
この科目では、観測データから雑音を除去・低減し必要とする信号成分を抽出する手法だけでなくそれらを処理して情報を抽出するアルゴリズムについても議論する。従来の処理アルゴリズムだけでなく新しい考え方に基づくア
ルゴリズムを理解することがこの科目のゴールである。大別して前半は講義を中心に進めるが、後半は受講学生による論文紹介とそれに対する議論を行う。受講者数が少ない場合には、トピックとして現在行っている研究の紹介を行う場合もある。

【成績評価の方法と基準】
提出されたレポートの質、論文紹介時のプレゼンテーションの質、授業中の議論での発言の量および質の高さに応じて評価する。
【学生の意見等からの気づき】
議論が深まるような講義にしたい。
【学生が準備すべき機器他】
ノートパソコンなど【その他の重要事項】
信号処理や画像処理に関してある程度の知識を有し、信号処理や画像処理に興味のある学生の受講を望む。
【Outline and objectives】
Students learn and understand the meaning of multi-dimensionalsignal/image data processing.
Students acquire the knowledge,
especially in understanding the fundamental concepts, algorithms andtheir applications so that they can use it for their own research.

【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
多次元信号および多次元
画像2
統計的手法と応用例１

3
4
5
6
7
8
9
10
11
12
13
14

内容
画像の構造や標本化定理、データの補間法などについて
多重分光画像とそれらの内積・外積演算に基づく処理
統計的手法と応用例２
主成分分析法、清純相関分析法および重回帰分析法を用いる処理
教師付き分類法
最尤法および Binary Decision Tree
（ＢＤＴ）法
教師なし分類法
k-means 法、ISODATA 法およびBinary Devision Classtering 法
画像の重ね合わせ１
対応点の探索、三角形網を用いる重ね合わせ
画像の重ね合わせ２
オプティカルフローを用いる重ね合わせ
多重時刻処理１（時間変 時間変化領域抽出処理の基礎化領域の抽出）多重時刻処理２（時間変 時間変化領域への教師なし分類と教師化の解析）付き分類との応用
ステレオペア画像の処理 射影変換と相互標定、絶対標定
医用画像処理ＣＴの原理とヘリカルＣＴ，マルチス
ライスＣＴによる３次元画像処理
学生による論文紹介１
学生による論文紹介
学生による論文紹介２
学生による論文紹介
まとめ
授業全体を振り返って応用例などについて議論する【授業時間外の学習（準備学習・復習・宿題等）】
講義内容に関係する論文をよく読む。課題レポートをきちんとまとめて提出する。
【テキスト（教科書）】
教科書は必要に応じて指示する。
【参考書】
・Ronald N. Bracewell : Fourier Analysis and Imaging, Kluwer Academic/ Plenum, 2003
・B.Girod, G.Greiner and H.Niemann (Ed.) : Principles of 3D Image
Analysis and Synthesis,
Kluwer Academic Publishers, 2002
・N.Nikolaidis and I.Pitas : 3-D Image Processing Algotirhms, Wiley,
2001
・D.Caramella and C.Bartolozzi (Ed.) : 3D Image Processing ‒Techniques and ClinicalApplications, Springer, 2002
・O.Faugeras and Q.T.Luong : The Geometry of Multiple Images, MIT
Press, 2001
・J.R.Jensen : Introductory Digital Image Processing 3rd . Edition ‒ A
Remote Sensing Perspective,
Pearson Prentice Hall, 2005

— 17 —

発行日：2019/5/1

HUI500K1

パターン認識特論
若原徹
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
統計的パターン認識のより進んだ理論的枠組みを体系的に学び，同時に具体的な適用法を学ぶ。
【到達目標】
統計的パターン認識の生成モデルと識別モデルの代表的手法を理解して習得する。手書き数字認識を例題に代表的認識手法を複数実装して認識実験を行い，各手法の得手不得手を知る。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
まず，ベイズの定理と最小誤り確率に基づく統計的パターン認識の原理を理解する。次に，生成モデルに基づく確率密度関数の推定法として混合ガウスモ
デルと EM 解法，改良投影距離法，識別モデルとしてニューラルネットワー
クとサポートベクターマシンを学ぶ。授業後半では，手書き数字認識を取り上げ，画像取得，前処理，特徴抽出，さらに授業前半で学んだ複数の認識手法の実装に取り組み，公開データを用いた認識実験を行う。

【学生が準備すべき機器他】
電子メールや学内 Web サイトへのアクセス等ネットワークを利用。
【その他の重要事項】
本講義は、担当教員の NTT 研究所での文字・画像認識に関わる研究実用化の経験を元に、パターン認識に関する基礎から応用に渡る幅広く深い内容を含む。
【Outline and objectives】
This course deals with advanced pattern recognition from boththeoretical and practical viewpoints. Students learn representativetechniques of statistical pattern recognition from simple linear
classifiers to sophisticated bayesian discriminant functions and thecutting-edge convolutional neural networks in deep learning, and apply
those techniques to handwritten numeral recognition.

【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
第1回
統計的パターン認識の考え方
第2回
生成モデルと識別モデル
第3回
第4回
第5回
第６回
第７回
第8回
第9回
第 10 回
第 11 回
第 12 回
第 13 回
第 14 回生成モデルにおける確率密度関数の推定
生成モデルとしての改良
投影距離法
識別モデルとしてのニューラルネットワーク
識別モデルとしてのサポートベクターマシン
手書き数字認識系の構築(1)
手書き数字認識系の構築(2)
手書き数字認識系の構築(3)
手書き数字認識系の構築(4)
手書き数字認識系の構築(5)
手書き数字認識系の構築(6)
手書き数字認識系の構築
(7)
まとめ

内容
誤り確率最小化と最適な決定境界
確率密度関数の推定 vs. 識別関数の推定
混合ガウスモデル法とその EM 解
正規分布を仮定した高度な識別関数
写像能力と誤差逆伝搬法による学習，Deep Learning の考え方
カーネルトリックと解法
データ取得と前処理
特徴抽出
最近傍平均分類法および k-NN 分類
法の実装
改良投影距離法の実装
サポートベクターマシンの実装
畳み込みニューラルネットワーク(CNN) の実装
認識実験と評価
最終レポート作成，成果発表【授業時間外の学習（準備学習・復習・宿題等）】[1] 確率・統計，線形代数の復習[2] 特殊関数の微積分の復習[3] C/C++，MATLAB，Python，Java 言語プログラミングの復習【テキスト（教科書）】担当教員が作成した講義資料を学内 Web サイトに公開。
【参考書】[1] 石井健一郎・上田修功・前田英作・村瀬洋著：「わかりやすいパターン認識」，オーム社，1998 年．
[2] C.M. Bishop, “Pattern Recognition and Machine Learning”, Springer,
2006.
[3] 金谷健一著：「これなら分かる応用数学教室−最小二乗法からウェーブ
レットまで−」，共立出版，2003 年．
[4] 金谷健一著：「これなら分かる最適化数学−基礎原理から計算手法まで−」，共立出版，2005 年．
[5] 斎藤康毅著：「ゼロから作る Deep Learning」，オライリー・ジャパン，
2016 年．
【成績評価の方法と基準】
宿題 40 ％，最終レポート 40 ％，平常点 20 ％で総合評価する。
【学生の意見等からの気づき】
手書き数字認識系の構築が難題であるため，丁寧に指導を行う。

— 18 —

発行日：2019/5/1

HUI500K1

３次元映像技術特論
小池崇文
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】
3 次元映像は実世界の情報を扱うための最も適切な話題の一つであり，かつ，
3 次元映像技術は多くの要素技術から成立する統合技術である。3 次元映像技
術を，視覚とその情報処理の観点から捉えることで，統合技術の特性を理解し，新しい映像メディアの可能性やその将来性について考る。
【到達目標】
3 次元情報の取得入力から表示出力まで含めた 3 次元映像技術の全体像を理解することを目標とする．
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
3 次元映像の技術知識を体系的に理解することを目指し、その基礎から学ぶ。
人の視覚特性に始まり、3 次元映像を理論的基礎から情報処理・入出力技術まで広く学ぶ。情報科学だけでなく、人の視覚や光学、関連デバイス技術などの関連知識も適宜授業中で紹介することで、情報科学以外の前提知識が無くても理解できるようにする。講義の終盤では、各自が事前に選択した 3 次元
映像技術関連の論文を紹介することで、技術のより深い理解を目指す。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
第1回
3 次元映像の基礎
第2回
人の視覚
第3回
幾何光学と波動光学
第4回
第5回

第7回

光線空間
3D ディスプレイ (1) ̶
メガネ有り方式
3D ディスプレイ (2) ̶
メガネ無し方式
ホログラフィ

第8回
第9回
第 10 回

中間課題発表 1
中間課題発表 2
光線情報処理第 11 回
第 12 回

3 次元情報再構成技術
コンピュテーショナル
フォトグラフィ
最終課題発表 1
最終課題発表 2

第6回

第 13 回
第 14 回

内容
はじめに、3 次元映像技術の全体像
視覚、立体視の原理
偏光、視覚、立体視の原理
回折、干渉、フーリエ光学
Plenoptic Function，4 次元光線空間
アナグリフ、偏光方式、時分割方式
二眼方式、多眼方式、インテグラルイ
メージング、ボリューム方式
ホログラフィの原理、Computer
Generated Hologram
中間課題論文発表
中間課題論文発表
Plenoptic Sampling、Light Field
Rendering
SLAM、SfM など
Camera Array、Coded Aperture、Light Field Camera など
課題論文発表課題論文発表【授業時間外の学習（準備学習・復習・宿題等）】
必要に応じて．授業の予習と復習，課題発表の準備やレポートの作成に取り組むこと。
【テキスト（教科書）】担当教員が作成した資料を講義時またはオンラインで配布する。
【参考書】
必要に応じて、授業中で紹介する。
【成績評価の方法と基準】
2 回の課題発表とレポートで、総合的に判断する。課題発表は，授業内で扱った話題の原論文の内容紹介 1 回と，指定した国際会議での過去 5 年以内に発表された論文の内容紹介 1 回である．
【学生の意見等からの気づき】
なし。
【学生が準備すべき機器他】
課題発表時にはノート PC を持参すること．
【Outline and objectives】
3D image is one of the most appropriate topics for handling real worldinformation and 3D image technology is an integrated technology established from many element technologies. By understanding 3D image
technology from the viewpoint of vision and information processing,
you’ll understand the characteristics of integrated technology and think
about the possibilities and future possibilities of new media media.

— 19 —

発行日：2019/5/1

COS500K1

科学技術シミュレーション
善甫康成
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】
The subject of this lecture is that basic calculation techniques will be
studied for all students who major in information technology and science
to learn recent high performance computing technologies.
【到達目標】
Basic computational skills will be acquired. In particular, the issues wefocus on are as follows;
1.
Numerical integration, simultaneous equations, and ordinary
differential equations as computing software basics.
2. Program coding of numerical software
3. Program execution and visualization of the results.

【成績評価の方法と基準】
Practical programming exercises and assignments in each lecture, andcontribution to the course【学生の意見等からの気づき】
Questions, comments and discussion in each class would be a good foryour own development. Your active contribution sure will make you
understand this lecture deeply.
【学生が準備すべき機器他】
Computational environments and private PC for developing somenecessary programs.

【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
We will investigate the basis of recent simulation techniques in scienceand engineering, where computation based researches are extensively
applied to engineering and materials developments. This course
provides opportunities to learn the necessary basic skills throughsolving various practical-level exercises and programming, and hopethat this nurtures future researchers, educators and professional
engineers in information science and practical R&D.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Computing software
basics2
Numerical integrationand errors
3
Numerical
differentiation
4
Trial-and-error
searching
5
Ordinary differential
equation (1)

6
7
8
9
10

11
12
13
14

Ordinary differential
equation (2)Application of ordinary
differential equation
Solving simultaneous
equations (1)Solving simultaneous
equations (2)Monte Carlo technique

Generating random
numbers
Basics of molecular
dynamics
Partial deferential
equation (1)Summary

内容
Number representation, fixed andfloating method
Integration algorithms, anduncertainties in computations
Differentiation and its error
analysis
Bisection and Newton-Rahpson
Algorithm
Simple Euler’s algorithm, andsecond order of Ordinary
Differential Equations
Runge-Kutta Algorithm (2nd order,
4th order)
Non-linear oscillations

Matrix computing (Gauss-Jordan
elimination)
Matrix computing (LU
decomposition)
Calculating π using Monte Carlo,and comparison with numericalintegrals
Simulating randomness and its
assessment
Description of 1 dimensionalmotion of 2 atoms
Thermal conductance and solutionof Laplace equation
Review of lectures【授業時間外の学習（準備学習・復習・宿題等）】
Prior to each lecture, participants should lean the important technicalterms, and their meanings and definitions.
【テキスト（教科書）】
小柳義夫監訳、計算物理学（上・下）朝倉書店 (R. H. Landau, et. al.,Computational Physics)
小柳義夫監訳、計算物理学（Ⅰ・Ⅱ）朝倉書店（Landau et al., Computational
Physics: Problem Solving with Python, 3rd ed.）Handouts to be distributed【参考書】
R. H. Landau, M. J. Paez, C.C. Bordeianu, “A survey of computational
physics ‒ introductory computational science −,” Princeton University
Press 2008
Some other references will be introduced together with handouts.

— 20 —

発行日：2019/5/1

COT500K1

線形システム特論
小西克巳
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
動的システムの基礎となる線形システム理論について学ぶ。微分方程式、状態空間表現、伝達関数について学び、動的システムの解析および設計手法を学ぶ。
【到達目標】
線形システムについて理解し、その解析と設計ができることを目標とする。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
講義形式を基本とし、必要に応じて演習も行う。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
なし / No【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
１
ガイダンス
２

線形代数の復習

３４５６７

線形システムとフーリエ変換
状態方程式（１）状態方程式（２）システムの安定性
可制御性・可観測性

８９

ラプラス変換
伝達関数

１０

極配置設計

１１

オブザーバー

１２
１３
１４

最適レギュレータ
サーボ系
総復習

内容
講義の構成と進め方に関するガイダン
スおよび線形システムの概要
線形システム論に必要な知識である線
形代数の復習線形システムの基礎とフーリエ変換
状態方程式とその解等価変換、双対システム
システムの安定性解析手法
システムの可制御性・可観測性とその判別方法
線形システムとラプラス変換
線形システムと伝達関数、状態方程式との関係
状態フィードバックによる極配置設計法
状態推定器と、それを用いたフィードバック設計法
最適レギュレータの概要と設計法
サーボ系の概要と設計法
第１回〜１３回の復習【授業時間外の学習（準備学習・復習・宿題等）】
参考資料の予習、復習、課題への取り組み。
【テキスト（教科書）】なし【参考書】
講義にて指示。
【成績評価の方法と基準】
達目標への達成状況を確認する期末試験および講義に対する積極的な参加状況に基づき評価する。
【学生の意見等からの気づき】
本年度新規科目につきアンケートを実施していません【学生が準備すべき機器他】
特になし【Outline and objectives】
The aim of this course is to help students acquire an understanding of
the linear system theory.

— 21 —

発行日：2019/5/1

COT500K1

Global CIS Special Lecture 1
藤田悟

サブタイトル：グローバル CIS 特別講義 1
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】
Practical machine learning:This course is designed to give graduate students the fundamental
knowledge and practical training of machine learning techniques.
【到達目標】The goal of this course is to have students familiarized with knowledge,
understanding, and practices of the process and methodology formachine learning.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
The course, conducted in English, will mainly consist of lectures but
time will be given for students to work on research and programming
exercises.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Introduction

2
3
4

Data science 1
Data science 2Classification 1

5
6Classification 2
Classification 3

7
8
9
10

12
13

Regression 1
Regression 2
Midterm project
Dimensionality
reduction 1
Dimensionality
reduction 2
Clustering
Deep learning

14

Final Project

11

内容
Introduction to data science andmachine learning
Data acquisition
Data visualization
Basic techniques and performancemeasures
Generalization and overfitting
Advanced techniques andapplications
Linear regression
Other techniques and applications
Project presentation
Principle Component Analysis

Other techniques and applications
Basic techniques and applications
Introduction to neural network anddeep learning
Project presentation
Summary and discussion【授業時間外の学習（準備学習・復習・宿題等）】
Reading, research and programming assignments.
【テキスト（教科書）】
Course materials will be provided in class.
【参考書】
Andreas C. Müller, Sarah Guido, "Introduction to Machine Learningwith Python: A Guide for Data Scientists," O’Reilly Media, 2016.
Sebastian Raschka, “Python Machine Learning: Unlock Deeper Insights
into Machine Learning With This Vital Guide to Cutting-edge Predictive
Analytics,” Packt Publishing, 2015.
Willi Richert and Luis Pedro Coelho, "Building Machine Learning
Systems With Python," Packt Publishing, 2013.
【成績評価の方法と基準】
Students will be evaluated on the basis of contribution in class (20%),and assignment outputs (80%).
【学生の意見等からの気づき】(None in particular.
Feedback from students will be encouraged throughout the course.)【学生が準備すべき機器他】
Students are expected to bring and use their laptop PCs for in-classprogramming exercises and presentations.
【Outline and objectives】
Practical machine learning:This course is designed to give graduate students the fundamental
knowledge and practical training of machine learning techniques.

— 22 —

発行日：2019/5/1

COT500K1

Global CIS Special Lecture 2
藤田悟

サブタイトル：グローバル CIS 特別講義 2
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】This course provides concepts and fundamentals of hardware/softwarecodesign in embedded systems development. A complex computer
system consist of hardware (HW) and software (SW) parts. HWengineers can do HW design and synthesis.
SW engineers cando SW design and synthesis.
However, the developed systemmaybe not optimal. Advanced techniques in HW/SW co-design allow
designing an optimal embedded system from the high level to the
low level of abstractions. The course covers the following subjects:
Introduction to embedded systems; Models for describing hardware andsoftware components (specification); System design (hardware-software
partitioning and design space exploration); Performance analysis andestimation techniques; Advanced topics.
【到達目標】
Basic knowledge and skills in the design of complex computer systems,
in particular embedded systems, will be acquired. The student will
understand concepts, basics, fundamentals, structures, specifications
and design issues of embedded systems. Models and methods are
discussed that are fundamental for complex computer systems thatconsist of software and hardware components. The student should dosome works on HW/SW co-design using the open source or free softwaretools.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
Following the lectures and making some presentations, the student
will learn the concepts, fundamentals, skills and techniques of HW/SW
co-design. This course provides opportunities to students to learn andimplement some issues of HW/SW codesign by sub-themes/topics as
mini-projects.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Introduction

2
3

4Specification andmodels of computation
Specification andmodels of computation(cont.)
Mapping applications
into architectures

5

High-level synthesis

6

System partitioning

7

Multi-criteria
optimization

8

Multi-criteria
optimization (cont.)
System simulation

9

10

Design space
exploration

11

Performance
estimation

内容
Embedded systems; HW/SW
co-design issues
Models of computation; State
charts; Data-flow models
Models of computation; State
charts; Data-flow models

System synthesis; Application
specifications; Architectures &mapping specifications
Architectural models; Quality
measures; Design description,transformations; Partitioning;
Scheduling; Allocation; Design
methodology; ASAP, ALAP
Partitioning and mapping; Levelsof abstraction; Model-based
synthesis; Cost functions;
Partitioning problems; Solution
methods
Multiobjective optimization;
Evolutionary algorithms;
Implementation aspects(Cont.)

12

Worst-case execution
time analysis

13
14

Advanced topics
Summary

Problem statement, toolarchitecture; Program pathanalysis; Value analysis caches;
Pipelines: models & analyses
Presentations/discussions
Review of lectures
Final reports【授業時間外の学習（準備学習・復習・宿題等）】
Prior to each lecture/presentation, the students should review theprevious lectures/presentations, do homework and learn the newtechnical terms, their meanings and definitions.
【テキスト（教科書）】- Lecture/presentation printouts / handouts and related materials will
be provided to the students- Online materials.
【参考書】
1.“Embedded System Design”, 2nd Ed., Peter Marwedel, Springer, 2011.
ISBN 978-9-4007-0256-1.
2.“A Practical Introduction to Hardware/Software Codesign”, 2nd Ed.,
Patrick Schaumont, Springer, 2013. ISBN 978-1-4614-3737-6.
3.“Hardware Software Co-design of Embedded Systems”, F. Balarin,
Chiodo, et al., Kluwer Academic Publishers, May 1997.
ISBN
0-7923-9936-6.
4.“Hardware/Software Co-Design: Principles and Practice”, Jørgen
Staunstrup and Wayne Wolf, Springer, 1997. ISBN 978-0-7923-8013-9.
5.“An Introduction to High-Level Synthesis”, Philippe Coussy, Daniel D.
Gajski, Michael Meredith, and Andres Takach, IEEE Design & Test ofComputers, vol. 26, no. 4, pp.8-17, Jul.-Aug. 2009. ISSN 0740-7475.
6.“High-Level Synthesis: Introduction to Chip and System Design”,
Daniel D. Gajski, Nikil D. Dutt, Allen C-H Wu, and Steve Y-L Lin,
Springer, 1992. ISBN 978-0-7923-9194-4.
Some other references will be introduced.
【成績評価の方法と基準】
Practical exercises and/or assignments to the students, and sub-themes
as mini-projects will be also given to the students. The total evaluation
will be based on
1. Class participation and assignments/reports: 40%
2. Sub-theme/final report and presentation(s): 60%【学生の意見等からの気づき】
This course is offered as of this semester.
【学生が準備すべき機器他】
Some free and/or open source software tools can be downloaded andinstalled on private PC for HW/SW co-design practice.
【Outline and objectives】
This course provides concepts and fundamentals of hardware/softwarecodesign in embedded systems development. A complex computer
system consist of hardware (HW) and software (SW) parts. HWengineers can do HW design and synthesis.
SW engineers cando SW design and synthesis.
However, the developed systemmaybe not optimal. Advanced techniques in HW/SW co-design allow
designing an optimal embedded system from the high level to the
low level of abstractions. The course covers the following subjects:
Introduction to embedded systems; Models for describing hardware andsoftware components (specification); System design (hardware-software
partitioning and design space exploration); Performance analysis andestimation techniques; Advanced topics.

System classification; Discrete
event simulation; SystemC;
Simulation at high abstraction
level
Optimization-analysis cycle;
Network processors; Design space
exploration cycle
Performance estimation in design
flow; MPSoC; Requirements;
Metrics; Methods— 23 —

発行日：2019/5/1

COT500K1

Global CIS Special Lecture 3
内田薫

サブタイトル：グローバル CIS 特別講義 3
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
Global communication for CIS:
This course, conducted in English, is to give graduate students basic
communication skills, mainly presentation skills, necessary for global
research, engineering and business.
【到達目標】The goal of this course is to have students acquire understanding andskills for presenting academic and/or technical contents.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
The students will learn how to organize their contents and write
effectively in academic and/or technical style. They will also learn toconstruct their oral presentations, prepare slides, deliver them well, andinteract with the audience.
This class will consist of lectures, writing exercises and in-classpresentation practices.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Introduction
2
Tools and structure3
Beginning to write
4
Writing paragraphs

5
6
7
8
9

Introduction part
Body part
Conclusion part
Writing workshop
Oral presentations

10
11
12
13

Slide preparation
Effective delivery
Audience interaction
Presentation workshop

14

Additional tips andsummary

内容
What is academic communication
Tools and standard styles
Planning, Preparing outlines,
Paragraph unity and coherence,
connectors
Preparing the introduction partPreparing the body partPreparing the conclusion part
Self and peer editing
3 part structure, outline,
preparation
Organization and slide design
Body language and speech delivery
Q/A and discussion
Presenting academic contents andpeer review
How to improve skills
Summary【授業時間外の学習（準備学習・復習・宿題等）】
Writing assignments, preparation and practices for oral presentations.
【テキスト（教科書）】
Course materials will be provided in class.
【参考書】
Mike Markel, “Technical Communication, 10th edition,” Bedford/St
Martins, 2012.
William Pfeiffer, “Technical Writing: A Practical Approach (5thEdition),” Prentice Hall, 2002.
Justin Zobel, “Writing for Computer Science, 2nd edition,” Springer,
2004.
【成績評価の方法と基準】
Students will be evaluated on the basis of contribution in class (20%),
writing assignments (20%) and presentation practices (60%).
【学生の意見等からの気づき】(None in particular.
Feedback from students will be encouraged throughout the course.)【Outline and objectives】
Global communication for CIS:
This course, conducted in English, is to give graduate students basic
communication skills, mainly presentation skills, necessary for global
research, engineering and business.

— 24 —

発行日：2019/5/1

COT500K1

Global CIS Special Lecture 4
内田薫

サブタイトル：グローバル CIS 特別講義 4
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
Computer and Information Sciences for global innovation:
This course is designed to give graduate students the fundamental
knowledge of and training for applying computer and information
sciences for global innovation.
【到達目標】The goal of this course is to provide students with knowledge andunderstanding of the process and methodology to apply the asset ofcomputer and information sciences to solve real world problems throughglobal innovations.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【学生の意見等からの気づき】(None in particular.
Feedback from students will be encouraged throughout the course.)【学生が準備すべき機器他】
Students are expected to bring and use their laptop PCs for in-classprogramming exercises and/or presentations.
【Outline and objectives】
Computer and Information Sciences for global innovation:
This course is designed to give graduate students the fundamental
knowledge of and training for applying computer and information
sciences for global innovation.

【授業の進め方と方法】
The course, conducted in English, will enable students to understandthe basic knowledge necessary to apply computer and information
sciences to solve real world problems through global innovations.
The course will mainly consist of lectures including real case studies
but time will be given for students to work on research, discussion andprogramming projects.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Introduction
2
Innovation 1
3
Innovation 2

4
5

6
7
8
9
10
11

12

13
14

内容
Global innovation in 21st century
Value creation and value capture
Innovation process and corecompetence management
Differentiation for user benefit
Innovation 3
Analysis of positioning andenhancement of capabilities
Project workshop 1
Innovation case study
Diffusion of technology anddisruptive innovation
Marketing basics 1
Introduction to marketing theories
Marketing basics 2
MOT marketing methodologies
Innovation case study 1 Birth of personal computer
Innovation case study 2 Evolution of the Internet
Project workshop 2
Market creation by technology
Product architecture
Modular vs Integral
Open vs Closed
Platform leadership
Business models- Business architectures andearning models- Internet services, Web marketingand monetization
Project workshop 3
Business innovation
Summary
Globalization of technology andbusiness【授業時間外の学習（準備学習・復習・宿題等）】
Reading, research and programming assignments.
【テキスト（教科書）】
Course materials will be provided in class.
【参考書】
Clayton M. Christensen, The Innovator’s Dilemma:
When New
Technologies Cause Great Firms to Fail (Management of Innovation andChange), Harvard Business Review Press; Reprint edition (November
19, 2013).
W. Chan Kim and Renee Mauborgne , Blue Ocean Strategy: How
To Create Uncontested Market Space And Make The Competition
Irrelevant, Harvard Business Review Press; 1 edition (February 3,2005).
Frederick E. Webster Jr., “Industrial Marketing Strategy,” Wiley, 1995.
Hugo Tschirky et al, “Management of Technology and Innovation in
Japan,”Springer; 2005.
【成績評価の方法と基準】
Students will be evaluated on the basis of contribution in class (20%),and assignment outputs (80%).

— 25 —

発行日：2019/5/1

COT500K1

Communicating Sequential Processes for Secure System Development松井和人

サブタイトル：セキュアシステム開発のための CSP
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】
過去１０年間に、クラウド、自動車、ロボット、IoT などの分野は従来のような逐次プログラミング技法から、ネットワーク、イベント駆動、並列処理へと大きく変化しました。ところが並行処理の教育はマルチスレッドの手法が中心です。しかしこの手法は低レベルの並行処理しか適応できません。一方CSP(Communicating Sequential Processes) モデルは高位の並行処理のモデルが用意されており、幅広い用途に応用できます。講義では CSP モデルの理論的な概念、PAT3(Process Analysis Toolkit) を使ったモデル検証を中心に進め、安全なプログラミング技法を理解します。
【到達目標】
A goal of this course is to study the basic understanding of CSP
model. It covers a process algebra, verification methodology using
PAT3 and some programming using occam/XC/JCSP/PyCSP. As a CSP
is a super set of the computing model, this can easily apply to the
UML/SysML/Statechart/etc models which are widely used in industry.
Definitely, studying this course could be a good leverage to your work.
Students are expected to understand the foundation of CSP model tobrush up on skills during the course.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
This course method is mostly based on the lecture materials andexercises.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
なし / No【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
Lecture Course Introduction
1

Lecture2

Events and Processes

Lecture3

Recursion, Condition,
Loop and Choice

Lecture4

Concurrency

Lecture5

Abstraction andControl Flow

Lecture6
Lecture7

PAT3 Study andPractice (1)Algebraic Laws ofProcesses

Lecture8
Lecture9

Traces and Semantics

Lecture10

PAT3 Programming (2)Refusals, Failures andDivergences

内容
1. Definition of Secure System
Development.
2. Higher Levels of Parallel
Computing in Industry
3. Structures of this course.
4. etc
1. Communicating Process
Architectures
2. Label Transition System
3. Mathematical Notations
1. Recursion
2. Condition
3. Loop
4. Guard
5. Choice
1. Parallel
2. Indexed Parallel
3. Laws of Parallel
4. Interleaving
5. Bulk Synchronous Parallel
1. Hiding
2. Renaming
3. Pipe
1. PAT3 Studying

Lecture11
Lecture12
Lecture13

Lecture14

PAT3 Programming (3)Timed CSP (1)Timed CSP (2)Timed CSP (3)1. UML2.x
2. LTL(Linear Temporal Logic)
1. Timed Language
2. Timed Processes
1. Intervals of Time
2. Timed Event
3. Timed Traces
4. Timed Refusals
5. Timed Failures
6. Specification Macros
1. Timed Refinement
2. Trace Timewise Refinement
3. Failures Timewise Refinement【授業時間外の学習（準備学習・復習・宿題等）】
None【テキスト（教科書）】
Title: "Concurrent and Real-Time Systems – The CSP Approach"
Author: Steve Schneider
Publisher: John Wiley & Sons
ISBN-10: 0-471-62373-3
【参考書】
None
【成績評価の方法と基準】
Course grade will be determined mostly by the homework assignment.
【学生の意見等からの気づき】
Lectures will focus on several applications used in industry so thatstudents can easily understand CSP model and try to reduce a gap
between a theory and programming by showing examples.
【学生が準備すべき機器他】
PC (Windows 8/10)【その他の重要事項】
None【Outline and objectives】
During last decade, the computer industry has drastically changed.
From the cloud computer to the IoT systems, many software applications(including robotics, automobile, AI) tend to be network-centric,
event-driven and highly parallel. This means that a programming
becomes very complicated. A conventional teaching of concurrent
programming is mostly multi-threading basis. But as this model
supports a low level of concurrency, its use is limited and badly
quite difficult to get the correct result. On the other hand, CSP(Communicating Sequential Processes) model provides a higher levelof concurrency and get the correct result, so it is much easier toapply a wide range of complicated applications. A general problem
in a concurrent programming is to find underlying bugs. Checking
correctness after making a program takes a long time or might be late.
So this course studies the verification methods using PAT3 (Process
Analysis Toolkit). Furthermore, this course also provides the processmodels, real-time, network architectures and some programming
examples. Studying this course is very much useful to your future work!!

1. Laws of Condition
2. Laws of Sequential Composition
3. Laws of External/Internal
Choice4. Laws of Parallel Composition
5. Laws of Interleaving
6. Laws of occam Programming
7. Unified Theory of Programming
8. Unified Theory of Concurrency
1. Traces and Executions
2. Traces of CSP constructs
1. Refusals
2. Stable Failures
3. Divergences
4. Failure-Divergences
5. Infinite Traces
1. Stateflow
2. State Transition Table— 26 —

発行日：2019/5/1

COT500K1

Business
渡辺

Application

System Development

Using

Java

正信

サブタイトル：Java によるビジネスアプリケーションシステム開発
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】・The essential way of thinking in developing Business Application
Systems by understanding their definition, aims and exit criteria.
・The essential way of thinking in using Java for developing Business
Application Systems by understanding the effective and excellent
features of Java.
【到達目標】
・To master application skills to develop Business Application Systems
by understanding their software architecuture, system structure,development process and development techniques.
・Especially to master application skills through actually developing
batch business application programs by using a Java code generation
tool in a seminar of programming practice.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
1. Introduction to Business Application Systems and Java
2. Outline and structure in Business Application Systems
3. Development process for Business Application Systems
4. Online system development
5. Batch system development
6. Batch system programing practice using a Java batch code generation
tool【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
1. Introduction to
Business Application
Systems and Java2
1. Introduction to
Business Application
Systems and Java3
2. Outline andstructure in Business
Application Systems
4
2. Outline andstructure in Business
Application Systems
5
3. Development process
for Business
Application Systems
6
3. Development process
for Business
Application Systems
7
3. Development process
for Business
Application Systems
8
4. Online systemdevelopment
9
5. Batch systemdevelopment
10
6. Batch system
programming practiceusing a Java batch code
generation tool11
6. Batch system
programing practiceusing a Java batch code
generation tool12
6. Batch system
programing practiceusing a Java batch code
generation tool13
6. Batch system
programing practiceusing a Java batch code
generation tool
14
7.Conclusions【授業時間外の学習（準備学習・復習・宿題等）】
・Object-Oriented Analysis, Design and Programming
・Java Programming in Eclipse【テキスト（教科書）】
See References【参考書】
・Foundations of Business Systems,by P.O.Flaatten, et al 1989, The
Dryden Press.
・Software Engineering: Modern Approaches 2nd
Edition, by Eric
J.Braude, Michael E. Bernsteins, 2011, John Wiley&Sons,Inc.
・The Adventures of An IT Leader, by Robert D. Austin, Richard L. Nolan
and Shannon O’Donnell【成績評価の方法と基準】
・Attendance ： 10%
・Theme tests ： 30%
・Report examination on a seminar of Java batch programming practice： 60%【学生の意見等からの気づき】
None【学生が準備すべき機器他】
・PC with 2G main memory or over, and Internet connection.
・Eclipse and Java・Files and Database(Oracle)
・A Java Batch code generation tool ： Jaime【Outline and objectives】
・The essential way of thinking in developing Business Application
Systems by understanding their definition, aims and exit criteria.
・The essential way of thinking in using Java for developing Business
Application Systems by understanding the effective and excellent
features of Java.

内容
1.1 Business Application Systems
supporting Business

1.2 Effective and excellent featuresof Java in developing Business
Application Systems
2.1
Business Models

2.2 System Foundations supporting
Business Application Systems
3.1 Requirements definition

3.2 Design

3.3 Implementation and Test

4.1 Online system developmentusing Java
5.1 Batch System Design
6.1 What is Jaime?

6.2 File-to-File Pattern Code
Generation

6.3 Control Break Pattern Code
Generation

6.4 DB-to-DB Pattern Code
Generation

Explanation on Problems in
Reporting— 27 —

発行日：2019/5/1

COT500K1

Web System Development by Ruby on Rails
小林郁夫

サブタイトル：Rails 環境の WEB システム開発
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】This course aims to introduce the perspective of the so-called WEB
application and to acquire the basic knowledge about the language forexpressing the system.
Web application is a WEB and DB system designed with MVC
architecture consisting of a database as a model, a Web page as a view,
and an application program as a controller. The primary intention is toread SQL, HTML, and Ruby programs. The secondary intention is towrite a simple application that runs on the Ruby on Rails framework.
【到達目標】The goal is to be able to explain how to build web applications.
By understanding the database structure, the goal is to be able to design
and build simple database system on the Web environment. Meanwhile,
as a graduate student, we discuss various topics related to Web-based
computation.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
This course is practical training. The name of the framework; ’Ruby
on Rails’ implies ‘to run easily as if we go by train on the rail.’ Infact, this framework makes it easy to build a simple application withinminutes. But the most important thing is to know the mechanismsof these applications, explain what you did when meta-programming
the system, and understand the configuration of those applications. If
those knowledge is lacking, even medium sized systems can hardly be
developed.
In this course, we break up the system into independent parts, unravel
relationships between parts, trace the links, and acquire knowledge
about the structures of the web application. The important thing is not
to dig deep into specific areas, but to know the links between areas.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
Week 1 Introduction

Week 2

Scaffolding andInternationalization

Week 3

MVC Model, HTMLand SSL

Week 4

Database Language
SQL

Week 5

Relational Database

Week 6

Ruby, Language andGrammar
Test Driven
Development

Week 7

Week 8User Authentication

Week 9File uploads and image
display

Week 10 Project Design - Mini
Twitter Site -内容
Guidance. Installation ofdevelopment environment.
Preparation.
Generate a simple application
scaffolding and multilingual
screen, using Internationalization(I18n) gem.
Dissolve the project structure into
three components; Model, View,
and Controller. Learn the design ofHTML, CSS (Cascading style
sheet) and WEB page.
Introduction to SQL: Structured
Query Language, and CRUD
operation of database in Rails
environment.
ER models, primary keys, andrelational structures in the SQL
description. Describe therelationship between tables.
Introduction of Ruby language andits grammar.
Introduce TDD (Test Driven
Development) and BDD(Behavior
Driven Development).
Introduce authentication gem devise. Learn how to authenticate
users, and control the session
dialog with users.
Upload the attached file to the
database and save it. Display the
saved image file.
Design the original WEB site.
Lecture material is the mini twittersite. Introduce user management.

Week 11 jQuery and Coffee
scriptWeek 12 System Design on
Rails: Introduction

Week 13 Presentation and
Debate(1)Week 14 Presentation and
Debate(2)Web system is based on the serverside programming. To improve thesystem response, learn how to use
client side programming.
Design ’follow’ structure in twitter
system, install ’search’ function in
the twitter, then, finish the Mini
Twitter System project.
Present your own web system tothe class, then discuss the design ofthe system.
Present your own web system tothe class, then discuss the design ofthe system.

【授業時間外の学習（準備学習・復習・宿題等）】
The first step is to operate and generate the samples as instructed,
and literally create a replica. Next, the second step is to appeal youroriginality. You need to spend your time in this second phase trial.
【テキスト（教科書）】
There are lecture materials on the course web site of Hosei University
course management system.
【参考書】
A variety of web pages are provided for Rails programmers. We refer tothese pages as teaching materials.
【成績評価の方法と基準】
Students are expected to make several presentations on the topics given
during the lectures. Discussion on topics will be held in the class. At
least two presentations and the voluntary participation in discussion
are required. Also the evaluation of the final presentation of yourown WEB application will be added. Also final program code will be
evaluated.
【学生の意見等からの気づき】
The reports on WEB application design was very easy for graduate
students. Therefore, discussion about computer topics and design
focuses on the grade evaluation criteria of the course.
【学生が準備すべき機器他】
Your own personal computer should be the main course computer
system.
【その他の重要事項】
Practice makes perfect. Skill and knowledge can not be obtained unless
you try to operate according to the teaching materials yourself.
【Outline and objectives】
The goal is to be able to explain how to build web applications.
By understanding the database structure, the goal is to be able to design
and build simple database system on the Web environment. Meanwhile,
as a graduate student, we discuss various topics related to Web-based
computation.

— 28 —

発行日：2019/5/1

COT500K1

Software Requirements Analysis and Specification Techniques
佐原伸

サブタイトル：ソフトウェア要求仕様記述と分析の技術
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】
The aim of the course is that the students learn the basic principles
and practice for software requirement specification and analysis in a
combination of VDM++ and software engineering techniques. This
will particularly increase the understanding of the different levelsof techniques that can be used when modeling a realistic industrial
system.

6

7【到達目標】The participants must at the end of the course be able to:- apply VDM++ for requirement specification.
- apply regression test for validating and verifying.
- evaluate VDM++ model from the software engineering viewpoint.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
This course contains:- The development process used for modeling using VDM++.
- The available tools support for validation of such models.
- Modeling in VDM++ using unordered collections.
- Modeling in VDM++ using relationships.
- Modeling in VDM++ using ordered collections.
In this course, there will be lectures in theory from the VDM++ book andslide. From the 4th week to 6th week all students shall turn in answersof homework. From the 7th week all students shall turn in a model ofhomework. In the last homework, students are able to establish groups
which contains max 5 people.

8

9【アクティブラーニング（グループディスカッション、ディベート等）の実施】
なし / No【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Software requirements
process and VDM

2

3

4

5

VDM++ specification

VDMTools

Defining data andfunctionality

Defining data andusing expressions

内容
This lecture explains:- Software development process.
- Software requirement
specification and analysis.
- What is VDM.
This lecture explains:- Walk through and play with
VDMTools on small examples.
- VDM process to make arequirement specification model.
- Please bring a PC which installed
VDMTools.
This lecture explains:- VDMTools functions.
(1) project making(2) syntax checking(3) tool option setting(4) type checking(5) UML class diagram generating(6) interpreter with debugger(7) project option setting(8) proof obligation generating(9) command line interface(10) combinatorial test(11) code coverage(12) pretty printing
This lecture explains:(1) data types: bool, number, char,and set(2) functionality: operation andfunction(3) object oriented specification(4) functional specification(5) invariant, pre condition, andpost condition
This lecture explains:(1) data types: sequence, product,and composite(2) expression: set, sequence,
record

10

11

12

13

14

Defining data, value,
invariant of typedefinition

This lecture explains:(1) data types : map, object, andfunction(2) invariant of type definition(3) value definition
Modeling using
This lecture explains:
unordered collections(1) function definition: implicit andwith functions
explicit(2) expression: let, def, quantified,
set comprehension, conditional,
and record(3) pattern and binding(4) reserved words: RESULT(5) homework: modeling using
unordered collections withfunctions
Modeling using
This lecture explains:
unordered collections(1) operation definition: implicit,
with operations
explicit, abstract class, "is subclassresponsibility", and "is not yet
specified", constructor(2) statements: let, def, block,assignment, skip, and return(3) expression: new(4) homework: modeling using
unordered collections with
operations
Modeling using map
This lecture explains:(1) statement: conditional, loop,
exit, trap(2) expression: map comprehension(3) exception handling(4) homework: modeling using map
Specification forThis lecture explains:real-world(1) specification for real-world:
structured and layered
specification, specification
framework(2) user oriented validation
Modeling using ordered This lecture explains:
collections with
(1) polymorphic function andindustrial techniquehigher order function(2) homework: modeling usingordered collections with industrial
techniqueLibraries
This lecture explains:(1) regression test library:
VDMUnit(2) VDM standard library(3) VDM SSlib(4) homework: regression test using
VDMUnit for our industrial model
Industrial softwareThis lecture explains:engineering technique (1) Useful software engineeringwith VDM
techniques in industry(2) Useful software engineering
tools
Explanation ofThis lecture evaluates and explains
homework industrial
the reported homework model.
model【授業時間外の学習（準備学習・復習・宿題等）】
Students will have to read chapters of the course book (chapter 1 ~8 and
11) and other materials for each class, as instructed.
【テキスト（教科書）】Kyushu University: VDM++ Language Manual
Kyushu University: VDMTools User Manual
Manual < http://fmvdm.org/doc/index.html >Quick Overview of VDM Operators < http://kurser.iha.dk/eit/tivdm1/
Quick_Overview_of_VDM_Operators.pdf >【参考書】
John Fitzgerald, Peter Gorm Larsen, Paul Mukherjee, Nico Plat andMarcel Verhoef:
Validated Designs for Object-oriented Systems,
Springer Verlag, 2005, ISBN 1-85233-881-4.

— 29 —

発行日：2019/5/1【成績評価の方法と基準】
The last homework must be documented as a report that should besubmitted by every student or group. The following items must be
included in the documents:• An introduction• A short description of the idea of the model• A description of the test set-up of the model• A pretty printed VDM++ sources with code coverage and comment,such that it is possible for the teacher to analyze the produced model.
In the evaluation of the reports the following aspects will be considered:• The completeness of testing of the VDM++ model• The ability to use sets appropriately• The ability to use sequences appropriately• The ability to use mappings appropriately• The ability to use invariants, pre- and post-condition predicatesappropriately• The ability to use layered architecture of requirement specification• The readability, reusability and maintainability of the VDM++
sources• The overall impression of the finish of the report【学生の意見等からの気づき】
There is no modification point.
【学生が準備すべき機器他】
PC which VDMTools can run.
【Outline and objectives】
The aim of the course is that the students learn the basic principles
and practice for software requirement specification and analysis in a
combination of VDM++ and software engineering techniques. This
will particularly increase the understanding of the different levelsof techniques that can be used when modeling a realistic industrial
system.

— 30 —

発行日：2019/5/1

COT500K1

Software Process and Quality Assurance
小池太

サブタイトル：ソフトウェアプロセス及び品質保証
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】
On completion of this course, students will understand software process
and software quality assurance for developing high quality software
product.

【学生の意見等からの気づき】
Examples will be shown to help your understanding.
In some lectures, students will do tiny exercise (not test) for
understanding effectively.

【到達目標】
To master the methods for evaluating software process and productquantitatively.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
Students attending this course are expected to learn software process asa technology to improve the software production efficiency.
Furthermore students are also expected to learn software quality
assurance based on measurement and quality prediction, with somecase studies in industry.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
なし / No【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Introduction
2
Overview of Software
Process

3

Software Metrics

4

Practical Software
Measurement(1)Practical Software
Measurement(2)Practical Software
Measurement(3)Practical Software
Measurement(4)Personal Software
Process(PSP)(*)

5
6
7
8

9

Capability Maturity
Model
Integration(CMMI)(*)

10

Software Review

11

Case Study(1)12Software Quality
Prediction(1)13Software Quality
Prediction and Case
Study(2)14

Summarization

内容
Introduction of this course.
Each phase of softwaredevelopment work, and somemethodologies.
Quantitative measures of a degree
to which a software system orprocess possesses some property.
Basic concepts and framework formeasuring software.
Measurement and analysis
methods for software.
Quantitative evaluation ofsoftware.
Measurement for quality software.

Overview of PSP which is intended
to help software engineers improvetheir skills and performance.
(*) "Personal Software Process" and"PSP" are registered service marksof the Carnegie Mellon University
Overview of CMMI which is theguideline for system development
organization to improve theirsoftware development process.
(*)CMMI, the CMMI logo are
registered marks of CMMI
Institute LLC.
Overview of software review andefficient utilization of software
inspection.
Case study of quantitativeevaluation of software.
Analyzing and verifying the trendof quality based on themeasurement.
Models and analysis methods topredict software quality, and casestudy of software quality
prediction.
Summarizing of this course.

【授業時間外の学習（準備学習・復習・宿題等）】
Study references below.
【テキスト（教科書）】
Materials(PDF) will be provided in every lecture.
【参考書】
References will be shown in each lecture.
【成績評価の方法と基準】
Quality of term paper(100%)— 31 —

発行日：2019/5/1

COT500K1

Software Architecture for Enterprise Systems
伊藤隆, 菊地弘晶, 串田高幸, 田中保夫, 土屋敦, 根岸康, 野口雅人, 水田秀行, 山本学, 山本宏, 若尾正樹
サブタイトル：企業システム構築のためのソフトウェア基盤
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】
The enterprise systems are built on a combination of the technologies, so
a single viewpoint of the technologies is not good enough to understandthe states of the art. Several issues are discussed from multiple
viewpoints by the lecturers on business sides.
【到達目標】The goal of this course is learning the current hot technologies of theenterprise systems. The students will be able to explain the current
information technologies from the viewpoints of business.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
This course is organized as omnibus lectures. Each class is organized bya specialist who actually works in the enterprise system development.
The lectures explain hot topics of the enterprise systems and show theactual examples of the systems.

【参考書】
Not specified.
【成績評価の方法と基準】
Participation is important. The students are required to join thediscussion in the class. The students has to submit a report describing
some of enterprise system technologies explained in the lectures.
【学生の意見等からの気づき】
Lecturers will try to make good discussion on the presented topic.
【学生が準備すべき機器他】
Some lectures use PC and Internet access.
【Outline and objectives】
The objectives of this course is to understand outlines of software
technologies for realizing enterprise systems.

【アクティブラーニング（グループディスカッション、ディベート等）の実施】
なし / No【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Overview of Enterprise
Systems2

Relational Database3

Application platform

4

Cloud Computing

5

Frond End
Development forEnterprise
Applications
Analytics

6
7

Text search, analytics
and discovery forenterprise

8

HPC for Enterprise

9

Global Enterprise
Networking

10

Hybrid Cloud Storage

11

Internet of Things

12

Service Science

13

New Technologies

14

Summary

内容
The class explains overview ofenterprise systems. Especially, we
discuss the targets and goals of thesystems.
The class explains the base and thecurrent topics of relational
database.
The class explains issues onapplication servers andtransaction.
The class explains the current
topics of the cloud computing.
current topics on the user interface
technologies. AJAX, mash-up, andaccessibility issues are discussed.

The class explains technologies foron data analytics.
The class explains search engine
technologies that specially focus onenterprise information
management.
The class explains technologies ofhigh performance computing.
The class explains about how tobuild and manage a complex global
network environment in anenterprise.
The class explains platforms
storing enterprise data and an
emerging technology "hybrid cloudstorage".
The class explains new area
"Internet of Things".
The class explains a brandnew
science area, that is service science.
The class explains new technologies
for realizing enterprise systems
The class summarizes this course.

【授業時間外の学習（準備学習・復習・宿題等）】
This course provides the current hot topics of enterprise systemtechnologies from various lecturers. Before joining the classes, you
should learn the basic concepts and technologies of the class titles. Afterthe classes, you should research the related issues, technologies andproducts in the Internet to concrete your ideas.
【テキスト（教科書）】
The lecturers will provide original slides.

— 32 —

発行日：2019/5/1

COT500K1

Object Oriented WEB Programming Using Ruby
小林

郁夫

サブタイトル：Ruby 言語によるオブジェクト指向 WEB 設計
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
The attainment target is to acquire the practical skills of WEB+DB
system development according to the concept of TDD (Test Driven
Development) or BDD (Behavior Driven Development). Design reviews
and code walk-throughs are frequently held to hone student skills tobuild a target system.
【到達目標】
When a student watches a web page, our goal is to imagine how the web
system can be created and write a similar design. To acquire knowledge
about many design patterns and gems, design trials and conferences on
a given topics are held through lectures.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
This subject is practical training. It succeeds the lecture on "WebSystem programming by Ruby on Rails" in the previous semester. The
fundamental contents have already been introduced in the lecture of theprevious semester.
In the expansion study of this semester, we first discuss the
specifications of the target system, and then, each student build asystem along with suggestions of lectures and the comments from othercourse attendants during code review.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
Week 1 Introduction

Week 2

Locale,Internationalization
and uploading photos

Week 3

Version management
using Git

Week 4

Week 5

Login-Authentication,
Validation and Error
messages
Test Driven
Development

Week 6

Test Data for TDD

Week 7Java-script and utilityof gems
Project Design (1/2)
Day 1/3 ‒Table/Controller
Design -Week 8

Week 9Project Design (1/2)
Day 2/3 - Session
Design Week 10 Project Design (1/2)
Day 3/3 ‒ System
Robustness -Week 11 Live Streaming withRails
Week 12 Project Design (2/2)
Day 1/2 - Streaming -内容
Install the Rails environment.
Review system generation in thelast semester.
Review the lessons of the previous
semester, and introduce the locales,internationalization, uploading
photos.
Learn about version control. Learn
how to merge backups and teammember source code into local
versions.
Review the user authentication oflogin management, and introduce
verification to confirm user input.
Introduce RSpec to support TDD.
Learn to write program
specifications before writing
program code.
Learn how to create test data andfollow the process of integrity
testing.
Learn to run java-scripts on rails
projects.
Learn how to develop a practical
WEB application.
The first step is a system design.
Discuss table design and controller
design.
System Installation.
Discuss session design.

Week 13 Project Design (2/2)
Day 2/2 - Push
notification Week 14 Presentation

Introduce live streaming to themonitoring system.
Discuss ’push’ notifications.
Demonstrate your web systemdesign to class.

【授業時間外の学習（準備学習・復習・宿題等）】
The first step is to operate and generate the samples as instructed,
and literally create a replica. Next, the second step is to appeal youroriginality.
Now, the third step is to build what anyone wants. In order toachieve the third step, you need to have as many "drawers" (knowledge
accumulation) as possible. In order to obtain more "drawers," you areencouraged imagining how to create the web system each time when
you visit a website.
【テキスト（教科書）】
There are lecture materials on the course web site of Hosei University
course management system.
【参考書】
A variety of web pages are provided for Rails programmers. We refer tothese pages as teaching materials.
【成績評価の方法と基準】
Students are expected to make several presentations on the topics given
during the lectures. Discussion on topics will be held in the class. At
least two presentations and the voluntary participation in discussion
are required. Also the evaluation of the final presentation of your own
WEB application will be added.
【学生の意見等からの気づき】
The reports on WEB application design was very easy for graduate
students. Therefore, discussion about computer topics and design
focuses on the grade evaluation criteria of the course.
【学生が準備すべき機器他】
Your own personal computer should be the main course computer
system.
【その他の重要事項】
When you visit some web pages, please feel "I can make this system."
Finally, I hope that you can develop any system. If you would liketo know web programming techniques not mentioned in this syllabus,
please let me know. I will try to cover it in a lecture.
【Outline and objectives】
When a student watches a web page, our goal is to imagine how the web
system can be created and write a similar design. To acquire knowledge
about many design patterns and gems, design trials and conferences on
a given topics are held through lectures.

Complete the system and make thesystem robust so that it canwithstand practical use.
Discuss the robustness of thesystem.
Introduce live streaming
technology in Rails 5 environment.
The second project design sample isa security monitoring system.
However, students can discussdevelopment target and choose.

— 33 —

発行日：2019/5/1

PRI500K1

Technical Writing for Software Engineers
藤野輝雄

サブタイトル：ソフトウェア技術者の為の技術英語の書き方
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
Since an engineering field is becoming more international, students
need to learn how to write an English research paper more plainly sothat the others can understand the contents easily and quickly.
【到達目標】
Students can learn how to write an English research paper more
plainly. They can also learn technical writing skills for writing technicalEnglish, namely a part of technical communication skills, correctly,
clearly, and concisely through classwork.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
First, students learn how to write basic elements of a research paper,
such as an abstract, methods, and results, by referring to examples.
Then, they write each basic element of their own research. Finally, they
connect each element to complete the entire English research paper.
Also, the students engage themselves in group activities, such as apeer review of writing of the other students. After writing the entire
research papers, the students present their research papers and conduct
a question and answer session. In the course of writing the research
paper, they can learn techniques for writing technical English correctly,
clearly, and concisely. Thus, they can master technical communication
skills for correctly communicating technical information orally, visually,
and in writing.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
なし / No

13

Recommendations,Acknowledgments,
references, appendixes

14

Presentation【授業時間外の学習（準備学習・復習・宿題等）】
・Homework
・Reports
・Review of lessons
・Preparation for the next class【テキスト（教科書）】The teacher will provide education material.
【参考書】
藤野輝雄『理科系のためのかならず書ける英語論文』研究社，2006 年初版．（中国語版：藤野輝雄『超水準論文寫作指南』先鋒企管出版部，2006.
[http://www.pett.com.tw]）
藤野輝雄『理科系のための英語論文表現文例集』研究社，2012 年初版．
Michael Alley, The Craft of Scientific Writing Third Edition, Springer,
1997.
【成績評価の方法と基準】
Homework (40%), Quiz (30%), Report (20%), Presentation (10%)
【学生の意見等からの気づき】
I’ll continue to make students understand the contents easily.
【Outline and objectives】
Since an engineering field is becoming more international, students
need to learn how to write an English research paper more plainly sothat the others can understand the contents easily and quickly.

【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Introduction

2
3

4

5

6

7

8

9

10

11

12

Learning how to write future
topics, acknowledgments,
references, and appendixes andthen writing themPresenting a completed research
paper

内容
Analyzing examples of research
papers and studying theirstructure, research memos, andhelp sheets
Research theme
Learning how to write research
themes and then writing them
Need and importance
Learning how to write significanceof research themesof research themes and thenwriting it
Abstract
Learning the difference between an
informative abstract and a
descriptive abstract and thenwriting the former
Conventional research Learning how to write details on
details
related research in the past andthen writing them
Unresolved points in
Learning how to write unresolved
conventional research
points in past related research andthen writing them
Purpose (Main points)
Learning how to write essentials of
the purpose of research and the
purpose of a research paper andthen writing the essentials
Methods (Main points) Learning how to write essentials of
methods used for the research andthen writing the essentials
Methods (Details)
Learning how to write details of
methods used for the research andthen writing the details
Results (Main points,
Learning how to write essentials
Details)
and details of research results andthen writing the essentials anddetails
Comparison of research Learning how to write comparison
results with past onesof research results with those in
the past and then writing thecomparison
Conclusions (Main
Learning how to write essentials
points, Details)
and details of conclusions obtainedby analyzing results and thenwriting them

— 34 —

発行日：2019/5/1

PRI500K1

Writing and Presentation for Thesis
藤田悟

サブタイトル：論文の書き方と発表技術
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】Good communication skills are necessary for anyone wanting to work inglobal research, engineering and business community.
This course, conducted in English, is designed to give graduate students
the skills necessary for writing a thesis, and for preparing otherprofessional materials for presentation or publication.

【Outline and objectives】
Good communication skills are necessary for anyone wanting to work inglobal research, engineering and business community.
This course, conducted in English, is designed to give graduate students
the skills necessary for writing a thesis, and for preparing otherprofessional materials for presentation or publication.

【到達目標】The goal of this course is to have students acquire understanding andskills for writing academic research papers including thesis and for
effectively presenting acedmic contents,【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
The first part will be on academic writing. Students will understand therules and learn the skills for writing research papers.
The second part will be on oral presentation skills in English.
This class will consist of lectures as well as writing practices, peer
editing and in-class presentations.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Introduction
2
Tools and structure3
Beginning to write

4

Writing paragraphs

5
6

Writing workshop
Title and abstract

7

Introduction and bodypart
Body part andconclusion
Writing process

8
9
10

12

Introduction topresentations
Preparing viewmaterials
Delivery, Q/A session

13

Presentation workshop

14

Additional tips andsummary

11

内容
What is scientific communication
Writing tools and standard styles
Planning, Preparing outlines,
Thesis statement
Paragraph unity and coherence,
connectors
Self and peer editing
Deciding the title and writing theabstract
Writing the introduction, methods
and results
Writing the body part andconclusionconsistency and parallelism,
writing process
3 part structure, outline,
preparation
Self editing of writing ; slide design

Basics of speech delivery anddiscussion
Presenting academic contents andpeer review
How to improve skills
Summary【授業時間外の学習（準備学習・復習・宿題等）】
Reading / writing assignments, and preparation for oral presentations.
【テキスト（教科書）】
Course materials will be provided in class.
【参考書】
Alice Oshima and Ann Hogue, “Writing Academic English, Fourth
Edition (The Longman Academic Writing Series, Level 4),” Pearson
Longman, 2006.
Mike Markel, “Technical Communication, 10th edition,” Bedford/St
Martins, 2012.
William Pfeiffer, “Technical Writing: A Practical Approach (5thEdition),” Prentice Hall, 2002.
Justin Zobel, “Writing for Computer Science, 2nd edition,” Springer,
2004.
【成績評価の方法と基準】
Students will be evaluated on the basis of contribution in class (20%),
writing assignments (40%) and presentation (40%).
【学生の意見等からの気づき】(None in particular.
Feedback from students will be encouraged throughout the course.)— 35 —

発行日：2019/5/1

LANj500K1

Japanese Comprehension １
村松葉子
サブタイトル：日本語理解 1
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】
プロセスを重視したスピーチ作成や、その発表を通じて、日常生活でのやりとりや面接などにおいて、特定の話題について話ができるよう語彙や表現などを学ぶ。

【学生が準備すべき機器他】
パソコン【到達目標】
学生が自分のこと、自分の国、社会、文化などについてはなすときに、よく使う表現やことばがわかる。
また、それについて、日本語でまとまった話ができるようになる。

【その他の重要事項】
春学期の日本語理解２を履修した学生が多い場合はスピーチのテーマを変更する。
学生の要望・必要性に応じて柔軟に対応する。授業に関する要望や、実際に日本語を使用していて遭遇した困難、感じた困惑など、積極的に共有してほしい。日本人学生ボランティアが集まった場合は、適宜セッションを実施する。

【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【Outline and objectives】
To become proficient enough to make daily conversation or interviews on
specific topics such as about yourself,your country’s culture and society
by making and giving speech,【授業の進め方と方法】
２〜３回に分けて、スピーチの準備、発表を行う。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ①
オリエンテーション

②

③
④

⑤
⑥

⑦
⑧

⑨
⑩

⑪
⑫

⑬
⑭

内容
・授業の進め方などの確認
・自己紹介・スピーチについて
自国の行事・祭りについ ・語彙／表現の学習
て（１）
・構成
・作成
自国の行事・祭りについ ・発表
て（２）
・感想
観光（１）
・語彙／表現の学習
・構成
・作成
観光（２）
・発表
・感想
結婚（１）
・語彙／表現の学習
・構成
・作成
結婚（２）
・発表
・感想
自国と日本との関係（１） ・語彙／表現の学習
・構成・作成
自国と日本との関係（２） ・発表
・感想
産業と貿易（１）・語彙／表現の学習・構成・作成
産業と貿易（２）・発表・感想
習慣のちがい（１）・語彙／表現の学習・構成・作成
習慣のちがい（２）
発表準備
習慣のちがい（３）発表
フィードバック
評価セッション

【授業時間外の学習（準備学習・復習・宿題等）】
発表原稿の作成はできる限り授業内に時間をとるが、終わらなかった場合は宿題とし、翌日までにメールで提出。
また発表の口頭練習は必ずすること。
【テキスト（教科書）】
原則として、プリントを配布するが、必要があれば適宜指定する。
【参考書】
今まで日本語学習で使用した文法の教科書【成績評価の方法と基準】
授業貢献度等平常点８０％
課題提出２０％【学生の意見等からの気づき】
昨年度、授業内で行ったショートスピーチについて「勉強になった」「もっと話してみたい」という学生からの声があったため、本授業ではスピーチに焦点を絞った。

— 36 —

発行日：2019/5/1

LANj500K1

Japanese Comprehension ２
村松葉子
サブタイトル：日本語理解 2
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
プロセスを重視したスピーチ作成や、その発表を通じて、日常生活でのやりとりや面接などにおいて、特定の話題について話ができるよう語彙や表現などを学ぶ。

【学生が準備すべき機器他】
パソコン【到達目標】
学生が自分のこと、自分の国、社会、文化などについてはなすときに、よく使う表現やことばがわかる。
また、それについて、日本語でまとまった話ができるようになる。

【その他の重要事項】
春学期の日本語理解２を履修した学生が多い場合はスピーチのテーマを変更する。
学生の要望・必要性に応じて柔軟に対応する。授業に関する要望や、実際に日本語を使用していて遭遇した困難、感じた困惑など、積極的に共有してほしい。日本人学生ボランティアが集まった場合は、適宜セッションを実施する。

【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【Outline and objectives】
To become proficient enough to make daily conversation or interviews on
specific topics such as about yourself,your country’s culture and society
by making and giving speech.

【授業の進め方と方法】
２〜３回に分けて、スピーチの準備、発表を行う。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ①
オリエンテーション

②

③
④

⑤
⑥

⑦
⑧

⑨
⑩

⑪
⑫

⑬
⑭

内容
授業の進め方などの確認
自己紹介
スピーチについて
自国の行事・祭りについ ・語彙／表現の学習
て（１）
・構成
・作成
自国の行事・祭りについ ・発表
て（２）
・感想
観光（１）
・語彙／表現の学習
・構成
・作成
観光（２）
・発表
・感想
結婚（１）
・語彙／表現の学習
・構成
・作成
結婚（２）
・発表
・感想
自国と日本との関係（１） ・語彙／表現の学習
・構成・作成
自国と日本との関係（２） ・発表
・感想
産業と貿易（１）・語彙／表現の学習・構成・作成
産業と貿易（２）・発表・感想
習慣のちがい（１）・語彙／表現の学習・構成・作成
習慣のちがい（２）・発表準備
習慣のちがい（３）発表
フィードバック
評価セッション

【授業時間外の学習（準備学習・復習・宿題等）】
発表原稿の作成はできる限り授業内に時間をとるが、終わらなかった場合は宿題とし、翌日までにメールで提出。
また発表の口頭練習は必ずすること。
【テキスト（教科書）】
原則として、プリントを配布するが、必要があれば適宜指定する。
【参考書】
今まで日本語学習で使用した文法の教科書【成績評価の方法と基準】
授業貢献度等の平常点８０％
課題提出２０％【学生の意見等からの気づき】
昨年度、授業内で行ったショートスピーチについて「勉強になった」「もっと話してみたい」という学生からの声があったため、本授業ではスピーチに焦点を絞った。

— 37 —

発行日：2019/5/1

COT500K1

情報科学特別講義１（アルゴリズムとデータ構造）坂本寛
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
アルゴリズムとデータ構造は情報科学の基盤をなすものである。アルゴリズ
ムとデータ構造は情報科学のあらゆる分野で日々応用されており、また新たなアルゴリズムが誕生している。
近年、進展目覚ましい機械学習の分野でもその例外ではない。今年度は深層学習の分野で開発され適用されているアルゴリズムとデータ構造を取り上げ学んでいく。
特に自然言語処理や時系列データ処理を行う際の様々なニューラルネットワー
クのアルゴリズムに焦点を当てて学んでいく。
【到達目標】
1. 自然言語処理の分野でどのような課題があり、その課題解決のためどのようなアルゴリズムとデータ構造が生み出されたかを理解する。
2. 自然言語処理の分野でのアルゴリズムを理解するだけではなく、実際にコードを実装する技量も獲得する。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
平易な教科書を採用するので、教師が講義するだけではなく、持ち回りで学生に教科書の内容に基づいてプレゼンテーションを担当してもらう。
例題・演習問題は課外でこなして、授業支援システムで提出すること。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
なし / No【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
ニューラルネットワークの復習

2

自然言語処理と単語の分散表現 (1)

3

自然言語処理と単語の分散表現 (2)

4

word2vec(1)5word2vec(2)6word2vec の高速化 (1)7

word2vec の高速化 (2)8

リカレントニューラル
ネットワーク (1)9リカレントニューラル
ネットワーク (2)10ゲート付き RNN(1)11

ゲート付き RNN(2)12

RNN による文章生成

13

Attention

内容
1. ニューラルネットワーの推論
2. ニューラルネットワーの学習
3. ニューラルネットワーの実装
1. 自然言語処理とは
2. シソーラス
3. 単語の分散表現
4. 分布仮説と共起行列
1. 相互情報量
2. 次元削減
3. SVD による次元削減
1. 推論ベースの手法とニューラルネッ
トワーク
2. CBOW モデル
3. word2vec の重みと分散表現
1. コンテキストとターゲット
2. one-hot 表現への変換
3. CBOW モデルの実装
1. Embedding レイヤ
2. 多値分類から二値分類へ
3. シグモイド関数と交差エントロピー
誤差1. Negative Sampling
2. Negative Sampling のサンプリング手法
3. Negative Sampling の実装
4. 改良版 word2vec の学習
1. 確率と言語モデル
2. 循環するニューラルネットワーク
3. Backpropagation Through Time
4. Truncated BPTT
1. RNN レイヤの実装
2. 時系列データを扱うレイヤの実装
3. RNNLM の学習と評価
1. RNN の問題点
2. 勾配消失と LSTM
1. LSTM の実装
2. LSTM を使った言語モデル
3. RNNLM のさらなる改善
1. 言語モデルを使った文章生成
2. seq2seq
3. seq2seq の実装
4. seq2seq の改良
1. Attention の仕組み
2. Attention 付き seq2seq の実装
3. Attention の評価

14

Attention に関する残りのテーマ

1. 双方向 RNN
2. Attention レイヤの使用方法
3. seq2seq の深層化と skip コネク
ション
4. Attention の応用【授業時間外の学習（準備学習・復習・宿題等）】
持ち回りで、教科書の内容のプレゼンテーションを準備する。
復習として例題・演習問題を課外でこなして、授業支援システムで提出する。
【テキスト（教科書）】斎藤康毅 (著),"ゼロから作る Deep Learning ❷ ―自然言語処理編", オライ
リー・ジャパン,ISBN:9784873118369【参考書】
斎藤康毅 (著),"ゼロから作る Deep Learning - Python で学ぶディープラー
ニングの理論と実装", オライリー・ジャパン,ISBN:9784873117584
坪井祐太 他 (著),"深層学習による自然言語処理 (機械学習プロフェッショナル
シリーズ)", 講談社,ISBN:9784061529243
瀧雅人 (著),"これならわかる深層学習入門", 講談社,ISBN:9784061538283
Ian Goodfellow 他 (著),"深層学習",KADOKAWA,ISBN:9784048930628
岡谷貴之 (著),"深層学習 (機械学習プロフェッショナルシリーズ)", 講談社,ISBN:9784061529021
ヨ ア ヴ ゴ ー ル ド バ ー グ (著),"自 然 言 語 処 理 の た め の 深 層 学 習", 共 立 出
版,ISBN:9784320124462【成績評価の方法と基準】
プレゼンテーション 50%
課題 50%【学生の意見等からの気づき】
教師側から一方的に講義を行うだけではなく、学生によるプレゼンテーショ
ンと討論を重視して双方向の授業をめざす。
【学生が準備すべき機器他】
ノート PC 持参のこと【その他の重要事項】
学部でアルゴリズムとデータ構造の基本的な知識を習得していることを前提にしている。
【Outline and objectives】
Algorithms and data structures form the basis of computer science.
Algorithms and data structures are applied daily in every field ofcomputer science, and new algorithms are born.
In recent years, progress has also been not exceptional in the field ofremarkable machine learning.
This year we will learn about algorithms and data structures developed
and applied in the field of deep learning.
Especially focuses on algorithms of various neural networks whennatural language processing and time series data processing are
performed.

— 38 —

発行日：2019/5/1

HUI500K1

Special Lecture for Computer and Information Sciences ２（Advanced Image processing）
内田薫

サブタイトル：情報科学特別講義２（画像認識特論）
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】This course is designed to give graduate students the fundamental
knowledge and practical training of image processing and recognition,and how to apply them to real world problems.
【到達目標】The goal of this course is to have students familiarized with knowledge,
understanding, and practices of the process and methodology for image
processing and recognition.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
The course will mainly consist of lectures but time will be given forstudents to work on research and programming projects.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Introduction

2
3
4

Image processing 1
Image processing 2
Image processing 3

5
6
7
8
9

Image processing 4
Image processing 5
Image processing 6
Statistical patternrecognition
Image Matching 1

10Image Matching 2

11
12
13

3D image analysis 1
3D image analysis 2
Final project

14

Conclusion

内容
Introduction to image processing
and recognition
Image acquisition and digitization
Point and neiborhood spatial filters
Frequency domain image
processing
Noise removal and restoration
Segmentation and thresholding
Morphology
Bayes decision and economic gain

- Semantic Graph Matching- Uninformed search for graphmatching- Heuristic search for graphmatching- Robust matching methods
3D block world recognition
3D shape from X
Image recognition project
presentation
Summary and discussion【授業時間外の学習（準備学習・復習・宿題等）】
Reading, research and programming assignments.
【テキスト（教科書）】
Course materials will be provided in class.
【参考書】
Rafael C. Gonzalez and Richard E. Woods, "Digital Image Processing(3rd Edition),” Prentice Hall, 2007.
Jan Erik Solem, "Programming Computer Vision with Python," Oreilly& Associates Inc, 2012.
C. M. Bishop, "Pattern Recognition and Machine Learning," Information
Science and Statistics, Springer (October 1, 2007).
【成績評価の方法と基準】
Students will be evaluated on the basis of contribution in class (20%),and assignment outputs (80%).
【学生の意見等からの気づき】(None in particular.
Feedback from students will be encouraged throughout the course.)【学生が準備すべき機器他】
Students are expected to bring and use their laptop PCs for in-classprogramming exercises and presentations.
【Outline and objectives】
This course is designed to give graduate students the fundamental
knowledge and practical training of image processing and recognition,and how to apply them to real world problems.

— 39 —

発行日：2019/5/1

COT500K1

Special Lecture for Computer and Information Sciences ３（Operating System）
Nguyen Ngoc Binh
サブタイトル：情報科学特別講義３（オペレーティングシステム）
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】This course reviews and explores introductory basic concepts ofoperating systems (OS). The course focuses on the structures for
operating systems, introduces and considers main issues of OSsuch as Process and Threads, Memory Management, File Systems,
Input/Output, Deadlocks. It also addresses several advanced issues:
Virtualization and the Cloud, Multiple Processor Systems, Security,
and OS Design. Some case studies on hot OSes such as UNIX, Linux,
Android and Windows are provided to illustrate introduced concepts andfunctions of OS.
【到達目標】
Basic knowledge and skills in operating systems will be acquired. The
student will understand concepts, basics, fundamentals, structures anddesign issues of OS. The student should do some works on operating
systems using the open source operating systems tools.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
Following the lectures/presentations, the student will learn theconcepts, fundamentals, and skills of operating systems. This course
provides opportunities to students to learn and implement somefunctions and techniques of OS by sub-themes/mini-projects. Some
topics on OS can be assigned to students to study and prepare
presentations/discussions.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Introduction

2

Process and Threads

3

Memory Management

4

File Systems

5

Input/Output

6

Deadlocks

7

Virtualization and the
Clouds8

Multiple Processor

9

Security10

OS Design

11
12
13
14

Case Study 1
Case Study 2
Mini-projects
Hot topics
Summary

内容
Definition and History; Computer
hardware review; OS Concepts
Processes; Threads; Interprocess
communication; Scheduling;
Classical IPC problems
A memory abstraction; Virtual
memory; Page replacement
algorithms; Design and
Implementation issues;
Segmentation
Files; Directories; File system
implementation; File-systemmanagement and optimization
Principles of I/O hardware andsoftware; Disks; Clocks; Userinterface: Power management
Resources; Introduction to
deadlocks
Requirements for virtualization;
Types of supervisors; Techniques;
Memory virtualization; Licensing;
CloudsSystems Multiprocessors;
Multicomputers; Distributed
systems
The Security environment; OSSecurity; Controlling access toresources; Formal methods of
secure systems; Basics of
cryptography; Authentication;
Exploiting software; Insider
attacks; Malware; Defenses
Nature of the design problem;
Interface design; Implementation;
Performance; Project management;
Trends in OS design
Unix, Linux, Android
MS Windows
Presentations and discussions
Presentations and discussions
Review of lectures【授業時間外の学習（準備学習・復習・宿題等）】
Prior to each lecture/presentation, the students should review theprevious lectures/presentations, do homework and learn the newtechnical terms, their meanings and definitions. The students will study
and prepare presentations on some assigned topics.
【テキスト（教科書）】- "Modern Operating Systems," 4th Ed., Andrew S. Tanenbaum andHerbert Bos, Pearson, 2015. ISBN: 978-0133591620- Lecture/presentation printouts / handouts and related materials will
be provided to the students- Online materials.
【参考書】
1. "Operating Systems: Internals and Design Principles," 8th Ed.,
William Stallings, Pearson, 2014. ISBN: 978-0133805918
2. "Operating Systems: Design and Implementation," 3rd Ed., Andrew
S. Tanenbaum and Albert S. Woodhull; Prentice Hall; 2006. ISBN:0131429388
3. "モダンオペレーティングシステム," アンドリュー・S. タネンバウム著;
水野忠則 [ほか] 訳, 第 2 版, ピアソン・エデュケーション, 2004. ISBN:4894715376
4. "オペレーティングシステム : 設計と実装." アンドリュー・S・タネンバウ
ム, アルバート・S・ウッドハル著; 吉沢康文 [ほか] 訳, 第 3 版, ピアソン・エ
デュケーション, 2007. ISBN: 9784894717695【成績評価の方法と基準】
Practical exercises and/or assignments to the students, and sub-themes
as mini-projects will be also given to the students. The total evaluation
will be based on
1. Class participation and reports: 40%
2. Presentations and final report: 60%【学生の意見等からの気づき】
None.
【学生が準備すべき機器他】
Some operating systems tools (free software) can be downloaded
and installed on private PC for operating systems design andimplementation.

— 40 —

発行日：2019/5/1

COT500K1

Special Lecture for Computer and Information Sciences ４ （Intelligent Media Processing）
内田薫

サブタイトル：情報科学特別講義４（知能メディア処理）
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】This course is designed to give graduate students the fundamental
knowledge and practical training of machine learning techniques forintelligent media processing, and how to apply them to real world
problems.
【到達目標】The goal of this course is to have students familiarized with knowledge,
understanding, and practices of the process and methodology formachine learning.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
The course, conducted in English, will mainly consist of lectures but
time will be given for students to work on research and programming
exercises.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Introduction

2
3
4

Data science 1
Data science 2Classification 1

5
6Classification 2
Classification 3

7
8
9
10

12
13

Regression 1
Regression 2
Midterm project
Dimensionality
reduction 1
Dimensionality
reduction 2
Clustering
Deep learning

14

Final Project

11

内容
Introduction to data science andmachine learning
Data acquisition
Data visualization
Basic techniques and performancemeasures
Generalization and overfitting
Advanced techniques andapplications
Linear regression
Other techniques and applications
Project presentation
Principle Component Analysis

Other techniques and applications
Basic techniques and applications
Introduction to neural networks
and deep learning
Project presentation
Summary and discussion【授業時間外の学習（準備学習・復習・宿題等）】
Reading, research and programming assignments.
【テキスト（教科書）】
Course materials will be provided in class.
【参考書】
Andreas C. Müller, Sarah Guido, "Introduction to Machine Learningwith Python: A Guide for Data Scientists," O’Reilly Media, 2016.
Sebastian Raschka, “Python Machine Learning: Unlock Deeper Insights
into Machine Learning With This Vital Guide to Cutting-edge Predictive
Analytics,” Packt Publishing, 2015.
Willi Richert and Luis Pedro Coelho, "Building Machine Learning
Systems With Python," Packt Publishing, 2013.
【成績評価の方法と基準】
Students will be evaluated on the basis of contribution in class (20%),and assignment outputs (80%).
【学生の意見等からの気づき】(None in particular.
Feedback from students will be encouraged throughout the course.)【学生が準備すべき機器他】
Students are expected to bring and use their laptop PCs for in-classprogramming exercises and presentations.
【Outline and objectives】
This course is designed to give graduate students the fundamental
knowledge and practical training of machine learning techniques forintelligent media processing, and how to apply them to real world
problems.

— 41 —

発行日：2019/5/1

HUI500K1

情報科学特別講義５（音声・音楽処理特論）
北原義典
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
音声・音楽等、聴覚メディアのもつ特性、および、コンピュータによるこれらの情報処理の手法について学習する。併せて音声コミュニケーションの重要性及びスキルも習得する。

【参考書】
北原「なぜ、口べたなあの人が、相手の心を動かすのか？」講談社 プラスア
ルファ新書
北原「イラストで学ぶヒューマンインタフェース」講談社【到達目標】（１）音声に関する基本的性質を知る（２）音声信号処理の基礎を身につける（３）音声認識、音声合成の原理と処理手法を習得する（４）音楽認識、自動作曲の原理と処理手法を習得する（５）説得性の高いコミュニケーションの構造とスキルを習得する。

【成績評価の方法と基準】（１）音声に関する基本的性質（２）音声信号処理の基礎（３）音声認識、音声合成の原理と処理手法（４）音楽認識、自動作曲の原理と処理手法（５）説得性の高いコミュニケーションスキル
の習得度に関する期末試験点数（80%）と平常の講義取り組み姿勢（20%）をもって評価点とする。

【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
音声を中心とした聴覚メディアについて、生理学的見地、言語学的見地、信号処理論的見地、心理学的見地から、実験も交えながら多角的に学習する。その後、音声認識、音声合成、音楽自動作曲等の具体的処理方法論について学ぶ。
さらに、説得性の高いコミュニケーションスキルを身につける演習も行う。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
１
メディアの分類２

聴覚メディアの特性

３発声機構と聴覚機構

４

音声を見る

５

音声分析Ⅰ

６

音声分析Ⅱ

７

音声分析Ⅲ

８

音声言語Ⅰ

９

音声言語Ⅱ

１０

音声認識処理１１

音声合成処理Ⅰ

１２

音声合成処理Ⅱ

１３

ヒューマンコミュニケー
ションの構造１４

音楽情報処理・音のデザ
イン

内容
音声、画像、文字をはじめとするメ
ディアの分類とメディア処理の概要について学ぶ。
人間の感覚の分類やそれぞれの特性、および、聴覚メディアの特性について学ぶ。
発声機構および聴覚機構の生理学的基
礎、さらに、調音方式と位置、音韻の種類について学ぶ。
音声の観察の方法について知る。さらに、音声のデジタル化、サンプリング定理などについて学ぶ。
波形分析により、音声の韻律的性質や韻律パラメータの抽出方法を習得する。
フーリエ変換を用いた音声のスペクト
ル分析手法を基礎から学ぶ。また、スペクトルの見方を知る。
線形予測分析やケプストラム分析により、スペクトルパラメータを求める手法を習得する。
音声を言語的側面からみる。言語の分類、音声言語の言語学的単位、音声学的単位について知る。
共通語の特徴としての、アクセント、
イントネーション、母音の無声化、鼻濁音化について学ぶ。
音声認識技術の分類、手順について学
び、音響特徴量の抽出、照合方法を習得する。
音声合成技術の分類、手順について学
び、言語処理の手法を習得する。
音声合成の音響処理、音質評価の手法を習得する。また、動向や今後の方向を学ぶ。
人間同士のコミュニケーションにおいて働く力学と効果的なコミュニケー
ションのスキルについて学ぶ。
音楽の基本要素、音楽情報処理技術の分類、音楽認識・自動作曲の方法について学ぶ。サウンドスケープの概念とそのデザインについて、また、産業場
面における音環境や効果を知る。

【学生の意見等からの気づき】
学生授業アンケートでは、知覚実験や音声合成のデモンストレーション、考えさせる問題が好評で、引き続き、さまざまな実験を行ないながら講義を進め、受講者にとって「思考する」かつ「楽しめる」授業にしていきたい。
【学生が準備すべき機器他】
授業支援システムにアップしたテキストを持参のこと。
【その他の重要事項】
2014 年まで㈱日立製作所の中央研究所にて音声の研究をしていました。その経験を活かし、理論だけでなく、ビジネスに向けた音声製品開発の話やデモ
ンストレーションなどを織り込んでいきます。
【Outline and objectives】
We learn characteristics of auditory media such as speech and music,
and methods of speech information processing by computer. In addition,
we also learn the importance of speech communication and its skills.

【授業時間外の学習（準備学習・復習・宿題等）】
日頃からテキストや参考図書を読んだり、音、人の声や言葉、しゃべり方に興味をもつよう心掛けてください。
【テキスト（教科書）】
授業支援システムにアップしたテキスト— 42 —

発行日：2019/5/1

COT500K1

情報科学特別講義６（テキストマイニング特論）
横野光
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】
大量データからの情報分析技術は情報が爆発的に増大している近年において需要が大きい。特にテキストは人間の複雑な行動を反映した重要なデータとして注目されているが、構造化されたデータとは異なりテキストでは同じ内容が様々な言語表現として表れるため、必要な情報を抽出するということが必要になる。本講義ではテキストの解析に必要な自然言語処理を中心としたテキストマイニングで用いられる技術と、実際の応用的な場面においてそれらをどのように用いるかについての理解を目指す。

【Outline and objectives】
It is much in demand to get findings from huge data. Text data reflects
human’s behavior or opinion and it has attracted attention as importantsources. However, there are many expressions for one meaning and it
is important to extract necessary information. Objectives of this classare to understand text analysis techniques using for text mining and tolearn how to use natural language tools.

【到達目標】
テキストマイニングは応用を指向した分野であり、必ずしも教科書的な手法があるわけではない。そのため、課題に応じて適切な解決法をみつけるための基礎と考え方を身につけ、産業・学術問わず即座に応用できる実践的な能力を養うことが目標である。実データを用いたレポート課題等を通して言語処理の基礎的な技術を習得するとともに、そのようなテキストデータを対象にした処理において留意すべき点を理解することを目標とする。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
産業界での具体的な課題事例や研究テーマから最新のものをいくつか紹介し、それぞれの課題の解決法を考えることを通じて、テキストマイニングに必要な自然言語処理や機械学習などの基礎的な技術・理論とその応用について解説する。また、そうした既存技術を自ら選択して利用できるようにするため、ツールやライブラリを演習を交えて紹介する。なお、内容や進度については受講者の興味や理解度に応じて柔軟に対応する。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
なし / No【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
概要と導入
2
自然言語処理3
自然言語処理4
自然言語処理5
自然言語処理6
自然言語処理7
自然言語処理8
テキストマイニング
9
テキストマイニング10
テキストマイニング11
テキストマイニング
12
テキストマイニング13
テキストマイニング14
テキストマイニング

内容
授業全体の紹介
言語処理における機械学習の基礎
形態素解析
構文解析 (句構造解析)
構文解析 (依存構造解析)
意味解析
談話解析
テキストマイニング概説
クラスタリング
リンク解析・可視化技術
テキスト解析の前処理
アノテーション
応用事例の紹介 (1)
応用事例の紹介 (2)【授業時間外の学習（準備学習・復習・宿題等）】
授業中に紹介したトピックから、興味のあるものを自分から掘り下げて学習する。
紹介したツールなどを実際に使用し、どのような出力が得られるかを確認する。
【テキスト（教科書）】使用しない（講義資料は Web サイト等から受講者に公開する）。
【参考書】
関連文献やウェブサイトは授業中に紹介する。
【成績評価の方法と基準】
平常点 65%，レポート課題 35%として評価する。
【学生の意見等からの気づき】
特になし【学生が準備すべき機器他】
インターネットに接続できるノートパソコンを持参すること。講義資料配布・課題提出には授業支援システムを利用する。また、講義内で紹介するツールの
多くは linux 環境での実行が想定されているため、開発ツールが整った linux
環境を用意しておくことが望ましい。
【その他の重要事項】
実用的でありながら基礎と考え方を身につけられるような楽しい授業にしていきたいと考えている。講義時間中に多くのことを学べるよう、受講者には授業への積極的な参加を求める。

— 43 —

発行日：2019/5/1

CAR500K1

インターンシップ
日高宗一郎
単位数：2 単位 ｜ 開講時期：秋学期集中/Intensive(Fall)【授業の概要と目的（何を学ぶか）】
社会で大学の学びが役立つ範囲は、想像するより広いものである。企業などの現場で専門知識がどのような形で役立つかを知ることで、進路の選択や、今後の学修に活かす。
【到達目標】
社会人として必要な実践的スキルや技術を学び、大学でこれまで学んだ専門知識をベースにそれを生かすために今後の専門知識の修得や研究に対する目的意識を確立する。更に、将来の職業について考え就職に生かす機会を得る。
また社会人として必要なマナーや業務の進め方について体得することを目標とする。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
公募情報などから、夏休み期間中に実施されるインターンシップ先を各自選定し、応募する。
インターンシップ実施後、報告会にて発表する。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
あり / Yes【授業計画】
回
テーマ
1
ガイダンス

2

業界研究

3
4
5

エントリシート
インターンシップ前の準備
インターンシップ (1)6インターンシップ (2)7インターンシップ (3)8インターンシップ (4)9インターンシップ (5)10インターンシップ (6)11インターンシップ (7)12インターンシップ (8)13インターンシップ (9)

14

まとめ

内容
講義の進め方などの説明/企業研究の方法
IT 以外の業界での情報技術についての講演
エントリシートの書き方
社会人としての姿勢などについての心構え
インターンシップ先によって異なる(1)
インターンシップ先によって異なる(2)
インターンシップ先によって異なる(3)
インターンシップ先によって異なる(4)
インターンシップ先によって異なる(5)
インターンシップ先によって異なる(6)
インターンシップ先によって異なる(7)
インターンシップ先によって異なる(8)
インターンシップ先によって異なる(9)
報告会【授業時間外の学習（準備学習・復習・宿題等）】
インターンシップ先の選定活動、企業研究、レポート作成等【テキスト（教科書）】
適宜配布する。
【参考書】
適宜指示する。
【成績評価の方法と基準】
インターンシップ先業務の完全遂行、事前・事後講義参加、報告会での発表、レポート提出が単位取得の条件となる。
レポート内容、報告会、インターンシップ先企業の評価を総合して評価する。
【学生の意見等からの気づき】
特になし【学生が準備すべき機器他】
プロジェクタ、貸与 PC【その他の重要事項】
授業は不定期に火曜 5 限に行う。授業支援システムで告知する。
【Outline and objectives】
Applicability of university studies to your career life is much wider than
you might expect.
This course facilitates future career selections or studies through yourexperience in finding how your expertise is utilied through internshipwith enterprises or other professional organizations.

— 44 —

発行日：2019/5/1

COT500K1

情報科学オープンセミナー 2
善甫, 佐々木, 馬, 若原, 廣津, 佐藤, 西島, 小池, 黄, 李
単位数：2 単位 ｜ 開講時期：春学期授業/Spring【授業の概要と目的（何を学ぶか）】
大学院の学生に、情報科学研究科で遂行されている研究内容を広く理解してもらい、各自の研究に役立てることを目的としたセミナーである。研究科内の教員が隔年ごとに、毎年半数ずつ、自身あるいは研究室の最新の研究内容
について説明する。また、国際会議で発表する院生もその発表の前にこのセミナーで論文の紹介を行う。
【到達目標】
各先生が行なっている研究は情報科学・技術の広範な分野に及ぶので、学生はそれぞれの研究を全て理解することは容易ではないが、研究の全体像を捉えることで、各先生の研究の手法を理解し、自身の研究に応用できる能力を身に付けることを到達目標としている。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
教授会のない金曜日の４，５限に、２回分をまとめて行う。最初の９０分で２つの講演を行い、最後の９０分で、講演で出された課題について解答する。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
第1回
善甫教授研究紹介
第2回

佐々木教授研究紹介

第3回

馬教授研究紹介

第4回

日高教授研究紹介

第5回

若原教授研究紹介

第6回
第7回

廣津教授研究紹介
佐藤教授研究紹介

第8回
第9回
第 10 回

西島教授研究紹介
小池教授研究紹介
黄教授研究紹介

第 11 回李教授研究紹介第 12 回
第 13 回
第 14 回

国際会議発表論文紹介
国際会議発表論文紹介
国際会議発表論文紹介

内容
Large-scale Parallel Computing
and Tuning Techniques
Design and Implementation of
Domain Specific Languages
Cybermatics: Cyber Science for
Cyber-enabled Worlds
Bidirectionalizing Model
Transformation Languages
through Partial Translation
物体検出のための変形耐性画像マッチ
ング
SDN による次世代情報基盤
Particle Swarm Optimization
Algorithm と GPU を用いた並列高速化に関して不均一誤り訂正符号
コンピュテーショナルフォトグラフィKID Model: A Cognitive Approach
to Machine Intelligence
Cost/Performance EfficientInterconnection Networks forSupercomputers
題名は未定
題名は未定
題名は未定

【授業時間外の学習（準備学習・復習・宿題等）】
毎回の課題をレポートとしてまとめて、期限内に提出する。
【テキスト（教科書）】
特になし
【参考書】
必要に応じて、担当教員が指示を行う【成績評価の方法と基準】
レポート（70%）と（質疑応答など）授業への貢献度（30%）による。
【学生の意見等からの気づき】
国際会議に参加する学生の発表は、他の学生への良い刺激となっている【その他の重要事項】
各自の研究を広げるきっかけになると期待している。積極的に貢献し、レポートを確実に提出すること。
【Outline and objectives】
Professors of CIS provide omnibus lectures in this seminar.
Students learn the current research activities of the professors.
Students who has an opportunity to present their papers at theinternational conference, also talk about their research topics.

— 45 —

発行日：2019/5/1

COT500K1

CIS Global Seminar
尾﨑信之, 小西弘一, 杉山昭彦, 田中淳裕, 辻聡美, 中山浩一, 永吉洋登, 福住伸一, 渡邊高志
サブタイトル：CIS グローバルセミナー
単位数：2 単位 ｜ 開講時期：秋学期授業/Fall【授業の概要と目的（何を学ぶか）】
The course is designed to have graduate students familiarize withthe real world problems and challenges by computer scientists andengineers in the business field.
【到達目標】The goal of this course is to have students acquire knowledge andunderstanding necessary for solving computer and information scienceproblems in the real world.

【学生が準備すべき機器他】
Students are advised to bring and use their laptop PCs for in-classprogramming exercises and/or presentations in some sessions.
【Outline and objectives】
The course is designed to have graduate students familiarize withthe real world problems and challenges by computer scientists andengineers in the business field.

【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP1」と「DP2」に関連【授業の進め方と方法】
The course, conducted in English, is basically a series of omnibus
lectures provided by visiting instructors who work as computerscientists or corporate engineers with wide and deep experiences in thebusiness field.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Introduction

2

Lecture 1

3

Lecture 2

4

Lecture 3

5

Lecture 4

6

Lecture 5

7

Lecture 6

8

Lecture 7

9

Lecture 8

10Lecture 9

11

Lecture 10

12

Lecture 11

13

Lecture 12

14

Lecture 13

内容
Introduction to the course（Kaoru
Uchida）
A Big Hardware Security Problem
and its Countermeasures History（Takashi Watanabe）
Advanced Networking for Future
Information Society（Atsuhiro
Tanaka）
Image Recognition and Pattern
Recognition in Automated Teller
Machine（Hiroto Nagayoshi）
User Experience and Humancentered design（Shinichi
Fukuzumi）
Quality of system and software(usability)（Shinichi Fukuzumi）
Introduction to Venture Businesses（Koichi Nakayama）
Speech and Audio Signal
Processing（Akihiko Sugiyama）
Globalization of Business andEngineering Career Development（Akihiko Sugiyama）
Innovation and Intellectual
Properties（Akihiko Sugiyama）
Silicon Valley ecosystem anddiscussions on e-commerce start-up（Koichi Nakayama）
FIware: European initiative
towards IoT platform（Koichi
Konishi）
ITS (Intelligent Transport System)& Sensing Technology（Nobuyuki
Ozaki）
Discovery from Human Big Data
（Satomi Tsuji）【授業時間外の学習（準備学習・復習・宿題等）】
Completion of assignments and weekly review of the lectures【テキスト（教科書）】No required textbook【参考書】
Course materials may be provided by each instructor【成績評価の方法と基準】
Students will be evaluated on the basis of contribution in class (30%),and output of assignments (70%).
【学生の意見等からの気づき】
None in particular.
Feedback from students will be encouraged throughout the course.

— 46 —

発行日：2019/5/1

COT700K1

コンピュータ基礎特別研究２
劉少英
単位数：単位 ｜ 開講時期：【授業の概要と目的（何を学ぶか）】
Students are expected to learn the basic concepts and challenging
problems with the potential technology known as Human-Machine Pair
Programming for efficient agile development. In particular, the study
should focus on two specific techniques involved, which are Software
Construction Monitoring and Software Construction Predicting.
【到達目標】
Students must understand the principle and goal of the HumanMachine Pair Programming (HMPP), and must possess the ability tobuild simple tools to support HMPP.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP3」と「DP4」に関連【授業の進め方と方法】
This course will first introduce the essential idea of HMPP and thenexplain necessary techniques for realizing HMPP. Students will be
required to raise questions and to join discussions on possible solutions
for the potential problems with HMPP. Students might be required toapply the techniques learned to simple program examples in order tohelp understand the principles of HMPP.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Introduction to HMPP

2

Challenging issues

3

Architecture of HMPP

4

Software construction
monitoring (SCM)

5

Framework of SCM

6Knowledge-base for
SCM

7

Properties

8

Methods for verifying
properties

9

Automatic testing oftheorems

10

Test data generation
methods

11
12

Test data generation
tools
Challenging issues

13

Fault report format

14

The categories ofprogram faults
Introduction to
Software Construction
Predicting (SCP)15

内容The state of the art in HMPP will
be studied by discussing on
existing publications.
Challenging issues on HMPP will
be studied and discussed.
The essential architecture of
HMPP tools will be studied anddiscussed.
The concept of software
construction monitoring is studied
and discussed.
A framework of software
construction monitoring is studied
and discussed.
The structure of each piece ofknowledge for SCM and the whole
structure of the knowledge-base for
SCM are studied and discussed.
Properties that must be checked forthe current version of the program
are studied and discussed.
Methods for static and dynamic
checking of the necessary
properties of the current version of
the program are studied anddiscussed.
The techniques for automaticallytesting the validity of a theorem isstudied and discussed.
Various methods for generating
test data from predicates forchecking the validity of a theorem
are studied and discussed.
Commonly used testing tools arestudied and tried.
Challenging issues in relation totesting theorems are discussed.
Potential fault report formats arestudied and discussed. How toachieve the high readability andunderstandability of the reported
faults are discussed.
All of the possible program faults
are studied and discussed.
The basic concepts and principle ofSoftware Construction Predicting
are studied and discussed.

16

Framework of SCP

17

Knowledge-base18

Categories of code
predicing

19

Techniques for code
predicting
Code predicting for
exception handling

20

21

Code predicting forrobustness

22

Code predicting forencapsulation

23

Code predicting for
efficiency

24

Integration of SCM
and SCP25

Evaluation of HMPP

26

Tool support for HMPP

27

Challenging issues inbuilding tools for
HMPP
Summary and report

28

A framework of SCP is studied anddiscussed.
The representations of one piece ofknowledge and the wholeknowledge-base for SCP arestudied and discussed.
The core of SCP is code predicting.
Various kinds of code that can bepredicted are studied anddiscussed.
Specific techniques for predictingcode are studied and discussed.
The principle and specifictechniques for code predicting for
exception handling are studied anddiscussed.
The principle and techniques forpredicting code that enhances therobustness of the program arestudied and discussed.
The principle and techniques forpredicting code that helps realizing
encapsulation in object-oriented
programming.
The principle and techniques forpredicting code that helps enhancethe efficiency of the program.
The principle and techniques forproperly integrating SCM and SCP
for HMPP are studied anddiscussed.
Experiments are set up forevaluation of HMPP. The students
are expected to study the principle,
contents, and the way to performthe experiment.
The potential features andfunctionality of a software tool tosupport HMPP are studied anddiscussed.
The major challenging issues inbuilding a software tool for HMPP
are studied and discussed.
A summary of all of the relevant
concepts and techniques for HMPP
is made in a report.

【授業時間外の学習（準備学習・復習・宿題等）】
Students are required to search for related work in relation to
Human-Machine Pair Programming, raise questions, and actively join
the discussions on the relevant issues.
【テキスト（教科書）】
Published papers, and “Formal Engineering for Industrial Software
Development”, Shaoying Liu, Springer, 2004
【参考書】
Published relevant papers【成績評価の方法と基準】
Thesis and presentations【学生の意見等からの気づき】
None【学生が準備すべき機器他】
PC【その他の重要事項】
None— 47 —

発行日：2019/5/1

COT700K1

コンピュータ基礎特別研究３ A
劉少英
単位数：単位 ｜ 開講時期：【授業の概要と目的（何を学ぶか）】
Students are expected to improve their knowledge on their researcharea and understand the state of the art on their research topic.
They are also expected to demonstrate their ability for writing reports,
papers, and thesis, either in Japanese or in English.
【到達目標】
Students must be able to have the ability to raise questions andproblems, to search for suitable references, and to come up withsolutions to the problems.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP3」と「DP4」に関連【授業の進め方と方法】
Topics ：（１）Verification and Validation of Formal Specifications with
Rigorous Inspections(2) Configuration Management and Software Tool Support(3) Design and Implementation of Software Tools for Automatic Test
Case Generation(4) Automatic Program Analysis for Implementation-Related DefectDetection
This class is taught basically through seminars. Necessary knowledge
and related work are explained and students are required to makepresentations on the related work they have studied, progress they
have made, problems they have encountered, and technical proposals
they have considered. They are also required to improve their English
proficiency in speaking, listening, reading, and writing.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No

12 回目

Student presentation 3
and discussion 3

13 回目

Student presentation 4
and discussion 4

14 回目

Student presentation 5
and discussion 5【授業時間外の学習（準備学習・復習・宿題等）】
Students are required to search for related work in their research area,
study the latest techniques in relation to their own research, and review
what they have learned from the class.
【テキスト（教科書）】
Published papers, and “Formal Engineering for Industrial Software
Development”, Shaoying Liu, Springer, 2004
【参考書】
Published relevant papers【成績評価の方法と基準】
Thesis and presentations【学生の意見等からの気づき】
None【学生が準備すべき機器他】
PC【その他の重要事項】
None【授業計画】回テーマ
1 回目
Introduction andexplanation on
research topics

2 回目

3 回目

4 回目

5 回目
6 回目

7 回目
8 回目
9 回目

10 回目

11 回目

Students are required to present
the progress on their own research
project, and hold a discussion on
the problems they have met.
Students are required to present
the progress on their own research
project, and hold a discussion on
the problems they have met.
Students are required to present
the progress on their own research
project, and hold a discussion on
the problems they have met.

内容
Introdution to the latest research
topics in the area of Formal
Engineering Methods for softwaredevelopment.
Introduction to
Verification and Validation、Software Engineering
Configuration Management andTechniques
Software Tool Support, Design and
Implementation of Software Tools
for Automatic Test Case
Generation,
Automatic Program Analysis for
Implementation-Related DefectDetection
Formal specification for What is software quality
software quality
assurance? How formal
assuranceengineering methods can be used toensure software quality?
Software verification
The concepts of softwareand validation
verification and validation. What istheir difference? How can they be
performed?
Formal proof
How to use Hoare logic to prove thecorrectness of programs.
Review and inspection What is software review, Parnas’
Active Design Review,
Specification-based inspection.
Model checking
The principle of model checking forverification.
Testing
Black testing, white testing, andmodel-based testing.
Automatic testing
The goal of automatic testing,principle of automatic testing,challenges, and possibilities.
Student presentation 1 Students are required to present
and discussion 1
the progress on their own research
project.
Student presentation 2 Students are required to present
and discussion 2
the progress on their own research
project, and hold a discussion on
the problems they have met.

— 48 —

発行日：2019/5/1

COT700K1

コンピュータ基礎特別演習２
劉少英
単位数：単位 ｜ 開講時期：【授業の概要と目的（何を学ぶか）】
Students will learn how to plan, implement, and analyze experiments
on software testing methods. They need to study how to choose testing
methods for comparison, how to generate test cases, how to generatemutants from original programs under testing, how to run the tests,
and how to analyze the test results for conclusions.
【到達目標】
Students should build up an ability to plan, implement, and analyze
controlled experiments on software engineering methods.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP3」と「DP4」に関連【授業の進め方と方法】
This seminar focuses on more advanced theories and techniques forverifying software systems, including inspection, and testing. Intensive
reading and discussions will be required to improve the students’
understanding of the necessary science for software engineering.
Specific research projects for doing an experiment on testing methods
comparison are assigned to students. Students are instructed how topresent their work and how to progress their research projects.

16 回目

Science and software
engineering

17 回目

Empirical strategies

18 回目

20 回目

Software engineeringexperiements
Empirical strategies
comparison
Measurement

21 回目

Experiment process

22 回目

Definition

23 回目

Planning

24 回目

Variables selection

25 回目

Selection of subjects

26 回目

Experiment design

27 回目

Instrumentation

28 回目

Validity evalution

19 回目【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回テーマ
1 回目
Software testing
methods

2 回目

Controlled experiment

3 回目

Planning experiment

4 回目

Test case generation 1

5 回目

Test case generation 2

6 回目

Mutant operators

7 回目

Methods for creating
mutants

8 回目

Test result analysis
methods

9 回目

Mutation testing tools

10 回目

Threats to the validityof experiments

11 回目

Experiment on
mutation testing 1

12 回目

Experiment on
mutation testing 2

13 回目

Analysis of experiment

14 回目

Experiment report

15 回目Intelligent tool for
testing

内容
Introduction of specification-based
testing, domain-partition testing,and random testing is given.
The general principle of conducting
a controlled experiment forscientific purpose is discussed.
All of the related issues onplanning a controlled experimentare discussed and carried out.
The related methods for generating
test cases for the experiment are
discussed and carried out.
The related testing methods areapplied to generate test cases forthe experiment.
Various kinds of mutant operators
for producing mutant programs are
introduced and discussed.
Various issues in relation to thecreation of quality mutants fortesting are discussed.
Necessary techniques for analyzing
test results are introduced anddiscussed.
Existing mutation testing tools are
introduced and discussed.
Common threats to the validity ofsoftware engineering experiments
in general and experiments on
testing in particular are introduced
and discussed.
Using test cases generated to carryout a specific mutation testing forcomparison of two testing methods.
Continuation of the same
experiment on mutation testing
until all of the tasks are completed.
The results of the experiment are
analyzed to derive a conclusion andexperience.
Writing a report on the entire
experiment process and the result.
All of the related issues are
discussed in detail.
Principle for automatic testing,rules for specification-based
testing, and intelligent guidance
for specification-based testing.

What is difference between
computer science and software
engineering
Overview of empirical strategies,
surveys,case studies
Characteristics, experiment
process.
Introduction of various empiricalexperiment strategies.
Basic concepts, scale types,
objective and subjective measures,
direct or indirect measures
Variables, treatments, objects,
subjects, and process.
Defining experiment, example,
summary.
Context selection, hypothesis
formulation, hypothesis statement
Choce of independent variables,
choice of dependent variables
Criteria for selecting subjects,
techniques for selecting subjects.
Choice of experiment design,
general design principles, andstandard design types
The concept of instrumentation,
principle for instrumentation.
Criteria for validity evaluation.

【授業時間外の学習（準備学習・復習・宿題等）】
Preview and review the contents taught in classes.
【テキスト（教科書）】“Formal Engineering for Industrial Software Development”, Shaoying
Liu, Springer-Verlag, 2004, ISBN 3-540-20602-7.
“Experimentation in Software Engineering”, C. Wohlin, P. Runeson, M.
Host, M. C. Ohlsson, B. Regnell, and A. Wesslen,
Kluwer Academic Publishers, 2000.
【参考書】
Published papers.
【成績評価の方法と基準】
Tool implementation and report.
【学生の意見等からの気づき】
None【学生が準備すべき機器他】
PC【その他の重要事項】
None— 49 —

発行日：2019/5/1

COT700K1

コンピュータ基礎特別演習３ A
劉少英
単位数：単位 ｜ 開講時期：【授業の概要と目的（何を学ぶか）】
Students will learn how to develop a software tool to support thetesting-based formal verification using symbolic execution, including
requirements analysis, specification, design, coding, and testing.

14 回目【到達目標】
Students should build up an ability to independently develop
software tools for software engineering methods using the Agile-SOFL
technology.

【授業時間外の学習（準備学習・復習・宿題等）】
Preview and review the contents taught in classes.

【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP3」と「DP4」に関連【授業の進め方と方法】
This course focuses on practice and application of the latest technology
Agile-SOFL for developing quality software systems. The target system
to be developed is a software tool to support the testing-based formal
verification using symbolic execution.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】回テーマ
1 回目
Introduction ofAgile-SOFL

2 回目

3 回目

4 回目

5 回目

6 回目

7 回目

8 回目

9 回目

10 回目

11 回目

12 回目

13 回目

Intelligent tool for
functional
scenario-based
inspection

Knowledge on functional scenarios,
principle for scenario-based
inspection, and intelligent guidance
for scenario-based inspection.

【テキスト（教科書）】“Formal Engineering for Industrial Software Development”, Shaoying
Liu, Springer-Verlag, 2004, ISBN 3-540-20602-7.
“Experimentation in Software Engineering”, C. Wohlin, P. Runeson, M.
Host, M. C. Ohlsson, B. Regnell, and A. Wesslen,
Kluwer Academic Publishers, 2000.
【参考書】
Published papers.
【成績評価の方法と基準】
Tool implementation and report.
【学生の意見等からの気づき】
None【学生が準備すべき機器他】
PC【その他の重要事項】
None

内容A brief introduction to theAgile-SOFL technology is given
and all of specific techniques
included are discussed.
The principle ofPrinciples for building software
software tools
tools to support testing-basedformal verification are discussed.
Challenging issues in
All of the challenging issues inbuilding tools
building a tool to support
testing-based formal verification
are studied and discussed.
Intelligent supporting
Principles for building intelligent
tool
tools to support testing anddebugging are discussed.
Intelligent tool for
Domaing knolwedge and its
requirements analysis representation, application of
domain knowledge forcompleteness of requirements.
Method-based
The concpet of method-based
intelligent tool for
intelligent tool, intelligent
informal specification
guidance for building informal
specifications using SOFL.
Design of software tools Issues in relation to the design of asoftware tool using Agile-SOFL tosupport testing are discussed.
Intelligent tool for
The concept of systemcreating systemarchitecture, method-basedarchitectureknowledge for architecture,
intelligent guidance for building
system architectures using CDFDs.
Intelligent tool for
Pattern knowledge for writing prewriting
and post-conditions, intelligent
pre-post-conditions for guidance for the writing process.
process specification
Intelligent tool for
The concept of specifciation
configuration
evolution, knowledge for
specification evolution specification evolution,and intelligent guidance for
evolution.
Intelligent tool for
What is configuration
configuration
management? Documentation
management
traceability, and intelligent
guidance for the assurance oftraceability.
Intelligent tool for
Rules for transforming formaltransforming formal
specifications to code, intelligent
specifications to code
guidance for heuristictransformation.
Intelligent tool for
Principle for inspection, knowledge
inspection
for inspection, and intelligent
guidance for inspection.

— 50 —

発行日：2019/5/1

INF600K1

情報科学特別研究１ A, １ B
藤田悟, 赤石美奈, 伊藤克亘, 尾花賢, 小池崇文, 佐々木晃, 佐藤裕二, 善甫康成, 西島利尚, 花泉弘, 日高宗一郎, 廣津登志夫, 黄潤
和, 細部博史, 馬建華, 雪田修一,Li Yamin, 劉少英, 若原徹, 小西克巳, 相島健助
単位数：単位 ｜ 開講時期：【授業の概要と目的（何を学ぶか）】
学生は、各指導教員のもとで，専攻分野に関する研究や学術論文などの調査を行なう。学術論文の読解力を養うとともに，論文の作成，発表の訓練を行う。技術者、研究者としての素養を身に付け、情報科学の分野で活躍できる
基礎力を養うことを目的としている。
【到達目標】
学生は、情報科学研究科のそれぞれの領域における最先端技術と基礎となる理論を理解し、さらなる発展を可能とすための基礎力を身につけることを目標とする。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP3」と「DP4」に関連【授業の進め方と方法】
指導教員のもと、各自の研究テーマに関する調査、研究、学習を、セミナー形
式もしくは個別に行う。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes

第 28 回

第3回

研究の実施と報告

第4回研究の実施と報告

第5回研究の実施と報告

第6回研究の実施と報告

第7回

研究の実施と報告

第8回

研究の実施と報告

第9回研究の実施と報告

第 10 回研究の実施と報告

第 11 回研究の実施と報告

第 12 回研究の実施と報告

第 13 回研究の実施と報告

第 14 回研究の実施と報告

第 15 回研究の実施と報告

第 16 回研究の実施と報告

第 17 回研究の実施と報告

第 18 回研究の実施と報告

第 19 回研究の実施と報告

第 20 回研究の実施と報告

第 21 回研究の実施と報告

第 22 回研究の実施と報告

第 23 回研究の実施と報告

第 24 回研究の実施と報告

第 25 回研究の実施と報告

第 26 回研究の実施と報告

第 27 回研究の実施と報告

調査、研究、学習およびその進捗状況の発表と討論【授業時間外の学習（準備学習・復習・宿題等）】
専門分野の学会、セミナー、研究会などの開催に注意を払い、興味のあるものには積極的に参加・発表すること。
【テキスト（教科書）】
各教員の指示に従うこと。
【参考書】
各教員の指示に従うこと。
【成績評価の方法と基準】
毎週の報告内容、活動状況、研究成果等を勘案し担当教員が個別に評価する。
【学生の意見等からの気づき】
アンケート対象外科目であるが、教員と密にコンタクトを取り、積極的に討論することが必要である。
【Outline and objectives】
Students research their special theme and write technical papers.
They need to practice research work in CIS domain, and learn the basic
knowledge and skills of CIS.

【フィールドワーク（学外での実習等）の実施】
あり / Yes【授業計画】
回
テーマ
第1回
オリエンテーション
第2回研究の実施と報告研究の実施と報告

内容
特別研究の進め方や内容の紹介
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論— 51 —

発行日：2019/5/1

INF600K1

情報科学特別研究２ A, ２ B
藤田悟, 赤石美奈, 伊藤克亘, 尾花賢, 小池崇文, 佐々木晃, 佐藤裕二, 善甫康成, 西島利尚, 花泉弘, 日高宗一郎, 廣津登志夫, 黄潤
和, 細部博史, 馬建華, 雪田修一,Li Yamin, 劉少英, 若原徹, 小西克巳, 相島健助
単位数：単位 ｜ 開講時期：【授業の概要と目的（何を学ぶか）】
学生は、各指導教員のもとで，専攻分野に関する研究や学術論文などの調査を行なう。学術論文の読解力を養うとともに，論文の作成，発表の訓練を行う。技術者、研究者としての素養を身に付け、情報科学の分野で活躍できる
基礎力を養うことを目的としている。
【到達目標】
学生は、情報科学研究科のそれぞれの領域における最先端技術と基礎となる理論を理解し、さらなる発展を可能とすための基礎力を身につけることを目標とする。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP3」と「DP4」に関連【授業の進め方と方法】
指導教員のもと、各自の研究テーマに関する調査、研究、学習を、セミナー形
式もしくは個別に行う。
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes

第 28 回

第3回

研究の実施と報告

第4回研究の実施と報告

第5回研究の実施と報告

第6回研究の実施と報告

第7回

研究の実施と報告

第8回

研究の実施と報告

第9回研究の実施と報告

第 10 回研究の実施と報告

第 11 回研究の実施と報告

第 12 回研究の実施と報告

第 13 回研究の実施と報告

第 14 回研究の実施と報告

第 15 回研究の実施と報告

第 16 回研究の実施と報告

第 17 回研究の実施と報告

第 18 回研究の実施と報告

第 19 回研究の実施と報告

第 20 回研究の実施と報告

第 21 回研究の実施と報告

第 22 回研究の実施と報告

第 23 回研究の実施と報告

第 24 回研究の実施と報告

第 25 回研究の実施と報告

第 26 回研究の実施と報告

第 27 回研究の実施と報告

調査、研究、学習およびその進捗状況の発表と討論【授業時間外の学習（準備学習・復習・宿題等）】
専門分野の学会、セミナー、研究会などの開催に注意を払い、興味のあるものには積極的に参加・発表すること。
【テキスト（教科書）】
各教員の指示に従うこと。
【参考書】
各教員の指示に従うこと。
【成績評価の方法と基準】
毎週の報告内容、活動状況、研究成果等を勘案し担当教員が個別に評価する。
【学生の意見等からの気づき】
アンケート対象外科目であるが、教員と密にコンタクトを取り、積極的に討論することが必要である。
【Outline and objectives】
Students research their special theme and write technical papers.
They need to practice research work in CIS domain, and learn the basic
knowledge and skills of CIS.

【フィールドワーク（学外での実習等）の実施】
あり / Yes【授業計画】
回
テーマ
第1回
オリエンテーション
第2回研究の実施と報告研究の実施と報告

内容
特別研究の進め方や内容の紹介
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論— 52 —

発行日：2019/5/1

INF600K1

情報科学特別演習１ A, １ B
藤田悟, 赤石美奈, 伊藤克亘, 尾花賢, 小池崇文, 佐々木晃, 佐藤裕二, 善甫康成, 西島利尚, 花泉弘, 日高宗一郎, 廣津登志夫, 黄潤
和, 細部博史, 馬建華, 雪田修一,Li Yamin, 劉少英, 若原徹, 小西克巳, 相島健助
単位数：単位 ｜ 開講時期：【授業の概要と目的（何を学ぶか）】
学生は、各自の専攻分野で研究テーマを定め、指導教員のもとで研究を行なう。実証のために実験を進める上では、指導教員と密に接触し、実験の経過報告、討論を行なう。研究テーマの選択、研究企画および遂行、成果報告の各ステップにおいて、社会で通用する一定水準を超える力を身に着けることを目的とする。

第 16 回演習の実施と報告

第 17 回演習の実施と報告【到達目標】
学生は、研究企画では、社会の要請、研究の志、技術の訴求点を明確に主張できるレベルに達することを到達目標とする。また、研究線表に基づく計画的な研究遂行を行うことができ、研究成果のまとめと発表においては、対外発表に耐えうる実力を身につけることをも併せて到達目標とする。

第 18 回演習の実施と報告

第 19 回演習の実施と報告

第 20 回演習の実施と報告

第 21 回演習の実施と報告

第 22 回演習の実施と報告

第 23 回演習の実施と報告

第 24 回演習の実施と報告

第 25 回演習の実施と報告

第 26 回演習の実施と報告

第 27 回演習の実施と報告

第 28 回演習の実施と報告【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP3」と「DP4」に関連【授業の進め方と方法】
以下に列挙したそれぞれのステップにおいて、指導教員と密にコミュニケー
ションをとり、進捗報告と討論によって進めていく。
1. 研究テーマの設定
2. 関連研究の調査
3. 開発環境の整備
4. 実験データの入手（収集）5. 提案手法 (モデル) の実装
6. 提案手法（モデル）の評価【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
あり / Yes【授業計画】
回
テーマ
第1回
オリエンテーション
第2回
演習の実施と報告

第3回演習の実施と報告

第4回演習の実施と報告

第5回演習の実施と報告

第6回演習の実施と報告

第7回演習の実施と報告

第8回

演習の実施と報告

第９回演習の実施と報告

第 10 回演習の実施と報告

第 11 回演習の実施と報告

第 12 回演習の実施と報告

第 13 回演習の実施と報告

第 14 回演習の実施と報告

第 15 回演習の実施と報告

内容
全体計画と心構えの説明
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション

調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション【授業時間外の学習（準備学習・復習・宿題等）】
専門領域について文献や論文調査するとともに、学会参加や発表を積極的に行うこと。
【テキスト（教科書）】担当教員の指示に従うこと。
【参考書】
担当教員の指示に従うこと。
【成績評価の方法と基準】
報告内容、質疑応答、活動状況、研究成果等を総合的に勘案し担当教員が個別に評価する。
【学生の意見等からの気づき】
授業アンケート対象外科目であるが、苦しみながらも自分で問題解決を図る
姿勢を身に付けさせたい。また、プログラミングの不具合を自分で発見でき、バグを着実に取り除いていける緻密な分析力も身に付けさせたい。
【Outline and objectives】
Students research their special theme.
They need to make report and presentation to their supervisors
periodically, and discuss the issues.

— 53 —

発行日：2019/5/1

INF600K1

情報科学特別演習２ A, ２ B
藤田悟, 赤石美奈, 伊藤克亘, 尾花賢, 小池崇文, 佐々木晃, 佐藤裕二, 善甫康成, 西島利尚, 花泉弘, 日高宗一郎, 廣津登志夫, 黄潤
和, 細部博史, 馬建華, 雪田修一,Li Yamin, 劉少英, 若原徹, 小西克巳, 相島健助
単位数：単位 ｜ 開講時期：【授業の概要と目的（何を学ぶか）】
学生は、各自の専攻分野で研究テーマを定め、指導教員のもとで研究を行なう。実証のために実験を進める上では、指導教員と密に接触し、実験の経過報告、討論を行なう。研究テーマの選択、研究企画および遂行、成果報告の各ステップにおいて、社会で通用する一定水準を超える力を身に着けることを目的とする。

第 16 回演習の実施と報告

第 17 回演習の実施と報告【到達目標】
学生は、研究企画では、社会の要請、研究の志、技術の訴求点を明確に主張できるレベルに達することを到達目標とする。また、研究線表に基づく計画的な研究遂行を行うことができ、研究成果のまとめと発表においては、対外発表に耐えうる実力を身につけることをも併せて到達目標とする。

第 18 回演習の実施と報告

第 19 回演習の実施と報告

第 20 回演習の実施と報告

第 21 回演習の実施と報告

第 22 回演習の実施と報告

第 23 回演習の実施と報告

第 24 回演習の実施と報告

第 25 回演習の実施と報告

第 26 回演習の実施と報告

第 27 回演習の実施と報告

第 28 回演習の実施と報告【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP3」と「DP4」に関連【授業の進め方と方法】
以下に列挙したそれぞれのステップにおいて、指導教員と密にコミュニケー
ションをとり、進捗報告と討論によって進めていく。
1. 研究テーマの設定
2. 関連研究の調査
3. 開発環境の整備
4. 実験データの入手（収集）5. 提案手法 (モデル) の実装
6. 提案手法（モデル）の評価【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
あり / Yes【授業計画】
回
テーマ
第1回
オリエンテーション
第2回
演習の実施と報告

第3回演習の実施と報告

第4回演習の実施と報告

第5回演習の実施と報告

第6回演習の実施と報告

第7回演習の実施と報告

第8回

演習の実施と報告

第９回演習の実施と報告

第 10 回演習の実施と報告

第 11 回演習の実施と報告

第 12 回演習の実施と報告

第 13 回演習の実施と報告

第 14 回演習の実施と報告

第 15 回演習の実施と報告

内容
全体計画と心構えの説明
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション

調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション
調査、実験および学習の実施とその進
捗状況のプレゼンテーションとディス
カッション【授業時間外の学習（準備学習・復習・宿題等）】
専門領域について文献や論文調査するとともに、学会参加や発表を積極的に行うこと。
【テキスト（教科書）】担当教員の指示に従うこと。
【参考書】
担当教員の指示に従うこと。
【成績評価の方法と基準】
報告内容、質疑応答、活動状況、研究成果等を総合的に勘案し担当教員が個別に評価する。
【学生の意見等からの気づき】
授業アンケート対象外科目であるが、苦しみながらも自分で問題解決を図る
姿勢を身に付けさせたい。また、プログラミングの不具合を自分で発見でき、バグを着実に取り除いていける緻密な分析力も身に付けさせたい。
【Outline and objectives】
Students research their special theme.
They need to make report and presentation to their supervisors
periodically, and discuss the issues.

— 54 —

発行日：2019/5/1

HUI700K1

情報システム特別研究３
佐藤裕二
単位数：単位 ｜ 開講時期：【授業の概要と目的（何を学ぶか）】
博士後期課程の学生は、それぞれの専攻分野について研究者として自立して研究活動を行う能力、その他の高度に専門的な業務に従事するために必要な研究能力およびその基礎となる豊かな学識を養うことを目的とする。
【到達目標】
博士後期課程の学生は、上記目的を具体的に実現するために、指導教員による日常的な研究指導に従い、それぞれの専門分野に応じて、新規性・有用性に優れた研究テーマを探索し、妥当な解決法を見出して、実際に研究・開発を推進する能力を養うことを目的とする。また、担当教員の関係する共同研
究等における意見交換も行い、実用性を考慮した視点から適切な評価を行い、研究開発の方向性を調整する能力も併せて養う。研究開発における基本的ア
イデアが関連学会の学術論文や査読付き国際会議で採択されるレベルに達することが求められる。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP3」と「DP4」に関連【授業の進め方と方法】
指導教員のもと、各自の研究テーマに関する調査、研究、学習を、セミナー形
式もしくは個別に行う。また、研究開発における基本的アイデアを基に評価実験と考察を行い、関連学会の学術論文や査読付き国際会議に投稿を行う。例
えば、以下に列挙したそれぞれのステップにおいて、指導教員と密にコミュ
ニケーションをとり、進捗報告と討論によって進めていく。
1. 研究テーマの設定
2. 関連研究の調査
3. 開発環境の整備
4. 実験データの入手（収集）5. 提案手法 (モデル) の実装
6. 提案手法（モデル）の評価【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
第１回
オリエンテーション
第２回研究の実施と報告
第３回研究の実施と報告

第４回研究の実施と報告

第５回研究の実施と報告

第６回研究の実施と報告

第７回

研究の実施と報告

第８回

研究の実施と報告

第９回研究の実施と報告

第１０回 研究の実施と報告
第１１回 研究の実施と報告
第１２回 研究の実施と報告
第１３回 研究の実施と報告
第１４回 研究の実施と報告
第１５回 研究の実施と報告
第１６回 研究の実施と報告
第１７回 研究の実施と報告
第１８回 研究の実施と報告
第１９回 研究の実施と報告
第２０回 研究の実施と報告

第２１回 研究の実施と報告
第２２回 研究の実施と報告
第２３回 研究の実施と報告
第２４回 研究の実施と報告
第２５回 研究の実施と報告
第２６回 研究の実施と報告
第２７回 研究の実施と報告
第２８回 研究の実施と報告

調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論【授業時間外の学習（準備学習・復習・宿題等）】
専門分野の国際会議、セミナー、研究会などの開催に注意を払い、興味のあるものには積極的に参加・発表すること。
【テキスト（教科書）】
各教員の指示に従うこと。
【参考書】
各教員の指示に従うこと。
【成績評価の方法と基準】
毎週の報告内容、活動状況、研究成果等を勘案し担当教員が個別に評価する。
【学生の意見等からの気づき】
アンケート対象外科目であるが、教員と密にコンタクトを取り、積極的に討論することが必要である。
【Outline and objectives】
Doctoral students are required to have the ability to independently
conduct research activities as researchers for each major field andresearch abilities necessary to engage in other highly specialized work
and it aim to acquire a profound learning that is the foundation thereof.

内容特別研究の進め方や内容の紹介
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の発表と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論
調査、研究、学習およびその進捗状況の報告と討論— 55 —

発行日：2019/5/1

HUI700K1

情報システム特別演習３
佐藤裕二
単位数：単位 ｜ 開講時期：【授業の概要と目的（何を学ぶか）】
博士後期課程の学生は、それぞれの専攻分野について研究者として自立して研究活動を行い、またはその他の高度に専門的な業務に従事するために必要な研究能力およびその基礎となる豊かな学識を養うことを目的とする。
【到達目標】
博士後期課程の学生は、上記目的を具体的に実現するために、指導教員による日常的な研究指導に従い、それぞれの専門分野に応じて、新規性・有用性に優れた研究テーマを探索し、妥当な解決法を見出して、実際に研究・開発を推進する能力を養うことを目的とする。また、担当教員の関係する共同研
究等における意見交換も行い、実用性を考慮した視点から適切な評価を行い、研究開発の方向性を調整する能力も併せて養う。研究開発における基本的ア
イデアが関連学会の学術論文や査読付き国際会議で採択されるレベルに達することが求められる。
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP3」と「DP4」に関連【授業の進め方と方法】
指導教員のもと、各自の研究テーマに関する調査、研究、学習を、セミナー形
式もしくは個別に行う。また、研究開発における基本的アイデアを基に評価実験と考察を行い、関連学会の学術論文や査読付き国際会議に投稿を行う。例
えば、以下に列挙したそれぞれのステップにおいて、指導教員と密にコミュ
ニケーションをとり、進捗報告と討論によって進めていく。
1. 研究テーマの設定
2. 関連研究の調査
3. 開発環境の整備
4. 実験データの入手（収集）5. 提案手法 (モデル) の実装
6. 提案手法（モデル）の評価

第１５回 演習の実行と報告

第１６回 演習の実行と報告

第１７回 演習の実行と報告

第１８回 演習の実行と報告

第１９回 演習の実行と報告

第２０回 演習の実行と報告

第２１回 演習の実行と報告

第２２回 演習の実行と報告

第２３回 演習の実行と報告

第２４回 演習の実行と報告

第２５回 演習の実行と報告【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No

第２６回 演習の実行と報告【授業計画】
回
テーマ
第１回
オリエンテーション
第２回演習の実行と報告

第２７回 演習の実行と報告

第３回

演習の実行と報告

第４回演習の実行と報告

第５回演習の実行と報告

第６回演習の実行と報告

第７回演習の実行と報告

第８回演習の実行と報告

第９回演習の実行と報告

第１０回 演習の実行と報告

第１１回 演習の実行と報告

第１２回 演習の実行と報告

第１３回 演習の実行と報告

第１４回 演習の実行と報告

内容
特別演習の進め方と内容の説明
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論

第２８回 演習の実行と報告

関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論
関連研究の調査、研究アイデアの提案と検証実験およびその進捗状況の報告と討論【授業時間外の学習（準備学習・復習・宿題等）】
専門分野の国際会議、セミナー、研究会などの開催に注意を払い、積極的に参加・発表すること。
【テキスト（教科書）】
各教員の指示に従うこと。
【参考書】
各教員の指示に従うこと。
【成績評価の方法と基準】
毎週の報告内容、活動状況、研究成果などを勘定し担当教員が個別に評価する。
【学生の意見等からの気づき】
アンケート対象外科目であるが、研究の進捗状況に関わらず、教員と密にコンタクトを取り、積極的に討論することが必要である。
【Outline and objectives】
Doctoral students are required to have the ability to independently
conduct research activities as researchers for each major field andresearch abilities necessary to engage in other highly specialized work
and it aim to acquire a profound learning that is the foundation thereof.

— 56 —

発行日：2019/5/1

HUI700K1

情報システム特別研究３
馬建華
単位数：単位 ｜ 開講時期：【授業の概要と目的（何を学ぶか）】
Teach students fundamental and key technologies in doing research,and let them equip sufficient abilities in research material searching,research problem identification, and research approach.
【到達目標】
Students are able to acquire wide scope of information technology,
master research methods and conduct deep research in a specific area.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP3」と「DP4」に関連【テキスト（教科書）
】
No
【参考書】
Instructed during teaching.
【成績評価の方法と基準】
Research effort, performance and output.
【学生の意見等からの気づき】
Manage the research plan and schedule【授業の進め方と方法】
Students will be first assigned some papers to read to know the researchfundamental and progress in a specific topic, and then further requested
to search related papers to study more about this topic and makepresentations. Moreover, students will be trained to identify the basic
problems and key technologies around this topic. Finally, students are
instructed to focus on some specific issues to do deep research.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Research overview
2
Ubiquitous ComputingI
3
Ubiquitous Computing
II
4
Discussion on
Ubiquitous Research
5
Discussion on
Ubiquitous Research
6
Context Awareness

7
8
9

10
11
12
13

Context-aware Service
Discussion on LBS
Discussion on Novel
Context-aware
technology
Ubiquitous Devices
Ubiquitous Networks

19

Ubiquitous Systems
Social Issues in
Ubiquitous Computing
Review
Introduction on
Emerging Computing
IoT
Discussion on IoTNetworks
Discussion on IoT
SensingWearable Computing

20

Wearable Technology

21

Discussion on
Wearables
Discussion on
Wearable Technology
Fog Computing
Edge Computing
Discussion on Fog andEdge Computing
Smart Computing
Discuss on Smart
Technology
Future Computing

14
15
16
17
18

22
23
24
25
26
27
28

内容
General review about research
Ubiquitous computing concept,
history and main research
Key ubiquitous technologies

State in art in ubiquitous
computingState in art in ubiquitous
technologies
Context concept and context
awareness
Various context-aware applications
Location-based applications
New context-aware technologies

Various ubiquitous devices
Various communication andnetworking technologies
Ubiquitous system technologies
Various social problems brought
about by ubiquitous computing
Review of ubiquitous computing
General review of the latest
computingInternet of Things
New technologies in IoT
New technologies in sensor
networks
Wearable computing history andcurrent status
Various Wearable devices andtechnologies
Novel wearable devices
State in art of wearable technology
Fog computing technologies
Edge computing technologies
Latest fog and edge technologies
Smart object, space and system
Latest smart technologies
General perspectives on newcomputing paradigms【授業時間外の学習（準備学習・復習・宿題等）】
Search and read papers— 57 —

発行日：2019/5/1

HUI700K1

情報システム特別演習３
馬建華
単位数：単位 ｜ 開講時期：【授業の概要と目的（何を学ぶか）】This course is for students to study various technologies for data
capture, processing and utilization in practical applications.
【到達目標】
Students are expected to master basic approaches in system design aswell as concrete implementations and evaluations.
【この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか（該当授業科目と学位授与方針に明示された学習成果との関連）】ディプロマポリシーのうち、「DP3」と「DP4」に関連【テキスト（教科書）
】
No
【参考書】
Provided by this instructor【成績評価の方法と基準】
Presentations, programs and reports【学生の意見等からの気づき】
Supervision on research methodology and writing a technical paper
paper.

【授業の進め方と方法】
Main computing technologies will be first introduced, then importantresearch areas will be studied in detail, and finally a concrete
system/application will be designed, implemented and evaluated.
【アクティブラーニング（グループディスカッション、ディベート等）の実施】
あり / Yes【フィールドワーク（学外での実習等）の実施】
なし / No
【授業計画】
回
テーマ
1
Introduction

2

Ubiquitous systems

3

13

Discussion on New
Ubiquitous Systems (I)Discussion on New
Ubiquitous Systems(II)
Ubiquitous Technology
Ubiquitous System
DesignSpecific System Design
Discussion on Designed
Systems
Senor Network and
SystemSpecific Sensing
System Design
Discussion on Designed
Sensing System
System
Implementation
System Evaluation

14
15
16

Review
Introduction
Life-log

17

Life-log via
Smartphone
Life-log via Wearables

4

5
6
7
8
9
10
11
12

18
19
20

Life-log via Social
Media
Life-log Data Storage

21

Life-log Data Analysis

2225Life-log Data
Programming Basic
Life-log Data
Programming PracticeLife-log Data
Programming Library
Activity Recognition

26

Behavior Recognition

27

Emotion Recognition

28

Review

23
24

内容
Computing systems andtechnologies
Representative ubiquitous
computing systems
New ubiquitous systems andrelated technologies
New ubiquitous systems andrelated technologies

Key ubiquitous technologies
General Design methodology,
specification and tools
Design a specific ubiquitous system
Present and discuss the designed
systemWired and wireless sensor
networks
Design a specific sensing system
Present and discuss the designed
sensing system
System implementation
technologies
System evaluation methods andtechnologies
Emerging computing system
General computing technologies
Life logging technologies andapplications
Smartphone-based life logging
Life logging with various wearable
devices
Life logging with Twitter,
Facebook, etc.
Data storage, management andaccessAnalyzing techniques for personallog data
Android programming for logging
data
Android programming techniques
for data processing
Basic machine leaning algorithms
APIs
Lifelog-based activity recognition
technologies
From activity to behavior
recognition
From behavior to emotion
recognition
Emerging computing technologies【授業時間外の学習（準備学習・復習・宿題等）】
Read papers, prepare presentation and write report— 58 —

2019年度
法学部講義概要︵シラバス︶

2019年度

法学部講義概要（シラバス）