(57)【要約】科学モデルを使用してグラフィカル仮想環境を作成することが記載されている。１つの実施形態においては、少なくとも２つの異なる科学モデルが使用される。シミュレーションデータを生成するために、実世界環境を表す入力データが気象モデル等の第１の科学モデルにより使用され、その第１の科学モデルにより出力されたデータがエコロジーモデル等の第２の異なる科学モデルに入力される。シミュレーションデータは例えば特定の植物の種（類）に関する必要な個体群密度並びにそれらのサイズ及び年齢の詳細情報を含んでおり、グラフィカルシミュレーションエンジンによって使用されて例えばフライトシミュレーションゲーム等のコンピュータゲームで利用されるグラフィカル仮想環境が作成される。
2012513650.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも一部は実際の物理的環境を表す入力データを受信するステップ（３０２）と、
少なくとも２つの異なる科学モデルの組み合わせを使用して、前記入力データを処理して、シミュレーションデータを生成するステップ（３０４−３１２）と、
グラフィカルシミュレーションエンジンを使用して、前記シミュレーションデータからグラフィカル仮想環境を生成するステップ（３１４）と
を備えたことを特徴とするグラフィカル仮想環境を生成する方法。
【請求項２】
コンピュータゲーム内の前記グラフィカル仮想環境を、前記コンピュータゲームのプレーヤに表示するステップ（３２０）をさらに備えたことを特徴とする請求項１記載の方法。
【請求項３】
前記少なくとも２つの異なる科学モデルの組み合わせを使用し、シミュレーションデータを生成して前記入力データを処理するステップは、
第１の科学モデルを使用して前記入力データを処理するステップ（３０４）と、
前記第１の科学モデルからのデータをデータ構造に出力するステップ（３０６）であって、前記データ構造は予め定義された順序の複数のデータ要素および当該複数のデータ要素の各々に関連したメタデータ含む、ステップと、
前記データ構造からの前記複数のデータ要素の少なくともサブセットを使用して、第２の科学モデルを実行するステップ（３０８−３１０）と、
前記第２の科学モデルから前記データ構造へデータを出力するステップ（３１１）と、
前記データ構造からデータを抽出してシミュレーションデータを生成するステップ（３１２）と
を含むことを特徴とする請求項１または２記載の方法。
【請求項４】
前記データ要素に関連したメタデータは、当該データ要素の値に関する起源・由来情報を含むことを特徴とする請求項３記載の方法。
【請求項５】
前記データ構造からの前記複数のデータ要素の少なくともサブセットを使用して、前記第１の科学モデル及び第３の科学モデルの１つを含むさらなる科学モデルを実行するステップことをさらに備えたこと特徴とする請求項３または４記載の方法。
【請求項６】
前記入力データの少なくとも一部は、シミュレーション特有データ及び実際の物理的環境を表すデータの少なくとも一つを含むことを特徴とする請求項１乃至５のいずれかに記載の方法。
【請求項７】
前記実行時において、少なくとも２つの異なる科学モデルの組み合わせを使用し、シミュレーションデータを生成して入力データを処理するステップは、
少なくとも２つの異なる科学モデルの組み合わせを使用し、シミュレーションデータを生成して前記入力データから時間に外挿を行うステップを含むことを特徴とする請求項１乃至６のいずれかに記載の方法。
【請求項８】
少なくとも２つの異なる科学モデルからなる異なる組み合わせを使用して、前記グラフィカル仮想環境の異なる領域のためのシミュレーションデータを生成するステップを更に備えたことを特徴とする請求項１乃至７のいずれかに記載の方法。
【請求項９】
複数の異なる科学モデル（１０２、１０４、７１０）と、
少なくとも１つの入力データソース（１１４、１１６、１１８、７１４、７１６、７１８）と、
少なくとも１つの入力データソースからデータをインポートするように、及び前記複数の異なる科学モデルの少なくとも２つを使用し前記データを処理してシミュレーションデータを生成するように構成されたシミュレーションエンジン（１０１、７０８）と、
前記シミュレーションデータからグラフィカル仮想環境を生成するように構成されたグラフィカルシミュレーションエンジン（１１０、７０６）と
を備えることを特徴とするグラフィカル仮想環境を生成するシステム。
【請求項１０】
予め定義された順序の複数のデータ要素と当該複数のデータ要素の各々に関連づけられたメタデータを含むメモリ（７１２）に記憶されデータ構造（２０６、７１４）をさらに備え、
前記シミュレーションエンジンは、
前記複数の異なる科学モデルの第１の科学モデルからの出力データを前記データ構造に書き込み（３０６）、
前記複数の異なる科学モデルの第２の科学モデルへの入力データとして、前記データ構造からデータを読み出す（３０８）
ようにさらに構成されたデータ構造をさらに備えるデータ構造であることを特徴とする請求項９記載のシステム。
【請求項１１】
前記少なくとも１つの入力データソースの１つは、オンラインサービス及びリモートデータストアの少なくとも一つからデータを引き出すように構成された通信インターフェース（７２４）を含むことを特徴とする請求項９または１０記載のシステム。
【請求項１２】
前記シミュレーションエンジンは、前記複数の異なる科学モデルの前記少なくとも２つを使用して前記データから時間に外挿を行い前記シミュレーションデータを生成するようにさらに構成されたことを特徴とする請求項９から１１のいずれかに記載のシステム。
【請求項１３】
プロセッサ（７０２）と、
メモリ（７１２）とをさらに備え、
前記シミュレーションエンジンは、実行されると、前記プロセッサにデータを少なくとも１つの入力データソースからインポートさせ、前記複数の異なる科学モデルの少なくとも２つを使用して前記データを処理し、シミュレーションデータを生成する、前記メモリに記憶された装置実行可能な命令を含み、
前記グラフィカルシミュレーションエンジンは、実行されると、前記プロセッサに前記シミュレーションデータから前記グラフィカル仮想環境を作成させる、前記メモリに記憶された装置実行可能な命令を含む
ことを特徴とする請求項９乃至１２のいずれかに記載のシステム。
【請求項１４】
ディスプレイ装置に前記グラフィカル仮想環境をレンダリングするよう構成されたディスプレイインターフェース（７２０）をさらに備えることを特徴とする請求項１３記載のシステム。
【請求項１５】
１又は複数の装置可読媒体に記憶されたコンピュータゲームであって、当該コンピュータゲームは、
実際の物理環境を表す入力データの少なくとも一部にアクセスするステップ（３０２）と、
少なくとも２つの異なる科学モデルを使用しシミュレーションデータを生成して、前記入力データを処理するステップ（３０４−３１２）と、
前記シミュレーションデータから３Ｄグラフィカル仮想環境を生成するステップ（３１４）と、
前記３Ｄグラフィカル仮想環境を表示するステップ（３２２）と
を含むステップを実施するために装置実行可能な命令を備えるコンピュータゲームであることを特徴とするコンピュータゲーム。
【発明の詳細な説明】
【背景技術】
【０００１】
多くのコンピュータゲームエンジンは、プレーヤがその３Ｄシミュレーショングラフィック中をナビゲートすることができる地球の３Ｄ（３次元）グラフィカルシミュレーション機能を有している。シミュレーション環境の作成は、例えば、山、湖及び森林等の地勢要素を手作業で配置する等多くの手作業（マニュアル作業）を要する。シミュレーション環境をかなり詳細な景観とするために、３Ｄオブジェクトを環境中に手作業で位置決めすることもある。このようなオブジェクトは、例えば個々の木々又は建物であり、あるいは所定の形状がその形状を配置すべき複数のオブジェクト（例えば、複数の木）のセットとともに定義され、シミュレーションエンジンは上記定義されたセットからオブジェクトと共にその形状を自動的に配置する。このプロセスは非常に複雑で長時間を要し、ゲーム／シミュレーションエンジンのバージョンが新しくなる度に繰り返されなければならない。
【０００２】
必要な手作業の量を低減するために、航空画像もしくは既存の３Ｄモデル（例えば、本件出願人の販売するバーチャルアース（商標））からデータを取得することもある。しかしシミュレーションエンジン内で使用する情報は、通常高度に最適化されたものであり（例えば、ポリゴン数が限定されていたり、テクスチャマッピングが最適化されている）、従って既存のデータは一般的には使用できない。また航空画像の場合には、いまだかなりの量の手作業編集が必要となり、自動処理することは不可能である。
【０００３】
以下に説明される実施形態は、生成されたシミュレーショングラフィカル環境の公知の作成方法の課題のいずれかもしくは全てを解決する実装に限定されない。
【発明の概要】
【０００４】
下記の記載は、明細書の読者に基本的な理解を提供するために開示内容の概略を表すものである。この「発明の概要」は開示内容の広範囲にわたる概要ではないし、本発明の重要な／不可欠な要素を特定するものでもないし、本発明の範囲の外延を決めるものでもない。その唯一の目的は、後述される発明のより詳細な説明（発明を実施するための形態）の序文として本明細書に開示されたいくつかの概念を簡単な形で提示することである。
【０００５】
科学モデルを使用してグラフィカル仮想環境を作ることが記載されている。１つの実施形態においては、少なくとも２つの異なる科学モデルが使用される。実世界環境を表す入力データが気象モデル等の第１の科学モデルによって使用され、その後その第１の科学モデルからの出力データが、シミュレーションデータを生成するために生態学モデル等の第２の異なる科学モデルに入力される。シミュレーションデータは、例えば特定の植物種の必要個体群密度並びにこれらのサイズ及び年齢を詳述するデータであり、例えばフライトシミュレーションゲーム等のコンピュータゲームにおいて使用されうるグラフィカルシミュレーションエンジンによって使用されて、グラフィカル仮想環境が作成される。
【０００６】
本発明の特徴の多くは添付図面を考慮して下記の詳細な説明（発明を実施するための形態）を参照することによってより良く理解されるので、付随する特徴の多くも同様に容易に理解されるであろう。
【図面の簡単な説明】
【０００７】
本明細書は下記の詳細な説明（発明を実施するための形態）を添付図面に照らして読むことによって、より良く理解されるであろう。
【図１】グラフィカル仮想環境を生成するシステムの概略図である。
【図２】グラフィカル仮想環境を生成するシステムの一部の概略図である。
【図３】グラフィカル仮想環境を生成するシステムの動作方法の一例のフロー図である。
【図４】４つの科学モデルからなるネットワークの概略図である。
【図５】仮想環境の異なる部分において重ねられた科学モデルを示す概略図である。
【図６】グラフィカル仮想環境を生成するシステムに時間の側面を組み込んだ場合のフロー図である。
【図７】本明細書に記載された方法の実施形態が実装される例示的なコンピューティングベースの装置を示している。
【０００８】
添付図面においては同様な部品を示すために同様な参照符号を使用している。
【発明を実施するための形態】
【０００９】
添付図面に関連して以下に提供された発明の詳細な説明（発明を実施するための形態）は、提示する例の詳細として意図され、提示された例が構成され、使用される形式のみを示すことを意図していない。下記の記載は、その例機能及びその例を構成し操作するステップの順序を説明している。しかし同様の又は均等の機能及び順序は異なる例によって達成することもできる。
【００１０】
図１は、例えばコンピュータゲームまたはトレーニング／教育ツール等で使用されるグラフィカルにシミュレートされた世界等のグラフィカル仮想環境を生成するためのシステム１００の概略図である。このシステム１００は、少なくとも２つの科学モデル１０２、１０４に基づくシミュレーションエンジン１０１を有する。科学モデル（科学モデル１０２、１０４等）は、通常物理系において生ずる機構もしくは力学を数学的に表したものを含み、物理系に関する予測をするため又は物理系の理解を高めるために使用される。上記科学モデルは、しばしば実際の系からのデータでパラメータ化され（これは、例えば、森の生長、気候風土、降雪等の実世界の事象をモデル化する実世界データを用いて作成されたアルゴリズム、又は規則セットを備える）、これらの予測はしばしば実際のデータセット（例えば、降雪等の気候関する公知の値）と比較テストされる。科学モデルの例は、「Predictive Models of Forest Dynamics」（著者：Purves及びPacala、サイエンス誌Vol.３２０掲載）に掲載された森林モデル、動物集団（個体群）モデルであって「On the Regulation of Populations of Mannals,Birds,Fish and Insects」（著者：Siblyその他、サイエンス誌Vol.３０９）に掲載された理論方程式、RosenzweigとMacArthurの被食者個体群の相互作用に関するモデル（例えば、「Periodic Travelling Waves in Cyclic Populations：field studies and reaction-diffusion model」（著者：Sherratt及びSmith、Royal Society Interfaceジャーナル（２００８）５、４８３−５０５）に掲載されたもの）、ＳＩＲ病理モデル（例えば、http://en.wikipedia.org/wiki/Compartmental_models_in_epidemiology#The_SIR_modelに掲載されているもの）、及びＭＭ５コミュニティモデル（これは大気変化を予測計算するのに使用することがある）などである。１つの例では、草木に関する情報を提供する生態学モデルは気候（気象）モデルに組み合わされる。複数年の気候（気象）データに基づいて、草木の外観が生態学モデルによって計算される。
【００１１】
科学モデル同士は、データを共有することによって相互に作用し（矢印１０６、１０８で示すように）、１つの科学モデルから出力されたデータが他の科学モデルへの入力データとして使用される。１つの例では、第１のモデルが植物モデルであり、第２のモデルが動物モデルである。例えば植物モデルは特定のエリアにおける植物を決める（例えば、海岸レベルでは椰子の木を選び、山側には針葉樹を選ぶ）。この植物情報に基づいて、動物モデルは特定のエリアに住まわせる動物の種を決める。これらモデルは連結され、例えばモデルＡからのデータはモデルＢに入力されるようにし（矢印１０６）、さらにフィードバックも行う（例えばモデルＢからのデータはモデルＡのさらなる反復入力としてフィードバック入力される（矢印１０８））。上記した簡単な例を用いると、このフィードバックによって、特定のエリアに育つ植物に影響を与える動物が存在するようになる。科学モデル同士の間でデータを共有できるようにするために、本明細書においてＳＤＳ（scientific data set）と称するデータ構造を使用する。この科学データセットは、異なる科学モデルにより生成された異種のデータに対する一定のインターフェースを備える共通データモデルを提供する。科学データセット内の各データ要素は、これに付随するメタデータを有することもある。このメタデータは科学モデルによって使用された実際のデータを記述し、異なるモデルが必要とするデータを見つけることができるようにしている。メタデータは、上記内容に加えまたはその代わりに、例えばどのように値が変化してきたか、どの科学モデルが変化をもたらしたか等の異なるデータ要素の値の起源の詳細を提供してもよく、そうすることにより、（科学データセットの前のバージョンを再構築することが可能であるため）シナリオを再度実行することができる。
【００１２】
科学データセットに記憶できるデータの例には、空気温度値の３次元配列が含まれている。このような配列のメタデータは、第１次元が異なる緯度を示し、第２次元が経度を示し、第３次元が時間の瞬間を示すことを明記する。加えてメタデータは、データが摂氏（℃）単位で表示されていること及びそれがＭＭ５メソスケール気象モデルによって計算されることを規定する。さらに３つの追加のデータ配列は、温度配列の個々の層、行及び列に対応する実際の緯度、経度及び時間の値を提示してもよい。この同じデータセットは、特定の年の特定の森林プロットにおける木々の群の直径、高さ及び密度を示す３つの配列を有する。
【００１３】
科学データセットが複数の科学モデルのためのデータ要素を含んでいるので、任意の特定の科学モデルは、データ要素のサブセットについて値を読み書きするだけでよい。通常、科学モデルは５つもしくは６つの入力パラメータを有するアルゴリズムを含む。説明を簡単にするために、図２に示すように入力及び／または出力フィルタ２０２、２０４を使用する。入力フィルタ２０２は（例えば、特定の配列から特定のサブセットを選択することによって）科学データセット２０６から特定の科学モデルに必要な入力データ要素を抽出し、科学モデルによって必要とされているフォーマット化を全て行う。出力フィルタ２０４は、科学モデルから出力データを取り出してそのデータをフォーマット化して科学データセット２０６に書き込めるようにする。出力フィルタ２０４はまた、修正されたデータ要素に付随するメタデータを生成し、このメタデータが科学データセット内の既存のメタデータに置き換えられるか又は付け加えられる。より高度なフィルタであれば（入力フィルタであろうと出力フィルタであろうと）、例えば、集合化及び／または書き入れ等のデータ変換を行うこともできるであろう。いくつかの例では、入力及び／または出力フィルタは必要とされない。
【００１４】
またシステム１００は、グラフィカルシミュレーションエンジン１１０（例えば、３ＤシミュレーションエンジンベースのDirect Ｘ）を含んでおり、このシミュレーションエンジン１１０がシミュレーションエンジン１０１から（すなわち、矢印１１２により示されているように科学モデル同士の組み合わせから）シミュレーションデータを受信し、グラフィカル仮想環境を作成する。シミュレーションデータは仮想環境の特定のエリアに配置されるべきオブジェクト（物体）を定義し、個体数、分散度・分布、外観、サイズ及び年齢等のそのオブジェクトの属性も定義する。例えば、森林領域については、上記シミュレーションデータは木の種類、樹齢／サイズ及び個々の種類／年齢／サイズの数を定義する。シミュレーションデータの内容は使用される科学モデル（例えば、動物群モデルが使用される場合、科学モデルが動物を規定する）及び入力データによって決まる。シミュレーションデータ２０８は（図２に示されるように）科学データセットの中のデータをフィルタ２１０を用いて変換することによって生成される。このフィルタ２１０は科学データセット内のデータをグラフィカルシミュレーションエンジン１１０により要求されるフォーマットに変換し（または抽出し）、このフィルタ２１０は（入力フィルタ２０２と同じような機能で）グラフィカルシミュレーションエンジンの入力フィルタとして動作することもある。フィルタ２１０の詳細な動作はグラフィカルシミュレーションエンジンのＡＰＩによって決まる。
【００１５】
グラフィカルシミュレーションエンジン１１０はシミュレーションデータをグラフィカル仮想環境に変換する。この変換は、例えば色々な種、色々な樹齢及び異なる季節に見られる木等の対象物（物体）のグラフィック表示ライブラリを使用して行われる。このようなオブジェクトのグラフィック表示は、シミュレーションデータ内で規定された属性に従って環境の中に配置される。システムは、例えばコンピュータゲームで使用するように作られているか、コンピュータゲーム（例えば本件出願人の販売するFlight Simulatorによって用いられるグラフィカルシミュレーションエンジン）の開発に用いられる既存のグラフィカルシミュレーションエンジンを使用する。
【００１６】
図１ではデータの流れを表している多くの矢印が示されている（例えば、矢印１０６、１０８）。一方向矢印のみが例として使用されているが、図示された任意の要素間の通信は一方向でも（どちらに向かうものでも）双方向でもよく、データは図１に示されたデータの流れに加えて（あるいはそれに代えて）種々の方向に及び種々の要素間で流れ得ることが理解できる。
【００１７】
このシステム１００の動作は、図３に示されたフロー図を参照して説明することができる。入力データ１１４は実世界データとなりうるものであり、第１の科学モデル１０２にインポートされ（ブロック３０２）、科学モデルがこの入力データ１１４及びシミュレーション特有のデータ及び／またはユーザ定義のパラメータ１１６等その他の必要な入力データを使用して実行される（ブロック３０４）。科学モデルを実行による結果は、後に第２科学モデルの入力データとして用いられる科学データセットに出力される（ブロック３０６）。第２科学モデル１０４は科学データセットからデータをインポートし（ブロック３０８）、また当初の入力データ１１４及び／又は必要なシミュレーション特有のデータ及びユーザ定義のパラメータ１１８等のその他の入力データをインポートすることもある。インポートされたデータは第２科学モデルを実行するために使用され（ブロック３１０）、その結果が科学データセットに出力される（ブロック３１１）。上記２つの科学モデル１０２、１０４の組み合わせを実行すると、シミュレーションデータが生成され（ブロック３１２）、このシミュレーションデータがグラフィカルシミュレーションエンジン１１０によって使用されてグラフィカル仮想環境を生成する（ブロック３１４）。上述したようにシミュレーションデータの生成（ブロック３１２）はデータ変換もしくはデータ抽出処理であり、グラフィカルシミュレーションエンジン１１０による科学データセットからの読み取り動作の一部であると考えることもできる。多くの例において、このグラフィカル仮想環境は３Ｄグラフィカル環境である。しかし上記のシステム１００及び方法は、その環境のその他のグラフィック表示を生成するためにも使用されうる。
【００１８】
上記したシステム及び方法を使用すれば、種々のパラメータに基づいて生態系や生物群系を変える科学モデルを使用してグラフィカル仮想環境を作成することができる。グラフィカル仮想環境は自動的に作成されてもよいし、多少の手作業を加えて作成されてもよい。ある季節に適した定義済みの植物セットから選ぶ代わりに（その植物セットが手作業で定義されなければならない場合であって、その作業が多くの労力を要し、かつエラー発生の機会を提供する場合）、世界のある特定の部分については、科学モデルを使用して入力パラメータ（季節、気象データ等）に基づいて適切な草木を提供するのに使用されてもよい。さらに、後述するように、例えば、ゲーム中にあるエリアが今後５０年間または過去１００年間にどのような様子になるか示す方法及び／またはゲームプレイ中に環境を動的に調整させる方法（例えばユーザがゲーム内の環境と相互作用した結果、もしくは例えば任意のエリアにおける森林伐採等人間の行為の影響の結果として調整する方法。ここでこのデータは外部データセットとして使用可能である）等の動的な方法により、科学モデルを使用して環境を変えてもよい。
【００１９】
幾つかの例においては、図３に示されるように第２の科学モデルから第１の科学モデルへフィードバックが行われる。この例では第２の科学モデル１０４がデータを科学データセットに出力し（ブロック３１１）、この更新された科学データセットからのデータが第１の科学モデルが再実行される前に（ブロック３０４）第１の科学モデル１０２にインポートされる（ブロック３１８）。第１の科学モデルの２回目の繰り返し（ブロック３０４）に続いて、その結果が科学データセットに出力される（ブロック３０６）。この方法の他の特徴は繰り返されてもよい（例えば、第２の科学モデルの２回目の実行：ブロック３０８−３１１）し、あるいは（ブロック３０６からの）第１の科学モデルの出力、つまり更新された科学データセットを使用してシミュレーションデータを作成してもよい（ブロック３１２：破線矢印３２０で示す）。
【００２０】
上記した方法（例えば方法ブロック３０２−３１４または方法ブロック３０２−３１８）を用いて作成することができるグラフィカル仮想環境について多くの異なるアプリケーションが存在し、アプリケーションの１例はフライト、電車、車の運転その他のシミュレーションゲーム等のコンピュータゲームで使用される３Ｄグラフィカル環境を生成するためのものである。あるいはグラフィカル仮想環境は教育またはトレーニングツール（例えば本件出願人のＥＳＰ（商標）で使われる）で使用されることもある。このようなツールは多くの異なる方法・態様で使用され得る。例えばデータを回すことができる等、また別の例では、このようなツールを推論／予測の方法に使って、モデルを追加／変更する場合の効果を確かめることもできる等、複数の科学モデルを組み合わせた結果を観察できる。いくつかの例において、本システムは複数のシミュレーション結果の比較を可能にし（複数のシミュレーションが連続的又は並列的に実行される場合）、ユーザはレンダリングされるグラフィカル仮想環境の相違点を観察することができる。このようなアプリケーションにおいて、この方法はさらに特定のコンピュータゲームのプレーヤにグラフィカル仮想環境を表示するステップ（ブロック３２２）を含むか、教育もしくはトレーニングツールの使用者にグラフィカル仮想環境を表示するステップを含む。
【００２１】
図３は、２つの科学モデルの組み合わせを使用してシミュレーションデータを作成する場合を示しているが、これは単なる例であり、２より多くの科学モデルを代わりに使用してもよいことが理解できる。２より多くのの科学モデルを使用する場合、モデル間において任意の手法でフィードバックを行ってもよい。図４は４つのモデルのネットワークの例を示している。その１つは森（林）モデル４０２（例えば、Purves及びPacalaの「Predictive Models of Forest Dynamics」に説明されているか、又は上記したもの）であり、１つは気象モデル４０４（例えば、ＭＭ５コミュニティモデル）であり、１つは降雪（またはその他の気象／天候）モデル４０６（例えば、http://www.emc.ncep.noaa.gov/modelinfo/で見つけることができるＧＦＳ（Global Forecast System））であり、１つのモデルは二酸化炭素モデル４０８（例えば、Bolinその他の「The Global Biogeochemical Carbon Cycle」に記載されているようなもので、http://www.icsu-scope.org/downloadpubs/scope13/chapter01.htmlで見つけることができる）である。図示された例においては、気象モデル４０４が降雪モデル４０６と直接相互に影響する。なぜなら、例えば、気象が降雪を決める１つのファクタであり（例えば、標高情報に加えられるファクタであり、入力データの一部として、標高情報も降雪モデルにインポートされる）、降雪量が同様に温度に影響を与える太陽光反射に影響を及ぼす（温度は気象モデルの一部）。気象モデル４０４はまた、二酸化炭素モデル４０８への入力として使用されるデータを、同様に提供する森林モデル４０２への入力として使用されるデータも提供する。二酸化炭素モデルからの出力は気象モデル４０４へフィードバックされる。全ての場合において、ネットワーク内の科学モデル同士の間の相互作用は科学データセットを介して行われ、第１のモデルは科学データセットへ書き込みを行い、別のモデルはデータの一部もしくは全部をその科学データセットから読み出す。２つのモデルが独立して動作できる場合（例えば、これらモデルが科学データセット内の同じデータエレメントに書き込みを行わない場合）、（図３に示すように）科学モデルをシリアルに動作するよりもむしろパラレルに動作することができる。
【００２２】
あるシステムにおいて、安定的なポジションに到達するために多くの繰り返し作業を最初に行う必要があることもある（例えば図４の例で示されているように、科学モデル同士の間の複雑な相互作用のために）。一旦必要な科学モデルが実行されると、科学モデルの組み合わせ（またはネットワーク）からの出力の結果を使用してシミュレーションデータ４１０を生成する。グラフィカル仮想環境を作るためにグラフィカルシミュレーションエンジン（例えば、図１のグラフィカルシミュレーションエンジン１１０）により使用されるのは、このシミュレーションデータ４１０である。いくつかの実施例において、科学モデルは（例えば、コンピュータゲーム等の）実行時において仮想環境を生成及び／または修正するために使用される。安定なポジションに到達する（例えば、科学データセットの安定な値に到達するか、もしくは、安定なシミュレーションデータに到達する）ために多くの繰り返し作業が当初必要な場合、その当初の繰り返し作業は設計時間に行われ、この当初の繰り返し作業の結果（例えば科学データセットの結果及びその他のシミュレーション特有データの結果）が、実行時においてシステムへの入力データ１１４として使用される。
【００２３】
異なる科学モデルは、それらが実行可能とされるためには、異なる入力データが必要となることが理解できる。この入力データは、科学データセットからインポートされたデータを含むこともあるし（例えば、ブロック３０８及び３１８におけるように）、その他のソースからインポートされたデータであることもある。またこのシステム内で使用される科学モデルのいずれかまたは全てが、種々のソースから入力データをインポートすることもある。このようなデータソースはシステムの外部にあることもある（例えば、図１の入力データ１１４及びデータソース１１６、１１８）。外部データソース１１６、１１８はローカルに記憶されていてもよいし（例えば、コンピュータゲーム内に提供されてもよい）、オンラインサービスによって提供されるものであって、（インターフェース等の）ネットワークを介してアクセスできる等のリモートデータベースであってもよい。リモートデータベースの１つの例は、過去約５０年にわたる気象データ（例えば、ＭＭ５コミュニティモデルにより使用するＭＭ５フォーマットの気象データ）を提供する気象データベースである。オンラインサービスが利用される場合、このサービスはデータをオンデマンドで提供し、システム１００はこのサービスから選択したデータ（例えば、特定の日のデータ）をダウンロードし、このダウンロードしたデータを使用して新しい環境情報をローカルシステム上に生成する。オンラインサービスは無料で提供されることがあり、またユーザがダウンロードデータについては料金を支払う必要がある場合もある。
【００２４】
幾つかの例では、入力データ（またはそのサブセット）が実世界を反映している。例えば入力データは高度、特定の領域に関する土地等級、過去の気象データ等の実際の地理的情報を反映している。または入力データは（例えば空想世界でプレーするコンピュータゲームのための）想像世界を記述している。１つの例では、入力データはあるエリアの通常の草木及び世界の生態系を記述している。実世界データセットさらなる例は、世界測地システム（World Geodetic System）ＷＧＳ８４及びＵＳＧＳのＬＩＤＡＲ（Light Detection and Ranging）システムを含む。また気象データ、気象「再分析」結果物（例えば、国際衛星陸地表面気象計画（The International Satellite Land-Surface Climatology Project：ＩＳＬＳＣＰ））、気象学（例えば、気象研究ユニット（Climatic Research Unit）から得られるもの）アースシステムモデル（Earth System Model）（例えばＩＭＯＧＥＮ）の結果を提供する大きなデータベースもある。種のデータベースとしては、ナショナルフォレストインベントリ（national forest inventories）（例えば米国農務省営林署（ＵＳＤＡ）のフォレストインベントリアンドアナリシス（Forest Inventory and Analysis（ＦＩＡ））及び見本データベース（例えば地球規模生物多様性情報機構やイギリスの自然史博物館及びキューガーデン（Kew Gardens））を含む。保護エリア及び国立公園（例えば国連環境計画提供のWater Program for Africa and Arid and Water scarce Zones：世界自然保護モニタリングセンタ）のデータベースやグローバルランドユース（global land-use）（例えばＨＹＤＥ及び関連情報）のデータベースもある。サイズの点から言えばこれらの各々は、例えば地球上の１ｋｍｘ１ｋｍの区画について８日間毎のデータを含んで、トータルで８年分のデータを含んでいるＭＯＤＩＳの成果物等の衛星データと比べると、小さく見える（衛星データに関する更なる情報についてはhttp://www.geos.ed.ac.uk/research/eochem/sat.htmlで見つけることができる）。
【００２５】
データソース１１６、１１８は、シミュレーション内の３Ｄオブジェクトの詳細等のシミュレーション特有データ及び各オブジェクトに割り当てられた実世界属性（例えば、普及している特別な生態学共同体、生長速度、土壌に含まれる好適水分量、群生傾向、好適標高（標高に関する志向））若しくはユーザ定義のパラメータ（例えば、森林火災、森林伐採等の人間と環境の相互作用の詳細）などを含む。１つの例では、シミュレーション特有データはインポートされた任意の実世界データへの修正の詳細を示す上書き（例えば、全ての温度データを２℃だけ人為的に増加させていること、特定の種を削除していること、工業的な影響若しくは都市の影響等）を含んでもよい。
【００２６】
入力データ及び入力パラメータは、モデルの出力を変えるために変えられることもある。ユーザ定義のパラメータの値は、科学モデルによってインポートされる入力データに影響を与えることがある。例えばユーザが仮想環境に関する時間、例えば年を定義する場合、科学モデルが選択された年（またはその年の前の期間）について気象データをインポートすることがある。上述したように、科学モデルは、１日または１年等のユーザ入力パラメータを含む入力データに基づいて、ランタイムにおける仮想環境を修正及び／または生成するために使用されることもある。その結果、仮想環境はユーザによって選択された特定の日または年の入力データに対応するように構成される。グラフィカル仮想環境は、本明細書に記載された方法を用いて、ゲームをプレーしている間ユーザがゲームまたは環境と相互作用することにより、修正されることもある。このような修正は、シミュレーションデータを生成するために使用される科学モデルのネットワークへの入力となるユーザ定義のパラメータを変えてしまうこともある。
【００２７】
仮想環境を生成する際、上記したように、異なる科学モデル及び複数の科学モデルの異なる組み合わせが環境の異なる領域に使用されることがある。例えば森林モデル４０２は森林領域にのみ使用され、河川モデル（図４には示されていない）は川が存在する所（実世界データまたはシミュレーション特有データにより定義される）の水の流れ（例えば、水位、侵食等）をモデル化するために使用される。図５は科学モデルを生成する際に使用される、オーバーラップする科学モデルを含む仮想環境の設計図を示している。通常、シミュレーション環境における世界は、大きなタイル５０１等のほぼ同じサイズの複数のタイルに区分けされる。この基本的なシミュレーション情報は、例えば「Global Terrain Technology for Flight Simulation」著者A.Szofran、（詳細はhttp://www.fsinsider.com/developers/Pages/GlobalTerrain.aspxを参照）に説明されているように生成されており、地形、土地等級、表面の種類に関する情報などのデータを提供する。しかしながら本明細書に記載されたシステムに含まれる科学モデルは、利用可能な実世界データ（またはそれ以外の入力データ）に応じて、種々の異なるスケールを提供することができる（その結果、種々の異なるタイルサイズができる）。例えばそのスケールは２０ｍｘ２０ｍから７００ｍｘ７００ｍまでの範囲を取ることができ、他のデータは１０ｋｍｘ１０ｋｍから２００ｋｍｘ２００ｋｍの正方形とすることができる。異なる科学モデルからのデータは重ねられて、異なる複数の層が組み合わされ（上述したようなモデル間の相互作用を通して）、得られるグラフィカル仮想環境の範囲と質を向上する。
【００２８】
図５の例では、基本的シミュレーション情報（タイル５０１内にある）がタイル５０２、５０４、５０６内にある３つの科学モデルからの情報に組み合わされる。いくつかの領域においては１つの科学モデルが基本シミュレーション情報に加えて使用されるが、他のエリアにおいてはオーバーラップが生じて（例えばエリア５０８、５１０）、ここでは特定の領域についての仮想環境を生成するための１より多い科学モデルが相互作用する（上述したように）ことがわかる。１つの具体的な例として図５は３つのモデルを示しており、例えば第１のモデル（タイル５０２）は森林生長に関する情報を提供するモデルであり、第２のモデル（タイル５０４）はどのブッシュ及び低木がその領域に典型的なものであるかに関する情報を提供するモデルであり、第３のモデル（タイル５０６）は河川モデルである。どのモデルをどの領域に適用するかについての詳細（例えば図５に図式的に示された情報を表すデータ）は、例えばシミュレーション特有データの一部としてシミュレーションエンジン（例えばシミュレーションエンジン１０１）に提供される。このデータはシミュレーション用の座標セットを使用して提供される。
【００２９】
仮想環境の異なる領域に異なる科学モデルを使用することに加え、または、その代わりに、異なる入力データを異なる領域に使用してもよいことが理解される。
【００３０】
上記した方法を使用してグラフィカル仮想環境が生成される間のランタイムにおける待ち時間を短くするために、１又は複数のモデル若しくはパラメータを使用して計算されるデータのいくつか又は全てを、予め計算しておくこともできる。予め計算されたデータは、実行時において、その後、上記したように２つ又はそれより多くの科学モデルの組み合わせを用いて修正されることもある（例えば、コンピュータプログラムが実行されている間の実行時において）仮想環境を最初に生成するために用いられる。予め計算されたデータを使用すると、実行時において仮想環境のロードを速くすることができ、遅延を無くしもしくは短縮できるが、そうするためにはより多くのデータストレージが必要となり、従って、メモリに制限のあるアプリケーションには不向きである。しかしながら、予め計算をすることなしに本明細書で説明した技術を使用すると（「予め計算をする」という表現は、実行時で使用される当初の入力データを生成するために設計時に繰り返し使用することを含まない）、データストレージは小さくなる。なぜなら、複数の科学モデルの組み合わせを用いて実行時においてグラフィカル仮想環境を生成するのに必要な入力データセットはあまり大きくないからである。
【００３１】
当初のシステムは上記したように仮想環境を生成する際に使用される科学モデルの１セットを備えることができる。上述したように、２又はそれより多い科学モデルの組み合わせが環境の特定領域のために使用され、１つのモデルしか使用しない領域もいくつか存在することもある（例えば図５に示された例）。新しいモデルがその後システムに追加されて、例えば、（正確性、詳細度その他の観点から）発展した仮想環境を提供するために既存の科学モデルに代わるかシステムに既に存在する科学モデルに加えられることもある。これにより、システムをアップグレードする能力が付与され、その結果、環境全体を手作業で再生成する必要なく、出来上がるグラフィカル仮想環境をアップグレードすることができる。全ての科学モデルが科学データセットに読み書きすることができる場合、入力／出力フィルタを用いて又は用いずに、科学モデル同士は上記した態様で相互作用することができる。
【００３２】
（上記のように）実行時において科学モデルを使用してグラフィカル仮想環境を生成することにより、システムはその時に（前でも後でもよい）利用可能なデータから外挿を行うように構成することもできる。このようなシナリオにおいて、科学モデル（例えば前出の森林モデル）を実行し、時間ｔにおいて利用可能なデータに基づいて、時間ｔ＋ｘまたは時間ｔ−ｘにおける仮想環境に関連したパラメータを予測することができる（ここでｘは任意の値であり、例えばユーザにより定義される）。いくつかの例では、ユーザインターフェースがユーザにスライダを提供し、ユーザは生成された仮想環境を実行時において動的に修正することができる。例えばスライダの位置を変えると、ｘの値が変化することになる。いくつかの例では、異なる地理的領域に異なる科学モデルを使用するときと同様の方法で異なる科学モデルが異なる期間に使用される。
【００３３】
このような時間の側面をグラフィカル仮想環境の生成に組み込むことができるように構成されたシステムのための多くのアプリケーション例が存在する。その例は、年間の降雨データ／湿気データを利用して、現在の状況（例えば特定の領域における干ばつまたはある種類の草木の季節的な枯死）に基づいて任意のエリアの草木の分布に影響を与えることや、湿気データ及び風／気象データを利用して例えば森林火災シミュレーション等仮想世界内で行われているシミュレーションに影響を与えることである。このデータは例えば火災が次の２４時間−４８時間にどのようになるのか等のシナリオを予想するのに利用することができるし、公知のデータセットに基づいて過去の出来事の分析のために利用することもできる。
【００３４】
以下の記載はモデルチェイニング（モデルを繋げていくこと）の実装の簡単な例を提供するものである。この例では、各科学モデルは数学的関数を備え、１つもしくは複数のパラメータを計算する。  
Ｍ１（ａ，ｂ，ｃ，ｔ）
Ｍ２（ｉ，ｊ）
Ｍ３（ｘ，ｙ）
各関数の入力及び出力は１つの値、ベクトルまたはマトリックスである。この例ではモデルＭ１（変数ｔ）で時間を使用する。モデルＭ２はいくつかの観測されたデータ（変数ｉ）とモデルＭ１の出力（変数ｊ）に基づいて計算される。モデルＭ３はモデルＭ１及びＭ２の出力を入力ｘ及びｙとして使用する。いずれのモデルの形も実装に影響を与えるものではなく、これらは再使用できるコンポーネントであり、ある種の「ブラックボックス」機能を提供するものである。フィルタを使って、データがＳＤＳ（scientific data set：科学データセット）からあるいはＳＤＳへ確実に変換されるようにしてもよい。この変換はそれらを所定のフォーマットにし必要なメタデータを追加するのと同様に、値を統一化しうるアルゴリズムを指定することにより、そのフィルタを実装するときに手作業で行われてもよい。このアルゴリズムの開発は各モデル毎に手作業で行われてもよく、それが行われると科学データセットを使用してモデルをともにリンクすることができる。
【００３５】
図６は、どのように時間が上記した方法及びシステムに組み込まれるかを示すフロー図である。入力データ６０１は、例えば実世界の観察に基づいて収集されたデータであり、これが（上述のｆ１のように）時間を１つのパラメータとして取り入れるモデルＡ６０２に入力される。最初にモデルは時間ｔで実行されるが、モデルへの時間６０３の取り入れを通して、これが時間ｔ＋ｎにおいて実行されるようにシフトされ、その結果（時間ｔで使用されるデータセットと比較して）、完全に異なるデータセットが使用されることになる。第２の科学モデルであるモデルＢ６０４は入力としてモデルＡの出力を使用する。このモデルへの入力は時間ｔ＋ｎにおけるモデルＡからの計算である。この例ではこのモデルは前のモデル（単数または複数）からの入力のみに基づいているから、このモデル６０４は入力としていかなる時間も必要としない。モデルＡが新しいデータで再実行された場合（矢印６０５で示す）、さらなる時間増が加えられ、従って新たに計算された時間はｔ＋ｎ＋ｍとなり、再び新しいデータセットが使用される。このプロセスが所望時間（例えばｔ＋ｎ＋ｍ＋ｘ）に達するまで繰り返される。
【００３６】
上記した方法は、生成された仮想環境をテスト及び／または認証する場合にさらに使用されてもよい。こうすることにより、必要とされる（例えば手作業によるチェック等の）手作業の量がさらに少なくなる。この科学モデルがその植物を消滅させるため、例えば科学モデルを時間的に前で実行できるようにすることにより、特定の植物・プラントの設置におけるエラーを自動的に排除することができる。ある特定の例では、元の入力データにおいて、誤って椰子の木が北極領域に含まれていた場合、北極領域における植物生長の科学モデルが時間を前にして（前送りで）実行されると、その属性がこの領域の気候に合わないのでこの科学モデルから椰子の木が消滅する（例えば枯死して無くなる）。別の例では、システムの出力を取り出しそれを入力データとしてシステムにフィードバックすることにより、認証が行われる。システムがエラーメッセージを発し、グラフィカルシミュレーションエンジンにより使用できるようなシミュレーションデータを生成できない場合、元の入力データにエラーが存在している可能性が高い。これに加え（またはこれに代えて）、このテスト用入力データを使用したときにシステムが（安定状態よりもむしろ）変動するデータを発するならば、この場合もオリジナルの入力データにエラーが存在している可能性が高く、よって、テストの出力にも問題が含まれている可能性が高い。このような方法は手作業により、または本明細書に記載された方法に代わる方法を用いて生成されたグラフィカル仮想環境をテストするためにも使用できる。このような例では、テスト下にある環境は本明細書に記載されたシステムに入力され、その結果が安定的な環境でない場合、テスト下にある環境はエラーを含んでいると判断される。
【００３７】
既存のグラフィカルシミュレーションエンジンは、仮想環境の特定の領域に必要な詳細レベルに基づいて、計算を低減するための技術を使用する。この技術により、見る人に近いオブジェクトは遠くのオブジェクトよりも詳細に表示され、視野の外にあるオブジェクトは全くレンダリングされない。この技術は本明細書に記載された方法と両立ができ、このような公知の技術は本明細書に記載された方法に組み合わせて使用することができる。
【００３８】
図７は、コンピューティング及び／または電子デバイスの任意の形式として実装することができ、上記した方法の実施形態を実装することができる例示的なコンピューティングベースの装置７００の種々のコンポーネントを示している。コンピューティングベースの装置７００は例えばゲームコンソール若しくはゲームサーバとなりうる。
【００３９】
コンピューティングベースの装置７００は、例えばマイクロプロセッサ、コントローラまたは科学モデルを実行し、シミュレーションデータを生成し、グラフィカル仮想環境を生成するために、上記装置の動作を制御するコンピュータ実行可能な命令を処理するためのその他の任意の適切なタイプのプロセッサである１つ若しくは複数のプロセッサ７０２を備える。そのプロセッサはオペレーティングシステム７０４を備えるプラットフォームソフトウエアまたはその他の任意の適切なプラットフォームソフトウエアが、上記コンピューティングベースの装置に提供され、例えば科学モデル７１０を動かすグラフィカルシミュレーションエンジン７０６及びシミュレーションエンジン７０８等のアプリケーションソフトウエアを上記装置において実行されるようにする。
【００４０】
コンピュータ実行可能命令は、メモリ７１２等の任意のコンピュータ可読媒体を使用して提供されうる。メモリは、ランダムアクセスメモリ（ＲＡＭ）、磁気記憶装置若しくは光学記憶装置等の任意のタイプのディスク型記憶装置、ハードディスクドライブ、ＣＤ、ＤＶＤその他のディスクドライブ等の任意の適切なタイプのものであってよい。フラッシュメモリ、ＥＰＲＯＭまたはＥＥＰＲＯＭも使用できる。メモリ７１２は、科学モデル７１０、科学データセット７１４、シミュレーション特有データ７１６及び任意の他のデータ７１８（例えば、ユーザ定義のパラメータ、リモートソースからダウンロードしたデータ等）を記憶するために使用され得る。
【００４１】
またコンピューティングベースの装置７００は、ディスプレイインターフェース７２０、ユーザ入力インターフェース７２２及び通信インターフェエース７２４等の１又は複数のインターフェースを含む。ディスプレイインターフェース７２０は、グラフィカル仮想環境をレンダリングするための情報をディスプレイ装置（図７には示されていない）に提供するように構成されており、コンピューティングベースの装置の種類によっては、その装置はディスプレイデバイス（例えばポータブルゲームコンソール用のディスプレイデバイス）を備える。ユーザ入力インターフェース７２２はゲームコントローラ、マウス若しくはキーボード等のユーザ入力装置（図７には示されていない）とのインターフェース接続し、そのユーザ入力装置からのユーザ入力信号を受信するように構成されている。通信インターフェース７２４はオンラインサービスまたはデータベース等の外部データソースと通信し及び／または外部データソースからデータを受信するように構成されている。受信されたデータはすべて、（例えばその他のデータ７１８として）メモリ７１２に記憶される。
【００４２】
上記した例はゲームサーバまたはゲームコンソールにおいて実装されるとして本明細書で説明され図示されているが、記載されたシステムは例示であり限定するものではない。当業者であれば、示した例は種々の異なるタイプのゲームシステムのアプリケーションに適しており、上述の方法及びシステムはコンピュータゲーム以外（例えば、上記したように）教育やトレーニングや科学的な研究のアプリケーションにも使用されうることが理解できるであろう。
【００４３】
本明細書に記載された技術は実行時において使用されるとして説明されたが、いくつかのアプリケーションでは、上記技術は設計時にのみ使用されてゲーム／ツールに組み込まれ、実行時にはスタティック（静態）である場合もあるグラフィカル仮想環境を生成することがわかる。そのような例では、本明細書に記載された方法は開発サイクルにおいて使用されて、環境の静的なスナップショットを生成する。
【００４４】
さらに、上記した技術はグラフィカル仮想環境を生成するために使用されるものとして説明されているが、その技術はその他の形式のグラフィック出力または例えば出力が数値だけのコンピュータシミュレーション等の非グラフィカル仮想環境を生成するアプリケーションにも用いることができることが認識される。このようなアプリケーションの例は、木の生長及び種の多様性に関する統計を策定するコンピュータシミュレーションであり、ユーザに結果を図式化して提供するのではなく、数値を提供するものである。
【００４５】
「コンピュータ」という用語は本明細書において、命令を実行する処理能力を有する任意の装置を意味する。当業者であれば、このような処理能力は多くの異なる装置に組み込むことができ、従って、「コンピュータ」という用語はＰＣ、サーバ、携帯電話、ＰＤＡ（personal digital assistant）及び多くのその他の装置・デバイスを含むことが理解できるであろう。
【００４６】
本明細書に記載された方法は有形の記憶媒体に記憶された機械読取可能な形式のソフトウェアにより実行することができる。そのソフトウェアはパラレルプロセッサ上またはシリアルプロセッサ上で実行されるのに適するように構成され、上記方法ステップは任意の適切な順序で実行してもよいし、実質的に同時に実行してもよい。
【００４７】
このことにより、ソフトウェアは価値の有る、個別に商取引可能な商品であることがわかる。これには、所望の機能を実施するために、データ処理能力を持たない又は標準的なハードウェアで実行する又は制御するソフトウェアが含まれることが意図される。また、ハードウェアの構成を「記述」若しくは規定するＨＤＬ（ハードウェア記述言語）ソフトウェア等のソフトウェアも含まれることが意図される。所望の機能を実行するために、シリコンチップを設計するために用いられることもあるし、ユニバーサルプログラマブルチップを構成するために用いられるからである。
【００４８】
当業者であれば、プログラム命令を記憶するのに使用される記憶装置はネットワーク上に分散できることは理解できるであろう。例えば、リモートコンピュータは、上記プロセスの例をソフトウェアとして記憶することができる。例えば、ローカルコンピュータもしくはターミナル（端末）コンピュータが上記リモートコンピュータにアクセスして上記ソフトウェアの一部若しくは全部をダウンロードして上記プログラムを実行する。あるいは、上記ローカルコンピュータは必要に応じて上記ソフトウェアを部分的にダウンロードしてもよいし、上記ローカルターミナルにおいて幾つかのソフトウェア命令を実行し、上記リモートコンピュータ（若しくはコンピュータネットワーク）において幾つかのソフトウェアを実行してもよい。また、当業者であれば、当業者に知られている従来の技術を使用することにより、ソフトウェア命令の全部もしくは一部を、例えば、ＤＳＰ、プログラマブルロジック配列等の専用回路によって実施できることも理解できるであろう。
【００４９】
当業者には自明であろうが、本明細書において明記された範囲若しくは装置の値は本発明の効果を失うことなく拡大・拡張することもできるし変えることもできる。
【００５０】
上記した利点及び効果は１つの実施形態に関連していることもあり、複数の実施形態に関連していることもある。実施形態は上記した課題のいずれか若しくは全てを解決できるものに限定されないし、上記した利点及び効果のいずれか若しくは全てを備える・発揮するものに限定されない。上記において「１つの」と記載した場合、１つ若しくは複数を意味する。
【００５１】
本明細書で説明された方法のステップは、任意の適切な順序で実施することができるし、適切な場合には同時に実施することもできる。加えて、個々のブロックは、本明細書に記載された主題の趣旨及び範囲から逸脱することなく、上記複数の方法のいずれからでも削除することができる。上記において説明された例のいずれの特徴（構成、ステップ）も、上記において説明されたその他の例の態様に組み合わせることができ、さらなる例を本発明の効果を失することなく形成することができる。
【００５２】
本明細書において「備える」という表現は、特定された方法ブロックや要素を含むという意味で使用されているが、そのブロックや要素は限定的なリストではなく（限定列挙されているわけではなく）、方法若しくは装置は更なるブロック若しくは要素を含み得る。
【００５３】
好適実施形態の上記説明は単なる例示であり、種々の変形・修正が当業者によって成され得ることが理解できよう。上記の明細書、例及びデータは本発明の例示的実施形態の構造と使用に関する完全な説明を提供している。上記の記載において、本発明の種々の実施形態が、ある程度の詳細な事項により説明されてきたり、１つ以上の実施形態に基づいて表されてきたが、当業者であれば本発明の趣旨または範囲から離れることなく上記開示された実施形態に多くの変更を成すことができるであろう。
【図１】
2012513650.tif 000003
【図２】
2012513650.tif 000004
【図３】
2012513650.tif 000005
【図４】
2012513650.tif 000006
【図５】
2012513650.tif 000007
【図６】
2012513650.tif 000008
【図７】
2012513650.tif 000009
【国際調査報告】
2012513650.tif 000010
2012513650.tif 000011
2012513650.tif 000012