情報工学実験III

科目基礎情報

学校 熊本高等専門学校 開講年度 令和02年度 (2020年度)
授業科目 情報工学実験III
科目番号 HI1507 科目区分 専門 / 必修
授業形態 実験・実習 単位の種別と単位数 履修単位: 4
開設学科 人間情報システム工学科 対象学年 5
開設期 通年 週時間数 4
教科書/教材
担当教員 清田 公保,村上 純,小松 一男,大隈 千春,神﨑 雄一郎,島川 学

到達目標

各実験テーマについて,それぞれ次のルーブリックに示された目標に到達する.

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
【アプリ開発】 Androidアプリケーションの開発ウォーターフォール型のソフトウェア開発手順(要求分析・外部設計・内部設計・開発・テスト・運用)に沿って,Androidアプリケーションの開発を行うことができる.Java言語によるAndroidアプリケーションの開発を行うことができる.Androidアプリケーションの開発を行うことができない.
【コンパイラ】 数式構文解析プログラムの作成コンパイラの役割と仕組みについて説明でき,形式言語の概念や正規表現を理解して中置記法で記述されたを逆ポーランド記法(後置記法)の構文解析プログラムの実装ができる.形式言語の概念や正規表現を理解して,構文解析プログラムの実装ができる.コンパイラの役割と仕組みについて説明できない.構文解析プログラムの実装ができない.
【FPGA演習】 FPGAを用いた電子回路の実装VHDLを用いて,基本的な組み合わせ回路と順序回路が記述できる.また,それを応用し,LCDパネル等のデバイスを制御するFPGAの回路が実装できる.VHDLを用いて,基本的な組み合わせ回路と順序回路が記述できる.VHDLを用いて,基本的な組み合わせ回路と順序回路が記述できない.
【ヒューマン実験】 1.脳機能計測に関する実験 2.誘導運動等に関する実験 3.ヒューマンインタフェース実験脳波計や重心動揺計,筋電計等を 利用した測定技術を理解し,説明することができる. Wiiリモコンの各種センサーの仕組みやBluetoothの利用方法を理解し,プログラミングにより利用できる.脳波計や重心動揺計,筋電計等を利用した測定ができる. Wiiリモコンとのインタフェースプログラムを開発できる.脳波計や重心動揺計,筋電計等を利用した測定ができない. Wiiリモコンとのインタフェースプログラムを開発できない.
【数理系実験】 1.数理モデルシミュレーション実験 2.統計処理電気系・機械系モデルを数式モデルで導出でき,各種数値解法でシミュレーションができ,システムの解析ができる. 統計解析ソフトウェアRを自在に用いて,いくつかのデータについて回帰分析とモデルの選択を行い,説明することができる.また,分散分析についても説明でき,実際に分析することができる.電気系・機械系の数式モデルを数値解法によりシミュレーションができ,システムの解析ができる. 統計解析ソフトウェアRを用いて,回帰分析とモデルの選択を行うことができる.また,分散分析についても,実際に分析することができる.電気系・機械系モデルの数値解法によるシミュレーションができない. 統計解析ソフトウェアRをうまく使用することができず,回帰分析とモデルの選択を行うこともできない.また,分散分析についても,実際に分析することができない.
【SMTソルバ演習】 SMTソルバを用いたアプリケーションの実装 SMTソルバを用いて解決したい問題を自ら設定し,その問題を解くアプリケーションを実装できる.SMTソルバを用いて,簡単なパズルやスケジューリングなどの問題を解くアプリケーションを実装できる.SMTソルバを用いたアプリケーションを実装できない.

学科の到達目標項目との関係

教育方法等

