(57)【要約】  本発明は、情報コンテンツをユーザに提供するときにクライアントキャパシティの使用を最適化する方法に関する。最初に、クライアントの２つのナビゲーションモード、すなわち、コンテンツ同士間における移動が制限されることを特徴とする連続ナビゲーションモードと、コンテンツ同士間の移動が制限されないことを特徴とする不連続モードとを定義する。次に、どちらのナビゲーションモードをユーザが現時点で利用しているかを判定して、クライアントキャパシティの利用が、現時点で用いられているナビゲーションモードに基づいて適応される。第１のナビゲーションモードでは、ユーザの動作はより容易に予想可能であり、クライアントキャパシティを用いて、進行中のメディア消費を向上させることが可能である。第２のナビゲーションモードでは、ユーザの動作は予測するのがより難しく、クライアントキャパシティが、予期しない動作を取り扱うために必要とされる。
2005513589.tif 000002
【特許請求の範囲】
【請求項１】
ユーザに情報コンテンツを提供するときに、クライアントキャパシティの使用を最適化する方法において、前記方法が：
コンテンツ同士間での移動が制限されることを特徴とする第１の連続ナビゲーションモードと、コンテンツ同士間での移動が制限されないことを特徴とする第２の連続ナビゲーションモードとの２つのクライアントナビゲーションモードを定義するステップと；
ユーザが現時点で用いているナビゲーションモードを判定するステップと；
クライアントキャパシティの利用を現時点で用いられているナビゲーションモードに基づいて適応するステップと；
を含むことを特徴とする前記方法。
【請求項２】
クライアントが、第２のナビゲーションモードを可能とするポインティングデバイスを備え、ナビゲーションモードを決定する前記ステップが、前記ポインティングデバイスが起動されたことを判定するステップを含む、請求項１に記載の方法。
【請求項３】
クライアントが、ポインティングデバイスの位置を判定するセンサーを備える、請求項２に記載の方法。
【請求項４】
前記クライアントキャパシティが、メモリキャパシティと処理キャパシティとの内の少なくとも一方を含む、請求項１に記載の方法。
【請求項５】
前記メディアコンテンツが、ユーザが後出の対象を消費するためにその内部でナビゲートすることが可能なメディア構造中の対象として包含されており、構造中に含まれるすべての対象の一部しかクライアントのところでキャッシュされていず；
前記第１のナビゲーションモードが、現行の対象から構造中で隣接して置かれている対象へ移動することを特徴とし、また、前記第２のナビゲーションモードが、任意の対象同士間で移動することを特徴とし；
クライアントキャパシティの利用を適応する前記ステップが、どの対象をユーザがよりナビゲートする可能性が高いかを予測するステップと、クライアント中のこれらの対象をキャッシュして、メディアコンテンツのダイナミックなキャッシュ動作をクライアントに提供するステップとを含む；
先行する請求項の内のどれかに記載の方法。
【請求項６】
第１のナビゲーションモードを用いるときに、構造中の対象からなるサブセットの次に示す係数：
・現行の対象からの距離、
・ある対象と現行の対象との間にあるいずれかの中間対象の近似された消費時間と、
・対象のダウンロード時間と、
を決定して、前記係数を重み付けし、リスト中の前記サブセット中の対象を優先順位付けし、このリストに基づいた順序で対象をキャッシュする、請求項５に記載の方法。
【請求項７】
ユーザの行動を予測するステップと、この情報を、前記サブセット中の対象を優先順位付けするときに係数として含むステップとをさらに含む、請求項６に記載の方法。
【請求項８】
クライアントが、モバイルメディアプレイバックデバイスである、先行する請求項の内のどれかに記載の方法。
【請求項９】
前記構造が、個人化されたマガジンである、先行する請求項の内のそれかに記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メディアコンテンツを提供する際に、クライアントのキャパシティの利用を最適化する方法に関する。詳しくは、本発明は、帯域幅が限られている場合に、メディア経験を改善するため、メディアを消費しているときにクライアントのところにデータをキャッシュする方法に関する。
【背景技術】
【０００２】
ソフトウエアアプリケーションがますます向上するに連れて、たとえば、メモリキャパシティや、処理キャパシティや、インタフェースキャパシティなどを含むクライアントのキャパシティの利用を最適化することがますます重要になっている。
【０００３】
たとえば、ユーザが複雑な計算を要求することを考えてみる。この時点でプロセッサが、グラフィカルインタフェースの更新作業に占有されていたり、ネットワークと通信中であったりすると、その計算が遅れてしまう。このような遅延が使用者にとって目立つようになると、そのアプリケーションは遅速であると思われてしまう。
【０００４】
また、ユーザが、たとえば、マップをナビゲートしていて、そのマップ上のある場所に関する情報を要求する場合を考えてみる。結果を十分迅速に伝達するためには、アプリケーションは、多量の仮想メモリを必要とするが、これはユーザが、マップ上のどこでも自由にクリックするからである。
【０００５】
別の重要な例はキャッシュ動作、特に、帯域幅が限られている場合のキャッシュ動作である。帯域幅が制限されているがどうかという定義は、メディアによって異なる。たとえば、今日では、インターネットで送られるビデオには制限があり、一方、テキストは実際には制限がないが、それは、ダウンロード時間が、それを読み取るために必要な時間と比較すれば通常は無視され得るからである。このテキスト中の主な焦点が電話やＰＤＡなどのモバイルデバイスにある場合でさえも、同じ技法を、他のタイプのメディア用のより高い帯域幅で用いることが可能である。
【０００６】
データネットワーク、たとえば、インターネット上でアクセスされるメディアコンテンツを手持ち式デバイス上でキャッシュするには、基本的に次の３つの技法がある。
【０００７】
１）パッケージダウンロード
【０００８】
この方式の例として、たとえばPalm Pilotデバイスで適用可能なAvantGo Systemがある。
【０００９】
ユーザは、いくつかのメディアクリップからなるパッケージをダウンロードしてストア（キャッシュ）し、次に、これらのクリップ間をナビゲートする。消費の最中にインターネット接続は必要ないが、それは、パッケージ全体が、そのすべてのメディアコンテンツと共に、ダウンロードされて手持ち式デバイス中にストアされるからである。他方では、メディア経験は、このダウンロードされたパッケージのコンテンツに限られる。広範囲にわたるメディアコンテンツを含むことは、特に、モバイル通信リンク上でダウンロードされる場合にはコストが高くなる。
【００１０】
２）ストリーミング
【００１１】
ユーザは、ＣＤ又はラジオ局を聴いているに等しい連続したメディアストリームを受信する。この場合、クライアントは、１つの単独のメディアクリップをダウンロードし、また、ダウンロードの最中にこのクリップをプレイバックすることになっている。
【００１２】
プレイバックとダウンロードは、クライアントのメモリ中にキャッシュすることによって同時に実行されるが、また、これには、インターネットの接続、望ましくは広帯域接続に割り込みをしないことが必要である。ユーザは、メディア経験を制御する方法を制限しているが、その制御はせいぜい1次元ナビゲーション、すなわち、停止、プレイ、戻り及び早送りである。
【００１３】
３）Ｗｅｂブラウザキャッシュ動作
【００１４】
主として静止したクライアント（ワークステーション）で用いられるが、Ｗｅｂブラウジングは、たとえば、ネットワークに連続して接続されるＷＡＰ電話又はＧＲＲＳデバイスもしくはＵＭＴＳデバイスで実施される。
【００１５】
ユーザにダイナミックなメディア経験を提供するとはいえ、ブラウジングは、ユーザに要求されるとコンテンツがダウンロードされてキャッシュされるだけで、厄介な遅延を引き起こすという欠点がある。Ｗｅｂページ（画像などのメディアを含む）は、アクセスされると、通常は指定時間中にクライアントに保存され、これで、同じＷｅｂページを将来アクセスする際のスピードアップを図るようになっている。しかしながら、これは、新しい情報を要求する際の遅延という問題を解決するものではない。
【００１６】
上記から、メディア経験でダイナミックス（自由ブラウジング）を増そうとすれば、キャッシュ動作が常にユーザから１ステップ遅れるというキャッシュ動作手順が不満足なものとなる犠牲を払わないと不可能であることは明瞭である。対照的に、キャッシュ動作に割り込みすることなくアクセスする、たとえば、広帯域ストリーミング又はＡｖａｎｔＧｏタイプのパッケージシステムは、メディア経験に、ダイナミックスを、たとえあったとしても、ほとんど与えない。先行技術は、キャッシュ動作に対して定期的に割り込みすることなく、満足するメディア経験を提供するという課題に対する解決策を与えることはない。
【００１７】
ＥＰ  ００８５０１４８．８中で出願者が述べているインテリジェントなダウンロード方式は、メディアパッケージ構造中におけるユーザの現行のロケーションを囲んでいるメディアコンテンツをダウンロードすることによって上記の問題を克服するものである。こうすることによって、ユーザは、アクセス時間の遅延が実際上無く、キャッシュされたメディアコンテンツに囲まれることになる。しかしながら、この「ダイナミックな」キャッシュ動作を実施する場合、キャッシュされるべきメディアコンテンツをどのように最適に選択するかに関する問題がある。クライアントメモリは通常は限られたものであり、さらに重要なことは、メディアコンテンツをダウンロードするために必要とされる時間は、ユーザが現行の物件や、ビデオクリップなどを消費するために必要とする時間より劣位になればならないということである。ダイナミック動作が満足すべきものとなるためには、何らかの仕方で、ユーザの動作を予測する必要がある。これは、ユーザがメディアパッケージ構造によって制限されたままでいる限り、まったく成功裏に実行可能であるが、満足すべきメディア経験のためには、ユーザがこのように制限されるのは好ましくない。
【発明の開示】
【発明が解決しようとする課題】
【００１８】
本発明の第１の目的は、処理キャパシティやキャッシュ動作キャパシティなどのクライアントキャパシティの最適な利用を提供することである。
【００１９】
本発明の第２の目的は、割り込みを最小化してユーザに満足すべきメディア経験を持つことを可能とする、メディアコンテンツを提供することである。
【課題を解決するための手段】
【００２０】
本発明によれば、上記の目的及び他の目的は、クライアントをナビゲートする２つのモード、すなわち、コンテンツ同士間での移動が限られることを特徴とする第１の連続ナビゲーションと、コンテンツ同士間での移動が制限されないことを特徴とする第２の不連続モードとを定義し、ユーザが現在どちらのナビゲーションモードを利用しているかを判定し、現在利用されているナビゲーションモードにクライアントキャパシティの利用を適応することによって達成される。
【００２１】
本発明は、クライアントキャパシティは、ユーザが、メディアコンテンツ間をどのようにナビゲートするかによってさまざまに異なって利用されるべきであるという事実に基づいている。第１のナビゲーションモードでは、ユーザ動作は容易に予想することが可能であり、また、クライアントキャパシティを、進行中のメディア消費を改善するために利用することが可能である。第２のナビゲーションモードでは、ユーザ動作は予測することは難しく、また、クライアントキャパシティを、予期しない動作の取り扱いのために必要とされる。
【００２２】
上記のマップナビゲーションの例では、どのナビゲーションモードをユーザが利用しているかをアプリケーションが監視することが可能であれば、メモリの必要性は減少する。たとえば、ユーザが、目的物が載っている所定のリストをスクロールしている場合、ユーザが自由な要求をしている場合と比較して仮想メモリの必要性は低い。
【００２３】
クライアントは、第２のナビゲーションモードをイネーブルするためにマウスやペンなどのポインティングデバイスを備えているが、この場合、ナビゲーションモードを決定するステップが、前記ポインティングデバイスがいつ起動されるかを判定するステップを含むことが可能であるのが望ましい。ほとんどのＰＤＡは、モード１のナビゲーション用のナビゲーションデバイスと、モード２のナビゲーション用のポインティングデバイスとを組み合わせて備えている。ユーザは、ポインティングデバイスを起動すると、自分自身ナビゲーションボタンを用いることはあまりない。
【００２４】
ポインティングデバイスを起動すると、たとえば、このデバイス自身がクレードルやホルダーから取り外されることがあるが、このような場合に備えて、クライアントは、ポインティングデバイスの位置を判定するセンサーを具備しているのが望ましい。
【００２５】
ある好ましい実施形態によれば、メディアコンテンツはメディア構造中に対象として包含されているが、この構造中では、ユーザは前記対象を消費する目的でナビゲートすることが可能であり、この構造に包含されているすべての対象の内のほんの一部がクライアントのところにキャッシュされている。これで、第１のナビゲーションモードの特徴は、構造中で隣接して置かれている対象同士間で移動することであり、第２のナビゲーションモードの特徴は、任意の対象同士間で移動することとなる。クライアントキャパシティの利用を適応するステップは、どの対象をユーザがナビゲートする可能性が高いかを予測するステップと、これらの対象をキャッシュし、これによって、メディアコンテンツをクライアント上にダイナミックにキャッシュするステップとを含む。
【００２６】
ユーザがどのようにナビゲートするかに関する情報は、このように、どの対象をキャッシュすべきであるかということに対して影響し、また、このダイナミックキャッシュ動作が、メディア経験を著しく改善する。メディアコンテンツのキャッシュ動作を最適化することによって、満足すべきメディア経験のためのネットワーク使用の経費が軽減される。
【００２７】
第１のナビゲーションモードを用いる場合、構造中の対象のサブセットの次に示す係数：
・現行の対象からの距離と、
・ある対象と現行の対象との間にあるいずれかの中間対象の近似された消費時間と、
・対象のダウンロード時間と、
を決定して、前記係数を重み付けし、リスト中の前記サブセット中の対象を優先順位付けし、このリストに基づいた順序で対象をキャッシュすると有利である。
【００２８】
第２のナビゲーションモードが用いられ、したがって、ユーザがより自由にナビゲートする場合、ユーザの行動を予測し、また、前記サブセット中の対象を優先順位付けする際にこの情報を係数として含むことがより重要となる。
【発明を実施するための最良の形態】
【００２９】
一般に好ましいとされている実施形態は、Ｍｅｄｉａｂｒｉｃｋｓ’ＴＭマガジンの概念に関する。これは、添付クレームの範囲に対する制限と考えるべきではなく、本発明が成功裏に実施される状況の例と考えるべきである。
【００３０】
クライアントは、図1に示すＰＤＡ１などの、メディアプレイバック機能性を持つ手持ち式のモバイル通信デバイスであると仮定する。
【００３１】
定義
【００３２】
本好ましい実施形態のこの説明中、いくつかの用語には次の特殊な意味が付与される：
１．メディア対象：さまざまな層にさらに編成された１つのメディアコンテンツ。各対象は、オーディオ、ビデオ、映像、テキストなどであり得る。
２．マガジン：定義されたメディアパッケージ構造中で編成されたメディア対象の収集物。
３．原稿メディア対象：ユーザが現在消費している（読んでいる、見ている、聴いている、など）パッケージ構造中の対象。
【００３３】
満足すべきメディア経験を提供するためには、ユーザは、新たな対象がモバイルデバイスにダウンロードされるのを待つ必要なく、構造中の対象を消費することが可能であるべきである。上述したように、データを消費中に割り込みされるのを回避する１つの方法は、消費する前にすべてをロードすることである。Ｍｅｄｉａｂｒｉｃｋｓ’ＴＭマガジンを用いるこの方式は：
・読み取り中はオンラインにあって、最新の情報にアクセスし；
・初期においては、マガジンの記述(構造）をロードするだけであり；
・ユーザが消費することを希望する対象をダウンロードするだけであり；
・消費する前に少なくとも対象全体をロードする、すなわち、ストリーミングメディアはロードしない；
ものである。
【００３４】
基本的な考えは、現行の対象が消費されている間に新しい対象をデバイスにダウンロードするというものである。言い換えれば、追加対象のダウンロード時間は、ユーザが現行のメディア対象を消費するために必要とする時間に限られる。その結果として、ストリーミングと類似したものとなるが、ユーザに対するフレキシビリティが向上し、次の対象や現行の対象にユーザが費やす時間が分からないという複雑さが加わる。
【００３５】
ダウンロード時間
【００３６】
対象をダウンロードする時間は、次のものから成る：
・クライアントからサーバに対する要求
・サーバが要求を処理する時間
・サーバからクライアントへの結果
・対象のサイズと帯域幅に関連したダウンロード時間
・クライアントが結果をキャッシュする時間
【００３７】
要求がサーバに行って空の結果が戻ってくるまでの時間は、対象のサイズには依存しない。また、サーバが適度に迅速であれば、サーバが結果を処理するために時間は必要ない。クライアントにおけるキャッシュ動作時間は、固定されている部分とサイズに依存している部分の双方を持っている。
【００３８】
一般に、ダウンロード時間は、各対象に対する固定時間であり、サイズによって異なる可変時間と見ることが可能である。上記の固定部分が、この変数より大きい場合、いくつかの対象を１つの要求でキャッシュして、各対象のオーバヘッド時間を軽減するほうが良い。考慮すべき別のことは、要求と結果は多分、プロトコルに基づいてパケットを用いており、また、パケットの半分を用いる代わりにすべてのパケットをデータで満たすことが有利であるということである。以下の説明において、要求に対するサイズ依存時間は、固定部分より非常に長いと仮定されている。こうでない場合、たとえば、かなりの初期化時間を伴う衛星通信を利用している場合、記述の方法を、熟練者によって少し調整すべきである。
【００３９】
ネットワーク又はサーバに対する負荷は、各クライアントに影響を与える。モバイルユーザがキャッリアを、たとえば、ＧＰＲＳ接続から無線ＬＡＮに変更すると、ダウンロード時間も変化する。それに応じて、モバイルデバイスは、早い時期のダウンロードからの統計を取っておくことによって、予期されるダウンロード時間を調整すべきである。最後のＮ回のダウンロードのダウンロード時間を簡単に測定して（ここでも、より小さい固定部分が無視可能であると仮定する）、それをダウンロードされたバイト数に関連付けることによって、ダウンロード速度の推定平均値が次のように計算可能となる：
予期バイト数／秒＝平均（サイズＮ／ダウンロード時間Ｎ）
【００４０】
消費時間
【００４１】
消費時間とは、ユーザが、各対象に対して消費すると予期される時間のことである。それは、次に示すメディアのタイプによって大なり小なり予測可能である：
・オーディオ：ファイル形式で与えられ、たとえば、ｍｐ３ファイルの長さであり、もちろんユーザが早送りなどはしないという条件付きである。
・テキスト：テキストの長さに関連しているが、また、ユーザ毎の読み取り速度である。ユーザの読み取り速度と行動の統計を収集することによって、妥当な推定値を決定することが可能であるべきである。
・画像：推定するのが難しい。ユーザの行動に基づいて近似させることが可能である、たとえば、写真付きのオンラインアルバムをブラウジングするときに各画像に対して費やされた平均時間。
【００４２】
現実には、予期された消費時間は正確ではない。ユーザは、現行の対象が消費される前に別の対象に飛びつくかもしれないし、推定が間違っていることもあり得る。統計データを収集して、推定値を向上させることが可能である。ここで、ユーザが、対象をまったく消費することなくその上を移動する場合には、統計は非常に短い停止、すなわちスキップ、を無視すべきである。
【００４３】
ナビゲーションモード１
【００４４】
マガジン内でのナビゲーションは、その目的のためにと意図されている、ＰＤＡ１のナビゲーションボタン２を用いることによって可能である。このタイプのナビゲーションは、モード１のナビゲーションと呼ばれる。以下のさらに説明する一般的な場合においては、ＰＤＡは４つのボタン２ａ〜２ｄ、すなわち、前方ボタン２ａ、後方ボタン２ｂ、上方ボタン２ｃ及び下方ボタン２ｄを有している。これらのボタンを持つマガジン中でナビゲーションする場合、ユーザがこれら４つの方向にしか移動することができない、すなわち、前方−同じレベルでの次の対象、後方−同じレベルでの前の対象、下方−より詳細なレベルに移動する、上方−より一般的なレベルに移動する。これは、一般的なＷｅｂブラウザにおける場合より制限された移動であり、この制限によって、インテリジェントなダイナミックキャッシュ動作が容易となる。ユーザが現在消費している対象からどの対象にナビゲートすることが可能であるか知ることによって、現行の対象が消費されている間に次の対象を予測して、それをデバイスにダウンロードすることが可能である。
【００４５】
また、ＰＤＡもまた、自動モードを有しているが、このモードでは、メディアのプレーヤは、ある対象が消費された後、自動的に次の対象に連続する。「次の」対象は、コンテンツ提供者かユーザの好みによって決まる、マガジンを通過する所定の経路によって定義される。自動モードは、モード１ナビゲーションの特殊な場合と考えることが可能である。マガジンは、一般的な消費者がこの所定の経路で満足し、興味のある物件を数回調査するだけであるように構築するのが望ましい。
【００４６】
メディア経験を高めるために、対象はＰＤＡメモリ３中にキャッシュされ、また、対象は、ユーザがそれにナビゲートする直前にキャッシュされるのが理想的である。
【００４７】
選択プロセス
【００４８】
図２に、現時点で消費されている対象、すなわち０＿現行２１を持つマガジン構造の例を示す。上述したように、４つの方向、すなわち、前方、後方、上方及び下方に移動することが可能である。２つの移動で到達可能な対象はすべて、構造中に示され、また、１＿＜方向＞又は２＿＜方向１＞＿＜方向２＞とラベル付けされる。
【００４９】
この例では、上方とは、「親」対象２２に至るもの、すなわち、現行の対象２１にいたる最も近い、より一般的なレベルの対象であると仮定される。代替例では、上方とは、親レベルにある次の対象２３であり、この場合、ユーザは、前に訪問した対象２２を再訪問する必要はない。
【００５０】
後方の方向とは、通常は、同じレベルにある前の対象を示すが、あるレベルにある最初の対象に到達すると、後方は、親に到ることになる。図では、これは、親対象２２は、後方を２回押す（２＿後方＿後方）ことによって到達することが可能であるという事実によって示されている。
【００５１】
現行の対象２１（０＿現行）に最初に到達する、すなわち、子レベルを介することなく到達することが可能な唯一の方法は、対象１＿後方を介することである。したがって、ユーザが０＿現行にある時には、１＿後方は、常にキャッシュされる。さらに、現行レベルにある対象に到達する唯一の方法は、親対象２２を介することであり、これは、１＿上方もまたキャッシュされることを意味する。
【００５２】
これにより、１＿下方と１＿前方の対象が訪問された各対象に対してキャッシュされたがどの対象もキャッシュアウトされない場合、対象１＿後方と対象１＿上方は、ユーザのナビゲート先となりえるどの対象に対してもすでにキャッシュされているということになる。言い換えれば、０＿現行が消費されている間に、１＿下方と１＿前方という２つの新しい対象をキャッシュすれば十分である。すべての対象に対してこれを実行するに十分な時間があれば、我々の目的は達成され、また、ユーザは決して、どの新しい対象でもそれがロードされるのを待つ必要はない。
【００５３】
平均の消費時間が平均のダウンロード時間の２倍未満である場合、状況は困難であり、また、デバイスはしばしばデータがない状態となる。したがって、マガジンは、平均消費時間がダウンロード時間より大きくなるように設計されるべきである。平均消費時間とダウンロード時間の比は、マガジンがキャッシュ動作にとってどの程度良好であるかの尺度として利用することが可能である。
【００５４】
消費時間の推定値とダウンロード時間の推定値の双方に誤差がある。消費時間が誤差を持つ特殊なケースとして、ユーザが対象を消費しないことを選ぶが、直接的に先に進む（ザッピング）場合である。このように推定値から逸脱すると、キャッシュ内にない対象に到達してしまうということがあり得る。対象を現行の対象から２ステップ以上キャッシュしようと試行することによって、その危険性が減少する。これらの対象をロードする時間は、１＿下方と１＿前方がキャッシュされた後で残っている時間(図３を参照）、すなわち：
消費時間（０＿現行）−  ダウンロード時間（１＿前方）  −  ダウンロード時間（１＿下方）である。
【００５５】
現行の対象から２ステップ離れたところまでキャッシュ動作を拡張すると、図２の構造中で６つの対象に到達することが可能である。（この際、１＿上方に等しい２＿後方＿後方はカウントしない）。クライアントメモリ３がこれらの対象すべてをキャッシュするに十分である場合、本対象の消費時間は、この目的にとっては短すぎる。したがって、インテリジェントな選択プロセスが必要となるが、これは、ＰＤＡ中では、プロセッサ５と通信インタフェース６とを制御するソフトウエア４として実行される。クライアントメモリ３が不十分である場合、この要件はよりいっそう歴然としている。
【００５６】
ここで、このような選択プロセスは、現行の対象から２ステップ離れた対象に限られるべきではない。むしろ、この選択は、すべての係数に対して公平に実施して、対象のダイナミックキャッシュ動作を遂行し、その結果、満足すべきメディア経験をもたらすようにすべきである。このような環境下では、２ステップ対象以前に３ステップ対象を選択する場合もあり得る。
【００５７】
どの対象をキャッシュすべきであるかを決定するには、次に示すさまざまな選択基準を識別することが：
【００５８】
対象までのステップ
【００５９】
当然のことであるが、上述したように、現時点で消費されている対象のすぐ隣の対象を、キャッシュすべきである。その後で、現行の対象からの距離に反比例して優先順位を決定する。
【００６０】
消費までの時間
【００６１】
経路上にあるすべての対象のすべての消費時間をある対象に加算することによって、その対象が必要とされる以前の推定時間を計算することが可能である。長い消費時間を持つより近い対象の背後に「隠されている」対象には低いキャッシュ動作優先順位を与えることが可能であることが理解され得るであろう。むしろ、それは、このより近い対象が消費されている間にキャッシュすることが可能である。
【００６２】
ダウンロード時間
【００６３】
ある対象のダウンロード時間が長い場合、時間に遅れずにロードされるであろう別の対象を選んで、ユーザがその経路を選ぶことを希望するほうが良いかもしれない。同じことが、関連対象の成すストリングにも適用可能である。
【００６４】
消費パターン
【００６５】
パッケージによっては、消費者は毎回同じ経路をたどることがある。この経路は、予約購読しているマガジン毎に統計を取っておくことによってデバイスの記憶にとどめ、これで、この経路が優先順位付けされ得るようにすべきである。ユーザによっては、別の経路に異動する前に特定の経路上のすべての対象を消費することを希望することがある。
【００６６】
選り好み
【００６７】
消費に影響する変数は、ユーザ又はメディアプロバイダによって定義される。メディア対象によるタグ付けを利用すると、ユーザは、あるタイプの対象を優先順位付けすることが可能となる。
【００６８】
リンク
【００６９】
ある対象は別の対象に、どうにかして別のマガジン中で関連するということもあり得るので、直接的なリンクを構造中に構築することが可能である。
【００７０】
基準はそれぞれが、重み、すなわち、増倍率を伴っているべきである。デバイスをどのように使用するかによって、この重みはユーザの行動を学習するように適応すべきである。対象毎の基準を加算することによって、キャッシュ動作ポイントを計算することが可能であり、キャッシュポイントを最も多く持つ対象が、次にダウンロードされる対象となる。
【００７１】
図４を参照して、好ましい先端クプロセスを次に、さらに詳細に説明する。
【００７２】
最初に、ステップ４１で、現行の対象から１ステップ離れているすべての対象をキャッシュする。上述したように、これは通常は、最大で２つの新たにキャッシュされた対象を意味する。
【００７３】
ステップ４２では、ある対象に対する多数の係数を計算し、ステップ４３では、この対象の優先順位が、このさまざまな係数を重み付けすることによって次のように決定される：
優先順位  ＝
Ｗ１  ｘ  消費までの時間
＋  Ｗ２  ｘ  ダウンロード時間
＋  Ｗ３  ｘ  直接移動の確率
＋  Ｗ４  ｘ  追加の係数
【００７４】
ステップ４２と４３が、現行の対象からＮステップ以内にあるすべての対象に対して繰り返され（ステップ４４）、ステップ４５では、結果として得られる優先順位が、ソーティングされたリスト中で整理される。Ｎの値は、利用可能な処理キャパシティ、また、間接的には利用可能なメモリによって異なる。プロセッサがステップ４２〜４５を必要時間内ですべての対象に対して実行可能であったとしても、メモリがより多くの対象をキャッシュすることが可能でない限り、それで、選択プロセスが向上するわけではない。
【００７５】
ステップ４６で、指標ｊ（最高の優先順位を持つ対象での、リストの頂部から開始される指標ｊ）を持つ対象がすでにキャッシュされているかどうかチェックされる。すでにキャッシュされている場合、ｊの値を１だけ増して(ステップ４７）、ステップ６に戻り、次の対象に対して前記のチェックを実行する。しかしながら、対象がキャッシュされていない場合、ステップ４８に進み、ここで、対象をキャッシュするに十分なキャッシュメモリが利用可能であるかどうかチェックされる。もしあれば、対象がキャッシュされ（ステップ４９）、ステップ４７に進んで、ここで、ｊの値を増して、ステップ４６に再度戻る。
【００７６】
ステップ４８で十分なキャッシュメモリがない場合、ステップ５０〜５５のキャッシュアウトルーチンに進む（キャッシュアウトとは、前にキャッシュされた対象をメモリから消去することである）。ステップ５１で、現行の対象から少なくとも事前定義された距離だけ「背後」のところに、読み取られた対象が存在するかどうかチェックされる。「背後」という方向は、ユーザが通過した構造のエリアに対応するように定義される。この距離は、Ｎ個のステップより大きくあるべきである、すなわち、優先順位付けされたリストにない対象だけがキャッシュアウトされる。読み取られた対象が見つかった場合、そのうちの１つをステップ５２でキャッシュアウトして、ステップ４８に戻る。見つからなかった場合、ステップ５３で、現行の対象から少なくとも事前定義された距離（多分、ステップ５０の距離とは異なった距離）だけ背後に未読の対象があるかどうかチェックされる。あれば、これらの対象の内の１つがステップ５４でキャッシュアウトされて、ステップ４８に戻る。なければ、ステップ５５で、リストの最後にある対象がキャッシュアウトされて、ステップ４８に戻る。
【００７７】
対象がキャッシュイン又はキャッシュアウトされる毎にステップ４２まではるばる戻ると、ときとして有利であるが、それは、多分、その結果、優先順位を決定する係数が変更されるからである。代替例として、対象がキャッシュイン又はキャッシュアウトされる毎に制御が実行され、ステップ４２に戻ることが必要であると見なされているかどうかが分かる。第３の代替例としては、規則的な間隔で、たとえば、キャッシュ動作を４回する毎に、ステップ４２に戻る。
【００７８】
この手順によれば、メモリは、結局は、ステップ４３で定義されたように最高の優先順位を持つ対象で充填される。しかしながら、プロセスは、移動し始めるユーザによっていつ割り込まれるか分からない。この事態が発生する毎に、ステップ４１から再開始する。
【００７９】
ナビゲーションモード２
【００８０】
図１を再度参照すると、Ｍｅｄｉａｂｒｉｃｋｓ’ＴＭの概念で用いるものとされているＰＤＡ１もまた、ペンなどのポインティングデバイス７を用いる図１に示す場合においては、直接ナビゲーション用の手段を有している。ユーザがこのような手段を用いて対象同士間を移動する場合、マガジン構造の制限が失われ、現行の対象への距離などの上記のある係数の重要性が減少するが、それは、ユーザが、構造中で利用可能ないずれかの対象に突然移動し得るからである。代わりに、どの対象をキャッシュすべきであるかを選択する他の係数、一般的には、ユーザの行動に関連する係数がより重要となる。
【００８１】
本発明の本好ましい実施形態によれば、クライアントは、どのナビゲーションモードをユーザが利用しているかを判定する手段を備えていて、そのナビゲーションモードに対してキャッシュ動作プロセスを適応させる。図１では、これが、ペン７がＰＤＡ１から取り外されたことを検出するように配置されたセンサー８で図示されている。
【００８２】
ペン７が取り外されると、上記の重みＷ１〜Ｗ４が変更されて、たとえば、ユーザの選り好みと消費パターンの重要性が増す。その結果、キャッシュ動作戦略がまったく異なったものとなるが、それでも同じプロセスによって支配されており、この概要が図４〜５に示されている。場合によっては、ステップ４１をキャンセルする、すなわち、すぐ隣の対象をキャッシュしないようにすることさえ考えられ得る。
【００８３】
キャッシュ動作手順を最適化することに関連する上記の例は、本発明を適用する１例であると考えるべきである。当業者は、多分上記の実施形態にしたがって本発明を成功裏に実施して、他のプロセスを最適化し得るであろう。本発明の主要の概念は、クレームから歴然としているように、ユーザがどのようにしてメディアコンテンツ間をナビゲートするかを決定するという特徴にある。
【図面の簡単な説明】
【００８４】
本発明の上記の態様及び他の態様は、添付図面を参照してより明瞭に説明されている好ましい実施形態を読めば明らかであろう。
【図１】本発明の実施に適した、手持ち式モバイルデバイスの例の図である。
【図２】本発明の好ましい実施形態にしたがったマガジン構造の例を示す図である。
【図３】消費時間対時間の時系列を示す図である。
【図４】本発明の実施形態にしたがったキャッシュ動作手順のフローチャートである。
【図５】本発明の好ましい実施形態に従ったキャッシュアウト動作のフローチャートである。
【図１】
2005513589.tif 000003
【図２】
2005513589.tif 000004
【図３】
2005513589.tif 000005
【図４】
2005513589.tif 000006
【図５】
2005513589.tif 000007
【国際調査報告】
2005513589.tif 000008
2005513589.tif 000009
2005513589.tif 000010