(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-05-27
(45)【発行日】2025-06-04
(54)【発明の名称】複合現実空間内でのプライバシーを尊重した広告のレンダリング
(51)【国際特許分類】
G06Q 30/0251 20230101AFI20250528BHJP
G06F 3/0484 20220101ALI20250528BHJP
【FI】
G06Q30/0251
G06F3/0484
(21)【出願番号】P 2022573558
(86)(22)【出願日】2021-06-02
(86)【国際出願番号】 CN2021097945
(87)【国際公開番号】W WO2021249261
(87)【国際公開日】2021-12-16
【審査請求日】2023-11-14
(32)【優先日】2020-06-12
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【氏名又は名称】太佐 種一
(74)【代理人】
【識別番号】100120710
【氏名又は名称】片岡 忠彦
(72)【発明者】
【氏名】アダム、リー、グリフィン
(72)【発明者】
【氏名】シカール、クワトラ
(72)【発明者】
【氏名】ヴィジャイ、エカンバラム
(72)【発明者】
【氏名】シャセドリ、パドマナーバ、ヴェンカタギリ
【審査官】毛利 太郎
(56)【参考文献】
【文献】特表2013-519162(JP,A)
【文献】特表2016-525741(JP,A)
【文献】特開2002-015208(JP,A)
【文献】特開2012-084146(JP,A)
【文献】特開2019-039988(JP,A)
【文献】特表2019-536131(JP,A)
【文献】米国特許出願公開第2018/0025384(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00 - 99/00
G06F 3/0484
(57)【特許請求の範囲】
【請求項1】
プロセッサと、前記プロセッサによって実行される命令を含むメモリとを含むデータ処理システムにおいて、複合現実(MR)空間内で広告をレンダリングするためのコンピュータ実装方法であって、
前記プロセッサによって、複数のユーザにおける他のユーザに対する前記複数のユーザの各ユーザの動きを検出することであって、前記複数のユーザはMR空間を共有する、前記検出することと、
前記プロセッサによって、前記MR空間を共有する複数のユーザと、前記1または複数の対象ユーザに対する複数の第1の広告との間の結合埋め込みマトリックスに基づいて、前記複数の第1の広告から1または複数の広告を選択することによって、前記検出された動きに基づいて前記複数のユーザから選択された1または複数の対象ユーザのためのプライベート・コンテンツを有する1または複数の広告を提供することと、
前記プロセッサによって、前記対象ユーザに対する特定の位置および特定の期間を識別することであって、前記特定の位置は、前記特定の期間中に前記1または複数の対象ユーザのみによって見ることができる、前記識別することと、
前記プロセッサによって、前記プライベート・コンテンツを有する前記1または複数の広告を、前記1または複数の対象ユーザに対して前記特定の位置で前記特定の期間中レンダリングすることと
を含む、方法。
【請求項2】
プライベート・コンテンツを有する1または複数の広告を提供することのステップは、
前記プロセッサによって、前記MR空間を共有する複数のユーザをプロファイルすることと、
前記プロセッサによって、前記複数のユーザのプロファイルに基づいて前記複数のユーザ間の関係を示す、前記複数のユーザ間のソーシャル・ネットワーク・グラフを構築することと、
前記プロセッサによって、前記ソーシャル・ネットワーク・グラフに基づいてユーザ埋め込みマトリックスを構築することと、
前記プロセッサによって、前記1または複数の対象ユーザに対する複数の第1の広告を推奨することであって、前記1または複数の対象ユーザは、前記複数のユーザから選択される、前記推奨することと、
前記プロセッサによって、前記複数の第1の広告に基づいて、広告埋め込みマトリックスを構築することと、
前記プロセッサによって、前記複数のユーザと、前記複数の第1の広告との間の結合埋め込みマトリックスを構築すること
をさらに含む、請求項1に記載の方法。
【請求項3】
前記プロセッサによって、モーション検出器によって各対象ユーザの動きを検出すること
をさらに含む、請求項2に記載の方法。
【請求項4】
前記プロセッサによって、各ユーザの視線移動を検出すること
をさらに含む、請求項2に記載の方法。
【請求項5】
前記結合埋め込みマトリックスは、シャム・ネットワークに基づいて構築され、
前記シャム・ネットワークは、前記ユーザ埋め込みマトリックス、前記広告埋め込みマトリックス、前記ユーザ埋め込みマトリックスに対する第1の長短期記憶(LSTM)ネットワーク、および前記広告埋め込みマトリックスに対する第2のLSTMネットワークを含む、
請求項2に記載の方法。
【請求項6】
前記1または複数の広告は、前記結合埋め込みマトリックスにおいて、前記1または複数の対象ユーザに近いが、残りのユーザからは遠い、
請求項2に記載の方法。
【請求項7】
前記プロセッサによって、前記1または複数の広告を、1または複数の対象ユーザにレンダリングするための前記特定の位置に近い1または複数のハブ・ポイントにキャッシュすること
をさらに含む、請求項1に記載の方法。
【請求項8】
複合現実(MR)空間内で広告をレンダリングするためのコンピュータが請求項1~7のコンピュータ実装方法を実行するための、コンピュータ・プログラム。
【請求項9】
複数のユーザにおける他のユーザに対する前記複数のユーザの各ユーザの動きを検出し、前記複数のユーザはMR空間を共有し、
前記MR空間を共有する複数のユーザと、前記1または複数の対象ユーザに対する複数の第1の広告との間の結合埋め込みマトリックスに基づいて、前記複数の第1の広告から1または複数の広告を選択することによって、前記検出された動きに基づいて前記複数のユーザから選択された1または複数の対象ユーザのためのプライベート・コンテンツを有する1または複数の広告を提供し、
前記1または複数の対象ユーザに対する1または複数の位置および特定の期間を識別し、前記1または複数の位置は、前記特定の期間中に前記1または複数の対象ユーザのみによって視聴可能であり、
前記プライベート・コンテンツを有する前記1または複数の広告を、1または複数の対象ユーザにレンダリングするための前記1または複数の位置に近い1または複数のハブ・ポイントにキャッシュし、
前記1または複数のハブ・ポイントから前記1または複数の対象ユーザに前記1または複数の広告をレンダリングする
ように構成されたプロセッサを含む、複合現実(MR)空間内で広告をレンダリングするためのシステム。
【請求項10】
プライベート・コンテンツを有する1または複数の広告を提供することのステップは、前記プロセッサに、
前記MR空間を共有する複数のユーザをプロファイルすることと、
前記複数のユーザのプロファイルに基づいて前記複数のユーザ間の関係を示す、前記複数のユーザ間のソーシャル・ネットワーク・グラフを構築することと、
前記ソーシャル・ネットワーク・グラフに基づいてユーザ埋め込みマトリックスを構築することと、
前記1または複数の対象ユーザに対する複数の第1の広告を推奨することであって、前記1または複数の対象ユーザは、前記複数のユーザから選択される、前記推奨することと、
前記プロセッサによって、前記複数の第1の広告に基づいて、広告埋め込みマトリックスを構築することと、
前記複数のユーザと、前記複数の第1の広告との間の結合埋め込みマトリックスを構築することと、
前記MR空間内の複数の位置に関連する時間的視線マップを構築するこ
と
をさらに行わせる、請求項9に記載のシステム。
【請求項11】
前記プロセッサが、モーション検出器によって各対象ユーザの動きを検出するようにさらに構成された、請求項10に記載のシステム。
【請求項12】
前記プロセッサが、各ユーザの視線移動を検出する
ようにさらに構成された、請求項10に記載のシステム。
【請求項13】
前記結合埋め込みマトリックスは、シャム・ネットワークに基づいて構築され、
前記シャム・ネットワークは、前記ユーザ埋め込みマトリックス、前記広告埋め込みマトリックス、前記ユーザ埋め込みマトリックスに対する第1の長短期記憶(LSTM)ネットワーク、および前記広告埋め込みマトリックスに対する第2のLSTMネットワークを含む、
ようにさらに構成された、請求項10に記載のシステム。
【請求項14】
前記1または複数の広告は、前記結合埋め込みマトリックスにおいて、前記1または複数の対象ユーザに近いが、残りのユーザからは遠い、
請求項10に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般に、広告をレンダリングすることに関し、特に、複合現実(MR)空間内でのプライバシー尊重広告をレンダリングすることに関する。
【0002】
複合現実は、ゲーム、教育およびモノのインターネット(IoT)において非常にありふれてきている。ハイブリッド・リアリティとも参照される複合現実は、現実世界と仮想世界とを組み合わせて、物理的なオブジェクトとデジタルのオブジェクトが共存し、リアルタイムで相互作用する、新たな環境および視覚化を生成する。複合現実は、物理世界や仮想世界だけでなく、現実と仮想現実とを複合したものであり、拡張された現実および拡張された仮想の両方を含む。
【0003】
マーケティング会社および研究者は、MRの視聴者に広告を届けるために、近年、MR空間内の広告プラットフォームに目を向け始め、投資をしている。MR空間は、複数の人または居住者の間で共有され、例えばスマートホームの中で共有される可能性がある。したがって、MR空間内のプライバシーは、広告レンダリング・エンジンによって解決される必要がある重要な問題である。
【0004】
MR空間内での広告のレンダリングに関するプライバシーの問題に対処するアプローチを導入することが望まれる。
【発明の概要】
【0005】
実施形態は、プロセッサと、プロセッサによって実行される命令を含むメモリとを含むデータ処理システムにおいて、複合現実(MR)空間内で広告をレンダリングするためのコンピュータ実装方法であって、プロセッサによって、複数のユーザにおける他のユーザに対する複数のユーザの各ユーザの動きを検出することであって、複数のユーザはMR空間を共有する、検出することと、プロセッサによって、検出された動きに基づいて複数のユーザから選択された1または複数の対象ユーザのためのプライベート・コンテンツを有する1または複数の広告を提供することと、プロセッサによって、対象ユーザに対する特定の位置および特定の期間を識別することであって、特定の位置は、特定の期間中に1または複数の対象ユーザのみによって見ることができる、識別することと、プロセッサによって、プライベート・コンテンツを有する1または複数の広告を、1または複数の対象ユーザに対して特定の位置で特定の期間中レンダリングすることとを含む、方法を提供する。
【0006】
実施形態は、プライベート・コンテンツを有する1または複数の広告を提供することのステップが、プロセッサによって、MR空間を共有する複数のユーザをプロファイルすることと、プロセッサによって、複数のユーザのプロファイルに基づいて複数のユーザ間の関係を示す、複数のユーザ間のソーシャル・ネットワーク・グラフを構築することと、プロセッサによって、ソーシャル・ネットワーク・グラフに基づいてユーザ埋め込みマトリックスを構築することと、プロセッサによって、1または複数の対象ユーザに対する複数の第1の広告を推奨することであって、1または複数の対象ユーザは、複数のユーザから選択される、推奨することと、プロセッサによって、複数の第1の広告に基づいて、広告埋め込みマトリックスを構築することと、プロセッサによって、複数のユーザと、複数の第1の広告との間の結合埋め込みマトリックスを構築することと、プロセッサによって、結合埋め込みマトリックスに基づいて、複数の第1の広告から1または複数の広告を選択することをさらに含むコンピュータ実装方法を提供する。
【0007】
実施形態は、プロセッサによって、モーション検出器によって各対象ユーザの動きを検出することをさらに含むコンピュータ実装方法を提供する。
【0008】
実施形態は、プロセッサによって、各ユーザの視線移動を検出することをさらに含むコンピュータ実装方法を提供する。
【0009】
実施形態は、結合埋め込みマトリックスは、シャム・ネットワークに基づいて構築され、シャム・ネットワークは、ユーザ埋め込みマトリックス、広告埋め込みマトリックス、ユーザ埋め込みマトリックスに対する第1の長短期記憶(LSTM)ネットワーク、および広告埋め込みマトリックスに対する第2のLSTMネットワークを含む、コンピュータ実装を提供する。
【0010】
実施形態は、1または複数の広告が、結合埋め込みマトリックスにおいて、1または複数の対象ユーザに近いが、残りのユーザからは遠い、コンピュータ実装方法を提供する。
【0011】
実施形態は、プロセッサによって、1または複数の広告を、特定の位置に近い1または複数のハブ・ポイントにキャッシュすることをさらに含む、コンピュータ実装方法を提供する。
【0012】
実施形態は、 複合現実(MR)空間内で広告をレンダリングするためのコンピュータ・プログラム製品であって、具現化されたプログラム命令を有するコンピュータ可読ストレージ媒体を含み、プロセッサによって実行可能なプログラム命令は、プロセッサに、複数のユーザにおける他のユーザに対する複数のユーザの各ユーザの動きを検出することであって、複数のユーザはMR空間を共有する、検出することと、検出された動きに基づいて複数のユーザから選択された1または複数の対象ユーザのためのプライベート・コンテンツを有する1または複数の広告を提供することと、1または複数の対象ユーザに対する1または複数の位置および特定の期間を識別することであって、1または複数の位置は、特定の期間中に1または複数の対象ユーザのみによって視聴可能である、識別することと、プライベート・コンテンツを有する1または複数の広告を、1または複数の位置に近い1または複数のハブ・ポイントにキャッシュすることを行わせる、コンピュータ・プログラム製品を提供する。
【0013】
実施形態は、プライベート・コンテンツを有する1または複数の広告を提供することのステップが、プロセッサに、MR空間を共有する複数のユーザをプロファイルすることと、複数のユーザのプロファイルに基づいて複数のユーザ間の関係を示す、複数のユーザ間のソーシャル・ネットワーク・グラフを構築することと、ソーシャル・ネットワーク・グラフに基づいてユーザ埋め込みマトリックスを構築することと、1または複数の対象ユーザに対する複数の第1の広告を推奨することであって、1または複数の対象ユーザは、複数のユーザから選択される、推奨することと、複数の第1の広告に基づいて、広告埋め込みマトリックスを構築することと、複数のユーザと、複数の第1の広告との間の結合埋め込みマトリックスを構築することと、MR空間内の複数の位置に関連する時間的視線マップを構築することと、結合埋め込みマトリックスに基づいて、複数の第1の広告から1または複数の広告を選択することをさらに行わせる、コンピュータ・プログラム製品を提供する。
【0014】
実施形態は、プロセッサに、モーション検出器によって各対象ユーザの動きを検出することをさらに行わせる、複合現実(MR)空間内で広告をレンダリングするためのコンピュータ・プログラム製品を提供する。
【0015】
実施形態は、プロセッサに、各ユーザの視線移動を検出することをさらに行わせる、複合現実(MR)空間内で広告をレンダリングするためのコンピュータ・プログラム製品を提供する。
【0016】
実施形態は、結合埋め込みマトリックスが、シャム・ネットワークに基づいて構築され、シャム・ネットワークが、ユーザ埋め込みマトリックス、広告埋め込みマトリックス、ユーザ埋め込みマトリックスに対する第1の長短期記憶(LSTM)ネットワーク、および広告埋め込みマトリックスに対する第2のLSTMネットワークを含む、複合現実(MR)空間内で広告をレンダリングするためのコンピュータ・プログラム製品を提供する。
【0017】
実施形態は、1または複数の広告が、結合埋め込みマトリックスにおいて、1または複数の対象ユーザに近いが、残りのユーザからは遠い、複合現実(MR)空間内で広告をレンダリングするためのコンピュータ・プログラム製品を提供する。
【0018】
実施形態は、プロセッサに、1または複数のハブ・ポイントから1または複数の対象ユーザに1または複数の広告をレンダリングすることをさらに行わせる、複合現実(MR)空間内で広告をレンダリングするためのコンピュータ・プログラム製品を提供する。
【0019】
他の例示的な実施形態では、システムが提供される。システムは、方法の例示的な実施形態に関して上記概説された動作の種々のもの、およびそれらの組み合わせを実行するように構成された、全質問生成プロセッサを含む。
【0020】
本開示の追加の特徴および利点は、添付の図面を参照して進められる例示的な実施形態の以下の詳細な説明から明らかになる。
【0021】
本発明の前述の、および他の態様は、添付の図面と関連して読まれるとき、以下の詳細な説明から最もよく理解される。発明の例示の目的のために、現時点での好ましい実施形態が図面に示されているが、本発明は、開示された特定の手段に限定されないことを理解されたい。図面には、以下の図が含まれる。
【図面の簡単な説明】
【0022】
【
図1】例示的な広告レンダリング・システム101を実装する認知システム100の例示的な一実施形態の概略図。
【
図2】本明細書に記載される実施形態による、広告レンダリング・システム101の例示的な一実施形態の概略図。
【
図3】本明細書に記載される実施形態による、広告をレンダリングする方法300を示すフローチャート。
【
図4】本明細書で説明される実施形態による、結合埋め込みのための例示的なシャム・ネットワーク。
【
図5】本明細書に記載される実施形態による、広告をレンダリングする別の方法500を示すフローチャート。
【
図6】本明細書に記載される実施形態による、広告をキャッシングする方法600を示すフローチャート。
【
図7】例示的な実施形態の態様が実装される例示のデータ処理システム700のブロック図。
【発明を実施するための形態】
【0023】
本発明は、認知システム上で実装されるシステム、方法、もしくはコンピュータ・プログラム製品またはそれらの組み合わせであり得る。コンピュータ・プログラム製品は、本発明の態様をプロセッサに実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読ストレージ媒体(1つまたは複数)である。
【0024】
特定のユーザの複合現実(MR)空間は、各ユーザがMRヘッドセットを装着した、スマートホーム内の他のユーザと共有され得る(例えば、夫のMR空間は、その妻と子供に共有される)。本開示は、対象ユーザのプライバシーを保護するために、他のユーザの広告の視聴を防止し、対象ユーザに広告をレンダリングできる、広告レンダリング・システム、方法、およびコンピュータ・プログラム製品を提供する。さらに、本開示は、高品質なコンテンツ配信のために、識別された位置に近い1つまたは複数のハブ・ポイントで広告をキャッシュするように、対象ユーザの1つまたは複数の位置を識別できる、広告レンダリング・システム、方法、およびコンピュータ・プログラム製品を提供する
【0025】
実施形態では、広告は、第2のユーザに対して第1のユーザにレンダリングされ得る。例えば、広告は、特定の期間(時間情報)中に第2のユーザが現れない特定の位置(空間情報)で第1のユーザにレンダリングされ得、したがって、第2のユーザは、広告を見ることができない。このようにして、第1のユーザのプライバシーは、保護される。
【0026】
実施形態では、広告およびユーザに対する結合埋め込みマトリックスが、広告とユーザとの間の関連性を示すために、生成される。結合埋め込みマトリックスにおいて、第1の広告を表す点と、第1のユーザを表す点とが、互いに近い場合に、結合埋め込みマトリックスは、第1のユーザが第1の広告に興味があることを示す。対照的に、第2の広告を表す点と、第2のユーザを表す点とが、互いに離れている場合には、結合埋め込みマトリックスは、第2のユーザが第2の広告に興味がないことを示す。特定の広告を表す点と、特定のユーザを表す点との間の距離は、特定の広告に対する、特定のユーザの興味のレベルを示す。
【0027】
第1のユーザ(例えば、夫)が第1の広告(例えば、贈り物の広告)に興味があるが、第2のユーザ(例えば、妻)は第1の広告に興味がない場合、第1の広告は、第1のユーザについてレンダリングされ得るが、第1のユーザのプライバシーを保護するために、第2のユーザは、第1の広告を見ることができない。したがって、第1の広告は、第1のユーザのみが特定の位置にいる特定の期間中に、特定の位置にレンダリングされ得る。広告レンダリング・システムは、スマートホーム内の各ユーザの動的な移動を検出し、例えば、広告レンダリング・システムは、第2のユーザに対する第1のユーザの動的な移動を検出する。実施形態では、動的な移動は、スマートホーム内に設置された、例えば、カメラ、近接センサ、モーション・センサなどのIoTデバイスであるモーション検出器によって検出され得る。特定の期間中に第2のユーザが不在である位置で、第1のユーザがいることを、広告レンダリング・システムが検出すると、広告レンダリング・システムは、第1の広告を第1のユーザにレンダリングする。
【0028】
実施形態では、没入型体験のための高品質なコンテンツをレンダリングするために、スマートホーム内のローカル・ハブ・ポイントでのコンテンツをキャッシングすることは、コンテンツのシームレス配信を可能にし得る。第1のユーザのプライバシーを保護するために、MR広告は、第1のユーザが頻繁に現れるが、第2のユーザまたは他のユーザが特定の期間中に一般に不在である、いくつかのハブ・ポイントにキャッシュされ得る。ローカル・ハブ・ポイントは、高精細度でキャッシュされたプライバシー尊重MR広告を、広告に興味がある可能性のある第1のユーザに対して、迅速にレンダリングできる。
【0029】
概要として、認知システムは、人間の認知機能をエミュレートするためにハードウェア・ロジックもしくは(ソフトウェアが実行されるハードウェア・ロジックと組み合わせた)ソフトウェア・ロジックまたは両方で構成された、専用のコンピュータ・システムまたはコンピュータ・システムのセットである。これらの認知システムは、人間のような特徴を、アイデアを伝達することおよび操作することに適用し、デジタル計算に固有の強みと組み合わせたときに、高い精度と柔軟性で大規模な問題を解決できる。IBM Watson(登録商標)は、そのような認知システムの1つの例であり、人間が読める言語を処理し、テキストの通過間の推定を、人間のような精度、人間よりもはるかに速いスピード、かつ、非常に大きな規模で識別することができる。一般に、そのような認知システムは、以下の機能を実行することができる。
・人間の言語と理解の複雑さをナビゲートする
・膨大な量の構造化されたデータおよび構造化されていないデータを取り込み、処理する
・仮説を生成し、評価する
・関連する証拠のみに基づく回答を測り、評価する
・状況に合わせた助言、洞察、案内を提供する
・知識を改善し、機械学習プロセスを通じた反復と相互作用のたびに学習する
・影響がある時点での決定を可能にする(状況に即した案内)
・タスクに比例してスケーリングする
・人間の専門知識および認知を拡張し、拡大する
・共鳴すること、人間のような属性、および自然言語からの特性を識別する
・自然言語から種々の言語固有の属性および不可知的属性を推測する
・データポイント(画像、テキスト、音声)からの高い関連性の想起(記憶および想起)
・経験に基づく人間の認知を模した状況認識による予測と感知
・自然言語および特定の証拠に基づいて質問に答える
【0030】
1つの態様では、認知システムを、広告レンダリング・システムに拡張できる。
図1は、例示的な広告レンダリング・システム101を実装する認知システム100の例示的な一実施形態の概略図である。認知システム100は、1つまたは複数のプロセッサおよび1つまたは複数のメモリおよび、場合によっては、当技術分野で一般に知られている、バス、ストレージ・デバイス、通信インターフェースなどを含む、他の任意のコンピューティング・デバイス要素を有するコンピューティング・デバイス上で実装される。認知システム100は、1または複数の対象ユーザに対して自動的にプライバシー尊重広告をレンダリングできる、広告レンダリング・システム101を実装するように構成される。広告レンダリング・システム101は、モーション検出器102、ユーザ・プロファイル104および視線移動106の情報を取得し、1または複数の対象ユーザの1つまたは複数のMRヘッドセット108に広告110をレンダリングする。モーション検出器102は、他のユーザに対する1または複数の対象ユーザの動きを検出するように構成される。ユーザ・プロファイル104は、ソーシャル・メディア(例えば、Facebook(登録商標)、Twitter(登録商標)、Instagram(登録商標)など)もしくは各ユーザの履歴書またはその両方などから、取得され得る。各ユーザの視線移動106は、各ユーザが装着するMRヘッドセット108に関連付けられたMRソフトウェア開発キット(SDK)から取得され得る。
【0031】
図2は、本明細書に記載される実施形態による、広告レンダリング・システム101の例示的な一実施形態の概略図である。
図2に示されるように、実施形態では、広告レンダリング・システム101は、ソーシャル・ネットワーク・グラフ・ビルダ202、ユーザ埋め込みマトリックス・ビルダ204、広告エンジン206、広告埋め込みマトリックス・ビルダ208、結合埋め込みマトリックス・ビルダ210、位置・時間識別器212および広告セレクタ214を含む。他の実施形態では、広告レンダリング・システム101は、キャッシング・ユニット216をさらに含む。
【0032】
ソーシャル・ネットワーク・グラフ・ビルダ202は、ユーザ・プロファイル104を取り込み、同じスマートホーム内のユーザ間の関係を示す、ユーザ間のソーシャル・ネットワーク・グラフを構築する。ユーザ埋め込みマトリックス・ビルダ204は、ソーシャル・ネットワーク・グラフに基づいてユーザ埋め込みマトリックスを構築するように構成される。広告エンジン206は、対象ユーザが興味を持ちうる上位K(例えば、上位20)の広告を推奨するように構成される。広告は、例えば、対象ユーザが見たもの、対象ユーザがブラウジングしたもの、もしくは、対象ユーザのユーザ・プロファイルまたはそれらの組み合わせに基づいて推奨される。広告埋め込みマトリックス・ビルダ208は、推奨された広告に基づいて、広告埋め込みマトリックスを構築するように構成される。結合埋め込みマトリックス・ビルダ210は、ユーザと広告との間の関係を決定するために、ユーザと広告との間の結合埋め込みマトリックスを構築するように構成される。位置・時間識別器212は、モーション検出器102および視線移動106の情報を取り込み、他のユーザはその期間にその位置を見ていないが、広告を対象ユーザ220に配信する位置および時間を識別する。広告セレクタ214は、推奨された上位K(例えば、上位20)の広告から広告を選択するように構成される。選択された広告は、結合埋め込みマトリックスに示されるように、対象ユーザ220の近くにあるが、他のユーザからは離れている。このように、対象ユーザ220にレンダリングされた選択された広告は、興味のあるコンテンツである。キャッシング・ユニット216は、選択された広告を、識別された位置に近い1つまたは複数のハブ・ポイント218にキャッシュするように構成される。
【0033】
図3は、本明細書に記載される実施形態による、広告をレンダリングする方法300を示すフローチャートを示す。ステップ302で、広告レンダリング・システムは、スマートホーム内のユーザをプロファイルし、同じスマートホーム内のユーザ間の関係を示す、ユーザ間のソーシャル・ネットワーク・グラフを構築する。広告レンダリング・システムは、例えば、Facebook(登録商標)、Twitter(登録商標)、Instagram(登録商標)などのようなソーシャル・メディアから、自動的に各ユーザのプロファイルを取得できる。各ユーザは、プロファイル情報を手動で構成することもできる。したがって、ユーザ間の関係は、ユーザ・プロファイルから識別され得る。例えば、夫婦関係、母子関係、友人関係などが、ユーザ・プロファイルに基づいて識別され得る。
【0034】
ステップ304では、広告レンダリング・システムは、ソーシャル・ネットワーク・グラフに基づいてユーザ埋め込みマトリックスを構築する。広告レンダリング・システムは、ユーザ・プロファイルをキャプチャし、ユーザ埋め込みマトリックスを生成する。ユーザ埋め込みマトリックスでは、非常に類似したユーザ・プロファイルを有する2人のユーザは、近接した埋め込みを有する(すなわち、コサイン類似度スコアが小さい)。
【0035】
ステップ306では、広告レンダリング・エンジンは、従来手法を用いて(例えば、視線移動、ブラウジング・パターン、ユーザのプロファイルなどに基づいて)、対象ユーザが興味を持つ可能性のある、上位K(例えば、上位20)の広告を推奨する。例えば、視線移動を検出して、対象ユーザが見ているコンテンツを識別でき、広告エンジンは、そのコンテンツに関連する上位20の広告を推奨する。別の例として、ブラウジング・パターンが用いられて、対象ユーザが閲覧したコンテンツを識別でき、広告エンジンは、そのコンテンツに関連する上位30の広告を推奨する。別の例として、ユーザのプロファイル(例えば、3人の子供の母)が用いられて、対象ユーザが興味を持つ可能性のある、コンテンツ(例えば、育児、調理器具、おむつなど)に関連する上位40の広告を推奨できる。
【0036】
ステップ308では、広告レンダリング・システムは、推奨された広告(例えば、上位20の広告)に基づいて、広告埋め込みマトリックスを構築する。広告埋め込みマトリックスでは、類似したコンテンツを有する2つの広告は、近接した埋め込みを有する。
【0037】
ステップ310では、従来のシャム・ネットワーク(「ツイン・ニューラル・ネットワーク」としても参照される)が用いられ、ユーザと広告との間の関係(すなわち、広告に関するユーザの興味のレベル)を決定するために、ユーザと広告との間の結合埋め込みマトリックスを生成する。
図4は、本明細書で説明される実施形態による、結合埋め込みのための例示的なシャム・ネットワークを示す。
図4に示されるように、複数のユーザ・プロファイル402が用いられて、次にディープ・ラーニングのために第1の長短期記憶(LSTM)ネットワーク406に入力される、ユーザ埋め込みマトリックス404が生成される。複数の広告408は、広告埋め込みマトリックス410を生成するために使用され、それがその後、ディープ・ラーニングのために第2の長短期記憶(LSTM)ネットワーク412に入力される。各ユーザ埋め込みポイントと各広告埋め込みポイントとの間のマンハッタン距離が計算され、結合埋め込みマトリックス414が形成される。結合埋め込みマトリックス414では、ユーザが広告に興味がある場合、広告とユーザとの間の結合埋め込みは、近接したポイントとして存在し、そうではなく、ユーザが広告に興味がない場合、広告とユーザとの間の結合埋め込みは、遠くのポイントとして存在する。次に、結合埋め込みマトリックス414は、予測ユニット416に入力され、特定のユーザが特定の広告に興味があるかどうかを決定する。例えば、予測ユニット416の出力値が範囲[0,1]内であり、「0」はユーザが広告に興味がないことを示し、一方で「1」はユーザが広告に非常に興味があることを示す。出力値が所定のしきい値、例えば0.7を超えた場合、ユーザは、その広告に興味を持っている。他の実施形態では、LSTMネットワークは、畳み込みニューラル・ネットワーク(CNN)、再帰ニューラル・ネットワーク(RNN)、シーケンス・トゥー・シーケンス(sequence-to-sequence)モデル、浅いニューラル・ネットワーク、または多層パーセプトロン(MLP)などの他の人工ニューラル・ネットワークによって置き換えられ得る。
【0038】
ステップ312では、広告レンダリング・システムは、例えば、モーション検出器などのスマートIoTデバイスを通じて対象ユーザ(例えば、夫)の動きを検出し、特定の期間中に広告をレンダリングするために、対象ユーザの位置を識別する。各ユーザの動きは、モーション検出器によって継続的に検出される。
【0039】
ステップ314では、広告レンダリング・システムは、特定の期間中にその位置を見ることもできるユーザを識別する。ユーザは、視線移動に基づいて識別され得る。視線の詳細は、MRソフトウェア開発キット(SDK)で入手できる。
【0040】
ステップ316では、広告レンダリング・システムは、推奨された上位Kの広告から、広告を選択する。選択された広告は、識別されたユーザに結合埋め込みマトリックス内で近く(例えば、各広告に対する予測ユニット416の出力値が0.7を超える)、識別された位置で識別されたユーザに、選択された広告がレンダリングされる。したがって、識別された位置でレンダリングされた広告は、その位置を見ることができる、全ての識別されたユーザには見えるが、残りのユーザは見ることができない。
【0041】
図5は、本明細書に記載される実施形態による、広告をレンダリングする別の方法500を示すフローチャートを示す。ステップ502~ステップ510は、ステップ302~ステップ310と同じである。
【0042】
ステップ512では、広告レンダリング・システムは、モーション検出器によって、対象ユーザ(例えば、夫)の動きを検出し、他のユーザは特定の期間中にその位置で見ることができないが、特定の期間中に広告をレンダリングするために、対象ユーザの位置を識別する(例えば、他のユーザの視線移動は識別されない)。
【0043】
ステップ514では、広告レンダリング・システムは、結合埋め込みマトリックスに基づいて、対象ユーザに近いが、他のユーザからは遠い広告を選択し、選択された広告を識別された位置で対象ユーザに対してレンダリングする。したがって、対象ユーザのプライバシーが保護され得るように、識別された位置でレンダリングされた広告は、対象ユーザのみによって視聴可能である。
【0044】
図6は、本明細書に記載される実施形態による、広告をキャッシングする方法600を示すフローチャートである。ステップ602~ステップ610は、ステップ302~ステップ310と同じである。
【0045】
ステップ612では、広告レンダリング・システムは、例えばモーション検出器などのスマートIoTデバイスによって、スマートホーム内の各ユーザの動きを検出し、スマートホーム内の種々の位置に関連する時間的視線マップを構築する。視線マップは、さまざまな期間に他のユーザに対してさまざまな位置を見ている各ユーザをキャプチャする。
【0046】
ステップ614では、広告レンダリング・システムは、時間的視線マップに基づいて、複数の位置を選択し、ここで、複数の位置は、特定の期間中に対象ユーザのみによって視聴可能であるが、特定の期間中に他のユーザはその複数の位置が見えない。
【0047】
ステップ616では、広告レンダリング・システムは、結合埋め込みマトリックスに基づいて、対象ユーザに近いが、他のユーザからは遠い広告を選択し、選択された広告を、その複数の位置の近くの複数のハブ・ポイントにキャッシュする。
【0048】
特定の例では、夫が、妻を驚かせるために大量の結婚祝いを閲覧している場合に、妻が近くにいるときにこれらの贈り物の広告のすべてが夫にレンダリングされると、サプライズが台無しになる。したがって、これらの贈り物の広告のすべては、配信期間中に妻が現れない位置で、夫に対して配信されることが好ましい。広告レンダリング・システムは、夫と妻をプロファイルし、ユーザ埋め込みマトリックスを構築する。広告レンダリング・システムは、上位20の贈り物の広告を識別し、広告埋め込みマトリックスを構築する。ユーザと広告との間の結合埋め込みマトリックスは、ユーザ埋め込みマトリックスおよび広告埋め込みマトリックスに基づいて構築される。広告レンダリング・システムは、妻が10分間その位置を見ていないか、10分間その位置から物理的に遠くにいるが、10分間広告をレンダリングするための、夫の位置を識別する。広告レンダリング・システムは、結合埋め込みマトリックスに示されるように、夫には近いが、妻からは遠い広告を選択し、識別された位置で10分間、夫に対して選択された広告をレンダリングする。
【0049】
他の特定の例では、広告レンダリング・システムは、夫と妻の動きを検出し、スマートホーム内の種々の位置に関連する時間的視線マップを構築する。広告レンダリング・システムは、時間的視線マップに基づいて1または複数の位置を選択し、ここで、1または複数の位置は、15分間、夫のみによって視聴可能であるが、妻が、15分間その1または複数の位置を見ないか、または、15分間その1または複数の位置から物理的に離れている。広告レンダリング・システムは、結合埋め込みマトリックスに示されるように、夫には近いが、妻からは遠い広告を選択し、夫に対して選択された広告を、1または複数の位置の近くの1または複数のハブ・ポイントにキャッシュする。夫が1人で見る機会がある1または複数のハブ・ポイントにサプライズの贈り物の広告をキャッシュすることは、有益であり、夫のプライバシーを強化し得る。
【0050】
図7は、例示的な実施形態の態様が実装される例示のデータ処理システム700のブロック図である。データ処理システム700は、サーバまたはクライアントのようなコンピュータの例であり、本発明の例示的な実施形態の処理を実装する、コンピュータが使用可能なコードまたは命令が配置される。一実施形態では、
図7は、本明細書に記載された広告レンダリング・システム101および認知システム100を実装する、サーバのようなサーバ・コンピューティング・デバイスを表す。
【0051】
記載された例では、データ処理システム700は、ノース・ブリッジおよびメモリ・コントローラ・ハブ(NB/MCH)701と、サウス・ブリッジおよび入力/出力(I/O)コントローラ・ハブ(SB/ICH)702を含むハブ・アーキテクチャを採用できる。処理ユニット703、メイン・メモリ704およびグラフィックス・プロセッサ705は、NB/MCH701に接続され得る。グラフィックス・プロセッサ705は、アクセラレーテッド・グラフィックス・ポート(AGP)(
図7では示されない)を介して、NB/MCH701に接続され得る。
【0052】
記載された例では、ネットワーク・アダプタ706は、SB/ICH702に接続され得る。オーディオ・アダプタ707、キーボードおよびマウス・アダプタ708、モデム709、リード・オンリー・メモリ(ROM)710、ハードディスク・ドライブ(HDD)711、光学ドライブ(CDまたはDVD)712、ユニバーサル・シリアル・バス(USB)ポートおよび他の通信ポート713、ならびにPCI/PCIeデバイス714は、バス・システム716を介してSB/ICH702に接続され得る。PCI/PCIeデバイス714は、イーサネット(登録商標)アダプタ、アドイン・カード、およびノートブック・コンピュータ用のPCカードが含まれ得る。ROM710は、例えば、フラッシュ基本入力/出力システム(BIOS)とすることができる。HDD711および光学ドライブ712は、インテグレーテッド・ドライブ・エレクトロニクス(IDE)インターフェースまたはシリアル・アドバンスド・テクノロジー・アタッチメント(SATA)インターフェースを用いることができる。スーパーI/O(SIO)デバイス715は、SB/ICHに接続され得る。
【0053】
オペレーティング・システムは、処理ユニット703上で実行できる。オペレーティング・システムは、処理システム700内の種々のコンポーネントの制御を調整および提供する。クライアントとして、オペレーティング・システムは、市販で利用可能なオペレーティング・システムであり得る。Java(登録商標)プログラミング・システムのようなオブジェクト指向プログラミング・システムは、オペレーティング・システムと共に動作でき、データ処理システム700上で実行するオブジェクト指向プログラムまたはアプリケーションから、オペレーティング・システムへの呼び出しを提供できる。サーバとして、データ処理システム700は、Advanced Interactive Executiveオペレーティング・システムまたはLinux(登録商標)オペレーティング・システムを実行する、IBM*eServer(登録商標) SystemP*であり得る。データ処理システム700は、処理ユニット703内に複数のプロセッサを含むことができる対称型マルチプロセッサ(SMP)システムであり得る。代替的に、シングル・プロセッサ・システムが採用され得る。
【0054】
オペレーティング・システム、オブジェクト指向プログラミング・システム、およびアプリケーションのための命令、またはプログラムは、HDD711のようなストレージ・デバイス上に配置され、処理ユニット703による実行のためにメイン・メモリ704にロードされる。全質問生成システムの実施形態のための処理は、使用可能なプログラム・コードを使用して処理ユニット703によって実行され得、ここで、使用可能なプログラム・コードは、例えば、メイン・メモリ704、ROM710のようなメモリ内、または1もしくは複数の周辺装置内に配置され得る。
【0055】
バス・システム716は、1または複数のバスで構成され得る。バス・システム716は、ファブリックもしくはアーキテクチャが付属した異なるコンポーネントまたは装置の間でデータの転送を提供できる、任意の種類の通信ファブリックまたはアーキテクチャを使用して実装され得る。モデム709またはネットワーク・アダプタ706のような通信ユニットは、データを送信および受信するのに使用され得る、1または複数のデバイスを含み得る。
【0056】
当業者には、
図7に示したハードウェアが実装に応じて変更できることが理解されよう。例えば、データ処理システム700は、広告レンダリング・システム101のいくつかの実施形態において直接的に含まれないであろういくつかのコンポーネントを含む。しかしながら、広告レンダリング・システム101が、開示された実施形態による処理方法およびステップを実行するためのデータ処理システム700のコンポーネントおよび構成のうちの1または複数を含み得ることを理解されたい。
【0057】
さらに、フラッシュ・メモリ、同等の不揮発性メモリ、または光学ディスク・ドライブのような、その他の内部ハードウェアまたは周辺機器が、図示されたハードウェアに追加的に、または置き換えて、使用されてもよい。さらに、データ処理システム700は、クライアント・コンピューティング・システム、サーバ・コンピューティング・システム、タブレット・コンピュータ、ラップトップ・コンピュータ、電話またはその他の通信装置、パーソナル・デジタル・アシスタントなどを含むが、これらに限定されない、いくつかの異なるデータ処理システムのいずれかの形態を取ることができる。本質的に、データ処理システム700は、アーキテクチャ上の制限のない、既知のデータ処理システム、または後に開発されるデータ処理システムのいずれでもよい。
【0058】
このコンピュータ可読ストレージ媒体は、命令実行デバイスが使用するための命令を保持および記憶することができる有形のデバイスとすることができる。このコンピュータ可読ストレージ媒体は、例えば、限定はされないが、電子ストレージ・デバイス、磁気ストレージ・デバイス、光学ストレージ・デバイス、電磁気ストレージ・デバイス、半導体ストレージ・デバイスまたはこれらの適当な組合せとすることができる。コンピュータ可読ストレージ媒体のより具体的な例の非網羅的なリストは、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、リード・オンリー・メモリ(ROM)、消去可能なプログラマブル・リードオンリー・メモリ(EPROMまたはフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク・リード・オンリー・メモリ(CD-ROM)、ディジタル・バーサタイル・ディスク(DVD)、メモリ・スティック、フロッピー(登録商標)・ディスク、機械的にエンコードされたデバイス、例えばパンチカードまたはその上に命令が記録された溝の中の一段高くなった構造物、およびこれらの適当な組合せを含む。本明細書で使用されるとき、コンピュータ可読ストレージ媒体は、それ自体が一過性の信号、例えば電波もしくは他の自由に伝搬する電磁波、またはウェーブガイドもしくは他の伝送体内を伝搬する電磁波(例えば光ファイバ・ケーブル内を通る光パルス)、または電線を通して伝送される電気信号であると解釈されるべきではない。
【0059】
本明細書に記載されたコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体から対応するそれぞれのコンピューティング/処理デバイスにダウンロードすることができ、またはネットワーク、例えばインターネット、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)もしくは無線ネットワークまたはそれらの組合せを介して外部コンピュータもしくは外部ストレージ・デバイスにダウンロードすることができる。このネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータもしくはエッジ・サーバ、またはこれらの組合せを含むことができる。それぞれのコンピューティング/処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インタフェースは、コンピュータ可読プログラム命令をネットワークから受け取り、それらのコンピュータ可読プログラム命令を、対応するそれぞれのコンピューティング/処理デバイス内のコンピュータ可読ストレージ媒体に記憶するために転送する。
【0060】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データであってもよく、またはJava(登録商標)、Smalltalk(登録商標)、C++などのオブジェクト指向プログラミング言語、および「C」プログラミング言語または同種のプログラミング言語などの従来の手続き型プログラミング言語を含む、1つまたは複数のプログラミング言語の任意の組合せで書かれた、ソース・コードもしくはオブジェクト・コードであってもよい。このコンピュータ可読プログラム命令は、全体がユーザのコンピュータ上で実行されてもよく、一部がユーザのコンピュータ上で実行されてもよく、独立型ソフトウェア・パッケージとして実行されてもよく、一部がユーザのコンピュータ上で、一部が遠隔コンピュータ上で実行されてもよく、または全体が遠隔コンピュータもしくは遠隔サーバ上で実行されてもよい。上記の最後のシナリオでは、遠隔コンピュータが、LANもしくはWANを含む任意のタイプのネットワークを介してユーザのコンピュータに接続されてもよく、またはこの接続が、外部コンピュータに対して(例えばインターネット・サービス・プロバイダを使用してインターネットを介して)実施されてもよい。いくつかの実施形態では、本発明の態様を実施するために、例えばプログラム可能論理回路、フィールドプログラマブル・ゲート・アレイ(FPGA)またはプログラム可能論理アレイ(PLA)を含む電子回路が、このコンピュータ可読プログラム命令の状態情報を利用してその電子回路をパーソナライズすることにより、このコンピュータ可読プログラム命令を実行してもよい。
【0061】
本明細書で説明した本発明の態様を、本発明の実施形態にしたがい、フローチャート命令および方法のブロック図、またはそれらの両方、装置(システム)、およびコンピュータ・プログラム製品を参照して説明した。フローチャートの図示およびブロック図またはそれら両方およびフローチャートの図示におけるブロックおよびブロック図、またはそれらの両方のいかなる組合せでもコンピュータ可読なプログラム命令により実装することができることを理解されたい。
【0062】
コンピュータ可読なプログラム命令は、汎用目的コンピュータ、特定目的コンピュータ、または機械を生成するための他のプログラマブル・データ・プロセッシング装置に提供することができ、コンピュータのプロセッサまたは他のプログラマブル・データ・プロセッシング装置による実行がフローチャートおよびブロック図のブロックまたは複数のブロックまたはこれらの組み合わせで特定される機能/動作を実装するための手段を生成する。これらのコンピュータ、プログラマブル・データ・プロセッシング装置および他の装置またはこれらの組み合わせが特定の仕方で機能するように指令するこれらのコンピュータ可読なプログラム命令は、またコンピュータ可読な記録媒体に格納することができ、その内に命令を格納したコンピュータ可読な記録媒体は、フローチャートおよびブロック図のブロックまたは複数のブロックまたはこれらの組み合わせで特定される機能/動作の特徴を実装する命令を含む製造品を構成する。
【0063】
コンピュータ可読なプログラム命令は、またコンピュータ、他のプログラマブル・データ・プロセッシング装置、または他のデバイス上にロードされ、コンピュータ、他のプログラマブル装置、または他のデバイス上で操作ステップのシリーズに対してコンピュータ実装プロセスを生じさせることで、コンピュータ、他のプログラマブル装置または他のデバイス上でフローチャートおよびブロック図のブロックまたは複数のブロックまたはこれらの組み合わせで特定される機能/動作を実装させる。
【0064】
図中のフローチャートおよびブロック図は、本発明の種々の実施形態による、システム、方法およびコンピュータ・プログラム製品の可能な実装のアーキテクチャ、機能、および動作を例示する。この点に関し、フローチャートのそれぞれのブロックまたはブロック図は、モジュール、セグメント、または命令の部分を表し、この部分は、特定の論理的機能(複数でもよい)を実装するための1つまたはそれ以上の実行可能な命令を含む。いくつかの代替的な実装においては、ブロック内に記載された機能は、図に記載された順序ではなく発生する場合がある。例えば、連続して示された2つのブロックは、含まれる機能に応じて、実質的に同時的に実行することができるか、または複数のブロックは、時として逆の順番で実行することができる。また、ブロック図およびフローチャートの図示、またはこれらの両およびブロック図中のブロックおよびフローチャートの図示またはこれらの組み合わせのそれぞれは、特定の機能または動作を実行するかまたまたは特定の目的のハードウェアおよびコンピュータ命令を遂行する特定目的のハードウェアに基づいたシステムにより実装することができることにも留意されたい。
【0065】
本明細書および請求項は、例示の実施形態の特定の特徴および要素に関して、用語「1つの(a)」、「の少なくとも1つ(at least of)」、および「の1または複数(one or more of)」を使用することがある。これらの用語および語句は、特定の例示の実施形態において存在する少なくとも1つの特定の特徴または要素があるが、1以上が存在してもよいことを意図していることを理解されたい。すなわち、これらの用語/語句は、明細書または請求項を、存在する単一の特徴/要素に限定すること、またはそのような特徴/要素の複数が存在することを要求することを意図していない。反対に、これらの用語/語句は、明細書および請求項の範囲の中にそのような特徴/要素が複数存在する可能性がある、少なくとも単一の特徴/要素のみを必要とする。
【0066】
加えて、以下の説明では、例示的な実施形態のさまざまな要素の複数のさまざまな例を使用して、例示的な実施形態の実装の例をさらに説明し、例示的な実施形態のメカニズムの理解を助けることを理解されたい。これらの例は、非限定的であることを意図し、例示的な実施形態のメカニズムを実装するためのさまざまな可能性を網羅するものではない。本発明の精神および範囲から逸脱することなく、本明細書で提供される例に加えて、または、本明細書で提供される例のレンダリングにおいて利用され得るさまざまな要素のための、他の多くの代替的な実装があることが、当業者には明らかであろう。
【0067】
図面のシステムおよび処理は、排他的ではない。他のシステム、処理、メニューが、本明細書に記載された実施形態の原理に従って派生され、同じ目的を達成し得る。本明細書で示され、説明された実施形態およびバリエーションは、例示のみを目的とするものであることを理解されたい。現在の設計に対する修正は、実施形態の範囲から逸脱することなく、当業者によって実施され得る。本明細書で説明されるように、種々のシステム、サブシステム、エージェント、マネージャ、および処理が、ハードウェア・コンポーネント、ソフトウェア・コンポーネントまたはそれらの組み合わせを使用して実装される。本明細書の請求項の要素は、その要素が「ための手段(means for)」という語句を使用して明示的に参照されない限り、米国特許法第112条(f)の規定に基づいて解釈されるべきでない。
【0068】
本発明は、例示的な実施形態を参照して説明されたが、それに限定されるものではない。本発明の好ましい実施形態に対して多くの変更および修正を行うことができ、そのような変更および修正は、本発明の真の精神から逸脱せずに行われ得ることを、当業者は理解するであろう。したがって、添付の請求項は、本発明の真の精神および範囲内に入るすべての同等のバリエーションをカバーすると解釈されることが意図されている。