Cyber-Physical Systems @maruyama097 丸山不二夫

Agenda o  Cyber-Physical Systemとは、何か? o  Cyber-Physical Systemsの歴史での重要な 出来事 o  Cyber-Physical Systemsが挑戦している課題 o  Cyber-Physical Systemsとして情報システム を捉え直す o  自律分散というアプローチ o  これから考えるべきこと

Cyber-Physical System とは、何か? ここでは、Cyber-Physical Systemsの簡単 な定義を与えて、共通部分の多いIoTやビッ グデータ論との比較を行う

“Internet of Things” 最初の意味 “Internet of Things” という言葉は Kevin Ashton によって、1999年に提案された

“That ‘Internet of Things’ Thing” by Kevin Ashton 初出 o  “Internet of Things” というフレーズは、私が 1999年にProcter & Gamble (P&G) 社で 行ったプレゼンのタイトルとして、初めて世に出た。 P&G社のサプライチェインの新しいアイデアとし てのRFIDを、当時、最もホットなトピックであった インターネットに結びつけたことは、経営幹部の強 い注意を引きつけるに十分だった。

すべてのモノにIDを持たせるというアイデア “That 'Internet of Things' Thing” by Kevin Ashton http://bit.ly/1bt4GBP

o  今日の情報技術は、人間によって生み出される 情報にあまりに依存していて、我々のコンピュー タは、モノについてより、人間の考えについての 方をよく知っている。 o  もし、我々の助けなしに自分で集めたデータを 使って、モノについて知りうる全てのことを知って いるコンピュータがあったとすれば、我々は、すべ てのモノを追跡しその数を数えることが出来、無 駄や損失やコストを多いに削減することが出来る だろう。

人が生み出す情報ではなく、モノについての情報 “That 'Internet of Things' Thing” by Kevin Ashton http://bit.ly/1bt4GBP

日本への影響 「ユビキタス」 情報通信白書特集テーマの変遷

o  2004年「世界に拡がるユビキタスネットワーク社 会の構築」                o  2005年「u-Japanの胎動」 o  2006年「ユビキタスエコノミー」 o  2007年「ユビキタスエコノミーの進展とグローバ ル展開」                   o  2008年「活力あるユビキタスネット社会の実現」 o  2009「日本復活になぜ情報通信が必要なのか」 http://bit.ly/1n66E07

日本への影響 「ユビキタス」 ITの世界で何が起きていたか?

o  2004年「世界に拡がるユビキタスネットワーク社 会の構築」               Google上場 o  2005年「u-Japanの胎動」     CPS o  2006年「ユビキタスエコノミー」 Amazon EC2/S3 o  2007年「ユビキタスエコノミーの進展とグローバ ル展開」                  iPhone o  2008年「活力あるユビキタスネット社会の実現」 Microsoft Azure Android

o  2009「日本復活になぜ情報通信が必要なのか」 http://bit.ly/1n66E07

丸山の「ユビキタス論」へのコメント 2010年4月マルレク「日本のクラウド」 o  それは、平面上にアモルファスに広がる構造を欠 いたネットワーク。そして、それは、ネットワークや デバイスやチップの遍在でしかない。 o  クラウドとモバイルデバイスは、ネットワークに、 ネットワークの背骨ともいうべき、明確な垂直構造 をもたらす。そうした視点を欠く。 o  我々にとって重要なのはネットワーク自身の遍在 ではなく経済活動と人間のコミュニケーションと情 報共有の担い手としてのネットワークの遍在であ る。 Human Centric Sensor Network http://bit.ly/1n66E07

SNS・クラウドの基本構造:情報の涌 き出し口としての個人(+マシン)

Server Centric P2P

Cyber-Physical Systemsとは何か

Cyber-Physical Systemsとは何か? o  Cyber-Physical Systems(CPS)とは、コン ピュータの計算能力と物理的なシステムの能力 が結びつけられて両者がしっかりと協調するシス テムである。 o  組込み系を中心としたリアルタイムの処理技術と、 機械の制御を中心とするディジタル・アナログの ハイブリッド技術の二つが合流して生まれた。 o  2006年にアメリカのNSFが大学や研究機関に Cyber-Physical Systems研究に大規模な資 金提供を始めて、全世界にこのコンセプトは広 まった。

CyberとPhysicalの違い o  Cyber-Physical Systemsのコンセプトで重要 なことは、コンピュータやネットワークのプログラ ムを中心とするCyberな世界と、現実の機械を中 心とする Physicalな世界が、まったく異なる原理 でドライブされているという認識である。 o  Cyberの世界は、論理的・数学的な「正しさ」が基 本原理。その意味では、その原理は抽象的なも の。一方、Physicalな世界を動かしているのは、 最終的には、物理法則。それは、具体的で現実 的なもの。Cyber-Physical Systemsは、この 異なる二つの世界が結びついたシステム。

単純なCyber-Physical Systemの図式     Cyber

Physical system

Physical CSPは、Physical à Cyber と Cyber à Physical の二つのパスを持つことに留意しよう。

抽象化した Cyber-Physical Systemsの図式 数学的原理

Cyber World

物理法則

Physical World

CPSとIoP o  CSPとIoTのコンセプトは、共通部分を持つ。ただ、 この二つのコンセプトには、違いも存在する。 o  IoTは、今日では、「多数のデバイスやセ ンサー が、(インター)ネットにつながること」と理解される ことが多く、また、そこから発生するビッグデータ の処理にも関心が向けられる。 o  CSPでは、関心は、コンピュータによる物理系の リアルタイムの制御にも置かれる。インターネット 接続を必ずしも前提としない自律型のロボットや、 3Dプリンターは、CPSの一つの例。

ビッグデータ論の特徴 — PhysicalからCyberへ o  IoTでは、無数のセンサーから沸き出す巨大な情 報「ビッグデータ」の処理が中心的な課題になると いう議論がよくある。そうした処理が必要な場合 が存在し、それが技術的にチャレンジングな課題 であるのは、確かである。 o  ただ、物理的な世界から発した情報が、全て一カ 所にまとめられ、情報として処理されるというイ メージは、少し狭いとも思う。なぜなら、そこでは、 PhysicalからCyberへと、情報が一方的に流れ るだけだけからである。

単純化した IoTとビッグデータの図式 Cyber World

