(57)【要約】【課題】量子近似最適化においてコスト関数の変形を行うための技法を提供する。【解決手段】本技法は、組み合せ最適化問題に関連付けられたコスト関数を、許容量子状態上の最適化問題にマッピングすることを含む。このコスト関数に対する量子ハミルトニアンが構築され、制御パルスが点在する量子ハードウェアの物理時間発展によって試行状態のセットが生成される。諸態様は、試行状態に対する量子コスト関数を評価するステップと、最適値をもたらす試行状態を判定するステップと、最適状態を見出すためハミルトニアンを変形し、望ましいハミルトニアンに対するオプティマイザが算定されるまで、変形されたハミルトニアンに対する次の最適化のための次の開始状態としてその最適状態を使用するステップと、を含む。【選択図】図１
2021504805.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ実行可能コンポーネントを格納するメモリと、
前記メモリ中に格納されたコンピュータ実行可能コンポーネントを実行するプロセッサと、
を含むシステムであって、前記コンピュータ実行可能コンポーネントが、
最適化問題を許容量子状態上の最適化問題中にマッピングするため、１つ以上の制約に基づいてコスト関数をハミルトニアンにマッピングするマッピング・コンポーネントと、
少なくとも１つの集合ゲートを有する量子回路を含み、量子ハードウェアのキュービットをもつれさせるためのマイクロ波制御パルスが点在する量子ハードウェアの物理時間発展によって前記ハミルトニアンに対応する試行状態を生成し、最適値をもたらす試行状態を判定するために前記試行状態に対する量子コスト関数を評価する、試行状態および評価コンポーネントと、
最適状態を見出すため、ハミルトニアンを変形ハミルトニアンに変形し、望ましいハミルトニアンに対するオプティマイザが算定されるまで、前記変形されたハミルトニアンに対する次の最適化のための次の開始状態として前記最適状態を用いる、変形コンポーネントと、
を含む、システム。
【請求項２】
前記組み合せ最適化問題の１つ以上の近似を得るために、前記オプティマイザに対応する前記最適状態からサンプリングを行うサンプリング・コンポーネントをさらに含む、請求項１に記載のシステム。
【請求項３】
前記マッピング・コンポーネントと相互作用し、前記最適値をもたらす前記試行状態を出力するインターフェースをさらに含む、請求項１に記載のシステム。
【請求項４】
前記試行状態および評価コンポーネントが、前記試行状態上の個々のパウリ演算子を測定する、請求項１に記載のシステム。
【請求項５】
プロセッサに動作可能に連結されたシステムによって、量子ハードウェアを用いて組み合せ最適化問題の解決を促進するステップを含むコンピュータ実装の方法であって、前記システムが、
前記システムによって、前記組み合せ最適化問題に関連付けられたコスト関数を、前記コスト関数に対する量子ハミルトニアンを構築するステップも含め、許容量子状態上の最適化問題にマッピングするステップと、
前記システムの量子回路によって、マイクロ波制御パルスが点在する前記量子ハードウェアの物理時間発展によって試行状態のセットを生成するステップと、
前記システムによって、前記試行状態に対する量子コスト関数を評価するステップと、
前記システムによって、最適値をもたらす試行状態を判定するステップと、
前記システムによって、最適の状態を見出すためにハミルトニアンを変形し、望ましいハミルトニアンに対するオプティマイザが算定されるまで、変形されたハミルトニアンに対する次の最適化のための次の開始状態として前記最適状態を用いるステップと、
を含む、
コンピュータ実装の方法。
【請求項６】
制御パルスが点在する量子ハードウェアの前記物理時間発展によって前記試行状態のセットを前記生成するステップが、試行状態を生成するために前記物理時間発展を用いるステップを含む、請求項５に記載のコンピュータ実装の方法。
【請求項７】
前記コスト関数に対する前記量子ハミルトニアンを前記構築するステップが、対角量子ハミルトニアンを構築するステップを含む、請求項５に記載のコンピュータ実装の方法。
【請求項８】
前記コスト関数に対する前記量子ハミルトニアンを前記構築するステップが、量子ハミルトニアンをパウリＺ項の一次結合として表すステップを含む、請求項５に記載のコンピュータ実装の方法。
【請求項９】
バイナリの組み合せ最適化問題に関連付けられた前記コスト関数を前記マッピングするステップが、前記コスト関数を近似量子コンピュータ上のキュービット表現にマッピングするステップを含む、請求項５に記載のコンピュータ実装の方法。
【請求項１０】
前記試行状態に対する前記量子コスト関数を前記測定するステップが、前記試行状態上の個々のパウリ演算子を測定するステップを含む、請求項５に記載のコンピュータ実装の方法。
【請求項１１】
前記組み合せ最適化問題への近似解を得るために、前記オプティマイザに対応する前記最適状態からサンプリングを行うステップをさらに含む、請求項５に記載のコンピュータ実装の方法。
【請求項１２】
前記組み合せ最適化問題がバイナリの組み合せ最適化問題を含み、前記方法が、前記バイナリの最適化問題への近似解を提供するビット・ストリングを得るために、前記オプティマイザに対応する前記最適状態からサンプリングを行うステップをさらに含む、請求項５に記載のコンピュータ実装の方法。
【請求項１３】
組み合せ最適化問題に関連付けられたコスト関数を、１つ以上の制約条件に基づいて許容量子状態上の最適化問題にマッピングし、前記コスト関数に対する量子ハミルトニアンを構築する、マッピング・コンポーネントと、
マイクロ波制御パルスが点在する量子ハードウェアの物理時間発展によって、試行状態のセットを生成する量子回路を含み、前記試行状態に対する量子コスト関数を評価し、最適値をもたらす試行状態を判定する、試行状態および評価コンポーネントと、
最適状態を見出すため、前記量子ハミルトニアンを変形ハミルトニアンに変形し、望ましいハミルトニアンに対するオプティマイザが算定されるまで、前記変形ハミルトニアンに対する次の最適化のための次の開始状態として前記最適状態を使用する、変形コンポーネントと
を含む電子デバイス。
【請求項１４】
前記量子回路が、もつれを生じさせるために前記制御パルスを使用する、請求項１３に記載の電子デバイス。
【請求項１５】
前記コスト関数に対する前記量子ハミルトニアンを構築する前記マッピング・コンポーネントが、対角量子ハミルトニアンを構築する、請求項１３に記載の電子デバイス。
【請求項１６】
前記対角量子ハミルトニアンを構築する前記マッピング・コンポーネントが、前記量子ハミルトニアンをパウリＺ項の一次結合として表す、請求項１５に記載の電子デバイス。
【請求項１７】
前記マッピング・コンポーネントが、前記コスト関数を近似量子コンピュータ上のキュービット表現にマッピングする、請求項１３に記載の電子デバイス。
【請求項１８】
前記試行状態および評価コンポーネントが、前記試行状態上の個々のパウリ演算子を測定する、請求項１３に記載の電子デバイス。
【請求項１９】
前記最適化問題への近似解を提供するビット・ストリングを得るために、サンプリングを行うサンプリング・コンポーネントをさらに含む、請求項１３に記載の電子デバイス。
【請求項２０】
プロセッサに動作可能に連結されたシステムによって、関連する開始制御パラメータを有する開始ハミルトニアンを取得するステップと、
ユニタリもつれゲートを含む量子ハードウェアを用いて、前記開始ハミルトニアンから得られた変形ハミルトニアンのエネルギを見積もるための試行状態を生成するステップと、
前記開始ハミルトニアンに関連付けられた前記試行状態に対する最適制御パラメータに基づいて、前記変型ハミルトニアンの新しい最適制御パラメータを見出すため、前記量子ハードウェアを使って、前記変形ハミルトニアンの前記エネルギを反復して測定するステップと、
前記変形ハミルトニアンの前記新しい最適制御パラメータを新規の開始制御パラメータとし前記変形ハミルトニアンを新規の開始ハミルトニアンとして使用するステップを含めて、最終的な望ましいハミルトニアンへの変形達成されるまで、前記変形されたハミルトニアンを、繰り返される初期制御パラメータによって新規の変形ハミルトニアンに反復して変形するステップと、
を含む、コンピュータ実装の方法。
【請求項２１】
前記システムによって、組み合せ最適化問題への近似解を提供するデータを取得するため、前記最終の望ましいハミルトニアン、および前記最終の望ましいハミルトニアンに関連付けられた前記最適制御パラメータに対応する情報に基づいて、サンプリングを行うステップをさらに含む、請求項２０に記載のコンピュータ実装の方法。
【請求項２２】
前記システムによって、もつれを生じさせる制御パルスが点在する前記量子ハードウェアの物理時間発展によって試行状態のセットを生成するステップと、前記試行状態に対する量子コスト関数を評価するステップと、最適値をもたらす試行状態を判定するステップとをさらに含む、請求項２０に記載のコンピュータ実装の方法。
【請求項２３】
バイナリの組み合せ最適化問題の解決を促進するコンピュータ・プログラム製品であって、前記コンピュータ・プログラム製品は、具現化されたプログラム命令を有するコンピュータ可読ストレージ媒体を含み、前記プログラム命令は、プロセッサによって実行可能で、前記プロセッサに、
プロセッサに動作可能に連結されたシステムによって、関連する開始制御パラメータを有する開始ハミルトニアンを取得させ、
ユニタリもつれゲートを含む量子ハードウェアを用いて、前記開始ハミルトニアンから得られた変形ハミルトニアンのエネルギを見積もるための試行状態を生成させ、
前記開始ハミルトニアンに関連付けられた前記試行状態に対する最適制御パラメータに基づいて、前記変型ハミルトニアンの新しい最適制御パラメータを見出すため、前記量子ハードウェアを使って、前記変形ハミルトニアンの前記エネルギを反復して測定させ、
前記変形ハミルトニアンの前記新しい最適制御パラメータを新規の開始制御パラメータとして前記変形ハミルトニアンを新規の開始ハミルトニアンとして使用することを含めて、最終的な望ましいハミルトニアンへの変形が達成されるまで、変形されたハミルトニアンを、繰り返される初期制御パラメータによって新規の変形ハミルトニアンに反復して変形させる、
コンピュータ・プログラム製品。
【請求項２４】
前記プログラム命令がプロセッサによってさらに実行可能で、前記プロセッサに、組み合せ最適化問題への近似解を提供するデータを取得するため、前記最終の望ましいハミルトニアン、および前記望ましいハミルトニアンに関連付けられた前記最適制御パラメータに対応する情報に基づいて、前記プロセッサにサンプリングを行わせる、請求項２３に記載のコンピュータ・プログラム製品。
【請求項２５】
前記プログラム命令が前記プロセッサによってさらに実行可能で、前記プロセッサに、もつれを生じさせる制御パルスが点在する前記量子ハードウェアの物理時間発展によって試行状態のセットを生成させ、前記試行状態に対する量子コスト関数を評価させ、且つ、最適値をもたらす試行状態を判定させる、請求項２３に記載のコンピュータ・プログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本主題の開示は、量子コンピューティングに関し、さらに具体的には、量子回路による組み合せ最適化問題の解決に関する。
【背景技術】
【０００２】
最適化または組み合せ最適化は、ポテンシャル問題の有限または加算無限のセットに対する最適解を探索する方法である。最適性は、何らかの基準関数で定義されそれが最大化されるかまたは最小化されることになり、通常、これはコスト関数と呼ばれる。例えば、距離、トラバーサルの長さ、ウェイト、処理時間、材料、エネルギ消費、オブジェクトの数などの物理パラメータの最小化、および、物理値、アウトプット、歩留まり、ユーテリティ、効率、生産量、オブジェクトの数などの最大化を含め、様々な種類の最適化問題がある。したがって、本明細書で用いられる場合、用語「コスト関数」は、好ましくは、前述したような物理的パラメータに関する。また、用語「コスト関数」は、例えば、コスト、利益、数値など、非物理的なパラメータにも適用されてよい。量子コンピュータは、最適化問題を標準的なアルゴリズムよりも効率的に解決する上での有望性を示している。例えば、周知の量子断熱アルゴリズムは、組み合せ最適化問題を解決することを試みている。このアルゴリズムは、問題の大きさに応じて増減する長いコヒーレンス時間を必要とする。最適化問題の解決への別のアプローチは、「量子近似最適化アルゴリズム」（ＱＡＯＡ）：Ｑｕａｎｔｕｍ  Ａｐｐｒｏｘｉｍａｔｅ  Ｏｐｔｉｍｉｚａｔｉｏｎ  Ａｌｇｏｒｉｔｈｍ）に基づいている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
このアルゴリズムの直接的な実行は、当該最適化問題により決まるユニタリを必要とする。このユニタリの標準ゲート・セットへの分解は、量子デバイスのコヒーレンス時間に強い要件を課す。
【課題を解決するための手段】
【０００４】
以下は、本発明の１つ以上の実施形態の基本的理解を提供するための要約である。この要約は、主要なまたは重要な要素を明確化したり、またはこれら特定の実施形態の何らかの範囲または特許請求の何らかの範囲を叙述することは意図されていない。その唯一の目的は、後記で提示するより詳細な説明の前置きとして簡明な形で本発明の概念を提示することである。本明細書で説明する１つ以上の実施形態において、量子回路のデバッギングの自動化を促進する、デバイス、システム、コンピュータ実装の方法、装置、もしくはコンピュータ・プログラム製品またはこれらの組み合せが説明される。
【０００５】
或る実施形態によれば、システムは、最適化問題を許容量子状態上の最適化問題中にマッピングするため、１つ以上の制約条件に基づいて、物理パラメータに関するコスト関数をハミルトニアンにマッピングする、マッピング・コンポーネントと、少なくとも１つの集合ゲートを有する量子回路を含み、量子ハードウェアのキュービットをもつれさせるためのマイクロ波制御パルスが点在する量子ハードウェアの物理時間発展によって、ハミルトニアンに対応する試行状態を生成し、最適値をもたらす試行状態を判定するためにその試行状態に対するコスト関数を評価する、試行状態および評価コンポーネントと、最適状態を見出すために、ハミルトニアンを変形ハミルトニアンに変形し、望ましいハミルトニアンに対するオプティマイザが算定されるまで、変形されたハミルトニアンに対する次の最適化のための次の開始状態としてその最適状態を用いる、変形コンポーネントと、を含む。サンプリング・コンポーネントは、組み合せ最適化問題の１つ以上の近似を得るために、オプティマイザに対応する最適状態からサンプリングを行う。
【０００６】
別の実施形態によれば、コンピュータ実装の方法が提供される。本コンピュータ実装の方法は、組み合せ最適化問題に関連するコスト関数を、そのコスト関数に対する量子ハミルトニアンを構築するステップも含め、許容量子状態上の最適化問題にマッピングするステップと、システムの量子回路によって、マイクロ波制御パルスが点在する量子ハードウェアの物理時間発展によって試行状態のセットを生成するステップとを含む。さらに、本コンピュータ実装の方法は、それら試行状態に対する量子コスト関数を評価するステップと、最適値をもたらす試行状態を判定するステップと、最適状態を見出すためにハミルトニアンを変形し、望ましいハミルトニアンに対するオプティマイザが算定されるまで、変形されたハミルトニアンに対する次の最適化のための次の開始状態としてその最適状態を用いるステップと、を含む。本方法は、もつれを生じさせるため物理時間発展を用いることを含む、制御パルスが点在する量子ハードウェアの物理時間発展によって試行状態のセットを生成するステップを含む。本方法は、組み合せ最適化問題への近似解を得るために、オプティマイザに対応する最適状態からサンプリングを行うステップを含む。
【０００７】
さらに別の実施形態によれば、電子デバイスが提供される。本電子デバイスは、組み合せ最適化問題に関連するコスト関数を、１つ以上の制約に基づいて許容量子状態上の最適化問題にマップし、そのコスト関数に対する量子ハミルトニアンを構築する、マッピング・コンポーネントを含む。本電子デバイスは、マイクロ波制御パルスが点在する量子ハードウェアの物理時間発展によって試行状態のセットを生成し、それら試行状態に対する量子コスト関数を評価し、最適値をもたらす試行状態を判定する量子回路を含む、試行状態および評価コンポーネントをさらに含む。本電子デバイスは、最適状態を見出すために量子ハミルトニアンを変形ハミルトニアンに変形し、望ましいハミルトニアンに対するオプティマイザが算定されるまで、変形されたハミルトニアンに対する次の最適化のための次の開始状態としてその最適状態を使用する、変形コンポーネントをさらに含む。該量子回路は、試行状態を生成するために制御パルスを使用する。サンプリング・コンポーネントは、当該最適化問題への近似解を提供するビット・ストリングを得るためサンプリングを行う。
【０００８】
さらに別の実施形態において、コンピュータ実装の方法が提供され、本方法は、動作可能にプロセッサに連結されたシステムによって、関連する開始制御パラメータを有する開始ハミルトニアンを取得するステップを含む。諸態様は、ユニタリもつれゲートを含む量子ハードウェアを用いて、開始ハミルトニアンから得られた変形ハミルトニアンのエネルギを見積もるための試行状態を生成するステップを含む。他の態様は、開始ハミルトニアンに関連付けられた試行状態に対する最適制御パラメータに基づいて、変型ハミルトニアンの新しい最適制御パラメータを見出すため、量子ハードウェアを使って、変形ハミルトニアンのエネルギを反復して測定するステップと、変形ハミルトニアンの新しい最適制御パラメータを新規の開始制御パラメータとし、変形ハミルトニアンを新規の開始ハミルトニアンとして使用するステップを含め、最終的に望ましいハミルトニアンが達成されるまで、変形されたハミルトニアンを、繰り返される初期制御パラメータによって新しい変形ハミルトニアンに反復して変形するステップと、を含む。最終の望ましいハミルトニアン、および該最終の望ましいハミルトニアンに関連付けられた最適制御パラメータに対応する情報に基づいて、サンプリングにより組み合せ最適化問題への近似解を提供するデータが取得される。
【０００９】
別の実施形態において、コンピュータ・プログラム製品が提供される。本コンピュータ・プログラム製品は、プロセッサに動作可能に連結されたシステムによって、関連する開始制御パラメータを有する開始ハミルトニアンを取得する。本コンピュータ・プログラム製品は、ユニタリもつれゲートを含む量子ハードウェアを用いて、開始ハミルトニアンから得られた変形ハミルトニアンのエネルギを見積もるための試行状態を生成する。本コンピュータ・プログラム製品は、開始ハミルトニアンに関連付けられた、試行状態に対する最適制御パラメータに基づいて、変形されたハミルトニアンの新しい最適制御パラメータを見出すために、量子ハードウェアを使って変形ハミルトニアンのエネルギを反復して測定する。本コンピュータ・プログラム製品は、最終の望ましいハミルトニアンへの変形が達成されるまで、繰り返される初期制御パラメータに基づいて、変形されたハミルトニアンの新しい最適制御パラメータを新規の開始制御パラメータとし、変形されたハミルトニアンを新規の開始ハミルトニアンとして用いることを含め、新規の変形ハミルトニアンに反復して変形する。
【図面の簡単な説明】
【００１０】
【図１】本明細書に記載の１つ以上の実施形態による、本技術の様々な態様を示す例示の非限定のシステムのブロック図である。
【図２】本明細書に記載の１つ以上の実施形態による、図１の様々な技術態様に対応する例示のコンポーネントを表す図を示す。
【図３】本明細書に記載の１つ以上の実施形態による、ハミルトニアン・コスト関数中へのコスト関数のマッピングを表す例示図を示す。
【図４】本明細書に記載の１つ以上の実施形態による、エネルギの測定に関する態様を表す例示図を示す。
【図５】本明細書に記載の１つ以上の実施形態による、量子回路を介するもつれを用いる試行状態ベースの測定を表す例示図を示す。
【図６】本明細書に記載の１つ以上の実施形態による、エネルギ測定に基づくエネルギ値の出力に関する態様を表す例示図を示す。
【図７】本明細書に記載の１つ以上の実施形態による、量子近似最適化の一部として、標準的な最適化がどのように使われているかを表す例示図を示す。
【図８】本明細書に記載の１つ以上の実施形態による、コスト関数の解を表現する最終状態を生成するためのコスト関数の変形を表す例示図を示す。
【図９】本明細書に記載の１つ以上の実施形態による、２個の頂点の頂点セットに対する組み合せ最適化問題（ＭａｘＣｕｔ）に対応する関数を漸進的に変形することによって得られた最適化測定確率を表す例示グラフを示す。
【図１０】本明細書に記載の１つ以上の実施形態による、３個の頂点の頂点セットに対する組み合せ最適化問題（ＭａｘＣｕｔ）に対応する関数を漸進的に変形することによって得られた最適化測定確率を表す例示グラフを示す。
【図１１】本明細書に記載の１つ以上の実施形態による、４個の頂点の頂点セットに対する組み合せ最適化問題（ＭａｘＣｕｔ）に対応する関数を漸進的に変形することによって得られた最適化測定確率を表す例示グラフを示す。
【図１２】本明細書に記載の１つ以上の実施形態による、最適化問題の最適化を促進する例示、非限定のシステムブロック図を示す。
【図１３】本明細書に記載の１つ以上の実施形態による、最適化問題の最適化を促進する例示、非限定のコンピュータ実装の方法のフロー図を示す。
【図１４】本明細書に記載の１つ以上の実施形態による、コスト関数の変形を介する、最適化問題の最適化を促進する例示、非限定のコンピュータ実装の方法のフロー図を示す。
【図１５】本明細書に記載の１つ以上の実施形態による、ハミルトニアンを反復して変形することにより最適化問題の最適化を促進する例示、非限定のコンピュータ実装の方法のフロー図を示す。
【図１６】本明細書に記載の１つ以上の実施形態が促進可能な、例示、非限定の動作環境のブロック図を示す。
【発明を実施するための形態】
【００１１】
以降の詳細な説明は、単なる例示であって、諸実施形態もしくは出願またはその両方、または諸実施形態の使用を限定することは意図されていない。
さらに、上記の背景技術または要約のセクション、または本発明を実施するための形態のセクションにおいて提示されたいかなる明示または暗示の情報にも拘束されることは意図されていない。
【００１２】
一般に、本明細書に記載の技術は、従来のソリューションが必要とする長いコヒーレンス時間なしに、最適化問題を効率的に解決する。また、本技術は、従来のソリューションのローカルな相互作用だけの問題を回避し、しかして、解決のため高度に幾何学的に非ローカルな相互作用を必要とする最適化問題を解決することが可能である。
【００１３】
このため、本技術は、バイナリの最適化問題の、近似量子コンピュータ上のキュービット表現への効率的なマッピングを見出す。望ましいもつれを見出すために２つのゲートの間でのローカルな相互作用を反復して処理する代わりに、本明細書に記載の技術は、もっと多くのゲートのセットに対し、同時にチップの相互作用グラフ上での集合ゲート・オペレーションを促進する。キュービットをもつれさせるマイクロ波パルスがもつれゲートを構成するために用いられ、このゲートは集合ゲートであり多くの（または全ての）キュービットが同時にもつれさせられる。これは、コヒーレントなゲート・エラーに対し自己修正をする、量子近似最適化アルゴリズムのための量子回路をもたらす。本技術は、オンチップの交差共鳴ハミルトニアンおよび変分パラメータを用いており、これは、最大の平均共起を生成するため、最適化プロトコルにおける集合ゲート・オペレーションを選択し、且つ、更新された、ハミルトニアンを変形する期待値の断熱最適化スケジュールを用いることによって、最適化問題に対するコヒーレントで系統的エラーを是正することができ、これにより、最善の制御パラメータを「引き出し」それを次の最適状態のための開始最適状態として次々と使用する。
【００１４】
図面を参照しながら、以降に１つ以上の実施形態を説明するものとし、図中では、全体を通して同じ要素を参照するのに同じ参照符号が用いられる。以下の説明において、これら１つ以上の実施形態のより徹底した理解を提供するため、解説目的で数々の具体的詳細が述べられる。但し、当然のことながら、様々なケースにおいて、これら１つ以上の実施形態は、これらの具体的細部がなくても実践することが可能である。
【００１５】
図１は、最適化問題のコスト関数１０２をマッピング・コンポーネント１０４を介してハミルトニアン・コスト関数１０６にマッピングすることを含め、標準的な最適化問題の解決を対象とする一般的なフレームワークの一例を示し、これについては本明細書で図３を参照しながらさらに説明する。なお、標準的コスト関数を量子ハミルトニアンとして表現するために、このハミルトニアンはパウリＺ項の一次結合として表される。
【００１６】
標準的最適化問題／コスト関数をハミルトニアン・コスト関数にマップしておき、（図４〜６を参照して説明するような）試行状態および評価オペレーションが行われ、連続するパラメータのセットに依拠する短奥行き量子回路が生成される。このために、量子コンピュータ／回路１０８を含む、試行状態および評価コンポーネント１０７が用いられ、例えば、バイナリの最適化問題への良好な近似を提供するビット・ストリングを得るために、計算ベースで試行状態からサンプリングが行われ、標準的な最適化ルーティンに供給するために、諸試行状態に対する量子コスト関数が測定される（これについては図７を参照しながらもっと詳しく説明する）。
【００１７】
一般に、量子コンピューティングは、トランジスタに基づくバイナリ・デジタル技法とは対照的に、情報を符号化するために量子物理学を用いる。例えば、量子コンピュータは、量子ビット（例えば、キュービット）を用い、これは量子情報の基本単位である。キュービットは、量子物理学の重ね合わせ原理および量子物理学のもつれ原理に従って動作する。量子物理学の重ね合わせ原理は、各キュービットは、同時に「１」の値と「０」の値とを表現することができると述べる。量子物理学のもつれ原理は、重ね合わさったキュービットは相互に相関できると述べる。例えば、第一値（例えば、「１」の値または「０」の値）の状態は第二値の状態により定まり得る。しかして、量子コンピュータは情報を符号化するのにキュービットを用いる。
【００１８】
諸態様は、超伝導量子回路に送信されるマイクロ波パルスによるモデリングを含み、該回路は所与の量子状態（単数または複数）を形成し、これが最適化問題のサンプルを採取するために用いられる。図４〜６を参照して説明するように、一般的なアプローチは、或る特定の状態を生成する連続するパラメータのセットの初期の推測を行い、状態および平均を得る（例えば、パウリの平均を測定するため当該状態からサンプリングを行う）ためエネルギ測定値の和としてハミルトニアンを表し、その平均値を返して伝達することである。
【００１９】
図７の標準的最適化コンポーネント（図１のブロック１１４）は、制御パラメータのセットの初期の推測から開始するループ・オペレーションを提供し、パラメータのセットと共にハミルトニアンを提供する。評価コンポーネント１１０は、ブロック１１２で、図６を参照しながらさらに詳しく説明するプロセスを介してエネルギ値を取得する。このエネルギ値は、制御パラメータの新規に提起され更新されたセットにマップされ、ループは繰り返す。この標準的最適化が収斂したならば（例えば、エネルギ値は大きくは変化しない）、エネルギ値は、その対応する最適制御パラメータと共に出力される。この最適化では、例えば、１つの所与のハミルトニアンに対しローカルで最小化が行われ、対応当する制御パラメータが見出される。
【００２０】
ブロック１１８については図８を参照しながらさらに詳しく説明するが、これは、本明細書に記載のコスト関数の変形をするようにされた変形コンポーネントを含む。一般に、ハミルトニアン・ファミリ１１６に対し、本オペレーションは、正確な制御パラメータを知るコスト関数によって開始され、より具体的な最適化問題を解決するため、量子回路を介して当該コスト関数を漸進的に変形するために（反復ドリフト・ステップの回路を適用することによって）ループする。一般に、また当然のことながら、本技術の諸態様は制御パラメータを変形することによって開始され、コスト関数値を最終の状態１２０に達するまで追跡する。さらに具体的には、或る最適化問題を表現するハミルトニアンが解決の対象となるとき、ハミルトニアンのファミリ（ブロック１１６）が、解答が判明している簡単なハミルトニアンから開始して選択され、これは、初期の推測が十分に正確であることが分かっている制御パラメータの適正な選択を提供する。ハミルトンは、この開始ハミルトニアンから、最小であることが求められているハミルトニアンに達するまで、実際のもつれを生じさせて（図５）、許容ドリフト回数まで時間経過とともに漸進的に変形され、次に標準的最適化問題を解決するために使用される。
【００２１】
図２は、図１の諸ブロックの一部に対応するコンポーネントに連結されたプロセッサ２００およびメモリ２０２の一例を示す。図示のように、マッピング・コンポーネント２０４、試行状態および評価コンポーネント２０７、標準的最適化コンポーネント２１４、およびコスト関数変形コンポーネント２１８は、本明細書に記載の様々なオペレーションを実行する。但し、当然のことながら、これらは単なる例であって、これらの例示的なコンポーネントの少なくとも一部は、より少ない数のコンポーネントとして組み合せることができ、もしくはこれらの例示的なコンポーネントを追加のコンポーネントにさらに分離することができ、またはその両方を次々と行うことができ、別の実施形態に追加のコンポーネントが存在してもよい。
【００２２】
様々な例および関連する詳細を考察すると、一般に、最適化または組み合せ最適化とは、ポテンシャルなソリューションの有限のまたは可算無限のセット中の最適ソリューションの探索を言う。最適性は、最大化されるかまたは最小化されるべき何らかの基準関数で定義され、これは、通常、コスト関数と呼ばれる。様々な種類の最適化問題がある。これらは、コスト、距離、トラバーサルの長さ、ウェイト、処理時間、材料、エネルギ消費、オブジェクトの数などの最小化、および利益、価値、アウトプット、リターン、歩留まり、ユーテリティ、効率、生産量、オブジェクトの数などの最大化を含む。
【００２３】
どのような最大化問題も、最小化問題に対して当てはめることができその逆も可能である。しかして、組み合せ最適化問題の最も一般的な形は、
Ｃ（ｘ）を最小化せよ
制約条件  ｘ∈Ｓ
で与えられ、上式のｘ∈Ｓは離散変数であり、
【数１】
2021504805.tif 000003
は、Ｄを或るドメインＤから実数
【数２】
2021504805.tif 000004
にマッピングするコスト関数である。通常、変数ｘは、制約条件のセットに従い、実行可能な点のセットＳ内にある。
【００２４】
バイナリの組み合せ最適化問題において、コスト関数は、通常、ストリング∈｛０，１｝ｎ中のｎビットのサブセットＱ⊆［ｎ］だけを含む項の和として表すことができる。コスト関数Ｃは、ｘｉ∈｛０，１｝且つ
【数３】
2021504805.tif 000005
に対し、正準形で、
【数４】
2021504805.tif 000006
として表される。最適化は、Ｃ（ｘ）が最小となるｎビットのストリングｘを見出すことに向けられる。
【００２５】
図３は、量子コンピュータ上に標準的な組み合せ最適化問題を表現する仕方を定義する、例示、非限定のシステムのブロック図を示す。一般に、或るドメインから実数にマッピングする一般コスト関数３０２（例えば、バイナリ・ストリングを求めるバイナリの組み合せ最適化問題）を考えると、多くのかかるコスト関数は、通常、追加的制約条件３０４を有することが分かる。これらの制約条件は、ヘルパー関数で構築され、これら関数は、一般的に、一般コスト関数を、他のヘルパー関数に対するペナルティ項によって修改する（ブロック３０６）。本明細書で説明するように、この修改されたコスト関数は対角ハミルトニアン・コスト関数３０８（対角マトリックス）にマップされ、該マトリックスは、当初の問題に基づいて、対角のエントリを設定し、これも本明細書で説明するように、これはパウリＺ項によって表現される。
【００２６】
しかして、このコスト関数は、あらゆるＣに対し、計算ベースで対角ハミルトニアンを構築することによって、量子問題にマップされる。コスト関数Ｃ（ｘ）に関連付けられた問題ハミルトニアンＨＣは、
【数５】
2021504805.tif 000007
として定義され、上式のｘ∈｛０，１｝ｎは計算ベースの状態｜ｘ〉∈Ｃｄを標識し、ｄ＝２ｎである。このとき、量子最適化のタスクは、量子状態の変分サブクラスΩから、ＨＣのエネルギを最小化する状態｜ψ〉∈Ω⊂Ｃｄを見出すことである。
〈ψ｜ＨＣ｜ψ〉を最小化せよ
制約条件  ｜ψ〉∈Ω。
【００２７】
図３から見取れるように、バイナリの最適化問題は、Ωを特定するパラメータの制御の容易なセットに依拠する、許容可能な量子状態上の最適化問題に転換されている。この式を最小化する状態は、｜ψ＊〉で表されている。後記で、本明細書に記載の算式、式１〜式４（および付随するテキスト〉を参照しながらさらなる詳細を説明する。
【００２８】
ハミルトニアン最適化問題にマップされた標準的な最適化問題を示す図４〜６を考察すると、連続するパラメータのセットに依拠する短奥行きの回路が生成されている。一般に、また本明細書説明するように、これは、或る特定の状態（ブロック４０４）を生成する連続的なパラメータのセット（４０２）の初期の推測を取り、ハミルトニアンをパウリＺ項の和として書き込むことによって達成される。一般に、これは状態情報を取得し平均することによって、すなわち、当該状態からサンプルし／それらのパウリを平均する（ブロック４０６および４０８、何回かの反復のためブロック４０４にループ・バックする）、または、言い換えれば、それらのパウリを測定し、平均値を得てその平均測定値を返して伝達する（ブロック４１０）ことによって達成される。
【００２９】
図５中の例示の量子回路を参照しながら試行状態を考察すると、ユニタリの状態もつれ（Ｕｅｎｔ）が、例示の短奥行きの回路５００中に表現されているように、量子コンピュータ上に表現される。短奥行きの回路５００は、もつれゲート５０２および５０４などを備えた超伝導量子コンピュータ上に表現することができる。Ｕｅｎｔは集合ゲートを表す。もつれゲートを構成するために、キュービットをもつれさせるマイクロ波パルスが使われる。これらのもつれゲートは、多数のキュービットに作用する交差共鳴ゲートであり、（どの位多くの交差共鳴ゲートの相互作用が必要かを示す）奥行きパラメータなど、特定の諸パラメータに依拠し得る。なお、かかる標準的パラメータは、しかして状態Ｕｅｎｔのファミリを規定する。このさらなる詳細は、式８、９、および１０、ならびにこれらに付随するテキストを参照しながら提供する。ユニタリもつれＵｅｎｔは、かくして交差共鳴ゲート（一般に、式１０、１１、および１２で定義される）および超伝導量子コンピューティング・チップから生じる。なお、これは非限定の例であって、もつれを生じさせる他のゲートを代わりに使ってもよい。
【００３０】
もつれゲート５０２および５０４は集合ゲートであり、その中では全てのキュービット（または奥行きパラメータに対応する何らかの事前設定されたサブセット）が同時にもつれさせられ、コヒーレントで系統的なエラーが起こると想定される。一態様は、最大平均同時発生を生じさせるために、最適化プロトコル中の集合ゲート・オペレーションを選択する。このアルゴリズムは、オンチップ交差共鳴ハミルトニアン、および最適化問題に対するコヒーレントで系統的なエラーを修正する変分パラメータに基づいて、コヒーレントなゲート・エラーを自己修正する。
【００３１】
図４に戻って、エネルギを測定するブロック４０８は、図６のエネルギの測定に対するフロー図を全体的に表す。本明細書に記載のように、ブロック６０２で、ハミルトニアンは、パウリ項（Ｐα）と実数値（ｈα）との組み合せとして与えられる。これらアルファ群の各々（ブロック６０４および６０８）に対し、個別のパウリの期待値が測定され（ブロック６０６）、次いで加算されて（ブロック６１０）、最終的なエネルギが得られる（ブロック６１２）。
【００３２】
見取れるように、係数と対〈つい〉になったパウリ演算子のセットがある。パラメータが選択され、個々の量子状態に対するパウリ演算子の結果は、ｈαのウェイト（期待値の前の実数）が合計エネルギに加算されて、平均値が得られるまで複数回測定される。この出力は、これらの個別の測定値の和である。さらなる詳細は、式１５および６（ならびに付随するテキスト〉を参照しながら説明する。
【００３３】
初期のパラメータに依拠するエネルギ値が得られ、量子デバイス中に投入されたならば、全面的な最小化スキームを行うことができる。要約するため、制御パルスが点在する量子ハードウェアの物理時間発展によって生成された試行状態｜ψ〉のセットを考えてみよう。これらの試行状態Ωはハードウェア効率的な試行状態と言われる。制御された物理時間発展は、Ｃｄ中のいかなる状態も原理的に生成が可能であるという点において普遍的である。量子コンピュータを使って、計算ベース｜ｘ〉での最適状態｜ψ〉＊からサンプリングがされ、バイナリの最適化問題への良好な近似を提供するビット・ストリングｘが得られ、標準的な最適化ルーティンに供給するため、試行状態｜ψ〉∈Ωに対する量子コスト関数Ｅ＝〈ψ｜ＨＣ｜ψ〉が測定される。
【００３４】
図７は、パラメータの初期の推測から開始し、制御パラメータのセット（ブロック７０４）とともにハミルトニアン（ブロック７０２）を提供する、１つのかかる標準的な最適化ループを示す。ブロック７０６は、制御パラメータの初期の推測を提供する。ブロック７０４、７０８、７１０、および７１２は、図４中のエネルギ値出力を得るための測定ループを表し、このループにおいて、該エネルギ値は、制御パラメータの新しく提起された更新セットにマップされ、望ましいレベルへの収斂状態に達するまでこれが行われる。なお、この制御パラメータの新規のセットは、例えば、シミュレーテッド・アニーリング、確率勾配など、連続変数に対しどのような標準的最適化ルーティンが使われているかによって決まる。
【００３５】
一般に、ブロック７１０は、エネルギが大きく変化しない収斂状態に対するチェックを行う（但し、実験は続けて実行されてよい）。収斂状態で、ブロック７１４は、関連する対応最適制御パラメータとともに、エネルギ値を出力する。これは、１つの所与のハミルトニアンをローカルに最小化し、最適制御パラメータの初期の推測に基づいて、当該制御パラメータを見出す。
【００３６】
図８に一般的に表されているコスト関数の変形を考察すると、この量子最適化問題は、部分的に標準的オプティマイザに依拠しているにもかかわらず、その最適化問題は、元の標準的問題Ｃとは異なることに留意する。その理由は、これが（おそらくは）より少ない数のパラメータによる量子状態のクラス上だけにあるからである。図８は、解答が判明しているものも含むハミルトニアンのファミリを選択することで開始される〈ブロック８０２〉。すなわち、このオペレーションは、単純な（小さな）ハミルトニアン、および、初期の推測が十分に正確になるように適正に選択された制御パラメータによって開始される。オペレーションは、この小さなハミルトニアンおよび適正な初期の推測から、解決対象の標準的最適化問題のコスト関数に対応する、最小であることを求められるハミルトニアンに達するまで、（当該量子最適化問題からサンプリングすることによって）漸進的に当該ハミルトニアンを変形する。
【００３７】
図８は、ｓ＝０から１までε）を増分しながら、（ｓ−ε）で前回のｓ値に対し見出された新規の制御パラメータを入力し（ブロック８０４）、見出された値を変形する（ｓ＝１になるまで、ブロック８０６）ことによって、（図７と同様な）ハミルトニアンのファミリを最小化する。言い換えれば、これらの制御パラメータが入力され（例えば、図７中のループを介して）最小化され、初期にφ０，θ０が入力され、変形されたハミルトニアンＨが、このローカル最適化ループ〈ブロック８０４、８０６、８０８、および８１０〉を実行する。
【００３８】
しかして、ここでの説明は、基底状態が判明している小さなハミルトニアンから開始してハミルトニアンのファミリを変形し、望ましいポイントに達するまで、変形を行う際にその基底状態を追跡することである。既知のパラメータのセットにより開始し、最適なパラメータの次のセットを見出すため、これらのパラメータに依拠するハミルトニアンを変形することによって、望ましいハミルトニアンに到達するまで、次の変形ハミルトニアンに対する次の最適化ループに次のセットが投入される。この時点で、当該最終ハミルトンに対する最終的最適パラメータが判明し、適正なビット・ストリングを得るためのサンプリングに使われる。
【００３９】
しかして、ｓ∈［０，１］に対し、コスト関数のファミリＥ（ｓ）＝〈ψ｜Ｈ（ｓ）｜ψ〉は、最適状態
【数６】
2021504805.tif 000008
および
【数７】
2021504805.tif 000009
が判明している小さな試行状態から変形される。例として、次のｎビットに対するハミルトニアンのファミリ
【数８】
2021504805.tif 000010
およびあらゆる単一のサイトｉに作用するパウリ・スピン演算子
【数９】
2021504805.tif 000011
について考える。ここでの説明は、パラメータｓに対するコスト関数を、ｓ０＝０から開始し、次いで、ｓ＝１に達し、Ｅ（１）＝〈ψ｜ＨＣ｜ψ〉のオプティマイザが見出されるまで、ｓｋ＋１＝ｓｋ＋εでの次の最適化のための次の開始状態として最適
【数１０】
2021504805.tif 000012
を使って、最小化することである。
あらゆるステップで、実数値のコスト関数Ｅ（ｓ）＝〈ψ｜Ｈ（ｓ）｜ψ〉を評価するために量子ハードウェアが用いられる。
【００４０】
なお、この最適化のために使われる量子システムへのアクセス、およびこの量子コスト関数を最適化する方法へのアクセスは、インターネットを介して得ることができる。例えば、このルーティンがクラウド中でアクセスされるように、インターフェースを設けることが可能である。
【００４１】
小さなシステム・サイズで、式（１８）中のハミルトニアン・ファミリに対する、２つのもつれステップＵｅｎｔおよび単一キュービット・ローテーション
【数１１】
2021504805.tif 000013
の２つのセットの奥行きｄ＝２の回路に対しては数値的調査が行われている。２つの頂点および対応するＮ＝２キュービットのハミルトニアンを備えたグラフに対する、最適化された評価確率
【数１２】
2021504805.tif 000014
が、ｓ∈［０，１］について図９に描かれている。３つの頂点の例のグラフが図１０に、および４つの頂点のグラフが図１１に示されている。これらローカル・パラメータは、標準的なシミュレーテッド・アニーリング技法を用いて最適化された。
【００４２】
なお、図９〜１１は、後記で説明する組み合せ最適化問題ＭａｘＣｕｔのインスタンス上の２〜４キュービットによるシステムに対するものである。一般に、これらグラフは、最小化ビット・ストリングをそれからサンプリングを行う初期の重ね合わせから開始し、最後に適正なビット・ストリングへの集束が開始されるまで、漸次に変形する、或る特定のビット・ストリングの符号化を表している。これには、ほとんど均一な結果をもたらす早期の測定が例示されているが、コスト関数が望ましいものに向かって変形されるにつれ、これらウェイトの集束が見られる。
【００４３】
数式を含めさらなる詳細を考察すると、バイナリの組み合せ最適化問題において、コスト関数
【数１３】
2021504805.tif 000015
は、通常、ｘｉ∈｛０，１｝および
【数１４】
2021504805.tif 000016
に対し、正準形で
【数１５】
2021504805.tif 000017
として表され、通常、Ｑの大きさはｎに比べて小さい。ｎビット・ストリングｘ∈｛０，１｝ｎを見出すのがタスクであり、これに対してＣ（ｘ）は外部である。或る問題は、ビット・ストリングへの追加の制約条件を付けてＣを最適化することを求めることかもしれない。例を示すために、以下の「巡回セールスマン問題」を考えてみる。変数ｘに対する追加の制約条件は、制約関数の形で表すことができる。
【数１６】
2021504805.tif 000018
上式において、制約条件を実行するために、１・・・ｋに対し、
ｇｉ（ｘ）＝０                                  （３）
かかる制約条件は、修改されたコスト関数
【数１７】
2021504805.tif 000019
に対して実行が可能であることが周知であり、Ａｉ＞＞ΔＣとなるように、
【数１８】
2021504805.tif 000020
が選択され、ΔＣは、Ｃの離散値の間の最小の差を表す。
【００４４】
この標準的問題は、コスト関数Ｃλ（ｘ）に関連付けられた量子ハミルトニアンＨＣに対し当てはめることが可能で、これは計算ベースで対角｜ｘ〉である。
【数１９】
2021504805.tif 000021
【００４５】
この最適化を量子ハミルトニアンとして表現するためには、該最適化をパウリＺ項の一次結合として表すのが便利である。これは、Ｃλ（ｘ）がｘの低次多項式の多項式である場合、直ちに達成することができる。この場合は、あらゆるバイナリ変数をｘｉ＝２−１（１−Ｚｉ）とする簡単な置換で十分である。このマッピングは、前述したように、図３に示されている。
【００４６】
例Ａ：ウェイト付きＭａｘＣｕｔ
ＭａｘＣｕｔは、クラスタ化、ネットワーク科学、および統計物理を応用するＮＰ完全問題である。この問題の公式の定義は以下による。
【００４７】
ｎのノードの無方向グラフＧ＝（Ｖ，Ｅ）を考えてみる。ここで｜Ｖ｜は（ｉ，ｊ）∈Ｅに対しエッジ・ウェイトｗｉｊ＞０の｜Ｖ｜＝ｎである。カット（ｃｕｔ）は、当初のセットＶの２つのサブセットへの分割として定義される。この場合、最適化対象のコスト関数は、２つの異なるサブセット中のエッジ接続点のウェイトの和である。ｘｉ∈｛０，１｝またはｘｉ＝１に対し、包括的コスト関数を最大化することを試みる。
【数２０】
2021504805.tif 000022
このｗｉｊは実数である。ｘｉ＝２−１（１−Ｚｉ）を代入することによってイジング・ハミルトニアンへのマッピングを行う。このとき、ハミルトニアンのコストＨＣは、
【数２１】
2021504805.tif 000023
によって与えられ、ｃｏｎｓｔ（定数）＝Σｉ＜ｊｗｉｊ／２＋Σｉｗｉ／２である。この定数は関係ないので、重み付きＭａｘＣｕｔ問題は、イジング・ハミルトニアンを最小化することに等しい。
【数２２】
2021504805.tif 000024
【００４８】
例Ｂ：巡回セールスマン問題
制約条件付きの最適化問題のマッピングを例示するために、ここで、巡回セールスマン問題（ＴＳＰ：Ｔｒａｖｅｌｉｎｇ  Ｓａｌｅｓｍａｎ  Ｐｒｏｂｌｅｍ）について説明する。グラフのノード上のＴＳＰは、ｎ＝｜Ｖ｜のノードおよび距離ｗｉｊ（頂点ｉから頂点ｊへの距離）を有するグラフＧ（Ｖ，Ｅ）中の最短のハミルトニアン・サイクルを見出すことを求める。ハミルトニアン・サイクルは、Ｎ２個の変数ｘｉ，ｐで表すことができ、このｉはノードを表し、ｐは予測されるサイクル中のその順番を表す。ノードｉ、時間順序ｐで解答が得られれば、決定変数は値１を取る。このサイクル中ではあらゆるノードが一度出現し、毎回１ノードが存在しなければならない。これは２つの制約条件を取る。
【数２３】
2021504805.tif 000025
【００４９】
予測される順番中のノードに対し、ｘｉ，ｐおよびｘｊ，ｐ＋１の両方が１の場合、
【数２４】
2021504805.tif 000026
であれば、エネルギ・ペナルティがあるはずである（グラフ中では連結されていない）。このペナルティの形は、
【数２５】
2021504805.tif 000027
であり、ハミルトニアン・サイクルの境界条件は、（ｐ＝Ｎ）≡（ｐ＝０）である。但し、ここで、完全に連結されているグラフはこの項を含まないものとする。最小化される必要がある距離は、
【数２６】
2021504805.tif 000028
となる。
【００５０】
これらの追加の制約条件に対応するために、コスト関数は修改され、最小化の対象となる単一の目的関数に結合される。
【数２７】
2021504805.tif 000029
上式のＡは自由パラメータである。これらの制約条件を順守されるように、このパラメータは十分に大きくする必要がある。これをするための１つの仕方は、Ａ＞ｍａｘ〈ｗｉｊ〉となるようにＡを選ぶことである。さらに、この問題は、セールスマンが当初の町に戻ることを許しているので、一般性を失わずに、ｘ００＝１，ｘｉ０＝０∀ｉ≠０、およびｘ０ｐ＝０∀ｐ≠０に設定することが可能である。これを行うことによって目的関数は、
【数２８】
2021504805.tif 000030
となる。
【００５１】
ｘｉ＝２−１（１−Ｚｉ）の置換によって拘束のない問題が量子ハミルトニアンにマップされ、イジング型ハミルトニアンを最小化することによって解答が見出されることになる。
【００５２】
しかして、ここで考察したこの問題は、問題ハミルトニアンＨにマッピングすることができる。基底状態エネルギＥｍｉｎの値の良好な近似を算定するか、もしくはハミルトニアンの基底状態の短奥行きの近似｜ψｍｉｎ〉からサンプリングするのがゴールである。Ｅｍｉｎの正確な見積もりまたは｜ψｍｉｎ〉の正確な形成は、理論的論拠の複雑さによって一般的には可能でなかろう。しかして、ここでの焦点は、上記の両方の近似を形成するアルゴリズムである。
【００５３】
例えば、ローカルな単一キュービット・ローテーション
【数２９】
2021504805.tif 000031
であって、
【数３０】
2021504805.tif 000032
によってパラメータ化された、該ローテーションから成る、図５に示されたような、ｄの反復ドリフト・ステップの回路を適用することによって、量子状態
【数３１】
2021504805.tif 000033
を形成するために、Ｎのキュービットを備える超伝導チップなど、コヒーレントに制御可能な量子機械システムが使用される。
【００５４】
さらに、
【数３２】
2021504805.tif 000034
のもつれ相互作用を適用でき、これはあらゆるσ（α）∈ＰＮに対し、いくつかの実数パラメータ
【数３３】
2021504805.tif 000035
に依拠している。ユニタリ
【数３４】
2021504805.tif 000036
をもつれさせるための複数の選択肢があり、考えられた試行状態は、既知の量子近似最適化アルゴリズム状態も一般化と見なすことができ、これらユニタリは、
【数３５】
2021504805.tif 000037
であり、Ｕ（θｉ，ｔ）＝ｅｘｐ（ｉθｔｘｉ）となるように、
【数３６】
2021504805.tif 000038
に追加の制約が課される。なお、
【数３７】
2021504805.tif 000039
に対するもっと一般的なイジング型の結合グラフを考慮するためにこれらの制約を緩和することが可能で、これは必ずしも問題のハミルトニアンＨＣに対応している必要はない。
【００５５】
なお、これらの相互作用はここで検討されている超伝導回路に特有のものではない。限定でなく、本方法を示す例として、公差共鳴ゲートの適用を考えることとし、これは、２つのローカルの効果的ハミルトニアンによってキュービットｋとｌとの間のもつれのユニタリが生成され、これは
ｈｋ，ｌ＝ａＺｋ＋ｂＺ１＋ｃｋ，ｌＺｋＺｌ＋ｄｋ，ｌ（１−ｅｋ，ｌ）Ｘｋ＋ｄｋ，ｌｅｋ，ｌＸｋＺｌ                （１１）
で与えられる。
【００５６】
パラメータａ、ｂ、ｃｋ，ｌ、ｄｋ，ｌ、ｅｋ，ｌは超伝導回路の実際のハードウェアによって決まる。これは、自然ドリフト発展Ｋが、例えば、
【数３８】
2021504805.tif 000040
によって与えられることを意味し、この式のＪｋ，ｌ〈θｔ〉は、実験によって調整することが可能である。
【００５７】
この「バングバング」制御状態は、もつれを生じさせるためのＫの制御パルスの後続の反復および共ドリフト時間の最大セットに限れば、物理的量子ハードウェア上で形成が可能な最も一般的状態に対応する（図５）。既知の量子近似最適化アルゴリズムへの一般的アプローチのためには、バングバング制御パルスを印加することによって、ｈｋ，ｌから相互作用ＺｌＺｍが効果的に生成されなければならず、これは、回路の奥行きを拡張し、制御パラメータの変動を制限することによって、追加的コヒーレント・エラーの導入を許す。対照的に、本明細書の説明では、本来的ドリフト・ハミルトニアンの存在下で制御パルスを直接に最適化する。言い換えれば、２ゲートの相互作用を求め、望ましいゲートの対を見出すためにそれらを高精度で細かく制御する代わりに、最適化アルゴリズムの一部として、ゲートのより大きなセット（Ｕｅｎｔ集合ゲート）の最適化を同時に行う。すなわち、２つのゲートでなく、過多および過少ローテーションを是正し、しかしてコヒーレントなゲート・エラーの自己修正を提供するため、個々の単一キュービット・マイクロ波制御パルスを送り込むことが可能な１つの大きなもつれゲートとして、相互に「作用し合う」キュービットの全セットに亘って式（１１）が基本的に実装される。ドリフト｛ｈｋｌ｝のセットは単一の制御パルスＵｌｏｃ（θ）とともに普遍的であることが知られているので、このようにして十分な回路奥行きによって任意の状態を形成することが可能である。
【００５８】
前述したように、最適化問題は、量子イジング型モデルにマップされる。前に説明したように、コスト関数の断熱変形を行うためには、もっと一般的なハミルトニアンを考案する必要がある。すなわち、Ｚベースで必ずしも対角でないハミルトニアンの基底状態を構築する必要がある。一般に、ハミルトニアンが、いくつかの多キュービットのパウリ演算子の和、
【数３９】
2021504805.tif 000041
に分解できると仮定する。
【００５９】
限定でなく、説明のための例として、任意の２つのボディ・スピン・カップリング
【数４０】
2021504805.tif 000042
を備えた横イジング・モデルに対するパウリ分解を考えてみる。
【００６０】
なお、これは、ハミルトニアンＨの連結性に制限されることなく、完全に非ローカルのパウリ演算子Ｐαを考えることも可能である。というのは、これはハミルトニアンをハードウェアに直接実装するために計画されたものでなく、むしろ、実験的に制御される試行状態のセット上の個々のパウリ演算子を測定するためのものだからである。
【００６１】
このとき、Ｈのエネルギは、まず
【数４１】
2021504805.tif 000043
を形成し、次いで全てのαについて、個別のσ（α）に対する期待値をサンプリングすることによって、直接に測定することが可能である。次いでこの期待値は、
【数４２】
2021504805.tif 000044
として計算される。
【００６２】
個別のパウリ測定値
【数４３】
2021504805.tif 000045
からハミルトニアンの期待値が
【数４４】
2021504805.tif 000046
として計算される。
【００６３】
Ｍを、反復する形成および測定のセットアップ〈図４〉による独立した等しく分布するサンプルの測定と考え、式８中の変化する試行状態がＭ回形成され、パウリ演算子が直接に測定されるとする。サンプルの数Ｍの限界を得るために、漸近統計を考え、分散による信頼区間を推定する。これは、エラーがεになるまで、期待値
【数４５】
2021504805.tif 000047
を再生することになるいかなる測定も、少なくともＭ≧Ｑ（ε−２−２ＶａｒＥ）のサンプルを形成するはずであり、このＶａｒＥは当該測定スキームのエネルギの分散を示す。
【００６４】
最適パラメータ値
【数４６】
2021504805.tif 000048
に集束する標準的最適化ルーティンが必要とされている。適用可能ないくつかの選択肢が存在する。限定でなく例として、１つのアプローチは、コスト関数
【数４７】
2021504805.tif 000049
に対しシミュレーテッド・アニーリングを行うことである。他の代案には、ＳＰＳＡ［スポール］傾斜降下アルゴリズム、またはネルダーミード［ＮＭ：Ｎｅｌｄｅｒ−Ｍｅａｄ］アルゴリズムが含まれる。これは、ハミルトニアンＨに対する
【数４８】
2021504805.tif 000050
のエネルギの最小化への直接的アプローチを構成することになろう。これは、コスト関数
【数４９】
2021504805.tif 000051
による標準的最適化ルーティンに対応しており、この関数は量子コンピュータ上で直接計算されることになる。このアプローチは、Ｅｍｉｎの最適エネルギ近似
【数５０】
2021504805.tif 000052
を見積もり、状態
【数５１】
2021504805.tif 000053
を形成するための制御パラメータを提供し、この近似は、真の状態｜ψｍｉｎ〉に対する最善の見積もりである。
【００６５】
直接の最小化アプローチは次にステップによる。
１．ｔ＝０に対して、初期パラメータ
【数５２】
2021504805.tif 000054
を用意する。
２．以下のステップをＭ回繰り返す。
（ａ）量子コンピュータ上に状態
【数５３】
2021504805.tif 000055
を形成し、この状態でのパウリσ（α）を測定する。
（ｂ）次いで、期待値
【数５４】
2021504805.tif 000056
を得るため、そのサンプルを加算する。
３．次に、ｔ→ｔ＋１に設定し、標準的最適化スキームに基づいて、パラメータ
【数５５】
2021504805.tif 000057
の新規セットを提起する。
４．最適値
【数５６】
2021504805.tif 000058
に集束するまでこれを反復する。
【００６６】
また一方、あまり直接的でないルートを考えるのが好ましい可能性のあるシナリオもあり得る。例えば、異なったアプローチに、仮想ハミルトニアンの断熱的変換を追求するやり方がある。なお、
【数５７】
2021504805.tif 000059
を直接に最小化する標準的最適化問題は、当初のコスト関数を直接に最小化するよりも簡単でない可能性が高い。このコンテキストにおいて、パラメータｓ∈［０，１］に依拠するコスト関数の変形を説明する。すなわち、ハミルトニアンＨ（ｓ）のファミリは、初期ハミルトニアンＨ（０）＝Ｈ小と最終的ハミルトニアンＨ（１）＝ＨＣとの間の補間と見なされる。
Ｈ（ｓ）＝（１−ｓ）Ｈ小＋ｓＨＣ            （１７）
の形で与えることができる。
【００６７】
なお、Ｈ（０）、Ｈ（１）に対する条件が合致している限りにおいて、Ｈ（ｓ）に対する他の選択肢も可能である。Ｈ小の選択は、初期状態の基底状態に対するパラメータ
【数５８】
2021504805.tif 000060
の最適セットが既知であり、｜Ｇ０〉＝Ｅｍｉｎ（０）｜Ｇ０である、基底状態
【数５９】
2021504805.tif 000061
が容易に構築できるように行われる。
【００６８】
非限定の例示目的のため具体的な例を提供するため、頂点のセットＶおよびエッジのセットＧによるグラフＧ＝（Ｖ，Ｅ）に対するＭａｘＣｕｔ問題を考えてみる。この問題は、式（７）中のイジング・ハミルトニアンＨＣのエネルギの最小化にマップされる。小さな初期のハミルトニアンとして、Ｈ小＝−Σｉ∈ＶＸ、すなわち、グラフＧ上の横磁場モデルを選択する。このとき、簡単な補間ファミリが
【数６０】
2021504805.tif 000062
によって与えられる。
【００６９】
初期状態は
【数６１】
2021504805.tif 000063
である。この選択は、式（８）中の試行状態で、相互作用ハミルトニアン・パラメータであるベクトルφを、全てのＫ＝０として、および単一キュービットローテーション・パラメータであるベクトルθを、ユニタリの第一層が
【数６２】
2021504805.tif 000064
で与えられるように設定することによって容易に実現される。
【００７０】
ｓ∈［０、１］に対し、ハミルトニアン・ファミリＨ（ｓ）は、標準的コスト関数Ｅ（ｓ）のファミリに導かれ、これは、図４および５を参照して前述した測定によって量子コンピュータ上で計算される。コスト関数
【数６３】
2021504805.tif 000065
は、基底状態エネルギの近似Ｅ０，Ｅ１の間を補間し、ステップｓ毎に、図７を参照して前述した標準的なミニマイザを用いて、パラメータを最小化する変形されたパスに沿って、パラメータ
【数６４】
2021504805.tif 000066
を更新する。
【００７１】
この方法は、初期パラメータ
【数６５】
2021504805.tif 000067
で開始され、次いで、次の最小化のための開始点として最適値
【数６６】
2021504805.tif 000068
を使い、パラメータのＴ値、０＝ｓ０＜ｓ１＜ｓ２＜・・・＜ｓＴ＝１に対するスケジュールをたどる。すなわち、
１．Ｔ値、０＝ｓ０＜ｓ１＜ｓ２＜・・・＜ｓＴ＝１を選び、
【数６７】
2021504805.tif 000069
としてｓ０＝０に対する初期の最適パラメータを形成する。
２．１≦ｔ≦Ｔに対し、以下を繰り返す
（ａ）ハミルトニアンＨ（ｓｔ）を設ける
（ｂ）初期パラメータを
【数６８】
2021504805.tif 000070
に設定する。
（ｃ）Ｈ（ｓｔ）および
【数６９】
2021504805.tif 000071
に対し、最適化方法（図１）を実行する
３．最適パラメータ
【数７０】
2021504805.tif 000072
およびエネルギＥｓＴを伝達する
４．ＥｓＴに相当するＨＣのエネルギを提供する良好なビット・ストリングを得るため、計算ベースで複数回、状態
【数７１】
2021504805.tif 000073
を形成し、サンプリングする。
【００７２】
かかる変形の導入は、パラメータ
【数７２】
2021504805.tif 000074
のウォームスタートを行うので、標準的最適化方法の集束を改善することが期待される。ｓ∈［０，１］に対し、式（１８）中のハミルトニアンＨＭａｘＣｕｔ（ｓ）のファミリを考える。なお、他のソリューションでは、多ノイズ量子アニーリングをエミュレートする完全に標準的な方法が提案されている。この標準的モデルは、プロダクト試行状態の非常に制限されたクラス
【数７３】
2021504805.tif 000075
を考慮することによって、本明細書に記載のフレームワーク内で得ることができる。
【００７３】
本明細書に記載された技術は、
【数７４】
2021504805.tif 000076
が標準的仕方で計算可能であることを提供し、コスト関数を
【数７５】
2021504805.tif 000077
に低減する。
【００７４】
このコスト関数は、既知の標準的モデルに対応する。またこれと対照的に、本明細書に記載の技術は、より高い奥行きを有し実際にもつれを用いる試行波動関数
【数７６】
2021504805.tif 000078
としての変分量子回路への考慮にも対応する。
【００７５】
見取れるように、本明細書は、組み合せ最適化問題に対する短奥行きの回路の具体化について説明している。本技術は、連続パラメータに対する標準的最適化問題にマッピングすることができ、当該分野で既知のソリューションから変形を介して結果が得られる。交差共鳴ゲートが当該状態を生成し、これは、サンプリングの前にそれが状態の適正なクラス内にあるようにその状態を調整する。しかして、標準的コスト関数を最小化し、回路を適用して出力を生成し、エネルギ関数（これは当該回路上のコスト関数である）を測定することによって、本技術は、標準的最小化問題を介して、回路上のパラメータを最小化するよう試みる。判明したならば、サンプルが採取され、これは、解決対象の組み合せ最適化問題への近似解である。
【００７６】
図１２は、例えば、コンピュータ実行可能なコンポーネントを格納するメモリ、およびメモリ中の格納されたコンピュータ実行可能コンポーネントを実行するプロセッサを介して、最適化問題の解決を促進するシステム１２００の表現である。ブロック１２０２は、最適化問題を許容量子状態上の最適化問題中に（例えば、マッピング・コンポーネント１０４によって）マッピングするため、１つ以上の制約条件に基づいてコスト関数をハミルトニアンにマッピングする、マッピング・コンポーネントを表す。ブロック１２０４は、（例えば、試行状態および評価コンポーネント１０７によって）量子ハードウェアのキュービットをもつれさせるための制御パルスが点在する該量子ハードウェアの物理時間発展によってハミルトニアンに対応する試行状態を生成し、最適値をもたらす試行状態を判定するためにその試行状態に対する量子コスト関数を評価する、試行状態および評価コンポーネントを表す。
ブロック１２０６は、最適状態を見出すために、（例えば、変形コンポーネント１１８によって）ハミルトニアンを変形ハミルトニアンに変形し、望ましいハミルトニアンに対するオプティマイザが算定されるまで、変形されたハミルトニアンに対する次の最適化のための次の開始状態としてその最適状態を用いる、変形コンポーネントを表す。
【００７７】
諸態様は、組み合せ最適化問題の１つ以上の近似を得るために、オプティマイザに対応する最適状態からサンプリングをするサンプリング・コンポーネントを含むことができる。他の態様は、マッピング・コンポーネントと相互作用し、最適値をもたらす試行状態を出力するインターフェースを含むことができる。試行状態および評価コンポーネントは、諸試行状態の個々のパウリ演算子を測定することができる。
【００７８】
図１３は、一般に量子ハードウェアを使って組み合せ最適化問題の解決を促進することを対象とする例示のオペレーションを表すフロー図である。諸態様は、組み合せ最適化問題に関連付けられたコスト関数を、そのコスト関数に対する量子ハミルトニアンを構築するステップも含め、許容量子状態上の最適化問題にマッピングするステップ（ブロック１３０２）を含む。他の態様は、制御パルスが点在する量子ハードウェアの物理時間発展によって試行状態のセットを生成するステップ（ブロック１３０４）と、それら試行状態に対する量子コスト関数を評価するステップ（ブロック１３０６）と、最適値をもたらす試行状態を判定するステップ（ブロック１３０８）と、最適の状態を見出すためにハミルトニアンを変形し、望ましいハミルトニアンに対するオプティマイザが算定されるまで、変形されたハミルトニアンに対する次の最適化のための次の開始状態としてその最適状態を用いるステップ（ブロック１３１０）と、を含む。
【００７９】
諸態様は、もつれを生じさせるため制御パルスを用いるステップを含め、制御パルスが点在する量子ハードウェアの物理時間発展によって試行状態のセットを生成するステップを含むことができる。
【００８０】
コスト関数に対する量子ハミルトニアンを構築するステップは、対角量子ハミルトニアンを構築するステップを含んでよい。コスト関数に対する量子ハミルトニアンを構築するステップは、量子ハミルトニアンをパウリＺ項の一次結合として表現するステップを含んでよい。
【００８１】
バイナリの組み合せ最適化問題に関連付けられたコスト関数をマッピングするステップは、そのコスト関数を近似量子コンピュータ上のキュービット表現にマッピングするステップを含んでよい。試行状態に対する量子コスト関数を評価するステップは、それら試行状態上の個々のパウリ演算子を測定するステップを含んでよい。
【００８２】
諸態様は、組み合せ最適化問題への近似解を得るために、オプティマイザに対応する最適状態からサンプリングを行うステップを含むことができる。この組み合せ最適化問題はバイナリの組み合せ最適化問題を含むことができ、諸態様は、バイナリの最適化問題への近似解を提供するビット・ストリングを得るために、オプティマイザに対応する最適状態からサンプリングを行うステップを含むことができる。
【００８３】
電子デバイス中への実装などの他の態様は、組み合せ最適化問題に関連付けられたコスト関数を１つ以上の制約条件に基づいて許容量子状態上の最適化問題にマップし、そのコスト関数に対する量子ハミルトニアンを構築する、マッピング・コンポーネントを含むことができる。電子デバイスは、マイクロ波制御パルスが点在する量子ハードウェアの物理時間発展によって、試行状態のセットを生成し、それら試行状態に対する量子コスト関数を評価し、最適値をもたらす試行状態を判定する量子回路を含む、試行状態および評価コンポーネントをさらに含むことが可能である。電子デバイスは、最適状態を見出すために、量子ハミルトニアンを変形ハミルトニアンに変形し、望ましいハミルトニアンに対するオプティマイザが算定されるまで、変形されたハミルトニアンへの次の最適化に対する次の開始状態としてその最適状態を用いる、変形コンポーネントをさらに含むことができる。
【００８４】
量子回路は、もつれを生じさせるために制御パルスを用いることが可能である。コスト関数に対する量子ハミルトニアンを構築するマッピング・コンポーネントは、対角量子ハミルトニアンを構築することができ、量子ハミルトニアンをパウリＺ項の一次結合として表すことができる。
【００８５】
マッピング・コンポーネントは、コスト関数を近似コンピュータ上のキュービット表現にマッピングすることができる。試行状態および評価コンポーネントは、試行状態上の個々のパウリ演算子を測定することができる。この電子デバイスは、最適化問題への近似解を提供するビット・ストリングを得るためのサンプリングをするサンプリング・コンポーネントをさらに含むことが可能である。
【００８６】
図１４中にオペレーションとして例示されている他の態様は、関連する開始制御パラメータを有する開始ハミルトニアンを取得するステップ（オペレーション１４０２）と、量子ハードウェアを使って、開始ハミルトニアンを、変形されたハミルトニアンに対する最適の制御パラメータに関連付けられた該変形ハミルトニアンに変形するステップ〈オペレーション１４０４〉とを含むことができる。諸態様は、量子ハードウェアを使って、望ましいハミルトニアンに達するまで、当該変形ハミルトニアンに関連付けられた制御パラメータによって、変形ハミルトニアンをさらなる変形ハミルトニアンとそれに関連付けられたさらなる最適制御パラメータとに反復して変形するステップ（オペレーション１４０６）と、望ましいハミルトニアンおよびその望ましいハミルトニアンに関連付けられた最適制御パラメータに対応する情報を出力するステップ〈オペレーション１４０８〉とを含むことができる。
【００８７】
諸態様は、組み合せ最適化問題への近似解を提供するデータを得るため、望ましいハミルトニアン、および該望ましいハミルトニアンに関連付けられた最適制御パラメータに対応する情報に基づいて、サンプリングするステップを含むことができる。他の態様は、もつれを生じさせる制御パルスが点在する量子ハードウェアの物理時間発展によって、試行状態のセットを生成するステップと、それら試行状態に対する量子コスト関数を評価するステップと、最適値をもたらす試行状態を判定するステップとを含むことが可能である。
【００８８】
バイナリの組み合せ最適化問題の解決を促進するコンピュータ・プログラム製品を提供することができ、このコンピュータ・プログラム製品は、具現化されたプログラム命令を有するコンピュータ可読ストレージ媒体を含むことが可能である。このプログラム命令はプロセッサによって実行可能であり、該プロセッサに、関連する開始制御パラメータを有する開始ハミルトニアンを取得させ、量子ハードウェアを使って、その開始ハミルトニアンを、当該変形ハミルトニアンに対する最適制御パラメータに関連付けられた変形ハミルトニアンに変形させる。他の命令は、量子ハードウェアを使って、変形されたハミルトニアンを、望ましいハミルトニアンに達するまで、当該変形ハミルトニアンに対する関連最適制御パラメータによって、さらに変形されたハミルトニアンおよびそれに関連付けられたさらなる最適制御パラメータに反復して変形し、望ましいハミルトニアンおよびその望ましいハミルトニアンに関連付けられた最適制御パラメータに対応する情報を出力することが可能である。
【００８９】
他の態様は、組み合せ最適化問題への近似解を提供するデータを得るため、望ましいハミルトニアンおよびその望ましいハミルトニアンに関連付けられた最適制御パラメータに対応する該情報に基づいてサンプリングをする命令を含むことが可能である。さらなる他の態様は、もつれを生じさせる制御パルスが点在する量子ハードウェアの物理時間発展によって試行状態のセットを生成し、それら試行状態に対する量子コスト関数を評価し、最適値をもたらす試行状態を判定する命令を含むことができる。
【００９０】
図１５中にオペレーションとして例示されているさらなる他の態様は、プロセッサに動作可能に連結されたシステムによって、関連する開始制御パラメータを有する開始ハミルトニアンを取得するステップ〈オペレーション１５０２〉と、ユニタリもつれゲートを含む量子ハードウェアを使って、開始ハミルトニアンから得られた変形ハミルトニアンのエネルギを見積もるために試行状態を生成するステップ（オペレーション１５０４）とを含む。諸態様は、開始ハミルトニアンに関連付けられた、試行状態に対する最適制御パラメータに基づいて変形されたハミルトニアンの新しい最適制御パラメータを見出すために、量子ハードウェアを使って変形ハミルトニアンのエネルギを反復して測定するステップ〈オペレーション１５０６〉と、変形されたハミルトニアンの新しい最適制御パラメータを新規の開始制御パラメータとして備える新規の開始ハミルトニアンとして該変形されたハミルトニアンを用いるステップを含め、最終の望ましいハミルトニアンへの変形が達成されるまで、繰り返される初期制御パラメータによって変形されたハミルトニアンを新しい変形ハミルトニアンに反復して変形するステップ（オペレーション１５０８）と、を含む。
【００９１】
本開示の主題の様々な態様に対するコンテキストを提供するために、図１６および付随する説明は、本開示の主題の様々な態様が実装可能な適切な環境の概要を提供することを意図している。図１６は、本明細書に記載の１つ以上の実施形態を促進することが可能な、例示、非限定の動作環境のブロック図を示す。簡潔性のため、本明細書に記載の他の実施形態中で用いられた同じ要素の繰り返しの説明は省略する。
【００９２】
図１６を参照すると、本開示の様々な態様を実装するために適した動作環境１６００は、コンピュータ１６１２を同様に含むことができる。また、コンピュータ１６１２は、処理ユニット１６１４、システム・メモリ１６１６、およびシステム・バス１６１８を含む。システム・バス１６１８は、これに限らないがシステム・メモリ１６１６と処理ユニット１６１４との間を含め、諸システム・コンポーネントを連結する。処理ユニット１６１４は、様々な利用可能なプロセッサのいずれでもよい。また、デュアル・マイクロプロセッサおよび他のマルチプロセッサ・アーキテクチャも、処理ユニット１６１４として用いることが可能である。システム・バスは、メモリ・バスまたはメモリ・コントローラ、周辺バスまたは外部バス、もしくは、以下に限らないが、業界標準アーキテクチャ（ＩＳＡ：Ｉｎｄｕｓｔｒｉａｌ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）、マイクロチャネル・アーキテクチャ（ＭＳＡ：Ｍｉｃｒｏ−Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ）、拡張ＩＳＡ（ＥＩＳＡ：Ｅｘｔｅｎｄｅｄ  ＩＳＡ）、インテリジェント・ドライブエレクトロニクス（ＩＤＥ：Ｉｎｔｅｌｌｉｇｅｎｔ  Ｄｒｉｖｅ  Ｅｌｅｃｔｒｏｎｉｃｓ）、ＶＥＳＡローカル・バス（ＶＬＢ：ＶＥＳＡ  Ｌｏｃａｌ  Ｂｕｓ）、周辺機器相互接続（ＰＣＩ：Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）、カード・バス、ユニバーサル・シリアル・バス（ＵＳＢ：Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、アドバンスト・グラフィクス・ポート（ＡＧＰ：Ａｄｖａｎｃｅｄ  Ｇｒａｐｈｉｃｓ  Ｐｏｒｔ）、ファイアーワイヤ（ＩＥＥＥ  １３９４）、および小型計算機システム・インターフェース（ＳＣＳＩ：Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍｓ  Ｉｎｔｅｒｆａｃｅ）を含め、任意の多様な利用可能なバス・アーキテクチャを用いたローカル・バスを含むバス構造体（単数または複数）のいくつかの種類のいずれかであってよい。
【００９３】
また、システム１６１６は、揮発性メモリ１６２０、および非揮発性メモリメモリ１６２２を含んでよい。立ち上げの過程などで、コンピュータ１６１２内の構成要素の間で情報を伝送する基本ルーティンを包含する、基本入力／出力システム（ＢＩＯＳ：ｂａｓｉｃ  ｉｎｐｕｔ／ｏｕｔｐｕｔ  ｓｙｓｔｅｍ）は、非揮発性メモリ１６２２中に格納される。また、コンピュータ１６１２は着脱型／固定型、揮発性／不揮発性のコンピュータ・ストレージ媒体を含む。例えば図１６にはディスク・ストレージ１６２４が示されている。また、ディスク・ストレージ１６２４は、以下に限らないが、磁気ディスク・ドライブ、フレキシブル・ディスク・ドライブ、テープ・ドライブ、Ｊａｚドライブ（Ｒ）、Ｚｉｐドライブ（Ｒ）、ＬＳ−１００ドライブ（Ｒ）、フラッシュ・メモリ・カード、またはメモリ・スティックなどのデバイスを含んでよい。ディスク・ストレージ１６２４は、ストレージ媒体を別々にまたは他のストレージ媒体と組み合せて含んでもよい。ディスク・ストレージ１６２４のシステム・バス１６１８への連結を円滑にするために、通常、インターフェース１６２６など、着脱型または固定型インターフェースが用いられる。また、図１６には、ユーザと、適した動作環境１６００中に表された基本的コンピュータ・リソースとの間の仲介としての役割をするソフトウェアが描かれている。また、かかるソフトウェアは、例えば、オペレーティング・システム１６２８を含むことができる。オペレーティング・システム１６２８は、ディスク・ストレージ１６２４に格納することができ、コンピュータ１６１２のリソースを制御し割り当てる機能を果たす。
【００９４】
システムのアプリケーション１６３０は、例えば、システム・メモリ１６１６中もしくはディスク・ストレージ１６２４上に格納されたプログラム・モジュール１６３２およびプログラム・データ１６３４を介して、オペレーティング・システム１６２８によるリソースのマネジメントを利用する。当然のことながら、本開示は、様々なオペレーティング・システムまたはオペレーティング・システムの組み合せとともに実装することが可能である。ユーザは、入力デバイス（単数または複数）１６３６を介して、コンピュータ１６１２の中にコマンドまたは情報を入力する。入力デバイス１６３６は、以下に限らないが、マウスなどのポインティング・デバイス、トラックボール、スタイラス、タッチ・パッド、キーボード、マイクロフォン、ジョイスティック、ゲーム・パッド、衛星受信アンテナ、スキャナ、ＴＶチューナ・カード、デジタル・カメラ、デジタル・ビデオ・カメラ、ウェブ・カメラなどを含む。これらのおよび他のデバイスはインターフェース・ポート（単数または複数）１６３８を介し、システム・バス１６１８を通して処理ユニット１６１４に連結される。インターフェース・ポート（単数または複数）１６３８は、例えば、シリアル・ポート、パラレル・ポート、ゲーム・ポート、およびユニバーサル・シリアル・バス（ＵＳＢ）を含む。出力デバイス（単数または複数）１６４０は、入力デバイス（単数または複数）１６３６と同じ型のいくつかのポートを使用する。しかして、例えば、ＵＳＢポートは、コンピュータ１６１２への入力、およびコンピュータ１６１２から出力デバイス１６４０への出力情報を供給するために使用することができる。出力アダプタ１６４２は、数ある出力デバイス１６４０の中で、モニタ、スピーカ、およびプリンタなど、特別なアダプタを必要とするいくつかの出力デバイス１６４０があることを示すために提示されている。出力アダプタ１６４２は、限定でなく例示として、出力デバイス１６４０とシステム・バス１６１８との間の連結の手段を提供するビデオおよびサウンド・カードを含む。遠隔コンピュータ（単数または複数）１６４４など、他のデバイスもしくはデバイスのシステムまたはその両方が入力および出力両方の機能を備えていることに留意すべきである。
【００９５】
コンピュータ１６１２は、遠隔コンピュータ（単数または複数）１６４４など、１つ以上の遠隔コンピュータへのロジック接続を用いて、ネットワーク化環境中で動作することができる。遠隔コンピュータ（単数または複数）１６４４は、コンピュータ、サーバ、ルータ、ネットワークＰＣ、ワークステーション、マイクロプロセッサ・ベースの電気機器、ピア・デバイスまたは他の一般的なネットワーク・ノードなどであってよく、通常、これらも同様にコンピュータ１６１２に関連して説明したような構成要素の多くまたは全てを含むことができる。簡潔性のため、メモリ・ストレージ・デバイス１６４６だけが、遠隔コンピュータ（単数または複数）１６４４と一緒に示されている。遠隔コンピュータ（単数または複数）１６４４は、ネットワーク・インターフェース１６４８を通してコンピュータ１６１２と論理的に接続され、次いで通信接続１６５０を介して物理的に連結されている。ネットワーク・インターフェース１６４８は、ローカル・エリア・ネットワーク（ＬＡＮ：ｌｏｃａｌ−ａｒｅａ  ｎｅｔｗｏｒｋ）、広域ネットワーク（ＷＡＮ：ｗｉｄｅ−ａｒｅａ  ｎｅｔｗｏｒｋ）、セルラ・ネットワークなど、有線もしくはワイヤレス通信ネットワークまたはその両方に対応する。ＬＡＮ技術は、ファイバ・ディストリビューテッド・データ・インターフェース（ＦＤＤＩ：Ｆｉｂｅｒ  Ｄｉｓｔｒｉｂｕｔｅｄ  Ｄａｔａ  Ｉｎｔｅｒｆａｃｅ）、銅ディストリビューテッド・データ・インターフェース（ＣＤＤＩ：Ｃｏｐｐｅｒ  Ｄｉｓｔｒｉｂｕｔｅｄ  Ｄａｔａ  Ｉｎｔｅｒｆａｃｅ）イーサネット（Ｒ）、トークン・リングなどを含む。ＷＡＮ技術は、以下に限らないが、二点間リンク、統合サービス・ディジタル・ネットワーク（ＩＳＤＮ：Ｉｎｔｅｇｒａｔｅｄ  Ｓｅｒｖｉｃｅｓ  Ｄｉｇｉｔａｌ  Ｎｅｔｗｏｒｋ）およびその変形などの回線交換ネットワーク、パケット交換ネットワーク、およびデジタル加入者回線（ＤＳＬ：Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ）を含む。通信接続（単数または複数）１６５０は、ネットワーク・インターフェース１６４８をシステム・バス１６１８に連結するために用いられるハードウェア／ソフトウェアのことを言う。例示の明瞭化のため、通信接続１６５０がコンピュータ１６１２の内側に示されているが、これはコンピュータ１６１２の外部にあってもよい。また、ネットワーク・インターフェース１６４８への接続のためのハードウェア／ソフトウェアは、単なる例示であるが、標準の電話グレードのモデム、ケーブル・モデム、およびＤＳＬモデムを含むモデム、ＩＳＤＮアダプタ、およびイーサネット（Ｒ）カードなど、内部および外部の技術を含むことが可能である。
【００９６】
本発明は、任意の可能な技術的詳細の集約度で、システム、方法、装置もしくはコンピュータ・プログラム製品またはこれらの組み合せとすることができる。このコンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読ストレージ媒体（または媒体群）を含むことが可能である。このコンピュータ可読ストレージ媒体は、命令実行デバイスが使用するための命令を保持し格納できる有形のデバイスとすることができる。このコンピュータ可読ストレージ媒体は、例えば、以下に限らないが、電子ストレージ・デバイス、磁気ストレージ・デバイス、光ストレージ・デバイス、電磁気ストレージ・デバイス、半導体ストレージ・デバイス、または前述のデバイスの任意の適切な組み合せであってよい。コンピュータ可読ストレージ媒体のさらに具体的な例の非包括的リストには、携帯型コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、消去およびプログラム可能読み取り専用メモリ（ＥＰＲＯＭ：ｅｒａｓａｂｌｅ  ｐｒｏｇｒａｍｍａｂｌｅ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙまたはフラッシュ・メモリ）、静的ランダム・アクセス・メモリ（ＳＲＡＭ：ｓｔａｔｉｃ  ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）、携帯型コンパクト・ディスク読み取り専用メモリ（ＣＤ−ＲＯＭ：ｃｏｍｐａｃｔ  ｄｉｓｃ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ）、デジタル多用途ディスク（ＤＶＤ：ｄｉｇｉｔａｌ  ｖｅｒｓａｔｉｌｅ  ｄｉｓｋ）、メモリ・スティック、フレキシブル・ディスク、パンチカードまたは記録された命令を有する溝中の嵩上げ構造体などの機械的符号化デバイス、および前述の任意の適切な組み合せが含まれてよい。本明細書で用いられるコンピュータ可読ストレージ媒体は、無線波または他の自由に伝播する電磁波、ウェーブガイドまたは他の送信媒体（例えば、光ファイバを通過する光パルス）、またはワイヤを通って送信される電気信号など、本質的に一時的な信号であると解釈されるものではない。
【００９７】
本明細書に述べられたコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体から、それぞれのコンピューティング／処理デバイスに、または、例えばインターネット、ローカル・エリア・ネットワーク、広域ネットワークもしくはワイヤレス・ネットワークまたはこれらの組み合せなどのネットワークを介して、外部のコンピュータもしくは外部のストレージ・デバイスにダウンロードすることが可能である。このネットワークには、銅送信ケーブル、光送信ファイバ、ワイヤレス通信、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、もしくはエッジ・サーバまたはこれらの組み合せが含まれてよい。それぞれのコンピューティング／処理デバイス中のネットワーク・アダプタ・カードまたはネットワーク・インターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、そのコンピュータ可読プログラム命令を、ストレージのため、それぞれのコンピューティング／処理デバイス内のコンピュータ可読ストレージ媒体の中に転送する。本発明のオペレーションを実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令集合アーキテクチャ（ＩＳＡ：ｉｎｓｔｒｕｃｔｉｏｎ−ｓｅｔ−ａｒｃｈｉｔｅｃｔｕｒｅ）命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路用の構成データ、または、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋などのオブジェクト指向プログラミング言語、および「Ｃ」プログラミング言語もしくは類似のプログラミング言語などの手続き型プログラミング言語を含む、１つ以上のプログラミング言語の任意の組み合せで記述されたソース・コードもしくはオブジェクト・コードであってよい。このコンピュータ可読プログラム命令は、スタンドアロン・ソフトウェア・パッケージとしてユーザのコンピュータで専ら実行することも、ユーザのコンピュータで部分的に実行することもでき、一部をユーザのコンピュータで一部を遠隔コンピュータで実行することもでき、あるいは遠隔のコンピュータまたはサーバで専ら実行することもできる。後者の場合は、ローカル・エリア・ネットワーク（ＬＡＮ：ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）または広域ネットワーク（ＷＡＮ：ｗｉｄｅ  ａｒｅａ  ｎｅｔｗｏｒｋ）を含む任意の種類のネットワークを介して、遠隔コンピュータをユーザのコンピュータに接続することもでき、あるいは（例えばインターネット・サービス・プロバイダを使いインターネットを介し）外部のコンピュータへの接続を行うことも可能である。いくつかの実施形態において、例えば、プログラム可能論理回路、フィールドプログラム可能ゲート・アレイ（ＦＰＧＡ：ｆｉｅｌｄ−ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ）、またはプログラム可能論理アレイ（ＰＬＡ：ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ａｒｒａｙ）を含む電子回路は、本発明の諸態様を実行すべく、該電子回路をカスタマイズするためコンピュータ可読プログラム命令の状態情報を利用することによって、該コンピュータ可読プログラム命令を実行することができる。
【００９８】
本発明の諸態様は、本発明の諸実施形態による方法、装置（システム）、およびコンピュータ・プログラム製品のフローチャート図もしくはブロック図またはその両方を参照しながら本明細書で説明されている。当然のことながら、フローチャート図もしくはブロック図またはその両方の各ブロック、およびフローチャート図もしくはブロック図またはその両方のブロックの組み合せは、コンピュータ可読プログラム命令によって実装することが可能である。これらのコンピュータ可読プログラム命令を、汎用コンピュータ、特殊用途コンピュータ、またはマシンを形成する他のプログラム可能データ処理装置のプロセッサに提供し、そのコンピュータまたは他のプログラム可能データ処理装置のプロセッサを介して実行されるこれらの命令が、フローチャートもしくはブロック図またはその両方のブロックもしくはブロック群中に特定されている機能群／動作群を実装するための手段を生成するようにすることができる。また、コンピュータ、プログラム可能データ処理装置、もしくは他のデバイスまたはこれらの組み合せに対し特定の仕方で機能するよう命令することが可能なこれらのコンピュータ可読プログラム命令を、コンピュータ可読ストレージ媒体に格納し、格納された命令を有するコンピュータ可読ストレージ媒体が、フローチャートもしくはブロック図またはその両方のブロックまたはブロック群中に特定されている機能／動作の諸態様を実装する命令群を包含する製造品を構成するようにすることができる。さらに、これらコンピュータ可読プログラム命令を、コンピュータ、他のプログラム可能データ処理装置、または他のデバイスにロードし、そのコンピュータ上で、他のプログラム可能装置上で、または他のデバイス上で一連のオペレーション・ステップを実施させて、コンピュータ実装のプロセスを作り出し、当該コンピュータ上で、他のプログラム可能装置上でもしくは他のデバイス上で実行される命令が、フローチャートもしくはブロック図またはその両方のブロックもしくはブロック群中に特定されている機能群／動作群を実装するようにすることも可能である。
【００９９】
諸図面中のフローチャートおよびブロック図は、本発明の様々な実施形態による、システム、方法、およびコンピュータ・プログラム製品から可能となる実装のアーキテクチャ、機能性、およびオペレーションを表している。この点に関し、フローチャートまたはブロック図中の各ブロックは、特定の論理機能（単数または複数）を実装するための一つ以上の実行可能命令を含む、モジュール、セグメント、または命令の部分を表し得る。いくつかの別の実装においては、ブロック中に記載された機能が、図面に記載された順序から外れて行われてよい。例えば、連続して示された２つのブロックが、関与する機能性に応じ、実際にはほぼ同時に実行されることがあり、時にはこれらのブロックが逆の順序で実行されることもあり得る。さらに、ブロック図もしくはフローチャート図またはその両方の各ブロック、およびブロック図もしくはフローチャート図またはその両方中のブロック群の組み合せは、特定の機能または動作を実施する特殊用途ハードウェア・ベースのシステムによって実装でき、または特殊用途ハードウェアとコンピュータ命令との組み合せによって実行できることにも留意すべきである。
【０１００】
本主題を、コンピュータもしくはコンピュータ群またはその両方で実行される、コンピュータ・プログラム製品のコンピュータ実行可能命令の一般的コンテキストで前述してきたが、当業者は、本開示が、他のプログラム・モジュールと組み合せて実装するまたは実装されることが可能であることも認識するであろう。一般に、プログラム・モジュールは、特定のタスクを実行するもしくは特定の抽象データ型を実装するまたはその両方を行うルーティン、プログラム、コンポーネント、データ構造体などを含む。さらに、当業者は、本発明のコンピュータ実装の方法が、シングル・プロセッサまたはマルチプロセッサ・コンピュータ・システム、ミニコンピューティング・デバイス、メインフレーム・コンピュータ、およびコンピュータ、ハンドヘルド・コンピューティング・デバイス（例えば、ＰＤＡ、電話）、マイクロプロセッサ・ベースのまたはプログラマブルな消費者用または産業用電子機器などを含め、他のコンピュータ・システム構成によっても実践可能であることをよく認識していよう。また、これら例示の態様は、通信ネットワークを介してリンクされた遠隔の処理デバイス群によってタスクが実行される分散コンピューティング環境においても実践可能である。また一方、本開示の、全ての態様でなくても、その一部はスタンドアローン・コンピュータ上で実践することができる。分散コンピューティング環境において、プログラム・モジュールは、ローカルおよび遠隔両方のメモリ・ストレージ・デバイスに配置することが可能である。
【０１０１】
本出願中での使用において、用語「コンポーネント」、「システム」、「プラットフォーム」、「インターフェース」などは、コンピュータ関連のエンティティ、または１つ以上の特定の機能を備えた演算マシンに関連するエンティティに言及することがあり得、もしくはそれらを含むことがあり得、またはその両方があり得る。本明細書で開示されたエンティティは、ハードウェア、ハードウェアとソフトウェアとの組み合せ、ソフトウェア、または実行中のソフトウェアのいずれであってもよい。例えば、或るコンポーネントは、限定はされないが、プロセッサ上で実行されるプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行のスレッド、プログラム、もしくはコンピュータ、またはこれらの組み合せであり得る。例として、サーバ上で実行されているアプリケーションおよびそのサーバの両方が一コンポーネントであり得る。１つ以上のコンポーネントが、プロセッサもしくは実行のスレッドまたはその両方に存在することができ、或るコンポーネントが１つのコンピュータに局在すること、もしくは２つ以上のコンピュータに分散されること、またはその両方が可能である。別の例では、それぞれのコンポーネントを、格納された様々なデータ構造を有する様々なコンピュータ可読媒体から実行することが可能である。これらコンポーネントは、例えば１つ以上のデータ・パケット（例えば、ローカル・システム、分散システム中で、もしくは、インターネットなどのネットワークを通して信号を介して別のコンポーネントと相互作用している１つのコンポーネントからのデータ）を有する信号によって、ローカルもしくは遠隔またはその両方のプロセスを介して通信することができる。別の例として、或るコンポーネントは、電子または電気回路により作動される機械的部品によって提供される特定の機能を備えた装置であってよく、該回路は、プロセッサにより実行されるソフトウェアまたはファームウェア・アプリケーションによって作動される。かかる場合、そのプロセッサは、装置の内部にあっても外部にあってもよく、そのソフトウェアまたはファームウェアの少なくとも一部を実行することができる。さらなる別の例として、或るコンポーネントは、機械的部品なしに、電子コンポーネントを介して特定の機能を提供する装置であってよく、この電子コンポーネントは、プロセッサ、またはその電子コンポーネントの機能を少なくとも部分的に提供するソフトウェアまたはファームウェアを実行するための他の手段を含むことが可能である。或る態様において、或るコンポーネントは、例えばクラウド・コンピューティング・システム内で、仮想マシンを介して電子コンポーネントをエミュレートすることができる。
【０１０２】
さらに、用語「または」は、排他的「または」ではなく包括的「または」を意味するように意図されている。すなわち、別途に指定されているかまたは文脈から明瞭な場合を除き、「ＸはＡまたはＢを用いる」は、自然な包含的順列のうちのいずれかを意味するように意図されている。すなわち、「ＸはＡまたはＢを用いる」は、ＸがＡを用いる、ＸがＢを用いる、またはＸがＡとＢとの両方を用いる、のうちのいずれによっても満たされる。さらに、本明細書および添付の図面中で使用される冠詞「或る（ａ、ａｎ）」は、別途に指定されているか、または文脈から単数形を対象とすることが明瞭な場合を除き、一般に「１つ以上」を意味すると解釈されるべきである。本明細書で用いられる用語「例示の」もしくは「例示的な」またはその両方は、例、具体例、または事例としての役割を意味するために使われる。疑問を避けるために言うが、本明細書で開示された主題はかかる例には限定されない。さらに、本明細書で、「例示の」もしくは「例示的な」またはその両方として説明されたいずれの態様または設計も、必ずしも他の態様または設計よりも好ましいかまたは有利であるとも、当業者に既知の等価の例示的な構造または技法の排除を意味するとも解釈されるべきでない。
【０１０３】
本明細書で用いられている用語「プロセッサ」は、実質上、以下に限定はされないが、シングルコア・プロセッサ、ソフトウェアのマルチスレッド実行機能を備えたシングル・プロセッサ、マルチコア・プロセッサ、ソフトウェアのマルチスレッド実行機能を備えたマルチコア・プロセッサ、ハードウェア・マルチスレッド技術を備えたマルチコア・プロセッサ、並列プラットフォーム、および分散共有メモリを備えた並列プラットフォームを含む、任意のコンピューティング処理ユニットまたはデバイスを言及することができる。さらに、プロセッサは、集積回路、特定用途向け集積回路（ＡＳＩＣ：ａｐｐｌｉｃａｔｉｏｎ  ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）、デジタル信号プロセッサ（ＤＳＰ：ｄｉｇｉｔａｌ  ｓｉｇｎａｌ  ｐｒｏｃｅｓｓｏｒ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ：Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、プログラマブル・ロジック・コントローラ（ＰＬＣ：ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｃｏｎｔｒｏｌｌｅｒ）、複合プログラマブル・ロジック・デバイス（ＣＰＬＤ：ｃｏｍｐｌｅｘ  ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｄｅｖｉｃｅ）、ディスクリート・ゲートまたはトランジスタ・ロジック、ディスクリート・ハードウェア・コンポーネント、または、本明細書に記載の機能を遂行するために設計されたこれらの任意の組み合せを言及してもよい。さらに、プロセッサは、スペース利用の最適化またはユーザ装置のパフォーマンスの向上のために、以下に限らないが、分子または量子ドット・ベースのトランジスタ、スイッチ、およびゲートなど、ナノスケールのアーキテクチャを利用することが可能である。また、プロセッサは、計算処理ユニットの組み合せとして実装することもできる。本開示において、「ストア」、「ストレージ」、「データ・ストア」、「データ・ストレージ」、「データベース」などの用語、および実質的には、或るコンポーネントのオペレーションおよび機能に関連する任意の他の情報ストレージ・コンポーネントは、「メモリ・コンポーネント」、「メモリ」中に具現化されたエンティティ、またはメモリを含むコンポーネントを言及するために用いられる。当然のことながら、本明細書に記載のメモリもしくはメモリ・コンポーネントまたはその両方は、揮発性もしくは不揮発性であってよく、または揮発性および不揮発性メモリの両方を含むことも可能である。限定でなく例示として、不揮発性メモリは、読み取り専用メモリ（ＲＯＭ：ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）、プログラマブルＲＯＭ（ＰＲＯＭ：ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、電気的プログラマブルＲＯＭ（ＥＰＲＯＭ：ｅｌｅｃｔｒｉｃａｌｌｙ  ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ：ｅｌｅｃｔｒｉｃａｌｌｙ  ｅｒａｓａｂｌｅ  ＲＯＭ）、フラッシュ・メモリ、または不揮発性ランダム・アクセス・メモリ（ＲＡＭ：ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）（例えば、強誘電性ＲＡＭ（ＦｅＲＡＭ）を含むことができる。揮発性メモリはＲＡＭを含むことができ、これは、例えば外部キャッシュ・メモリとして機能することが可能である。限���でなく例示として、ＲＡＭは、同期ＲＡＭ（ＳＲＡＭ：ｓｙｎｃｈｒｏｎｏｕｓ  ＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ：ｄｙｎａｍｉｃ  ＲＡＭ）、同期ＤＲＡＭ（ＳＤＲＡＭ：ｓｙｎｃｈｒｏｎｏｕｓ  ＤＲＡＭ）、ダブル・データ・レートＳＤＲＡＭ（ＤＤＲ  ＳＤＲＡＭ：ｄｏｕｂｌｅ  ｄａｔａ  ｒａｔｅ  ＳＤＲＡＭ）、拡張ＳＤＲＡＭ（ＥＳＤＲＡＭ：ｅｎｈａｎｃｅｄ  ＳＤＲＡＭ）、同期リンクＤＲＡＭ（ＳＬＤＲＡＭ：Ｓｙｎｃｈｌｉｎｋ  ＤＲＡＭ）、ダイレクト・ラムバスＲＡＭ（ＤＲＲＡＭ：ｄｉｒｅｃｔ  Ｒａｍｂｕｓ  ＲＡＭ  ）、ダイレクト・ラムバス・ダイナミックＲＡＭ（ＤＲＤＲＡＭ：ｄｉｒｅｃｔ  Ｒａｍｂｕｓ  ｄｙｎａｍｉｃ  ＲＡＭ）、およびラムバス・ダイナミックＲＡＭ（ＲＤＲＡＭ：Ｒａｍｂｕｓ  ｄｙｎａｍｉｃ  ＲＡＭ）など多くの形で利用可能である。さらに、本明細書に開示のシステムまたはコンピュータ実装の方法のメモリ・コンポーネントは、これらのまたは他の適切な型のメモリを含むように意図されているが、含むことに限定はされない。
【０１０４】
上記での説明は、システムおよびコンピュータ実装の方法の単なる例を含む。当然のことながら、本開示を説明するために、コンポーネントまたはコンピュータ実装の方法のあらゆる考えられる組み合せを記述するのは不可能であるが、当業者は、本開示の多くのさらなる組み合せおよび並び替えが可能であることを理解できよう。さらに、発明を実施するための形態、クレーム、付属書、および図面の中で、用語「含む」、「有する」、「所有する」および類似の用語が使用されている範囲内において、かかる用語は、用語「を含めて（ｃｏｍｐｒｉｓｉｎｇ）」がクレーム中で用いられる場合移行語として解釈されるので、用語「を含めて」と同様に包括的であることが意図されている。
【０１０５】
本発明の様々な実施形態の説明は、例示目的で提示されたもので、網羅的であることも、または開示された実施形態に限定することも意図されていない。当業者には、本発明の範囲および趣旨から逸脱することのない多くの修改および変形が明白であろう。本明細書で用いられた用語は、諸実施形態の原理、実際上の応用、または市販の技術の技術的な改良を最善に説明し、または他の当業者が本明細書に開示された諸実施形態を理解できるように選択されたものである。
【図１】
2021504805.tif 000079
【図２】
2021504805.tif 000080
【図３】
2021504805.tif 000081
【図４】
2021504805.tif 000082
【図５】
2021504805.tif 000083
【図６】
2021504805.tif 000084
【図７】
2021504805.tif 000085
【図８】
2021504805.tif 000086
【図９】
2021504805.tif 000087
【図１０】
2021504805.tif 000088
【図１１】
2021504805.tif 000089
【図１２】
2021504805.tif 000090
【図１３】
2021504805.tif 000091
【図１４】
2021504805.tif 000092
【図１５】
2021504805.tif 000093
【図１６】
2021504805.tif 000094
【国際調査報告】
2021504805.tif 000095
2021504805.tif 000096