ネットワークプログラミング講座

モバイルエージェント
モバイルエージェント












モーバイルエージェントとは
ソフトウエアで実現するエージェント
ソフトウェアエージェントの基本要素
モーバイルエージェントの利点
利点: 通信回数・遅延の低減化
利点: インテリジェントメッセージ
利点: 非同期実行・通信切断への対応
利点: 負荷分散・並列実行
利点: 情報・計算資源の獲得
モーバイルエージェントとは
モーバイルエージェントの関連研究
モーバイルエージェント技術の特徴
モバイルエージェント
モーバイルエージェントとは
コンピュータ間移動性をもつソフトウェアエージェント
エージェントは自律的に移動先(コンピュータ)を選択・移動
移動先において移動前の状態から処理を継続
移動
エージェント間通信
計算処理
ネットワーク
コンピュータA
コンピュータB
モバイルエージェント
ソフトウエアで実現するエージェント
ユーザの代理・支援するソフトウェア
 インテリジェントエージェント:
 知的行動: 推論、プランニング、学習ユーザ対話
 インターフェースエージェント
 ユーザ対話: ユーザへの情報指示、ユーザ情報の獲得
 マルチエージェント
 エージェント対話: 協調動作、共通オントロジー、交渉
 モーバイルエージェント
 コンピュータ間移動: 非同期実行、通信削減
モバイルエージェント
ソフトウェアエージェントの基本要素



代理性
 情報交換、交渉
 エージェントの自律性
 ユーザとの独立・非同期処理
高階計算(知性)
 推論
 プランニング
 学習行動
(移動性)
 移動による情報・資源獲得
モバイルエージェント
モーバイルエージェントの利点
通信回数・遅延の低減化
 インテリジェントメッセージ
 負荷分散・並列実行
 非同期実行
 通信切断への対応
 計算資源の獲得

モバイルエージェント
利点: 通信回数・遅延の低減化
エージェントが移動するときのみ
コンピュータ間通信を利用
エージェント移動
エージェント間通信
コンピュータ
コンピュータ
モバイルエージェント
利点: インテリジェントメッセージ
プログラマブル・メッセージ
エージェント自身が
移動先を決定・移動
コンピュータ
エージェント移動
コンピュータ
コンピュータ
モバイルエージェント
利点: 非同期実行・通信切断への対応
プログラム記述の単純化
時間的かつ空間的束縛からの解放
ネットワーク切断への対応(携帯端末・無線通信)
エージェント移動
コンピュータ
ネットワーク接続
コンピュータ
移動元とは
独立に処理
コンピュータ
ネットワーク接続
コンピュータ
モバイルエージェント
利点: 負荷分散・並列実行
エージェント移動
コンピュータ
コンピュータ
コンピュータ
コンピュータ
モバイルエージェント
利点: 情報・計算資源の獲得
移動先資源の直接制御・直接アクセスが可能
エージェント移動
情報・計算資源の獲得
コンピュータ
コンピュータ
エージェント移動
モバイルエージェント
モーバイルエージェントとは
自己完備の能動的計算実体
コンピュータ間を自律的移動
移動対象:プログラムコードと(部分的)実行状態
→ 移動先では移動前の状態から処理を継続
移動前の状態から
モーバイルエージェント
処理を継続
コード
モーバイルエージェント
モーバイルエージェント
実行状態
コード
コード
コンピュータ
実行状態
移動
コンピュータ
実行状態
移動
ただし、インテリジェント性は要求されることは少ない
モバイルエージェント
モーバイルエージェントの関連研究
Java言語によるもの
•Voyager (ObjectSpace社)
•Aglets (IBM社)
•Odessey (General Magic社)
•Mole (Stuttgart大)
・AgentSpace (お茶大)
Java言語以外によるもの
•Telescript (General Magic社)
•SafeTcl (Sun社)、
•Agent Tcl (Dartmouth大)
規格
Mobile Agent Facility Specification (OMG社)
Mobile Agent Specification (FIPA)
モバイルエージェント
モーバイルエージェント技術の特徴








コンピュータ間通信回数を削減
通信遅延が最小化
ネットワークが切断・不良時にも処理を継続
柔軟なシステム構成
セキュリティの向上
自律性
エージェント間通信
異機種間移動