説明

ユーザの注目の的およびアクティビティに基づく通知ヘラルドの位置決めおよびレンダリング

【課題】進行中のタスクのコンテキストの中断を最小限に抑えながらコンピュータユーザが電子的通知に効率よくアクセスできるようにすることを容易にする。
【解決手段】通知システムは、通知の要約をユーザに送る視覚的情報ヘラルドを備える。情報コントローラは、1つまたは複数の表示画面上の情報ヘラルドのレンダリングおよび位置決めに関する決定に際して内容の重要度または緊急度およびユーザの現在および/または最近のアクティビティを考慮し、進行中のタスクに対する中断を最小限に抑えつつ要約された通知のユーザ処理を容易にする。

【発明の詳細な説明】
【技術分野】
【0001】
本出願は、2000年3月16日に出願した「ATTENTIONAL SYSTEMS AND INTERFACES」という表題の米国仮特許出願第60/189,801号明細書の利益を主張する、2001年3月16日に出願したPCT Application Serial No.PCT/US01/08710の優先権を主張する、2002年8月30日に出願した「PRIORITIES GENERATION AND MANAGEMENT」という表題の米国特許出願第10/220,550号明細書の一部継続出願である。
【0002】
本出願は、2000年3月16日に出願した「ATTENTIONAL SYSTEMS AND INTERFACES」という表題の米国仮特許出願第60/189,801号明細書の利益を主張する、2001年3月16日に出願したPCT Application Serial No.PCT/US01/08711の優先権を主張する、2002年8月30日に出願した「NOTIFICATION PLATFORM ARCHITECTURE」という表題の米国特許出願第10/220,419号明細書の一部継続出願でもある。上記の出願はすべて、参照により本明細書に組み込まれる。
【0003】
本発明は、一般に、デバイス、システム、プロセス、および/または個人の間の通信を手助けするシステムおよび方法に関する。より具体的には、本発明は、ユーザの注目の的(focus of attention)、認知的負荷(cognitive load)、およびアクティビティ(activity)に基づいてユーザ向けに情報を動的にレンダリングすることに関する。
【背景技術】
【0004】
このようなシステムのユーザは、これまで、コンピュータシステムの発達に合わせて、急速に変化する技術革新に対し適応しなければならなかった。これは、情報を管理する様々な形態のデスクトップアプリケーションすべてを考えると明らかなことである。ユーザは、自分のデスクトップコンピュータ上で単にアプリケーションを利用するだけのために、文字通り、数千も異なるソフトウェアオプションの中から選択することができる。また多くのユーザは、このようなアプリケーションとのインターフェースのために複数のコンピュータおよびディスプレイを自由に使える状態にある。現在使われているアプリケーションは、ワードプロセッサ、スプレッドシート、Webブラウザ、カレンダシステム、電子メールアプリケーション、CADシステムなど多岐に渡る。しかし、アプリケーションの数は増大する一方であるため、ユーザにとっては、それぞれのアプリケーションを適切に配備するだけでなく、それらから生み出される膨大な量の情報を管理することも困難である。
【0005】
情報管理に関する一例では、作業中のユーザは、多くの場合、毎日数十回もの電子的割り込みに見舞われる。大半のユーザは当面の与えられたタスクをせっせとこなそうとしているのであるので、これはきわめて厳しいことと考えられる。このような割り込みは、電子メール、スケジュールの通知(例えば、電子カレンダシステムから生成される)、インスタントメッセージの通知、リマインダ、オーディオメッセージ、さらに所定のアプリケーションを取り扱うときに発生しうる個別注意(例えば、自動化されたヘルプまたはトラブルシューティングアドバイスなどのアプリケーションの実行中にポップアップ表示されるメッセージ)の管理など複数のソースから生じる可能性がある。このような中断があるので、ユーザは、当面の与えられたタスクとその日に利用可能になると思われるすべての情報の処理に当たろうとすることとの間でバランスをとる難題に常にさらされる。
【0006】
コンピュータ科学および人工知能の研究者たちは、タスクとステータスに関するアドバイスおよびサポートにより様々な方法でユーザを支援する方法に関する多くの側面を考察している。多くの態様において、これらの科学では、コンピュータ関連のタスクを実行するときに、ユーザが情報を処理する、またはそれとは別に、ユーザがコンピュータによるユーザに対するより効果的な支援を可能にすることを容易にするコンピュータ技術革新を実現しようと試みている。しかし、これらの技術分野からのそれぞれの技術革新は、それ独自の有用なさらに多くのアプリケーションを生み出すことにつながり、様々なアプリケーションからのますます増える情報を処理しなければならないユーザのタスクは全体として拡大する。
【0007】
情報更新およびアラートを取り扱う厄介な仕事は、広くなったディスプレイ面と複数ディスプレイ構成の利用の拡大により悪化させられる。ユーザは、様々な領域に注意を払っているが、重要なメッセージに関する通知を送り、また潜在的に1つまたは複数のジェスチャー(表示されているヘラルドの一領域をクリックするなど)を介してメッセージに関するさらなる詳細にアクセスできるようにする、またはジェスチャーを介して特定のビューアまたは他のアプリケーションの呼び出しを許可する視覚的「ヘラルド」(visual herald)のグラフィックレンダリングを検索し、見つけて、潜在的に相互作用しようとするがそれは手間がかかると思い、そこで、それまでに注目していた領域に戻り、他の表示されているアイテムをレビューするか、またはそれを相互作用する作業を続ける可能性がある(例えば、現在の画面または他の画面上の別のロケーションに表示される一次文書処理タスクに戻る)。また、ユーザは、注目していない領域内に表示される重要な通知を見逃す可能性もある。
【発明の開示】
【発明が解決しようとする課題】
【0008】
したがって、ユーザによってレビューされる情報の重要度、およびユーザが情報を見る、または情報にアクセスする容易さおよび有効性を考慮し、しかもそれと同時にアプリケーションユーザのために情報の過負荷および阻害を最小限に抑える、明示的なシステム、プロセス、および設計が開発される必要がある。
【課題を解決するための手段】
【0009】
以下では、本発明のいくつかの態様の基本的な内容を理解できるように、発明の開示を簡単に説明する。この発明の開示は、本発明の概要を広範囲にわたって述べたものではない。この発明の開示は、本発明の鍵となる/決定的な要素を示したり、本発明の範囲を定めることを目的としていない。後で述べるさらなる詳細な説明の前置きとして、本発明のいくつかの概念を簡略化した形式で述べることのみを目的とする。
【0010】
本発明は、ユーザの注目の的および現在のアクティビティに基づきユーザに対し情報をレンダリングするためのシステムおよび方法に関する。例えば電子メールなど広く使用される通知アプリケーションが出現し、購読中心の通知サービスの重要性が増大したことで、認知的負荷および全体的中断を最小限に抑えて潜在的に重要な通知を気づかせるアクセス手段をユーザが利用できるようにするツールおよび設計をユーザに提供する重要性が増してきている。また、ディスプレイのサイズが大きくなり、複数のモニタを使用することも増えてきているため、着信情報を「メインロケーション(main location)」に配置するといった単純なデフォルト配置は、見逃される可能性がある。そこで、本発明では、注視および姿勢情報などのユーザの決心されたアクティビティに基づく視覚的ヘラルドの注目感応型配置(attention-sensitive placement)および構成を実現する。
【0011】
視覚的ヘラルド(visual herald)は、本発明により動的にレンダリングされ、緊急値(urgency value)を着信メッセージ(incoming message)に割り当てる優先順位付きメッセージングシステム(prioritized messaging system)に関連付けることが可能である。このようなメッセージは、要約され、情報がユーザにどのように提示されるかを制御するためにデスクトップディスプレイなどのユーザのワークスペース内に、ユーザ側での途絶を最小限に抑えるように設計された方法で、動的に配置できる。ユーザの注目の的および認知的負荷を記述する1つまたは複数のモデルからフィードバックまたは入力を受け取る情報コントローラが実現され、そこでは、例えば1つまたは複数の動的コントロールが視覚的ヘラルドの様々な側面を案内し、ユーザに対し情報がどのように、またいつ提示されるかを指令する。このようなコントロールは、ヘラルドの動的位置決め、コントロールの動的サイズ決定、ヘラルドの形状、色、および寸法を制御するなどの動的レンダリングコントロール、動的オーディオコントロール、動的表示コントロール(例えば、フェードイン/フェードアウト)、および/またはどのように長い情報をユーザに掲示するかというタイミングなどのその他のコントロールを含む。本発明では、ユーザの現在の注目の的などのファクタを考慮し、現在の焦点に基づき途絶を最小限に抑えるユーザに情報を動的に送ることにより、ユーザが情報を効率のよい方法で認知的に処理できるようにする(例えば、着信メッセージが高緊急度であり、所定のしきい値に基づきユーザが他の何らかのタスクにひどくかかりっきりになっていないと判定された場合に、ディスプレイヘラルドをユーザの現在の注目の的に移動し、そう判定されなければ、時間と共にゆっくりとフェードアウトする)。
【0012】
前記の目的を達成するために、本発明のいくつかの例示されている態様について、以下の説明および付属の図面により説明していく。これらの態様は、本発明を実施できる様々な方法を示しており、すべて、本発明の対象となることを意図されている。本発明の他の利点および新規性のある特徴は、図面と共に本発明の以下の詳細な説明を考察すると明白になるであろう。
【図面の簡単な説明】
【0013】
【図1】本発明の一態様による情報処理システムを例示したブロック図である。
【図2】本発明の一態様によるヘラルド表示の実施例を例示した図である。
【図3】本発明の一態様によるユーザインターフェースの実施例を示す図である。
【図4】本発明の一態様による他のプレゼンテーションオプションを示す図である。
【図5】本発明の一態様によるヘラルドオプションを例示した図である。
【図6】本発明の一態様による通知ヘラルド処理を例示した流れ図である。
【図7】本発明の一態様による、ワークスペース、通知ヘラルド、および通知ヘラルド移動の実施例を示す図である。
【図8】本発明の一態様による、ワークスペース、通知ヘラルド、および通知ヘラルド移動の実施例を示す図である。
【図9】本発明の一態様による、ワークスペース、通知ヘラルド、および通知ヘラルド移動の実施例を示す図である。
【図10】本発明の一態様によるヘラルドアクションおよび移動を例示した図である。
【図11】本発明の一態様によるヘラルドアクションおよび移動を例示した図である。
【図12】本発明の一態様によるヘラルドアクションおよび移動を例示した図である。
【図13】本発明の一態様によるヘラルドアクションおよび移動を例示した図である。
【図14】本発明の一態様によるヘラルドアクションおよび移動を例示した図である。
【図15】本発明の一態様によるヘラルドアクションおよび移動を例示した図である。
【図16】本発明の一態様によるヘラルドアクションおよび移動を例示した図である。
【図17】本発明の一態様によるヘラルドアクションおよび移動を例示した図である。
【図18】本発明の一態様によるヘラルドアクションおよび移動を例示した図である。
【図19】本発明の一態様による複数のモニタヘラルド移動を例示した図である。
【図20】本発明の一態様による動的ベイズモデルを例示した図である。
【図21】本発明の一態様によるイベントシステムのコントロールパネルを例示した図である。
【図22】本発明の一態様によるイベントホワイトボードを例示した図である。
【図23】本発明の一態様による時間の経過に伴うアテンション状態および予想割り込みコストに関する推論を例示した図である。
【図24】本発明の一態様によるアラート表示を例示した図である。
【図25】本発明の一態様による優先順位付けシステムを例示したブロック図である。
【図26】本発明の一態様による通知エンジンとコンテキストアナライザとの間の体系的連携を例示したブロック図である。
【図27】本発明の一態様による好適な動作環境を例示したブロック図である。
【図28】本発明との相互やり取りが可能なコンピューティング環境例を示すブロック図である。
【発明を実施するための形態】
【0014】
本発明は、ユーザによる電子通知の効率的な、自動化された処理を手助けするためのシステムおよび方法に関する。通知システム(notification system)は、要約された通知(summarized notification)をユーザに提示する情報ヘラルドまたは表示オブジェクトを含む。情報コントローラは、それぞれのユーザに関連したアテンション入力を受け取り、1つまたは複数のディスプレイ画面上に情報ヘラルドを動的に生成またはレンダリングし、要約された通知のユーザ処理を容易にする。アテンション入力(attention input)は、注視または頭部姿勢追跡デバイスなどのシステムから導かれることが可能であり、そこでは、そのようなシステムは、ユーザの現在の注目の的および/または認知的負荷を判別するためにモデルにより分析されることが可能である。注目および/または負荷に応じて、情報ヘラルドでは、複数の動的調整を行って、ユーザへの情報の提示およびタイミング設定を容易にすることができる。また、例えば、優先順位付けシステムまたは通知システムなどのメッセージングシステムは、情報コントローラと連動して動作し、メッセージの順位付けをし、さらに、オペレーションの制御を行う。
【0015】
本出願で使用されているように、「コンポーネント」、「モデル」、「コントローラ」、「ヘラルド」、「システム」などの用語は、コンピュータ関連のエンティティ、つまりハードウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、または実行中のソフトウェアのいずれかを指すことを意図されている。例えば、コンポーネントとして、限定はしないが、プロセッサ上で実行されているプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行のスレッド、プログラム、および/またはコンピュータなどがある。例えば、サーバ上で実行されているアプリケーションとサーバは両方ともコンポーネントであってよい。1つまたは複数のコンポーネントは、1つのプロセスおよび/または実行スレッド内に常駐することができ、またコンポーネントは、1台のコンピュータにローカルとして配置され、および/または2台以上のコンピュータ間に分散されることも可能である。
【0016】
本明細書で使用しているように、「推論(inference)」という用語は、一般に、イベントおよび/またはデータを介して得られるような一組の観察結果から、システム、環境、および/またはユーザの状態を推理または推論するプロセスを指す。推論は、特定のコンテキストまたはアクションを識別するために使用することができ、または例えば、複数の状態にわたる公算分布を生成することができる。推論は公算的であってよい、つまり、データおよびイベントの考察に基づいて注目している状態にわたる公算分布を計算することができる。推論は、さらに、一組のイベントおよび/またはデータから高水準のイベントを構成するために使用されるルールベース、論理的ポリシー、または方法を実行する手法を指す場合もある。このような推論を行うことで、イベント同士が時間的に近い関係による相関関係があるかどうか、またイベントおよびデータが1つまたは複数のイベントおよびデータソースを発生元としているかどうかに関係なく、一組の観察されたイベントおよび/または格納されているイベントデータから新しいイベントまたはアクションが構築される。
【0017】
まず図1を参照すると、システム100は、本発明の一態様による情報処理を例示している。1つまたは複数のメッセージ110は、通知および/または優先順位付けシステム120により処理され、そこで、1つまたは複数の優先順位付けされた通知124(または非優先順位付け)が生成され、その後、情報コントローラ130により処理される。情報コントローラ130は、1つまたは複数のアテンションモデル140などからユーザアクティビティに関する入力を受け取り、1つまたは複数の動的出力144を生成し、ワークスペース150で情報をユーザに供給し/制御する。ワークスペース150内の様々な場所で動作する情報ヘラルド160は、情報コントローラ130から動的に調整可能なデータを受け取り、ユーザに通知を、ユーザの気を散らしたり、邪魔したりしないような形で送る。情報コントローラ130は、ワークスペース/ディスプレイ150内で情報ヘラルドの位置決めおよび内容を制御し、および/または170に例示されている1つまたは複数の他のワークスペース/ディスプレイ内で類似のコントロールおよび位置決めを提示することに注意されたい。
【0018】
システム100は、アテンションモデル140などを介したユーザのアクティビティおよび/または後述の注視および姿勢情報などの視覚的注目の的に関するその他の利用可能な入力に基づいて情報ヘラルド160の注目感応型配置および構成を行う。一般に、システム100は、ユーザが、高いレベルで、着信メッセージ110にどれだけ注目するか(例えば、さらに詳しくメッセージにアクセスするためにドリルダウンするかどうか)に関する決定の要約をレビューすることを可能にする様々な通知表示プロセスを提供している。情報コントローラ130などの様々なコンポーネントも、自動的に「情報ヘラルド160を邪魔にならないようにする」洗練されたメカニズムを備える(例えば、ユーザがホバリングまたはドリルダウン操作を行わない場合に一定時間表示した後ヘラルドが徐々に消えて行くか、またはタイムアウトになる)。このような一定の待ち時間の経過後のタイムアウトにより、ユーザは、ヘラルドをちらっと見て、または見ずに仕事をしているので仕事を続けることができる−ユーザは、ヘラルド160で提示される情報に興味がないという暗黙的シグナルを送ることができる、つまり、明示的なユーザアクションを行わない。
【0019】
ヘラルド160は、さらに詳しくするための選択可能なポータルとして適応されることが可能である、例えば、電子メールでは、ヘラルドは、送信者、受信者、件名、および電子メールの最初の行を含むことができるが、メッセージをクリックすると、同じ場所、または現在の作業領域から少し離れた場所に詳細内容が表示されることに注意されたい。
【0020】
ユーザコントロール144は、情報ヘラルド160をユーザに押し付ける/向けるための複数のコントロールを含むことができる。これらは、ヘラルドの座標位置を制御するための動的位置決めコントロール(例えば、ワークスペース160および/またはその他のディスプレイ170内)、ヘラルドのサイズを変更するための動的サイジングコントロール、ヘラルド内に現れる、またはヘラルドに関連した情報を変更するための動的コンテンツコントロール(例えば、要約情報を供給する大きなメッセージ、メッセージ全体を表示する小さなメッセージ上)、ヘラルドまたはその中の内容の表示の仕方(例えば、色、形状、フォント、次元2Dから3D、など)を変更する、後述のようなオーディオキューを変更する、および/または情報表示のタイミングの制御およびヘラルドのフェードイン、フェードアウトなどの他の動的コントロールを提供する動的レンダリングコントロールを含むことができる。
【0021】
本発明の他の態様は、ヘラルド160のレンダリングのポリシーに関する決定のためのコントロールへのエントリポイントを提供すること、および一般に調整のため、または当面のケースについて、コントロールに入ることを可能にするそれぞれのヘラルドの内側のヘラルドの位置決めおよびレンダリング(例えば、ヘラルドの右下、右側の特定の領域またはボタン)を含む(例えば、ユーザがトップウィンドウ内でタイピング中であり、またWordアプリケーションで作業中であり、コントロールが呼び出されたときに状態として利用可能になっていることに注意)。
【0022】
例えば、ヘラルド160は、重要な情報に関するヘラルドの位置感応レンダリングにおけるコンテキストの考慮の影響に関して以下のユーザオプションを指定することにより表示され、制御されるようにできる。
【0023】
以下のオプションについて考える。
[ ] All Times
[ ] When I am in any desktop Application
[x] Only when I using Microsoft Word
[ ] When I've been typing
【0024】
より一般的に言えば、これらのオプションは、ヘラルドに関するプリファレンスを指定するためのリッチコントロールパネルを介していつでもユーザが選択できるように利用可能にできる(例えば、注目感応位置決めに関して)。また、ヘラルド160がアクセスされ、その情報が表示される場合に、また情報または情報の構成が複雑である場合、他の開いているウィンドウまたは現在または他のタスクに関連した構造が横に移動されるか、または特定のアイコン構造または他のシンボル表現に縮小され、最小化されることが可能なオプションが追加されうる。ヘラルドからの情報が閉じられた場合、そのタスクは、ヘラルドがアクセスされる前の状態に似た状態に復元される(例えば、タスクは、以前あった位置に少し戻されるか、または完全なサイズおよび以前あった位置に「水で戻されるようにして戻される」)。他のコントロールは、ヘラルドまたは一般的ジェスチャーまたはヘラルド160に対し「no,not now」とユーザに言わせるコントロールを含む。つまり、ただ去るのではなく、ユーザに少し時間があるか、または何かを終了したばかりのときに、ヘラルドがすぐに再び戻って来るように指示されるようにできるということである。これは、さらに、「スヌーズ」機能とも結合されることが可能であり、これによりユーザは、「later」または「in 5 minutes,please」と言うことができる(今でなく、5分後に再び現れる)。
【0025】
他の態様では、ヘラルド(herald)160上でホバリングまたはクリックすることに関連付けられている情報およびアイテムの表示は、複雑な構造とすることが可能であり、これは、一度に閉じるためその構造に付けられた1つまたは複数の「ハンドル(handle)」で実現されることができる。つまり、ヘラルド160は、重要な電子メールにしてヘラルドをクリックしたときに単一電子メールメッセージにアクセスし、単一電子メールメッセージを見て、その後そのメッセージを閉じるケースに似せることができる。他のグラフィックアイテム用の複雑な一組のウィンドウも、構造の一部として表示されることが可能であり、ユーザは、何らかの相互作用の後に「全部閉じる」手段を与えられるようにできる(例えば、構造全体を閉じるために選択グラフィックを相互作用することにより)。
【0026】
例えば、メッセージ緊急度に基づき、ヘラルドは、適切な場所で位置を変更できる。例えば、重要な情報のヘラルド位置は、アクティブウィンドウの右下隅に表示され、このアクティブウィンドウは、現在アクティブで作業中の(またはつい最近までアクティブで作業中であった)内容を含むウィンドウであるが、アクティビティの時間が経過し、あるしきい値時間に達した場合、アイテムが最後にアクティブであったモニタの中心に表示され、さらに時間が経過すると、ヘラルドがデフォルトの場所(一番左のディスプレイの右下)に表示され、および/またはさらに時間が経過すると、ユーザは席を立っているとみなされ、ヘラルドは、システムに「帰ってきた」と感知されたときに特定の場所で重要な見えなくされているヘラルドをユーザに表示するメカニズムを介してログに記録される。
【0027】
他のヘラルドの態様は、「while you were away, you missed these notices」機能などのアラート機能を含む。ユーザが周囲にいた場合に表示されているヘラルドについては、ユーザが離脱期間後(例えば、システム上でアクティビティがない一定時間後、またはより高度なシステムでは、システムを注視していることが見られなくなった後、またはオフィスアクティビティが検出されず(例えば、オーディオ)、その後、注視またはその他の存在で戻っていることがわかるか、またはマウスを移動し、スクリーンセーバーを停止した場合など)、ユーザは、ある場所(例えば、デフォルトのスポット、マウスが現在ある場所、アクティブな初期ウィンドウなど)の欠けている情報のヘラルドのリストを表示される。これらのオプションは、ヘラルドの重要度のタイムアウトと結合されることが可能であり、例えば、最後の1時間からのメッセージは、明示的に示されるが、他は、閉じられたリンク(例えば、「Older than 1 hr」というラベルの)にひとまとめにされる。ステレオ音響レンダリングなどの音源定位法は、ヘラルドの物理的レンダリングの場所またはそこに近い場所の位置でヘラルドに関連付けられているオーディオを認知的に定位できる。
【0028】
注目感応ヘラルド(attention-sensitive herald)は、アクティブウィンドウの右下側(または他の場所)にも現れることができ、またメッセージの重要度が大きくなるに従ってウィンドウの右辺にそってウィンドウの中心に向かい直線的に(または他の何らかの機能)徐々に上昇することも可能である。これは、現在または最新の(時間水平線の範囲内の)マウスカーソル位置(アクティブマウスの場合)のレベルに向かって徐々に上昇するものとして設計することも可能である。
【0029】
また、補助的情報(例えば、電子メールメッセージ)は、非常に重要な場合に(クリックまたはジェスチャーなしで)自動的に表示されるか、またはユーザ側が積極的にクリックするか、または「no」または「not now」などを伝えた場合に一定時間後に自動的に表示されるようにできる。
【0030】
本発明は、多次元座標系を含む実質的にどのような座標系をも採用することができ、また情報ヘラルド160の実質的にどのような表示形式をも採用することができ、表示形式は、実質的にどのような形状、色、次元、埋め込まれた実行ファイルを含むコード形式を含み、これらおよびその他のそれぞれの形式または属性の組み合わせを含むことができることは理解されるであろう。さらに、メッセージ110から取り出された情報は、システム100で示されている見かけの表示順序に関係なく、ワークスペース150および/または170の実質的にどのような部分にも送られるようにできる。表示内容は、ワークスペース150および/または170上に配置されるときに変換されることができることに注意されたい。例えば、内容または情報ヘラルド160は、内容のアイコン表現を生成するなどの、より小さな方法でスケーリングされるようにすることも可能である。
【0031】
情報ヘラルド(information herald)は、情報コントローラ130と関連してグラフィカルユーザインターフェースの一部として供給されるようにでき、またディスプレイ150または170の一部として、および/またはディスプレイ150または170に関連して供給されるようにもできる。ディスプレイ150、170、および/または情報ヘラルド160は、表示または内容のプリファレンス、構成、および/またはユーザによる望まれている情報書式設定の様々な態様に関してインターフェースを介して構成できる。ディスプレイ150、170、および/または情報ヘラルド160は、ヘラルドの最適な制御、サイジング/サイズ変更、形式および/または表示を行いやすくするため複数の次元、形状、色、テキスト、データ、およびサウンドを持つ表示オブジェクト(例えば、アイコン、ボタン、スライダ、入力ボックス、選択オプション、メニュー、タブなど)を含むことができる。これは、ヘラルドの次元設定、表示される内容またはモデルに関するフィードバックの供給、およびヘラルド更新の制御などの態様を含むことができる。さらに、本発明の複数の態様を実行する様々なメニューおよび代替え画面または表示出力が、提供される。これらの態様は、さらに、本発明の1つまたは複数の態様を調整し構成するための複数の入力を備えることもできる。これは、関連したグラフィカルユーザインターフェースを介してディスプレイ150、170のオペレーションを実行するマウス、キーボード、オーディオ入力および/またはその他のデバイスからのユーザコマンドを受け取ることを含む。
【0032】
そこで図2を参照すると、システム200は、本発明の一態様によるヘラルド表示処理の一実施例を示している。この態様では、様々なメッセージ204は、ヘラルド表示220内の情報の表示およびプレゼンテーションを制御する1つまたは複数のコントロール214を備える情報コントローラ210により処理される。メッセージ204に関連する情報を要約する要約コンポーネント230が備えられている(例えば、表示RE:メッセージの行、表示メッセージチャンク、表示メッセージアウトライン)。上述のように、本発明は、ユーザの注目の的の近くに使いやすく配置されるように、コンピュータデスクトップ環境内で、着信通知204の視覚的要約をヘラルド表示220のところに動的に配置することを規定する。これらの視覚的ヘラルド220は、一態様では(αブレンディングで)フェードインし、一定期間残り、その後徐々に消えて行くように設定されることができる。ユーザが視覚的ヘラルド220の上でカーソルをホバリングした場合、フェーディングは、例えば、検査のため一時停止される。ユーザが視覚的ヘラルド(またはオーディオなどの他の信号)をクリックした場合に、着信メッセージ全部が呼び出されるようにできる。
【0033】
基本的なアプローチでは、特定のプロパティを含む、例えばプリセットされたしきい値を超えるメッセージが届いたときに、視覚的ヘラルドが特定の場所(例えば、一番右のモニタの右下画面)に現れる。基本的な制御を超える部分については、システム200により、ユーザはコントロールパネル内で、システムがユーザコントロール240を介して「Attention−Sensitive Herald.」を採用すべきであることを指示することができる。この機能は、参照番号310の図3のユーザインターフェース300に示されている。この構成では、システムは、ユーザが「active time horizon」内のアプリケーションウィンドウで作業をしていたかどうかを感知し、ユーザがそのウィンドウ内で現在アクティブである(例えば、フォーカスが置かれているアプリケーションでマウスおよびキーボード操作をしている)か、またはその水平線内でアクティブであった場合、着信した視覚的ヘラルドがそのウィンドウ内の事前定義またはプリセットされた位置(例えば、右下隅)に配置される。ユーザがその時間水平線の外にある期間では不アクティビティ状態であった場合、視覚的ヘラルドはデフォルトのトップレベル位置(例えば、一番右のモニタの右下側)に現れる。
【0034】
次に図4を参照すると、システム400は、本発明の一態様による他のプレゼンテーションオプションを例示している。この態様では、視覚的ヘラルド410は、メッセージの緊急度の高まりと共に、ディスプレイ420の周辺から(例えば、周辺内のデフォルト位置から)動的に移動され、徐々にユーザの注目の的に近づくため、このような緊急性が後述の優先順位付けシステムによって記述される。これらのオプションは、通常、ユーザがそのユーザのプリファレンスを表現できるようにする構成パネルを介して制御される(例えば、周辺ではすべてのメッセージを中優先度よりも低くなるように保持し、そうでない場合には、高い優先度の通知を自分の注目の的に移動する)。
【0035】
図5は、本発明の一態様による1つまたは複数の他のヘラルドオプション500を例示する。510で、上述のシステムおよびコンポーネントは、着信メッセージの緊急度を表す聴覚的キューを使用し、視覚的表示と共にオーディオヘラルドを選択的に含むように構成できる。他の態様では、システムは、キューだけを使用するか、または誰もそこにいない場合に−オーディオによるアラートが含まれていないと見過ごされやすいヘラルドであるため、トップレベルのデフォルト領域に配置されている視覚的ヘラルドについてのみ−キューを追加する。
【0036】
520において、ヘラルドのドウェル時間は、ヘラルドが表示されている場所および/またはユーザの作業負荷に応じて短くも長くもできる。例えば、ユーザが作業している場所から遠く離れている可能性のある−特に複数モニタ状況の−デフォルトの場所で表示されている場合にヘラルドが表示される時間を延長すると有益な場合がある。ユーザが忙しい場合、ユーザに検討しその後、ユーザが関心を持っている場合に、メッセージをさらにドリルダウンすることを決定するチャンスを与えるため比較的長い期間、メッセージを表示したままにしておくと都合がよい場合がある。530において、より詳しい検査を行わない場合に徐々に消えてゆく視覚的ヘラルドが、ヘラルドジャーナルまたはフォルダに付加され、これによりユーザは、後から、効率よくヘラルドを検査することができる。このようなジャーナルのエントリは、必要ならば、ライフスパンおよび/または最大サイズを与えられることができる。このような検査可能な、拡張可能なジャーナルを使用すると、ユーザがたまたま忙しい場合にヘラルド内の情報にあまり急いでアクセスしなくてもすむようになる。
【0037】
図6は、本発明による通知ヘラルド処理の方法を例示している。説明を簡単にするために、方法が図に例示され、一連のアクティビティとして記述されているが、本発明はアクティビティの順序によって制限されるわけではなく、本発明により、いくつかのアクティビティはその図に示されているここで説明しているのと異なる順序で、および/または他のアクティビティと同時に実行することも可能であることが理解され、認識されるであろう。例えば、当業者であれば、代替えとして方法を一連の相互に関連のある状態またはイベントとして状態図などの中に表されることが可能であることを理解し、認識するであろう。さらに、本発明により、方法を実施するために例示されているすべてのアクティビティが必要なわけではない。
【0038】
602において、通知ヘラルドの外観および配置は、自動的に決定される。上記のように、これは、通知を要約し、実質的に任意の形態または形状を持つ小さなディスプレイ内に置くことを含むことができる。604において、メッセージ緊急度は、自動的に決定される。後述のように、メッセージの緊急度値を自動的に割り当てるために1つまたは複数の分類器が使用されることが可能である。608において、通知ヘラルドは、ユーザの1つまたは複数のワークスペース内のデフォルトの場所に自動的に配置される。ユーザがそれぞれのデフォルトの場所を設定できるように、コントロールが提供される。612において、ユーザアクティビティがモニタされる。上記のように、これは、ユーザの注目の的またはその他のアクティビティを記述/決定するアテンションモデルを定義することを含むことができる。
【0039】
616において、ユーザが608に配置されたヘラルドを無視するかどうかに関する決定が行われる。無視する場合、プロセスは、620に進み、それにより、ヘラルドは、時間の経過と共にゆっくりとフェードされ、必要ならば624において、動的にジャーナル内に配置することができる。ユーザが616でヘラルドを無視しない場合、628においてメッセージ緊急度に関する他の決定が下される。通知が緊急であると判定された場合、プロセスは632に進み、ヘラルドを動的にユーザの注目の的に近づけてから、616に戻る。メッセージが特に緊急であると判定されない場合(所定のしきい値によって定義されているように)、プロセスは、620に戻り、そこで、ヘラルドはフェードされ、および/または624でジャーナル内に配置される。図7および図8は、本発明の一態様による、ワークスペース、通知ヘラルド、および通知ヘラルド移動の実施例を示す。図7では、通知ヘラルド700は、ユーザワークスペース実施例のデフォルトの場所に例示されている。図8に進むと、通知ヘラルド800(ヘラルド700と同じ情報)は、ユーザの注目の的に動的に近づいているように示されている。上記のように、この種類の移動は、与えられた通知に関連付けられることが可能な様々な緊急度レベルを介して自動的に開始されることができる。
【0040】
図9は、一態様でヘラルド910が緊急に920の現在のカーソル位置に近づいてゆく(がいろいろなものをぼかさない)ようにできることを例示している。また、本発明は、例えば、910の位置と930の他の下側位置との間で補間を行うことができる(例えば、あるしきい値よりも大きい緊急度で直線的に)。ヘラルドを930の右下隅から上にアクティブウィンドウの真ん中まで、またはアクティブカーソルが置かれている場所まで移動するという特定の解決方法は、メッセージ緊急度または表示しきい値に対する重要度に基づくことができ、その場合、その配置は、滑らかに、または階段関数方式で、緊急度または重要度にマッピングすることができる。
【0041】
図10〜図18は、本発明の一態様によるヘラルドアクションおよび移動の実施例を順番に例示している。図10では、ヘラルドメッセージは、ユーザが忙しいか、または席を外していた間に関係する所定の時間しきい値を超えたメッセージについて最も古いメッセージから最も新しいメッセージへの昇順で(逆にすることも可能)1000のフォルダに置かれる。例えば、ヘラルドメッセージは、見逃された可能性のあるアイテムを後からレビューするため、1時間以上前または他の判定基準よりも古いメッセージなどのフォルダに格納されるようにできる。他の判定基準は、1010に例示されており、これは、1日以上前のメッセージ用のフォルダを示している。
【0042】
図11〜図18は、1つまたは複数のアプリケーションがアクティブになっているデスクトップ設定でヘラルドが注目の的にどのように入ることができるかを例示している。例えば、図11は、デスクトップ上で開いている3つのアクティブウィンドウを示しており、そこでは、カーソル1100はフォーカスが当たっている、またはトップにあるアプリケーション上でアクティブである。図12は、1200のトップアプリケーションの下側部分に自動的に送られたヘラルドを例示している。図13は、1300でヘラルドを検査するためユーザが動かすカーソルを例示している。図14は、ユーザが図13ですでに選択されているヘラルドを選択またはホバリングすることに基づいてヘラルドの詳細を表示するポップアップウィンドウ1400を例示している。図15は、ユーザが1510でヘラルド情報を調べている間に、1500で現在のデスクトップアプリケーションが最小化されるのを示しているこのアクションは、ユーザプリファレンス設定を介して制御されることが可能であることに注意されたい(例えば、ヘラルド検査中にアプリケーション最小化を要求する設定を選択する)。ヘラルドの検査後、ユーザは、1520で選択によりヘラルドを削除または最小化することができ、そこで、図16は1600でヘラルドの最小化または削除を例示している。図17は、1700の前のアプリケーションの自動復帰を例示しているが、図18は、図13〜図15でヘラルドを受け取って検査する前のユーザの以前のデスクトップ環境を例示している。
【0043】
図19は、本発明の一態様による複数のモニタヘラルド移動(monitor herald movement)を例示している。この態様では、ユーザは、アプリケーションを実行する複数のモニタを自由に提供できる。マルチモニタ状況では、キューまたは情報は、頭部の姿勢および/または注視に基づき現在のアクティブウィンドウから、または注目のモデルから出てくる。例えば、3モニタ状況では、ヘラルドは、1900で第1のモニタに届く。しかし、ユーザの注目の的が現在どこにあるかを判別する頭部または注視追跡コンポーネントを介して、ユーザが現在1910の第3のモニタに注意を向けていると判別され、1900からのヘラルドは、1920のユーザの注目の的に、またはその近くに自動的に位置に決めされる。
【0044】
空間的および時間的制約条件は、ヘラルドが重要な内容をわかりにくくしない、または現在の相互作用を中断しないことを保証するために、ソフトウェアアプリケーションの種類、そのアプリケーションに関連した表示情報の構成、および内容との現在または最近の特定の相互作用に基づいて考慮され、ヘラルドのレンダリングが引き起こす中断を最小限に抑えるようにできる。例えば、ヘラルドをアクティブウィンドウの右辺にそって現在の相互作用の位置の高さに方向に上に向かって移動するシステムの出力は、ユーザが現在タイピングしている位置に被さる位置にヘラルドが置かれないように修正されることができる、例えば、「反発力フィールド(repellent force field)」が、わかりにくくならないようにするためユーザの現在の作業位置に置くことができる。したがって、ヘラルドは、ユーザにできる限り近づくように徐々に上昇してゆくが、中断を引き起こす位置に被さることを回避することができる。同様に、現在のアクティビティが考慮され、簡単な「時間的力場」が適用され、レンダリングを遅らせることができる。例えば、レンダリングは、Word処理アプリケーションで現在のタイピングシーケンスが終わるまで、またはグラフィックスアプリケーション内で移動されているグラフィックが位置決めされるまで、遅延することができる。
【0045】
図20〜図24は、本発明によるユーザアクティビティおよび状態を判別するモデリングの態様を説明している。図20は、本発明の一態様により基本変数および依存関係を捕捉するユーザの注目の的に関する推論を行う動的ベイズモデルを例示するダイヤグラム2000である。ダイヤグラム2000に例示されているように、アラート媒介システムの初期バージョンでは手作りの動的ベイズネットワークモデルを採用しており、それぞれのモデルも、ユーザ指定に基づいて動的に生成されることが可能である。ベイズネットワークで考察される重要な変数は、注目の的である。この変数の状態は、注目の約15(または他の数)の相互排他的状態に構造化されており、作業負荷別にコンテキストをセグメント分割したある範囲のユーザ状況を捕捉する。状態は、例えば、高焦点ソロアクティビティ、中焦点ソロアクティビティ、低焦点ソロアクティビティ、オフィス内の会話、プレゼンテーション、運転、プライベートの個人的時間、および睡眠などの区別を含む。
【0046】
注目のモデルの目標(a goal of the model of attention)は、ユーザが特定のアテンション状態にある場合に様々な種類の割り込みのコストを推論することである。これを達成するために、本発明では、アテンション状態Ajにあるユーザがタスクまたは通信イベントDjにより中断されるコストを捕捉するユーティリティu(Di,Aj)を考察する。このコストは、それぞれの組み合わせに対するドル金額の中断回避のため対価を支払う意志として評価することができる。中断を回避するための一組のドル金額、およびユーザのアテンション状態に対し推論される公算分布が与えられたとすると、割り込みの予想コスト(ECI)は、受け取った知覚情報のストリームを条件とする、それぞれの注目の状態の公算により重み付けされた、ユーティリティを総和することにより計算することができる。つまり、ECIは、
【0047】
【数1】

