自律分散協調システム論 慶應義塾大学環境情報学部 徳田英幸 中村 修
授業計画-2007 Spring 目標 社会、組織や情報環境において、分散された自律系主体とした新しいシステム構築が進んできている。 - 本講義では、このような自律分散システムが、個々の構成要素の自律性と、それらの要素間での協調を基に全体として、機能、性能、信頼性を向上していくシステムの概念、技術、方法、そして、その意味について学習する。
自律分散協調システムとは? システム内にシステム全体を制御/統治するスパーバイザは存在しない。 各サブシステムは、自律、分散した構成要素からなる。 全体のシステムの機能は、サブシステム間の協調作業によって遂行される。
基本的な概念 個の確立 主体的行動 多数の個 空間的・ネット的に分散 個と個の協調プロトコル 協調により全体の機能を維持・形成する 自律性 個の確立 主体的行動 分散性 多数の個 空間的・ネット的に分散 協調性 個と個の協調プロトコル 協調により全体の機能を維持・形成する 構成論的手法 vs. 自己組織論的手法 システムとしての評価 評価の軸 良いシステム vs. 悪いシステム
いろいろな系のシステム 本能・習性・利己的・環境対応 合目的的・人工的・科学技術対応 営利的・人間的・社会対応 生物系システム 工学系システム 合目的的・人工的・科学技術対応 社会学系システム 営利的・人間的・社会対応
社会学系システムにおける自律分散協調 サービス改善:行政システム・情報システム 企業の活性化:組織改革・地域産業 市場の開拓:流通機構・経済ブロック 人間性増幅:アメニティ・作業環境改善・多様性 社会問題解決:一極集中化回避・地域分散・大都市
生物系システムにおける自律分散協調 本能=種の保存・適応度の改善 数の効果 希釈効果 混乱効果 構造効果 役割分担 互恵利他行動 代替効果 免疫効果 情報提供 集団意思決定 バランス効果
自律分散協調システムの目的 機能拡大 コスト性能比の改善 分散処理による効率・サービスの改善 オンラインリアルタイム処理の実現 局所化による通信量の低減 構成要素のmモジュール化 拡張性の保証 集団組織の効率化 信頼性・耐故障性の改善 状況・環境変化への適応 生存可能性の増大
情報システムにおける自律分散協調論 情報システムにおける自律分散協調論 自律分散協調コンピューティング 工学的なシステムだけでなく、他の分野の自律分散協調システムシステムのデザイン、解析、評価に応用する。
情報システムにおける自律分散協調 自己組織性 創発のメカニズム アドホックネットワークプロトコル 自律ロボット/ネットワークロボット 新しいキーワード 自律分散協調システムのねらい 自己組織性 創発のメカニズム 自律分散協調プロトコル アドホックネットワークプロトコル 自律ロボット/ネットワークロボット p2pアプリケーション ソフトウェアエージェント Webサービス
基礎的な(システム的)枠組み ドメインスペシフィックな知識 自律分散協調システムを構築するには? 基礎的な(システム的)枠組み ドメインスペシフィックな知識 ドメインインディペンデントな知識
Network Robotの整列問題 ~ 事例1 ~
NR整列問題
NTT-Docomo i-mode Gateway ~ 事例2 ~
Centralized i-mode portal
集中型の問題点 単一故障 スケーラビリティ 応答性の低下 負荷分散の欠如 危機管理上の問題 顧客からのクレーム増 5,000万以上のclientに対応 応答性の低下 負荷分散の欠如
集中型のメリット ビジネスの独占 ビジネスモデルの創出 回線使用料の独占 セキュリティの向上 専用回線の利用 アカウンティングの容易性
Distributed i-mode Portal
分散型のメリット 新しいビジネスの導入 スケーラビリティの向上 応答性・ユーザビリティの向上 多機能端末 ビジネスモデルの創出 回線使用料の徴収モデル 個人から法人へ スケーラビリティの向上 i-mode portalの構造 応答性・ユーザビリティの向上 多機能端末 Universal controller型が可能
分散型の問題点 アカウンティング問題 新しいドコモボックスの開発 セキュリティの確保 多機能端末 回線使用料の徴収へのオーバヘッド 端末コストの増大
自律分散協調パラダイム
情報システムにおける自律分散協調 自己組織性 創発のメカニズム アドホックネットワークプロトコル 自律ロボット/ネットワークロボット 新しいキーワード 自律分散協調システムのねらい 自己組織性 創発のメカニズム 自律分散協調プロトコル アドホックネットワークプロトコル 自律ロボット/ネットワークロボット p2pアプリケーション ソフトウェアエージェント Webサービス
情報システムにおける自律分散協調 情報システムにおける自律分散協調モデル 自律分散協調コンピューティングのパラダイム 分散コンピューティング クライアントとサーバモデル 並行オブジェクト指向モデル 分散エージェント/マルチエージェント ネットワークアーキテクチャ 自律分散協調アルゴリズム 分散アルゴリズム 遺伝アルゴリズム ニューラルコンピューティング CSCWシステム p2pシステム
計算機システムの進化
計算機システム的な見方 単一システム 分散システム 並列システム 疎結合 vs. 密結合 複数のホスト ネットワークで接続 物理的な資源やサービスの共有 並列システム 疎結合 vs. 密結合 共有メモリ vs. 無共有メモリ
進化の流れ Application Application Web Service Application Web Server Middleware Middleware Middleware SW OS OS OS OS HW HW HW HW HW
疎結合: 分散システム
密結合: 並列システム
分散システムの歴史 目的 1970年代中期からスタート 性能の保証 拡張性 資源の共有 高信頼性 高稼働性 DCS (Dist. Computer Systems) at UC Irvine Mininet (U. of Waterloo) Kocos (Keio Oki Complex System) XEROX Alto (第一世代WS)
分散システムにおける透過性 アクセス透過性 位置透過性 並行透過性 複製透過性 障害透過性 移動透過性 性能透過性 規模透過性
情報システムにおける自律分散協調モデル システムアーキテクチャ的な見方 分散プログラム的な見方 基本的な概念 構成要素は何か? それらがどのように協調作業を進めるのか? 制御の流れ データの流れ メッセージの流れ
A bit of history
IT技術の進化 1970’s: コンピュータ中心主義の時代 1980-90’s: ネットワーク中心主義の時代 U-Japan:「いつでも、どこでも、何でも、誰でも」ネットワークに簡単に接続でき、それらが統合された新たなICT環境の整備によって、医療福祉や交通物流、環境・エネルギーといった国の課題が解決される社会
インターネットの進化 ~これまでの流れ~
インターネットの進化 70年代 80年代 90年代 00年代 オープンなインターネット、商用プロバイダ、WWWの出現 研究開発用ネットワーク ARPANET 80年代 TCP/IP 56Kbps -> T1 (1.5Mbps) CSNET, NSFNET 90年代 オープンなインターネット、商用プロバイダ、WWWの出現 93 Commercialization Plan 95 Privatization of NSFNET メディア空間の融合 Internet Fax, Internet Phone, Internet TV, Internet Car Internet Tuner Chip 00年代 ユビキタスネットワーク時代 あらゆるモノがシームレスにネットワークに接続
ユビキタスコンピューティング ~Mark Weiser’s Vision~
Mark Weiser’s Contribution
Mark’s vision and its gap Silicon-based information technology is still far behind than old technology, like writing using a pen! vs.
Mark Weiser’s Contribution(2) Ubiquitous 《形》 同時に至る所にある[いる];遍在する. しかし。。。彼の意図した本当の狙いは Zen Computing… Calm Computing
分散プログラム 並行プロセスと並行オブジェクト 慶應義塾大学環境情報学部 徳田英幸
情報システムにおける自律分散協調モデル システムアーキテクチャ的な見方 分散プログラム的な見方 基本的な概念 構成要素は何か? それらがどのように協調作業を進めるのか? 制御の流れ データの流れ メッセージの流れ
システムの構成要素と アーキテクチャ
システムの構成は? システムとは、複数の要素が組み合わさって、特定の目的を達成するように動作する系である。 システムアーキテクチャは、その構成要素の組み合わせ方式を示す E.g. System = a set of cooperating (sequential) processes System = a set of cooperating objects
システムアーキテクチャ いろいろなアーキテクチャ 構成要素: 階層型アーキテクチャ 抽象マシン型アーキテクチャ 。。。 サブシステム 構成要素: サブシステム モジュール
階層的なアーキテクチャ
ソフトウェアにおける階層構造とは? 動的なコール関係
分散プログラムのモデル 並行プロセスモデル 並行オブジェクトモデル 対象としているシステムのモデル化に適している。 Program = a set of cooperating (sequential) processes 並行オブジェクトモデル Program = a set of cooperating objects 対象としているシステムのモデル化に適している。 いくつかの分散・並行プログラミング言語も開発されている。
並行プロセス: プロセス間通信(1)
並行プロセス: プロセス間通信(2)
並行プロセス: プロセス間通信(3)
並行オブジェクト