Big Data Physical World

3Dプリンターとロボット — CyberからPhysicalへ o  CyberからPhysicalの情報の流れを代表する例 は、何になるのだろう? o  現実を変えるという意味では、我々が用いる道具 や機械は、全て、そうした役割を持つ。ただ、多く の道具や機械は、人間が直接にコントロールして いる。 o  人間ではなくコンピュータによって制御される機械 が、CyberからPhysicalの情報の流れの担い手 になるというのなら、すぐに思いつくのは、3Dプリ ンターやロボットである。

単純化した ロボットや3Dプリンターの図式 Cyber World Control

Physical World

PhysicalとCyberの相互作用の 発展段階を考える o  IoTの最初期には、Thingsは単なるモノ(に付け られたRFIDタグ)だったので、CàPの作用は望 むべきも無かった。ThingsがSensorsになっても、 こうした事情はさして変わらない。 o  このレベルでは、センサー・レベルのIoTと3Dプリ ンター/ロボットは、情報の流れに関して言えば、 「相補的」な関係にある。 o  Things(こうした言い方が妥当なものか議論の余 地がある)が、センサーを備えたアクティブ・デバ イスになったとき、Cyber-Physical Systemsの 重要性が、もっと明らかになる。

Cyber-Physical Systemsの歴史 での、重要な出来事 ここでは、Cyber-Physical Systemsの歴史 をふりかえって、いくつかの重要な出来事を ピックアップしてみよう

Cyber-Physical Systemsの コンセプトの始まり Cyber-Physical Systemsのコンセプトを始 めて打ち出したのは、アメリカのNSFである。 2006年のことである。

NSF Workshop On CyberPhysical Systems 2006/10/16-17 「Cyber-physical systemsは、インターネッ トが、我々人間が互いに関係しあうスタイルを 変化させたのと、丁度同じように、我々と物理 的世界との関係を変化させて行くだろう。」 http://varma.ece.cmu.edu/CPS/

http://varma.ece.cmu.edu/CPS/Presentations/Zhao.pdf

アメリカの国益にかなう

基礎研究にフォーカスする

境界横断的

なんでもが、CPSなのではない!

2006年のWorkShopAcademics Panel Sessionの冒頭で Janosが、プレゼンをしている

http://varma.ece.cmu.edu/CPS/Presentations/Panel-1/Janos-Sztipanovits.pdf

コンピュータ・システムと 物理的なシステムが 交わる領域

数学的領域 物理法則

Cyber-Physical Systems (CPS)

2009/02/27 PROGRAM SOLICITATION NSF 08-611 http://www.nsf.gov/pubs/2008/ nsf08611/nsf08611.htm

Synopsis of Program: o  Cyber-Physical Systemsという術語は、コン ピュータ上のリソースと物理的なリソースの間の 強い結合と協調をさしている。 o  我々は、未来のCyber-Physical Systemsは、 今日、我々が、適合性、自律性、効率性、機能性、 信頼性、安全性、可用性といった言葉で表すもの を、はるかに超えて進むだろうと展望している。

Cyber-Physical Systemsでの研究の前進は、我々の 世界を次のようなシステムを持つものに変えることを約束 している。 l  より高速に反応するシステム(自律的な衝突回避シス テム等) l  より精密な動作を行うシステム(ロボットによる外科手 術、ナノ・スケールの工作機械等) l  危険で近づけない環境での作業システム(捜索と救出、 消火作業と探索) l  大規模で分散したものの協調を行うシステム(交通制 御の自動化等)、高度に効率的で(正味のエネルギー を消費しないビル等) l  人間の能力を増大し社会福祉を拡大するシステム(介 護支援技術、いつでもどこでも、健康状態のモニタリン グと医療サービスの提供を可能とするシステム)

NFSのCyber-Physical Systemsの 取り組みに対するドイツの批判的評価 「アメリカでは既に2006年から、NSFが、 Cyber-Physical Systemを、最重要な研究 分野として位置づけていた。 しかしながら、CPSを、特に製造業の分野で 利用するという点に関しては、実際には、ほと んど何もなされなかった。」

“Indusrie 4.0” 文書より

Advanced Manufacturing Partnership 設立の呼びかけをするオバマ大統領

2011年6月

2011年 AMP立ち上げ o  2011年6月、オバマ大統領は、”Advanced Manufacturing Partnership (AMP)”を 立ち上げる。 o  AMP Steering Commiteeの構成 工学系トップの大学 (MIT, UC Berkeley, Stanford, CMU, Michigan, GIT)の学長 アメリカのトップ企業 (Caterpillar, Corning, Dow Chemical, Ford, Honeywell, Intel, Johnson & Johnson, Northrop Grumman, Procter & Gamble, United Technologies) のCEO

オバマ演説 「アメリカで発明しアメリカで製造する」 o  “本日、私は、我々の全て -- 私的企業・大学・政 府機関 -– に、アメリカ製造業のルネッサンスを スパークさせ、我が国の製造業が世界のいかな る国とも競争するために必要な最先端のツール を開発するのを助ける為に、一緒になるよう呼び かける。 ... これらの重要な投資によって、我々は、合衆国が 「ここで発明し、ここで製造する」国にとどまり、ア メリカの労働者に、高品質・高賃金の仕事を作り 出すことを保証する事が出来る” http://www.whitehouse.gov/the-press-office/2011/06/24/ president-obama-launches-advanced-manufacturing-partnership

2012年 NNMIIの設立 o  2012年7月、AMPは16の勧告をレポートする。 その中には、”National Network of Manufacturing Innovation Institutes (NNMII)” の設立が含まれていた。 o  NNMIIは、官民連携組織で、アメリカの企業の国 際的競争力を高め、アメリカの製造施設への投 資を増加させる為に、「優れた製造技術の地域の ハブ」になる事が期待された。

オバマ演説 “Made in America” o  “我々は、地域を助ける為に、その地域を、世界 の先端技術の仕事のセンターに変える事を助け る為に、進んで一緒にパートナーを組もうとする 企業と大学を求めている。 というのも、我々は、製造業の次の革命が、 「Made in America」になる事を望んでいるから だ。" -- President Obama, May 9, 2013 http://manufacturing.gov/nnmi_overview.html

