コンピュータサイエンス概論2015第4日目

コンピュータサイエンス概論2015
第4日目
東京工科大学
コンピュータサイエンス学部
担当:亀田弘之
授業計画
第1回:プログラミングの楽しさ
(21世紀の魔法使いの道具プログラミング言語を知る)
第2回:コンピュータサイエンスと知能研究・ゲーム研究
(人工知能・機械学習・脳科学・認知科学などの魅力を知る)
第3回:コンピュータと情報ネットワークの仕組み
(コンピュータの基本構成、ネットワークの基本構成などの
基本的仕組み・原理を知る)
第4回:クラウドコンピューティング
(ビッグデータ(オープンデータ)が世界を変える。データベースの基礎など)
第5回:ソフトウェア工学
(ソフトウェアはどのようにして作られるのか,開発の現場を覗いてみる。
開発プロセス,プロジェクトマネジメントなど)
第6回:コンピュータサイエンスにおける計算の理論
(チューリングマシン,コンピュータサイエンス小史など)
第7回:コンピュータサイエンスと法・倫理
(知的財産権,さまざまな事例紹介)
第8回:コンピュータサイエンスの全容と将来を議論する
(e-healthCare, e-learning, e-government等,
君は何を学ぶのか? なぜ学ぶのか? どうやって学ぶのか?)
平成27年 東京工科大学コンピュータサイ
エンス学部
2
授業計画
第1回:プログラミングの楽しさ
(21世紀の魔法使いの道具プログラミング言語を知る)
第2回:コンピュータサイエンスと知能研究・ゲーム研究
(人工知能・機械学習・脳科学・認知科学などの魅力を知る)
第3回:コンピュータと情報ネットワークの仕組み
(コンピュータの基本構成、ネットワークの基本構成などの
基本的仕組み・原理を知る)
第4回:クラウドコンピューティング
(ビッグデータ(オープンデータ)が世界を変える。データベースの基礎など)
第5回:ソフトウェア工学
(ソフトウェアはどのようにして作られるのか,開発の現場を覗いてみる。
開発プロセス,プロジェクトマネジメントなど)
第6回:コンピュータサイエンスにおける計算の理論
(チューリングマシン,コンピュータサイエンス小史など)
第7回:コンピュータサイエンスと法・倫理
(知的財産権,さまざまな事例紹介)
第8回:コンピュータサイエンスの全容と将来を議論する
(e-healthCare, e-learning, e-government等,
君は何を学ぶのか? なぜ学ぶのか? どうやって学ぶのか?)
平成27年 東京工科大学コンピュータサイ
エンス学部
3
到達目標
コンピュータサイエンスに関して以下のことが到達目標である。
1.コンピュータサイエンスの
社会的役割・意義を理解し説明できる。
2.コンピュータサイエンスを学ぶ上での
重要な能力・資質を理解する。
3.コンピュータサイエンスの概要を説明できる。
4.将来のコース選択(案)を自力で作成し、
人にわかりやすく説明できる。
平成27年 東京工科大学コンピュータサイ
エンス学部
4
ネットワークの仕組み(続き)
復習(1)
• “インターネット(internet)”とは、「ネットをつな
ぎ合わせたネット」、「ネットが相互につながり
あって形成されるネットワークのネットワーク」
という概念を意味している。
• ネットワークのネットワークは、地球上に1つ
しかない。その相互接続されて形成されてい
る巨大なネットワークを、“Internet”あるいは
“the Internet”と英語で表記する。
復習(2)
• ネットワークアーキテクチャ
(network architecture)
(注)アーキテクチャとは、普通名詞の1つであり、
建築物,建築様式という意味。一方、CSの専門
用語としてのアーキテクチャとは、“基本設計”、
“設計様式”、“構成概要”、“システム構成概
要”といった意味合いの用語
(注)各自調べること。
アーキテクチャの例
• コンピュータ・アーキテクチャ
– CPUレベルにおける「命令セットアーキテクチャ」
• ネットワークアーキテクチャ
– OSI 7階層モデル
– TCP/IP 4層モデル
• その他
– Architecture of brain
– Architecture of mind
実際のネットワークの概要
LAN
LAN
WAN
インターネット
=ネットワークが
たくさん繋がっている
大規模なネットワーク
LAN
LAN
LAN
OSI7階層モデル
アプリケーション層
プレゼンテーション層
セッション層
トランスポート層
データリンク層
物理層
国際標準化機構 (ISO) によって制定された、異
機種間のデータ通信を実現するためのネット
ワーク構造の設計方針「開放型システム間相
互接続 (Open Systems Interconnection、OSI)」に
基づいて通信機能を以下の7階層(レイヤ)に分
割する。
各層の説明
第7層 - アプリケーション層[1]
具体的な通信サービス(例えばファイル・メールの転送、遠隔データベースアクセスなど)
を提供。HTTPやFTP等の通信サービス。
第6層 - プレゼンテーション層
データの表現方法(例:EBCDICコードのテキストファイルをASCIIコードのファイルへ変換)。
第5層 - セッション層
通信プログラム間の通信開始から終了までの手順(接続が途切れた場合、回復を試す)。
第4層 - トランスポート層
ネットワークの端から端までの通信管理(エラー訂正、再送制御等)。
第3層 - ネットワーク層
ネットワークにおける通信経路の選択(ルーティング)。データ中継。
第2層 - データリンク層
直接的(隣接的)に接続されている通信機器間の信号の受け渡し。物理的な接続。
コネクタのピンの数、コネクタ形状の規定等。動線-光ファイバ間の電気信号の変換など。
第1層 - 物理層
物理的な接続。コネクタのピンの数、コネクタ形状の規定等。動線-光ファイバ間の
電気信号の変換など。
TCP/IPの4階層モデル
第4層 アプリケーション層
第3層 トランスポート層
第2層 インターネット層
第1層 ネットワークインタフェース層
TCP/IPの4階層モデル
第4層 アプリケーション層
第3層 トランスポート層
第2層 インターネット層
第1層 ネットワークインタフェース層
疑問: で、「TCP/IPって何?」
TCP/IPとは
• 情報通信ネットワークシステムにおける様々
なプロトコル(取り決めごと)の総称。
パケットとは
ネットワーク解析・管理に便利なツール
• Wireshark: ネットワーク内に流れるパケットを
解析するツール
• SNMP Test Utility: Mac OS X 対応のSNMPマネ
ジャ
• SNMP Manager: Android対応のSNMPマネ
ジャ
基本的なコマンド(ツール)
•
•
•
•
•
•
arp
ping
wget, curl
ftp
nslookup
routetracer など
[アドバイス]
• 少しずつ勉強してください。調べて、使って、理解する。
• 理解したら、後は必要に応じて実際に使ってみる。
• 物足りないなら、新しい子めんど(ツール)を自分たちで作ろう!
参考ウェブページ
• 国民のための情報セキュリティサイト
(http://www.soumu.go.jp/main_sosiki/joho_t
susin/security/intro/index.html)
– まず、ページの上側の「基礎知識」をクリック
– 次に、ページ左あるいは中央にある「インターネッ
トを使ったサービス」をクリック
– その結果現れたページの内容を自分で学習して
おくこと(特に、ネットワークコース希望の学生は
必須)。
(出典)http://www.soumu.go.jp/main_sosiki/joho_tsusin/security/basic/service/index.html
次の話
• Cloud computing
• Open Data (Big Data)
まずは、クラウドの話
クラウドコンピューティングの定義
(出典)NISTによるクラウドコンピューティングの定義(情報処理推進機構 資料より)
3つのクラウドサービスモデル
1. SaaS(サース、サーズ:Software as a Service)
–
インターネット経由での、電子メール、グループウェア、顧客
管理、財務会計などのソフトウェア機能の提供を行うサービ
ス。以前は、ASP(Application Service Provider)などと呼ばれ
ていました。
2. PaaS(パース:Platform as a Service)
–
インターネット経由での、仮想化されたアプリケーションサー
バやデータベースなどアプリケーション実行用のプラット
フォーム機能の提供を行うサービス。
3. IaaS(アイアース、イアース:Infrastructure as a Service)
1.
インターネット経由で、デスクトップ仮想化や共有ディスクなど、
ハードウェアやインフラ機能の提供を行うサービス。HaaS
(Hardware as a Service)と呼ばれることもあります。
(出典)http://www.soumu.go.jp/main_sosiki/joho_tsusin/security/basic/service/13.html
自習課題
Cloud computing の技術を利用した実際のサー
ビスを調べなさい。身近なところにもあると思い
ますよ!
なお、〇〇というサービスがある、というだけで
はなく、どのような理由でそのサービスがクラウ
ドコンピューティングに基づくサービスであると
考えたのか、その理由も簡単でいいので添えな
さい。
次は、オープンデータの話
(出典)http://www.kantei.go.jp/jp/singi/it2/densi/kettei/rm_gaiyou.pdf
(出典)http://www.kantei.go.jp/jp/singi/it2/pdf/120704_gaiyou.pdf
参考サイト
(出典)http://www.data.go.jp/
参考サイト(2)
(出典)http://www.city.hachioji.tokyo.jp/open_data/
オープンデータ活用事例
• 参考動画
– Learn Python Through Public Data Hacking
(https://www.youtube.com/watch?v=RrPZza_vZ3w)
シカゴ市のバス運行データの活用例
「バスに忘れた荷物を早く手元に!プロジェクト」
見学の勧め
• 科学技術に関する博物館や科学館の見学をし、
その見学した内容を紹介するとともに、それらと
CSとのかかわりに関する私見をレポートにまと
める。
• 成績に最大で+10点の加点を行う。(原則、+
10点とするが、内容が不十分であったり、レ
ポートとしての体裁に問題がある場合は、若干
の減点を行う。)
• 書き方及び内容構成は、「レポートの構成」の
ページ(2ページ先)を参照のこと。
見学の勧め(2)
• 科学技術館
• 郵政博物館
• 東芝未来科学館 など
(技術全般に関する博物館見学であれば可)
レポートの構成
• 表紙
– レポートタイトル「〇〇の見学報告」
– レポート提出日・学生番号・氏名
(用紙のサイズはA4版とする。)
• 本文
1. 見学場所(施設名と所在地)、見学日時
2. 見学内容
①
②
③
④
⑤
施設の何を見学したのか?
何を学んだのか?
CSとの関わり(自分の意見)
CSを学ぶ者として、将来どのような社会貢献ができそうか?
(自分の考え)
その他(何かあれば)
お知らせ
• サウジアラビア留学生イノベーションフォーラ
ム2015
• 日本科学未来館(5月17日(日)9:30-18:00)
– 配布資料を参照のこと。
– 午前の部だけでも良いが、午後の部も積極的に
参加することを勧める。(日本に来ている留学生
たちが、どのようなことを考えて学び研究している
かを知る良い機会ですので)
今日のお知らせ
1. サウジアラビア留学生イノベーションフォーラ
ム2015(日本科学未来館, 5/17) poster
2. わずか1000円の激安コンピュータ「CHIP」
http://gigazine.net/news/20150508-chip/
3. other