【0048】
であり、ここでp(Aj|E)は、証拠ストリームEを条件とする、アテンション状態の公算である。
【0049】
図21は、本発明の一態様による、音響および視覚情報を処理するイベントクラスおよびグラフィック表示を示すイベントシステムのコントロールパネルを例示したダイヤグラム2100である。2100で示されているインターフェースでは、知覚情報のストリームから割り込みのコストを与えることができるシステムの現実世界の実施の追加詳細を考慮する。この実施例では、ユーザのアクティビティは、イベント知覚を行うクライアントデバイスおよびクライアント上で実行されるオペレーティングシステムおよびアプリケーションからコンピュータイベントを感知する抽象化システムとのやり取りをモニタしている。さらに、視覚的姿勢は、ベイズ頭部追跡システムおよびオーディオ信号処理分析を含む周囲音響アクティビティにより処理される。最後に、ユーザのカレンダは、電子カレンダアプリケーション(例えば、Outlook)とのインターフェースを介して自動的に調べられ、会合が予定されているかどうかを判別する。図21は、以下で詳しく説明されるInflowという名前のイベントモニタおよび制御システムを示している。
【0050】
クライアントイベントシステム(client event system)は、低レベルシステムイベントの複数のパターンをより高いレベルのイベントに融合するための抽象化ツールを備える。本発明では、注目のモデルにおいて、低レベルイベントおよび高レベルイベントの両方を考察する。例えば、低レベル状態は、ユーザがタイピングしているか、マウスでクリックしているかに関係なくアプリケーションが使用されていること、さらには、アプリケーション間の切り換え(例えば、アプリケーション間の単一アプリケーションフォーカス対切り換え)、タスク完了の指示(例えば、メッセージが送信される、ファイルが閉じられる、アプリケーションが閉じられるなど)のパターンなどのより高いレベルのイベントの集合として捕捉することができる。
【0051】
カレンダイベント(calendar event)の場合、会合が進行中かどうかに関係なく、会合が終わるまでの時間の長さ、および会合の場所が考慮されることができる。音響および視覚分析では、会話またはその他の信号が識別されたかどうか、ユーザがデスクトップシステムの近くに存在するかどうか、もし存在すれば、ユーザはコンピュータを注視しているか、または席を離れているかが判別される。
【0052】
図22は、本発明の一態様によるイベントホワイトボード2200を例示する図である。イベントホワイトボード2200は、システムによって考慮される低レベルおよびより高いレベルのイベントの状態を捕捉し、分配するために採用される。図に示されているように、イベントは、アプリケーションの誕生と死、アプリケーションが現在「トップ」にあり相互作用されていること、およびデスクトップ利用パターンなどの利用パターンを捕捉するイベント、この場合、ユーザがプリセットされた時間水平線内(この場合15秒)で別のアプリケーションに切り替えることを示すことに関する詳細を含む。
【0053】
図23は、本発明の一態様による時間の経過に伴うアテンション状態および予想割り込みコストに関する推論を例示するダイヤグラム2300である。上述のInflowシステムでは、様々なイベントを考慮し、動的ベイズネットワークを使用して、アテンション状態における公算分布を推論する。2310での出力は、高焦点ソロアクティビティ、低焦点ソロアクティビティ、オフィス内の会話、プレゼンテーションまたは会合、運転、プライベートの個人的時間、睡眠、および現在利用可能の注目の8つの状態を考慮するモデルの出力を示している。出力2310は、オフィス内の会話の最初の高い公算は、一番最近に、高焦点ソロアクティビティが支配的であったことを例示している。
【0054】
出力2320は、異なる中断Diに対する時間の経過により変化する予想割り込みコストに関する推論を示している。この場合、粗ユーザアテンション状態での推論された公算分布から、異なる通信イベントを回避するためにユーザが支払う意志のある予想ドル金額が計算されうる。ダイヤグラム2320の曲線は、電話、ページャ、チャイム音ヘラルド付きの完全な視覚的アラート、チャイム音付きサムネイル表示、チャイム音なしの完全視覚的アラート、およびチャイム音なしのサムネイル表示を含む、6つの異なる割り込みに関連する予想コストを、上から下への順で、表している。
【0055】
図24は、本発明の一態様によるアラート表示を例示したダイヤグラム2400である。ダイヤグラム2400は、予想割り込みコストのモデルを採用する通知システム内の完全視覚的アラートの視覚的表示の一実施例を示している(例えば、ニュース、金融、電子メール、インスタントメッセージなどに関する通知)。アラートは、オーディオおよび/または視覚的ヘラルドと結合することができる。本発明では、情報の価値の別々の分析での評価に従って、異なるメッセージ送受信アクションに対するこのような推論された予想コストと異なる通信の予想される価値とのバランスをとることができる。
【0056】
図25を参照すると、システム2510は、本発明の一態様による優先順位付けシステム2512および通知アーキテクチャを例示している。優先順位付けシステム2512は、1つまたは複数のメッセージまたは通知(notification)2514を受信し、関連したメッセージに対する優先度または重要度の尺度(例えば、メッセージが高または低優先度である公算値)を生成し、関連した優先度値を持つ1つまたは複数のメッセージを出力2516に送り出す。以下で詳しく説明するように、メッセージ2514に優先度の尺度を自動的に割り当てるように、分類器の構築および学習が行われる。例えば、出力2516は、メッセージに、高、中、低、またはその他の重要度分類のカテゴリに属す公算を割り当てられるように書式設定されうる。メッセージは、決定された重要度カテゴリに応じて、例えば、電子メールプログラム(図に示されていない)のインボックス内に自動的ソートされるようにできる。このソーティングは、さらに、ファイルを、重要度の定義済みラベルを持つシステムフォルダに送ることも含むことができる。これは、低、中、および高などの重要度でラベル付けされたフォルダを持つことを含むことができ、特定の重要度の決定されたメッセージは、関連したフォルダに合わせてソートされる。同様に、1つまたは複数のオーディオまたは視覚的表示(例えば、アイコン、シンボル)は、所望の優先度を持つメッセージが受信されたことをユーザに警告するように適応できる(例えば、高優先度メッセージには3回のビープ音、中優先度には2回のビープ音、低優先度には1回のビープ音、高優先度には赤色または点滅するアラートシンボル、中優先度メッセージを示す緑色および点滅しないアラートシンボルが受信されている)。
【0057】
本発明の他の態様によれば、通知プラットフォーム2517は、優先順位付けシステム2512と併用され、優先順位付けされたメッセージをユーザからアクセス可能な1つまたは複数の通知シンクに送ることができる。以下でさらに詳しく説明するように、通知プラットフォーム2517は、優先順位付けされたメッセージ2516を受信し、例えば、ユーザに通知する時期、場所、および方法に関する決定を下すように適応できる。例えば、通知プラットフォーム2517は、通信様式(例えば、携帯電話、またはパーソナルデジタルアシスタント(PDA)などのユーザの現在の通知シンク2518)および可能な場所および/または可能なユーザの注目の的を決定することができる。例えば、高重要度電子メールが受信された場合、通知プラットフォーム2517は、ユーザの位置/焦点を判別し、ユーザに関連した通知シンク2518に対しメッセージを送る/再書式設定することができる。通知プラットフォーム2517は、より低い優先度のメッセージ2516が受信された場合に、例えば、必要ならば、電子メールをユーザのインボックスに残し、後でレビューできるように構成することができる。以下でさらに詳しく説明するように、優先順位付けされたメッセージ2516をユーザおよび/または他のシステムに送るために他の経路指定および/またはアラート発生システム2519が使用できる。
【0058】
次に図26を参照すると、システム2600は、本発明の一態様により通知エンジンおよびコンテキストアナライザがともにどのように機能するかを例示している。システム2600は、コンテキストアナライザ2622、通知エンジン2624、1からNまでの1つまたは複数の通知ソース2626、2627、2628、通知ソースとして動作することが可能な優先順位付けシステム2630、および1からMまでの1つまたは複数の通知シンク2636、2637、2638を含み、NおよびMはそれぞれ整数である。これらのソースは、イベントパブリッシャとも呼ばれ、これらのシンクは、イベントサブスクライバとも呼ばれる。シンクおよびソースはいくつあってもよい。一般に、通知エンジン2624は、一部はコンテキストアナライザ2622に格納される、および/またはアクセスされるパラメトリック情報に基づき、イベントまたはアラートとも呼ばれる通知を、ソース2626〜2628からシンク2636〜2638に伝達する。
【0059】
コンテキストアナライザ2622は、通知意思決定に影響を及ぼすユーザの変数およびパラメータに関する情報を格納/分析する。例えば、複数のパラメータは、時刻毎の、また曜日毎のユーザの標準的な位置および注目焦点またはアクティビティなどのコンテキスト情報、およびユーザが異なる場所でアクセスする傾向のあるデバイスなどの、そのようなパラメータを条件とする追加パラメータを含むことができる。このようなパラメータは、さらに、1つまたは複数のセンサを介して自律的に行われる観察の機能とすることもできる。例えば、1つまたは複数のプロファイル(図に示されていない)は、グローバルポジショニングシステム(GPS)サブシステムにより供給されることが可能なユーザの位置に関する情報、使用されているデバイスの種類および/またはデバイスの利用パターンに関する情報、およびユーザによって特定の種類のデバイスが最後にアクセスされた時間に基づいて選択または修正できる。さらに、以下で詳しく説明するように、場所および注目などのパラメータまたは状態を動的に推論するために、自動化推論も採用することができる。プロファイルパラメータは、ユーザによって編集可能なユーザプロファイルとして格納することができる。事前定義されたプロファイルまたは動的推論の集合に依存することを超えて、通知アーキテクチャにより、ユーザは、例えば、次の「x」時間の間、または指定された時間まで重要な通知がある場合以外ユーザは対応できないなどの自分の状態をリアルタイムで指定することが可能である。
【0060】
パラメータは、さらに、異なる設定で異なる種類の通知により分配することに関するユーザのプリファレンスに関するデフォルトの通知プリファレンスパラメータを含むこともでき、これは、通知エンジン2624による通知決定を下すための基準として使用することができ、またそのときにユーザは変更を開始できる。パラメータは、ユーザが異なる状況で通知される望む方法(例えば、携帯電話、ページャを使用するなど)に関するデフォルトのパラメータを含むことができる。これらのパラメータは、異なる設定の異なるモードで通知されることに関連する中断のコストなどの評価を含むことができる。これは、ユーザが異なる場所にいる可能性、異なるデバイスが利用可能である可能性、および所定の時刻のユーザの注目ステータスの可能性を示すコンテキストパラメータだけでなく、ユーザが所定の時刻に通知される望む方法を示す通知パラメータを含むことができる。
【0061】
本発明の一態様により、コンテキストアナライザ2622により格納される情報は、アナライザにより決定されたコンテキスト情報を含む。コンテキスト情報は、説明の最後の節でより詳しく説明されているように、1つまたは複数のコンテキスト情報源(図に示されていない)に基づきユーザの位置および注目ステータスを識別することでアナライザ2622により判別される。例えば、コンテキストアナライザ2622は、ユーザの自動車または携帯電話の一部であるグローバルポジショニングシステム(GPS)を介してユーザの実際の位置を高い精度で判別することができる。アナライザは、さらに、統計モデルを使用し、ユーザのカレンダ内の曜日の種類、時刻、データ、およびユーザのアクティビティに関する観察結果などの情報を考察して収集されたバックグラウンドの評価および/または観察結果を考慮することによりユーザが所定の注目の状態にある可能性を判別することもできる。所定の注目の状態は、ユーザが通知を受けられる状態にあるか、忙しくて通知を受け取れる状態にないかの情報を含むことができ、また平日、週末、休日、および/またはその他の機会/期間などの他の考慮を含むことができる。
【0062】
ソース2626〜2628、2630は、ユーザおよび/またはその他のエンティティを対象とする通知を生成する。例えば、ソース2626〜2628は、インターネットおよびネットワークベースの通信、および電話通信などの通信と共に、ソフトウェアサービスも含むことができる。通知ソースは、一般にここでは、ユーザ、またはユーザのプロキシに、情報、サービス、および/またはシステムまたはワールドイベントに関する警告を送ることを目的とする、通知およびアラートと呼ばれることもある、イベントを発生するものとして定義される。通知ソースは、イベントソースと呼ばれることもある。
【0063】
例えば、電子メールは、優先順位付けされるように優先順位付けシステム2630により通知として生成することができ、その場合、通知を生成するアプリケーションプログラムまたはシステムは、ユーザへの電子メールの可能な重要度または緊急度に対応する相対的優先度を電子メールに割り当てる。電子メールは、さらに、ユーザに相対的重要度と無関係に送信されるようにもできる。インターネット関係のサービスは、例えば、頻繁にある最新ニュースのヘッドライン、株式市況などのユーザが購読している情報を含む通知を含むことができる。
【0064】
通知ソース(notification source)2626〜2628は、それ自体、プッシュ型またはプル型ソースとすることができる。プッシュ型ソースは、ヘッドラインニュース、および購読された後自動的に情報を送信する他のインターネット関連サービスなど、対応する要求なしで情報を自動的に生成し、送信するソースである。プル型ソースは、メールサーバがポーリングされた後電子メールが受信されるなど、要求に対する応答として情報を送信するソースである。さらに他の通知ソースには以下のものがある。
・ カレンダシステムなどの電子メールデスクトップアプリケーション、
・ コンピュータシステム(例えば、システムアクティビティまたは問題に関するアラートに関する情報のメッセージをユーザにアラートすることができる)、
・ インターネット関連サービス、アポイントメント情報、スケジューリング問い合わせ、
・ 1つまたは複数の共有フォルダ内の複数のドキュメントまたはいくつかの種類の複数のドキュメントの変更、
・ 情報の絶え間ない、または永続的な問い合わせに対する応答としての新しいドキュメントの利用可能性、および/または
・ 人およびその存在、所在の変更、近接性(例えば、私が移動中に同僚または友人が私のところから10マイル(16.09km)以内のところにいる場合に知らせてほしい)、または利用可能性(例えば、Steveが会話できる状態にあり、完全なビデオ遠隔会議をサポートできる高速リンクの近くにいる場合に知らせてほしい)に関する情報の情報源。
【0065】
通知シンク(notification sink)2636〜2638は、ユーザに通知を供給することができる。例えば、このような通知シンク2636〜2638は、デスクトップおよび/またはラップトップコンピュータ、ハンドヘルドコンピュータ、携帯電話、通常電話、ページャ、車載コンピュータなどのコンピュータ、さらには評価可能な他のシステムおよびアプリケーションを含むことができる。シンク2636〜2638の一部は、複数のシンクのうちの他のものよりも情報量豊富な形で通知を伝達することができることに注意されたい。例えば、デスクトップコンピュータは、通常、スピーカおよびスピーカに結合されると共に、ローカルネットワークまたはインターネットに結合された場合に情報を受け取るためのより高い帯域幅を持つ、比較的大型のカラーディスプレイを備える。そのため、通知は、デスクトップコンピュータにより、比較的情報量豊富な形でユーザに伝達されることができる。逆に、多くの携帯電話は、場合によっては白黒の、例えば比較的より低い帯域幅で情報を受信することができる、より小型のディスプレイを備える。それに対応して、携帯電話により伝達される通知に関連した情報は、一般に、短く、例えば、電話のインターフェース機能に適合されることが可能である。そのため、通知の内容は、携帯電話に送信されるのか、デスクトップコンピュータに送信されるのかに応じて異なる場合がある。本発明の一態様によれば、通知シンクは、例えばイベントサブスクリプションサービスを介して、イベントまたは通知を購読するものを参照することができる。
【0066】
通知エンジン(notification engine)2624は、コンテキストアナライザによって格納され、および/または決定された情報にアクセスし、ソース2626〜2628から受信された通知のうちどれがシンク2636〜2638のうちのどれに伝達されるかを決定する。さらに、通知エンジン2624は、シンク2636〜2638のうちのどれが情報の送信先として選択されているかに応じて通知がどのように伝達されるかを決定することができる。例えば、通知は、選択されたシンク2636〜2638に供給される前に通知が要約されなければならないと判断されることがある。
【0067】
本発明は、エンジン2624が通知のうちのどれを通知シンクのどれに伝達するか、および通知がどのような方法で伝達されるかに関する決定を下す方法に限定されない。一態様によれば、決定理論分析が使用可能である。例えば、通知エンジン2624は、ユーザの位置、注目、デバイス利用可能性、およびアラートがなかった場合にユーザが情報にアクセスするまでの時間の長さを含む変数に関する重要な不確定性を推論するように適応することができる。通知エンジン2624は、その後、ユーザに通知をアラートするかどうか、もしそうならば、要約の性質および通知を中継するために使用するのに適した1つまたは複数のデバイスに関する通知決定を下すことができる。一般に、通知エンジン2624は、通知の予想される正味価値を判別する。そうする際に、以下の点を考慮することができる。
・ それぞれの利用可能な通知シンクの忠実度および伝送信頼性、
・ ユーザを煩わせることの注目コスト、
・ ユーザへの情報の目新しさ、
・ ユーザが自分で情報レビューするまでの時間、
・ 情報の潜在的コンテキスト依存の値、および/または
・ 通知内に含まれる情報の時間の経過により増減する値。
【0068】
不確定性に関して行われる推論は、例えば、ユーザの何らかのアテンション状態を与えられた場合に特定のデバイスの特定のモードを使用することによるユーザへの中断のコストなどの値の予想される可能性として生成することができる。通知エンジン2624では、以下のうちの1つまたは複数に関して決定を下すことができる。
・ ユーザが現在注目し、実行している対象(例えば、注視追跡装置により追跡されるような頭部姿勢および/または注視を含むコンテキスト情報に基づく)、
・ ユーザが現在いる場所、
・ 情報がどれだけ重要であるか、
・ 通知を遅らせるコストはどのようなものか、
・ 通知はどれだけ注意をそらすか、
・ ユーザに連絡がつく可能性はどれだけか、
・ 与えられた通知シンクの特定のモードの使用に関連する忠実度損失はどれだけか。
【0069】
したがって、通知エンジン2624は、保留通知およびアクティブ通知の決定理論分析などの分析を実行し、情報シンクおよびソースにより与えられるコンテキスト依存変数を評価し、ユーザが情報およびユーザの位置および現在のアテンション状態をレビューできるようになるまでの時間などの選択された不確定性を推論することができる。
【0070】
さらに、通知エンジン2624は、個人化された決定理論分析の代わりに、またはサポートするためにコンテキストアナライザ2622によりユーザプロファイルに格納されている情報にアクセスできる。例えば、ユーザプロファイルは、所定の時刻に、ユーザがページャを介して、また通知が所定の重要度レベルを持つ場合にのみ、通知されることを好むことを指示することができる。このような情報は、決定理論分析を開始するためのベースラインとして使用することができるか、または通知エンジン2624がユーザに通知する方法および通知するかどうかを決定する手段とすることも可能である。
【0071】
本発明の一態様によれば、通知プラットフォームアーキテクチャ(notification platform architecture)2600は、イベンティング(eventing)またはメッセージング(messaging)のインフラストラクチャの上に置かれる層として構成することができる。しかし、本発明は特定のイベンティングのインフラストラクチャに限定されない。
【0072】
さらに、このアーキテクチャは、当業者であれば理解できるであろうが、柔軟な分散型計算インフラストラクチャの上に置かれる層として構成することができる。そのため、通知プラットフォームアーキテクチャは、例えば、根幹のインフラストラクチャを、ソースが通知、アラート、およびイベントを送信する手段として、またエンドポイントデバイスなどのシンクが通知、アラート、およびイベントを受信する手段として使用することができる。しかし、本発明は、そのように限定されない。
【0073】
図27を参照すると、本発明の様々な態様を実施するための環境例2710はコンピュータ2712を含んでいる。コンピュータ2712は、処理ユニット2714、システムメモリ2716、およびシステムバス2718を備える。システムバス2718は、限定はしないがシステムメモリ2716を含むシステムコンポーネントを処理ユニット2714に結合する。処理ユニット2714は、様々な市販プロセッサがあるがそのうちのどれでもよい。デュアルマイクロプロセッサおよびその他のマルチプロセッサアーキテクチャも、処理ユニット2714として採用される。
【0074】
システムバス2718は、メモリバスまたはメモリコントローラ、周辺機器バスまたは外部バス、および/または限定はされないが、11ビットバス、Industrial Standard Architecture(ISA)、Micro−Channel Architecture(MCA)、Extended ISA(EISA)、Intelligent Drive Electronics(IDE)、VESA Local Bus(VLB)、Peripheral Component Interconnect(PCI)、Universal Serial Bus(USB)、Advanced Graphics Port(AGP)、Personal Computer Memory Card International Associationバス(PCMCIA)、およびSmall Computer Systems Interface(SCSI)をはじめとする利用可能な各種バスアーキテクチャを使用するローカルバスなど数種類のバス構造のうちのいずれでもよい。
【0075】
システムメモリ2716は、揮発性メモリ2720および不揮発性メモリ2722を含む。起動時などにコンピュータ2712内の要素間の情報転送を行うための基本ルーチンを含む基本入出力システム(BIOS)は、不揮発性メモリ2722に格納される。例えば、限定はしないが、不揮発性メモリ2722には、読み取り専用メモリ(ROM)、プログラム可能ROM(PROM)、電気的プログラム可能ROM(EPROM)、電気的消去可能ROM(EEPROM)、またはフラッシュメモリなどがある。揮発性メモリ2720には、外部キャッシュメモリとして動作するランダムアクセスメモリ(RAM)がある。例えば、限定はしないが、使用可能なRAMには、同期RAM(SRAM)、ダイナミックRAM(DRAM)、同期DRAM(SDRAM)、double data rate SDRAM(DDR SDRAM)、enhanced SDRAM(ESDRAM)、Synchlink DRAM(SLDRAM)、およびdirect Rambus RAM(DRRAM)など様々な形態のものがある。
【0076】
コンピュータ2712は、さらに、取り外し可能/取り外し不可能な揮発性/不揮発性コンピュータ記憶媒体も備える。図27は、例えばディスクストレージ2724を示している。ディスクストレージ2724は、限定はしないが、磁気ディスクドライブ、磁気ディスクドライブ、テープドライブ、Jazドライブ、Zipドライブ、LS−100ドライブ、フラッシュメモリカード、またはメモリスティックなどのデバイスを含む。さらに、ディスクストレージ2724は、記憶媒体を、単独で備えることも、また限定はしないが、コンパクトディスクROMデバイス(CD−ROM)、CD書き込み可能ドライブ(CD−Rドライブ)、CD書き換え可能ドライブ(CD−RWドライブ)、またはデジタル多用途ディスクROMドライブ(DVD−ROM)などの光ディスクドライブを含む他の記憶媒体と組み合わせて備えることもできる。ディスクストレージ2724をシステムバス2718に接続しやすくするために、通常、インターフェース2726などの取り外し可能または取り外し不可能インターフェースを使用する。
【0077】
図27は、ユーザと適当な動作環境2710内の説明されている基本コンピュータ資源との媒介手段として動作するソフトウェアを説明していることは理解されるであろう。このようなソフトウェアとして、オペレーティングシステム2728がある。オペレーティングシステム2728は、ディスクストレージ2724に格納することができ、コンピュータシステム2712の資源の制御および割り当てを行う働きをする。システムアプリケーション2730は、システムメモリ2716またはディスクストレージ2724に格納されているプログラムモジュール2732およびプログラムデータ2734を通じてオペレーティングシステム2728により資源の管理を利用する。本発明は、様々なオペレーティングシステムまたはオペレーティングシステムの組み合わせで実施できることは理解されるであろう。
【0078】
ユーザは(複数の)入力デバイス2736を使用してコマンドまたは情報をコンピュータ2712に入力する。入力デバイス2736は、限定はしないが、マウスなどのポインティングデバイス、トラックボール、ペン、タッチパッド、キーボード、マイク、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナ、TVチューナーカード、デジタルカメラ、デジタルビデオカメラ、Webカメラなどを含む。これらの入力デバイスやその他の入力デバイスは、(複数の)インターフェースポート2738を介してシステムバス2718を通じて処理ユニット2714に接続する。例えば、(複数の)インターフェースポート2738には、シリアルポート、パラレルポート、ゲームポート、およびユニバーサルシリアルバス(USB)がある。(複数の)出力デバイス2740は、(複数の)入力デバイス2736と同じ種類のポートのうちいくつかを使用する。したがって、例えば、USBポートは、コンピュータ2712に入力し、コンピュータ2712からの情報を出力デバイス2740に出力するために使用することができる。出力アダプタ2742が備えられており、特別なアダプタを必要とする他の出力デバイス2740のうちモニタ、スピーカ、およびプリンタなどいくつかの出力デバイスがあることを示している。出力アダプタ2742は、例えば、限定はしないが、出力デバイス2740とシステムバス2718とを接続する手段となるビデオおよびサウンドカードを含む。他のデバイスおよび/またはデバイスのシステムは(複数の)リモートコンピュータ2744などの入出力機能を備えることに留意されたい。
【0079】
コンピュータ2712は、(複数の)リモートコンピュータ2744などの1つまたは複数のリモートコンピュータへの論理接続を使用してネットワーク接続環境で動作させることができる。(複数の)リモートコンピュータ2744は、パーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ワークステーション、マイクロプロセッサベースの機器、ピアデバイス、またはその他の共通ネットワークノードなどとすることができ、通常は、コンピュータ2712に関係する上述の要素の多くまたはすべてを含む。簡単のため、メモリストレージ2746のみ(複数の)リモートコンピュータ2744と共に例示されている。(複数の)リモートコンピュータ2744は、ネットワークインターフェース2748を通じてコンピュータ2712に論理的に接続され、通信接続2750を介して物理的に接続される。ネットワークインターフェース2748は、ローカルエリアネットワーク(LAN)およびワイドエリアネットワーク(WAN)などの通信ネットワークを含む。LAN技術には、Fiber Distributed Data Interface(FDDI)、Copper Distributed Data Interface(CDDI)、Ethernet(登録商標)/IEEE1102.3、Token Ring/IEEE1102.5などがある。WAN技術には、限定はされないが、2地点間接続リンク、統合サービスデジタル通信網(ISDN)などの回線交換ネットワークとその変種、パケット交換ネットワーク、およびデジタル加入者回線(DSL)などがある。
【0080】
(複数の)通信接続2750とは、ネットワークインターフェース2748をバス2718に接続するために使用されるハードウェア/ソフトウェアのことである。通信接続2750はわかりやすくするためにコンピュータ2712内に示されているが、コンピュータ2712の外部にあってもかまわない。ネットワークインターフェース2748の接続に必要なハードウェア/ソフトウェアには、例示的な目的のみで、例えば、通常の電話グレードのモデム、ケーブルモデム、およびDSLモデムを含むモデム、ISDNアダプタ、およびEthernet(登録商標)カードなどの内部および外部技術がある。
【0081】
図28は、本発明との相互やり取りが可能なコンピューティング環境2800の実施例を示す概略ブロック図である。システム2800は、1つまたは複数のクライアント2810を備える。(複数の)クライアント2810は、ハードウェアおよび/またはソフトウェア(例えば、スレッド、プロセス、コンピューティングデバイス)とすることができる。システム2800は、さらに、1つまたは複数のサーバ2830も備える。サーバ2830も、ハードウェアおよび/またはソフトウェア(例えば、スレッド、プロセス、コンピューティングデバイス)とすることができる。サーバ2830は、例えば、本発明を採用することにより変換を実行するスレッドを置くことができる。クライアント2810とサーバ2830との間で可能な通信の1つは、2つまたはそれ以上のコンピュータプロセス間で伝送されるように適合されたデータパケットの形であってよい。システム2800は、(複数の)クライアント2810と(複数の)サーバ2830との間の通信を容易に行えるようにするために採用されることができる通信フレームワーク2850を含む。(複数の)クライアント2810は、(複数の)クライアント2810のローカルにある情報を格納するために使用できる1つまたは複数のクライアントデータストア2860に動作可能なように接続される。同様に、(複数の)サーバ2830は、(複数の)サーバ2830のローカルにある情報を格納するために使用できる1つまたは複数のサーバデータストア2840に動作可能なように接続される。
【0082】
上述した内容は、本発明の複数の実施例を含む。もちろん、本発明を説明するためにコンポーネントまたは方法の考えられるすべての組み合わせを説明することは不可能であるが、当業者であれば、本発明の他の多くの組み合わせおよび置換が可能であることを理解できるであろう。したがって、本発明は、各請求項の精神と範囲内に収まるすべてのそのような変更、修正、および変更形態を包含することが意図されている。