o  2013年度予算では、advanced manufacturingに対する研究開発予算は、 19%増えて22億ドル(2,200億円)に。 o  この予算で、National Institute of Standards and Technology (NIST)は、 国内の製造業に研究施設とノウハウを提供する 施策に1億ドル(100億円)を支出。 o  NISTは、またAdvanced Manufacturing Portal を運営している。これは、AMIの勧告に 基づいたもの。

“Recommendations for implementing the strategic initiative INDUSTRIE 4.0”  2013年4月

http://www.plattform-i40.de/sites/default/ files/Report_Industrie%204.0_engl_1.pdf

”INDUSTRIE 4.0” のビジョン Cyber-Physicalへ o  第一次産業革命: 機械 n  18世紀末の蒸気機関の導入

o  第二次産業革命: 電気 n  20世紀に始まる電気を動力とする大規模工場生産

o  第三次産業革命: IT n  1970年代に始まり今日まで続いている、電子技術・ ITを利用した生産の自動化

o  第四次産業革命: Cyber-Physical n  ネットワークのサイバー空間と物理的な生産の世界が 結びつく

Cyber-Physicalシステム:製造環境と Internet of Things and Services o  ThingsとServicesのインターネットの製造環境 への導入が、第四次産業革命への道を開く。 o  将来、ビジネスは、Cyber-Physicalシステムの 形で、機械と倉庫と製造機能を一つに合体させる グローバルなネットワークを確立するだろう。 o  Cyber-Physicalシステムは、スマートマシンとス トレージと、自律的に情報を交換しそれぞれが独 立に動作を起動しコントロールする能力を持った 生産施設から構成される。

Cyber-Physical System (CPS) o  このCyber-Physicalシステムは、製造工程、生 産工学、物質資源の利用、サプライ・チェイン、そ して、ライフサイクルの管理に含まれている産業 の全過程に対して、根本的な改良を容易にする。

Smart Factory : CPSの中核 スマート流通  

スマート自動車

スマートグリッド

Smart Factory

スマートビルディング

CPS スマートプロダクト

Cyber-Physical Systemと 二重のネットワーク・システム o  Cyber-Physicalシステムに組み込まれた製造 システムは、工場と企業のビジネス・プロセスに 垂直方向にネットワークで接続され、水平方向に は、注文がなされた時からロジスティックに送り出 されるまさにその時まで、リアルタイムに管理可 能な多様なバリュー・ネットワークに接続される。 o  それに加えて、水平・垂直双方のネットワークは、 ともに、バリュー・チェイン全体を横断した、endto-end のエンジニアリングを可能にし、また、そ れを要求する。

垂直方向のネットワーク: 工場内の統合されたネットワーク化された 製造システム

水平方向のネットワーク: 多数の企業を結んだバリュー・ネットワーク

水平方向のネットワーク: 多数の企業を結んだバリュー・ネットワーク それはグローバルなものかもしれない

end-to-end: 製品の開発・設計 から、消費者個人 へのサービスの 提供まで

サービス 生産

生産エンジニアリング 生産計画 製品のデザインと開発  

Project Ara -- CPS開発ツールの無償提供 2014/04/15-16 Project Araは、自己をCyber-Physical System(CPS) と規定している。重要な事 は、Project Araの中心的な柱として、CPS開 発の為のツール群Metamorphosysが オープンソースの形で無償提供されている事 である。 http://www.projectara.com/

Project Ara Conference 2014/04/15-16 Day 2 “Metamorphosys design tools ”

http://www.projectara.com/ara-developers-conference/

Project Ara Conference 2014/04/15-16 Day 2 “Metamorphosys design tools ”

Ara: Cyber-Physical システム デザインの挑戦

ソフトはうまく動くか?

回路をどう設計するか?

Araのモジュールに収まる?

自分のモデルと その結果をどの ように組織する か?

動作のスピードは?

「関心の分離」は、必ずしもうまく機能しない 電波の干渉は起きないか?

発熱しないか?

Tool Chain Metamorphosys を構成する三つのプラトフォーム o  モデル統合プラットフォーム o  ツール統合プラットフォーム o  実行統合プラットフォーム

Project Araのエコシステムの基礎 モジュール開発ツールの共有 o  誰もが「ものづくり」のツールを持つことが出来る: オープンソースでの無償提供。 o  誰もが容易に使える:これらのツールは、ハード ウェア設計の専門家でなくても、Araのモジュール をデザインする事を助ける事が出来る。 o  誰もが簡単にデータを交換・共有出来る:グロー バルでオープンな「ものづくり」コミュニティとデー タのネットワーク・マーケットの拡大。 o  誰もが簡単に「ものづくり」出来る:データを3Dプ リンターにいれれば、その場で、ものが出来る。 部品の輸送コストは大幅に削減出来る。

3Dプリンターによるモジュールの製造 Googleは、3Dプリン ターの最大手 3D Systemsと共同で、 2015年までに、次の ようなAraモジュール を製造する3Dプリン ターを作ろうとしてい る。

モジュール開発ツール、3Dプリンターを使った開発サイクル

再利用可能なAraコンポーネントをデザイン ・アプリとドライバーの開発 ・ハードウェア・モジュールの開発 Araプラットフォームで定義された デザインの制約を満たしながら、 デザインツールMetamorphosys が提供するデザイン手法を利用

Araシステムの設定と統合 ・個人向けの設定 ・変更可能       ユーザーの期待に応えながら、 安全性と操作性の基準を保証 する

Cyber-Physical Systemsが 挑戦している課題 ここでは、Edward Leeのプレゼンに基づい て、Cyber-Physical Systemsが、どのよう な課題に挑戦しようとしているかを見てみよう。 CyberとPhysicalの統合では、「時間」の問 題が、重要な問題であることが分かる。

http://wwwdi.supelec.fr/fb/SeminaireLee2013

地図をドリルしても 石油は出ない。

我々は、モデルについては、決定論的な言明を行う ことが出来る。それから、実現されたシステムの、いく つかの特徴を推論出来る。 この推論の妥当性は、モデルの忠実さに依存する。 そして、その忠実さというのは、常に近似でしかないのだ。

決定論的なモデル

同期的なディジタル論理回路

決定論的なモデル

単一スレッドの命令的なプログラム

決定論的なモデル

   微分方程式

ただし、決定論的なものの組み合わせは、 非決定論的なものになる