概要:
次の各課題に取り組む.
【アプリ開発】ソフトウェア開発手法に沿ってJava言語を用いてAndroidアプリケーションの開発を行う.
【コンパイラ】コンパイラの役割を理解し、構文解析プログラムを作成する。
【FPGA演習】ハードウェア記述言語VHDLを用いて,FPGA用の簡単な組み合わせ回路・順序回路を設計・実装する.
【ヒューマン実験】脳波計やモーションセンサーなどから得られた情報をもとに,人の脳活動を計測したり,インタラクティブなコンテンツを制作する技術を習得する.
【数理系実験】電気系・機械系モデルの基礎的なシミュレーション実験と,統計処理ソフトウェアRを用いた分散分析プログラムを作成する.
【SMTソルバ演習】SMTソルバ(述語論理式の充足可能性を判定するツール)を用いて,パズルやスケジューリングなどの問題を解くアプリケーションを実装する.
授業の進め方・方法:
各実験テーマにおける説明事項や,配布される資料,参考書などを参考に取り組む.
注意点:
規定授業時数: 4単位科目 120時間.

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 ガイダンス
数理系実験①-(1)
実験の安全性や配慮事項について理解できる。
電気系・機械系の数式モデルを理解し,プログラムを作成してシミュレーションし,システムの解析ができる.
2週 数理系実験①-(2) 同上
3週 数理系実験①-(3) 同上
4週 数理系実験①-(4) 同上
5週 数理系実験②-(1) データ解析について,回帰分析,モデルの選択の原理および手法を理解し,R言語でプログラムを作成して分析を行うことができる.
6週 数理系実験②-(2) 同上
7週 数理系実験②-(3) 同上
8週 数理系実験②-(4) 同上
2ndQ
9週 アプリ開発(1) 1. 開発するアプリケーションについて,コンセプトシートで表現できる.
2. ウォーターフォール型のソフトウェア開発手順(要求分析・外部設計・内部設計・開発・テスト・運用)に沿って,Java言語を用いてAndroidアプリケーションの開発を行うことができる.
10週 アプリ開発(2) 同上
11週 コンパイラ(1) 1. 形式言語やオートマトンの概念について学習し,構文解析を説明できる.
2. 中置記法を逆ポーランド記法(後置記法)に変換して演算するプログラムの作成を通じて,コンパイラの役割についても理解する.
12週 コンパイラ(2) 同上
13週 コンパイラ(3) 同上
14週 アプリ開発(3) 1. 開発するアプリケーションについて,コンセプトシートで表現できる.
2. ウォーターフォール型のソフトウェア開発手順(要求分析・外部設計・内部設計・開発・テスト・運用)に沿って,Java言語を用いてAndroidアプリケーションの開発を行うことができる.
15週 アプリ開発(4) 同上
16週
後期
3rdQ
1週 アプリ開発(5) 開発したアプリケーションのプレゼンテーションができる。
2週 FPGA演習 (1) VHDLを用いて,基本的な組み合わせ回路と順序回路が記述できる.また,それを応用し,LCDパネル等のデバイスを制御するFPGAの回路が実装できる.
3週 FPGA演習 (2) 同上
4週 FPGA演習 (3) 同上
5週 FPGA演習 (4) 同上
6週 SMTソルバ演習 (1) SATやSMTの技術について理解した上で,SMTソルバを用いて,パズルやスケジューリングなどの問題を解くアプリケーションを実装できる.
7週 SMTソルバ演習 (2) 同上
8週 ヒューマン実験(1) 1.パソコンのOSにおけるアクセシビリティ技術を理解し,説明することができる.
2.重心動揺計や筋電計等を利用した測定技術を理解し,説明することができる.
3.各種センサーの仕組みを理解し、プログラミングにより利用できる.さらに短距離通信のBluetoothの利用方法が理解できる.
4thQ
9週 ヒューマン実験(2) 同上
10週 ヒューマン実験(3) 同上
11週 ヒューマン実験(4) 同上
12週 ヒューマン実験(5) 同上
13週 ヒューマン実験(6) 同上
14週 ヒューマン実験(7) 同上
15週 ヒューマン実験(8) 同上
16週

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力工学基礎工学実験技術(各種測定方法、データ処理、考察方法)工学実験技術(各種測定方法、データ処理、考察方法)実験テーマの目的に沿って実験・測定結果の妥当性など実験データについて論理的な考察ができる。3前1,前2,前3,前4,前5,前6,前7,前8,前13,後1
実験ノートや実験レポートの記載方法に沿ってレポート作成を実践できる。3前13,後1
実験データを適切なグラフや図、表など用いて表現できる。3前1,前2,前3,前4,前5,前6,前7,前8
実験の考察などに必要な文献、参考資料などを収集できる。3前13,後1
実験・実習を安全性や禁止事項など配慮して実践できる。3前1
個人・複数名での実験・実習であっても役割を意識して主体的に取り組むことができる。3前1,前2,前3,前4,前5,前6,前7,前8,前9,前10,前11,前12,前13,前14,前15,後1,後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15
共同実験における基本的ルールを把握し、実践できる。3前1
レポートを期限内に提出できるように計画を立て、それを実践できる。3前1,前2,前3,前4,前5,前6,前7,前8,前9,前10,前11,前12,前13,前14,前15,後1,後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15
専門的能力分野別の専門工学情報系分野プログラミング要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。4前1,前9,前10,前11,前12,前13,前14,前15,後1
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。4前1,前9,前10,前11,前12,前13,前14,前15,後1
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。4前1,前9,前10,前11,前12,前13,前14,前15,後1
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。4前1,前9,前10,前11,前12,前13,前14,前15,後1
ソフトウェアアルゴリズムの概念を説明できる。4前1,前2,前3,前4,前5,前6,前7,前8,前11,前12,前13
与えられたアルゴリズムが問題を解決していく過程を説明できる。4前1,前2,前3,前4,前5,前6,前7,前8,前11,前12,前13
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。4前1,前2,前3,前4,前5,前6,前7,前8,前11,前12,前13
時間計算量によってアルゴリズムを比較・評価できることを説明できる。4前1,前2,前3,前4,前5,前6,前7,前8
ソフトウェアを中心としたシステム開発のプロセスを説明できる。4前1,前9,前10,前14,前15,後1
計算機工学ハードウェア記述言語など標準的な手法を用いてハードウェアの設計、検証を行うことができる。4後2,後3,後4,後5
要求仕様に従って、標準的なプログラマブルデバイスやマイコンを用いたシステムを構成することができる。4後2,後3,後4,後5
コンピュータシステムシステム設計には、要求される機能をハードウェアとソフトウェアでどのように実現するかなどの要求の振り分けやシステム構成の決定が含まれることを説明できる。4前1,前9,前10,前14,前15,後1
ユーザの要求に従ってシステム設計を行うプロセスを説明することができる。4前1,前9,前10,前14,前15,後1
プロジェクト管理の必要性について説明できる。4前1,前9,前10,前14,前15,後1
システムプログラム形式言語の概念について説明できる。4前11,前12,前13
オートマトンの概念について説明できる。4前11,前12,前13
コンパイラの役割と仕組みについて説明できる。4前11,前12,前13
形式言語が制限の多さにしたがって分類されることを説明できる。4前11,前12,前13
正規表現と有限オートマトンの関係を説明できる。4前11,前12,前13
情報数学・情報理論コンピュータ上で数値計算を行う際に発生する誤差の影響を説明できる。4前1,前2,前3,前4,前5,前6,前7,前8
分野別の工学実験・実習能力情報系分野【実験・実習能力】情報系【実験・実習】与えられた問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用して記述できる。4前1,前2,前3,前4,前5,前6,前7,前8,前9,前10,前11,前12,前13,前14,前15,前16,後1,後9,後10,後11,後12,後13,後14,後15
ソフトウェア生成に利用される標準的なツールや環境を使い、ソースプログラムをロードモジュールに変換して実行できる。4前1,前9,前10,前11,前12,前13,前14,前15,後1
ソフトウェア開発の現場において標準的とされるツールを使い、生成したロードモジュールの動作を確認できる。4前1,前9,前10,前11,前12,前13,前14,前15,後1
フローチャートなどを用いて、作成するプログラムの設計図を作成することができる。4前1,前9,前10,前11,前12,前13,前14,前15,後1
問題を解決するために、与えられたアルゴリズムを用いてソースプログラムを記述し、得られた実行結果を確認できる。4前1,前2,前3,前4,前5,前6,前7,前8,前11,前12,前13
与えられた仕様に合致した組合せ論理回路や順序回路を設計できる。4後2,後3,後4,後5
基礎的な論理回路を構築し、指定された基本的な動作を実現できる。4後2,後3,後4,後5
論理回路などハードウェアを制御するのに最低限必要な電気電子測定ができる。4後2,後3,後4,後5
標準的な開発ツールを用いてプログラミングするための開発環境構築ができる。4前1,前9,前10,前14,前15
要求仕様にあったソフトウェア(アプリケーション)を構築するために必要なツールや開発環境を構築することができる。4前1,前9,前10,前14,前15
要求仕様に従って標準的な手法によりプログラムを設計し、適切な実行結果を得ることができる。4前1,前9,前10,前14,前15,後1
分野横断的能力汎用的技能汎用的技能汎用的技能他者の意見を聞き合意形成することができる。3前1,前9,前10,前14,前15,後1
合意形成のために会話を成立させることができる。3前1,前9,前10,前14,前15,後1
グループワーク、ワークショップ等の特定の合意形成の方法を実践できる。3前1,前9,前10,前14,前15,後1
書籍、インターネット、アンケート等により必要な情報を適切に収集することができる。3前1,前9,前10,前14,前15,後1
収集した情報の取捨選択・整理・分類などにより、活用すべき情報を選択できる。3前1,前9,前10,前14,前15,後1
収集した情報源や引用元などの信頼性・正確性に配慮する必要があることを知っている。3前1,前9,前10,前14,前15,後1
目的や対象者に応じて適切なツールや手法を用いて正しく情報発信(プレゼンテーション)できる。3後1

評価割合

レポート発表相互評価態度合計
総合評価割合100000100
基礎的能力00000
専門的能力100000100
分野横断的能力00000