Enabling real world Semantic Web applications through a

Enabling real world Semantic Web
applications through a coordination
middleware
Robert Tolksdorf, Lyndon J. B. Nixon, Elena Paslaru Bontas,
Duc Minh Nguyen, Franziska Liebsch
Free University of Berlin, Institute for Computer Science
AG Networked Information Systems
五十嵐 靖也 ([email protected])
株式会社 日本技芸
1 : Introduction

Semantic Web


実環境への応用



Webにおける大規模な分散環境に最適な、知識表現モデ
ルとテクニック
広範囲、低信頼性、不安定な環境
ストレージ、効率的な推論、スケーラビリティ、データ分類、
耐障害性、セキュリティ…
セマンティックウェブのためのコーディネートミド
ルウェアを提示
2 : Overview of the scenario

交通管理システムへの適用

Semantic Webの応用分野




グリッドコンピューティングシステム
マルチエージェントシステム
マルチエージェントシステムにおける例として
構成



動的エージェント(乗り物など)
静的エージェント(信号、メッセージシステム、センサなど)
中央データストア
2 : Overview of the scenario

仕組み
2 : Overview of the scenario

仕組み


センサエージェントが各々独立して交通データを取得
し、交通管理システムに送信
交通管理システムは、ルートデータと交通データを参
照し、交通制御を行う


ボトルネックになっている地点の、信号やメッセージシステ
ムに表示メッセージを送信する
動的エージェント(乗り物)から交通管理システムに接
続可能

インテリジェントなナビゲーションシステム
2 : Overview of the scenario

オントロジーの拡張


エージェントが新しい情報を利用するための推論を可
能にする
拡張シナリオ

乗り物、道路、行きたい地点についてのオントロジー
ベースの知識を加えられる


乗り物のタイプによる制限(トラクターは高速道路を走らな
い)
特定のサービスを効率よく受けられる(ガソリンスタンド
等)
3 : Requirements for Semantic
Web Technologies

Webベースアプリケーションと連携するSemantic
Webミドルウェアの要件




エージェントによる効率的な情報の公開・検索が可能な分
散構造
スケーラビリティ
高次の抽象化
エージェント間やエージェントとミドルウェア間の非同期イ
ンタラクションのサポート

各エージェントがフレキシブルで効率的に交通情報の公開と検
索を行うために、時間的、空間的に分離しているべき
4: Semantic Web Technologies
Today

Semantic Web



機械処理可能なデータのセマンティクスをベースにし
た自動的な情報へのアクセスの提供
特定の表現言語(RDF(S)、OWL)の実現
シナリオで利用可能か


OWLのような言語は“静的な”ドメインの知識の表現
は可能
一時的な情報等の“動的な”知識は、より表現力のあ
る技法を要求する
4: Semantic Web Technologies
Today

現在のセマンティックウェブアプリケーション



古典的なクライアント・サーバモデルと交換処理に基
づいている
交通管理システムでは、異なるコミュニケーションパ
ラダイムを必要とする
tuplespaceパラダイムによる“Semantic Web
Spaces”

スケーラブルなミドルウェアで実現可能なソリューショ
ン
5 : Linda and TupleSpaces

Linda


並列コンピューティングにおいて、コンカレントプログ
ラミングをシーケンシャルプログラミング言語に導入
するために開発された
データ(tuples)を含む共有されたデータスペース
(tuplespace)と、共有されたデータスペースで適用さ
れるコーディネート操作(コーディネート基関数)で構成
5 : Linda and TupleSpaces

tuple



tuplespaces


(”Bobby Bear”, GBP, 25.18)
(”Bobby Bear”, GBP, ?amount):テンプレート
共有されたデータスペース
コーディネート基関数
tupleをtuplespaceから
取り出したり投入したりする
ための操作セット

5 : Linda and TupleSpaces

Lindaの特徴




相互に作用する処理を、時間的、空間的に分離する
結合しやすいアドレシングを可能にする
tuplespaceによる抽象化による、非同期と並行性の
サポート
プラットホームやプログラミング言語の特性から、コー
ディネート実装を分離
6 : Semantic Web Spaces

Semantic Web Space


要求要件(確実性、スケーラビリティ、自己組織化、
コーディネーション)を満たすミドルウェア・プラット
フォーム
tuplespacesをWebに適用する際の要件





空間、セマンティクス、構造の命名
tuplesの入れ子構造
参照メカニズム
分離メカニズム
よりリッチな分類
6 : Semantic Web Spaces