単純なCyber-Physical Systemsの図式    

インターネットのプロトコルは、そのままでは、Best Effort のプロトコルであることを忘れずに。(丸山注)

計算は、無時間的な命令言語で 行われる。 物理的なプラントは、常微分方程式 で、モデルが与えられる。

このコードは、 タイミングをコント ロールしようとしている。 しかし、本当にそうなっ ているか?

タイミングの振る舞いは、そのプロ グラムとハードウェア・プラットフォー ムの組み合わせで生まれてくる

タイミングがシステムの振る舞いに影響を与える時には、設計はもろい ものになる。ハードウェア、ソフトウェア、あるいは、環境の小さな変化が 大きな、予期しない、タイミングの変化を引き起こす。テストを、やりなおさ なければならない。

重要な挑戦 タイミングは、ソフトウェアのセマンティックスの一部ではない C, C#, Java, Haskel, OCaml 等でのプログラムの正しい 実行は、何を計算するにしても、それがどれくらい時間がかか るかということとは、何の関係も無い。ほとんど全ての計算と ネットワークの抽象は、この前提の上に立っている。

プログラマーは、タイミングの振る舞いを 特定する為には、プログラミングの抽象の 外に踏み出さなければならない。

プログラマーは、依拠すべき 地図を持っていない!

コンピュータ・サイエンスが、タイミングを 無視してきた訳ではないが ...

今日では、コンピュータにとっては、 タイミングは、単なる、パフォーマンスの 尺度にすぎない。 タイミングは、正確性の規範である必要 がある。

正確性の規範

我々は、ソフトウェアに絶対的な信頼を 持つことが出来る。そこでは、ハードウェア のエラーだけが唯一の問題となる。 しかし、タイミングに関しては、そうでは ないのだ。

我々が、それからコンピュータを組み立てているハード ウェアには、「正確」な計算とタイミングを提供する能力 を持っている。

同期的なディジタル論理回路図 という抽象は、トランジスターの 細かな動作を考える必要を無くす。

... しかし、その上のソフトウェア の抽象は、タイミングの正確さを 無視している。

CPSの挑戦 その1

我々は、プログラムの正確な実行が、サブシステム のIOで、常に、同じ(ある正確さの範囲で)時間的な 振る舞いをするように、プログラミング・モデルを変更 出来るか?

我々は、決定論的なCPSモデルを必要としている

CPSの挑戦 その2 いかにしたら、我々は、既存の言語・ツール・方法論に よって生み出される強力な惰性を克服して、本質的な 抽象を変更するかもしれないイノベーションを可能に 出来るか? 我々は、オープン・マインドである必要がある

CPSにとって、まさに「時間」の概念は、微妙である

理想化された ニュートン力学 の時間概念

コンピュータのプラットフォームでは、t にアクセスしない。 代わりに、ローカルな時間の測定が利用される。

いろいろ、微妙な問題がある。 時間同期? その正確性は? その表現形式は? Superdense Time? Hyperdense Time? 多形式時間? 同時性の意味論?

理想化された ニュートン力学 の時間概念

重要な技術が、まさに、登場しつつある 時計同期の技術である 時計同期は、世界を変え ようとしている グレゴリー暦            グリニッジ標準時           IEEE 1588

1500年代 日単位

1800年代 秒単位

2000年代 ナノセカンド単位

GPSは、100ns単位の 正確な時間を、戸外の アクセスで、デバイスに 与えることが出来る

時計同期は、次のことを可能にする l  l  l  l  l 

エネルギーの効率化 通信なしでさえも、協調動作が可能に セキュリティー リソース管理 決定論的振る舞い

CPSの挑戦 その3 我々は、いかにしたら、現実界のリアルな時間の測定 や時間同期、また、物理的なシステムで利用されてい る工学的モデルと整合的な、時間のモデルを開発出来 るか? 我々は、時間の意味論を必要としている

工学的抽象と 工学的方法論

こうしたシステムの構成要素は、異なる専門領域の専門家の もとで、多様な工学的原理に基づいて、複数のべンダーから 提供されている。、

航空機用の「電力供給 システム」を考えてみよう 物理的には、 l  発電機 l  大容量リレー l  配電系統 l  負荷機器 l  ...

小さなサブシステムでも、実際は、巨象である

CPSの挑戦 その4

我々は、いかにしたら、工学的原理と橋渡しをしつつ、 要求や期待を明確にする、システムの構成要素間の インターフェースを定義出来るか? 我々は、「モデル工学」の原理を必要としている

四つの大きな挑戦 1.  決定論的なCPSモデル 2.  言語とツールについてオープンマインドであること 3.  時間の意味論 4.  「モデル工学」の原理

Cyber-Physical Systemsとして 情報システムを捉え直す 最初に見たCPSシステムの図式では、Cyber システムを、情報の世界にのみ閉じるシステ ムとして特徴付けてきた。 ただ、こうした描像も一面的なものである。 ここでは、Cyber-Physical Systemsとして、 あらためて、情報システムを捉え直してみよう

Cyber World自身も、Physicalな 基礎を持つ 数学的原理

Cyber World Physical

物理法則

Physical World

Cyber-Physical Systemsとして の大規模分散データベース

Spanner: Google’s Globally-Distributed Database Wilson Hsieh representing a host of authors OSDI 2012 http://static.googleusercontent.com/external_content/untrusted_dlcp/ research.google.com/ja//archive/spanner-osdi2012.pdf http://research.google.com/archive/spanner.html Video: https://www.usenix.org/conference/osdi12/elmo-building-globallydistributed-highly-available-database

Spannerでの正確な「時計」の利用 o  Spannerのアプローチのポイントは、「正確なタイ ムスタンプ」をグローバルな規模に広がった分散 データベースのトランザクションのコントロールに 使うこと。その為に、主要にはGPSを使って(場合 によっては原子時計で)、全てのマシンの「時計」 を合わせる。 o  グローバルな規模の分散データベースに「実時 間」の時計の時間合わせを導入するというのは、 データベースが単なるCyber空間上のシステム ではなく、Cyber-Physical Systemsとしての性 格を持つようになってきたということ

