(57)【特許請求の範囲】
【請求項１】
ゲームサーバのリソースの使用量を測定するように構成されたリソース使用量測定ユニットと、
前記測定されたリソースの使用量と所定の閾値とを比較し、当該測定されたリソースの使用量が前記所定の閾値を超えた場合に、前記ゲームサーバに接続している複数のクライアント装置のなかから、各クライアント装置におけるゲームの進行状態に基づいて、所定のゲームイベントが発生しようとしているクライアント装置を決定する決定ユニットと、
当該決定されたクライアント装置に、前記ゲームサーバから非インタラクティブなメディアファイルをストリーム配信するように構成された送信ユニットと、
を備える、前記ゲームサーバのための負荷分散システム。
【請求項２】
前記ゲームサーバは、中央処理装置（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）、メインメモリ、および、グラフィックメモリを備え、
当該ゲームサーバのリソースの使用量は、これらの少なくとも１つの使用量に関連付けられている、請求項１に記載の負荷分散システム。
【請求項３】
前記ゲームサーバは、中央処理装置（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）、メインメモリ、および、グラフィックメモリを備え、
当該ゲームサーバの処理能力が、前記中央処理装置（ＣＰＵ）の処理能力、前記グラフィック処理ユニット（ＧＰＵ）の処理能力、前記メインメモリの容量、および、前記グラフィックメモリの容量のうちの少なくとも１つに関連付けられ、
前記所定の閾値が、前記ゲームサーバの処理能力に基づいて定められた閾値である、請求項１に記載の負荷分散システム。
【請求項４】
前記所定のゲームイベントが、ゲームを前記ゲームのプレイヤにより開始すること、前記プレイヤにより前記ゲームにおける新しい段階に入ること、前記プレイヤにより前記ゲームにおける新しい場所に入ること、前記プレイヤにより前記ゲームにおけるミッションを完了すること、前記プレイヤによりゲームアイテムを取得すること、前記プレイヤにより前記ゲームにおける他のキャラクタと会うこと、前記プレイヤにより前記ゲームにおける前記他のキャラクタと会話すること、および、前記ゲームで場面変化が生ずることのうちの少なくとも１つに関連付けられる、請求項１に記載の負荷分散システム。
【請求項５】
前記決定ユニットが、前記所定のゲームイベントが発生しようとしているクライアント装置を候補クライアント装置とし、当該候補クライアント装置の中から、前記非インタラクティブなメディアファイルをストリーム配信すべきクライアント装置をランダム又は所定条件に基づいて選択するように構成される、請求項１に記載の負荷分散システム。
【請求項６】
前記ゲームサーバは、中央処理装置（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）、メインメモリ、および、グラフィックメモリを備え、
前記ゲームサーバのリソースの使用量に関連する、当該ゲームサーバの処理能力が、前記中央処理装置（ＣＰＵ）の処理能力、前記グラフィック処理ユニット（ＧＰＵ）の処理能力、前記メインメモリの容量、および、前記グラフィックメモリの容量のうちの少なくとも１つに関連付けられている、請求項５に記載の負荷分散システム。
【請求項７】
前記決定ユニットが、前記所定のゲームイベントが発生しようとしているクライアント装置に対してメディアファイルをストリーム配信した数に少なくとも部分的に基づいて、前記非インタラクティブなメディアファイルをストリーム配信すべきクライアント装置を選択するようにさらに構成される、請求項１に記載の負荷分散システム。
【請求項８】
前記非インタラクティブなメディアファイルが、非インタラクティブなビデオファイル、非インタラクティブなオーディオファイル、非インタラクティブな画像ファイル、および非インタラクティブなテキストファイルのうちの少なくとも１つを含む、請求項１に記載の負荷分散システム。
【請求項９】
複数のクライアント装置が接続するゲームサーバの負荷を低減するために、負荷低減システムの制御下で行われる方法であって、
前記負荷低減システムのコントローラは、負荷分散プログラムに基づいて、
前記ゲームサーバのリソースの使用量を測定すること、
前記測定されたリソースの使用量を所定の閾値と比較すること、
前記測定されたリソースの使用量が前記所定の閾値を超えている場合に、前記ゲームサーバに接続しているクライアント装置のなかから、各クライアント装置におけるゲームの進行状態に基づいて、所定のゲームイベントが発生しようとしているクライアント装置を決定すること、および、
前記決定されたクライアント装置に、非インタラクティブなメディアファイルをストリーム配信すること
を実行する前記方法。
【請求項１０】
前記ゲームサーバは、中央処理装置（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）、メインメモリ、および、グラフィックメモリを備え、
当該ゲームサーバのリソースの使用量は、これらの少なくとも１つの使用量に関連付けられている、請求項９に記載の方法。
【請求項１１】
前記所定の閾値が、前記ゲームサーバのリソースの使用量に関連する、当該ゲームサーバの処理能力に基づいて定められた閾値である、請求項９に記載の方法。
【請求項１２】
前記所定のゲームイベントが、ゲームを前記ゲームのプレイヤにより開始すること、前記プレイヤにより前記ゲームにおける新しい段階に入ること、前記プレイヤにより前記ゲームにおける新しい場所に入ること、前記プレイヤにより前記ゲームにおけるミッションを完了すること、前記プレイヤによりゲームアイテムを取得すること、前記プレイヤにより前記ゲームにおける他のキャラクタと会うこと、前記プレイヤにより前記ゲームにおける他のキャラクタと会話すること、および前記ゲームで場面変化が生ずることのうちの少なくとも１つに関連付けられている、請求項９に記載の方法。
【請求項１３】
前記コントローラは、前記所定のゲームイベントが発生しようとしているクライアント装置を候補クライアント装置とし、当該候補クライアント装置の中から、前記非インタラクティブなメディアファイルをストリーム配信すべきクライアント装置をランダム又は所定条件に基づいて選択すること
を実行する、請求項９に記載の方法。
【請求項１４】
前記コントローラは、前記ゲームサーバのリソースの使用量に関連する、当該ゲームサーバの処理能力に少なくとも部分的に基づいて、前記クライアント装置を選択することを実行する、請求項１３に記載の方法。
【請求項１５】
前記コントローラは、前記候補クライアント装置に対して非インタラクティブなメディアファイルをストリーム配信した数に少なくとも部分的に基づいて、前記クライアント装置を選択することを実行する、請求項１３に記載の方法。
【請求項１６】
前記非インタラクティブなメディアファイルが、非インタラクティブなビデオファイル、非インタラクティブなオーディオファイル、非インタラクティブな画像ファイル、および非インタラクティブなテキストファイルのうちの少なくとも１つを含む、請求項９に記載の方法。
【請求項１７】
複数のクライアント装置が接続するゲームサーバの負荷を低減することを、コンピュータに実行させるためのプログラムであって、
当該プログラムは、前記コンピュータに、
前記ゲームサーバのリソースの使用量を測定すること、
当該測定されたリソースの使用量が所定の閾値を超えた場合に、前記ゲームサーバに接続している複数のクライアント装置のうち所定のゲームイベントが発生しようとしているクライアント装置を判定すること、
前記判定されたクライアント装置のなかから、各クライアント装置におけるゲームの進行状態にに基づいて、非インタラクティブなメディアファイルをストリーム配信すべきクライアント装置を決定すること、および
前記非インタラクティブなメディアファイルを、前記ゲームサーバから、前記決定されたクライアント装置にストリーム配信すること
を実行させる、前記プログラム。
【請求項１８】
前記ゲームサーバは、中央処理装置（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）、メインメモリ、および、グラフィックメモリを備え、
当該ゲームサーバのリソースの使用量は、これらの少なくとも１つの使用量に関連付けられている、請求項１７に記載のプログラム。
【請求項１９】
前記所定の閾値が、前記ゲームサーバのリソースの使用量に関連する、当該ゲームサーバの処理能力に基づいて定められた閾値である、請求項１７に記載のプログラム。
【請求項２０】
前記ゲームサーバは、中央処理装置（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）、メインメモリ、および、グラフィックメモリを備え、  前記ゲームサーバの前記処理能力が、前記中央処理装置（ＣＰＵ）の処理能力、前記グラフィック処理ユニット（ＧＰＵ）の処理能力、前記メインメモリの容量、および、前記グラフィックメモリの容量のうちの少なくとも１つに関連付けられている、請求項１９に記載のプログラム。
【請求項２１】
前記決定することが、
前記所定のゲームイベントが生じようとしているクライアント装置を候補クライアント装置とし、および
前記ゲームサーバのリソースの使用量に関連する、当該ゲームサーバの処理能力に少なくとも部分的に基づいて、前記候補クライアント装置から前記非インタラクティブなメディアファイルをストリーム配信すべきクライアント装置を選択すること
を含む、請求項１７に記載のプログラム。
【請求項２２】
前記所定のゲームイベントが、ゲームを前記ゲームのプレイヤにより開始すること、前記プレイヤにより前記ゲームにおける新しい段階に入ること、前記プレイヤにより前記ゲームにおける新しい場所に入ること、前記プレイヤにより前記ゲームにおけるミッションを完了すること、前記プレイヤによりゲームアイテムを取得すること、前記プレイヤにより前記ゲームにおける他のキャラクタと会うこと、前記プレイヤにより前記ゲームにおける他のキャラクタと会話すること、および、前記ゲームで場面変化が生ずることのうちの少なくとも１つに関連付けられている、請求項２１に記載のプログラム。
【請求項２３】
前記ゲームサーバは、中央処理装置（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）、メインメモリ、および、グラフィックメモリを備え、
前記ゲームサーバの前記処理能力が、前記中央処理装置（ＣＰＵ）の処理能力、前記グラフィック処理ユニット（ＧＰＵ）の処理能力、前記メインメモリの容量、および、前記グラフィックメモリの容量のうちの少なくとも１つに関連付けられている、請求項２１に記載のプログラム。
【請求項２４】
前記非インタラクティブなメディアファイルが、非インタラクティブなビデオファイル、非インタラクティブなオーディオファイル、非インタラクティブな画像ファイル、および非インタラクティブなテキストファイルのうちの少なくとも１つを含む、請求項１７に記載のプログラム。
【請求項２５】
前記所定のゲームイベントが発生しようとしているクライアント装置に配信されようとしていたインタラクティブなメディアファイルに対する前記ゲームサーバのリソースの必要量が、前記非インタラクティブなメディアファイルに対する前記ゲームサーバのリソースの必要量より大きい、請求項１記載のシステム。
【請求項２６】
前記所定のゲームイベントが発生しようとしているクライアント装置に配信されようとしていたインタラクティブなメディアファイルに対する前記ゲームサーバのリソースの必要量が、前記非インタラクティブなメディアファイルに対する前記ゲームサーバのリソースの必要量より大きい請求項９記載の方法。
【請求項２７】
前記所定のゲームイベントが発生しようとしているクライアント装置に配信されようとしていたインタラクティブなメディアファイルに対する前記ゲームサーバのリソースの必要量が、前記非インタラクティブなメディアファイルに対する前記ゲームサーバのリソースの必要量より大きい請求項１９記載のプログラム。
【請求項２８】
請求項１７〜２４、及び、２７の何れか１つの請求項に記載のプログラムが記録された、コンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
クラウドコンピューティング技術の誕生、およびスマートフォン、タブレット、およびデジタルテレビジョンなどの高性能電子装置の普及により、ユーザの間に、自分の装置を用いて高品質のゲームを楽しもうという気運が高まっている。クラウドベース環境では、高性能を有する（例えば、高い処理能力を備える）ゲームサーバは、高品質のゲームアプリケーションを動作させる、または実行し、かつゲームサーバに接続された複数のユーザ装置にゲームサービスを提供することができる。このような場合、ユーザは、自分のユーザ装置でゲームを楽しむことができるが、ユーザ装置には、高品質のゲームアプリケーションを動作させるための十分な処理能力を有していない可能性がある。しかし、多数のユーザが、ゲームサーバに対して同時にアクセスしたとき、サーバは、期待される高性能をユーザ装置のそれぞれに提供するための処理能力が不足するおそれがある。
【発明の概要】
【課題を解決するための手段】
【０００２】
一例では、負荷分散システムは、  ゲームサーバのリソースの使用量を測定するように構成されたリソース使用量測定ユニットと、前記測定されたリソースの使用量と所定の閾値とを比較し、当該測定されたリソースの使用量が前記所定の閾値を超えたことが決定されたときに、前記ゲームサーバに接続している複数のクライアント装置について、ゲームのための処理の状態を判定し、判定の結果に基づいて、所定のゲームイベントが発生しようとしていることにより、非インタラクティブなメディアファイルの再生を許容できる、一つ又は複数のクライアント装置を決定する決定ユニットと、当該決定された１つ又は複数のクライアント装置に、前記ゲームサーバから非インタラクティブなメディアファイルをストリーム配信するように構成された送信ユニットと、を備える。  
【０００３】
他の例では、複数のクライアント装置が接続するゲームサーバの負荷を低減するために、負荷低減システムの制御下で行われる方法は、負荷低減システムのコントローラは、負荷分散プログラムに基づいて、前記ゲームサーバのリソースの使用量を測定すること、  前記測定されたリソースの使用量を所定の閾値と比較すること、前記測定されたリソースの使用量が前記所定の閾値を超えたことの決定に応じて、前記ゲームサーバに接続しているクライアント装置のうち所定のゲームイベントが発生しようとしている、一つ又は複数のクライアント装置を決定すること、および、当該１つまたは複数のクライアント装置に、非インタラクティブなメディアファイルをストリーム配信することを実行する。
【０００４】
さらに他の例では、複数のクライアント装置が接続するゲームサーバの負荷を低減することを、コンピュータに実行させるためのプログラムは、前記ゲームサーバのリソースの使用量を測定すること、当該測定されたリソースの使用量が所定の閾値を超えたことの決定に応じて、前記ゲームサーバに接続している複数のクライアント装置のうち所定のゲームイベントが発生しようとしているクライアント装置を判定すること、前記判定されたクライアント装置から、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置を決定すること、および  前記非インタラクティブなメディアファイルを、前記ゲームサーバから、前記決定された１つまたは複数のクライアント装置にストリーム配信することを含む。
【０００５】
前述の要約は例示的なものに過ぎず、何らかの意味で限定することを意図していない。上記で述べた例示的な態様、実施形態、および特徴に加えて、さらなる態様、実施形態、および特徴が、図面および以下の詳細な説明を参照すれば明らかになろう。
【０００６】
本開示の前述の、および他の特徴は、添付図面と併せて、以下の説明および添付の特許請求の範囲からさらに明らかになろう。これらの図面は、本開示によるいくつかの実施形態を示しているに過ぎないこと、したがって、その範囲を限定するものと見なされるべきではないことを理解した上で、本開示は、添付の図面を使用することにより、さらなる特殊性および詳細について述べるものとする。
【図面の簡単な説明】
【０００７】
【図１】本明細書で述べる少なくともいくつかの実施形態により構成された、複数のクライアント装置が、ネットワークを介してクラウドベースのゲームサービスを提供するゲームサーバに接続されているクラウドベースのゲームシステムの説明例を概略的に示す図である。
【図２】本明細書で述べる少なくともいくつかの実施形態により構成された、クラウドベースのゲームシステムに負荷分散スキームを提供するための例示的なアーキテクチャを示す概略的なブロック図である。
【図３】本明細書で述べる少なくともいくつかの実施形態により構成された、クラウドベースのゲームシステムに、負荷分散スキームを提供するためのプロセスの例示的なフローチャートである。
【図４】本明細書で述べる少なくともいくつかの実施形態により構成された、クラウドベースのゲームシステムに、負荷分散スキームを提供するために使用できるコンピュータプログラム製品を示す図である。
【図５】本明細書で述べる少なくともいくつかの実施形態により構成された、クラウドベースのゲームシステムに、負荷分散スキームを提供するために使用できる例示的なコンピューティングデバイスを示すブロック図である。
【発明を実施するための形態】
【０００８】
以下の詳細な説明では、その一部を形成する添付図面に対して参照が行われる。図面中、文脈がその他の形を規定しない限り、同様の記号は、通常、同様のコンポーネントを識別する。詳細な説明、図面、および特許請求の範囲で述べられる例示的な実施形態は、限定することを意味していない。本明細書で提示される主題の趣旨または範囲から逸脱することなく、他の実施形態を使用することができ、かつ他の変更を行うことができる。本明細書で概略的に述べられ、かつ図面で示された本開示の諸態様は、広い範囲の様々な構成で配置され、置換され、組み合わされ、分離され、かつ設計されうるが、そのすべてが、本明細書で明示的に企図されていることが容易に理解されよう。
【０００９】
本開示は、概して、クラウドベースのゲームシステムに対する負荷分散スキームに関連する、特に方法、装置、システム、デバイス、およびコンピュータプログラム製品に関する。
【００１０】
ゲームサーバが、ネットワークを介して複数のクライアント装置にクラウドベースのゲームサービスを提供するクラウドベースのゲームシステムに関する技術が、概して述べられる。いくつかの例では、多すぎるクライアント装置が、同時に同じゲームサーバにアクセスしたとき、ゲームサーバに課せられる処理負荷は、ゲームサーバが負担できる負荷よりも多くなりうる。このような場合、ゲームサーバは、ゲームサーバに接続された複数のクライアント装置の少なくともいくつかに対して、例えば、非インタラクティブなビデオファイル、および非インタラクティブなオーディオファイルなど、非インタラクティブなメディアファイルを提供する、またはストリーム配信することができる。非インタラクティブなメディアファイルをストリーム配信することは、実際のインタラクティブなゲームファイルを提供するほど多くの処理能力を必要としないので、非インタラクティブなメディアファイルをストリーム配信することは、ゲームサーバに対する全体的な処理負荷を低下させることができる。
【００１１】
いくつかの例では、ゲームサーバは、ゲームサーバのリソース使用量が所定の閾値を超えたとき、ゲームサーバに接続された複数のクライアント装置の中から、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置を決定または特定することができる。より具体的には、ユーザに対する高品質な体験を維持することに関するものを含む様々な理由のために、ゲームサーバは、所定のゲームイベントがそれぞれで生じようとしている１つまたは複数の候補クライアント装置を決定または特定することができる。所定のゲームイベントは、ゲームを開始すること、ゲームにおける新しい段階もしくは新しい場所に入ること、ゲームにおけるミッションを完了すること、ゲームアイテムを取得すること、他のキャラクタと会うもしくは会話すること、または何らかの他の事前に規定されたゲームの中間目標（ｍｉｌｅｓｔｏｎｅ）のうちの少なくとも１つに関連付けることができる。次いで、ゲームサーバは、候補クライアント装置の中で、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置を決定または特定することができ、また所定のゲームイベントが生ずると、決定または特定されたクライアント装置に非インタラクティブなメディアファイルをストリーム配信することができる。
【００１２】
例えば、ユーザが、クラウドベースのゲームサーバにより提供された格闘ゲームを行っているとき、ユーザの装置を介して、ユーザにより操作されたゲームキャラクタは、部屋に入り、敵のキャラクタに会い、敵のキャラクタと格闘を開始することができる。ゲームサーバのリソースが十分にある場合、ゲームを進めることができ、ユーザの装置を介してユーザにより操作されるゲームキャラクタは、敵のキャラクタと格闘することができる。他方で、ゲームサーバのリソースが、課せられた処理負荷を満たすには十分ではない場合、ユーザの装置は、それに代えて、（ゲームサーバによりユーザの装置に提供される、またはストリーム配信される非インタラクティブなメディアファイルである）動画を受け取り、かつ再生することができ、その場合、例えば、ユーザの装置を介して、ユーザにより別の形で操作されたゲームキャラクタは、その最近のインタラクティブな時点でゲームを進行させるのではなく、敵と会って会話を行う。したがって、格闘は、ユーザの装置上で非インタラクティブな動画の再生が完了した後に開始することができる。
【００１３】
図１は、本明細書で述べる少なくともいくつかの実施形態により構成された、ネットワークを介してクラウドベースのゲームサービスを提供するゲームサーバに、複数のクライアント装置が接続されたクラウドベースのゲームシステムの説明例を概略的に示す。
【００１４】
図１で示すように、ゲームサーバ１００は、ネットワーク１２０を介して、複数のクライアント装置１１０−１、１１０−２、１１０−３、・・・、１１０−ｎにクラウドベースのゲームサービスを提供することができる。クライアント装置１１０−１、１１０−２、１１０−３、・・・、１１０−ｎの例は、これだけに限らないが、移動電話、スマートフォン、携帯情報端末（ＰＤＡ）、タブレット、移動ゲーム機、ラップトップコンピュータ、デスクトップコンピュータ、または通信機能を有する任意の他の装置を含むことができる。
【００１５】
いくつかの実施形態では、ゲームサーバ１００は、例えば、リソース使用量測定ユニットにより、そのリソース使用量を監視または測定することができる。いくつかの実施形態では、リソース使用量は、ゲームサーバ１００の中央処理装置（ＣＰＵ）のリソース使用量、ゲームサーバ１００のグラフィック処理ユニット（ＧＰＵ）のリソース使用量、ゲームサーバ１００のメインメモリのリソース使用量、および／またはゲームサーバ１００のグラフィックメモリのリソース使用量などに関連付けることができる。
【００１６】
いくつかの実施形態では、ゲームサーバ１００は、例えば、リソース使用量測定ユニットにより、測定されたリソース使用量を所定の閾値と比較することができる。いくつかの実施形態では、所定の閾値は、ゲームサーバ１００の処理能力と関連付けることができる。例としてであって、限定するものではないが、処理能力は、中央処理装置（ＣＰＵ）の処理能力、グラフィック処理ユニット（ＧＰＵ）の処理能力、メインメモリの容量、および／またはグラフィックメモリの容量などに関連付けることができる。
【００１７】
いくつかの実施形態では、ゲームサーバ１００は、例えば、決定ユニットにより、リソース使用量が所定の閾値を超えると判定されたとき、クライアント装置１１０−１、１１０−２、１１０−３、・・・、１１０−ｎの中で、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置を決定または特定することができる。例としてであって、限定するものはないが、非インタラクティブなメディアファイルは、非インタラクティブなビデオファイル、非インタラクティブなオーディオファイル、非インタラクティブな画像ファイル、非インタラクティブなテキストファイル、あるいはゲームサーバ１００が、例えば、レンダリングプロセスなどの複雑な処理を行うことなく、クライアント装置にストリーム配信するだけでよい他の任意のメディアファイルとすることができる。
【００１８】
いくつかの実施形態では、ゲームサーバ１００は、例えば、決定ユニットにより、リソース使用量が所定の閾値を超えると判定されたとき、クライアント装置１１０−１、１１０−２、１１０−３、・・・、１１０−ｎの中で、所定のゲームイベントがそれぞれで生じようとしている１つまたは複数の候補クライアント装置を決定または特定することができる。所定のゲームイベントの例は、これだけに限らないが、ゲームのプレイヤによりゲームを開始すること、プレイヤによりゲームにおける新しい段階に入ること、プレイヤによりゲームにおける新しい場所に入ること、プレイヤによりゲームにおけるミッションを完了すること、プレイヤによりゲームアイテムを取得すること、プレイヤによりゲームにおける他のキャラクタと会うこと、プレイヤによりゲームにおける他のキャラクタと会話すること、ゲームで場面変化が生ずること、任意の他の事前に規定されたゲームに関するイベントもしくは中間目標、あるいはさらにユーザの高品質体験を乱すことを回避するように意図された時点でのゲーム停止も含むことができる。例えば、図１で示す例では、クライアント装置１１０−１のユーザ、すなわち、プレイヤ１３０−１は、ゲームの新しい段階に入ろうとしており、クライアント装置１１０−２のユーザ、すなわち、プレイヤ１３０−２は、ゲームのミッションを完了しようとしており、さらにクライアント装置１１０−３のユーザ、すなわち、プレイヤ１３０−３は、新しいゲームアイテムを取得しようとしていることが想定されうる。このような場合、ゲームサーバ１００は、ゲームサーバ１００に課せられた処理負荷を低減するために、非インタラクティブなメディアファイルをストリーム配信すべき候補クライアント装置として、クライアント装置１１０−１、１１０−２、および１１０−３を決定または特定することができる。
【００１９】
いくつかの実施形態では、ゲームサーバ１００は、例えば、決定ユニットにより、１つまたは複数の候補クライアント装置の中で、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置を決定または特定することができる。いくつかの実施形態では、ゲームサーバ１００は、例えば、中央処理装置（ＣＰＵ）の処理能力、グラフィック処理ユニット（ＧＰＵ）の処理能力、メインメモリの容量、および／またはグラフィックメモリの容量など、ゲームサーバ１００の利用可能な処理能力を考慮に入れることにより、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置を決定または特定することができる。例えば、図１で示す例では、ゲームサーバ１００は、ゲームサーバ１００の処理能力、およびゲームサーバ１００の測定されたリソース使用量を考慮すると、３つの候補クライアント装置１１０−１、１１０−２、および１１０−３の中で、２つのクライアント装置にだけ非インタラクティブなメディアファイルをストリーム配信することが必要であると判定することができる。
【００２０】
いくつかの実施形態では、ゲームサーバ１００は、候補クライアント装置の中で、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置をランダムに決定または特定することができる。代替の実施形態では、ゲームサーバ１００は、１つまたは複数の候補クライアント装置のそれぞれに対する非インタラクティブなメディアファイルのストリーム配信数に少なくとも部分的に基づいて、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置を決定または特定することができる。例えば、図１に示す例では、ゲームサーバ１００が、以前に非インタラクティブなメディアファイルを、クライアント装置１１０−１に対して２回、クライアント装置１１０−２に対して５回、クライアント装置１１０−３に対して１０回提供している、またはストリーム配信している場合、ゲームサーバ１００は、遅延または他の処理負担をクライアント装置の中で公平に分散させるようにするために、所定のゲームイベントが生じると、非インタラクティブなメディアファイルをクライアント装置１１０−１および１１０−２にストリーム配信するように決定することができる。
【００２１】
非インタラクティブなメディアファイルをストリーム配信することは、レンダリングなどの複雑なグラフィック処理を必要とするゲームプレイを提供するよりも少ないゲームサーバ１００のリソースを使用すればよいので、ゲームサーバ１００の処理負荷は、クライアント装置１１０−１、１１０−２、１１０−３、・・・、１１０−ｎのいくつかのものに非インタラクティブなメディアファイルをストリーム配信することにより低減されうる。
【００２２】
図２は、本明細書で述べられる少なくともいくつかの実施形態により構成された、クラウドベースのゲームシステムに負荷分散スキームを提供するための例示的なアーキテクチャを示す概略的なブロック図を示している。
【００２３】
図示のように、負荷分散システム２００は、リソース使用量測定ユニット２１０、決定ユニット２２０、および送信ユニット２３０を含むことができる。別々のコンポーネントとして示されているが、様々なコンポーネントは、さらなるコンポーネントへと分割すること、より少ないコンポーネントに組み合わせること、または全く削除することができるが、それもまた開示される主題の範囲に含まれるように企図されている。
【００２４】
リソース使用量測定ユニット２１０は、ゲームサーバ（例えば、ゲームサーバ１００）のリソース使用量を測定するように構成することができる。例としてであって、限定するものではないが、ゲームサーバのリソース使用量は、ゲームサーバの中央処理装置（ＣＰＵ）のリソース使用量、ゲームサーバのグラフィック処理ユニット（ＧＰＵ）のリソース使用量、ゲームサーバのメインメモリのリソース使用量、および／またはゲームサーバのグラフィックメモリのリソース使用量などに関連付けることができる。
【００２５】
決定ユニット２２０は、リソース使用量測定ユニット２１０により測定されたリソース使用量に少なくとも部分的に基づいて、ゲームサーバに接続された複数のクライアント装置（例えば、クライアント装置１１０−１、１１０−２、１１０−３、・・・、１１０−ｎ）の中で、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置を決定または特定するように構成することができる。いくつかの実施形態では、決定ユニット２２０は、リソース使用量測定ユニット２１０により測定されたリソース使用量を所定の閾値と比較することができる。例としてであって、限定するものではないが、所定の閾値は、例えば、中央処理装置（ＣＰＵ）の処理能力、グラフィック処理ユニット（ＧＰＵ）の処理能力、メインメモリの容量、および／またはグラフィックメモリの容量など、ゲームサーバの処理能力と関連付けることができる。
【００２６】
いくつかの実施形態では、決定ユニット２２０は、ゲームサーバの、またはそれに対応するリソース使用量が、所定の閾値を超えると判定されたとき、ゲームサーバに接続された複数のクライアント装置の中で、所定のゲームイベントがそれぞれで生じようとしている１つまたは複数の候補クライアント装置を決定または特定することができる。所定のゲームイベントの例は、これだけに限らないが、ゲームのプレイヤによりゲームを開始すること、プレイヤによりゲームにおける新しい段階に入ること、プレイヤによりゲームにおける新しい場所に入ること、プレイヤによりゲームにおけるミッションを完了すること、プレイヤによりゲームアイテムを取得すること、プレイヤによりゲームにおける他のキャラクタと会うこと、プレイヤによりゲームにおける他のキャラクタと会話すること、ゲームで場面変化が生ずること、ならびにそれが生じたときにプレイヤを極度にいらいらさせることのないゲーム停止など、任意の他のイベントを含むことができる。
【００２７】
いくつかの実施形態では、決定ユニット２２０は、候補クライアント装置の中で、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置を決定または特定することができる。いくつかの実施形態では、決定ユニット２２０は、例えば、中央処理装置（ＣＰＵ）の処理能力、グラフィック処理ユニット（ＧＰＵ）の処理能力、メインメモリの容量、および／またはグラフィックメモリの容量など、ゲームサーバの処理能力に少なくとも部分的に基づいて、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置を決定または特定することができる。
【００２８】
いくつかの実施形態では、決定ユニット２２０は、候補クライアント装置の中で、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置をランダムに決定または特定することができる。代替の実施形態では、決定ユニット２２０は、遅延または他の処理負担をクライアント装置の中で公平に分散させるように、候補クライアント装置のそれぞれに対する以前の非インタラクティブなメディアファイルのストリーム配信数に少なくとも部分的に基づいて、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置を決定または特定することができる。
【００２９】
送信ユニット２３０は、所定のゲームイベントが生ずると、決定ユニット２２０により決定されたクライアント装置に、非インタラクティブなメディアファイルを送信、またはストリーム配信するように構成することができる。非インタラクティブなメディアファイルをストリーム配信することは、レンダリングなどの複雑なグラフィック処理を必要とするゲームプレイを提供するよりも少ないゲームサーバのリソースを使用すればよいので、ゲームサーバ１００の処理負荷は、クライアント装置のいくつかのものに非インタラクティブなメディアファイルをストリーム配信することにより低減されうる。
【００３０】
図３は、本明細書で述べる少なくともいくつかの実施形態により構成された、クラウドベースのゲームシステムに負荷分散スキームを提供するためのプロセスの例示的なフローチャートを示す。
【００３１】
図３のプロセスは、ゲームサーバ１００などのゲームサーバ、および／または上記で述べたリソース使用量測定ユニット２１０、決定ユニット２２０、および送信ユニット２３０を含む負荷分散システム２００などの負荷分散システムで実施することができる。例示的なプロセスは、１つまたは複数のブロック３００、３１０、３２０、３３０、および／または３４０により示された、１つまたは複数のオペレーション、アクション、または機能を含むことができる。別々のブロックとして示されているが、望ましい実装形態に応じて、様々なブロックを、さらなるブロックへと分割する、より少ないブロックへと組み合わせる、または削除することができる。処理は、ブロック３００で開始することができる。
【００３２】
ブロック３００で、ゲームサーバまたは負荷分散システムは、ゲームサーバのリソース使用量を測定することができる。例としてであって、限定するものではないが、ゲームサーバのリソース使用量は、ゲームサーバの中央処理装置（ＣＰＵ）のリソース使用量、ゲームサーバのグラフィック処理ユニット（ＧＰＵ）のリソース使用量、ゲームサーバのメインメモリのリソース使用量、および／またはゲームサーバのグラフィックメモリのリソース使用量などに関連付けることができる。処理は、ブロック３００からブロック３１０へと進むことができる。
【００３３】
ブロック３１０で、ゲームサーバまたは負荷分散システムは、測定されたリソース使用量を所定の閾値と比較することができる。例としてであって、限定するものではないが、所定の閾値は、例えば、中央処理装置（ＣＰＵ）の処理能力、グラフィック処理ユニット（ＧＰＵ）の処理能力、メインメモリの容量、および／またはグラフィックメモリの容量など、ゲームサーバの処理能力に関連付けることができる。測定されたリソース使用量が所定の閾値を超えた場合（ＹＥＳ（はい））、処理はブロック３１０からブロック３２０へと進むことができる。そうではない場合、処理は、ブロック３００に戻ることになる。
【００３４】
ブロック３２０で、ゲームサーバまたは負荷分散システムは、ゲームサーバに接続された複数のクライアント装置の中で、所定のゲームイベントがそれぞれで生じようとしている１つまたは複数の候補クライアント装置を決定または特定することができる。所定のゲームイベントの例は、これだけに限らないが、ゲームのプレイヤによりゲームを開始すること、プレイヤによりゲームにおける新しい段階に入ること、プレイヤによりゲームにおける新しい場所に入ること、プレイヤによりゲームにおけるミッションを完了すること、プレイヤによりゲームアイテムを取得すること、プレイヤによりゲームにおける他のキャラクタと会うこと、プレイヤによりゲームにおける他のキャラクタと会話すること、ゲームで場面変化が生ずること、およびユーザにおける体験品質のどんな乱れも低減させるように意図された時点でゲームを停止することを含む、任意の他のゲームの中間目標を含むことができる。処理は、ブロック３２０からブロック３３０に進むことができる。
【００３５】
ブロック３３０で、ゲームサーバまたは負荷分散システムは、１つまたは複数の候補クライアント装置の中で、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置を決定または特定することができる。いくつかの実施形態では、ゲームサーバまたは負荷分散システムは、ゲームサーバの処理能力に少なくとも部分的に基づいて、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置を決定または特定することができる。いくつかの実施形態では、ゲームサーバまたは負荷分散システムは、候補クライアント装置の中で、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置をランダムに決定または特定することができる。代替の実施形態では、ゲームサーバまたは負荷分散システムは、遅延または他の処理負担をクライアント装置の中で公平に分散させるようにするために、１つまたは複数の候補クライアント装置のそれぞれに対する以前の非インタラクティブなメディアファイルのストリーム配信数に少なくとも部分的に基づいて、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置を選択することができる。処理は、ブロック３３０からブロック３４０に進むことができる。
【００３６】
ブロック３４０で、ゲームサーバまたは負荷分散システムは、決定された、または特定されたクライアント装置に対して、非インタラクティブなメディアファイルを送信またはストリーム配信することができる。処理は、ブロック３４０からブロック３００に進むことができる。非インタラクティブなメディアファイルのストリーム配信は、実際のインタラクティブなゲームファイルを提供するほど多くの処理能力を必要としないので、非インタラクティブなメディアファイルのストリーム配信は、ゲームサーバに対する全体の処理負荷を低下させることができる。
【００３７】
当業者であれば、本明細書で開示される、このおよび他のプロセスならびに方法に関して、プロセスおよび方法で実施される機能は、異なる順序で実施できることが理解されよう。さらに、概要を述べたステップおよびオペレーションは、例として提供されているに過ぎず、ステップおよびオペレーションのいくつかのものは、開示された実施形態の本質から逸脱することなく、任意選択のものとすることができ、より少ないステップおよびオペレーションへと組み合わせることができ、あるいはさらなるステップおよびオペレーションへと拡張することもできる。
【００３８】
図４は、本明細書で述べる少なくともいくつかの実施形態により構成された、クラウドベースのゲームシステムに負荷分散スキームを提供するために使用できるコンピュータプログラム製品を示している。
【００３９】
プログラム製品４００は、信号伝達媒体４０２を含むことができる。信号伝達媒体４０２は、例えば、プロセッサにより実行されたとき、図１〜図３に関して上記で述べた機能を提供できる１つまたは複数の命令４０４を含むことができる。例として、命令４０４は、ゲームサーバのリソース使用量が所定の閾値を超えたとき、ゲームサーバに接続された複数のクライアント装置の中で、非インタラクティブなメディアファイルをストリーム配信すべき１つまたは複数のクライアント装置を決定するための１つまたは複数の命令と、決定された１つまたは複数のクライアント装置に非インタラクティブなメディアファイルをストリーム配信するための１つまたは複数の命令とを含むことができる。したがって、例えば、図２を参照すると、負荷分散システム２００が、命令４０４に応じて、図３で示すブロックの１つまたは複数のものを行うことができる。
【００４０】
いくつかの実施形態では、信号伝達媒体４０２は、これだけに限らないが、ハードディスクドライブ、ＣＤ、ＤＶＤ、デジタルテープ、メモリなど、コンピュータ可読媒体４０６を含むことができる。いくつかの実施形態では、信号伝達媒体４０２は、これだけに限らないが、メモリ、読取り／書込み（Ｒ／Ｗ）ＣＤ、Ｒ／Ｗ  ＤＶＤなどの記録可能な媒体４０８を含むことができる。いくつかの実施形態では、信号伝達媒体４０２は、これだけに限らないが、デジタル通信媒体および／またはアナログ通信媒体（例えば、光ファイバケーブル、導波管、有線通信リンク、無線通信リンク）など、通信媒体４１０を含むことができる。したがって、例えば、プログラム製品４００を、ＲＦ信号伝達媒体４０２により負荷分散システム２００の１つまたは複数のモジュールに伝達することができ、その場合、信号伝達媒体４０２は、無線通信媒体４１０（例えば、ＩＥＥＥ８０２．１１規格に準拠する無線通信媒体）により伝達される。
【００４１】
図５は、本明細書で述べる少なくともいくつかの実施形態により構成された、クラウドベースのゲームシステムに負荷分散スキームを提供するために使用できる例示的なコンピューティングデバイスを示すブロック図である。
【００４２】
これらの例では、コンピューティングデバイス５００の要素は、クラウドベースのゲームシステムのために配置または構成することができる。非常に基本的な構成５０２では、コンピューティングデバイス５００は、通常、１つまたは複数のプロセッサ５０４、およびシステムメモリ５０６を含む。メモリバス５０８は、プロセッサ５０４とシステムメモリ５０６の間で通信するために使用することができる。
【００４３】
望ましい構成に応じて、プロセッサ５０４は、これだけに限らないが、マイクロプロセッサ（μＰ）、マイクロコントローラ（μＣ）、デジタルシグナルプロセッサ（ＤＳＰ）、またはそれらの任意の組合せを含む任意のタイプとすることができる。プロセッサ５０４は、レベル１キャッシュ５１０およびレベル２キャッシュ５１２など、１つまたは複数レベルのキャッシング、プロセッサコア５１４、およびレジスタ５１６を含むことができる。例示的なプロセッサコア５１４は、論理演算装置（ＡＬＵ）、浮動少数点演算ユニット（ＦＰＵ）、デジタルシグナル処理コア（ＤＳＰコア）、またはそれらの任意の組合せを含むことができる。例示的なメモリコントローラ５１８はまた、プロセッサ５０４と共に使用することができるが、あるいはいくつかの実装形態では、メモリコントローラ５１８は、プロセッサ５０４の内側部分とすることができる。
【００４４】
望ましい構成に応じて、システムメモリ５０６は、これだけに限らないが、揮発性メモリ（ＲＡＭなど）、不揮発性メモリ（ＲＯＭ、フラッシュメモリなど）、またはそれらの任意の組合せを含む任意のタイプとすることができる。システムメモリ５０６は、オペレーティングシステム５２０、１つまたは複数のアプリケーション５２２、およびプログラムデータ５２４を含むことができる。アプリケーション５２２は、図２で示した負荷分散システム２００のアーキテクチャに関して述べたアクションを含む、または図３で示したフローチャートに関して述べたアクションを含む、本明細書で述べられた機能を実施するように構成できる命令５２６を含むことができる。いくつかの例では、アプリケーション５２２は、本明細書で述べた負荷分散システムに対する命令を実施するなど、プログラムデータ５２４を用いてオペレーティングシステム５２０上で動作するように構成することができる。
【００４５】
コンピューティングデバイス５００は、基本構成５０２と任意の必要なデバイスおよびインターフェースとの間の通信を容易にするためのさらなる特徴または機能、およびさらなるインターフェースを有することができる。例えば、バス／インターフェースコントローラ５３０は、ストレージインターフェースバス５３４を介して、基本構成５０２と、１つまたは複数のデータ記憶装置５３２との間の通信を容易にするために使用することができる。データ記憶装置５３２は、取外し式ストレージ５３６、非取外し式ストレージ５３８、またはそれらの組合せとすることができる。取外し式ストレージ５３６および非取外し式ストレージ５３８の例は、そのいくつかを挙げると、フレキシブルなディスクドライブおよびハードディスクドライブ（ＨＤＤ）などの磁気ディスク装置、コンパクトディスク（ＣＤ）ドライブまたはデジタル多用途ディスク（ＤＶＤ）ドライブなどの光ディスクドライブ、半導体ドライブ（ＳＳＤ）、およびテープドライブを含む。例示的なコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなど、情報を記憶するための任意の方法または技術で実装される揮発性および不揮発性、取外し式および非取外し式媒体を含むことができる。
【００４６】
システムメモリ５０６、取外し式ストレージ５３６、および非取外し式ストレージ５３８は、コンピュータ記憶媒体の例である。コンピュータ記憶媒体は、これだけに限らないが、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、または他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）、または他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、または他の磁気記憶装置、あるいは所望の情報を記憶するために使用でき、かつコンピューティングデバイス５００がアクセスできる任意の他の媒体を含む。このようなコンピュータ記憶媒体はいずれも、コンピューティングデバイス５００の一部とすることができる。
【００４７】
コンピューティングデバイス５００はまた、バス／インターフェースコントローラ５３０を介して、様々なインターフェースデバイス５４０（例えば、出力インターフェース５４２、周辺インターフェース５４４、および通信装置５４６）から、基本構成５０２への通信を容易にするためのインターフェースバス５４０を含むことができる。例示的な出力インターフェース５４２は、グラフィック処理ユニット５４８およびオーディオ処理ユニット５５０を含み、それは、１つまたは複数のＡ／Ｖポート５５２を介してディスプレイまたはスピーカなどの様々な外部装置に伝達するように構成することができる。例示的な周辺インターフェース５４４は、シリアルインターフェースコントローラ５５４またはパラレルインターフェースコントローラ５５６を含み、それは、１つまたは複数のＩ／Ｏポート５５８を介して、入力装置（例えば、キーボード、マウス、ペン、音声入力装置、タッチ入力装置など）または他の周辺装置（例えば、プリンタ、スキャナなど）などの外部装置と通信するように構成することができる。例示的な通信装置５４６は、ネットワークコントローラ５６０を含み、それは、１つまたは複数の通信ポート５６４を経由し、ネットワーク通信リンク介して、１つまたは複数の他のコンピューティングデバイス５６２との通信を容易にするように構成することができる。
【００４８】
ネットワーク通信リンクは、通信媒体の一例とすることができる。通信媒体は、通常、コンピュータ可読命令、データ構造、プログラムモジュール、または搬送波もしくは他のトランスポート機構などの変調されたデータ信号における他のデータにより実施することができ、また任意の情報送達媒体を含むことができる。「変調されたデータ信号」とは、情報を信号中で符号化するような方法で、その特性の１つまたは複数のものを設定もしくは変化させた信号とすることができる。例としてであって、限定するものではないが、通信媒体は、有線ネットワークもしくは直接の有線接続などの有線媒体、ならびに音響、高周波（ＲＦ）、マイクロ波、赤外線（ＩＲ）などの無線媒体、および他の無線媒体を含むことができる。本明細書で使用される場合、コンピュータ可読媒体という用語は、記憶媒体と通信媒体を共に含むことができる。
【００４９】
コンピューティングデバイス５００は、携帯電話、携帯情報端末（ＰＤＡ）、パーソナルメディアプレーヤ装置、無線ウェブ監視装置、パーソナルヘッドセット装置、特定用途向け装置、または上記の機能のいずれかを含むハイブリッド装置など、小型のフォームファクタを有する可搬型（またはモバイル）電子装置の一部として実装することができる。コンピューティングデバイス５００はまた、ラップトップコンピュータ構成と非ラップトップコンピュータ構成の両方を含むパーソナルコンピュータとして実施することもできる。
【００５０】
本開示は、様々な態様を例示するように意図された、本出願で述べられた特定の実施形態によって限定されない。当業者には明らかであろうが、本出願の趣旨および範囲から逸脱することなく、多くの変更および変形を行うことが可能である。本明細書で列挙されたものに加えて、本開示の範囲に含まれる機能的に均等な方法および装置は、前述の記述から当業者には明らかであろう。このような変更および変形は、添付の特許請求の範囲に含まれるように意図されている。本開示は、このような特許請求の範囲が権利を有する均等な形態の全範囲と併せて、添付の特許請求の範囲によってのみ限定されるべきである。本開示は、当然であるが変化しうる特定の方法、試薬、化合物、組成、または生体系に限定されないことを理解されたい。本明細書で使用される専門用語は、特定の実施形態だけを記述するためのものであり、限定することを意図していないこともまた理解されたい。
【００５１】
本明細書における実質的にすべての複数形および／または単数形の用語の使用に対して、当業者は、状況および／または用途に適切なように、複数形から単数形に、および／または単数形から複数形に変換することができる。様々な単数形／複数形の置き換えは、理解しやすいように、本明細書で明確に説明することができる。
【００５２】
通常、本明細書において、特に添付の特許請求の範囲（たとえば、添付の特許請求の範囲の本体部）において使用される用語は、全体を通じて「オープンな（ｏｐｅｎ）」用語として意図されていることが、当業者には理解されよう（例えば、用語「含む（ｉｎｃｌｕｄｉｎｇ）」は、「含むがそれに限定されない（ｉｎｃｌｕｄｉｎｇ  ｂｕｔ  ｎｏｔ  ｌｉｍｉｔｅｄ  ｔｏ）」と解釈されるべきであり、用語「有する（ｈａｖｉｎｇ）」は、「少なくとも有する（ｈａｖｉｎｇ  ａｔ  ｌｅａｓｔ）」と解釈されるべきであり、用語「含む（ｉｎｃｌｕｄｅｓ）」は、「含むがそれに限定されない（ｉｎｃｌｕｄｅｓ  ｂｕｔ  ｉｓ  ｎｏｔ  ｌｉｍｉｔｅｄ  ｔｏ）」と解釈されるべきである、など）。導入される請求項で具体的な数の記載が意図される場合、そのような意図は、当該請求項において明示的に記載されることになり、そのような記載がない場合、そのような意図は存在しないことが、当業者にはさらに理解されよう。例えば、理解の一助として、添付の特許請求の範囲は、導入句「少なくとも１つの（ａｔ  ｌｅａｓｔ  ｏｎｅ）」および「１つまたは複数の（ｏｎｅ  ｏｒ  ｍｏｒｅ）」を使用して請求項の記載を導くことを含む場合がある。しかし、そのような句の使用は、同一の請求項が、導入句「１つまたは複数の」または「少なくとも１つの」および「ａ」または「ａｎ」などの不定冠詞を含む場合であっても、不定冠詞「ａ」または「ａｎ」による請求項の記載の導入が、そのように導入される請求項の記載を含む任意の特定の請求項を、単に１つのそのような記載を含む実施形態に限定する、ということを示唆していると解釈されるべきではない（例えば、「ａ」および／または「ａｎ」は、「少なくとも１つの」または「１つまたは複数の」を意味すると解釈されるべきである）。同じことが、請求項の記載を導入するのに使用される定冠詞の使用にも当てはまる。また、導入される請求項の記載で具体的な数が明示的に記載されている場合でも、そのような記載は、少なくとも記載された数を意味すると解釈されるべきであることが、当業者には理解されよう（例えば、他の修飾語なしでの「２つの記載（ｔｗｏ  ｒｅｃｉｔａｔｉｏｎｓ）」の単なる記載は、少なくとも２つの記載、または２つ以上の記載を意味する）。さらに、「Ａ、ＢおよびＣ、などの少なくとも１つ」に類似の慣例表現が使用されている事例では、通常、そのような構文は、当業者がその慣例表現を理解するであろう意味で意図されている（例えば、「Ａ、Ｂ、およびＣの少なくとも１つを有するシステム」は、Ａのみ、Ｂのみ、Ｃのみ、ＡおよびＢを共に、ＡおよびＣを共に、ＢおよびＣを共に、ならびに／またはＡ、Ｂ、およびＣを共に、などを有するシステムを含むが、それに限定されない）。「Ａ、Ｂ、またはＣ、などの少なくとも１つ」に類似の慣例表現が使用されている事例では、通常、そのような構文は、当業者がその慣例表現を理解するであろう意味で意図されている（例えば、「Ａ、Ｂ、またはＣの少なくとも１つを有するシステム」は、Ａのみ、Ｂのみ、Ｃのみ、ＡおよびＢを共に、ＡおよびＣを共に、ＢおよびＣを共に、ならびに／またはＡ、Ｂ、およびＣを共に、などを有するシステムを含むが、���れに限定されない）。２つ以上の代替用語を提示する事実上いかなる離接する語および／または句も、明細書、特許請求の範囲、または図面のどこにあっても、当該用語の一方（ｏｎｅ  ｏｆ  ｔｈｅ  ｔｅｒｍｓ）、当該用語のいずれか（ｅｉｔｈｅｒ  ｏｆ  ｔｈｅ  ｔｅｒｍｓ）、または両方の用語（ｂｏｔｈ  ｔｅｒｍｓ）を含む可能性を企図すると理解されるべきであることが、当業者にはさらに理解されよう。例えば、句「ＡまたはＢ」は、「Ａ」または「Ｂ」あるいは「ＡおよびＢ」の可能性を含むことが理解されよう。
【００５３】
さらに、本開示の特徴または態様が、マーカッシュ群に関して記述される場合、当業者であれば、本開示はまた、それにより、マーカッシュ群の任意の個々の構成要素、または構成要素の下位の群により記述されることが理解されよう。
【００５４】
当業者であれば理解されるように、記述を提供することなど、任意のかつすべての目的に関して、本明細書で開示されるすべての範囲はまた、任意の、かつすべての可能な下位の範囲、およびその下位の範囲の組合せを包含する。いずれの列挙された範囲も、その範囲が十分に説明されており、かつ少なくとも等しい半分、３分の１、４分の１、５分の１、１０分の１などへと分解可能であることが容易に理解できるはずである。非限定的な例として、本明細書で論ずる各範囲は、下側３分の１、中央３分の１、および上側３分の１などへと容易に分解することができる。当業者であればまた理解されるように、「最高で〜まで」、「少なくとも」、および同様のものなどのすべての言語は、記載された数を含み、その後に続いて、上記で論じた下位の範囲へと分解できる範囲を指す。最後に、当業者であれば理解されるように、範囲は個々の構成要素を含む。したがって、例えば、１〜３個のセルを有する群は、１、２、または３個のセルを有する群を指す。同様に、１〜５個のセルを有する群は、１、２、３、４、または５個のセルを有する群を指し、以下同様である。
【００５５】
前述の内容から、本開示の様々な実施形態は、例示のために本明細書で述べられてきており、様々な変更を本開示の範囲および趣旨から逸脱することなく行うことが可能であることが理解されよう。したがって、本明細書で開示された様々な実施形態は、限定することを意図しておらず、その真の範囲および趣旨は、添付の特許請求の範囲によって示される。
【図１】
0005945010.tif 000002
【図２】
0005945010.tif 000003
【図３】
0005945010.tif 000004
【図４】
0005945010.tif 000005
【図５】
0005945010.tif 000006