Semantic Web Spaceでは、




tuple = RDFステートメント
tuplespace = RDFグラフ
tuplespaceの各tupleは3つに分類されたRDFs
を持つ(RDFトリプルのモデリング)
全てのRDFリソースがtupleフィールドにURIに
よって表される

tuplespaceのそれぞれのフィールド値はRDFタイプ
に関連づけられる
6 : Semantic Web Spaces

3つのRDFモデル化基関数



空白のノード(BlankNode)
 どんな形式のURI識別もないノード
 tuplespaceにある空白のノードを表現するために、tupleで具体
化され、内部的にユニークなURIの値を与える
コンテナとコレクション
 rdfs:Container (rdf:Bag, rdf:Alt, rdf:Seq):可変配列
 collection(rdf:List):固定配列
 BlankNodeかURIで参照することができ、rdfs:memberプロパ
ティのステートメントによるメンバと連携
具体化
 rdf:Statement、rdf:subject、rdf:predicate、rdf:object
 RDFが、別のステートメントのオブジェクトとして、ステートメント
をURIを同一に扱えるようにする
6 : Semantic Web Spaces

入れ子のtupleの使用


入れ子のtupleは、識別子としてグローバルなURIを
伴ったrdf:Statement
RDFSpaces, XMLSpaces



RDFSpaces:Semantic Web Spacesの原型
XML指向構文を利用する際に、XMLSpacesを参照
XMLSpaces:

tupleとtupleフィールドのタイプとしてXML文書の管理をサ
ポートする、LindaモデルのJavaと.NETによる実装
6 : Semantic Web Spaces

Semantic Web Spacesの構造
7 : Design of the Traffic
Management System

Lindaモデルに基づくシステムの設計




共通のデータ・ストア
複数のエージェント間の相互連携サポート
時間的、空間的なインタラクションと分離の調整
アーキテクチャ


直接エージェントがデータ・ストアとリンダの基関数を
使用することで対話可能
モジュール化されたシステムにより、どのような要求
を持ったエージェントでも直接利用可能
7 : Design of the Traffic
Management System
7-1 : Point of interest Use Case:
Getting to the nearest Esso station

要件



ユーザが何を求めているかを理解(ESSOとは何か)
それに関する情報(ESSOが位置している場所)に近
づく手段を持つ
ESSOが近くになかったら

推論:TOTALが近くにあるならユーザは問題にしない



ユーザはESSOの顧客カードを持っている
TOTALガソリンスタンドでもESSOのカードが使える
TOTALも近くになかったら

推論:ユーザは他のガソリンスタンドへ向かっても受
け入れる

ポイントはもらえないが、ガソリンを買うことができる
7-1 : Point of interest Use Case:
Getting to the nearest Esso station

Description Logics

エージェントからのルートリクエスト
7-1 : Point of interest Use Case:
Getting to the nearest Esso station

ルート設定システムでの処理

設定ルートの読み込み
7-2:Vehicle Use Case:
Routing a slow-moving truck


道路と乗り物の間の関連性によるルーティング
の最適化
ルーティングからの控除のためのメタデータ


乗り物のタイプと特性
道路タイプと特性
7-2:Vehicle Use Case:
Routing a slow-moving truck

乗り物と道路のオントロジー的知識のモデル化
7-2:Vehicle Use Case:
Routing a slow-moving truck

与えられたルートに対して

GPSとルートとのマッピング

矛盾の解決
7-3:Route Use Case: Checking
the traffic on the whole route

与えられた道路上にあるセンサを検索
現在の交通速度のステータスを確認

どのルートが最も速いかを確認しルーティング





動的エージェントが現地でtuplespaceをアップデート
トラフィックルータが、目的地へのルートを示すtupleをアップ
デート
動的エージェントとルートの特性は、ルート上で論理的な矛盾を
特定するのに使用
ルートの選択肢から、tuplespaceで表される交通状態を使用す
ることで最も迅速なルートを選択
8 : Conclusions and Future
Work

tuplespaceは、これまでの情報管理の代替手段
とWebとの相互作用モデルとして適している


セマンティックウェブによるtuplespacesの拡張


エージェントによる情報の公開・検索が、時間的・空
間的に分けられるため
Lindaモデルのスケーラビリティの問題や基関数に関
する改訂
SemanticWebSpace


システムのスケーラビリティにフォーカス
Lindaの基関数の再定義を今後行う