大規模分散データベースとしての Spannerの特徴 o  第一に、データの複製の設定は、アプリによって細 かい粒度でコントロール出来る。 n  どのデータセンターがどのデータを持つのか n  データはユーザーからどのくらい離れているか(読み込み の遅延をコントロールする) n  レプリカはお互いにどれくらい離れているか(書き込みの 遅延をコントロールする) n  どのくらいの数のレプリカが維持されているか(耐久性・ 可用性・読み込みのパフォーマンスをコントロールする) n  データは、データセンター間のリソースの利用のバランス をとるシステムによって、動的かつ透過的にデータセン ター間を移動出来る。

大規模分散データベースとしての Spannerの特徴 o  第二に、Spannerは、分散データベースでは実 装するのが難しい二つの特徴を持つ。 n  読み書きについての外的整合性 n  ある時点での、データベースをまたいだグローバルに 整合的な読み込み

o  こうした特徴は、グローバルなスケールで、たとえ 実行中のトランザクションがあったとしても、整合 的なバックアップ、整合的なMapReduceの実行、 アトミックなスキーマの更新を、Spannerに可能 とする。

正確なコミット・タイムスタンプの利用 o  こうした特徴は、たとえトランザクションが分散して いたとしても、Spannerがトランザクションにグ ローバルに意味のあるコミット・タイムスタンプを 割り当てるという事実によって可能になった。

正確なコミット・タイムスタンプの利用 o  このタイムスタンプは、シリアル化された順序を反 映している。それに加えて、シリアル化された順 序は、外的整合性(あるいは、それと等価だが、 線形化可能性)を満たしている。すなわち、あるト ランザクションT1が、別のトランザクションT2が始 まる前にコミットするなら、T1のコミット・タイムスタ ンプは、T2のそれよりも小さい。 o  Spannerは、グローバルなスケールで、こうした 保証を与えた最初のシステムである。

Snapshot Isolation Spannerの基本的な手法は、「スナップショット・ア イソレーション」と言われるもの。 "A Critique of ANSI SQL Isolation Levels " http://research.microsoft.com/pubs/ 69541/tr-95-51.pdf

Start-Timestamp o  Snapshot Isolationでは、それぞれのトランザ クションは、Start-Timestampと呼ばれる、トラ ンザクションを開始した時刻のデータのスナップ ショット(コミットされた)からデータを読み込む。こ の時刻は、トランザクションの最初の読み込みの 時刻の前の時刻になる。 o  トランザクションのStart-Timestamp以降にア クティブになった他のトランザクションによる更新 は、このトランザクションからは見えない。

ReadとWrite o  Snapshot Isolationの中のトランザクションは、 そのStart-Timestampからのスナップショットの データが維持可能である限り、読み込みがブロッ クされることはない。 o  トランザクションでの書き込み(updates, inserts, deletes)もまた、このスナップショットに 反映される。もしトランザクションが、このデータに 二度目のアクセス(reads あるいは updates)を するなら、ふたたび、読み出される。

Commit-Timestamp o  トランザクションT1が、コミットの準備ができた時、 それはCommit-Timestampを取得するのだが、 それは、既に存在するStart-Timestampあるい は Commit-Timestampより、大きな値を持つ。 o  トランザクションは、T1の実行間隔 [StartTimestamp, Commit-Timestamp] 内にCommit-Timestampを持つ他のトランザ クションT2が、 T1が書き出したデータと同じデー タを書き出していない場合に限り、コミットに成功 する。

First-Commiter-Wins o  そうでない場合、T1はアボートする。この「最初に コミットしたものが勝つ」という特徴が、更新が失 われるのを防止する。 o  T1がコミットされると、そのStart-Timestamps がT1のCommit-Timestampより大きい、全て のトランザクションに、その変更は見えるようにな る。

BigTableの トランザクション機能の強化

Incrementally Indexing the Web with Percolator 2010年10月4日 Frank Dabek and Daniel Peng at OSDI, 2010 https://docs.google.com/presentation/d/ 1gKD4FbaUIGtoimP6-ZB0iiW8V0KZt8fVET-Cfu5KiG8/ present#slide=id.i0

o  Googleは、2010年に、Caffein/Percolatorと 呼ばれる大きなシステム変更を行っている。この 変更以降、Googleは、 Web ページのインデック ス付けにMapReduceを使わなくなった。 o  その変化の中核は、タイムスタンプを利用した、ス ナップショット・アイソレーショ ンの導入による、 BigTableのトランザクション機能の強化であった。

o  c:data データ自身を格納 o  c:lock コミットされていないトランザクションは、        このCellに書き込む。PrimaryLock        の場所を含んでいる。 o  c:write コミットされた現在のデータ。         データのタイムスタンプを格納。 o  c:notify ヒント: observerが走る必要がある         かもしれない o  c:ack O Observer “O”が走った。最後に        成功した実行のタイムスタンプを格納。

o  初期状態: Joeの口座には2ドル、Bobの口座には、10 ドルが、はいっている。 o  bal:writeに、データのタイムスタンプが書き込まれること によって初めて、そのデータは外部から見えるようになる。 o  BobからJoeへ、7ドル送金するというトランザクションを考 えよう。

o  送金のトランザクションは、Lockカラムに書き込むことで Bobの口座の残高をロックすることから始まる。このロック は、このトランザクションのprimaryである。 o  このトランザクションは、また、その開始タイムスタンプ 7 にデータを書き込む。Bobのdataカラムに3ドルが書き込 まれる。ただし、この変化は、まだ外からは見えない。

o  トランザクションは、次にJoeの口座をロックして、ふたた び開始タイムスタンプ 7に、Joeの新しい残高9ドルを書き 込む。 o  このロックは、このトランザクションのsecondaryである。 primaryロック(”Bob”行の”bal”カラム)への参照を含ん でいる。クラッシュでこのロックが立ち往生して、トランザク ションがロックを解消したいと思った時、このロックの解消 を同期するためにprimaryの場所が必要になる。

o  トランザクションは、コミットのポイントに到達する。 o  primaryロックを消して、それをコミットタイムスタンプと呼 ばれる新しいタイムスタンプ 8の下で、新しい書き込みレ コードと置き換える。この書き込みレコードは、データが格 納されているタイムスタンプへのポインターを含んでいる。 o  これ以降、”Bob”行の”bal”カラムを読むものは、値 3ド ル を見ることになる。

