JP4403188B2 - クエリを配布する方法および装置 - Google Patents

クエリを配布する方法および装置 Download PDF

Info

Publication number
JP4403188B2
JP4403188B2 JP2007096385A JP2007096385A JP4403188B2 JP 4403188 B2 JP4403188 B2 JP 4403188B2 JP 2007096385 A JP2007096385 A JP 2007096385A JP 2007096385 A JP2007096385 A JP 2007096385A JP 4403188 B2 JP4403188 B2 JP 4403188B2
Authority
JP
Japan
Prior art keywords
relationship
query
entity
cost
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2007096385A
Other languages
English (en)
Other versions
JP2007282226A (ja
Inventor
クリスティアン・フランク
クリストフ・ロドゥナー
フリーデマン・マッテルン
チエ・ノダ
ヴォルフガンク・ケレラー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Docomo Inc filed Critical NTT Docomo Inc
Publication of JP2007282226A publication Critical patent/JP2007282226A/ja
Application granted granted Critical
Publication of JP4403188B2 publication Critical patent/JP4403188B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、多数のセンサが直接的にまたは中間ノードを介して相互に接続されている広域ネットワークインフラストラクチャにおいてクエリを配布する方法に関する。
センサネットワークは、広域ネットワークを介して多数のセンサを接続することができる。このような広域インフラストラクチャは、広範囲のエンドユーザサービスを実現するプラットフォームとして使用することができる。例えば、個人のモバイルデバイスが、電子的にタグ付けされたオブジェクトを感知および識別できるオブジェクトセンサを備えているかまたは該オブジェクトセンサへアクセスできると仮定すると、ユーザのパーソナルオブジェクトを追跡し、これらオブジェクトがいつどこでユーザのパーソナルスペースを離脱したかを記憶するタスクを該モバイルデバイスに課すことができる。センサネットワークと広域ネットワークインフラストラクチャとを仲介するこのようなモバイルデバイスは、ユビキタスゲートウェイ(GW)と呼ばれる。得られたこれらのデータは、後にユーザの個人的な所有物がどこにあるかを見つける助けとなる。他の例ではユーザは、個人的なアイテムへの注意を、オブジェクトセンサを備えた他の日常的なデバイスへローカルに委任することができる。例えば、レストランの中にあるハンガーは、ユーザのコートを保護することができ、列車の乗客は荷物を電子荷物保管室(smart baggage shelves)へ預けることができる。この電子荷物保管室は、旅行者が個人の所有物を置き忘れないことを確保する。大学または研究所では、オブジェクトセンサが(例えば、電子機器を使用して)研究所の入口に設置され、どのようなハードウェアがだれと一緒に入口を通過したかを追跡するために使用できる(このようにして、研究所のハードウェアの非常に直感的で簡単なチェックインおよびチェックアウトが可能になる)。
大規模分散(配布)システム、特に多数のセンサが相互に接続され、広域ネットワークインフラストラクチャを介して疎結合(loosely coupled)されているシステムでは、全ての利用可能なセンサの中の部分集合へのみクエリを配信(disseminate)し、効率的でスケーラブルなサーチを実行することが要求される。
出版購読型(Publish/subscribe)パラダイムは、一方ではオブジェクトおよびそれらの位置についてのクエリを発行する多数のクライアントと、他方では多くの異種のオブジェクトセンサとの間の対話の良好な機会を提供する。更に、このパラダイムはバックエンドサービスへ統合でき、例えばユーザのオブジェクトの履歴を記憶することができる。
出版購読型パラダイムは、疎結合アプリケーションとソフトウェアコンポーネントとが対話する分散(配布)システムで有用である。送信元によって発行されたメッセージは、メッセージとマッチする購読を有する購読者へイベントとして送信される。今日、広域ネットワークインフラストラクチャ、例えば、モバイルネットワークおよびインターネットによって相互に接続されたセンサネットワークが現れている。このセンサインターネットパラダイムにおいて、生成されるイベントおよび購読者の数は非常に多い。これは、ネットワークへ接続されている全てのセンサへクエリを配布することが容易ではないことを意味する。したがって、本発明の目的は、広域ネットワークによって接続された多数のセンサを効率的な方法で取り扱うことのできるメカニズムを提供することである。
イベントまたは購読のうちのいずれかまたは両方を実際のコンテンツに基づいてルーティングしようとするコンテンツベースの出版購読型システムがある。これらのシステムは、どのような種類のイベントがネットワークのそれぞれの部分で生成できるかを表現する集合述語(aggregate predicate)に購読がマッチする場合のみ、購読をネットワークの所与の部分へ転送することに基づいている。同様にイベントの転送は、どのような種類の購読がネットワークのそれぞれの部分に存在するかを表現する集合述語に基づいて制限することができる。このようなシステムは、例えば、非特許文献1に記載されている。
しかし、クエンチングと呼ばれ、集合述語に基づくこのような購読またはイベントフィルタリングは、呈示された「記憶および発見する」アプリケーションの中に存在する非常に単純なイベントおよび購読との間、すなわち、一方で「オブジェクト発見」というイベントと、他方で所与のオブジェクトの購読との重要な区別を実行することができない。本質的には、全てのオブジェクトセンサがオブジェクト発見イベントを生成し、全てのクライアントがオブジェクトを購読することができる。したがって、イベントまたは予約の異なったタイプを区別することができない場合、購読のタイプに基づいて購読の転送を制限すること、またはイベントのタイプに基づいてイベントの転送を制限することは、容易な解決法ではない。
B.Segall and D.Arnold. Elvin has left the building: A publish/subscribe notification service with quenching. In Proceedings of the 1997 Australian UNIX(登録商標) Users Group, Brisbane, Australia, Sept. 1997
一実施形態によれば、ネットワークインフラストラクチャにおいて、選択されたノードへ配布するべきクエリの配布範囲を決定する方法であって、ヒューリスティックスに基づいて肯定的なクエリ結果が期待されるノードへのみクエリを転送するために、前記ヒューリスティックスに基づいて前記クエリを配布するべきノードを選択するステップであって、前記ヒューリスティックスは、前記ネットワークのエンティティ間の関係として前記ヒューリスティックスを表現するコンピュータにより実現されたデータモデルを通して実現されるものであり、前記エンティティは前記ネットワーク内の要素または前記ネットワーク内のユーザであり、各々の関係は、ソースエンティティと1つ以上の宛先エンティティとを含むとともに、前記ソースエンティティに関連付けられた前記宛先エンティティの関連性に基づいたランク付けを提供するために、注釈されたウェイト属性またはコスト属性を有するものである、ステップと、より高い関連性を表すウェイト属性のノードが、より低い関連性を表すウェイト属性のノードよりも優先されるようにするために、前記関係のウェイト属性に基づいて前記クエリがディスパッチされるべきノードを選択するステップとを含む方法が提供される。
各々の関係に対してウェイトまたはコストが割り当てられ、ヒューリスティックスがネットワークのエンティティ間の関係として実現されることは、遺失オブジェクトについて知られている全ての事実または情報(例えば、ユーザが最後に遺失オブジェクトを見たのはどこか、ユーザは遺失オブジェクトを誰に手渡したかなど)をユーザが反復する方法に類似したやり方でこのようなヒューリスティックスを使用するとともに、失ったオブジェクトの発見への手がかりとして前記事実または情報を使用することによりノードを選択することを可能にする。したがって、ある関係は、オブジェクトの所在、すなわちオブジェクトが現在の位置へ達するまでそのオブジェクトが取った「パス」を構成する関係を介して表現される所在に関する情報の表現と考えることができる。その他の場合、「パス」は、オブジェクトが取った実際の物理的なパスではなく、幾つかのチェーン要素を介してオブジェクトの最初の位置と現在の位置とを論理的に接続する「アソシエーションチェーン」のような論理的なパスである。最初のエンティティから開始して、関係がトラバースされ、関係をトラバースするコストまたはウェイトが評価され、それにより事実の組み合わせとこれらの事実に関連付けられたウェイト(またはコスト)が「プローブ」され、所与のヒューリスティックスが使用された場合には到達するセンサノードのコストまたはウェイトが得られる。注意すべきは、関係をトラバースすることによって生成されたデータパスは、クエリがディスパッチされたときに該クエリが実際に移動するネットワークパスに必ずしも一致しないということである。むしろ、データパスは、次にクエリがディスパッチされるノードを明示することができる。
本発明の実施形態は、携帯電話機がユーザの(小型の電子タグが備えられている)オブジェクトを追跡し、これらオブジェクトに関連する有用なコンテキスト情報を配布し、オブジェクトを遺失または置き忘れたときにそのオブジェクトを見つけることができるアプリケーションシナリオを対象とする。実施形態に基づくアルゴリズムは、アプリケーションドメインのデータモデルとともにパラメータ化され、成功確率によってオブジェクトセンサをランク付けして、所与のタグ付きオブジェクトについてクエリを実行するタスクをオブジェクトセンサに課すことができる。基礎となるデータモデルは、エンティティのアソシエーション(例えば、オブジェクト間のアソシエーション、人間と社会の関係)と履歴データ(例えば、位置の履歴、ユーザ履歴)とに基づいてヒューリスティックスを表現するために用いられる。一実施形態においては、(所与のオブジェクトセンサにクエリする)成功確率だけではなく、クエリの配布および実行についての実際のコストも考慮される。これは、成功応答の前にクエリ配布によって生成される、期待されるコストを最小化するサーチをもたらす。
一実施形態によれば、前記方法は、(a)開始エンティティから開始して、前記関係により前記開始エンティティに関連付けられた前記宛先エンティティに基づいて前記クエリをディスパッチすることができる候補エンティティを決定するとともに、該候補エンティティに付随するコストまたはウェイトを決定するステップと、(b)前記コストまたは前記ウェイトに基づいて、クエリを転送すべき候補エンティティを選択するステップと、(c)前記候補エンティティを新たな開始エンティティとして使用し、前記候補エンティティを更なるエンティティに関連付ける関係に基づいて新たな候補エンティティを決定するステップと、終了条件を満たすまで前記ステップ(b)および前記ステップ(c)を反復するステップと含む。
新たな候補エレメントを発見するため(ソースから宛先まで)関係を反復してトラバースすることにより、ノードがデータモデルのエンティティを表すグラフが確立される。このグラフは、関連したコスト値およびウェイト値を有する候補エレメントをノードとして含んでいる。このようにして、終了条件を満たすまで候補ノードのリストを取得することができる。終了条件は、例えば、所与のコストのバジェットが全て使用されたこと、肯定的なクエリ応答が得られたこと、またはタイムアウトになったこととすることができる。
一実施形態によれば、前記方法は、ある関係のソースエンティティからその宛先まで関係をトラバースすることにより与えられるデータパスを、前記ソースエンティティから開始して追随することにより、前記ソースエンティティに基づくサーチグラフを生成するステップと、前記データパスを追随するときに到達した各々の宛先について累積ウェイトまたは累積コストを決定するステップと、ウェイトまたはコストに基づく前記ノードのランク付けに基づいて、前記ノードの累積ウェイトまたは累積コストに基づき前記クエリをディスパッチすべきノードを選択するステップとをさらに含む。
コストまたはウェイトの累積は、グラフの生成と、コストまたはウェイトの対応する変化とを追跡する。このようにして、取得されたノードがランク付けされ、クエリをディスパッチするために最も期待できるノードを選択することができる。
一実施形態によれば、前記クエリについてウェイトまたはコストのバジェットが定められており、前記方法は、最大のコストリミットに達したときに、前記ノードのサーチまたは前記クエリの配布を終了するステップを含む。
コストリミットは、クエリをディスパッチすべく選択されるノードの数を制限することができる。代替的には、肯定的なクエリ応答が得られたときに処理を中止することができる。
一実施形態によれば、前記ネットワーク内のエンティティは、割り当てられた1つ以上の関係を有することができるものであり、各々の関係は、ソースエンティティおよび1つ以上の宛先エンティティとして前記エンティティを含むことができるものであり、各々の関係は、ソースエンティティについての宛先エンティティの関連性に関する様々な情報を含む様々なヒューリスティックスを表すものである。
(ある関係におけるソースエンティティである)同じネットワークエンティティについての複数の関係は、様々なヒューリスティックスを表現することができる。この様々なヒューリスティックスは、宛先エンティティの関連性と、これら宛先エンティティのソースエンティティとの関係とに関する情報の様々なタイプを表すものである。
システムに含まれている同じエンティティ間の複数の関係は、様々なヒューリスティックスを表すことができる。様々なヒューリスティックスは、宛先エンティティの関連性と、これら宛先エンティティのソースエンティティとの関係とに関する情報の様々なタイプを表す。例えば、ユーザとセルとの間の関係は、セルプロファイル(ユーザは、どのセルで時間の大部分を費やすか)およびユーザ履歴(ユーザが最近どのセルを訪問したか)である。
関係自体は、ソースエンティティ(例えば、セル、ノード、ユーザ)を、1つ以上の宛先エンティティ(同様に、セル、ユーザ、ノード)と関連付ける一対多数 の関係を含むことができる。ここで、「宛先」という用語は、メッセージがこの宛先に到着することを必ずしも意味しておらず、サーチグラフを生成するために関係を追随またはトラバースする場合に、該関係のソースエンティティから該関係の1つ以上の宛先エンティティへの方向で行われることを意味する。
一実施形態によれば、前記関係は、オブジェクトがユーザへ関連付けられるオブジェクトアソシエーションと、オブジェクトが最後に発見されたセルの履歴をシステムが保持するオブジェクト位置履歴関係と、ユーザにより関連性のあるセルに関する情報をシステムが記憶するセルプロファイル関係と、ユーザが最近訪問した全てのセルをシステムが記憶するユーザ履歴関係と、セルに基づく位置モデルが近傍のセルの情報を提供できる近傍関係と、ユーザが他のユーザに関連付けられるユーザアソシエーションと、広域ネットワークインフラストラクチャがオブジェクトに関するイベントの履歴を記憶し、イベントを発行したゲートウェイにオブジェクトを関係づけるオブジェクトゲートウェイ履歴関係と、広域ネットワークインフラストラクチャが、ゲートウェイをそれらの現在のセルへ関係づけるデータベースを提供するゲートウェイレジストリ関係と、ユーザが或るゲートウェイと関連付けられるゲートウェイアソシエーション関係とのうちの1つ以上のタイプの関係を含むものである。
複数の関係は、複数の様々なヒューリスティックスを実現することができる。
一実施形態によれば、前記ネットワークは、電子的にタグ付けされたオブジェクトからの信号を感知する複数のセンサを接続するネットワークであり、前記センサは、ゲートウェイを介して前記ネットワークへ接続されるものであり、前記ゲートウェイ自体は前記ネットワークインフラストラクチャを介して相互に接続されるものであり、選択され、前記クエリが転送されるべきノードがゲートウェイであり、前記ゲートウェイは、クエリ結果を得るために前記クエリの受信に応じて前記センサにクエリするものである。
センサを通してタグ付けされたオブジェクトを突き止めるアプリケーションは、特に本発明の実施形態に基づくクエリスコーピングを適用するのに適している。センサはゲートウェイとして機能する携帯電話機で実現されるか、またはそのような携帯電話機に統合することができる。
一実施形態によれば、前記コストは、前記関係に割り当てられたコスト属性と、前記関係に割り当てられ、前記関係における宛先へ前記クエリを転送するときに肯定的なクエリ結果を発見する尤度を示す確率と、ネットワーク要素(すなわちオブジェクトセンサ、ゲートウェイ)にクエリするための通貨単位(monetary unit)の実際のコストとのうちの1つ以上により表現される。
注釈された値はコストまたは確率とすることができる。一実施形態によれば、確率はコストの関数として導くことができる。実際のコストを考慮に入れて、ネットワークの使用、サービスプロバイダのサービスなど、サービスから生じる実際のコストを勘案することができる。
一実施形態によれば、ある関係に割り当てられたコストまたはウェイトは、他の関係に対する該関係の優先度(preference)を示すものであり、ある関係に含まれる宛先にはランク付けパラメータが割り当てられ、その結果、宛先のコストまたはウェイトは、該関係に割り当てられたコストまたはウェイトと、宛先へ割り当てられたランク付けパラメータとに基づくものとなる。コストの場合にはコストが累積され、確率の場合には確率を掛け合わせることができる。
一実施形態によれば、前記ヒューリスティックスを実現する前記関係は、前記ネットワーク内のエンティティへ配布する方式で少なくとも部分的に記憶されるものであるか、および/または、クエリが配布されるべきノードを選択するアルゴリズムは、配布する方式で記憶された関係を使用することにより配布する方式で実行される。
ヒューリスティックスの配布によって、クエリスコーピングも配布する方式で実行することができる。データを配布して保存することにより、ユーザが手放したくないデータをユーザのデバイス、例えば、個人的なモバイルノードまたはゲートウェイだけに記憶することがさらに可能になる。
一実施形態によれば、配布されたクエリスコーピングは、ホップごとに減少したバジェットを割り当てることにより実現されるものであるか、または、中央のノードはバジェットを処理し、配布されたノードはアドホック方式で配布させるためのバジェットを保持する。
クエリスコーピングの配布は、ホップごとに減少したバジェットが割り当てられるように実現することができる。これにより、クエリスコーピングの間にバジェットを中央で管理する必要がなくなる。他の方法は、バジェットを中央で処理し、独立して機能する個々のノードへバジェットの一部分を割り当てることである。さらに想定されることとして、エンティティ間の関係に関連付けられた確率がホップごとに掛け合わされるように、配布を実現することができる。クエリの配布は、確率がある限度へ達したときに終了する。
一実施形態によれば、あるネットワークインフラストラクチャにおいて、選択されたノードへ配布するべきクエリの配布範囲を決定する装置であって、ヒューリスティックスに基づいて肯定的なクエリ結果が期待されるノードへのみクエリを転送するために、前記ヒューリスティックスに基づいて前記クエリを配布するべきノードを選択する手段と、前記ネットワークインフラストラクチャのエンティティ間の関係として前記ヒューリスティックスを表現するコンピュータにより実現されたデータモデルを通して前記ヒューリスティックスを実現する手段であって、前記エンティティは前記ネットワーク内の要素または前記ネットワーク内のユーザであり、各々の関係は、ソースエンティティと1つ以上の宛先エンティティとを含むとともに、前記ソースエンティティに関連付けられた前記宛先エンティティの関連性に基づいたランク付けを提供するために、注釈されたウェイト属性またはコスト属性を有するものである、手段と、より高い関連性を表すウェイト属性のノードが、より低い関連性を表すウェイト属性のノードよりも優先されるようにするために、前記関係のウェイト属性に基づいて前記クエリがディスパッチされるべきノードを選択する手段とを備える装置が提供される。
一実施形態によれば、本発明の実施形態に基づく方法を実行する手段を備える装置が提供される。
一実施形態によれば、コンピュータ上で本発明の実施形態に基づく方法を実行するコンピュータ実行可能なコードを含むコンピュータプログラムが提供される。
以下、主にセンサネットワークに関連する本発明の典型的な実施形態を説明する。しかし、本発明の原理は、他のアプリケーションシナリオにも同様に応用できる。
本発明の実施形態の説明をする前に、実施形態で使用する「ヒューリスティックス」という用語について説明する。一般的に、「ヒューリスティックス」とは、学習、発見または問題解決において人の注意を方向づける反復可能な方法またはアプローチであると言える。これは、「I find」と翻訳されるギリシャ語の「heurisko」に由来する。したがって、ヒューリスティックスは、問題を解決するための一種の戦略である。
コンピュータサイエンスにおいて、ヒューリスティックスは、問題を解決するために考案された手法である。この手法は、解決法が正しいかどうかを無視するが、通常は良好な解決法を生み出すか、または、より複雑な問題の解決を含むかまたは交差するより簡単な問題を解決する。したがって、ヒューリスティックスは、常にではないが通常、ほとんど正しい解答をもたらすかまたは与えるアルゴリズムと考えてよい。ヒューリスティックスは、可能性として正確度または精度のコストを犠牲にして計算のパフォーマンスまたは単純性を得るように意図されている。
多数のセンサが中間ゲートウェイを介して相互に接続されている大規模環境において、イベント(センサの読み取り)と購読者(これらの読み取りについてクエリを送信するコンポーネント)とのマッチングは、送信者、購読者または二者の間の中央仲介サービスのいずれによっても実行できない。したがって、一実施形態によれば、ヒューリスティックスに基づくクエリのスコーピングが使用される。クエリのスコーピングとは、クエリ(例えば、「あるアイテムの検索」)を、ネットワーク内の全てのセンサへ配布するのではなく、限られた数のセンサだけに配布することを意味する。後で説明する実施形態に基づくクエリのスコーピングは、イベントのソース(すなわち、オブジェクトセンサOSまたはユビキタスゲートウェイUG)の小さな部分集合を選択し、確率および実際のコストを考慮してクエリをディスパッチすることを可能にする。一実施形態におけるサーチアルゴリズムは、候補ゲートウェイをランク付けする。これは逐次的な処理を可能にし、所与の条件、例えばクエリが成功したときに打ち切ることを可能にする。
下記では、本発明の実施形態に基づくシステムを説明する。システムは、クエリをディスパッチすべきネットワークエンティティの適切な選択を可能にするクエリスコーピングを使用する。いわゆる「イベント購読者(event−subscriber)パラダイム」が適用される1つのシナリオにおいて、これは、イベントと購読者との間、すなわち、センサとセンサデータを求める所与のクエリとの間の十分かつ効率的なマッチングによって実現することができる。
一実施形態において、クエリスコーピングを使用できる可能なアプリケーションは、個人的なアイテムを遺失または置き忘れたときに、センサインターネットでそれを突き止める記憶発見(Remember and Find)アプリケーションである。日常のオブジェクト、例えば鍵、財布または傘は、小型の電子タグを備える。この電子タグは、短距離無線通信インタフェース、例えば、ZigBee(例えば、ZigBee Alliance、http://www.zigbee.org/en/index.aspを参照)およびNFC(例えば、Near Field Communication (NFC) Forum、http://www.nfc−forum.org/homeを参照)を介して、それらを見つけることを可能にする。
このようなタグを備えたオブジェクトは、以下タグ付けオブジェクト(TO)と呼ぶ。TOを感知および識別することができ、携帯電話に組み込むことのできるデバイスは、以下オブジェクトセンサ(OS)と呼ぶ。OSは、携帯電話を介して広域ネットワークと相互に接続されている。以下、OSと広域ネットワーク構造との間の仲介者として機能する携帯電話は、ユビキタスゲートウェイ(UG)と呼ばれる。一実施形態におけるシステムは、UGおよびOSが、ユーザおよびTOに関係した有用なコンテキスト情報を記録および配布することを可能にする。例えば、OSを備えたUGは、ユーザの個人的なオブジェクトを追跡し、いつどこで、およびどのような状況のもとで、オブジェクトがUGの通信範囲を離脱したかをモニタすることができる。このデータは、ローカルまたはグローバルに(すなわち、広域インフラストラクチャで)記憶可能であり、後にユーザがオブジェクトを突き止めることを助ける。
このようなシステムはヒューリスティックスを使用して、ユーザのサーチクエリ(すなわち、購読)を配布するOSおよびUG(すなわち、イベントソース)の部分集合を選択することができる。クエリのスコーピングは、多数のノードを使用し、その数が大きすぎて全ての可能なイベントソースへクエリを配布することができないアプリケーションによって使用することができる。センサネットワークまたはセンサインターネットは、センサノードの部分集合へクエリを配布するための、このようなクエリスコーピングのアプリケーションの1つの例である。ヒューリスティックスは、アプリケーションによって特定される方法とすることができる。例えば、前述したアプリケーションでは、ヒューリスティックスは、ユーザの選択によって動かされる個人的なオブジェクトの追跡方法とすることができる。
一実施形態によれば、システムは、オブジェクトをサーチするための配布された重要な情報、例えばアソシエーション(例えば、ユーザとオブジェクト、ユーザとユーザ、ユーザとゲートウェイ)と、位置プロファイル(ユーザの重要な位置)と、オブジェクト履歴(いつどこでそのオブジェクトを最後に見たか)とを記憶および提供する。一実施形態に基づくデータモデルは、クエリのスコーピングを決定するためヒューリスティックスとして使用されるこのような情報の間の複数の関係を表している。このデータモデルは、関係のタイプをウェイト(例えば、実際のコストおよび確率)で注釈することにより、広範囲の検索ストラテジーとユーザまたはサービスプロバイダの優先度(すなわち、ある優先順位に基づいてどの情報を使用するか)を表すために使用できる。一連のイベントソース(例えば、一実施形態ではOSおよびUG)へのクエリ配布に使用されるヒューリスティックスは、データモデル内の関係をトラバースすることに対応する。スコーピングのアルゴリズムは、ウェイトを考慮しながら全てのヒューリスティックスを追随し、コスト属性を含む部分的なサーチグラフを作り、より高い順位を有するイベントソースのリストで応答し、終了条件を満たしたとき、例えば、最大コストに達したときにサーチを終了する。
以下、本発明の一実施形態の一例として記憶発見アプリケーションのアーキテクチャを概説し、更にヒューリスティックスを表すデータモデルを概説する。ウェイトを考慮して、所与のデータモデル内の全てのヒューリスティックスを検索することによって、一連のゲートウェイへクエリを配布し、オブジェクトを突き止めるアルゴリズムを説明する。
既に簡単に説明した記憶発見アプリケーションは、多様なコンテキスト情報をセンサから得ることが必要である。UGにおけるセンサ情報の抽出は、ベーシックイベントソースと呼ばれる。所定の条件が検出されると(例えば、オブジェクトが範囲内または範囲外にあることが感知されると)、通知が生成される。通知は、多様なイベントソースによって記録された履歴値を含むことができる。UGのクエリサービス(これは、ユビキタスゲートウェイクエリサービスと呼ばれる)は、どのような条件が検出されるべきかと、どのような通知が生成されるべきかとを指定するために使用される。通知は、ユビキタスゲートウェイ(すなわち、携帯電話)を携行しているローカルユーザ、別の携帯電話を携行するリモートユーザまたはインフラストラクチャ内の適切なサービス(例えば、グローバルまたは個人的なデータベースのようなストレージサービス)へ送ることができる。
図1は、システムアーキテクチャの概観を示している。グローバルクエリマネージャは、イベントのルーティングおよび大規模なクエリ配布を提供する。
グローバルクエリマネージャがクエリを受信すると、サーチスコーププロバイダを使用し、クライアントアプリケーションの必要性に応じて最も適切なノードまたはユビキタスゲートウェイへクエリを中継する。一実施形態によれば、グローバルクエリマネージャは、更にアクティブなクエリを追跡し、クエリが満了するか、検索対象のタグ付けオブジェクトが発見されたときにクエリを削除することができる。基礎となるサービスインフラストラクチャの複雑性からアプリケーション開発者を守ることとは別に、グローバルクエリマネージャは、クエリを受信する当事者からクエリを開始する当事者を隔離する目的を果たす。モバイルオペレータは、例えば、一方ではセンスデバイスとして端末を提供するエンドユーザと、他方ではこれらのサービスを受ける他のエンドユーザとの間で信頼された仲介者として機能できる。これは、プライバシーおよびアカウンティングポリシーの効果的な実現を可能にする。インタフェースは、更にクライアントアプリケーションのクエリ動作によって発生したコストを監視および管理する方法をクライアントアプリケーションに提供する。
クエリ配布は、アソシエーションおよび履歴データに基づいてクエリスコーピングの様々なヒューリスティックス基準を実現するスコーププロバイダに基づいている。例えば、スコーププロバイダは、過去のオブジェクト位置に関する情報を含む個人的またはグローバルなデータベースに基づくことができ、オブジェクトが最後に発見された場所から検索を開始するヒューリスティックスを実現することができる。
異なるスコーププロバイダは、位置プロファイルを使用することができる。位置プロファイルは、ユーザが最も頻繁にいる位置を抽出し、これらの位置のセンサへクエリを導くことができる。スコーププロバイダの第3の例は、アソシエーションレジストリに基づくことができる。アソシエーションレジストリは、ユーザをそのオブジェクトへ関係づけるか、またはシステム内の他のUGへ関係づける。図1において、スコーププロバイダは、「ダイナミックスコーピング」と名前を付けられたボックスとして描かれ、それが異なるデータベース、例えば、マイデータベースおよびアソシエーションレジストリにアクセスできることが分かる。マイデータベースおよびアソシエーションレジストリは、クエリスコープを導くために使用される様々なヒューリスティックスを記憶することができる。
このようなスコーププロバイダは、ユーザのオブジェクトを求めるクエリを、関連付けられたUGおよび関連付けられたユーザのUGへ導くことができる。ここで、これらUGはオブジェクトを発見できる見込みがあると仮定する。言い換えれば、スコーププロバイダは、宛先ノードをどのようにして選択するかについてのヒューリスティックスを表す関係を使用し、前記ヒューリスティックスに基づいてクエリを転送するための候補宛先ノードを返却することができる。ここで、候補ノードは、後で更に明らかになるように、ランク付けスキーム、例えばそれら候補ノードの関連性、コスト、ウェイトまたは確率に基づいてランク付けできる。一実施形態によれば、スコーププロバイダは、ネットワークのエンティティによって実現できる。このエンティティは、1つ以上のデータベースに記憶された関係にアクセスおよび評価し、クエリされる候補ノードのリストを返却するように適切にプログラムされている。
図1において、スコーププロバイダおよびグローバルクエリマネージャは別個のエンティティとして示されているが、当業者は、これらが単一のエンティティによって実現できることを理解されたい。
1つ以上の中央データベースにアクセスするグローバルスコーププロバイダに加えて、ローカルスコーププロバイダをUGで実現することができる。これは、任意にローカルに配布されたクエリのスコーピングをサポートするためである。これは、図1において、ローカルなクエリスコーピングコンポーネントを含むユビキタスゲートウェイによって示されている。
既に言及したように、一実施形態によれば、ヒューリスティックスを使用して多数のUGおよびOSへクエリを配布することができる。UGおよびOSは、システム内のアソシエーションデータおよび履歴データに対して動作する。図2は、記憶発見アプリケーションおよびシステム内に含まれるエンティティ間の関係を表現する典型的なデータモデルを表している。図2において、エンティティは円によって示されており、関係は矢印によって示されている。矢印の方向は、サーチアルゴリズムを実行している間の遷移方向を示している。
ネットワークの「エンティティ」とは、例えば、ネットワークのノードであるが、ネットワークの他の要素、例えばセルまたはユーザとしてもよい。エンティティは、ネットワークへ直接属していない要素としてもよい。したがって、エンティティという用語は、比較的広い意味で理解しなければならない。エンティティは、ネットワークまたはそのユーザに少し関係を有する任意の要素、個人またはグループとすることができ、したがって、このエンティティを含む関係を提供することは意味があるかもしれない。エンティティは関係の一部分であり、そのエンティティは、この関係を介して直接に、または他のエンティティを中間に置いてネットワークへ関連づけられる。
他方、ノードは、ネットワークインフラストラクチャの要素、例えばルータ、ゲートウェイ、端末、携帯電話、その他のものとすることができる。
以下の関係が図2で表されている。各々の関係は、ウェイト属性により注釈付けがなされる。ウェイト属性は、関連付けられたエンティティの、関連性に基づくランクを提供することができる。
・オブジェクトアソシエーション: オブジェクトはユーザへ関連付けられる。ユーザは、オブジェクトの携行に費やした時間によってオブジェクトをランク付けすることができる(オプション)。
・オブジェクト位置履歴: システムは、オブジェクトが最後に発見されたセルの履歴を保持する。セルは、オブジェクトについての最後のレポートの時間に基づいてランク付けされる。
・セルプロファイル: システムは、ユーザについて、より関連性のあるセル、すなわちユーザが時間の大部分を費やしたセルに関する情報を記憶する。訪問の継続時間および頻度はランク付けに使用できる。
・ユーザ履歴: システムは、ユーザが最近訪問した全てのセルを記憶する。ユーザ履歴は、最後の訪問の時間によってランク付けされる。
・近傍: セルに基づく位置モデルは、近傍のセルの情報を提供することができる。ランク付けは、セル間の近接度のメトリックに基づく。
・ユーザアソシエーション: ユーザは他のユーザに関連付けられる。ランク付けは、ユーザがどれだけの時間を一緒に費やしたかに基づくことができる(オプション)。
・オブジェクトGW履歴: 広域ネットワークインフラストラクチャは、オブジェクトに関するイベント(すなわちレポート)の履歴を記憶することができる。この履歴は、レポートを発行したゲートウェイへオブジェクトを関係づけることができる。ゲートウェイは、オブジェクトの最後のレポートが出された後に経過した時間に基づいてランク付けすることができる。
・ゲートウェイレジストリ: 広域ネットワークインフラストラクチャは、ゲートウェイをその現在のセルに関係づけるデータベースを提供する。ランク付けは、ゲートウェイの間のロードバランスおよびゲートウェイのカバー範囲を考慮して行うことができる。
・GWアソシエーション: ユーザはあるゲートウェイに関連付けられる。
一実施形態によれば、ヒューリスティックスの全部または一部分のみが、クエリスコープを決定するために使用される。使用されるべきヒューリスティックスは、一実施形態によれば、ユーザの優先度に依存することができる。言い換えれば、ユーザは、使用されるべきあるヒューリスティックスを選択し、他のヒューリスティックスを選択しなくてもよい。
クエリを一連のゲートウェイへ配布するために使用されるヒューリスティックスは、図2における関係のトラバースに対応することができる。例えば、オブジェクトが過去に発見された位置の近くで突き止められるゲートウェイは、パス(オブジェクト−セル−GW)に対応する。更に複雑な例は、ユーザが多くの時間を費やし、関連付けられた別のユーザを介してオブジェクトのオーナーに関連付けられる位置の近くでユーザが突き止められるゲートウェイである。これは、パス(オブジェクト−ユーザ−ユーザ−セル−GW)に対応する。この場合、パスは、オブジェクトから、オーナーとは異なるユーザへ進み、そこからオーナーへ進み、次にセル(プロファイル)を通り、最後にゲートウェイに進む。注意しなければならないのは、適用できるヒューリスティックスが、遺失したオブジェクトを表すエンティティから始まり、GWタイプのエンティティで終わるということである。
ユーザ、アプリケーションプログラマまたはサービスプロバイダは、「ウェイト属性」または「コスト」により関係のタイプを注釈付けすることによって、ヒューリスティックスのどの組み合わせ(すなわち、どのパスまたはエンティティ間のどの関係)を使用するかの優先度を表現することができる。図3は、括弧の中にコストの注釈を有するパス、すなわちオブジェクト−セル−GWの例を示している。図3では、コストの注釈を伴わない他の使用されないヒューリスティックスが示されている。これらヒューリスティックスは、非常に大きいかまたは(ほぼ)無限のコスト属性を割り当てることができる(図3には示されていない)。このようなコスト属性は、これらヒューリスティックスが考慮されないという効果を有する。他の実施形態では、これらヒューリスティックスも考慮されるという効果を有するコスト属性を割り当てることによって、これらヒューリスティックスも使用することができる。実施形態に基づくヒューリスティックスの評価は、原理的には、関係によって定義される全てのヒューリスティックスを考慮できるが、幾つかのヒューリスティックスへ非常に高いコスト属性を割り当てることによって、これらのヒューリスティックスは、図3で示されているように効果的に「スイッチオフ」することができる。
ウェイト属性または「コスト」は、ある数値によって、異なる関係の間の優先度を表現する。それによって、異なるヒューリスティックス(すなわち関係)を、どのヒューリスティックスが他のヒューリスティックスよりも優先されるかに関して比較できる。各々の関係へ「ウェイト」を注釈することによって、より高い「ウェイト」を有する関係が、好ましくは他の関係に優先して追跡することができる。注釈された属性が「コスト」であれば、より高いコストを有する関係は、より低いコストを有する関係よりも優先度が下がる。
クエリをどこへ配布するかについてある意思決定を行うためのヒューリスティックスの適用は、関係を実際に「通過」または「トラバース」すること、すなわち2つのエンティティ間で、例えばあるノードから別のノード、あるノードからセル、または、あるノードからユーザなどの間である関係をトラバースすることによって実現できる。関係をトラバースする各々のそのような個々のステップは、前述したデータモデルによって実現されるあるウェイト属性またはコスト属性に対応し、したがって各々のトラバースするステップは、コスト属性またはウェイト属性を比較することによって、他の「競合する」トラバースステップと比較できる。可能な選択肢(異なるトラバースステップ)のウェイト属性またはコスト属性のそのような評価は、一実施形態によれば、クエリスコーピングを提供するために適用されるヒューリスティックスを実現する。好ましく見える関係(すなわち、宛先への転送)は、好ましくは見えない関係よりも優先して追跡され、このようにして行われるトラバースは、肯定的なクエリ結果が得られるまで、または(累積された)コストまたはウェイトが所定の最大値へ達するまで継続することができる。前述した全体の手順は、ソースエンティティ(例えば、検索対象のオブジェクト)から開始することができる。手順は、この開始点から選択された宛先までトラバースし、前述したような関係によって表されたヒューリスティックスを適用する。このようにして、手順は次にクエリが転送される宛先(すなわちゲートウェイ)を提供し、クエリがネットワークの有望なエンティティへのみ転送されるクエリスコーピングを提供する。
ここで注意すべきことは、関係をトラバースすることによって生成されたサーチグラフに沿った移動は、クエリを送るべきノードがいったん決定されてからクエリが実際に取るデータパスと実際には対応していないということである。むしろ、クエリは、一般的に全く異なるパスを取り、ユーザの端末(これは、サーチグラフを生成する開始点とは既に異なっているかもしれない)からディスパッチされ、任意のルーティングプロトコル、例えばTCP/IP、または他のルーティングプロトコル、例えばIPv6を使用して任意のパスに沿って送ることができる。しかし、関係をトラバースすることによって生成されたサーチグラフは、「プローブパス」または「評価パス」と考えることができ、これらパスは、このパスに含まれるノードへクエリを送るコストを評価するために追跡される。これらのパスは、オブジェクトとゲートウェイとの関連付けを定義する「アソシエーションパス」と考えられる。このアソシエーションパスに含まれるヒューリスティックスを使用する場合に期待される「次善最適性(suboptimality)」、すなわち成功結果を有するゲートウェイにおける探索がどの程度「確からしいか、または確からしくないか」を表現する。
一実施形態によれば、上記のモデル化されたデータの全て(ヒューリスティックスは、それらの上で動作する)は、バックエンドインフラストラクチャにあるデータベースで利用できる。この場合、検索のヒューリスティックスの適用は、利用可能なデータに対する宣言型クエリの形式で実現できる(宣言型クエリは、実際の検索クエリと混同してはならない。宣言型クエリはヒューリスティックスを実現するだけであり、実際の検索クエリをどこへ配布するかを決定する。実際の検索クエリは、ヒューリスティックスが適用されて目標となるノードが選択された後にディスパッチされる)。このような宣言型クエリは、クエリの中で与えられたデータパスに沿った検索クエリのトラバースを表す(例えば、「ホップ数4までの近傍にあるセル」または「アソシエーションホップ数3までのフレンドのフレンド」)。宣言型クエリは、対応するウェイト属性またはコスト属性を返却する。次に、ウェイト属性またはコスト属性が評価されて、実際の検索クエリがどの宛先へ転送すべきかを決定できる。そのような宣言型クエリは、例えば、Rakesh Agrawal and H.V.Jagadish.Direct algorithms for computing the transitive closure of database relations.in VLDB ’87:Proceedings of the 13th International Conference on Very Large Data Bases,pages 255−266,San Francisco,CA,USA,1987.Morgan Kaufmann Publishers Inc.に記載されている公知の技術を使用して実行できる。前述したように、バックエンドで全てのデータを有することは1つの可能性であり、他の可能性も存在する。特に、プライバシーに関心のあるユーザは、データのある部分を管理したいかもしれない。一実施形態において、これは、特に、ユーザのハンドヘルドデバイスに残すことができる位置プロファイルデータだけでなく、オブジェクトおよびユーザアソシエーションデータの場合である。プライバシーのほかに、他の理由が存在して、幾つかのソースまたはエンティティの間でデータを分割して維持することができる。
一実施形態によれば、各々の関係は、1対多数の関係をランク付けしたやり方で提供する軽量コンポーネントとして見なし、実現することができる。例えば、1つの所与のオブジェクト(ソースエンティティ)から開始して、オブジェクト−位置履歴型のコンポーネントは、オブジェクトが最後に発見されたn個のセル(宛先エンティティ)を生成する。1対多数の関係を実現するそのようなコンポーネントは、システム内の任意の場所、更にはユーザデバイスに置くことができる。
したがって、この実施形態において、図2の矢印で与えられている各々の関係は、1対多数の関係を有する。軽量の関係コンポーネントは、関係のランク付けを提供する。例えば、オブジェクト−位置履歴型のコンポーネントは、図4で示されているように、オブジェクトが最後に発見されたn個のセル(宛先エンティティ)を有する。
この実施形態においては、各々のソースエンティティ(例えば、各々のオブジェクト、ユーザ、セルなど)について関係インスタンスが存在し、状態(まだ検索されていない次の宛先エンティティへのポインタまたはカーソル)を維持する。ソースエンティティは、以下の説明から更に明らかになるようにネットワークを通るクエリのデータパスに対応するグラフのソースとすることができる。
一実施形態に基づくシステムは、次のメソッドをサポートする。
・init(e): 所与のソースエンティティに対して関係インスタンスを初期化する。
・pop−entity: 次の宛先エンティティを返却し、カーソル(現在のエンティティのポインタ)を次のエンティティへ移動する。
・has−entity: 他の宛先エンティティが存在するかどうかを返却する。
・peek−cost: 次の宛先エンティティに関連付けられたコストを返却し、カーソルを移動しない。
一実施形態において、図5で示されているように、オペレーション「peek costs」は、「current rank x costs」として実現することができる。更に粗い実現は、ランク付けに使用された属性を考慮することができる。時間についての例において、peek−costsは、可能性としてコストで重み付けがなされた対応するセルの中でオブジェクトが発見されてから経過した分数を返却することができる。以下の例では簡単な実装に制限する。
一実施形態によれば、異なる軽量の関係コンポーネントを組み込むことができる。以下では、2種類のコストが与えられる。
(1)ヒューリスティックスの次善最適性のコスト: 宛先エンティティ(例えば、オブジェクト位置履歴、近傍)タイプとしてゲートウェイを有さない関係コンポーネントのpeek−costs()は、検索に付加的な宛先エンティティを含むことの次善最適性を表現する。例えば、オブジェクトがずっと前に発見されたオブジェクト位置履歴セルは、結果を返却する確率が小さく、したがってオブジェクトが最近発見されたセルよりも高いコストを生じる。このようにして、低いpeek−costs()は、宛先エンティティが検索において助けとなる高い確率として解釈できる。
(2)ゲートウェイクエリの実際のコスト: 宛先エンティティタイプとしてのゲートウェイを有する関係コンポーネントは、それらのpeek−costs()メソッドの中であるゲートウェイにクエリする現実のコスト、すなわち後でユーザへ請求するコストを組み込むことができる。これは、1つのゲートウェイにクエリするときに生じる通信エフォートを反映するコスト単位とすることができるか、または各々のゲートウェイオーナーによって任意に設定することができる。
以下、前述した軽量の関係コンポーネントを使用する実施形態について説明する。グラフ探索ストラテジーを使用して、候補ゲートウェイの完全なランクを得ることができる。
開始エンティティe(一実施形態では、検索されるオブジェクト)が与えられると、アルゴリズム「オブジェクトサーチ」は、eへ関係づけられるエンティティのサーチグラフを(要求に応じて)生成する。これは次のようにして行われる。すなわち、開始エンティティeが与えられると、アルゴリズムは、eに関係づけられたエンティティのサーチグラフを生成する。各々のエンティティeには、集合Reが関連付けられる。集合Reは、eと他のエンティティとの間の1対多数の関係を表す多数の外向きの関係インスタンス{r1,r2,...}を含む(各々のrは、前述した軽量の関係コンポーネントに対応する)。
アルゴリズムは、対応するReの中で関係インスタンスを使用して生成されたエッジによって相互接続されるエンティティインスタンスの集合を生成する。例えば、オブジェクトタイプのエンティティeが与えられると、Reは3つの要素{r1,r2,r3}、すなわちオブジェクト位置履歴タイプと、オブジェクトアソシエーションタイプと、オブジェクトゲートウェイ履歴タイプとを有する。注意すべきは、更に、r.has−entity()が真である要素rのみをReが含むと仮定することができるということである。このようにして、Reは、図3でeのタイプを表すノードから外向きに示されている各々のエッジについて、高々1つの関係インスタンスを含むことができる。
生成されたサーチグラフGsは、ノード(エンティティ)と、(対応するReの中で関係インスタンスのr.pop−entity()メソッドへの呼び出しによって生成される)他のエンティティへ導く対応するエッジとから構成されている。このようにして、各々のエッジは、このエッジに寄与した1つの関係に対応する。図3で与えられている1つの例に基づく例示的なサーチグラフGsは、図6に示されている。注意すべきは、エンティティが異なる関係の中で複数回生じなければ、サーチグラフはツリーになるということである。
以下は、一実施形態に基づくアルゴリズムの疑似コードである。
Figure 0004403188
アルゴリズムは、ゲートウェイタイプのエンティティで終わるGs内の全ての可能なパスを探査し、これらのパスのコストを累積する。Gsの各々のエンティティeは、2つのコスト属性、すなわちcmin(e)およびcnext(e)が与えられる。属性cmin(e)は、エンティティeまでのGs内の最短パスを計算するために使用される。
minの更新は、各々のノードvの長さ属性l(v)に対してDijkstraの最短パスアルゴリズムで実行されるそれぞれの更新に効果的に対応している。Dijkstraのアルゴリズムの説明は、例えば、B.Korte and J.Vygen.Combinatorial Optimization:Theory and Algorithms,pages 141−142.Springer−Verlag,2nd edition,2002に記載されている。
しかし、Dijkstraのアルゴリズムと比較して、eへの最短パスが発見された後にエンティティeを無視することはできない。その代わりに、(他の関係エンティティへ導く)外向きの他のエッジが、サーチに関連するようになったとき、アルゴリズムは常にエンティティeを再処理する。このために、エンティティは第2の属性cnext(e)によって継続してソートされる。第2の属性cnext(e)は、(最初は)最短パスcmin(e)の長さに対応している。しかし、eの最初の子が生成された後、cnext(e)はeの追加の子エンティティへの最短パスを表すように上げられる。追加の子エンティティは、後の段階でeの関係を使用して生成される。
上昇するcnext(e)の順序に基づいてエンティティを処理するため、一実施形態によれば、ヒープデータ構造が使用される。ヒープデータ構造は、ヒープの中で最小のcnext(e)を有する要素eを検索するオペレーションdelete−minと、要素を挿入するオペレーションinsertとをサポートする。ヒープは、更にdecrease−keyオペレーションを介してcnext(e)の変更(減少)をサポートする。
以下、上記アルゴリズムの実際のステップについて検討する。空のヒープが作り出され、開始エンティティe(この場合、検索されるオブジェクトを表す)の属性cminおよびcnextの双方が0に設定され、eがヒープへ加えられる(第1〜3行)。それは、ヒープの中で最小のcnext属性を有するエンティティeに作用する(第5行)。eがゲートウェイタイプのエンティティであれば、それはクエリされて検索の中に含められる(第6〜8行)。eが、外向きの関係Reの空ではない集合を有するならば、ループの残り部分は、次の3つのステップを実行する(第9〜24行)。
・次の最小コストの子エンティティを検索する。このエンティティは、eから外向きの全ての関係の中で、最小のpeek−costsを有する(第10〜12行)。
・enの属性cminおよびcnextを更新し(第13、14行)、enをヒープへ加えるか(第19〜20行)、またはヒープ内でその位置を更新する(第16〜17行)。
・後の時点でeから生成できる次の最小コストの子エンティティを表すため、cnext(e)を上げてeをヒープへ再挿入する(第22、23行)。
注意すべきは、関係集合Reの要素が増加するコスト特性を有するため、第22行の項「min r.peek−costs()」は、第11行の対応するcnよりも大きいということである。これは、r.pop−entityへの呼び出しが、第12行で行われたからである。
図7は、アルゴリズム実行の典型的な点におけるcminおよびcnextの値を示している。3つのGWがクエリされてヒープから除去されている。なぜならば、それらは潜在的な子エンティティを残さないからである。セル1、セル11および検索対象のオブジェクト1は、依然として追加の子エンティティに寄与する。各々の関係を使用して次に加えられる候補エンティティは、破線のエッジおよび白のノードとして示されている。
第5行の反復の始まりを考える。図7で示されている状態が与えられると、第5行は、ヒープ上で最小のcnext(e)を有するエンティティ、この場合はセル1に対してeを設定する。次に、第10行で選択されたrのタイプは近傍であり、第11、12行で、enがセル12へ設定され、cnが8に設定される。このようにして、セル12がヒープへ加えられ、cnextおよびcminが第20行で18に設定される。最後にcnext(セル1)が更新され、次の最良の潜在的な宛先エンティティのコストを反映する(この場合、第22行で考慮されたr∈Reはゲートウェイタイプである。なぜならば、セル1の更なるGWの子はコスト19だからである)。このようにして、第22行でcnext(セル1)が19に設定され、第23行でセル1がヒープへ再挿入される。注意すべきは、cnext(e)が、最良の可能な宛先エンティティのcminとして解釈できるということである。この宛先エンティティは、まだ生成されていないが、ヒープ上に加えられるべきものである。更なる潜在的な宛先エンティティが存在しなければ、エンティティはヒープから除去される。
上記では、2種類のコストを紹介した。すなわち、ヒューリスティックスの次善最適性コスト(1種類目)およびゲートウェイクエリの実際のコストである。一実施形態に基づくアルゴリズムは、2種類のコストを次のようにして統合する。すなわち、ゲートウェイクエリ(2種類目)が次善最適性コスト(1種類目)と比較して安価であれば、サーチは確率が小さい位置を考慮する前に、最初の非常に確率が大きい位置で多数のゲートウェイにクエリする。幾つかのゲートウェイオーナーが、それらのゲートウェイのクエリについて、より高いコストを請求するのであれば、非常に確率の高い位置における高コストゲートウェイを含む前に、より小さい確率の位置における安価なゲートウェイを最初に考慮する。
次善最適性コスト(1種類目)が、宛先または子エンティティを探索する助けとなる確率の推定値として解釈できるならば、ユーザへ請求される、期待される総コストを最小化するものとしてアルゴリズムを検討することができる。以下、次善最適性コストのそのような再解釈に基づく実施形態を説明する。
これまで、要求に応じて子ノードを加えることによって、関係コンポーネントがどのようにしてアルゴリズムのサーチツリーを構築するかを説明した。その場合、図8(a)に示されているように、エッジは次善最適性コストおよび実際のコストでラベル付けがなされる。以下、図8(b)に示されているように、サーチツリーのエッジを確率推定値でラベル付けすることによって、提示したアルゴリズムを示す。これまで取られたパスが正しいものと仮定して、エッジラベルは、検索されるオブジェクトを発見するGWへエッジを導く確率として解釈できる。エッジコストの合計を計算する代わりに、修正されたアルゴリズムは、エッジ確率の積を計算し、ゲートウェイegwの確率P(egw)を決定する。
この実施形態において、軽量の関係コンポーネントのインタフェースメソッドpeek−costは、メソッドpeek−probabilityによって置き換えられる。メソッドpeek−probabilityは、これまで取られたパスが正しいものと仮定して、関係インスタンスによって指示された子エンティティが検索の成功に寄与するものとなる確率を推定する。
r: 関係コンポーネント
s: ソースエンティティ
{t}: 宛先エンティティのリスト
P(t|s,r): 所与の宛先エンティティtが成功パスの上にある条件付き確率。ただし、ソースエンティティsは、このパスの一部分であると仮定し、rはsからtへ導く選択された関係であると仮定する。
rank(t): 目標エンティティのランク
図8(c)に示されている推定値P(t|s,r)の簡単な実現方法は、次のとおりである。
Figure 0004403188
もちろん、より複雑な実現方法、例えば、時間属性に基づく実現方法もある。
P(t|s,r)を使用してP(t,r|s)を導くことができる。P(t,r|s)は、tがrを介する成功パスの上にある確率を示す。ただし、このパスはsを通過するものと仮定する。ベイズの定理によって次式が得られる。
Figure 0004403188
P(r)を使用して、関係コンポーネントrが検索で成功する一般的な推定値を表すことができる。P(r)は、例えばrの使用に関する優先度を表現するユーザによって、簡単に設定することができる。例えば、ユーザが、オブジェクト位置履歴が重要であると考えるならば、ユーザは対応するP(r)を1へ設定することができる。P(r)は、更にコストcrから推定できる。例えば、P(r)は次のように定義可能である。
Figure 0004403188
ここで、Reがeから外向きである関係の集合を表す。図3の最初の例が与えられると、次式が得られる。
Figure 0004403188
注意すべきこととして、次の実施形態では、ただ1つの関係rがsからtに導き、したがって関係rから独立した項P(t|s)が使用され、P(t|s)=P(t,r|s)に設定されるものと仮定する。実施形態において、結果のP(t|s)は、以下説明するように使用されてリーフ(ゲートウェイ)の成功確率を推定する。ここで、図9で示されているように、開始エンティティ(サーチツリーのルート)eobjから目標ゲートウェイ(リーフ)egwまでのパスを考える。
パス上の各々の関係コンポーネントrkは、条件推定値P(ek|ek+1)を生成する。確率P(e1...ek)は、(r1...rk)が成功パスである確率を表す。最初のk個のステップでは、条件付き確率にベイズの定理を適用し、最後のステップでは、確率P(eobj)は1に等しいと単純に仮定する。修正されたアルゴリズムでは、増加する総コストの順序でパスを処理する代わりに、減少する成功確率の順序でパスを処理する。
Figure 0004403188
関係コンポーネントrkの一般的な推定値を使用して、次のように成功パスの確率を再び定式化することができる。
Figure 0004403188
修正されたアルゴリズムにおいては、増加する総コスト(すなわちエッジコストの合計)の順序でパスを処理する代わりに、減少する総コスト(すなわちエッジ確率の積)の順序でパスを処理する。図8に示されているように、パスの中の最後の関係rgwは、成功確率によって候補ゲートウェイをランク付けしないで、ゲートウェイクエリの実際のコストによってランク付けをする。これらのコストはc(egw)によって表されている。
注意すべきこととして、パスel...ekが成功する場合の確率P(el...ek)は、次式のように記述することができる。なぜなら、パスを下る子および全てのノードが成功すると仮定して、ノードが成功パスの上にある確率P(ej|ej+1...ek)は、定義により1だからである。
Figure 0004403188
最後の関係rgwによって定義される実際のクエリコストが与えられるとすれば、修正されたアルゴリズムの目的は、成功しないパス上にあるゲートウェイにクエリするコストを最小にすることである。
ゲートウェイegwへのパスの期待される不要コストは、次式のようになる。
Figure 0004403188
修正されたアルゴリズムは、増加する不要コストの順序でゲートウェイにクエリする。すなわち、最高の成功確率を有する最も安価なゲートウェイに最初にクエリする。
この後、前述したコストに基づくアルゴリズムを、どのようにして修正し、増加する不要コストの順序でゲートウェイにクエリするかについて説明する。前述した最初のアルゴリズムとの相違は、ツリーのリーフを処理するステップ4と5である。ゲートウェイにクエリする最小の(実際の)コストをclowで表すことにする。
ステップ1: ヒープの中でソートされたエンティティの空集合から開始する。エンティティは、減少する成功確率の順序にソートされる。
ステップ2: 各々のステップにおいて、ヒープの中で最大のP(e)を有するエンティティeを考える。ヒープからeを除去し、最大のP(e’|e)を有する子エンティティe’に寄与する関係を使用して子エンティティe’を生成する。
ステップ3: e’がゲートウェイでなければ、P(e’)=P(e’|e)P(e)を計算し、ウェイトP(e’)と共にe’をヒープへ加える。eが追加の子エンティティに寄与するならば、最大のP(e*)を有する次の1つのe*を発見する。
ステップ4: e’がゲートウェイであれば、それを別個のソートされた集合Gへ加える。Gは、期待された不要なコストE(e’)によってソートされる。
ステップ5: 各々のステップの終わりに、検索されなかった最大のP(e)を有するエンティティeを考える。eの潜在的な子e’は、より小さい成功確率P(e’)を有するであろう。なぜなら、それは追加の因数∈(0,1)で掛け算されるからである。アルゴリズムは、より小さい不要なコストを有する他のゲートウェイが発見されそうもないGからのゲートウェイの部分集合にクエリし、クエリされたゲートウェイをGから除去する。
注意すべきは、ゲートウェイでクエリする実際のコストを考慮しないで、より単純なアルゴリズムがステップ5の間に成功確率のみを使用できるということである。候補ゲートウェイは、パスの他の部分と同じようにしてランク付けすることができる。この場合、アルゴリズムは、減少する成功確率の順序でゲートウェイにクエリする。
上述したアルゴリズムは、集中方式による広域インフラストラクチャ内のクエリスコーピングに使用できる。他の実施形態によれば、GWおよびOSの間のローカルクエリ配布について、このアルゴリズムの適応化を使用する。この実施形態において、クエリがゲートウェイに導入されるとき、クエリは制限されたバジェットを有する。バジェットは、ゲートウェイのオーナーによって設定される実際のクエリコスト、その場限りの通信コスト、および次善最適性コスト(例えば、これらのコストのローカルな近似値)と共に減少する。ローカルな近似値は、例えば、ゲートウェイ上のローカルアソシエーション、ローカル履歴(例えば、オブジェクトがn分前に発見された)、または近傍の通信範囲に基づくことができる。このようにして、クエリスコーピングは配布形式で実現できる。
これまで、本発明について典型的な実施形態により説明した。しかし、当業者は、本発明の範囲から逸脱することなく実施形態の修正が可能であることを容易に理解されたい。
特に、実施形態は、可能性として遺失したあるオブジェクトを突き止めなければならないアプリケーションのクエリに関する。しかし、例えば1つ以上のセンサを探すときのように、他のアプリケーションシナリオを困難なく想像することができる。このようなセンサは、例えば、天候を監視しており、ある区域での天候の予測に有用なデータを提供するであろう。この場合、開始ノードは、天候が予測される区域のセンサであってよく、関係は、天候の影響の相互依存性を表現することができる。このようにして、開始センサが置かれた領域の天候を予測しなければならないとき、関係のトラバースが、クエリに有用な候補センサを生み出すことができる。類似したアプリケーションが、他のセンサネットワークシナリオでも同様に想像することができる。
しかし、更にセンサ以外のネットワークのあるサービスノード、例えば、ダウンロードされるある関連データが記憶されるウェブサーバを探すためにシステムを応用できる。そのような場合、開始ノードは、検索されるデータが置かれていると想定されるウェブサーバとすることができ、ヒューリスティックスは他のウェブサーバへの関係を表現する。このようなウェブサーバは、それらのウェイトまたはコストに依存して、ダウンロードされるデータの成功した検索に寄与する。
説明してきたシステムは、更に製品の広告に応用することができる。この場合、開始ノードは、目標にするユーザであり、宛先ノードは、ユーザが購入を勧誘される製品である。そのようなシステムでは、次のような関係が想定できる。すなわち、(ユーザを前の購入製品へ関係づける)ユーザの購買履歴、ある製品が他の製品の適切な付属品であるかどうかを記述する製品対製品の関係、ユーザの購買習慣の間の類似性を表現するユーザ対ユーザの関係、更にはユーザ対ユーザのアソシエーション(例えば、家族、友人の間)、または製品のある特徴関係(製品対製造業者の関係、書籍対著者の関係など)である。アプローチは、オンラインショッピングのために、製品推奨の異なるヒューリスティックス(更に、存在する協調的なフィルタリング手法を組み込んだヒューリスティックス)をテストし、組み合わせる強力なパラメータ化手法を提供できると言える。説明してきたシステムは、データベースが複数のデバイスにわたって配布される可能性が大きいモバイルデバイスと共に使用されるとき、特に有用であろう。更にAIアプローチ(例えば、強化学習)を使用して各々の関係タイプに関連付けられた実際のウェイトを適応化し、所与のユーザに対して良好に働くヒューリスティックスを強化することができる。代替的には、所与の広告される製品が開始ノードとして使用されるならば、アルゴリズムを使用して、この製品を広告するのに最も有望なユーザを決定することができる。
一般的に言えば、関係を通して定義されたヒューリスティックスの適用に基づいて、メッセージの転送により肯定的な結果が返却されることが期待されるエンティティのみを宛先エンティティとして選択するために、本発明に係る方法および実施形態をネットワーク内のメッセージの配布範囲の決定に応用できる。この肯定的な結果は、クエリ結果、成功した商取引の結果、サービスの成功した検索その他を問わない。
更に、これまでの説明と関連して説明し、記載した方法および装置は、ソフトウェア、ハードウェアまたはこれらの組み合わせで実現できることは当業者に明らかであろう。特に、ネットワーク要素またはエンティティ、例えばノード、ゲートウェイまたはセンサは標準的なコンポーネントを使用して実現でき、これら標準的なコンポーネントは、これまでに説明した操作に基づいて動作するように適切にプログラムできる。
本発明の実施形態に基づくシステム構成を概略的に示す図である。 本発明の実施形態に基づくデータモデルを概略的に示す図である。 図3に示されているデータモデルに対応して、注釈されたコストまたはウェイトを有するパスを概略的に示す図である。 本発明の実施形態に基づく関係を概略的に示す図である。 本発明の実施形態に基づくアルゴリズムの実行を概略的に示す図である。 本発明の更なる実施形態に基づくアルゴリズムの実行を概略的に示す図である。 本発明の実施形態に基づくアルゴリズムの実行を概略的に示す図である。 本発明の更なる実施形態に基づくアルゴリズムの実行を概略的に示す図である。 本発明の更なる実施形態に基づくアルゴリズムのスキーマを概略的に示す図である。

Claims (13)

  1. あるネットワークインフラストラクチャにおいて、選択されたノードへ配布するべきクエリの配布範囲を決定する方法であって、
    ヒューリスティックスに基づいて肯定的なクエリ結果が期待されるノードへのみクエリを転送するために、前記ヒューリスティックスに基づいて前記クエリを配布するべきノードを選択するステップであって、前記ヒューリスティックスは、前記ネットワークのエンティティ間の関係として前記ヒューリスティックスを表現するコンピュータにより実現されたデータモデルを通して実現されるものであり、前記エンティティは前記ネットワーク内の要素または前記ネットワーク内のユーザであり、各々の関係は、ソースエンティティと1つ以上の宛先エンティティとを含むとともに、前記ソースエンティティに関連付けられた前記宛先エンティティの関連性に基づいたランク付けを提供するために、注釈されたウェイト属性またはコスト属性を有するものである、ステップと、
    より高い関連性を表すウェイト属性のノードが、より低い関連性を表すウェイト属性のノードよりも優先されるようにするために、前記関係のウェイト属性に基づいて前記クエリがディスパッチされるべきノードを選択するステップと
    を含む方法。
  2. (a)開始エンティティから開始して、前記関係により前記開始エンティティに関連付けられた前記宛先エンティティに基づいて前記クエリをディスパッチすることができる候補エンティティを決定するとともに、該候補エンティティに付随するコストまたはウェイトを決定するステップと、
    (b)前記コストまたは前記ウェイトに基づいて、クエリを転送すべき候補エンティティを選択するステップと、
    (c)前記候補エンティティを新たな開始エンティティとして使用し、前記候補エンティティを更なるエンティティに関連付ける関係に基づいて新たな候補エンティティを決定するステップと、
    終了条件を満たすまで前記ステップ(b)および前記ステップ(c)を反復するステップと
    を含む請求項1に記載の方法。
  3. ある関係のソースエンティティからその宛先まで関係をトラバースすることにより与えられるデータパスを、前記ソースエンティティから開始して追随することにより、前記ソースエンティティに基づくサーチグラフを生成するステップと、
    前記データパスを追随するときに到達した各々の宛先について累積ウェイトまたは累積コストを決定するステップと、
    ウェイトまたはコストに基づく前記ノードのランク付けに基づいて、前記ノードの累積ウェイトまたは累積コストに基づき前記クエリをディスパッチすべきノードを選択するステップと
    をさらに含む請求項1または2に記載の方法。
  4. 前記クエリについてウェイトまたはコストのバジェットが定められており、
    最大のコストリミットに達したときに、前記ノードのサーチまたは前記クエリの配布を終了するステップ
    を含む請求項1〜3のいずれか一項に記載の方法。
  5. 前記ネットワーク内のエンティティは、割り当てられた1つ以上の関係を有することができるものであり、
    各々の関係は、ソースエンティティおよび1つ以上の宛先エンティティとして前記エンティティを含むことができるものであり、
    各々の関係は、ソースエンティティについての宛先エンティティの関連性に関する様々な情報を含む様々なヒューリスティックスを表すものである、
    請求項1〜4のいずれか一項に記載の方法。
  6. 前記関係は、
    オブジェクトがユーザへ関連付けられるオブジェクトアソシエーションと、
    オブジェクトが最後に発見されたセルの履歴をシステムが保持するオブジェクト位置履歴関係と、
    ユーザにより関連性のあるセルに関する情報をシステムが記憶するセルプロファイル関係と、
    ユーザが最近訪問した全てのセルをシステムが記憶するユーザ履歴関係と、
    セルに基づく位置モデルが近傍のセルの情報を提供できる近傍関係と、
    ユーザが他のユーザに関連付けられるユーザアソシエーションと、
    広域ネットワークインフラストラクチャがオブジェクトに関するイベントの履歴を記憶し、イベントを発行したゲートウェイにオブジェクトを関係づけるオブジェクトゲートウェイ履歴関係と、
    広域ネットワークインフラストラクチャが、ゲートウェイをそれらの現在のセルへ関係づけるデータベースを提供するゲートウェイレジストリ関係と、
    ユーザが或るゲートウェイと関連付けられるゲートウェイアソシエーション関係と
    のうちの1つ以上のタイプの関係を含むものである、
    請求項5に記載の方法。
  7. 前記ネットワークは、電子的にタグ付けされたオブジェクトからの信号を感知する複数のセンサを接続するネットワークであり、
    前記センサは、ゲートウェイを介して前記ネットワークへ接続されるものであり、
    前記ゲートウェイ自体は前記ネットワークインフラストラクチャを介して相互に接続されるものであり、
    選択され、前記クエリが転送されるべきノードがゲートウェイであり、
    前記ゲートウェイは、クエリ結果を得るために前記クエリの受信に応じて前記センサにクエリするものである、
    請求項1〜6のいずれか一項に記載の方法。
  8. 前記コストは、
    前記関係に割り当てられたコスト属性と、
    前記関係に割り当てられ、前記関係における宛先へ前記クエリを転送するときに肯定的なクエリ結果を発見する尤度を示す確率と、
    ネットワーク要素にクエリするための通貨単位の実際のコストと
    のうちの1つ以上により表現されるものである、
    請求項1〜7のいずれか一項に記載の方法。
  9. ある関係に割り当てられたコストまたはウェイトは、他の関係に対する該関係の優先度を示すものであり、
    ある関係に含まれる宛先にはランク付けパラメータが割り当てられ、その結果、宛先のコストまたはウェイトは、該関係に割り当てられたコストまたはウェイトと、宛先へ割り当てられたランク付けパラメータとに基づくものとなる、
    請求項1〜8のいずれか一項に記載の方法。
  10. 前記ヒューリスティックスを実現する前記関係は、前記ネットワーク内のエンティティへ配布する方式で少なくとも部分的に記憶されるものであるか、および/または、
    クエリが配布されるべきノードを選択するアルゴリズムは、配布する方式で記憶された関係を使用することにより配布する方式で実行されるものである、
    請求項1〜9のいずれか一項に記載の方法。
  11. 配布されたクエリスコーピングは、ホップごとに減少したバジェットを割り当てることにより実現されるものであるか、または、
    中央のノードはバジェットを処理し、配布されたノードはアドホック方式で配布させるためのバジェットを保持するものである、
    請求項10に記載の方法。
  12. あるネットワークインフラストラクチャにおいて、選択されたノードへ配布するべきクエリの配布範囲を決定する装置であって、
    ヒューリスティックスに基づいて肯定的なクエリ結果が期待されるノードへのみクエリを転送するために、前記ヒューリスティックスに基づいて前記クエリを配布するべきノードを選択する手段と、
    前記ネットワークのエンティティ間の関係として前記ヒューリスティックスを表現するコンピュータにより実現されたデータモデルを通して前記ヒューリスティックスを実現する手段であって、前記エンティティは前記ネットワーク内の要素または前記ネットワーク内のユーザであり、各々の関係は、ソースエンティティと1つ以上の宛先エンティティとを含むとともに、前記ソースエンティティに関連付けられた前記宛先エンティティの関連性に基づいたランク付けを提供するために、注釈されたウェイト属性またはコスト属性を有するものである、手段と、
    より高い関連性を表すウェイト属性のノードが、より低い関連性を表すウェイト属性のノードよりも優先されるようにするために、前記関係のウェイト属性に基づいて前記クエリがディスパッチされるべきノードを選択する手段と
    を備える装置。
  13. コンピュータ上で請求項1〜11のいずれか一項に記載の方法を実行するコンピュータ実行可能なコードを含むコンピュータプログラム。
JP2007096385A 2006-03-31 2007-04-02 クエリを配布する方法および装置 Active JP4403188B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP06112140A EP1841178B1 (en) 2006-03-31 2006-03-31 Method and apparatus for distributing a query

Publications (2)

Publication Number Publication Date
JP2007282226A JP2007282226A (ja) 2007-10-25
JP4403188B2 true JP4403188B2 (ja) 2010-01-20

Family

ID=36758621

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007096385A Active JP4403188B2 (ja) 2006-03-31 2007-04-02 クエリを配布する方法および装置

Country Status (3)

Country Link
EP (1) EP1841178B1 (ja)
JP (1) JP4403188B2 (ja)
DE (1) DE602006008575D1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2088750A1 (en) * 2008-02-08 2009-08-12 NTT DoCoMo, Inc. Global query manager and ubiquitous gateway for object search
EP2088749A1 (en) * 2008-02-08 2009-08-12 NTT DoCoMo, Inc. Ubiquitous gateway and/or global query manager for querying an object in a mobile communication network
EP2337280A1 (en) 2009-12-21 2011-06-22 Thomson Licensing Method to manage an opportunistic communication network
US8068011B1 (en) 2010-08-27 2011-11-29 Q Street, LLC System and method for interactive user-directed interfacing between handheld devices and RFID media
EP2696298B1 (en) * 2011-04-05 2017-07-12 Nec Corporation Information processing device
US8943042B2 (en) * 2011-12-20 2015-01-27 Sap Portals Israel Ltd Analyzing and representing interpersonal relations
US9501503B2 (en) 2013-05-09 2016-11-22 Microsoft Technology Licensing, Llc Inferring entity attribute values

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6807546B2 (en) * 2002-08-12 2004-10-19 Sybase, Inc. Database system with methodology for distributing query optimization effort over large search spaces

Also Published As

Publication number Publication date
DE602006008575D1 (de) 2009-10-01
EP1841178A1 (en) 2007-10-03
EP1841178B1 (en) 2009-08-19
JP2007282226A (ja) 2007-10-25

Similar Documents

Publication Publication Date Title
JP4403188B2 (ja) クエリを配布する方法および装置
Kaiwartya et al. Multiobjective dynamic vehicle routing problem and time seed based solution using particle swarm optimization
US8521680B2 (en) Inferring user-specific location semantics from user data
US20100299319A1 (en) Method, apparatus, and architecture for automated interaction between subscribers and entities
Ten Hagen et al. Semantic matching and heuristic search for a dynamic tour guide
Li et al. Next and next new POI recommendation via latent behavior pattern inference
JP2014194796A (ja) 地理的ユーザプロファイルに基づいてターゲット・コンテンツ・メッセージの適切性を決定するように地理的ユーザプロファイルを決定するための方法およびシステム
Shanbhag et al. Architecture for Internet of Things to minimize human intervention
Voigt et al. The vehicle routing problem with availability profiles
US20100228476A1 (en) Path projection to facilitate engagement
Neiat et al. Failure-proof spatio-temporal composition of sensor cloud services
Cheng et al. Maximizing the utility in location-based mobile advertising
Stevenson et al. Combining self-organisation, context-awareness and semantic reasoning: the case of resource discovery in opportunistic networks
Gu et al. CAMF: context aware matrix factorization for social recommendation
Nannicini et al. Shortest paths on dynamic graphs
KR101523192B1 (ko) 소셜 검색 시스템 및 기법
Alinaghian et al. A bi-objective mathematical model for two-dimensional loading time-dependent vehicle routing problem
Brahmi et al. QoS-aware automatic web service composition based on cooperative agents
Kazienko et al. ROSA—Multi-agent system for web services personalization
Ivanov An algorithm for on-the-fly K shortest paths finding in multi-storey buildings using a hierarchical topology model
Njima et al. A probabilistic model for web service composition in uncertain mobile contexts
Olson et al. Learning improves service discovery
Pandey et al. Geolocation Based Recommender System
KR101620597B1 (ko) 통합 추천자를 이용하여 사용자 추천 그룹을 갱신하는 방법
Chaudhari Cyber physical recommender systems for iot based applications

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090724

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090924

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091020

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091030

R150 Certificate of patent or registration of utility model

Ref document number: 4403188

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121106

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121106

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131106

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250