(57)【要約】【課題】複数のソースから情報を収集し、評価し、ひいては使用可能なすべての位置情報を適切に使用するための、位置情報を取り扱うシステムおよび方法を提供すること。【解決手段】位置ソースは、モバイル電子装置、たとえばモバイル電話、セル電話、手持ちコンピュータ、ＰＤＡ、ページャ、ＧＰＳ（Global Positioning System）装置および他の透過的コンピューティング装置を含むことができる。衛星ベースまたはネットワークベースの位置決定技術が、これらのワイヤレス電子装置およびそのユーザの地理的位置の決定を可能にする（たとえば、モバイル電話のユーザのための位置ベースのサービスはそのような位置決定技術を利用する）。位置ソースはまた、日時に依存して人の予想位置を出すコンピュータベースのモデル、スケジュールまたはカレンダを含むことができる。
2004526954.tif 000002
【特許請求の範囲】
【請求項１】
位置情報を取り扱う方法であって、
複数の位置ソースからユーザに関する位置データを取得するステップと、
前記ユーザに関する前記位置データの集合を生成するステップと、
前記集合中の項目を予想ユーティリティにしたがって順位付けするステップと、
前記位置データを連続的に更新するステップと
を含む方法。
【請求項２】
前記取得ステップが、二人以上のユーザに関する位置データを取得するステップをさらに含み、
前記生成ステップが、ユーザによって編成された、二人以上のユーザに関する前記位置データの集合を生成するステップをさらに含み、
前記順位付けステップが、二人以上のユーザに関する前記集合中の項目を予想ユーティリティにしたがって順位付けするステップをさらに含む、請求項１に記載の方法。
【請求項３】
前記集合中のデータをフィルタリングして誤りを招くデータを除くステップをさらに含む、請求項１または２に記載の方法。
【請求項４】
前記集合中のデータを統合整理して前記ユーザの最も可能性のある位置を決定するステップをさらに含む、請求項１または２に記載の方法。
【請求項５】
ユーザに関する位置データのそれぞれを一つのフォーマットに変換するステップを含む請求項１に記載の方法。
【請求項６】
位置情報を取り扱うための情報取り扱いシステムであって、
複数の位置ソースからユーザに関する位置データを取得するための手段と、
前記ユーザに関する前記位置データの集合を生成するための手段と、
前記集合中の項目を予想ユーティリティにしたがって順位付けするための手段と、
前記位置データを連続的に更新するための手段と
を含む情報取り扱いシステム。
【請求項７】
前記取得手段が、二人以上のユーザに関する位置データを取得するための手段をさらに含み、
前記生成手段が、ユーザによって編成された、二人以上のユーザに関する前記位置データの集合を生成するための手段をさらに含み、
前記順位付け手段が、二人以上のユーザに関する前記集合中の項目を予想ユーティリティにしたがって順位付けするための手段をさらに含む、請求項６に記載の情報取り扱いシステム。
【請求項８】
前記集合中のデータをフィルタリングして誤りを招くデータを除くための手段をさらに含む、請求項６または７に記載の情報取り扱いシステム。
【請求項９】
前記集合中のデータを統合整理して前記ユーザの最も可能性のある位置を決定するための手段をさらに含む、請求項６または７に記載の情報取り扱いシステム。
【請求項１０】
コンピュータで実行されると請求項１ないし５のいずれかに記載の方法を実行するように構成されたプログラム・コード手段を含むコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に、情報取り扱いシステムに関し、より具体的には、位置情報を取り扱う
方法およびシステムに関する。
【背景技術】
【０００２】
モバイルワイヤレス電子装置、たとえばモバイル電話、ＰＤＡ（personaldigital assistant）およびＧＰＳ（Global Positioning System）装置が非常に人気を博し、それらの使用は非常に一般的になった。一人がこれらの装置２台以上を使用することが一般的である。これらのモバイル装置は、「浸透的コンピューティング」装置とも呼ばれる装置の群のサブセットである。「浸透的コンピューティング」という語が使用される理由は、今や、マイクロプロセッサを有するシステムが、以前はコンピュータ技術によってほとんど触れられなかった各種装置で見られるからである。これらの浸透的コンピューティング装置は、モバイル装置、たとえばセル電話および車載部品を含む。浸透的コンピューティング装置は、しばしば、マイクロプロセッサと関連する揮発性および不揮発性メモリ、入力手段、出力手段ならびに他のコンピューティング装置へのリンクを提供するインタフェース、たとえばネットワーク・インタフェースまたはモデムを含む。
【０００３】
これらの浸透的コンピューティング装置は、独立したコンピューティング能力を一人のユーザまたは、ネットワーク接続された浸透的コンピューティング装置の場合には、ユーザ群に提供するように設計された情報取り扱いシステムである。浸透的コンピューティング装置はまた、マイクロプロセッサに結合され、特殊化機能を実行する一つ以上の入出力装置（たとえばモデム、音声画像装置または特殊化通信装置）を含むことができる。浸透的コンピューティング装置はしばしば、ネットワーク、たとえばローカル・エリア・ネットワーク（ＬＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）またはインタネットを使用して、コンピューティング・システムおよび他の浸透的コンピューティング装置にリンクされる。
【０００４】
衛星ベースまたはネットワークベースの位置決定技術が、モバイル浸透的コンピューティング装置の地理的位置の決定を可能にする（たとえば、モバイル電話の位置ベースのサービスはそのような位置決定技術を利用している）。一つの問題は、あるソースからの位置情報が別のソースからの情報と矛盾するかもしれないことである。たとえば、ある夫婦が、二人の車に埋め込まれている追跡装置を共用しているとする。それに加えて、ご主人は、位置認識モバイル電話をもっているとする。奥さんが、ご主人を車で仕事場まで送ったのち、自分の仕事場までその車を運転していくとする。その場合、ご主人が自分の仕事場に居ることを示すモバイル電話からの情報は、ご主人が奥さんの仕事場にいることを示す車の追跡装置からの情報とは矛盾する。
【０００５】
このような矛盾は、有意な現実的問題を引き起こしかねない。先の例を続けるならば、ご主人の雇用主が、従業員のモバイル電子装置からの位置情報を使用して従業員の位置を決定するとする。このシステムは、従業員をセールスやサービスのために出向かせることに関して雇用主が適切な決定を下すのに役立つであろう。しかし、あるソースからの情報がご主人が仕事場に居ることを示し、別のソースからの情報がご主人が奥さんの仕事場にいることを示すとき、このシステムは破綻をきたすおそれがある。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
したがって、本発明は、位置情報を取り扱う方法であって、複数の位置ソースからユーザに関する位置データを取得し、前記ユーザに関する前記位置データの集合を生成し、前記集合中の項目を予想ユーティリティにしたがって順位付けし、前記位置データを連続的に更新することを含む方法を提供する。
【０００７】
方法およびシステムは、複数のソースから位置情報を取得し、集約し、評価することが好ましい。方法およびシステムは、モバイル装置を位置決めするだけにとどまらず、人々、それらの人々のスケジュールおよびそれらの人々の様々な装置に対する関連付けに関する情報を含めることがさらに好ましい。
【０００８】
適切に取り扱われるならば、位置情報は非常に有用なものになる。従業員をセールスやサービスのために出向かせる一例を上述した。本発明は、好ましくは、ユーザが多数のソースから情報を収集し、評価し、ひいては入手可能なすべての位置情報を適切に利用することを可能にすることである。
【０００９】
このような方法または装置なくしては、位置決定技術は、一人のユーザに関する多数の位置ソースまたは多数のユーザによって共用される一つの位置ソースを適切に取り扱うことはできない。このような方法または装置なくしては、ユーザは、一つのソースからの位置情報が別のソースからの情報と矛盾する上述した問題を託されるであろう。
【課題を解決するための手段】
【００１０】
本発明では、好ましくは、多数のソースからの情報をまず収集し、次いで評価することにより、入手可能なすべての位置情報を利用する。一般に、いくつかのソースからの情報は他のソースからの情報よりも信頼性が高いことは理解されよう。たとえば、共用されていない装置からの情報は、二人以上のユーザによって共用されている装置からの情報よりも信頼性が高い。最近位置を変更した装置からの情報は、最近位置を変更していない装置からの情報よりも信頼性が高い。
【００１１】
本発明では、モバイル装置を位置決めするだけでなく、二つ以上のモバイル装置、おそらくは、人の予想位置を示すコンピュータ化カレンダを有するかもしれない人々、すなわちユーザを位置決めするのが好ましい。位置データの電子ソース（以下「位置ソース」という）は、モバイル電子装置、たとえばモバイル電話、ＰＤＡ、ＧＰＳ（Global Positioning System）装置および他の透過的コンピューティング装置を含むのが好ましい。位置ソースはまた、日時に依存して人の予想位置を出すコンピュータベースのモデル、スケジュールまたはカレンダを含むことができる。これらのモデル、スケジュールまたはカレンダは、たとえばＰＤＡ、デスクトップ・コンピュータまたはサーバ上に格納されていることができる。
【００１２】
位置ソースから位置情報を取得したのち、情報をユーザに提供する前に、コンピュータがデータに対して順位付けまたはフィルタリング処理を実行するのが好ましい。
【００１３】
本発明は、位置情報を取り扱うための情報取り扱いシステムであって、複数の位置ソースからユーザに関する位置データを取得するための手段と、前記ユーザに関する前記位置データの集合を生成するための手段と、前記集合中の項目を予想ユーティリティにしたがって順位付けするための手段と、前記位置データを連続的に更新するための手段とを含む情報取り扱いシステムをさらに提供する。
【００１４】
集合中の誤りを招くデータは、フィルタリングして除くことが好ましい。ユーザの最も可能性のある位置を決定するためにデータを統合整理することが好ましい。
【００１５】
好ましい実施形態によれば、ユーザによって編成された、二人以上のユーザに関する位置データの集合が収集され、二人以上のユーザに関する前記集合中の項目が予想ユーティリティにしたがって順位付けされる。集合に関するデータは、誤りを招くデータを除くためにフィルタリングすることができる。集合のデータは、ユーザの最も可能性のある位置を決定するために統合整理することができる。
【００１６】
一実施形態では、ユーザに関する位置データのそれぞれは一つのフォーマットに変換される。
【００１７】
本発明の好ましい実施形態は、位置情報を取り扱う方法であって、ユーザに関する位置データの集合中の項目を予想ユーティリティにしたがって順位付けするステップと、前記位置データを連続的に更新するステップとを含む方法を提供する。
【００１８】
好ましい実施形態では、項目は二人以上のユーザに関する位置データの集合で予想ユーティリティにしたがって順位付けされる。誤りを招くデータはフィルタリングして除くことができる。ユーザの最も可能性のある位置を決定するために、集合中のさらなるデータを統合整理することができる。
【００１９】
好ましい実施形態によれば、位置情報を取り扱うための情報取り扱いシステムであって、ユーザに関する位置データの集合中の項目を予想ユーティリティにしたがって順位付けするための手段と、前記位置データを連続して更新するための手段とを含む情報取り扱いシステムが提供される。
【００２０】
さらなる態様によれば、プログラムがコンピュータで実行されると、複数の位置ソースからユーザに関する位置データを取得するステップと、前記ユーザに関する前記位置データの集合を生成するステップと、前記集合中の項目を予想ユーティリティにしたがって順位付けするステップと、前記位置データを連続的に更新するステップとを実行するように構成されたプログラム・コード手段を含むコンピュータ・プログラムが提供される。
【発明を実施するための最良の形態】
【００２１】
次に、本発明の実施形態を以下の図面を参照して例示によってのみ説明する。
【００２２】
概要
本発明は、位置情報を取り扱うためのシステムおよび方法である。本発明は、多数のソースからの位置情報を伴ういかなる状況ででも有用である。収集した位置情報を使用して従業員をセールスやサービスのために出向かせるシステムである一例を上述した。もう一つの例は、第一のユーザに対し、利害関連のある第二のユーザが会合場所に到着したことを知らせるためのシステムである。もう一つの例は、ワールド・ワイド・ウェブを介してユーザの手持ちコンピュータ、ユーザのコンピュータベースのカレンダ、ユーザのＧＰＳユニットおよび地図サービスと対話して、次の会合場所までの適切な運転道案内を提供するシステムである。もう一つの例は、ワールド・ワイド・ウェブを介してユーザのセル電話およびユーザのコンピュータベースのカレンダまたは予定リストと対話して、モバイルユーザが、何らかの業務を処理しなければならない場所に近づいたとき、そのユーザに注意を促すシステムである。これらの例では、出力される情報は、音声もしくは画像、文字または図形であってもよい。
【００２３】
これらの例では、ユーザが、ユーザの実際の位置に適合した有用な情報を提供されることが好ましく、問い合わせをする必要がないということが理解されよう。また、好ましくは、ユーザによって編成された、多数のソースから入手可能なすべての位置情報を利用する。
【００２４】
以下は、本明細書で使用される術語の定義である。「コンピュータ使用可能な媒体」とは、コンピュータとで通信するための信号または伝送機能ならびに各種コンピュータ・メモリ、たとえばフロッピー(R)・ディスク、ハードディスク、ランダム・アクセス・メモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、ＣＤ−ＲＯＭ、フラッシュＲＯＭ、不揮発性ＲＯＭおよび不揮発性メモリをいう。「位置データ」または「位置情報」とは、緯度および経度または他の位置記述をいう。「位置ソース」とは、モバイル電子装置、たとえばモバイル電話、ＰＤＡ、ページャ、ＧＰＳ（Global Positioning System）装置、これらのモバイル電子装置と対応するサーバおよび日時に依存して人の予想位置を出すコンピュータベースのモデル、スケジュールまたはカレンダをはじめとする、位置データの電子ソースをいう。「ユーザ」とは、本発明の実施形態の方法またはシステムによって追跡される位置ソースを利用する人および他のユーザの位置を追跡する人をいう。
【００２５】
システムおよび方法
本発明は、本発明が作用するところのコンピュータのタイプに関して限定されない。まず図１を参照すると、ブロック図が、本発明の実施形態の情報取り扱いシステムによってコンピュータ・ネットワーク上で送達される位置データを示す。図１の左側では、位置ソース―装置１０１、サーバ１１１、装置１０２、装置１０３および装置１０４から位置情報が取得される。位置データは、コンピュータ・ネットワーク９４上で情報取り扱いシステム１０に送達される。情報取り扱いシステム１０内では、位置アグレゲータ２０が、一人以上のユーザに関する位置データを取得し、ユーザによって編成された、一人以上のユーザに関する前記位置データの集合を生成する。論理部品である位置ロジシャン３０が、情報を加入者アプリケーション４０を介してユーザに提供する前に、データに対して評価（順位付け、フィルタリングまたは統合整理処理）を実行する。
【００２６】
次に図２を参照すると、高レベルブロック図が、本発明の実施形態にしたがって図１の情報取り扱いシステム例１０に含めることができる選択された部品を示す。情報取り扱いシステム１０は、主として、ソフトウェアの形態であってもよい（そのようなソフトウェアが記憶される場所またはアクセスされる手段を問わない）コンピュータ読み取り可能な命令によって制御される。このようなソフトウェアを、中央処理装置（ＣＰＵ）５０としても知られるプロセッサ内で実行して、情報取り扱いシステム１０に仕事をさせることができる。ＣＰＵ５０は通常、Intel社またはAdvanced Micro Devices社から市販されている種類のマイクロプロセッサである。
【００２７】
システム・バス５に結合されたメモリ装置は、ランダム・アクセス・メモリ（ＲＡＭ）５６、読み取り専用メモリ（ＲＯＭ）５８および不揮発性メモリ６０を含む。このようなメモリは、情報を記憶し、検索することを許す回路を含む。ＲＯＭは、変更することができない記憶データを含む。ラムに記憶されたデータは、ＣＰＵ５０または他のハードウェア装置によって変更することができる。不揮発性メモリとは、電力を奪われたときでもデータを損失しないメモリである。不揮発性メモリは、ＲＯＭ、ＥＰＲＯＭ、フラッシュ・メモリまたはバッテリパックＣＭＯＳ  ＲＡＭを含む。図２に示すように、そのようなバッテリパックＣＭＯＳ  ＲＡＭは、構成情報を記憶するために使用することができる。拡張カードまたはボードとは、機能またはリソースをコンピュータに付加する回路板である。通常、拡張カードは、メモリ、ディスク・ドライブ制御装置６６、ビデオ・サポート、パラレルおよびシリアル・ポートならびに内部モデムを付加する。ラップトップ、パームトップおよび他のポータブルコンピュータの場合、拡張カードは通常、コンピュータの側面または背面のスロットに挿入されるように設計されたクレジットカード大の装置であるＰＣカードの形態である。このように、空のスロット６８を使用して、種々の拡張カードまたはＰＣカードを受けることができる。ディスク制御装置６６およびディスケット制御装置７０はいずれも、ハードディスク・ドライブ７２およびフロッピー(R)・ディスクまたはディスケット７４に対する読み書きを指図し、制御する特殊目的集積回路および関連の回路を含む。このようなディスク制御装置は、読み書きヘッドの配置のようなタスクを取り扱う。一つのディスク制御装置が二つ以上のディスク・ドライブを制御することができてもよい。ＣＤ−ＲＯＭ（コンパクト・ディスク読み取り専用メモリ）７８からデータを読み取るために、ＣＤ−ＲＯＭ制御装置７６を情報取り扱いシステム１０に含めてもよい。このようなＣＤ−ＲＯＭは、磁気的手段ではなくレーザ光学系を使用してデータを読み取る。
【００２８】
情報取り扱いシステム１０と他の情報取り扱いシステムとの間の通信は、いずれもシステム・バス５に結合されているシリアル制御装置８８およびネットワーク・アダプタ９０によって容易に行うことができる。シリアル制御装置８８は、コンピュータ間またはコンピュータと周辺装置との間で１本の回線を介して情報を一度に１ビットずつ送信するために使用される。図示するように、このようなシリアル・インタフェースを使用してモデム９２と通信することもできる。モデムとは、コンピュータが標準電話回線を介して情報を送信することを可能にする通信装置である。モデムは、コンピュータのデジタル信号を、電話回線を介する通信に適したアナログ信号に変換する。モデム９２またはネットワーク・アダプタ９０は、ソフトウェアおよび情報のソース、たとえばサーバ、電子掲示板、インタネットまたはワールド・ワイド・ウェブへの接続を提供することができる。ネットワーク・アダプタ９０は、情報取り扱いシステム１０をネットワーク９４に接続するために使用することができる通信装置である。ネットワーク９４は、ソフトウェアおよび情報を電子的に通信し、転送する手段をコンピュータのユーザに提供することができる。さらには、ネットワーク９４は、タスクを実行する際のワークロード分担または協力に複数のコンピュータを関与させる分散処理を提供することができる。
【００２９】
キーボード８２およびポインティング装置８４とインタフェースするために、キーボード・マウス制御装置８０が情報取り扱いシステム１０に設けられている。ポインティング装置は、トラック・ボール、ジョイ・スティック、タッチ・タブレットもしくはスクリーンまたは図示するようなマウスを使用して実現することができる。ポインティング装置８４を使用すると、表示装置９６上に見えるポインタまたはカーソルを動かすことができる。入力装置のもう一つの例は、音声入力のためのマイクであろう。表示装置９６、キーボード８２およびポインティング装置８４はそれぞれ、いくつかの公知の規格部品のいずれかを使用して実現できることが当業者によって理解され、認識されよう。
【００３０】
表示制御装置９８によって制御される表示装置９６は、情報取り扱いシステム１０によって生成される画像出力を表示するために使用される。表示装置９６は、陰極線管（ＣＲＴ）、液晶表示装置（ＬＣＤ）、電極発光パネルなどを使用して実現することができる表示画面を含む。表示制御装置９８は、表示装置９６に送られる画像信号を生成するために必要な電子部品を含む。パラレル制御装置９９を介してプリンタ１００を情報取り扱いシステム１０に結合してもよい。パラレル制御装置９９は、システム・バス５と別のパラレル通信装置、たとえばプリンタ１００との間に接続されたワイヤを介して多数のデータおよび制御ビットを同時に送るために使用される。出力装置のもう一つの例は、音声出力のためのスピーカであろう。
【００３１】
ＣＰＵ５０は、命令を取り出し、デコードし、実行し、コンピュータの主データ転送経路であるシステム・バス５を介して他のリソースとの間で情報を転送する。このようなバスは、情報取り扱いシステム１０中の部品どうしを接続し、データ交換のための媒体を画定する。システム・バス５は、メモリ装置５６、５８および６０、ＣＰＵ５０ならびに図２に示す他の装置を接続し、それらの間でのデータ交換を可能にする。
【００３２】
次に図３を参照すると、本発明の実施形態にしたがって位置情報を取得し、集約し、評価するためのシステムの例を示す図が示されている。好ましくは、Java(R)プログラミング言語（Sun Microsystem社から、市販されている）を使用するが、他の言語も使用してもよい。図３の左側で、位置情報が、この例では位置ソース１０１、位置ソース１０２および位置ソース１０３を含む位置ソース３００の群から取得される。
【００３３】
位置ソース３００からの出力は、ＨＴＭＬ（hypertext markuplanguage）、ＸＭＬ（extensible markup language）または他の言語であってもよい。好ましい実施形態では、位置情報は、この例ではアダプタ３０１およびアダプタ３０２を含むアダプタ・サーブレット３１０のセットを介して取得される。これらのアダプタは、種々の位置ソースからの位置データを一つのフォーマットに変換する。例えば、一つのフォーマットは、「ロケーションＸＭＬ」または「ＬｏｃＸＭＬ」と称される、ＸＭＬで実現されたフォーマットであることができる。位置データはまた、この例では位置ソース１０３から直接取得することもできる。以下、図４を参照しながらアダプタのさらなる説明を記す。
【００３４】
位置アグレゲータ２０が、一人以上のユーザに関する位置データを取得し、ユーザによって編成された、一人以上のユーザに関する前記位置データの集合を生成する。集約ＬｏｃＸＭＬ情報３２１として示す位置データの集合は、ロジシャン・ファサード３２０に送られ、このファサードが論理記述３３０、論理ビーン・ファクトリ３４０および論理インプリメンテーション３５０と通信する。これらを以下さらに詳細に説明する。これらは、新たな位置リスト３２２を加入者アプリケーション４０に公表することにより、情報をユーザに提供する前にデータに対して評価（順位付け、フィルタリングまたは統合整理処理）を実行するように働く。もう一つの実施態様では、位置アグレゲータ２０によって何らかの順位付けまたはフィルタリングを実行する。
【００３５】
順位付け、フィルタリングまたは統合整理処理に関して、種々の論理機能をユーザが選択し、以下のように実現することができる。位置データを順位付け、フィルタリングまたは統合整理するために使用される論理機能またはプロセスは「ロジシャン」と呼ばれる。ロジシャンを呼び出す、または実現することは、特定の位置データを順位付け、フィルタリングまたは統合整理するためにロジシャンを使用することである。ＡＰＩ呼び出しGetLogicianTypes()３３１の結果として、論理記述３３０がロジシャン・タイプ３３２を返す。これは、ユーザに提示される選択肢を表す。ＡＰＩ呼び出しGetLogician(logician)３４１の結果として、論理ビーン・ファクトリ３４０がロジシャン３４２を返す。これは、実現する論理機能の種類を選択するユーザを表す。論理機能に関するユーザの好みを加入者好みデータベース３９０に記憶し、そこから検索することもできる。ＡＰＩ呼び出しlogician.invoke(LocationList)３５１の結果として、論理インプリメンテーション３５０がnewLocationList３５２を返す。これは、位置データを順位付け、フィルタリングまたは統合整理するために実現される論理機能の選択された種類を表す。論理インプリメンテーション３５０は、図１の略図に示す位置ロジシャン３０に相当する。新たな位置リスト３２２を加入者アプリケーション４０に公表することにより、システムは、順位付け、フィルタリングまたは統合整理された位置データをユーザに提供する。
【００３６】
システムは、位置情報の集合中の項目を予想ユーティリティにしたがって順位付けすることができる。別のユーザの位置を追跡するユーザは、より最近の移動を示す位置ソースからのデータがより高い順位付けを与えられているような位置データを提供されることができる。これは、どの位置ソースがより最近に移動し、ひいては最新の位置更新を成したかにしたがってデータを順位付けする例である。好ましい実施形態では、各ロケーションＸＭＬエントリがタイム・スタンプを有し、位置データの集合がタイム・スタンプによってソートされる。もう一つの順位付け例では、別のユーザの位置を追跡するユーザは、他の位置ソースよりも正確であると予想される位置ソースからのデータがより高い順位付けを与えられているような位置データを提供されることができる。もう一つの選択肢は、より正確な計測を実施することができる位置ソースからのデータにより高い順位付けを与える方法であろう。
【００３７】
データをフィルタリングする例を示すならば、実際の移動ではなく、位置計測におけるランダムな変動により、報告される位置のわずかな変化が突然に生じることがある。これは、新たな位置データが現在の位置データの集合に加えられる際の限界を設定することによってフィルタリング除去することができるノイズの１種である。このように、システムは、データをフィルタリングして誤りを招くデータを除くことができる。
【００３８】
好ましい実施形態では、位置データの集合中に見られる位置データを統合整理して、最も可能性のあるユーザの位置を決定することができる。たとえば、システムが二つ以上の位置ソースからのデータに基づいて合致位置を決定する結果として、ユーザは、追跡されている別のユーザの最も可能性のある位置を提供されることができる。二つ以上の位置ソースからのデータによって示される合致位置は、いずれか一つの位置ソースからのデータを単独で採用する場合よりも高い確かさを提供するであろう。
【００３９】
実際の位置に関するユーザからのフィードバックおよび従来の人工知能アルゴリズムにより、システムは、その性能を改善するよう学習することが好ましい。システムは、どの位置ソースまたは位置ソースの組み合わせが最も有用であるのかを学習することが好ましい。
【００４０】
上記例を続けると、雇用主は、従業員のモバイル電子装置からの位置情報を使用して従業員の位置を決定することができる。このシステムは、雇用主が、従業員をセールスやサービスのために出向かせることに関して適切な決定を下すのに役立つであろう。雇用主は、このようなシステムを以下のように利用することができる。再び図３を参照すると、論理記述３３０がロジシャン・タイプ３３２を返す。これは、ユーザ、たとえば雇用主に提示される選択肢を表す。選択肢は、「最近移動」、「最正確」および他の選択肢を含むメニューとして提示することができる。論理ビーン・ファクトリ３４０がロジシャン３４２を返す。これは、実現する論理機能の種類を選択するユーザを表す。雇用主が「最近移動」を選択するとする。このロジシャンに関して、規則は、「どの位置ソースが最近に移動し、ひいては最新の位置更新を成したかにしたがってデータを順位付けせよ」と述べることができる。これは、位置情報の集合中の項目を予想ユーティリティにしたがって順位付けする例である。
【００４１】
上記例を続けると、ある夫婦が車に埋め込まれた追跡装置を共有しているとする。それに加え、ご主人は、ＧＰＳ能力を有する２ウェイページャを有するとする。日中、おそらく共有される車は数時間移動しなかったが、２ウェイページャをもったご主人は頻繁に移動していた。ご主人は、雇用主の工場を回り、その後、雇用主所有の車で顧客のところに出向いたかもしれない。雇用主はご主人を追跡することができる。論理インプリメンテーション３５０がnewLocationList３５２を返す。これは、位置データを順位付けするために実現される「最近移動」論理機能を表す。新たな位置リスト３２２を加入者アプリケーション４０に公表することにより、システムは、順位付けされた位置データを雇用主に提供する。ご主人の２ウェイページャからの位置データが、数時間動いていない共有の車からの位置データよりも上に順位付けされて、リストのトップにくるであろう。リストは、以下、図８の例のようなエントリのリストとして表すことができる。加入者アプリケーション４０は、たとえば地図を表示することにより、雇用主が位置データを解釈するのを支援することができる。加入者アプリケーション４０は、ユーザの好みに合うよう、簡略化バージョンの位置データを表示することもできる。以下の表は、ユーザ、たとえば前記例ではご主人に関する位置データの集合の簡略化した例である。
【００４２】
ご主人の位置データ
順位  位置ソース  位置
１．  ページャ    緯度Ｎ３７４８２０  経度Ｗ１２２２７３８
２．  車          緯度Ｎ３７４８２２  経度Ｗ１２２２７４０
【００４３】
このような集合は、さらなる位置ソース、たとえばカレンダまたはセル電話からのエントリを含むこともできる。
【００４４】
図４は、本発明の実施形態にしたがって位置情報を取得し、集約するためのシステムの例を示す高レベルブロック図である。この例では、位置アグレゲータ２０が、位置データを求めて位置ソース、すなわちＧＰＳサーバ４１１、ページャ４０２と呼ぶ２ウェイページャ、ワイヤレス・ハブ４１３と呼ぶワイヤレスＬＡＮハブおよび準拠装置４０４をポーリングする。位置アグレゲータ２０は、一人以上のユーザに関する位置データを取得し、ユーザによって編成された、一人以上のユーザに関する前記位置データの集合を生成する。
【００４５】
位置ソースからの出力は、ＨＴＭＬ（hypertext markup language）、ＸＭＬ（extensiblemarkup language）または他の言語であってもよい。好ましい実施形態では、位置情報は、アダプタ―ＧＰＳアダプタ４２１、ページャ・アダプタ４２２およびワイヤレス・ハブ・アダプタ４２３を介して取得される。これらのアダプタは、種々の位置ソースからの位置データを一つのフォーマットに変換する。これらのアダプタは、一つの望ましいＸＭＬフォーマット以外のフォーマットで位置データを与える位置ソース（たとえば「レガシー」位置ソース）に有用である。好ましい実施形態では、一つのフォーマットは、「ロケーションＸＭＬ」または「ＬｏｃＸＭＬ」と称される、ＸＭＬで実現されたフォーマットであるが、別のフォーマットを使用してもよい。モバイル電子装置およびこれらの装置に対応するサーバからの位置データのための既存のフォーマットがいくつかある。いずれ、アダプタを介さず直接データを取得することができるような汎用される一つの標準フォーマットができるかもしれない。このように、図４は、位置情報を準拠装置４０４（すなわち、出力が所望のフォーマットと適合する装置）から準拠装置データ経路４４４を介して直接取得することができることを示す。
【００４６】
好ましい実施形態では、ＧＰＳアダプタ４２１が、ＧＰＳサーバ４１１から、ＧＰＳ装置４０１を搭載した車の位置を与えるＧＰＳデータを読み取る。ページャ・アダプタ４２２が２ウェイページャ、すなわちページャ４０２からｅメールを受信する。そのｅメール・メッセージ内には、ＧＰＳデータ、すなわち、ページャ４０２が現在対応しているセルの名称が含まれている。セルの名称は、その名称を実際の位置にマッピングするために参照表とともに使用される。ワイヤレス・ハブ・アダプタ４２３が、ワイヤレス・ハブ４１３によってワイヤレスＬＡＮに載っているラップトップ・コンピュータ４０３に関する位置データを受信する。ワイヤレス・ハブ・アダプタ４２３は、シンプル・ネットワーク管理プロトコル（ＳＮＭＰ、ネットワークハードウェアから情報を集めるプロトコル）を使用して、ラップトップ・コンピュータ４０３のワイヤレス・インタネット接続の位置から位置情報を導出する。
【００４７】
他にも多くの同様なアダプタを実現することができる。さらなる例は、コンピュータベースのカレンダを読み取って、日時に依存して人の予想位置を出すアダプタであろう。以下、図５を参照しながらアダプタをさらに説明する。
【００４８】
図５は、本発明の実施形態にしたがって図４のシステム例に含める選択された部品をさらに詳細に示すブロック図である。ページャ４０２は２ウェイページャ。好ましい実施形態では、Research In Motion社から市販されている２ウェイページャを使用する。たとえばMotorola社から市販されている種類の他の類似装置を2ウェイで使用してもよい。ページャ４０２は、ページャが現在通信している無線塔の識別番号を送るのか、取り付けられたＧＰＳ装置によって生成される緯度および経度の座標を送るのかを知的に選択するクライアント・アプリケーションを有する。選択プロセスで使用される規準は、ＧＰＳ信号の強さ、無線塔信号の強さおよび移動の頻度を含む。
【００４９】
通信プロトコルは次のとおりである。ページャ４０２のクライアント・アプリケーションが、変動する頻度で、メッセージをサーバのメッセージ待ち行列５０２（ＰＯＰサーバ）に送る。メッセージは、位置情報をフォーマット―ＤＥＶＩＣＥＩＤ、ＴＯＷＥＲＩＤ、ＧＰＲＭＣ、ＰＯＳ＿ＵＴＣ、ＰＯＳ＿ＳＴＡＴ、ＬＡＴ、ＬＡＴ＿ＲＥＦ、ＬＯＮ、ＬＯＮ＿ＲＥＦ、ＳＰＤ、ＨＤＧ、ＤＡＴＥで含む。ＧＰＳデータが入手できないとき、ＧＰＳフィールドはゼロ値を有する。好ましい実施形態では、メッセージ送信方法は、シンプル・メール転送プロトコル（ＳＭＴＰ）で送られる電子メールである。
【００５０】
ページャ・アダプタ４２２は、マルチスレッドのサーブレットである。サーブレットとは、サーバ上で稼働するJava(R)アプリケーションである。ページャ・アダプタ４２２は、ページャ４０２から受信された新たなメッセージがないかメッセージ待ち行列５０２をプリセットされた間隔でチェックするバックグラウンド・スレッドを有する。メッセージ送信システムは、企業環境で起こりうるファイヤウォールおよびセキュリティ問題を回避するために使用される。このバックグラウンド・スレッドは、ページャ４０２のｅメールからの関連情報を内部位置ハッシュ表中に解析する。ページャ・アダプタ４２２における、ＨＴＴＰ（hypertexttransfer protocol）要求を取り扱うもう一つのスレッドが位置アグレゲータ２０によって呼び出される。ページャ・アダプタ４２２は、そのような要求を受けると、その内部位置ハッシュ表から情報を取り出し、それをロケーションＸＭＬで位置アグレゲータ２０に出力する。
【００５１】
ＤＴＤ（Document Type Definition）とは、マークアップ言語の定義である。以下、本願発明で使用したロケーションＸＭＬのＤＴＤを記す。
【００５２】
2004526954.tif 000003
2004526954.tif 000004
【００５３】
位置アグレゲータ２０は、プリセットした間隔でＨＴＴＰを介してページャ・アダプタ４２２ならびに他のアダプタおよび位置ソースに問い合わせる。位置アグレゲータ２０は、追跡される装置および位置のページャ・アダプタ４２２の現在のリストをロケーションＸＭＬで検索する。
【００５４】
ラップトップ・コンピュータ４０３は、ワイヤレス・ハブ・アダプタ４２３に対してＨＴＴＰ要求を周期的に実施して、ワイヤレス・ハブ・アダプタ４２３がラップトップ・コンピュータ４０３の位置を位置アグレゲータ２０に報告する権限を与えるサービスを有する。
【００５５】
ワイヤレス・ハブ４１３は、ハブを構成し、ハブに関する情報を見るために使用することができるページを表示する内蔵ウェブ・サーバを有するワイヤレスＬＡＮハブ（Cisco Systems社、Apple Computer社、Compaq Computer社、Intel社、Lucent Technologies社または3Com社から市販されている）である。
【００５６】
マルチスレッドのサーブレットであるワイヤレス・ハブ・アダプタ４２３は、プリセットした間隔で任意数のワイヤレスＬＡＮハブ、たとえばワイヤレス・ハブ４１３に対してＨＴＴＰ要求を実施して、各ハブのネットワーク上で取り付けられたクライアントおよびクライアントのインタネット・プロトコル（ＩＰ）アドレスの表を含むＨＴＭＬページを検索するバックグラウンド・スレッドを有している。そして、この情報は、ハブ・ハッシュ表に解析され、その際、キーは、各ワイヤレス・ハブ４１３クライアントのＩＰアドレスであり、値は、各クライアントが使用しているハブである。また、ワイヤレス・ハブ・アダプタ４２３には、入ってくるＨＴＴＰ要求を取り扱うスレッドがある。このワイヤレス・ハブ・アダプタ４２３には、二つのタイプのそのような要求がある。第一のタイプは、ラップトップ・コンピュータ４０３から受信される要求である。これらの要求は、ラップトップ・コンピュータ４０３の位置（バックグラウンド・スレッドによって得られる）を位置アグレゲータ２０に明かすためのサーバ許可を与えるだけである。具体的には、各ＨＴＴＰヘッダが、発生するＩＰアドレスに関して審査される。このＩＰアドレスおよび受信時が認可ハッシュ表に記憶される。他方のタイプの受信されるＨＴＴＰ要求は、位置アグレゲータ２０からのものである。ワイヤレス・ハブ・アダプタ４２３は、そのような要求を受けるたび、認可ハッシュ表中で反復し、最近認可を送った（プリセット値にしたがって）ＩＰアドレスごとに、ワイヤレス・ハブ４１３のハッシュ表から対応するハブ情報が検索される。そして、この情報がロケーションＸＭＬへと適切に解析される。
【００５７】
位置アグレゲータ２０は、プリセットした間隔でＨＴＴＰを介してワイヤレス・ハブ・アダプタ４２３ならびに他のアダプタおよび位置ソースに問い合わせる。位置アグレゲータ２０は、追跡される装置および位置のワイヤレス・ハブ・アダプタ４２３の現在のリストをロケーションＸＭＬで検索する。
【００５８】
図６は、実施例として実現される、位置情報を取得し、集約するプロセスの一例を示す流れ図である。図１、３、４および５に示す位置アグレゲータ２０の中で、プロセスが始まる（６１０）。「ポーリング・スレッド」と呼ばれる任意数のポーリング・プロセス（例として三つ６０１、６０２および６０３を示す）を起動する（６２０）。各ポーリング・スレッドが位置データを求めてＨＴＴＰ６３０によって位置ソースをポーリングする（６３０）。各ポーリング・スレッドは、前記位置データのいずれかが新規であるかどうかを決定する（決定６４０）。各ポーリング・スレッドは、新たな位置データをマッピング・プロセスに送る（６５０）。「マッピング・スレッド」と呼ばれるマッピング・プロセスは、以下、図７を参照しながらさらに説明する。ポーリング・スレッドが終了するまでステップ６３０、６４０および６５０を繰り返す。このようにして、位置データは連続的に更新される。
【００５９】
図７は、実施例として実現される、位置情報を取得し、集約するための、図６に示す例に関連するもう一つのプロセスを示す流れ図である。図６に示すポーリング・スレッド、たとえば６０１、６０２および６０３とともに、マッピング・プロセス７０１が始まり（７１０）、ポーリング・スレッド、たとえば６０１、６０２および６０３から新たな位置データを受け取る（７２０）。マッピング・スレッド７０１は、新たな位置データをユーザにマッピングする（７３０）。
【００６０】
次に、この例は、マッピング・スレッドを待機させる（７５０）、任意の「タイムアウト」ステップ（決定７４０）を含む。これを以下に説明する。所定期間待機したのち、決定７４０でＹＥＳの分岐を取ると、マッピング・スレッドが、ユーザによって編成された位置データの集合を論理プロセスに送り（７６０）、このプロセスが、加入者アプリケーションを介して情報をユーザに提供する前に、データに対して評価（たとえば順位付けまたはフィルタリング処理）を実施する。
【００６１】
「タイムアウト」ステップ（決定７４０）は、多くの新たな位置データがポーリング・スレッド、たとえば図６に示す６０１、６０２および６０３から巡回しながら受信されることを保証するように設計されている。換言するならば、ステップ７６０によって提供される出力は、二つ以上の新たな位置データを含むならば、より貴重である。二つ以上の新たな位置データを受けるために、マッピング・スレッド７０１は、ポーリング・スレッド、たとえば６０１、６０２および６０３のうち、より多くが新たな位置データをマッピング・スレッド７０１に送る（６５０）まで待つことが好ましい。タイムアウトの値は、どれだけ多くの新たな位置データがステップ７６０によって公表されるか、またそれらの公表の間の期間のトレードオフである。
【００６２】
上記ステップ７２０、７３０および７６０は、決定７７０でＹＥＳ分岐が取られ、マッピング・スレッドが終了する（７８０）まで繰り返される。このようにして、位置データの集合は連続的に更新される。
【００６３】
位置データの集合は、ＧＰＳ能力を有する２ウェイページャからの位置データを示す、ブラウザによって見られるロケーションＸＭＬドキュメントのサンプルである図８の例のようなエントリの集合である。図８は、モバイル装置（この例では２ウェイページャ）の識別番号（８１１）、取り付けられたＧＰＳ装置によって生成される緯度（８３２）および経度（８３３）の座標、タイム・スタンプ（８７１）ならびにページャが現在通信している無線塔の識別番号（８７２）を含む。図３、４および５に示すアダプタから出力されるロケーションＸＭＬは、図８の例のようなエントリからなる。
【００６４】
図９は、本発明の実施形態にしたがって位置情報を評価するための論理プロセス（ロジシャン）を選択する方法を示す流れ図である。これは、一つ以上の好ましいロジシャンを選択する実行時前プロセスである。選択は、エンド・ユーザが直接実施することもできるし、第三者が実施することもできる。このような選択は、図３および位置情報を取得し、集約し、評価するためのシステムに関して上記で論じたものである。選択プロセスが始まると（９１０）、ユーザおよび、ＡＰＩ呼び出しGetLogicianTypes()の結果として、ユーザが使用することを好むロジシャンを選択するため、ユーザ・インタフェース（ＵＩ）を加入者アプリケーションに提供する（９２０）。これらの好みを加入者好みデータベースに記憶すると（９３０）、プロセスは終了する（９４０）。
【００６５】
図１０は、本発明の実施形態にしたがって位置情報を評価するための論理プロセスの例を示す流れ図である。これは、ユーザの好みを利用可能なロジシャンと適合させ、ロジシャンを実現して位置情報を評価する実行時プロセスである。このようなプロセスは、図３および位置情報を取得し、集約し、評価するためのシステムに関して上記で論じたものである。プロセスが始まると（１０１０）、位置情報の集合を位置アグレゲータから受け取る（１０２０）。ステップ１０３０で加入者好みデータベース中でこのユーザに関して実現されるロジシャンを参照したのち、ステップ１０４０に進み、論理ビーン・ファクトリからロジシャンを取得する。ステップ１０４０は、ＡＰＩ呼び出しGetLogician(logician)の結果である。位置情報の集合に対してこのロジシャンを呼び出す（１０５０）。ステップ１０５０は、ＡＰＩ呼び出しlogician.invoke(LocationList)の結果である。これは、図３を参照しながら上記で論じたデータを順位付けし、フィルタリングし、統合整理する例と同様に、実施されている論理機能の選択された種類に対応する。結果を一つ以上の加入者アプリケーションに公表し（１０６０）、システムが、順位付け、フィルタリングまたは統合整理された位置データをユーザに提供する。上記ステップ１０２０〜１０６０は、決定１０７０でＹＥＳ分岐が取られ、プロセスが終了する（１０８０）まで繰り返される。このようにして、位置データの評価は連続的に更新される。
【００６６】
図１１は、本発明の実施形態にしたがって位置情報を取得し、集約し、評価するためのシステムとで対話する加入者アプリケーションの例を示す流れ図である。図１１は、加入者アプリケーションの視点から見た図である。プロセスが１１０で始まると、利用可能なユーザおよびロジシャンに関して図３に３２０で示すロジシャン・ファサードに問い合わせる（１１２０）。ユーザおよびロジシャンを選択し（１１３０）、プロセスは、位置情報が公表されるのを待つ（１１４０）。位置情報を受け取り（１１５０）、加入者アプリケーションの機能にしたがって処理する（１１６０）。このようにして、システムは、順位付け、フィルタリングまたは統合整理された位置データをユーザに提供する。上記ステップ１１２０〜１１６０は、決定１１７０でＹＥＳ分岐が取られ、プロセスが終了する（１１８０）まで繰り返される。このようにして、エンド・ユーザは、連続的に更新される位置データの評価を提供される。
【００６７】
本発明の好ましい実施形態の一つは、アプリケーション、すなわち、たとえばコンピュータのランダム・アクセス・メモリに常駐することができるモード・モジュールにおける命令セット（プログラム・コード）である。命令セットは、コンピュータによって求められるまで、別のコンピュータ・メモリ、たとえばハードディスク・ドライブまたは脱着可能なメモリ、たとえば光ディスク（ＣＤ  ＲＯＭドライブで最終的に使用する場合）もしくはフロッピー(R)・ディスク（フロッピー(R)ディスク・ドライブで最終的に使用する場合）に記憶しておくこともできるし、インタネットまたは他のコンピュータ・ネットワークを介してダウンロードすることもできる。したがって、好ましい実施形態は、コンピュータで使用するためのコンピュータ実行可能な命令を有するコンピュータ使用可能な媒体として実現することができる。加えて、前記種々の方法は、ソフトウェアによって選択的に起動または再構成される汎用コンピュータで好都合に実現されるが、当業者は、ハードウェア、ファームウェアまたは必要な方法ステップを実行するために構成されたより特殊化された装置でそのような方法を実施することもできることを理解するであろう。
【００６８】
本特許文献の開示の一部は、著作権または商標保護の対象である実体を含む。著作権または商標所有者は、特許開示のファクシミリ複製に異議を唱えないが、それ以外では、あらゆる著作権または商標権を留保する。
【図面の簡単な説明】
【００６９】
【図１】本発明の一実施形態にしたがって情報取り扱いシステムによってコンピュータ・ネットワーク上で送達される位置データを示すブロック図である。
【図２】図１の情報取り扱いシステム例に含めることができる選択された部品を示す高レベル・ブロック図である。
【図３】本発明の一実施形態にしたがって位置情報を取得し、集約し、評価するためのシステムの例を示す高レベル・ブロック図である。
【図４】本発明の一実施形態にしたがって位置情報を取得し、集約するためのシステムの例を示す高レベルのブロック図である。
【図５】本発明の一実施形態にしたがって図４のシステム例に含まれる選択された部品をさらに詳細に示すブロック図である。
【図６】実施例として実現される、位置情報を取得し、集約するプロセスの一例を示す流れ図である。
【図７】実施例として実現される、位置情報を取得し、集約するための、図６に示す例に関連するもう一つのプロセスを示す流れ図である。
【図８】本発明の一実施形態にしたがって、ＧＰＳ能力を有する２ウェイ・ページャからの位置データを示す、ブラウザによって見られるロケーションＸＭＬドキュメントのサンプルである。
【図９】本発明の一実施形態にしたがって位置情報を評価するための論理プロセスを選択する方法を示す流れ図である。
【図１０】本発明の一実施形態にしたがって位置情報を評価するための論理プロセスの例を示す流れ図である。
【図１１】本発明の一実施形態にしたがって位置情報を取得し、集約し、評価するためのシステムと対話する加入者アプリケーションの例を示す流れ図である。
【図１】
2004526954.tif 000005
【図２】
2004526954.tif 000006
【図３】
2004526954.tif 000007
【図４】
2004526954.tif 000008
【図５】
2004526954.tif 000009
【図６】
2004526954.tif 000010
【図７】
2004526954.tif 000011
【図８】
2004526954.tif 000012
【図９】
2004526954.tif 000013
【図１０】
2004526954.tif 000014
【図１１】
2004526954.tif 000015
【国際公開パンフレット】
2004526954.tif 000016
2004526954.tif 000017
2004526954.tif 000018
2004526954.tif 000019
2004526954.tif 000020
2004526954.tif 000021
2004526954.tif 000022
2004526954.tif 000023
2004526954.tif 000024
2004526954.tif 000025
2004526954.tif 000026
2004526954.tif 000027
2004526954.tif 000028
2004526954.tif 000029
2004526954.tif 000030
2004526954.tif 000031
2004526954.tif 000032
2004526954.tif 000033
2004526954.tif 000034
2004526954.tif 000035
2004526954.tif 000036
2004526954.tif 000037
2004526954.tif 000038
2004526954.tif 000039
2004526954.tif 000040
2004526954.tif 000041
2004526954.tif 000042
2004526954.tif 000043
2004526954.tif 000044
2004526954.tif 000045
2004526954.tif 000046
2004526954.tif 000047
【国際公開パンフレット（コレクトバージョン）】
2004526954.tif 000048
2004526954.tif 000049
【手続補正書】
【提出日】平成15年4月16日(2003.4.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
位置情報を取り扱う方法であって、
ユーザに関連する複数の別個の装置から前記ユーザに関する位置データを取得するステップと、
前記ユーザに関する前記取得した位置データの集合を生成するステップと、
前記集合中の項目を予想ユーティリティにしたがって順位付けするステップと、
取得した位置データの前記集合から前記ユーザの可能性のある所在を決定するステップと、
別個の装置の少なくとも１台の位置の変更に応答して前記取得した位置データを更新するステップと
を含む方法。
【請求項２】
前記取得ステップが、二人以上のユーザに関する位置データを取得するステップをさらに含み、
前記生成ステップが、ユーザによって編成された、二人以上のユーザに関する前記位置データの集合を生成するステップをさらに含み、
前記順位付けステップが、二人以上のユーザに関する前記集合中の項目を予想ユーティリティにしたがって順位付けするステップをさらに含む、請求項１に記載の方法。
【請求項３】
前記集合中のデータをフィルタリングして誤りを招くデータを除くステップをさらに含む、請求項１または２に記載の方法。
【請求項４】
ユーザに関する位置データのそれぞれを一つのフォーマットに変換するステップを含む請求項１に記載の方法。
【請求項５】
位置情報を取り扱うための情報取り扱いシステムであって、
ユーザに関連する複数の別個の装置から前記ユーザに関する位置データを取得するための手段と、
前記ユーザに関する前記取得した位置データの集合を生成するための手段と、
前記集合中の項目を予想ユーティリティにしたがって順位付けするための手段と、
取得した位置データの前記集合から前記ユーザの可能性のある所在を決定するための手段と、
別個の装置の少なくとも１台の位置の変更に応答して前記取得した位置データを更新するための手段と
を含むシステム。
【請求項６】
前記取得手段が、二人以上のユーザに関する位置データを取得するための手段をさらに含み、
前記生成手段が、ユーザによって編成された、二人以上のユーザに関する前記位置データの集合を生成するための手段をさらに含み、
前記順位付け手段が、二人以上のユーザに関する前記集合中の項目を予想ユーティリティにしたがって順位付けするための手段をさらに含む、請求項５に記載の情報取り扱いシステム。
【請求項７】
前記集合中のデータをフィルタリングして誤りを招くデータを除くための手段をさらに含む、請求項５または６に記載の情報取り扱いシステム。
【請求項８】
コンピュータで実行されると請求項１ないし４のいずれかに記載の方法を実行するように構成されたプログラム・コード手段を含むコンピュータ・プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に、情報取り扱いシステムに関し、より具体的には、位置情報を取り扱う
方法およびシステムに関する。
【背景技術】
【０００２】
モバイルワイヤレス電子装置、たとえばモバイル電話、ＰＤＡ（personaldigital assistant）およびＧＰＳ（Global Positioning System）装置が非常に人気を博し、それらの使用は非常に一般的になった。一人がこれらの装置２台以上を使用することが一般的である。これらのモバイル装置は、「浸透的コンピューティング」装置とも呼ばれる装置の群のサブセットである。「浸透的コンピューティング」という語が使用される理由は、今や、マイクロプロセッサを有するシステムが、以前はコンピュータ技術によってほとんど触れられなかった各種装置で見られるからである。これらの浸透的コンピューティング装置は、モバイル装置、たとえばセル電話および車載部品を含む。浸透的コンピューティング装置は、しばしば、マイクロプロセッサと関連する揮発性および不揮発性メモリ、入力手段、出力手段ならびに他のコンピューティング装置へのリンクを提供するインタフェース、たとえばネットワーク・インタフェースまたはモデムを含む。
【０００３】
これらの浸透的コンピューティング装置は、独立したコンピューティング能力を一人のユーザまたは、ネットワーク接続された浸透的コンピューティング装置の場合には、ユーザ群に提供するように設計された情報取り扱いシステムである。浸透的コンピューティング装置はまた、マイクロプロセッサに結合され、特殊化機能を実行する一つ以上の入出力装置（たとえばモデム、音声画像装置または特殊化通信装置）を含むことができる。浸透的コンピューティング装置はしばしば、ネットワーク、たとえばローカル・エリア・ネットワーク（ＬＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）またはインタネットを使用して、コンピューティング・システムおよび他の浸透的コンピューティング装置にリンクされる。
【０００４】
衛星ベースまたはネットワークベースの位置決定技術が、モバイル浸透的コンピューティング装置の地理的位置の決定を可能にする（たとえば、モバイル電話の位置ベースのサービスはそのような位置決定技術を利用している）。
【０００５】
ＷＯ  ００／２７１４３は、ワイヤレスの位置ベースのアプリケーションに都合のよい形に変えられた位置情報を強化するために、複数の位置検出装置（ＬＦＥ）入力を使用することを開示する。
【０００６】
ＷＯ  ９８／１０５３８は、複数の市販のワイヤレス・インフラストラクチャを使用した移動局の位置決めを開示する。システムは、ローカルな移動局の位置要求とさらなるグローバルな移動局の要求の両方を処理するための、ＡＭＰＳ、ＮＡＭＰ、ＣＤＭＡ、またはＴＤＭＡ通信規格に基づく市販のハンド・セットまたは移動局の要求された位置を出力するための1つまたは複数の位置システムを有するエンド・ツー・エンドのソリューションである。
【０００７】
一つの問題は、あるソースからの位置情報が別のソースからの情報と矛盾するかもしれないことである。たとえば、ある夫婦が、二人の車に埋め込まれている追跡装置を共用しているとする。それに加えて、ご主人は、位置認識モバイル電話をもっているとする。奥さんが、ご主人を車で仕事場まで送ったのち、自分の仕事場までその車を運転していくとする。その場合、ご主人が自分の仕事場に居ることを示すモバイル電話からの情報は、ご主人が奥さんの仕事場にいることを示す車の追跡装置からの情報とは矛盾する。
【０００８】
このような矛盾は、有意な現実的問題を引き起こしかねない。先の例を続けるならば、ご主人の雇用主が、従業員のモバイル電子装置からの位置情報を使用して従業員の位置を決定するとする。このシステムは、従業員をセールスやサービスのために出向かせることに関して雇用主が適切な決定を下すのに役立つであろう。しかし、あるソースからの情報がご主人が仕事場に居ることを示し、別のソースからの情報がご主人が奥さんの仕事場にいることを示すとき、このシステムは破綻をきたすおそれがある。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
したがって、本発明は、位置情報を取り扱う方法であって、ユーザに関連する複数の別個の装置から前記ユーザに関する位置データを取得するステップと、前記ユーザに関する前記取得した位置データの集合を生成するステップと、前記集合中の項目を予想ユーティリティにしたがって順位付けするステップと、取得した位置データの前記集合から前記ユーザの可能性のある所在を決定するステップと、別個の装置の少なくとも１台の位置の変更に応答して前記取得した位置データを更新するステップとを含む方法を提供する。
【００１０】
方法およびシステムは、複数のソースから位置情報を取得し、集約し、評価することが好ましい。方法およびシステムは、モバイル装置を位置決めするだけにとどまらず、人々、それらの人々のスケジュールおよびそれらの人々の様々な装置に対する関連付けに関する情報を含めることがさらに好ましい。
【００１１】
適切に取り扱われるならば、位置情報は非常に有用なものになる。従業員をセールスやサービスのために出向かせる一例を上述した。本発明は、好ましくは、ユーザが多数のソースから情報を収集し、評価し、ひいては入手可能なすべての位置情報を適切に利用することを可能にすることである。
【００１２】
このような方法または装置なくしては、位置決定技術は、一人のユーザに関する多数の位置ソースまたは多数のユーザによって共用される一つの位置ソースを適切に取り扱うことはできない。このような方法または装置なくしては、ユーザは、一つのソースからの位置情報が別のソースからの情報と矛盾する上述した問題を託されるであろう。
【課題を解決するための手段】
【００１３】
本発明では、好ましくは、多数のソースからの情報をまず収集し、次いで評価することにより、入手可能なすべての位置情報を利用する。一般に、いくつかのソースからの情報は他のソースからの情報よりも信頼性が高いことは理解されよう。たとえば、共用されていない装置からの情報は、二人以上のユーザによって共用されている装置からの情報よりも信頼性が高い。最近位置を変更した装置からの情報は、最近位置を変更していない装置からの情報よりも信頼性が高い。
【００１４】
本発明では、モバイル装置を位置決めするだけでなく、二つ以上のモバイル装置、おそらくは、人の予想位置を示すコンピュータ化カレンダを有するかもしれない人々、すなわちユーザを位置決めするのが好ましい。位置データの電子ソース（以下「位置ソース」という）は、モバイル電子装置、たとえばモバイル電話、ＰＤＡ、ＧＰＳ（Global Positioning System）装置および他の透過的コンピューティング装置を含むのが好ましい。位置ソースはまた、日時に依存して人の予想位置を出すコンピュータベースのモデル、スケジュールまたはカレンダを含むことができる。これらのモデル、スケジュールまたはカレンダは、たとえばＰＤＡ、デスクトップ・コンピュータまたはサーバ上に格納されていることができる。
【００１５】
位置ソースから位置情報を取得したのち、情報をユーザに提供する前に、コンピュータがデータに対して順位付けまたはフィルタリング処理を実行するのが好ましい。
【００１６】
本発明は、位置情報を取り扱うための情報取り扱いシステムであって、ユーザに関連する複数の別個の装置から前記ユーザに関する位置データを取得するための手段と、前記ユーザに関する前記取得した位置データの集合を生成するための手段と、前記集合中の項目を予想ユーティリティにしたがって順位付けするための手段と、取得した位置データの前記集合から前記ユーザの可能性のある所在を決定するための手段と、別個の装置の少なくとも１台の位置の変更に応答して前記取得した位置データを更新するための手段とを含むシステムをさらに提供する。
【００１７】
集合中の誤りを招くデータは、フィルタリングして除くことが好ましい。ユーザの最も可能性のある位置を決定するためにデータを統合整理することが好ましい。
【００１８】
好ましい実施形態によれば、ユーザによって編成された、二人以上のユーザに関する位置データの集合が収集され、二人以上のユーザに関する前記集合中の項目が予想ユーティリティにしたがって順位付けされる。集合に関するデータは、誤りを招くデータを除くためにフィルタリングすることができる。集合のデータは、ユーザの最も可能性のある位置を決定するために統合整理することができる。
【００１９】
一実施形態では、ユーザに関する位置データのそれぞれは一つのフォーマットに変換される。
【００２０】
本発明の好ましい実施形態は、位置情報を取り扱う方法であって、ユーザに関する位置データの集合中の項目を予想ユーティリティにしたがって順位付けするステップと、前記位置データを連続的に更新するステップとを含む方法を提供する。
【００２１】
好ましい実施形態では、項目は二人以上のユーザに関する位置データの集合で予想ユーティリティにしたがって順位付けされる。誤りを招くデータはフィルタリングして除くことができる。ユーザの最も可能性のある位置を決定するために、集合中のさらなるデータを統合整理することができる。
【００２２】
好ましい実施形態によれば、位置情報を取り扱うための情報取り扱いシステムであって、ユーザに関する位置データの集合中の項目を予想ユーティリティにしたがって順位付けするための手段と、前記位置データを連続して更新するための手段とを含む情報取り扱いシステムが提供される。
【００２３】
さらなる態様によれば、プログラムがコンピュータで実行されると、ユーザに関連する複数の位置ソースから前記ユーザに関する位置データを取得するステップと、前記ユーザに関する前記取得した位置データの集合を生成するステップと、前記集合中の項目を予想ユーティリティにしたがって順位付けするステップと、取得した位置データの前記集合から前記ユーザの可能性のある所在を決定するステップと、位置ソースの少なくとも１つの位置の変更に応答して前記取得した位置データを更新するステップとを実行するように構成されたプログラム・コード手段を含むコンピュータ・プログラムが提供される。
【発明を実施するための最良の形態】
【００２４】
次に、本発明の実施形態を以下の図面を参照して例示によってのみ説明する。
【００２５】
概要
本発明は、位置情報を取り扱うためのシステムおよび方法である。本発明は、多数のソースからの位置情報を伴ういかなる状況ででも有用である。収集した位置情報を使用して従業員をセールスやサービスのために出向かせるシステムである一例を上述した。もう一つの例は、第一のユーザに対し、利害関連のある第二のユーザが会合場所に到着したことを知らせるためのシステムである。もう一つの例は、ワールド・ワイド・ウェブを介してユーザの手持ちコンピュータ、ユーザのコンピュータベースのカレンダ、ユーザのＧＰＳユニットおよび地図サービスと対話して、次の会合場所までの適切な運転道案内を提供するシステムである。もう一つの例は、ワールド・ワイド・ウェブを介してユーザのセル電話およびユーザのコンピュータベースのカレンダまたは予定リストと対話して、モバイルユーザが、何らかの業務を処理しなければならない場所に近づいたとき、そのユーザに注意を促すシステムである。これらの例では、出力される情報は、音声もしくは画像、文字または図形であってもよい。
【００２６】
これらの例では、ユーザが、ユーザの実際の位置に適合した有用な情報を提供されることが好ましく、問い合わせをする必要がないということが理解されよう。また、好ましくは、ユーザによって編成された、多数のソースから入手可能なすべての位置情報を利用する。
【００２７】
以下は、本明細書で使用される術語の定義である。「コンピュータ使用可能な媒体」とは、コンピュータとで通信するための信号または伝送機能ならびに各種コンピュータ・メモリ、たとえばフロッピー(R)・ディスク、ハードディスク、ランダム・アクセス・メモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、ＣＤ−ＲＯＭ、フラッシュＲＯＭ、不揮発性ＲＯＭおよび不揮発性メモリをいう。「位置データ」または「位置情報」とは、緯度および経度または他の位置記述をいう。「位置ソース」とは、モバイル電子装置、たとえばモバイル電話、ＰＤＡ、ページャ、ＧＰＳ（Global Positioning System）装置、これらのモバイル電子装置と対応するサーバおよび日時に依存して人の予想位置を出すコンピュータベースのモデル、スケジュールまたはカレンダをはじめとする、位置データの電子ソースをいう。「ユーザ」とは、本発明の実施形態の方法またはシステムによって追跡される位置ソースを利用する人および他のユーザの位置を追跡する人をいう。
【００２８】
システムおよび方法
本発明は、本発明が作用するところのコンピュータのタイプに関して限定されない。まず図１を参照すると、ブロック図が、本発明の実施形態の情報取り扱いシステムによってコンピュータ・ネットワーク上で送達される位置データを示す。図１の左側では、位置ソース―装置１０１、サーバ１１１、装置１０２、装置１０３および装置１０４から位置情報が取得される。位置データは、コンピュータ・ネットワーク９４上で情報取り扱いシステム１０に送達される。情報取り扱いシステム１０内では、位置アグレゲータ２０が、一人以上のユーザに関する位置データを取得し、ユーザによって編成された、一人以上のユーザに関する前記位置データの集合を生成する。論理部品である位置ロジシャン３０が、情報を加入者アプリケーション４０を介してユーザに提供する前に、データに対して評価（順位付け、フィルタリングまたは統合整理処理）を実行する。
【００２９】
次に図２を参照すると、高レベルブロック図が、本発明の実施形態にしたがって図１の情報取り扱いシステム例１０に含めることができる選択された部品を示す。情報取り扱いシステム１０は、主として、ソフトウェアの形態であってもよい（そのようなソフトウェアが記憶される場所またはアクセスされる手段を問わない）コンピュータ読み取り可能な命令によって制御される。このようなソフトウェアを、中央処理装置（ＣＰＵ）５０としても知られるプロセッサ内で実行して、情報取り扱いシステム１０に仕事をさせることができる。ＣＰＵ５０は通常、Intel社またはAdvanced Micro Devices社から市販されている種類のマイクロプロセッサである。
【００３０】
システム・バス５に結合されたメモリ装置は、ランダム・アクセス・メモリ（ＲＡＭ）５６、読み取り専用メモリ（ＲＯＭ）５８および不揮発性メモリ６０を含む。このようなメモリは、情報を記憶し、検索することを許す回路を含む。ＲＯＭは、変更することができない記憶データを含む。ラムに記憶されたデータは、ＣＰＵ５０または他のハードウェア装置によって変更することができる。不揮発性メモリとは、電力を奪われたときでもデータを損失しないメモリである。不揮発性メモリは、ＲＯＭ、ＥＰＲＯＭ、フラッシュ・メモリまたはバッテリパックＣＭＯＳ  ＲＡＭを含む。図２に示すように、そのようなバッテリパックＣＭＯＳ  ＲＡＭは、構成情報を記憶するために使用することができる。拡張カードまたはボードとは、機能またはリソースをコンピュータに付加する回路板である。通常、拡張カードは、メモリ、ディスク・ドライブ制御装置６６、ビデオ・サポート、パラレルおよびシリアル・ポートならびに内部モデムを付加する。ラップトップ、パームトップおよび他のポータブルコンピュータの場合、拡張カードは通常、コンピュータの側面または背面のスロットに挿入されるように設計されたクレジットカード大の装置であるＰＣカードの形態である。このように、空のスロット６８を使用して、種々の拡張カードまたはＰＣカードを受けることができる。ディスク制御装置６６およびディスケット制御装置７０はいずれも、ハードディスク・ドライブ７２およびフロッピー(R)・ディスクまたはディスケット７４に対する読み書きを指図し、制御する特殊目的集積回路および関連の回路を含む。このようなディスク制御装置は、読み書きヘッドの配置のようなタスクを取り扱う。一つのディスク制御装置が二つ以上のディスク・ドライブを制御することができてもよい。ＣＤ−ＲＯＭ（コンパクト・ディスク読み取り専用メモリ）７８からデータを読み取るために、ＣＤ−ＲＯＭ制御装置７６を情報取り扱いシステム１０に含めてもよい。このようなＣＤ−ＲＯＭは、磁気的手段ではなくレーザ光学系を使用してデータを読み取る。
【００３１】
情報取り扱いシステム１０と他の情報取り扱いシステムとの間の通信は、いずれもシステム・バス５に結合されているシリアル制御装置８８およびネットワーク・アダプタ９０によって容易に行うことができる。シリアル制御装置８８は、コンピュータ間またはコンピュータと周辺装置との間で１本の回線を介して情報を一度に１ビットずつ送信するために使用される。図示するように、このようなシリアル・インタフェースを使用してモデム９２と通信することもできる。モデムとは、コンピュータが標準電話回線を介して情報を送信することを可能にする通信装置である。モデムは、コンピュータのデジタル信号を、電話回線を介する通信に適したアナログ信号に変換する。モデム９２またはネットワーク・アダプタ９０は、ソフトウェアおよび情報のソース、たとえばサーバ、電子掲示板、インタネットまたはワールド・ワイド・ウェブへの接続を提供することができる。ネットワーク・アダプタ９０は、情報取り扱いシステム１０をネットワーク９４に接続するために使用することができる通信装置である。ネットワーク９４は、ソフトウェアおよび情報を電子的に通信し、転送する手段をコンピュータのユーザに提供することができる。さらには、ネットワーク９４は、タスクを実行する際のワークロード分担または協力に複数のコンピュータを関与させる分散処理を提供することができる。
【００３２】
キーボード８２およびポインティング装置８４とインタフェースするために、キーボード・マウス制御装置８０が情報取り扱いシステム１０に設けられている。ポインティング装置は、トラック・ボール、ジョイ・スティック、タッチ・タブレットもしくはスクリーンまたは図示するようなマウスを使用して実現することができる。ポインティング装置８４を使用すると、表示装置９６上に見えるポインタまたはカーソルを動かすことができる。入力装置のもう一つの例は、音声入力のためのマイクであろう。表示装置９６、キーボード８２およびポインティング装置８４はそれぞれ、いくつかの公知の規格部品のいずれかを使用して実現できることが当業者によって理解され、認識されよう。
【００３３】
表示制御装置９８によって制御される表示装置９６は、情報取り扱いシステム１０によって生成される画像出力を表示するために使用される。表示装置９６は、陰極線管（ＣＲＴ）、液晶表示装置（ＬＣＤ）、電極発光パネルなどを使用して実現することができる表示画面を含む。表示制御装置９８は、表示装置９６に送られる画像信号を生成するために必要な電子部品を含む。パラレル制御装置９９を介してプリンタ１００を情報取り扱いシステム１０に結合してもよい。パラレル制御装置９９は、システム・バス５と別のパラレル通信装置、たとえばプリンタ１００との間に接続されたワイヤを介して多数のデータおよび制御ビットを同時に送るために使用される。出力装置のもう一つの例は、音声出力のためのスピーカであろう。
【００３４】
ＣＰＵ５０は、命令を取り出し、デコードし、実行し、コンピュータの主データ転送経路であるシステム・バス５を介して他のリソースとの間で情報を転送する。このようなバスは、情報取り扱いシステム１０中の部品どうしを接続し、データ交換のための媒体を画定する。システム・バス５は、メモリ装置５６、５８および６０、ＣＰＵ５０ならびに図２に示す他の装置を接続し、それらの間でのデータ交換を可能にする。
【００３５】
次に図３を参照すると、本発明の実施形態にしたがって位置情報を取得し、集約し、評価するためのシステムの例を示す図が示されている。好ましくは、Java(R)プログラミング言語（Sun Microsystem社から、市販されている）を使用するが、他の言語も使用してもよい。図３の左側で、位置情報が、この例では位置ソース１０１、位置ソース１０２および位置ソース１０３を含む位置ソース３００の群から取得される。
【００３６】
位置ソース３００からの出力は、ＨＴＭＬ（hypertext markuplanguage）、ＸＭＬ（extensible markup language）または他の言語であってもよい。好ましい実施形態では、位置情報は、この例ではアダプタ３０１およびアダプタ３０２を含むアダプタ・サーブレット３１０のセットを介して取得される。これらのアダプタは、種々の位置ソースからの位置データを一つのフォーマットに変換する。例えば、一つのフォーマットは、「ロケーションＸＭＬ」または「ＬｏｃＸＭＬ」と称される、ＸＭＬで実現されたフォーマットであることができる。位置データはまた、この例では位置ソース１０３から直接取得することもできる。以下、図４を参照しながらアダプタのさらなる説明を記す。
【００３７】
位置アグレゲータ２０が、一人以上のユーザに関する位置データを取得し、ユーザによって編成された、一人以上のユーザに関する前記位置データの集合を生成する。集約ＬｏｃＸＭＬ情報３２１として示す位置データの集合は、ロジシャン・ファサード３２０に送られ、このファサードが論理記述３３０、論理ビーン・ファクトリ３４０および論理インプリメンテーション３５０と通信する。これらを以下さらに詳細に説明する。これらは、新たな位置リスト３２２を加入者アプリケーション４０に公表することにより、情報をユーザに提供する前にデータに対して評価（順位付け、フィルタリングまたは統合整理処理）を実行するように働く。もう一つの実施態様では、位置アグレゲータ２０によって何らかの順位付けまたはフィルタリングを実行する。
【００３８】
順位付け、フィルタリングまたは統合整理処理に関して、種々の論理機能をユーザが選択し、以下のように実現することができる。位置データを順位付け、フィルタリングまたは統合整理するために使用される論理機能またはプロセスは「ロジシャン」と呼ばれる。ロジシャンを呼び出す、または実現することは、特定の位置データを順位付け、フィルタリングまたは統合整理するためにロジシャンを使用することである。ＡＰＩ呼び出しGetLogicianTypes()３３１の結果として、論理記述３３０がロジシャン・タイプ３３２を返す。これは、ユーザに提示される選択肢を表す。ＡＰＩ呼び出しGetLogician(logician)３４１の結果として、論理ビーン・ファクトリ３４０がロジシャン３４２を返す。これは、実現する論理機能の種類を選択するユーザを表す。論理機能に関するユーザの好みを加入者好みデータベース３９０に記憶し、そこから検索することもできる。ＡＰＩ呼び出しlogician.invoke(LocationList)３５１の結果として、論理インプリメンテーション３５０がnewLocationList３５２を返す。これは、位置データを順位付け、フィルタリングまたは統合整理するために実現される論理機能の選択された種類を表す。論理インプリメンテーション３５０は、図１の略図に示す位置ロジシャン３０に相当する。新たな位置リスト３２２を加入者アプリケーション４０に公表することにより、システムは、順位付け、フィルタリングまたは統合整理された位置データをユーザに提供する。
【００３９】
システムは、位置情報の集合中の項目を予想ユーティリティにしたがって順位付けすることができる。別のユーザの位置を追跡するユーザは、より最近の移動を示す位置ソースからのデータがより高い順位付けを与えられているような位置データを提供されることができる。これは、どの位置ソースがより最近に移動し、ひいては最新の位置更新を成したかにしたがってデータを順位付けする例である。好ましい実施形態では、各ロケーションＸＭＬエントリがタイム・スタンプを有し、位置データの集合がタイム・スタンプによってソートされる。もう一つの順位付け例では、別のユーザの位置を追跡するユーザは、他の位置ソースよりも正確であると予想される位置ソースからのデータがより高い順位付けを与えられているような位置データを提供されることができる。もう一つの選択肢は、より正確な計測を実施することができる位置ソースからのデータにより高い順位付けを与える方法であろう。
【００４０】
データをフィルタリングする例を示すならば、実際の移動ではなく、位置計測におけるランダムな変動により、報告される位置のわずかな変化が突然に生じることがある。これは、新たな位置データが現在の位置データの集合に加えられる際の限界を設定することによってフィルタリング除去することができるノイズの１種である。このように、システムは、データをフィルタリングして誤りを招くデータを除くことができる。
【００４１】
好ましい実施形態では、位置データの集合中に見られる位置データを統合整理して、最も可能性のあるユーザの位置を決定することができる。たとえば、システムが二つ以上の位置ソースからのデータに基づいて合致位置を決定する結果として、ユーザは、追跡されている別のユーザの最も可能性のある位置を提供されることができる。二つ以上の位置ソースからのデータによって示される合致位置は、いずれか一つの位置ソースからのデータを単独で採用する場合よりも高い確かさを提供するであろう。
【００４２】
実際の位置に関するユーザからのフィードバックおよび従来の人工知能アルゴリズムにより、システムは、その性能を改善するよう学習することが好ましい。システムは、どの位置ソースまたは位置ソースの組み合わせが最も有用であるのかを学習することが好ましい。
【００４３】
上記例を続けると、雇用主は、従業員のモバイル電子装置からの位置情報を使用して従業員の位置を決定することができる。このシステムは、雇用主が、従業員をセールスやサービスのために出向かせることに関して適切な決定を下すのに役立つであろう。雇用主は、このようなシステムを以下のように利用することができる。再び図３を参照すると、論理記述３３０がロジシャン・タイプ３３２を返す。これは、ユーザ、たとえば雇用主に提示される選択肢を表す。選択肢は、「最近移動」、「最正確」および他の選択肢を含むメニューとして提示することができる。論理ビーン・ファクトリ３４０がロジシャン３４２を返す。これは、実現する論理機能の種類を選択するユーザを表す。雇用主が「最近移動」を選択するとする。このロジシャンに関して、規則は、「どの位置ソースが最近に移動し、ひいては最新の位置更新を成したかにしたがってデータを順位付けせよ」と述べることができる。これは、位置情報の集合中の項目を予想ユーティリティにしたがって順位付けする例である。
【００４４】
上記例を続けると、ある夫婦が車に埋め込まれた追跡装置を共有しているとする。それに加え、ご主人は、ＧＰＳ能力を有する２ウェイページャを有するとする。日中、おそらく共有される車は数時間移動しなかったが、２ウェイページャをもったご主人は頻繁に移動していた。ご主人は、雇用主の工場を回り、その後、雇用主所有の車で顧客のところに出向いたかもしれない。雇用主はご主人を追跡することができる。論理インプリメンテーション３５０がnewLocationList３５２を返す。これは、位置データを順位付けするために実現される「最近移動」論理機能を表す。新たな位置リスト３２２を加入者アプリケーション４０に公表することにより、システムは、順位付けされた位置データを雇用主に提供する。ご主人の２ウェイページャからの位置データが、数時間動いていない共有の車からの位置データよりも上に順位付けされて、リストのトップにくるであろう。リストは、以下、図８の例のようなエントリのリストとして表すことができる。加入者アプリケーション４０は、たとえば地図を表示することにより、雇用主が位置データを解釈するのを支援することができる。加入者アプリケーション４０は、ユーザの好みに合うよう、簡略化バージョンの位置データを表示することもできる。以下の表は、ユーザ、たとえば前記例ではご主人に関する位置データの集合の簡略化した例である。
【００４５】
ご主人の位置データ
順位  位置ソース  位置
１．  ページャ    緯度Ｎ３７４８２０  経度Ｗ１２２２７３８
２．  車          緯度Ｎ３７４８２２  経度Ｗ１２２２７４０
【００４６】
このような集合は、さらなる位置ソース、たとえばカレンダまたはセル電話からのエントリを含むこともできる。
【００４７】
図４は、本発明の実施形態にしたがって位置情報を取得し、集約するためのシステムの例を示す高レベルブロック図である。この例では、位置アグレゲータ２０が、位置データを求めて位置ソース、すなわちＧＰＳサーバ４１１、ページャ４０２と呼ぶ２ウェイページャ、ワイヤレス・ハブ４１３と呼ぶワイヤレスＬＡＮハブおよび準拠装置４０４をポーリングする。位置アグレゲータ２０は、一人以上のユーザに関する位置データを取得し、ユーザによって編成された、一人以上のユーザに関する前記位置データの集合を生成する。
【００４８】
位置ソースからの出力は、ＨＴＭＬ（hypertext markup language）、ＸＭＬ（extensiblemarkup language）または他の言語であってもよい。好ましい実施形態では、位置情報は、アダプタ―ＧＰＳアダプタ４２１、ページャ・アダプタ４２２およびワイヤレス・ハブ・アダプタ４２３を介して取得される。これらのアダプタは、種々の位置ソースからの位置データを一つのフォーマットに変換する。これらのアダプタは、一つの望ましいＸＭＬフォーマット以外のフォーマットで位置データを与える位置ソース（たとえば「レガシー」位置ソース）に有用である。好ましい実施形態では、一つのフォーマットは、「ロケーションＸＭＬ」または「ＬｏｃＸＭＬ」と称される、ＸＭＬで実現されたフォーマットであるが、別のフォーマットを使用してもよい。モバイル電子装置およびこれらの装置に対応するサーバからの位置データのための既存のフォーマットがいくつかある。いずれ、アダプタを介さず直接データを取得することができるような汎用される一つの標準フォーマットができるかもしれない。このように、図４は、位置情報を準拠装置４０４（すなわち、出力が所望のフォーマットと適合する装置）から準拠装置データ経路４４４を介して直接取得することができることを示す。
【００４９】
好ましい実施形態では、ＧＰＳアダプタ４２１が、ＧＰＳサーバ４１１から、ＧＰＳ装置４０１を搭載した車の位置を与えるＧＰＳデータを読み取る。ページャ・アダプタ４２２が２ウェイページャ、すなわちページャ４０２からｅメールを受信する。そのｅメール・メッセージ内には、ＧＰＳデータ、すなわち、ページャ４０２が現在対応しているセルの名称が含まれている。セルの名称は、その名称を実際の位置にマッピングするために参照表とともに使用される。ワイヤレス・ハブ・アダプタ４２３が、ワイヤレス・ハブ４１３によってワイヤレスＬＡＮに載っているラップトップ・コンピュータ４０３に関する位置データを受信する。ワイヤレス・ハブ・アダプタ４２３は、シンプル・ネットワーク管理プロトコル（ＳＮＭＰ、ネットワークハードウェアから情報を集めるプロトコル）を使用して、ラップトップ・コンピュータ４０３のワイヤレス・インタネット接続の位置から位置情報を導出する。
【００５０】
他にも多くの同様なアダプタを実現することができる。さらなる例は、コンピュータベースのカレンダを読み取って、日時に依存して人の予想位置を出すアダプタであろう。以下、図５を参照しながらアダプタをさらに説明する。
【００５１】
図５は、本発明の実施形態にしたがって図４のシステム例に含める選択された部品をさらに詳細に示すブロック図である。ページャ４０２は２ウェイページャ。好ましい実施形態では、Research In Motion社から市販されている２ウェイページャを使用する。たとえばMotorola社から市販されている種類の他の類似装置を2ウェイで使用してもよい。ページャ４０２は、ページャが現在通信している無線塔の識別番号を送るのか、取り付けられたＧＰＳ装置によって生成される緯度および経度の座標を送るのかを知的に選択するクライアント・アプリケーションを有する。選択プロセスで使用される規準は、ＧＰＳ信号の強さ、無線塔信号の強さおよび移動の頻度を含む。
【００５２】
通信プロトコルは次のとおりである。ページャ４０２のクライアント・アプリケーションが、変動する頻度で、メッセージをサーバのメッセージ待ち行列５０２（ＰＯＰサーバ）に送る。メッセージは、位置情報をフォーマット―ＤＥＶＩＣＥＩＤ、ＴＯＷＥＲＩＤ、ＧＰＲＭＣ、ＰＯＳ＿ＵＴＣ、ＰＯＳ＿ＳＴＡＴ、ＬＡＴ、ＬＡＴ＿ＲＥＦ、ＬＯＮ、ＬＯＮ＿ＲＥＦ、ＳＰＤ、ＨＤＧ、ＤＡＴＥで含む。ＧＰＳデータが入手できないとき、ＧＰＳフィールドはゼロ値を有する。好ましい実施形態では、メッセージ送信方法は、シンプル・メール転送プロトコル（ＳＭＴＰ）で送られる電子メールである。
【００５３】
ページャ・アダプタ４２２は、マルチスレッドのサーブレットである。サーブレットとは、サーバ上で稼働するJava(R)アプリケーションである。ページャ・アダプタ４２２は、ページャ４０２から受信された新たなメッセージがないかメッセージ待ち行列５０２をプリセットされた間隔でチェックするバックグラウンド・スレッドを有する。メッセージ送信システムは、企業環境で起こりうるファイヤウォールおよびセキュリティ問題を回避するために使用される。このバックグラウンド・スレッドは、ページャ４０２のｅメールからの関連情報を内部位置ハッシュ表中に解析する。ページャ・アダプタ４２２における、ＨＴＴＰ（hypertexttransfer protocol）要求を取り扱うもう一つのスレッドが位置アグレゲータ２０によって呼び出される。ページャ・アダプタ４２２は、そのような要求を受けると、その内部位置ハッシュ表から情報を取り出し、それをロケーションＸＭＬで位置アグレゲータ２０に出力する。
【００５４】
ＤＴＤ（Document Type Definition）とは、マークアップ言語の定義である。以下、本願発明で使用したロケーションＸＭＬのＤＴＤを記す。
【００５５】
2004526954.tif 000050
2004526954.tif 000051
【００５６】
位置アグレゲータ２０は、プリセットした間隔でＨＴＴＰを介してページャ・アダプタ４２２ならびに他のアダプタおよび位置ソースに問い合わせる。位置アグレゲータ２０は、追跡される装置および位置のページャ・アダプタ４２２の現在のリストをロケーションＸＭＬで検索する。
【００５７】
ラップトップ・コンピュータ４０３は、ワイヤレス・ハブ・アダプタ４２３に対してＨＴＴＰ要求を周期的に実施して、ワイヤレス・ハブ・アダプタ４２３がラップトップ・コンピュータ４０３の位置を位置アグレゲータ２０に報告する権限を与えるサービスを有する。
【００５８】
ワイヤレス・ハブ４１３は、ハブを構成し、ハブに関する情報を見るために使用することができるページを表示する内蔵ウェブ・サーバを有するワイヤレスＬＡＮハブ（Cisco Systems社、Apple Computer社、Compaq Computer社、Intel社、Lucent Technologies社または3Com社から市販されている）である。
【００５９】
マルチスレッドのサーブレットであるワイヤレス・ハブ・アダプタ４２３は、プリセットした間隔で任意数のワイヤレスＬＡＮハブ、たとえばワイヤレス・ハブ４１３に対してＨＴＴＰ要求を実施して、各ハブのネットワーク上で取り付けられたクライアントおよびクライアントのインタネット・プロトコル（ＩＰ）アドレスの表を含むＨＴＭＬページを検索するバックグラウンド・スレッドを有している。そして、この情報は、ハブ・ハッシュ表に解析され、その際、キーは、各ワイヤレス・ハブ４１３クライアントのＩＰアドレスであり、値は、各クライアントが使用しているハブである。また、ワイヤレス・ハブ・アダプタ４２３には、入ってくるＨＴＴＰ要求を取り扱うスレッドがある。このワイヤレス・ハブ・アダプタ４２３には、二つのタイプのそのような要求がある。第一のタイプは、ラップトップ・コンピュータ４０３から受信される要求である。これらの要求は、ラップトップ・コンピュータ４０３の位置（バックグラウンド・スレッドによって得られる）を位置アグレゲータ２０に明かすためのサーバ許可を与えるだけである。具体的には、各ＨＴＴＰヘッダが、発生するＩＰアドレスに関して審査される。このＩＰアドレスおよび受信時が認可ハッシュ表に記憶される。他方のタイプの受信されるＨＴＴＰ要求は、位置アグレゲータ２０からのものである。ワイヤレス・ハブ・アダプタ４２３は、そのような要求を受けるたび、認可ハッシュ表中で反復し、最近認可を送った（プリセット値にしたがって）ＩＰアドレスごとに、ワイヤレス・ハブ４１３のハッシュ表から対応するハブ情報が検索される。そして、この情報がロケーションＸＭＬへと適切に解析される。
【００６０】
位置アグレゲータ２０は、プリセットした間隔でＨＴＴＰを介してワイヤレス・ハブ・アダプタ４２３ならびに他のアダプタおよび位置ソースに問い合わせる。位置アグレゲータ２０は、追跡される装置および位置のワイヤレス・ハブ・アダプタ４２３の現在のリストをロケーションＸＭＬで検索する。
【００６１】
図６は、実施例として実現される、位置情報を取得し、集約するプロセスの一例を示す流れ図である。図１、３、４および５に示す位置アグレゲータ２０の中で、プロセスが始まる（６１０）。「ポーリング・スレッド」と呼ばれる任意数のポーリング・プロセス（例として三つ６０１、６０２および６０３を示す）を起動する（６２０）。各ポーリング・スレッドが位置データを求めてＨＴＴＰ６３０によって位置ソースをポーリングする（６３０）。各ポーリング・スレッドは、前記位置データのいずれかが新規であるかどうかを決定する（決定６４０）。各ポーリング・スレッドは、新たな位置データをマッピング・プロセスに送る（６５０）。「マッピング・スレッド」と呼ばれるマッピング・プロセスは、以下、図７を参照しながらさらに説明する。ポーリング・スレッドが終了するまでステップ６３０、６４０および６５０を繰り返す。このようにして、位置データは連続的に更新される。
【００６２】
図７は、実施例として実現される、位置情報を取得し、集約するための、図６に示す例に関連するもう一つのプロセスを示す流れ図である。図６に示すポーリング・スレッド、たとえば６０１、６０２および６０３とともに、マッピング・プロセス７０１が始まり（７１０）、ポーリング・スレッド、たとえば６０１、６０２および６０３から新たな位置データを受け取る（７２０）。マッピング・スレッド７０１は、新たな位置データをユーザにマッピングする（７３０）。
【００６３】
次に、この例は、マッピング・スレッドを待機させる（７５０）、任意の「タイムアウト」ステップ（決定７４０）を含む。これを以下に説明する。所定期間待機したのち、決定７４０でＹＥＳの分岐を取ると、マッピング・スレッドが、ユーザによって編成された位置データの集合を論理プロセスに送り（７６０）、このプロセスが、加入者アプリケーションを介して情報をユーザに提供する前に、データに対して評価（たとえば順位付けまたはフィルタリング処理）を実施する。
【００６４】
「タイムアウト」ステップ（決定７４０）は、多くの新たな位置データがポーリング・スレッド、たとえば図６に示す６０１、６０２および６０３から巡回しながら受信されることを保証するように設計されている。換言するならば、ステップ７６０によって提供される出力は、二つ以上の新たな位置データを含むならば、より貴重である。二つ以上の新たな位置データを受けるために、マッピング・スレッド７０１は、ポーリング・スレッド、たとえば６０１、６０２および６０３のうち、より多くが新たな位置データをマッピング・スレッド７０１に送る（６５０）まで待つことが好ましい。タイムアウトの値は、どれだけ多くの新たな位置データがステップ７６０によって公表されるか、またそれらの公表の間の期間のトレードオフである。
【００６５】
上記ステップ７２０、７３０および７６０は、決定７７０でＹＥＳ分岐が取られ、マッピング・スレッドが終了する（７８０）まで繰り返される。このようにして、位置データの集合は連続的に更新される。
【００６６】
位置データの集合は、ＧＰＳ能力を有する２ウェイページャからの位置データを示す、ブラウザによって見られるロケーションＸＭＬドキュメントのサンプルである図８の例のようなエントリの集合である。図８は、モバイル装置（この例では２ウェイページャ）の識別番号（８１１）、取り付けられたＧＰＳ装置によって生成される緯度（８３２）および経度（８３３）の座標、タイム・スタンプ（８７１）ならびにページャが現在通信している無線塔の識別番号（８７２）を含む。図３、４および５に示すアダプタから出力されるロケーションＸＭＬは、図８の例のようなエントリからなる。
【００６７】
図９は、本発明の実施形態にしたがって位置情報を評価するための論理プロセス（ロジシャン）を選択する方法を示す流れ図である。これは、一つ以上の好ましいロジシャンを選択する実行時前プロセスである。選択は、エンド・ユーザが直接実施することもできるし、第三者が実施することもできる。このような選択は、図３および位置情報を取得し、集約し、評価するためのシステムに関して上記で論じたものである。選択プロセスが始まると（９１０）、ユーザおよび、ＡＰＩ呼び出しGetLogicianTypes()の結果として、ユーザが使用することを好むロジシャンを選択するため、ユーザ・インタフェース（ＵＩ）を加入者アプリケーションに提供する（９２０）。これらの好みを加入者好みデータベースに記憶すると（９３０）、プロセスは終了する（９４０）。
【００６８】
図１０は、本発明の実施形態にしたがって位置情報を評価するための論理プロセスの例を示す流れ図である。これは、ユーザの好みを利用可能なロジシャンと適合させ、ロジシャンを実現して位置情報を評価する実行時プロセスである。このようなプロセスは、図３および位置情報を取得し、集約し、評価するためのシステムに関して上記で論じたものである。プロセスが始まると（１０１０）、位置情報の集合を位置アグレゲータから受け取る（１０２０）。ステップ１０３０で加入者好みデータベース中でこのユーザに関して実現されるロジシャンを参照したのち、ステップ１０４０に進み、論理ビーン・ファクトリからロジシャンを取得する。ステップ１０４０は、ＡＰＩ呼び出しGetLogician(logician)の結果である。位置情報の集合に対してこのロジシャンを呼び出す（１０５０）。ステップ１０５０は、ＡＰＩ呼び出しlogician.invoke(LocationList)の結果である。これは、図３を参照しながら上記で論じたデータを順位付けし、フィルタリングし、統合整理する例と同様に、実施されている論理機能の選択された種類に対応する。結果を一つ以上の加入者アプリケーションに公表し（１０６０）、システムが、順位付け、フィルタリングまたは統合整理された位置データをユーザに提供する。上記ステップ１０２０〜１０６０は、決定１０７０でＹＥＳ分岐が取られ、プロセスが終了する（１０８０）まで繰り返される。このようにして、位置データの評価は連続的に更新される。
【００６９】
図１１は、本発明の実施形態にしたがって位置情報を取得し、集約し、評価するためのシステムとで対話する加入者アプリケーションの例を示す流れ図である。図１１は、加入者アプリケーションの視点から見た図である。プロセスが１１０で始まると、利用可能なユーザおよびロジシャンに関して図３に３２０で示すロジシャン・ファサードに問い合わせる（１１２０）。ユーザおよびロジシャンを選択し（１１３０）、プロセスは、位置情報が公表されるのを待つ（１１４０）。位置情報を受け取り（１１５０）、加入者アプリケーションの機能にしたがって処理する（１１６０）。このようにして、システムは、順位付け、フィルタリングまたは統合整理された位置データをユーザに提供する。上記ステップ１１２０〜１１６０は、決定１１７０でＹＥＳ分岐が取られ、プロセスが終了する（１１８０）まで繰り返される。このようにして、エンド・ユーザは、連続的に更新される位置データの評価を提供される。
【００７０】
本発明の好ましい実施形態の一つは、アプリケーション、すなわち、たとえばコンピュータのランダム・アクセス・メモリに常駐することができるモード・モジュールにおける命令セット（プログラム・コード）である。命令セットは、コンピュータによって求められるまで、別のコンピュータ・メモリ、たとえばハードディスク・ドライブまたは脱着可能なメモリ、たとえば光ディスク（ＣＤ  ＲＯＭドライブで最終的に使用する場合）もしくはフロッピー(R)・ディスク（フロッピー(R)ディスク・ドライブで最終的に使用する場合）に記憶しておくこともできるし、インタネットまたは他のコンピュータ・ネットワークを介してダウンロードすることもできる。したがって、好ましい実施形態は、コンピュータで使用するためのコンピュータ実行可能な命令を有するコンピュータ使用可能な媒体として実現することができる。加えて、前記種々の方法は、ソフトウェアによって選択的に起動または再構成される汎用コンピュータで好都合に実現されるが、当業者は、ハードウェア、ファームウェアまたは必要な方法ステップを実行するために構成されたより特殊化された装置でそのような方法を実施することもできることを理解するであろう。
【００７１】
本特許文献の開示の一部は、著作権または商標保護の対象である実体を含む。著作権または商標所有者は、特許開示のファクシミリ複製に異議を唱えないが、それ以外では、あらゆる著作権または商標権を留保する。
【図面の簡単な説明】
【００７２】
【図１】本発明の一実施形態にしたがって情報取り扱いシステムによってコンピュータ・ネットワーク上で送達される位置データを示すブロック図である。
【図２】図１の情報取り扱いシステム例に含めることができる選択された部品を示す高レベル・ブロック図である。
【図３】本発明の一実施形態にしたがって位置情報を取得し、集約し、評価するためのシステムの例を示す高レベル・ブロック図である。
【図４】本発明の一実施形態にしたがって位置情報を取得し、集約するためのシステムの例を示す高レベルのブロック図である。
【図５】本発明の一実施形態にしたがって図４のシステム例に含まれる選択された部品をさらに詳細に示すブロック図である。
【図６】実施例として実現される、位置情報を取得し、集約するプロセスの一例を示す流れ図である。
【図７】実施例として実現される、位置情報を取得し、集約するための、図６に示す例に関連するもう一つのプロセスを示す流れ図である。
【図８】本発明の一実施形態にしたがって、ＧＰＳ能力を有する２ウェイ・ページャからの位置データを示す、ブラウザによって見られるロケーションＸＭＬドキュメントのサンプルである。
【図９】本発明の一実施形態にしたがって位置情報を評価するための論理プロセスを選択する方法を示す流れ図である。
【図１０】本発明の一実施形態にしたがって位置情報を評価するための論理プロセスの例を示す流れ図である。
【図１１】本発明の一実施形態にしたがって位置情報を取得し、集約し、評価するためのシステムと対話する加入者アプリケーションの例を示す流れ図である。




【手続補正書】
【提出日】平成15年5月21日(2003.5.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
位置情報を取り扱う方法であって、
ユーザに関連する複数の位置ソースから前記ユーザに関する位置データを取得するステップと、
前記ユーザに関する前記取得した位置データの集合を生成するステップと、
前記集合中の項目を予想ユーティリティにしたがって順位付けするステップと、
取得した位置データの前記集合から前記ユーザの可能性のある所在を決定するステップと、
位置ソースの少なくとも１つの位置の変更に応答して前記取得した位置データを更新するステップと
を含む方法。
【請求項２】
前記取得ステップが、二人以上のユーザに関する位置データを取得するステップをさらに含み、
前記生成ステップが、ユーザによって編成された、二人以上のユーザに関する前記位置データの集合を生成するステップをさらに含み、
前記順位付けステップが、二人以上のユーザに関する前記集合中の項目を予想ユーティリティにしたがって順位付けするステップをさらに含む、請求項１に記載の方法。
【請求項３】
前記集合中のデータをフィルタリングして誤りを招くデータを除くステップをさらに含む、請求項１または２に記載の方法。
【請求項４】
ユーザに関する位置データのそれぞれを一つのフォーマットに変換するステップを含む請求項１に記載の方法。
【請求項５】
位置情報を取り扱うための情報取り扱いシステムであって、
ユーザの関連する複数の位置ソースから前記ユーザに関する位置データを取得するための手段と、
前記ユーザに関する前記取得した位置データの集合を生成するための手段と、
前記集合中の項目を予想ユーティリティにしたがって順位付けするための手段と、
取得した位置データの前記集合から前記ユーザの可能性のある所在を決定するための手段と、
位置ソースの少なくとも１つの位置の変更に応答して前記取得した位置データを更新するための手段と
を含む情報取り扱いシステム。
【請求項６】
前記取得手段が、二人以上のユーザに関する位置データを取得するための手段をさらに含み、
前記生成手段が、ユーザによって編成された、二人以上のユーザに関する前記位置データの集合を生成するための手段をさらに含み、
前記順位付け手段が、二人以上のユーザに関する前記集合中の項目を予想ユーティリティにしたがって順位付けするための手段をさらに含む、請求項５に記載の情報取り扱いシステム。
【請求項７】
前記集合中のデータをフィルタリングして誤りを招くデータを除くための手段をさらに含む、請求項５または６に記載の情報取り扱いシステム。
【請求項８】
コンピュータで実行されると請求項１ないし４のいずれかに記載の方法を実行するように構成されたプログラム・コード手段を含むコンピュータ・プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に、情報取り扱いシステムに関し、より具体的には、位置情報を取り扱う
方法およびシステムに関する。
【背景技術】
【０００２】
モバイルワイヤレス電子装置、たとえばモバイル電話、ＰＤＡ（personaldigital assistant）およびＧＰＳ（Global Positioning System）装置が非常に人気を博し、それらの使用は非常に一般的になった。一人がこれらの装置２台以上を使用することが一般的である。これらのモバイル装置は、「浸透的コンピューティング」装置とも呼ばれる装置の群のサブセットである。「浸透的コンピューティング」という語が使用される理由は、今や、マイクロプロセッサを有するシステムが、以前はコンピュータ技術によってほとんど触れられなかった各種装置で見られるからである。これらの浸透的コンピューティング装置は、モバイル装置、たとえばセル電話および車載部品を含む。浸透的コンピューティング装置は、しばしば、マイクロプロセッサと関連する揮発性および不揮発性メモリ、入力手段、出力手段ならびに他のコンピューティング装置へのリンクを提供するインタフェース、たとえばネットワーク・インタフェースまたはモデムを含む。
【０００３】
これらの浸透的コンピューティング装置は、独立したコンピューティング能力を一人のユーザまたは、ネットワーク接続された浸透的コンピューティング装置の場合には、ユーザ群に提供するように設計された情報取り扱いシステムである。浸透的コンピューティング装置はまた、マイクロプロセッサに結合され、特殊化機能を実行する一つ以上の入出力装置（たとえばモデム、音声画像装置または特殊化通信装置）を含むことができる。浸透的コンピューティング装置はしばしば、ネットワーク、たとえばローカル・エリア・ネットワーク（ＬＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）またはインタネットを使用して、コンピューティング・システムおよび他の浸透的コンピューティング装置にリンクされる。
【０００４】
衛星ベースまたはネットワークベースの位置決定技術が、モバイル浸透的コンピューティング装置の地理的位置の決定を可能にする（たとえば、モバイル電話の位置ベースのサービスはそのような位置決定技術を利用している）。
【０００５】
ＷＯ  ００／２７１４３は、ワイヤレスの位置ベースのアプリケーションに都合のよい形に変えられた位置情報を強化するために、複数の位置検出装置（ＬＦＥ）入力を使用することを開示する。
【０００６】
ＷＯ  ９８／１０５３８は、複数の市販のワイヤレス・インフラストラクチャを使用した移動局の位置決めを開示する。システムは、ローカルな移動局の位置要求とさらなるグローバルな移動局の要求の両方を処理するための、ＡＭＰＳ、ＮＡＭＰ、ＣＤＭＡ、またはＴＤＭＡ通信規格に基づく市販のハンド・セットまたは移動局の要求された位置を出力するための1つまたは複数の位置システムを有するエンド・ツー・エンドのソリューションである。
【０００７】
一つの問題は、あるソースからの位置情報が別のソースからの情報と矛盾するかもしれないことである。たとえば、ある夫婦が、二人の車に埋め込まれている追跡装置を共用しているとする。それに加えて、ご主人は、位置認識モバイル電話をもっているとする。奥さんが、ご主人を車で仕事場まで送ったのち、自分の仕事場までその車を運転していくとする。その場合、ご主人が自分の仕事場に居ることを示すモバイル電話からの情報は、ご主人が奥さんの仕事場にいることを示す車の追跡装置からの情報とは矛盾する。
【０００８】
このような矛盾は、有意な現実的問題を引き起こしかねない。先の例を続けるならば、ご主人の雇用主が、従業員のモバイル電子装置からの位置情報を使用して従業員の位置を決定するとする。このシステムは、従業員をセールスやサービスのために出向かせることに関して雇用主が適切な決定を下すのに役立つであろう。しかし、あるソースからの情報がご主人が仕事場に居ることを示し、別のソースからの情報がご主人が奥さんの仕事場にいることを示すとき、このシステムは破綻をきたすおそれがある。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
したがって、本発明は、位置情報を取り扱う方法であって、ユーザに関連する複数の位置ソースから前記ユーザに関する位置データを取得し、前記ユーザに関する前記取得した位置データの集合を生成し、前記集合中の項目を予想ユーティリティにしたがって順位付けし、取得した位置データの前記集合から前記ユーザの可能性のある所在を決定し、位置ソースの少なくとも１つの位置の変更に応答して前記取得した位置データを更新することを含む方法を提供する。
【００１０】
方法およびシステムは、複数のソースから位置情報を取得し、集約し、評価することが好ましい。方法およびシステムは、モバイル装置を位置決めするだけにとどまらず、人々、それらの人々のスケジュールおよびそれらの人々の様々な装置に対する関連付けに関する情報を含めることがさらに好ましい。
【００１１】
適切に取り扱われるならば、位置情報は非常に有用なものになる。従業員をセールスやサービスのために出向かせる一例を上述した。本発明は、好ましくは、ユーザが多数のソースから情報を収集し、評価し、ひいては入手可能なすべての位置情報を適切に利用することを可能にすることである。
【００１２】
このような方法または装置なくしては、位置決定技術は、一人のユーザに関する多数の位置ソースまたは多数のユーザによって共用される一つの位置ソースを適切に取り扱うことはできない。このような方法または装置なくしては、ユーザは、一つのソースからの位置情報が別のソースからの情報と矛盾する上述した問題を託されるであろう。
【課題を解決するための手段】
【００１３】
本発明では、好ましくは、多数のソースからの情報をまず収集し、次いで評価することにより、入手可能なすべての位置情報を利用する。一般に、いくつかのソースからの情報は他のソースからの情報よりも信頼性が高いことは理解されよう。たとえば、共用されていない装置からの情報は、二人以上のユーザによって共用されている装置からの情報よりも信頼性が高い。最近位置を変更した装置からの情報は、最近位置を変更していない装置からの情報よりも信頼性が高い。
【００１４】
本発明では、モバイル装置を位置決めするだけでなく、二つ以上のモバイル装置、おそらくは、人の予想位置を示すコンピュータ化カレンダを有するかもしれない人々、すなわちユーザを位置決めするのが好ましい。位置データの電子ソース（以下「位置ソース」という）は、モバイル電子装置、たとえばモバイル電話、ＰＤＡ、ＧＰＳ（Global Positioning System）装置および他の透過的コンピューティング装置を含むのが好ましい。位置ソースはまた、日時に依存して人の予想位置を出すコンピュータベースのモデル、スケジュールまたはカレンダを含むことができる。これらのモデル、スケジュールまたはカレンダは、たとえばＰＤＡ、デスクトップ・コンピュータまたはサーバ上に格納されていることができる。
【００１５】
位置ソースから位置情報を取得したのち、情報をユーザに提供する前に、コンピュータがデータに対して順位付けまたはフィルタリング処理を実行するのが好ましい。
【００１６】
本発明は、位置情報を取り扱うための情報取り扱いシステムであって、ユーザに関連する複数の位置ソースから前記ユーザに関する位置データを取得するための手段と、前記ユーザに関する前記取得した位置データの集合を生成するための手段と、前記集合中の項目を予想ユーティリティにしたがって順位付けするための手段と、取得した位置データの前記集合から前記ユーザの可能性のある所在を決定するための手段と、位置ソースの少なくとも１つの位置の変更に応答して前記取得した位置データを更新するための手段とを含む情報取り扱いシステムをさらに提供する。
【００１７】
集合中の誤りを招くデータは、フィルタリングして除くことが好ましい。ユーザの最も可能性のある位置を決定するためにデータを統合整理することが好ましい。
【００１８】
好ましい実施形態によれば、ユーザによって編成された、二人以上のユーザに関する位置データの集合が収集され、二人以上のユーザに関する前記集合中の項目が予想ユーティリティにしたがって順位付けされる。集合に関するデータは、誤りを招くデータを除くためにフィルタリングすることができる。集合のデータは、ユーザの最も可能性のある位置を決定するために統合整理することができる。
【００１９】
一実施形態では、ユーザに関する位置データのそれぞれは一つのフォーマットに変換される。
【００２０】
本発明の好ましい実施形態は、位置情報を取り扱う方法であって、ユーザに関する位置データの集合中の項目を予想ユーティリティにしたがって順位付けするステップと、前記位置データを連続的に更新するステップとを含む方法を提供する。
【００２１】
好ましい実施形態では、項目は二人以上のユーザに関する位置データの集合で予想ユーティリティにしたがって順位付けされる。誤りを招くデータはフィルタリングして除くことができる。ユーザの最も可能性のある位置を決定するために、集合中のさらなるデータを統合整理することができる。
【００２２】
好ましい実施形態によれば、位置情報を取り扱うための情報取り扱いシステムであって、ユーザに関する位置データの集合中の項目を予想ユーティリティにしたがって順位付けするための手段と、前記位置データを連続して更新するための手段とを含む情報取り扱いシステムが提供される。
【００２３】
さらなる態様によれば、プログラムがコンピュータで実行されると、ユーザの関連する複数の位置ソースから前記ユーザに関する位置データを取得するステップと、前記ユーザに関する前記取得した位置データの集合を生成するステップと、前記集合中の項目を予想ユーティリティにしたがって順位付けするステップと、取得した位置データの前記集合から前記ユーザの可能性のある所在を決定するステップと、位置ソースの少なくとも１つの位置の変更に応答して前記取得した位置データを更新するステップとを実行するように構成されたプログラム・コード手段を含むコンピュータ・プログラムが提供される。
【発明を実施するための最良の形態】
【００２４】
次に、本発明の実施形態を以下の図面を参照して例示によってのみ説明する。
【００２５】
概要
本発明は、位置情報を取り扱うためのシステムおよび方法である。本発明は、多数のソースからの位置情報を伴ういかなる状況ででも有用である。収集した位置情報を使用して従業員をセールスやサービスのために出向かせるシステムである一例を上述した。もう一つの例は、第一のユーザに対し、利害関連のある第二のユーザが会合場所に到着したことを知らせるためのシステムである。もう一つの例は、ワールド・ワイド・ウェブを介してユーザの手持ちコンピュータ、ユーザのコンピュータベースのカレンダ、ユーザのＧＰＳユニットおよび地図サービスと対話して、次の会合場所までの適切な運転道案内を提供するシステムである。もう一つの例は、ワールド・ワイド・ウェブを介してユーザのセル電話およびユーザのコンピュータベースのカレンダまたは予定リストと対話して、モバイルユーザが、何らかの業務を処理しなければならない場所に近づいたとき、そのユーザに注意を促すシステムである。これらの例では、出力される情報は、音声もしくは画像、文字または図形であってもよい。
【００２６】
これらの例では、ユーザが、ユーザの実際の位置に適合した有用な情報を提供されることが好ましく、問い合わせをする必要がないということが理解されよう。また、好ましくは、ユーザによって編成された、多数のソースから入手可能なすべての位置情報を利用する。
【００２７】
以下は、本明細書で使用される術語の定義である。「コンピュータ使用可能な媒体」とは、コンピュータとで通信するための信号または伝送機能ならびに各種コンピュータ・メモリ、たとえばフロッピー(R)・ディスク、ハードディスク、ランダム・アクセス・メモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、ＣＤ−ＲＯＭ、フラッシュＲＯＭ、不揮発性ＲＯＭおよび不揮発性メモリをいう。「位置データ」または「位置情報」とは、緯度および経度または他の位置記述をいう。「位置ソース」とは、モバイル電子装置、たとえばモバイル電話、ＰＤＡ、ページャ、ＧＰＳ（Global Positioning System）装置、これらのモバイル電子装置と対応するサーバおよび日時に依存して人の予想位置を出すコンピュータベースのモデル、スケジュールまたはカレンダをはじめとする、位置データの電子ソースをいう。「ユーザ」とは、本発明の実施形態の方法またはシステムによって追跡される位置ソースを利用する人および他のユーザの位置を追跡する人をいう。
【００２８】
システムおよび方法
本発明は、本発明が作用するところのコンピュータのタイプに関して限定されない。まず図１を参照すると、ブロック図が、本発明の実施形態の情報取り扱いシステムによってコンピュータ・ネットワーク上で送達される位置データを示す。図１の左側では、位置ソース―装置１０１、サーバ１１１、装置１０２、装置１０３および装置１０４から位置情報が取得される。位置データは、コンピュータ・ネットワーク９４上で情報取り扱いシステム１０に送達される。情報取り扱いシステム１０内では、位置アグレゲータ２０が、一人以上のユーザに関する位置データを取得し、ユーザによって編成された、一人以上のユーザに関する前記位置データの集合を生成する。論理部品である位置ロジシャン３０が、情報を加入者アプリケーション４０を介してユーザに提供する前に、データに対して評価（順位付け、フィルタリングまたは統合整理処理）を実行する。
【００２９】
次に図２を参照すると、高レベルブロック図が、本発明の実施形態にしたがって図１の情報取り扱いシステム例１０に含めることができる選択された部品を示す。情報取り扱いシステム１０は、主として、ソフトウェアの形態であってもよい（そのようなソフトウェアが記憶される場所またはアクセスされる手段を問わない）コンピュータ読み取り可能な命令によって制御される。このようなソフトウェアを、中央処理装置（ＣＰＵ）５０としても知られるプロセッサ内で実行して、情報取り扱いシステム１０に仕事をさせることができる。ＣＰＵ５０は通常、Intel社またはAdvanced Micro Devices社から市販されている種類のマイクロプロセッサである。
【００３０】
システム・バス５に結合されたメモリ装置は、ランダム・アクセス・メモリ（ＲＡＭ）５６、読み取り専用メモリ（ＲＯＭ）５８および不揮発性メモリ６０を含む。このようなメモリは、情報を記憶し、検索することを許す回路を含む。ＲＯＭは、変更することができない記憶データを含む。ラムに記憶されたデータは、ＣＰＵ５０または他のハードウェア装置によって変更することができる。不揮発性メモリとは、電力を奪われたときでもデータを損失しないメモリである。不揮発性メモリは、ＲＯＭ、ＥＰＲＯＭ、フラッシュ・メモリまたはバッテリパックＣＭＯＳ  ＲＡＭを含む。図２に示すように、そのようなバッテリパックＣＭＯＳ  ＲＡＭは、構成情報を記憶するために使用することができる。拡張カードまたはボードとは、機能またはリソースをコンピュータに付加する回路板である。通常、拡張カードは、メモリ、ディスク・ドライブ制御装置６６、ビデオ・サポート、パラレルおよびシリアル・ポートならびに内部モデムを付加する。ラップトップ、パームトップおよび他のポータブルコンピュータの場合、拡張カードは通常、コンピュータの側面または背面のスロットに挿入されるように設計されたクレジットカード大の装置であるＰＣカードの形態である。このように、空のスロット６８を使用して、種々の拡張カードまたはＰＣカードを受けることができる。ディスク制御装置６６およびディスケット制御装置７０はいずれも、ハードディスク・ドライブ７２およびフロッピー(R)・ディスクまたはディスケット７４に対する読み書きを指図し、制御する特殊目的集積回路および関連の回路を含む。このようなディスク制御装置は、読み書きヘッドの配置のようなタスクを取り扱う。一つのディスク制御装置が二つ以上のディスク・ドライブを制御することができてもよい。ＣＤ−ＲＯＭ（コンパクト・ディスク読み取り専用メモリ）７８からデータを読み取るために、ＣＤ−ＲＯＭ制御装置７６を情報取り扱いシステム１０に含めてもよい。このようなＣＤ−ＲＯＭは、磁気的手段ではなくレーザ光学系を使用してデータを読み取る。
【００３１】
情報取り扱いシステム１０と他の情報取り扱いシステムとの間の通信は、いずれもシステム・バス５に結合されているシリアル制御装置８８およびネットワーク・アダプタ９０によって容易に行うことができる。シリアル制御装置８８は、コンピュータ間またはコンピュータと周辺装置との間で１本の回線を介して情報を一度に１ビットずつ送信するために使用される。図示するように、このようなシリアル・インタフェースを使用してモデム９２と通信することもできる。モデムとは、コンピュータが標準電話回線を介して情報を送信することを可能にする通信装置である。モデムは、コンピュータのデジタル信号を、電話回線を介する通信に適したアナログ信号に変換する。モデム９２またはネットワーク・アダプタ９０は、ソフトウェアおよび情報のソース、たとえばサーバ、電子掲示板、インタネットまたはワールド・ワイド・ウェブへの接続を提供することができる。ネットワーク・アダプタ９０は、情報取り扱いシステム１０をネットワーク９４に接続するために使用することができる通信装置である。ネットワーク９４は、ソフトウェアおよび情報を電子的に通信し、転送する手段をコンピュータのユーザに提供することができる。さらには、ネットワーク９４は、タスクを実行する際のワークロード分担または協力に複数のコンピュータを関与させる分散処理を提供することができる。
【００３２】
キーボード８２およびポインティング装置８４とインタフェースするために、キーボード・マウス制御装置８０が情報取り扱いシステム１０に設けられている。ポインティング装置は、トラック・ボール、ジョイ・スティック、タッチ・タブレットもしくはスクリーンまたは図示するようなマウスを使用して実現することができる。ポインティング装置８４を使用すると、表示装置９６上に見えるポインタまたはカーソルを動かすことができる。入力装置のもう一つの例は、音声入力のためのマイクであろう。表示装置９６、キーボード８２およびポインティング装置８４はそれぞれ、いくつかの公知の規格部品のいずれかを使用して実現できることが当業者によって理解され、認識されよう。
【００３３】
表示制御装置９８によって制御される表示装置９６は、情報取り扱いシステム１０によって生成される画像出力を表示するために使用される。表示装置９６は、陰極線管（ＣＲＴ）、液晶表示装置（ＬＣＤ）、電極発光パネルなどを使用して実現することができる表示画面を含む。表示制御装置９８は、表示装置９６に送られる画像信号を生成するために必要な電子部品を含む。パラレル制御装置９９を介してプリンタ１００を情報取り扱いシステム１０に結合してもよい。パラレル制御装置９９は、システム・バス５と別のパラレル通信装置、たとえばプリンタ１００との間に接続されたワイヤを介して多数のデータおよび制御ビットを同時に送るために使用される。出力装置のもう一つの例は、音声出力のためのスピーカであろう。
【００３４】
ＣＰＵ５０は、命令を取り出し、デコードし、実行し、コンピュータの主データ転送経路であるシステム・バス５を介して他のリソースとの間で情報を転送する。このようなバスは、情報取り扱いシステム１０中の部品どうしを接続し、データ交換のための媒体を画定する。システム・バス５は、メモリ装置５６、５８および６０、ＣＰＵ５０ならびに図２に示す他の装置を接続し、それらの間でのデータ交換を可能にする。
【００３５】
次に図３を参照すると、本発明の実施形態にしたがって位置情報を取得し、集約し、評価するためのシステムの例を示す図が示されている。好ましくは、Java(R)プログラミング言語（Sun Microsystem社から、市販されている）を使用するが、他の言語も使用してもよい。図３の左側で、位置情報が、この例では位置ソース１０１、位置ソース１０２および位置ソース１０３を含む位置ソース３００の群から取得される。
【００３６】
位置ソース３００からの出力は、ＨＴＭＬ（hypertext markup language）、ＸＭＬ（extensiblemarkup language）または他の言語であってもよい。好ましい実施形態では、位置情報は、この例ではアダプタ３０１およびアダプタ３０２を含むアダプタ・サーブレット３１０のセットを介して取得される。これらのアダプタは、種々の位置ソースからの位置データを一つのフォーマットに変換する。例えば、一つのフォーマットは、「ロケーションＸＭＬ」または「ＬｏｃＸＭＬ」と称される、ＸＭＬで実現されたフォーマットであることができる。位置データはまた、この例では位置ソース１０３から直接取得することもできる。以下、図４を参照しながらアダプタのさらなる説明を記す。
【００３７】
位置アグレゲータ２０が、一人以上のユーザに関する位置データを取得し、ユーザによって編成された、一人以上のユーザに関する前記位置データの集合を生成する。集約ＬｏｃＸＭＬ情報３２１として示す位置データの集合は、ロジシャン・ファサード３２０に送られ、このファサードが論理記述３３０、論理ビーン・ファクトリ３４０および論理インプリメンテーション３５０と通信する。これらを以下さらに詳細に説明する。これらは、新たな位置リスト３２２を加入者アプリケーション４０に公表することにより、情報をユーザに提供する前にデータに対して評価（順位付け、フィルタリングまたは統合整理処理）を実行するように働く。もう一つの実施態様では、位置アグレゲータ２０によって何らかの順位付けまたはフィルタリングを実行する。
【００３８】
順位付け、フィルタリングまたは統合整理処理に関して、種々の論理機能をユーザが選択し、以下のように実現することができる。位置データを順位付け、フィルタリングまたは統合整理するために使用される論理機能またはプロセスは「ロジシャン」と呼ばれる。ロジシャンを呼び出す、または実現することは、特定の位置データを順位付け、フィルタリングまたは統合整理するためにロジシャンを使用することである。ＡＰＩ呼び出しGetLogicianTypes()３３１の結果として、論理記述３３０がロジシャン・タイプ３３２を返す。これは、ユーザに提示される選択肢を表す。ＡＰＩ呼び出しGetLogician(logician)３４１の結果として、論理ビーン・ファクトリ３４０がロジシャン３４２を返す。これは、実現する論理機能の種類を選択するユーザを表す。論理機能に関するユーザの好みを加入者好みデータベース３９０に記憶し、そこから検索することもできる。ＡＰＩ呼び出しlogician.invoke(LocationList)３５１の結果として、論理インプリメンテーション３５０がnewLocationList３５２を返す。これは、位置データを順位付け、フィルタリングまたは統合整理するために実現される論理機能の選択された種類を表す。論理インプリメンテーション３５０は、図１の略図に示す位置ロジシャン３０に相当する。新たな位置リスト３２２を加入者アプリケーション４０に公表することにより、システムは、順位付け、フィルタリングまたは統合整理された位置データをユーザに提供する。
【００３９】
システムは、位置情報の集合中の項目を予想ユーティリティにしたがって順位付けすることができる。別のユーザの位置を追跡するユーザは、より最近の移動を示す位置ソースからのデータがより高い順位付けを与えられているような位置データを提供されることができる。これは、どの位置ソースがより最近に移動し、ひいては最新の位置更新を成したかにしたがってデータを順位付けする例である。好ましい実施形態では、各ロケーションＸＭＬエントリがタイム・スタンプを有し、位置データの集合がタイム・スタンプによってソートされる。もう一つの順位付け例では、別のユーザの位置を追跡するユーザは、他の位置ソースよりも正確であると予想される位置ソースからのデータがより高い順位付けを与えられているような位置データを提供されることができる。もう一つの選択肢は、より正確な計測を実施することができる位置ソースからのデータにより高い順位付けを与える方法であろう。
【００４０】
データをフィルタリングする例を示すならば、実際の移動ではなく、位置計測におけるランダムな変動により、報告される位置のわずかな変化が突然に生じることがある。これは、新たな位置データが現在の位置データの集合に加えられる際の限界を設定することによってフィルタリング除去することができるノイズの１種である。このように、システムは、データをフィルタリングして誤りを招くデータを除くことができる。
【００４１】
好ましい実施形態では、位置データの集合中に見られる位置データを統合整理して、最も可能性のあるユーザの位置を決定することができる。たとえば、システムが二つ以上の位置ソースからのデータに基づいて合致位置を決定する結果として、ユーザは、追跡されている別のユーザの最も可能性のある位置を提供されることができる。二つ以上の位置ソースからのデータによって示される合致位置は、いずれか一つの位置ソースからのデータを単独で採用する場合よりも高い確かさを提供するであろう。
【００４２】
実際の位置に関するユーザからのフィードバックおよび従来の人工知能アルゴリズムにより、システムは、その性能を改善するよう学習することが好ましい。システムは、どの位置ソースまたは位置ソースの組み合わせが最も有用であるのかを学習することが好ましい。
【００４３】
上記例を続けると、雇用主は、従業員のモバイル電子装置からの位置情報を使用して従業員の位置を決定することができる。このシステムは、雇用主が、従業員をセールスやサービスのために出向かせることに関して適切な決定を下すのに役立つであろう。雇用主は、このようなシステムを以下のように利用することができる。再び図３を参照すると、論理記述３３０がロジシャン・タイプ３３２を返す。これは、ユーザ、たとえば雇用主に提示される選択肢を表す。選択肢は、「最近移動」、「最正確」および他の選択肢を含むメニューとして提示することができる。論理ビーン・ファクトリ３４０がロジシャン３４２を返す。これは、実現する論理機能の種類を選択するユーザを表す。雇用主が「最近移動」を選択するとする。このロジシャンに関して、規則は、「どの位置ソースが最近に移動し、ひいては最新の位置更新を成したかにしたがってデータを順位付けせよ」と述べることができる。これは、位置情報の集合中の項目を予想ユーティリティにしたがって順位付けする例である。
【００４４】
上記例を続けると、ある夫婦が車に埋め込まれた追跡装置を共有しているとする。それに加え、ご主人は、ＧＰＳ能力を有する２ウェイページャを有するとする。日中、おそらく共有される車は数時間移動しなかったが、２ウェイページャをもったご主人は頻繁に移動していた。ご主人は、雇用主の工場を回り、その後、雇用主所有の車で顧客のところに出向いたかもしれない。雇用主はご主人を追跡することができる。論理インプリメンテーション３５０がnewLocationList３５２を返す。これは、位置データを順位付けするために実現される「最近移動」論理機能を表す。新たな位置リスト３２２を加入者アプリケーション４０に公表することにより、システムは、順位付けされた位置データを雇用主に提供する。ご主人の２ウェイページャからの位置データが、数時間動いていない共有の車からの位置データよりも上に順位付けされて、リストのトップにくるであろう。リストは、以下、図８の例のようなエントリのリストとして表すことができる。加入者アプリケーション４０は、たとえば地図を表示することにより、雇用主が位置データを解釈するのを支援することができる。加入者アプリケーション４０は、ユーザの好みに合うよう、簡略化バージョンの位置データを表示することもできる。以下の表は、ユーザ、たとえば前記例ではご主人に関する位置データの集合の簡略化した例である。
【００４５】
ご主人の位置データ
順位  位置ソース  位置
１．  ページャ    緯度Ｎ３７４８２０  経度Ｗ１２２２７３８
２．  車          緯度Ｎ３７４８２２  経度Ｗ１２２２７４０
【００４６】
このような集合は、さらなる位置ソース、たとえばカレンダまたはセル電話からのエントリを含むこともできる。
【００４７】
図４は、本発明の実施形態にしたがって位置情報を取得し、集約するためのシステムの例を示す高レベルブロック図である。この例では、位置アグレゲータ２０が、位置データを求めて位置ソース、すなわちＧＰＳサーバ４１１、ページャ４０２と呼ぶ２ウェイページャ、ワイヤレス・ハブ４１３と呼ぶワイヤレスＬＡＮハブおよび準拠装置４０４をポーリングする。位置アグレゲータ２０は、一人以上のユーザに関する位置データを取得し、ユーザによって編成された、一人以上のユーザに関する前記位置データの集合を生成する。
【００４８】
位置ソースからの出力は、ＨＴＭＬ（hypertext markup language）、ＸＭＬ（extensiblemarkup language）または他の言語であってもよい。好ましい実施形態では、位置情報は、アダプタ―ＧＰＳアダプタ４２１、ページャ・アダプタ４２２およびワイヤレス・ハブ・アダプタ４２３を介して取得される。これらのアダプタは、種々の位置ソースからの位置データを一つのフォーマットに変換する。これらのアダプタは、一つの望ましいＸＭＬフォーマット以外のフォーマットで位置データを与える位置ソース（たとえば「レガシー」位置ソース）に有用である。好ましい実施形態では、一つのフォーマットは、「ロケーションＸＭＬ」または「ＬｏｃＸＭＬ」と称される、ＸＭＬで実現されたフォーマットであるが、別のフォーマットを使用してもよい。モバイル電子装置およびこれらの装置に対応するサーバからの位置データのための既存のフォーマットがいくつかある。いずれ、アダプタを介さず直接データを取得することができるような汎用される一つの標準フォーマットができるかもしれない。このように、図４は、位置情報を準拠装置４０４（すなわち、出力が所望のフォーマットと適合する装置）から準拠装置データ経路４４４を介して直接取得することができることを示す。
【００４９】
好ましい実施形態では、ＧＰＳアダプタ４２１が、ＧＰＳサーバ４１１から、ＧＰＳ装置４０１を搭載した車の位置を与えるＧＰＳデータを読み取る。ページャ・アダプタ４２２が２ウェイページャ、すなわちページャ４０２からｅメールを受信する。そのｅメール・メッセージ内には、ＧＰＳデータ、すなわち、ページャ４０２が現在対応しているセルの名称が含まれている。セルの名称は、その名称を実際の位置にマッピングするために参照表とともに使用される。ワイヤレス・ハブ・アダプタ４２３が、ワイヤレス・ハブ４１３によってワイヤレスＬＡＮに載っているラップトップ・コンピュータ４０３に関する位置データを受信する。ワイヤレス・ハブ・アダプタ４２３は、シンプル・ネットワーク管理プロトコル（ＳＮＭＰ、ネットワークハードウェアから情報を集めるプロトコル）を使用して、ラップトップ・コンピュータ４０３のワイヤレス・インタネット接続の位置から位置情報を導出する。
【００５０】
他にも多くの同様なアダプタを実現することができる。さらなる例は、コンピュータベースのカレンダを読み取って、日時に依存して人の予想位置を出すアダプタであろう。以下、図５を参照しながらアダプタをさらに説明する。
【００５１】
図５は、本発明の実施形態にしたがって図４のシステム例に含める選択された部品をさらに詳細に示すブロック図である。ページャ４０２は２ウェイページャ。好ましい実施形態では、Research In Motion社から市販されている２ウェイページャを使用する。たとえばMotorola社から市販されている種類の他の類似装置を2ウェイで使用してもよい。ページャ４０２は、ページャが現在通信している無線塔の識別番号を送るのか、取り付けられたＧＰＳ装置によって生成される緯度および経度の座標を送るのかを知的に選択するクライアント・アプリケーションを有する。選択プロセスで使用される規準は、ＧＰＳ信号の強さ、無線塔信号の強さおよび移動の頻度を含む。
【００５２】
通信プロトコルは次のとおりである。ページャ４０２のクライアント・アプリケーションが、変動する頻度で、メッセージをサーバのメッセージ待ち行列５０２（ＰＯＰサーバ）に送る。メッセージは、位置情報をフォーマット―ＤＥＶＩＣＥＩＤ、ＴＯＷＥＲＩＤ、ＧＰＲＭＣ、ＰＯＳ＿ＵＴＣ、ＰＯＳ＿ＳＴＡＴ、ＬＡＴ、ＬＡＴ＿ＲＥＦ、ＬＯＮ、ＬＯＮ＿ＲＥＦ、ＳＰＤ、ＨＤＧ、ＤＡＴＥで含む。ＧＰＳデータが入手できないとき、ＧＰＳフィールドはゼロ値を有する。好ましい実施形態では、メッセージ送信方法は、シンプル・メール転送プロトコル（ＳＭＴＰ）で送られる電子メールである。
【００５３】
ページャ・アダプタ４２２は、マルチスレッドのサーブレットである。サーブレットとは、サーバ上で稼働するJava(R)アプリケーションである。ページャ・アダプタ４２２は、ページャ４０２から受信された新たなメッセージがないかメッセージ待ち行列５０２をプリセットされた間隔でチェックするバックグラウンド・スレッドを有する。メッセージ送信システムは、企業環境で起こりうるファイヤウォールおよびセキュリティ問題を回避するために使用される。このバックグラウンド・スレッドは、ページャ４０２のｅメールからの関連情報を内部位置ハッシュ表中に解析する。ページャ・アダプタ４２２における、ＨＴＴＰ（hypertexttransfer protocol）要求を取り扱うもう一つのスレッドが位置アグレゲータ２０によって呼び出される。ページャ・アダプタ４２２は、そのような要求を受けると、その内部位置ハッシュ表から情報を取り出し、それをロケーションＸＭＬで位置アグレゲータ２０に出力する。
【００５４】
ＤＴＤ（Document Type Definition）とは、マークアップ言語の定義である。以下、本願発明で使用したロケーションＸＭＬのＤＴＤを記す。
【００５５】
2004526954.tif 000052
2004526954.tif 000053
【００５６】
位置アグレゲータ２０は、プリセットした間隔でＨＴＴＰを介してページャ・アダプタ４２２ならびに他のアダプタおよび位置ソースに問い合わせる。位置アグレゲータ２０は、追跡される装置および位置のページャ・アダプタ４２２の現在のリストをロケーションＸＭＬで検索する。
【００５７】
ラップトップ・コンピュータ４０３は、ワイヤレス・ハブ・アダプタ４２３に対してＨＴＴＰ要求を周期的に実施して、ワイヤレス・ハブ・アダプタ４２３がラップトップ・コンピュータ４０３の位置を位置アグレゲータ２０に報告する権限を与えるサービスを有する。
【００５８】
ワイヤレス・ハブ４１３は、ハブを構成し、ハブに関する情報を見るために使用することができるページを表示する内蔵ウェブ・サーバを有するワイヤレスＬＡＮハブ（Cisco Systems社、Apple Computer社、Compaq Computer社、Intel社、Lucent Technologies社または3Com社から市販されている）である。
【００５９】
マルチスレッドのサーブレットであるワイヤレス・ハブ・アダプタ４２３は、プリセットした間隔で任意数のワイヤレスＬＡＮハブ、たとえばワイヤレス・ハブ４１３に対してＨＴＴＰ要求を実施して、各ハブのネットワーク上で取り付けられたクライアントおよびクライアントのインタネット・プロトコル（ＩＰ）アドレスの表を含むＨＴＭＬページを検索するバックグラウンド・スレッドを有している。そして、この情報は、ハブ・ハッシュ表に解析され、その際、キーは、各ワイヤレス・ハブ４１３クライアントのＩＰアドレスであり、値は、各クライアントが使用しているハブである。また、ワイヤレス・ハブ・アダプタ４２３には、入ってくるＨＴＴＰ要求を取り扱うスレッドがある。このワイヤレス・ハブ・アダプタ４２３には、二つのタイプのそのような要求がある。第一のタイプは、ラップトップ・コンピュータ４０３から受信される要求である。これらの要求は、ラップトップ・コンピュータ４０３の位置（バックグラウンド・スレッドによって得られる）を位置アグレゲータ２０に明かすためのサーバ許可を与えるだけである。具体的には、各ＨＴＴＰヘッダが、発生するＩＰアドレスに関して審査される。このＩＰアドレスおよび受信時が認可ハッシュ表に記憶される。他方のタイプの受信されるＨＴＴＰ要求は、位置アグレゲータ２０からのものである。ワイヤレス・ハブ・アダプタ４２３は、そのような要求を受けるたび、認可ハッシュ表中で反復し、最近認可を送った（プリセット値にしたがって）ＩＰアドレスごとに、ワイヤレス・ハブ４１３のハッシュ表から対応するハブ情報が検索される。そして、この情報がロケーションＸＭＬへと適切に解析される。
【００６０】
位置アグレゲータ２０は、プリセットした間隔でＨＴＴＰを介してワイヤレス・ハブ・アダプタ４２３ならびに他のアダプタおよび位置ソースに問い合わせる。位置アグレゲータ２０は、追跡される装置および位置のワイヤレス・ハブ・アダプタ４２３の現在のリストをロケーションＸＭＬで検索する。
【００６１】
図６は、実施例として実現される、位置情報を取得し、集約するプロセスの一例を示す流れ図である。図１、３、４および５に示す位置アグレゲータ２０の中で、プロセスが始まる（６１０）。「ポーリング・スレッド」と呼ばれる任意数のポーリング・プロセス（例として三つ６０１、６０２および６０３を示す）を起動する（６２０）。各ポーリング・スレッドが位置データを求めてＨＴＴＰ６３０によって位置ソースをポーリングする（６３０）。各ポーリング・スレッドは、前記位置データのいずれかが新規であるかどうかを決定する（決定６４０）。各ポーリング・スレッドは、新たな位置データをマッピング・プロセスに送る（６５０）。「マッピング・スレッド」と呼ばれるマッピング・プロセスは、以下、図７を参照しながらさらに説明する。ポーリング・スレッドが終了するまでステップ６３０、６４０および６５０を繰り返す。このようにして、位置データは連続的に更新される。
【００６２】
図７は、実施例として実現される、位置情報を取得し、集約するための、図６に示す例に関連するもう一つのプロセスを示す流れ図である。図６に示すポーリング・スレッド、たとえば６０１、６０２および６０３とともに、マッピング・プロセス７０１が始まり（７１０）、ポーリング・スレッド、たとえば６０１、６０２および６０３から新たな位置データを受け取る（７２０）。マッピング・スレッド７０１は、新たな位置データをユーザにマッピングする（７３０）。
【００６３】
次に、この例は、マッピング・スレッドを待機させる（７５０）、任意の「タイムアウト」ステップ（決定７４０）を含む。これを以下に説明する。所定期間待機したのち、決定７４０でＹＥＳの分岐を取ると、マッピング・スレッドが、ユーザによって編成された位置データの集合を論理プロセスに送り（７６０）、このプロセスが、加入者アプリケーションを介して情報をユーザに提供する前に、データに対して評価（たとえば順位付けまたはフィルタリング処理）を実施する。
【００６４】
「タイムアウト」ステップ（決定７４０）は、多くの新たな位置データがポーリング・スレッド、たとえば図６に示す６０１、６０２および６０３から巡回しながら受信されることを保証するように設計されている。換言するならば、ステップ７６０によって提供される出力は、二つ以上の新たな位置データを含むならば、より貴重である。二つ以上の新たな位置データを受けるために、マッピング・スレッド７０１は、ポーリング・スレッド、たとえば６０１、６０２および６０３のうち、より多くが新たな位置データをマッピング・スレッド７０１に送る（６５０）まで待つことが好ましい。タイムアウトの値は、どれだけ多くの新たな位置データがステップ７６０によって公表されるか、またそれらの公表の間の期間のトレードオフである。
【００６５】
上記ステップ７２０、７３０および７６０は、決定７７０でＹＥＳ分岐が取られ、マッピング・スレッドが終了する（７８０）まで繰り返される。このようにして、位置データの集合は連続的に更新される。
【００６６】
位置データの集合は、ＧＰＳ能力を有する２ウェイページャからの位置データを示す、ブラウザによって見られるロケーションＸＭＬドキュメントのサンプルである図８の例のようなエントリの集合である。図８は、モバイル装置（この例では２ウェイページャ）の識別番号（８１１）、取り付けられたＧＰＳ装置によって生成される緯度（８３２）および経度（８３３）の座標、タイム・スタンプ（８７１）ならびにページャが現在通信している無線塔の識別番号（８７２）を含む。図３、４および５に示すアダプタから出力されるロケーションＸＭＬは、図８の例のようなエントリからなる。
【００６７】
図９は、本発明の実施形態にしたがって位置情報を評価するための論理プロセス（ロジシャン）を選択する方法を示す流れ図である。これは、一つ以上の好ましいロジシャンを選択する実行時前プロセスである。選択は、エンド・ユーザが直接実施することもできるし、第三者が実施することもできる。このような選択は、図３および位置情報を取得し、集約し、評価するためのシステムに関して上記で論じたものである。選択プロセスが始まると（９１０）、ユーザおよび、ＡＰＩ呼び出しGetLogicianTypes()の結果として、ユーザが使用することを好むロジシャンを選択するため、ユーザ・インタフェース（ＵＩ）を加入者アプリケーションに提供する（９２０）。これらの好みを加入者好みデータベースに記憶すると（９３０）、プロセスは終了する（９４０）。
【００６８】
図１０は、本発明の実施形態にしたがって位置情報を評価するための論理プロセスの例を示す流れ図である。これは、ユーザの好みを利用可能なロジシャンと適合させ、ロジシャンを実現して位置情報を評価する実行時プロセスである。このようなプロセスは、図３および位置情報を取得し、集約し、評価するためのシステムに関して上記で論じたものである。プロセスが始まると（１０１０）、位置情報の集合を位置アグレゲータから受け取る（１０２０）。ステップ１０３０で加入者好みデータベース中でこのユーザに関して実現されるロジシャンを参照したのち、ステップ１０４０に進み、論理ビーン・ファクトリからロジシャンを取得する。ステップ１０４０は、ＡＰＩ呼び出しGetLogician(logician)の結果である。位置情報の集合に対してこのロジシャンを呼び出す（１０５０）。ステップ１０５０は、ＡＰＩ呼び出しlogician.invoke(LocationList)の結果である。これは、図３を参照しながら上記で論じたデータを順位付けし、フィルタリングし、統合整理する例と同様に、実施されている論理機能の選択された種類に対応する。結果を一つ以上の加入者アプリケーションに公表し（１０６０）、システムが、順位付け、フィルタリングまたは統合整理された位置データをユーザに提供する。上記ステップ１０２０〜１０６０は、決定１０７０でＹＥＳ分岐が取られ、プロセスが終了する（１０８０）まで繰り返される。このようにして、位置データの評価は連続的に更新される。
【００６９】
図１１は、本発明の実施形態にしたがって位置情報を取得し、集約し、評価するためのシステムとで対話する加入者アプリケーションの例を示す流れ図である。図１１は、加入者アプリケーションの視点から見た図である。プロセスが１１０で始まると、利用可能なユーザおよびロジシャンに関して図３に３２０で示すロジシャン・ファサードに問い合わせる（１１２０）。ユーザおよびロジシャンを選択し（１１３０）、プロセスは、位置情報が公表されるのを待つ（１１４０）。位置情報を受け取り（１１５０）、加入者アプリケーションの機能にしたがって処理する（１１６０）。このようにして、システムは、順位付け、フィルタリングまたは統合整理された位置データをユーザに提供する。上記ステップ１１２０〜１１６０は、決定１１７０でＹＥＳ分岐が取られ、プロセスが終了する（１１８０）まで繰り返される。このようにして、エンド・ユーザは、連続的に更新される位置データの評価を提供される。
【００７０】
本発明の好ましい実施形態の一つは、アプリケーション、すなわち、たとえばコンピュータのランダム・アクセス・メモリに常駐することができるモード・モジュールにおける命令セット（プログラム・コード）である。命令セットは、コンピュータによって求められるまで、別のコンピュータ・メモリ、たとえばハードディスク・ドライブまたは脱着可能なメモリ、たとえば光ディスク（ＣＤ  ＲＯＭドライブで最終的に使用する場合）もしくはフロッピー(R)・ディスク（フロッピー(R)ディスク・ドライブで最終的に使用する場合）に記憶しておくこともできるし、インタネットまたは他のコンピュータ・ネットワークを介してダウンロードすることもできる。したがって、好ましい実施形態は、コンピュータで使用するためのコンピュータ実行可能な命令を有するコンピュータ使用可能な媒体として実現することができる。加えて、前記種々の方法は、ソフトウェアによって選択的に起動または再構成される汎用コンピュータで好都合に実現されるが、当業者は、ハードウェア、ファームウェアまたは必要な方法ステップを実行するために構成されたより特殊化された装置でそのような方法を実施することもできることを理解するであろう。
【００７１】
本特許文献の開示の一部は、著作権または商標保護の対象である実体を含む。著作権または商標所有者は、特許開示のファクシミリ複製に異議を唱えないが、それ以外では、あらゆる著作権または商標権を留保する。
【図面の簡単な説明】
【００７２】
【図１】本発明の一実施形態にしたがって情報取り扱いシステムによってコンピュータ・ネットワーク上で送達される位置データを示すブロック図である。
【図２】図１の情報取り扱いシステム例に含めることができる選択された部品を示す高レベル・ブロック図である。
【図３】本発明の一実施形態にしたがって位置情報を取得し、集約し、評価するためのシステムの例を示す高レベル・ブロック図である。
【図４】本発明の一実施形態にしたがって位置情報を取得し、集約するためのシステムの例を示す高レベルのブロック図である。
【図５】本発明の一実施形態にしたがって図４のシステム例に含まれる選択された部品をさらに詳細に示すブロック図である。
【図６】実施例として実現される、位置情報を取得し、集約するプロセスの一例を示す流れ図である。
【図７】実施例として実現される、位置情報を取得し、集約するための、図６に示す例に関連するもう一つのプロセスを示す流れ図である。
【図８】本発明の一実施形態にしたがって、ＧＰＳ能力を有する２ウェイ・ページャからの位置データを示す、ブラウザによって見られるロケーションＸＭＬドキュメントのサンプルである。
【図９】本発明の一実施形態にしたがって位置情報を評価するための論理プロセスを選択する方法を示す流れ図である。
【図１０】本発明の一実施形態にしたがって位置情報を評価するための論理プロセスの例を示す流れ図である。
【図１１】本発明の一実施形態にしたがって位置情報を取得し、集約し、評価するためのシステムと対話する加入者アプリケーションの例を示す流れ図である。




【国際調査報告】
2004526954.tif 000054
2004526954.tif 000055