o  トランザクションは、secondary セルに書き込みデータを 追加し、ロックを消去することで完了する。 o  これ以降、”Joe”行の”bal”カラムを読むものは、値 9ドル を見ることになる。 o  この例の場合には、ただ一つのsecondary Joeがあるだ けである。

Webスケールの分散トランザクション の「存在証明」 o  Googleは、この技術を「Webスケールの分散ト ランザクションの「存在証明」」と呼んでいる。 o  "Incrementally Indexing the Web with Percolator" https://docs.google.com/presentation/d/ 1gKD4FbaUIGtoimP6ZB0iiW8V0KZt8fVET-Cfu5KiG8/ present#slide=id.i0

SpannerでのPaxosの利用 Spannerのもう一つの大きな特徴は、Paxos の利用である。

Paxos Leslie Lamport "The Part-Time Parliament"

http://research.microsoft.com/en-us/um/people/lamport/ pubs/lamport-paxos.pdf

"Paxos Made Simple" http://research.microsoft.com/en-us/um/people/lamport/ pubs/paxos-simple.pdf

Spannerの階層構造

Universe – Zone - Spanserver

Spannerの階層構造

Universe – Zone - Spanserver o  ユニバースは、Spannerのシステム全体である。 o  Spannerのユニバースは、一群のゾーンで組織されてい る。それぞれのZoneは、大まかにいって、BigTableの サーバーに相当するものである。 o  ゾーンは、一つのゾーン・マスターと、百から数千の間の スパンサーバーを持っている。前者は、スパンサーバーに データを割り当てる。後者は、データをクライアントにサー ビスする。 o  ユーザーのデータに割り当てられたスパンサーバーの場 所を特定する為に、そのゾーンのロケーション・プロキシー が利用される。

Spanserverのソストウェア・スタック o  スタックの一番下では、スパンサーバーが、100 個から1000個の間のタブレットと呼ばれるデータ 構造のインスタンスに責任を持っている。 o  タブレットは、BigTableのタブレットという抽象と 同様のもので、その中では、次のようなマッピング のバッグを実装している。 (key:string, timestamp:int64) → string

Spanserverのソストウェア・スタック o  Bigtableとは異なって、Spannerは、タイムスタ ンプをデータに割り当てる。ここが、Spannerが キー・バリュー・ストアよりは、マルチ・バージョン・ データベースにずっと似ている重要なポイントで ある。 o  複製をサポートする為に、それぞれのスパンサー バーは、それぞれのタブレット上に、一つの Paxos状態マシンを実装している。

レプリカ群がPaxosグループを形成 o  一群のレプリカが、Paxos グループを形成する。 o  Paxos状態マシンは、マッピングのバッグ   (key:string, timestamp:int64) → string のレプリカを整合的に実装するのに利用されてい る。それぞれの複製のキー・バリュー・マッピング の状態は、対応するタブレットに格納される。 o  書き出しは、リーダーのPaxosプロトコルから開 始されなければならない。読み出しのアクセスの 状態は、十分更新されたどのレプリカの下にある タブレットからでも直接に取得出来る。

SpanserverのLock Table o  リーダーである全てのレプリカのスパンサーバー は、コンカレンシーのコントロールを実装する為の ロック・テーブルを実装している。 o  ロック・テーブル は、ツー・フェーズ・ロッキングの 為の状態を含んでいる。それは、一連のキーを ロック状態にマップする。 o  ロック・テーブルを効率的に管理する上で、長い 期間、生き続けるリーダーを持つことは、本質的 に重要であることに注意。Spannerのサーバー のリースは、10秒と長い

Txn managerのスキップ o  もしトランザクションが、一つのPaxosグループを 含んでいるだけなら(大部分のトランザクションの 場合)、それは、トランザクション・マネー ジャをバ イパス出来る。というのは、ロック・テーブルと Paxosが一緒になって、トランザクションの保証を 提供するからである。

Paxos Groupをまたいだ調整 o  もしトランザクションが一つ以上のPaxosグルー プを含んでいたら、これらのグループ・リーダーが ツー・フェーズ・コミットの調整役を演ずる。 o  参加グループの一つが、調整役に選ばれる。そ のグループの参加者のリーダーは、調整役リー ダーと呼ばれ、グループのスレーブは、調整役ス レーブと呼ばれる。 o  それぞれのトランザクション・マネージャの状態は。 直下のPaxosグループに格納される。(それ故、 複製される。)

大規模自律分散というアプローチ o  「Spannerは、もっとも高い抽象のレベルでは、 全世界に広がっているデータセンター内の沢山の Paxos状態マシン群をまたいで、データを分割し たデータベースである。」 o  Spannerは、単なる「大規模分散システム」では なく、それぞれが自律的な耐障害性を備えた「大 規模自律分散システム」なのである。それによっ て、次のことが可能となった。 o  「Spannerは、数百のデータセンターをまたいだ 数百万のマシンと、数兆行のデータベースにス ケールアップするように設計されている。」

Cyber-Physical Systemsとして のネットワーク・システム

「ギルダーの予想」 o  「ネットワークがコンピュータの内部バスと 同じぐらい早くなれば、マシンは、特定の目 的を持ったデバイスのあつまりへとネット ワーク上で分解するだろう。」 o  ただ、このように、ローカルとリモートの区別が、 ネットワークのスピード・アップによってなくなるだ ろうという考え方には、強い異論がある。

ローカルとリモートを峻別する立場 o  今から20年前にこうした問題は、はっきりと提起 されていた。彼らの認識は、ネットワーク管理をし ている人なら誰でも知っている、Leaseの導入と して、結実する。Jim Waldoは、“A Note on Distributed Computing” http://www.eecs.harvard.edu/~waldo/ Readings/waldo-94.pdf で、次のように述べ る。

“A Note on Distributed Computing” Jim Waldo et al. http://www.sunlabs.com/techrep/1994/ smli_tr-94-29.pdf

ローカルなプログラミングとリモートなプログラ ミングを、はっきりと区別すべきだという立場

ネットワーク上のシステムで相互作用するオブジェ クトは、単一のアドレス空間で相互作用するオブ ジェクトとは、本来的に異なったやり方で取り扱わ れるべきであると、我々は主張している。 こうした違いが要求されるのは、ネットワーク上の システムでは、プログラマは遅延の問題を意識せ ねばならず、異なったメモリーアクセスのモデルを 持ち、並列性と部分的失敗(partial failure)の問題 を考慮にいれなければならないからである。