【特許請求の範囲】
【請求項1】
少なくとも1つのプロセッサの動作によって実行され、ユーザへの通知を制御する方法であって、
ユーザのアクティビティをモニタするステップと、
前記ユーザのアクティビティに基づいてユーザのアテンション状態を判定するステップと、
ユーザの現在の注目の的のディスプレイ上の位置を判定するステップと、
前記ユーザのアクティビティを分析するアテンションモデルを構築するステップであって、前記アテンションモデルは、アテンション状態にあるユーザがタスクまたは通信イベントにより中断されるコストを捕捉するユーティリティを考察する、ステップと、
前記アテンションモデルで生成されたユーティリティに少なくとも部分的に基づいて距離を選択するステップと、
前記ユーザの現在の注目の的から前記選択された距離で、ワークスペース内に情報アラートを動的に配置するステップと
を含むことを特徴とする方法。
【請求項2】
入来する知覚情報のストリームを条件として、それぞれのアテンション状態の公算により重み付けされた、ユーティリティの総和を計算することにより割り込みの予想コスト(ECI)を計算するステップをさらに含み、該予想コスト(ECI)は、以下の式で表されることを特徴とする請求項1に記載の方法。
【数1】

ここで、
u(Di,Aj)は、ユーティリティ、
jは、アテンション状態、
iは、タスクまたは通信イベント
p(Aj|E)は、証拠ストリームEを条件とするアテンション状態の確率である。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate


【公開番号】特開2010−231806(P2010−231806A)
【公開日】平成22年10月14日(2010.10.14)
【国際特許分類】
【出願番号】特願2010−135290(P2010−135290)
【出願日】平成22年6月14日(2010.6.14)
【分割の表示】特願2006−517518(P2006−517518)の分割
【原出願日】平成16年6月22日(2004.6.22)
【出願人】(500046438)マイクロソフト コーポレーション (3,165)
【Fターム(参考)】