我々は、ローカルとリモートのオブジェクトの違いを 覆い隠そうと試みる、沢山のネットワーク・システム を見てきた。そして、これらのシステムは、頑健さと 信頼性という基本的な要請を満たすことに失敗し ていることを示そうと思う。 こうした失敗は、過去においては、構築されたネッ トワーク・システムの規模の小ささで、隠蔽されて いた。しかしながら、近未来に予想される、企業規 模のネットワークシステムにおいては、こうした隠 蔽は不可能となるであろう。

     Formulated in      10 Years Ago

Network is Homegenous added by Gosling

Cyber-Physical Systemsとして のクラウド・システム

クラウド技術の特徴 ScalabilityとAvailability o  コモディティ化したマシンを集積するスケールアウ トの手法に基づくクラウド技術は、Scalabilityと Availability両方の担保を中核と する。 o  そこでの技術的飛躍のポイントは、「マシンは、例 外的に、あり得ない不運がかさなってクラッシュす るのではなく、いつでも、例外なしに壊れるもの だ。」という認識にある。 o  かつて、GoogleのPlatforms ArchitectのBen Jaiは、次のように語ったことがある。

「信頼性の高いハードは、ソフトウェア 技術者を怠け者にする。」 o  「3-year MTBFだとしても, 1000台のうち一台 は、毎日だめになるという計算になる。最小の Googleのアプリケーションでも、2000台のマシ ンを必要とする。こうした障害を ソフトでどう対応 するかデータの多重化と冗長化は、この規模では どうしても必要となる。」 o  「だから、なぜ、高価な信頼性の高いハードのこと で思い悩むのか? 信頼性の高いハードは、ソフト ウェア技術者を怠け者にする。障害に強いソフト ウェアが、安いハードを役に立つものに変えるの だ。」

o  こうした認識は、ネットワークで結ばれた大規模な コンピューター・システムが、それ自身、純粋に Cyberなシステムではなく、基本的には Physicalな原理に左右されるCyber-Physical Systemsであることを意味している。それは当然 のことだとも思う。ただ、20年前のJim Waldoの 警告にあるように、我々は、時に、それを忘れるこ とがある。

Cyber-Physical Systemsと 量子コンピュータ

Simulating Physics with Computers 1982年 Richard P. Feynman http://www.cs.berkeley.edu/ ~christos/classics/Feynman.pdf

自然をシミュレートするコンピュータ o  コンピューターが、正確に自然と同じように振る舞 う、正確なシミュレーションが存在する可能性につ いて話そうと思う。それが証明されて、そのコン ピュータのタイプが先に説明したようなものである なら、必然的に、有限の大きさの時空の中で起き る全てのものは、有限な数の論理的な操作で正 確に分析可能でなければならないことになるだろ う。

量子論的システムは、古典的なコン ピューターでシミュレートされるか? o  量子論的なシステムは、古典的な万能計算機で、 確率論的にシミュレートされるだろうか? 別の言 い方をすれば、コンピューターは、量子論的なシ ステムが行うのと、同じ確率を与えるだろうか?  コンピューターを今まで述べてきたような古典的 なものだとすれば(前節で述べたような量子論的 なものではないとすれば)、また法則はすべて変 更されないままで、ごまかしもないとすれば、答え は明らかにノーである。

量子コンピュータ -- 万能量子シミュレーター o  それは、新しいタイプのコンピューター、量子コン ピューター?で可能になるだろう。 私が理解する限りでは、それは量子論的なシステ ムによって、量子コンピューターの要素によって、 シミュレート出来るようになることは、いまや、明ら かになった。それはチューリング・マシンではない。 別のタイプのマシンである。

Quantum theory, the ChurchTuring principle and the universal quantum computer

1985年 David Deutsch http://www.cs.berkeley.edu/ ~christos/classics/ Deutsch_quantum_theory.pdf

計算過程は、すべて物理過程

Church-Turing-Deutsch Thesis 物理法則

物理法則

Cyber World

Physical World

Church-Turing-Deutche Thesis o  Church-Turingの仮説の基礎には、暗黙の物 理学的主張があることが考察される。 この物理学的主張は、次のような物理学的原理 として、明確に表現することが出来る。 「有限な方法で実現可能な物理システムは、有限 な手段によって操作される万能計算機械のモデ ルで完全にシミュレート可能である。」 o  古典物理学と万能チューリング・マシンは、前者 は連続的で後者は離散的であるので、この原理 には従っていない。

万能量子コンピューター o  チューリング・マシンのクラスの量子論的一般化 である計算機械のクラスが記述され、量子論と、 この「万能量子コンピューター」が、先の原理と両 立可能であることが示される。 o  この万能量子コンピューターをまねた計算機械は、 原理的には、構築可能である。そしてそれは、い かなるチューリング・マシンによっても再生不可能 な、多くの目覚ましい特徴を持つであろう。

自律分散というアプローチ 現実世界の情報を全て一カ所に集約するとい うアプローチに対しては、「自律分散」という、 別のアプローチもあり得る。

Cyber-Physical Systemsと 自律型のシステム o  多くの電気機器は、電力さえ供給されれば、一定 の役割を果たすことが出来る。 o  情報システムであっても、ネットワーク接続が必 須ではないものがある。インターネット普及以前 の「パソコン」「ワープロ」がその一例だ。 o  ロボットも、全てが外部からコントロールされて動 作するのでは、操り人形と大差ない。ロボットで重 要なのは、自律的に判断し動作する能力である。 o  IoTのコンセプトには、こうした自律型のシステム は含まれないが、Cyber-Physical Systemsは、 これらを含んでいる。

自律分散システム o  自律分散システムというのは、相対的な自律性を 持つ部分システムがネットワークで結ばれて、シ ステム全体が協調動作を行うシステムである。 o  情報の流れで言えば、すべての情報を一カ所に まとめるのではなく、システムの構成要素の階層 的な「役割」の分担に基づいて、局所的に処理出 来る情報は全て ローカルに処理する「自律性」を それぞれの構成要素に与え、ローカルな範囲で は処理が閉じない種類の情報のみを、上位階層 に伝えるというモデルである。

自律性は、相対的なものである o  「自律分散」の考え方は、ある種のデータの一カ 所への集中を排除しない。Amazonの倉庫ロ ボットkivaでは、どこに何があり、どこで何をすべ きかは、おそらく中央のコピュータが制御している。 ただロボットの動きの多くは、ロボットが自律的に 制御している。 https://www.youtube.com/watch? v=lWsMdN7HMuA

データの集約・集中処理と 自律分散 o  もっとも、検索のように、データ集約型でしか処理 出来ないものもある。ただ、この点では、Google のCaffeine / Percolator でのBigTableのトラ ンザクション機能の強化から、Spannerへの「進 化」は、興味深いものである。 o  「Spannerは、もっとも高い抽象のレベルでは、 全世界に広がっているデータセンター内の沢山の Paxos状態マシン群をまたいで、データを分割し たデータベースである。」

データの集約・集中処理と 自律分散 o  こうした定式化は、データ集約型のシステムにお いても、システムの拡大にともなってシステムの 整合性を維持する為には、自律分散の考えに基 づいたシステム設計が、重要であることを示唆し ている。

自律分散のモデルとそのメリット 自然界でも人間の社会でも、情報を扱う複雑 なシステムの多くは、自律分散のスタイルを とっているように見える

自律分散のモデル – 生命・知能 o  すべての細胞にはDNAのフルセットが含まれて いるのだが、細胞は、その情報の一部のみを利 用して特定の機能を持つ細胞に分化する。分化し た細胞は、器官を構成し、それが他の器官と協調 しつつ自律的な役割を果たすことで、全体として の生命活動が維持される。 o  人間の脳もそうだ。脳内には無数の脳細胞があ るのだが、それには特定のタイプがあり、特定の 役割を担っている。それが特定のパターンで結び つくことによって、認識・感情・知覚・行動が生まれ る。

自律分散のモデル – 社会的昆虫 o  蟻や蜂のような、社会的な昆虫の「社会」も、自律 分散のモデルと言える。 o  女王蜂は、働き蜂がどこにいて何をして いてなに を見ているかを把握する必要はない。女王蜂も働 き蜂も「本能」に基づいて自律的に行動する。そ れでも、蜂の社会システムはうまく機能している。 o  それは、女王蜂・働き蜂の「本能」の実体である、 それぞれに埋め込まれた遺伝子情報が、そのよ うにプログラムされているからである。

自律分散のモデル – 人間の社会 o  人間の社会も、自律分散のシステムと言える。特 に、市場を通じた経済活動は、基本的には、自由 意志を持つとされる個人・法人の自律的な活動に 基づいている。 o  生産・流通・消費の過程が、経済のネットワークを 構成する。 o  Industrie 4.0の「水平方向のCyber-Physical Systems」は、自律分散型のシステムになる。

自律分散のメリット o  データ集約型のモデルは、まさにその点において、 システムの脆弱性が生まれる可能性がある。そ れに対して、自律分散型のモデルは、Single Point of Failure を持たないので、より頑健なシ ステムを構築することが出来る。 o  データ集約型のモデルでは、情報の爆発的増大 が起こりえる。自律分散型のシステムでは、無用 な情報の爆発を防ぐことが出来る。

これから考えるべきこと

新しいネットワーク・メディアの成立 o  コミュニケーションと情報共有、自由時間の享受 への欲求は、現代のIT技術の普及をドライブする 最大のものである。 o  クラウドとクラウド・デバイスを骨組みとする、新し いネットワーク・メディアは、こうした欲求にドライ ブされて、来る10年の間には、世界人口のほと んど全てを包摂するものへと発展するだろう。 o  同時に、新しいネットワーク・メディア上のCyber 空間だけに、我々の生活やITの可能性が閉じる ことは無いという展望も重要なものだ。

CyberとPhysical o  情報だけのCyberな世界に閉じること無く、また、 道具や単純な機械だけのPhysicalな世界でもな く、CyberとPhysicalが相互作用するCyberPhysical の世界に、ITの世界は広がって行くだ ろう。 o  IoT / Big Data は、Physical à Cyber の情 報の流れを、Robot / 3D Printerは、Cyber à Physical な現実世界を変える働きの代表例であ る。

新しい経済のネットワーク o  Cyber-Physical Systemsが新たな役割を果た すことを期待される、もっとも広大な開拓地は、現 実世界の経済が有力な候補である。製造・流通・ 消費の全過程を包摂する、効率的で持続可能な、 新しい経済のネットワークが模索されるだろう。 o  とりわけ、ロボットや3Dプリンターの導入による、 製造の現場と労働の変化が、新しい経済のネット ワークの形成に、おおきなインパクトを与えるだろ う。

集中と分散 o  新しいネットワーク・メディアと新しい経済のネット ワークの形成の中で、データと処理の集中は、さ らに進むだろう。必ずしも、Big Brotherのような ディストピアを想像する必要は無いかもしれない。 それは処理コストを低減し、利便性を高める側面 を持つ。それらは、適切に管理されさえすれば、 低料金の社会インフラ化して行く可能性は高い。 o  同時に、ハードウェアの進化と低価格化により、 処理の自律分散化も、さらに進むだろう。それは、 システムを全体として、頑健なものに変える。

未来展望 -- 生産の自律分散化 o  おそらく、21世紀の最大の課題は、新しいネット ワーク・メディアと、新しい経済のネットワークのも とで、生産のスタイルを、持続可能な成長を保証 し、環境にインパクトを与えない自律分散型のモ デルに変革出来るのかというところにある。 o  明確なのは、それを推進する最も大きな力は、IT とその更なるイノベーションだということである。

マルゼミ予告  「3Dプリンターとロボットの世界」 o  来月8月1日開催のマルゼミは、今回のマルレ クを受けて、3Dプリンターとロボットを取り上 げます。是非、ご参加ください。 o  日時: 8月1日(金) 19:00~ o  場所: 秋葉原 カスペルスキー社 会議室 o  登壇者: 丸山不二夫 マルレクふりかえり  大迫幸一   「3Dプリンタの未来」 中川友紀子 「ロボットのいる生活とIT」

Cyber-Physical System.pdf

Loading… Page 1. Whoops! There was a problem loading more pages. Cyber-Physical System.pdf. Cyber-Physical System.pdf. Open. Extract. Open with.

11MB Sizes 5 Downloads 144 Views

Recommend Documents

No documents