(57)【要約】  本開示は、分散コンピューティング環境（例えばクラウド）において、量子即時および／または量子対応コンピュータへのアクセスを可能にするための方法、システムおよび媒体を提供する。そのような方法およびシステムは、クラウド上で最適化と計算サービスを提供し得る。本開示の方法およびシステムは、場合によっては量子コンピュータを使用して最適化問題を解くのに必要であろう資源、実装または知識の深い理解をユーザーが有する必要なく、様々な種類の量子コンピュータおよび様々な位置にいるユーザーにわたって、量子計算が相対的にかつ容易にスケーリングされることを可能にし得る。本明細書に提供されるシステムは、ユーザーがバックエンドで量子技術を利用しながら、分散コンピューティング環境でデータ解析を行なうことを可能にするユーザーインタフェースを含み得る。【選択図】図５
2019521431.tif 000002
【特許請求の範囲】
【請求項１】
ハイブリッド計算資源へのアクセスを提供するためのコンピューティングシステムであって、該システムは量子コンピュータおよび古典的コンピュータを含み、ここで量子コンピュータおよび古典的コンピュータは、ネットワークを通じてデジタルコンピュータに動作可能に接続され、およびデジタルコンピュータは少なくとも１つのコンピュータプロセッサおよびコンピュータメモリを含み、該コンピューティングシステムは：
（ａ）ネットワークを通じてデジタルコンピュータからリクエストを受信するように構成されたゲートウェイであって、リクエストは計算タスクを含む、ゲートウェイ；および
（ｂ）（ｉ）ゲートウェイからのリクエストを受信し、（ｉｉ）計算タスクを１つ以上の量子計算タスクと１つ以上の古典的計算タスクに分解し、および（ｉｉｉ）１つ以上の量子計算タスクを量子コンピュータに分配し、および１つ以上の古典的計算タスクを古典的コンピュータに分配するように構成された、アービタ、
を含む、コンピューティングシステム。
【請求項２】
アービタは、量子コンピュータから、古典的コンピュータから、またはその両方から部分解をさらに受信するように構成される、請求項１に記載のコンピューティングシステム。
【請求項３】
アービタは、（ｉ）部分解を計算タスクの解へと統合し、（ｉｉ）解の完全性を評価し、および（ｉｉｉ）解の完全性が達成されるまで計算タスクの残りの部分の分解と分配を繰り返す、ようにさらに構成される、請求項２に記載のコンピューティングシステム。
【請求項４】
アービタは、解の完全性をさらに指示するように構成される、請求項３に記載のコンピューティングシステム。
【請求項５】
アービタは、集中型または分散型の古典的処理環境で作動するように構成されたインテリジェントエージェントを含む、請求項１に記載のコンピューティングシステム。
【請求項６】
インテリジェントエージェントは、高度な処理手法で計算タスクを分解および／または分配するように構成される、請求項５に記載のコンピューティングシステム。
【請求項７】
量子コンピュータは、１つ以上の量子計算タスクを解くために１つ以上の量子アルゴリズムを行なうように構成される、請求項１に記載のコンピューティングシステム。
【請求項８】
古典的コンピュータは、１つ以上の古典的計算タスクを解くために１つ以上の古典的アルゴリズムを行なうように構成される、請求項１に記載のコンピューティングシステム。
【請求項９】
古典的コンピュータはクラウドコンピューティングプラットフォームを含む、請求項１に記載のコンピューティングシステム。
【請求項１０】
ゲートウェイは、クライアントが計算タスクを送信し、かつ計算の解を受信することを可能にするように構成されたアプリケーションプログラミングインターフェース（ＡＰＩ）を含む、請求項１に記載のコンピューティングシステム。
【請求項１１】
ゲートウェイは、システムのユーザーの認証、システムとデータの安全の強化、量子コンピュータおよび古典的コンピュータへのリクエストのルーティング、およびデータトラフィックのモニタリングの１つ以上をさらに行うように構成される、請求項１に記載のコンピューティングシステム。
【請求項１２】
ハイブリッド計算資源へのアクセスを提供するための方法であって、該方法は量子コンピュータと古典的コンピュータを含み、量子コンピュータと古典的コンピュータはネットワークを通じてデジタルコンピュータに動作可能に接続され、およびデジタルコンピュータは少なくとも１つのコンピュータプロセッサとコンピュータメモリを含み、該方法は：
（ａ）ネットワークを通じてデジタルコンピュータからリクエストを受信する工程であって、リクエストは計算タスクを含む、工程；
（ｂ）ゲートウェイからリクエストを受信する工程；
（ｃ）１つ以上の量子計算タスクと１つ以上の古典的計算タスクへと、計算タスクを分解する工程；および
（ｄ）１つ以上の量子計算タスクを量子コンピュータに、および１つ以上の古典的計算タスクを古典的コンピュータに分配する工程、
を含む、方法。
【請求項１３】
量子コンピュータから、または古典的コンピュータから、またはその両方から、部分解を受信する工程をさらに含む、請求項１２に記載の方法。
【請求項１４】
（ｉ）部分解を計算タスクの解へと統合する工程、（ｉｉ）解の完全性を評価する工程、および（ｉｉｉ）解の完全性が達成されるまで計算タスクの残りの部分の分解と分配を繰り返す工程、をさらに含む、請求項１３に記載の方法。
【請求項１５】
解の完全性を指示する工程をさらに含む、請求項１４に記載の方法。
【請求項１６】
集中型または分散型の古典的処理環境で作動するインテリジェントエージェントを使用する工程をさらに含む、請求項１２に記載の方法。
【請求項１７】
インテリジェントエージェントは、高度な処理手法で計算タスクを分解および／または分配する、請求項１６に記載の方法。
【請求項１８】
量子コンピュータは、１つ以上の量子計算タスクを解くために１つ以上の量子アルゴリズムを行う、請求項１２に記載の方法。
【請求項１９】
古典的コンピュータは、１つ以上の古典的計算タスクを解くために１つ以上の古典的アルゴリズムを行う、請求項１２に記載の方法。
【請求項２０】
古典的コンピュータはクラウドコンピューティングプラットフォームを含む、請求項１２に記載の方法。
【請求項２１】
アプリケーションプログラミングインターフェース（ＡＰＩ）は、クライアントが計算タスクを送信し、かつ計算の解を受信することを可能にするために使用される、請求項１２に記載の方法。
【請求項２２】
システムのユーザーの認証、システムとデータの安全の強化、量子コンピュータおよび古典的コンピュータへのリクエストのルーティング、およびデータトラフィックのモニタリングの１つ以上を行う工程をさらに含む、請求項１２に記載の方法。
【請求項２３】
ハイブリッド計算資源へのアクセスを提供するための命令を含む非一時的コンピュータ可読媒体であって、量子コンピュータと古典的コンピュータを含み、ここで量子コンピュータと古典的コンピュータはネットワークを通じてデジタルコンピュータに動作可能に接続され、およびデジタルコンピュータは少なくとも１つのコンピュータプロセッサとコンピュータメモリを含み、当該非一時的コンピュータ可読媒体は：
（ａ）ネットワークを通じてデジタルコンピュータからリクエストを受信するように構成されたゲートウェイであって、リクエストは計算タスクを含む、ゲートウェイ；および
（ｂ）（ｉ）ゲートウェイからのリクエストを受信し、（ｉｉ）計算タスクを１つ以上の量子計算タスクと１つ以上の古典的計算タスクに分解し、および（ｉｉｉ）１つ以上の量子計算タスクを量子コンピュータに分配し、および１つ以上の古典的計算タスクを古典的コンピュータに分配するように構成されたアービタ、
を含む、非一時的コンピュータ可読媒体。
【請求項２４】
ネットワークを通じて、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームへのリモートアクセスを、デジタルコンピュータのユーザーに提供するためのコンピューティングシステムであって、デジタルコンピュータは、少なくとも１つのコンピュータプロセッサと、リクエストを生成するために少なくとも１つのコンピュータプロセッサによって実行可能なコンピュータプログラムを含むコンピュータメモリを含み、および少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームは、１つ以上の解を生成するためにリクエストに応えて１つ以上の命令を実行するように構成され、該コンピューティングシステムは：
ネットワークを通じてデジタルコンピュータからリクエストを受信するように構成された通信用インタフェース；
（ｉ）少なくとも１つ以上の解を生成するための１つ以上の命令を実行するように構成された少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームに、リクエストに応えて、１つ以上の命令を提供し、かつ（ｉｉ）少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームによって生成された１つ以上の解を受信する、ように構成されたクラスタマネージャ；および
少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームによって生成された１つ以上の解を保存するように構成されたメモリ、
を含む、コンピューティングシステム。
【請求項２５】
デジタルコンピュータのユーザーの認証、システムとデータの安全の強化、デジタルコンピュータからのリクエストの受信、およびデータトラフィックのモニタリングの１つ以上を実行するように構成されたゲートウェイをさらに含む、請求項２４に記載のコンピューティングシステム。
【請求項２６】
クラスタマネージャは、１つ以上の命令の開始または終了を制御する、または１つ以上の命令の存続期間をモニタリングするように構成される、請求項２４に記載のコンピューティングシステム。
【請求項２７】
クラスタマネージャはキューにリクエストを出すように構成される、請求項２４に記載のコンピューティングシステム。
【請求項２８】
クラスタマネージャはキューにおけるリクエストの順序をさらに保全するように構成される、請求項２７に記載のコンピューティングシステム。
【請求項２９】
クラスタマネージャは、リクエストに関連するログを記録するように構成され、ログは、タイムスタンプ、リクエストに関連する事象、計算の連続したスナップショット、および診断情報の少なくとも１つを含む、請求項２４に記載のコンピューティングシステム。
【請求項３０】
少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームの異なるアーキテクチャに使用可能なアプリケーションプログラミングインターフェース（ＡＰＩ）をさらに含む、請求項２４に記載のコンピューティングシステム。
【請求項３１】
アプリケーションプログラミングインターフェース（ＡＰＩ）は、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームのアーキテクチャまたは技術的詳細を隠すように構成される、請求項３０に記載のコンピューティングシステム。
【請求項３２】
（ｉ）少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームに、リクエストに関連する計算問題を、または（ｉｉ）デジタルコンピュータに、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームからの１つ以上の解を、通信するように構成された連続ユニットをさらに含む、請求項２４に記載のコンピューティングシステム。
【請求項３３】
少なくとも１つの非古典的コンピュータは、量子即時コンピュータを含み、および１つ以上の命令は量子アルゴリズムを含む、請求項２４に記載のコンピューティングシステム。
【請求項３４】
少なくとも１つの非古典的コンピュータは、量子対応コンピュータを含み、および１つ以上の命令は量子アルゴリズムを含む、請求項２４に記載のコンピューティングシステム。
【請求項３５】
通信用インタフェースは、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームによって生成された１つ以上の解を、デジタルコンピュータにさらに提供するように構成される、請求項２４に記載のコンピューティングシステム。
【請求項３６】
少なくとも１つの非古典的コンピュータは、複数の非古典的コンピュータを含む、請求項２４に記載のコンピューティングシステム。
【請求項３７】
１つ以上の命令は複数の命令を含み、１つ以上の解は複数の解を含み、およびクラスタマネージャは、複数の非古典的コンピュータを含むコンピューティングプラットフォームへと送達するための複数の命令を提供するように構成され、複数の非古典的コンピュータを含むコンピューティングプラットフォームは、複数の解を生成するための複数の命令を実行するように構成される、請求項２４に記載のコンピューティングシステム。
【請求項３８】
デジタルコンピュータはパソコンを含む、請求項２４に記載のコンピューティングシステム。
【請求項３９】
１つ以上の解を生成するための１つ以上の命令の少なくとも実行と引き換えに、価値のあるアイテムを受信するように構成されたトランザクショナルユニットをさらに含む、請求項２４に記載のコンピューティングシステム。
【請求項４０】
価値のあるアイテムは金銭またはクレジットを含む、請求項３９に記載のコンピューティングシステム。
【請求項４１】
価値のあるアイテムはデジタルコンピュータのユーザーから受信される、請求項３９に記載のコンピューティングシステム。
【請求項４２】
トランザクショナルユニットは、１つ以上の解を生成するために１つ以上の命令を実行するためのコストを判定する、請求項３９に記載のコンピューティングシステム。
【請求項４３】
トランザクショナルユニットは、１つ以上の命令を実行した後または前にコストを判定し、および１つ以上の命令は１つ以上の命令を実行するための認証を受信すると実行される、請求項３９に記載のコンピューティングシステム。
【請求項４４】
認証はデジタルコンピュータのユーザーから受信される、請求項４３に記載のコンピューティングシステム。
【請求項４５】
価値のあるアイテムはコストに等しい、請求項４３に記載のコンピューティングシステム。
【請求項４６】
ネットワークを通じて、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームへのリモートアクセスを、デジタルコンピュータのユーザーに提供するためのコンピュータにより実行される方法であって、デジタルコンピュータは、少なくとも１つのコンピュータプロセッサと、リクエストを生成するために少なくとも１つのコンピュータプロセッサによって実行可能なコンピュータプログラムを含むコンピュータメモリを含み、および少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームは、１つ以上の解を生成するためにリクエストに応えて１つ以上の命令を実行するように構成され、該方法は：
（ａ）ネットワークを通じてデジタルコンピュータからリクエストを受信する通信用インタフェースを使用する工程；
（ｂ）リクエストに応えて、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームへの送達のための１つ以上の命令を提供する工程であって、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームは、１つ以上の解を生成するための１つ以上の命令を実行する、工程；
（ｃ）少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームによって生成された１つ以上の解を受信する工程；および
（ｄ）少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームによって生成された１つ以上の解をメモリに保存する工程、
を含む方法。
【請求項４７】
デジタルコンピュータのユーザーの認証、システムとデータの安全の強化、デジタルコンピュータからのリクエストの受信、およびデータトラフィックのモニタリングの１つ以上を行う工程をさらに含む、請求項４６に記載の方法。
【請求項４８】
１つ以上の命令の開始または終了を制御する工程、または１つ以上の命令の存続期間をモニタリングする工程をさらに含む、請求項４６に記載の方法。
【請求項４９】
キューにリクエストを出す工程をさらに含む、請求項４６に記載の方法。
【請求項５０】
キューにおけるリクエストの順序を保全する工程をさらに含む、請求項４９に記載の方法。
【請求項５１】
リクエストに関連するログを記録する工程をさらに含み、ログは、タイムスタンプ、リクエストに関連する事象、計算の連続したスナップショット、および診断情報の少なくとも１つを含む、請求項４６に記載の方法。
【請求項５２】
少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームの異なるアーキテクチャに使用可能なアプリケーションプログラミングインターフェース（ＡＰＩ）を使用する工程をさらに含む、請求項４６に記載の方法。
【請求項５３】
アプリケーションプログラミングインターフェース（ＡＰＩ）は、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームのアーキテクチャまたは技術的詳細を隠す、請求項５２に記載の方法。
【請求項５４】
（ｉ）少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームに、リクエストに関連する計算問題を、または（ｉｉ）デジタルコンピュータに、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームからの１つ以上の解を、通信する工程をさらに含む、請求項４６に記載の方法。
【請求項５５】
少なくとも１つの非古典的コンピュータは、量子即時コンピュータを含み、および１つ以上の命令は量子アルゴリズムを含む、請求項４６に記載の方法。
【請求項５６】
少なくとも１つの非古典的コンピュータは、量子対応コンピュータを含み、および１つ以上の命令は量子アルゴリズムを含む、請求項４６に記載の方法。
【請求項５７】
少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームによって生成された１つ以上の解を、デジタルコンピュータに提供する工程をさらに含む、請求項４６に記載の方法。
【請求項５８】
少なくとも１つの非古典的コンピュータは、複数の非古典的コンピュータを含む、請求項４６に記載の方法。
【請求項５９】
１つ以上の命令は複数の命令を含み、１つ以上の解は複数の解を含み、および該方法は、複数の非古典的コンピュータを含むコンピューティングプラットフォームに送達されるための複数の命令を提供し、複数の非古典的コンピュータを含むコンピューティングプラットフォームは、複数の解を生成するために複数の命令を実行する、請求項４６に記載の方法。
【請求項６０】
デジタルコンピュータはパソコンを含む、請求項４６に記載の方法。
【請求項６１】
１つ以上の解を生成するために、１つ以上の命令を少なくとも実行するのと引き換えに、価値のあるアイテムを受信する工程をさらに含む、請求項４６に記載の方法。
【請求項６２】
価値のあるアイテムは金銭またはクレジットを含む、請求項４６に記載の方法。
【請求項６３】
価値のあるアイテムはデジタルコンピュータのユーザーから受信される、請求項４６に記載の方法。
【請求項６４】
１つ以上の解を生成するために１つ以上の命令を実行するためのコストを判定する工程をさらに含む、請求項４６に記載の方法。
【請求項６５】
１つ以上の命令を実行した後または前にコストを判定する工程をさらに含み、１つ以上の命令は、１つ以上の命令を実行するための認証を受信すると実行される、請求項４６に記載の方法。
【請求項６６】
認証はデジタルコンピュータのユーザーから受信される、請求項６５に記載の方法。
【請求項６７】
価値のあるアイテムはコストに等しい、請求項６５に記載の方法。
【請求項６８】
マシン実行可能コードを含む非一時的コンピュータ可読媒体であって、該コードは実行に際して、ネットワークを通じて少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームへのリモートアクセスをデジタルコンピュータのユーザーに提供し、デジタルコンピュータは、少なくとも１つのコンピュータプロセッサと、リクエストを生成するために少なくとも１つのコンピュータプロセッサによって実行可能なコンピュータプログラムを含むコンピュータメモリを含み、および少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームは、１つ以上の解を生成するためにリクエストに応えて１つ以上の命令を実行するように構成され、該媒体は：
ネットワークを通じてデジタルコンピュータからリクエストを受信するように構成された通信用インタフェース；
（ｉ）リクエストに応えて、少なくとも１つ以上の解を生成するための１つ以上の命令を実行するように構成された少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームに送達するための、１つ以上の命令を提供し、かつ（ｉｉ）少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームによって生成された１つ以上の解を受信する、ように構成されたクラスタマネージャ；および
少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームによって生成された１つ以上の解を保存するように構成されたメモリ、
を含む、非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
＜相互参照＞
本出願は、２０１７年４月１３日に出願された米国特許出願第１５／４８６，９６０号、２０１６年１２月１９日に出願された米国仮特許出願第６２／４３６，０９３号、２０１６年１１月１１日に出願された米国特許出願第１５／３４９，５１９号、２０１６年６月１３日に出願された米国特許出願第１５／１８１，２４７号、および米国特許第９，５３７，９５３号の優先権を主張し、これらの各々が参照により完全に本明細書に組み込まれる。
【背景技術】
【０００２】
量子コンピュータは典型的に、データに演算を行なうために、重ね合わせと量子もつれなどの量子・機械的な現象を利用する。量子コンピュータはトランジスターに基づくデジタル電子コンピュータとは異なる場合もある。例えば、デジタルコンピュータは、２進数字（ビット）へと符号化されるデータを必要とし、その各々は常に２つの確定的状態（０または１）の１つにあるが、量子計算は量子ビット（キュービット）を使用し、これは状態の重ね合わせで存在し得る。
【発明の概要】
【０００３】
本明細書に開示されるシステムと方法は、量子情報処理に関する。量子コンピュータの計算能力は、従来のデジタルコンピュータよりはるかに強力である。量子力学は現在、最も複雑な科学的問題を解き、そして世界中のすべてのデジタル情報保管庫をロック解除することができる、新世代のコンピュータを構成するために使用されている。そのような量子コンピュータは、従来のコンピュータが計算を行うのにかかる時間よりも大幅に少ない時間（例えば数秒）で計算を行なうことができる。しかしながら、量子情報処理にかかるコストは非常に高額である。量子計算を一般大衆にとってよりアクセスしやすいものにするために、量子コンピュータとデジタルコンピュータを統合する新たなコンピュータのインフラが必要である。
【０００４】
量子計算資源へのアクセスには費用がかかる。したがって、本明細書に開示される新しいシステムは、量子計算資源への共用アクセスを可能にする。本明細書に開示されるシステムの目的は、クラウドコンピューティングプラットフォーム上で量子計算サービス（例えば最適化）を提供することである。今日の技術に基づいた量子計算サービスは、それらが発達するにつれて、追加の機能を加える可能性がある。ソフトウェア開発キットを使用すると、ユーザーは、量子コンピュータを使用して最適化問題を解くのに必要な、内部アーキテクチャと量子計算資源のメカニズム、実装、または知識の深い理解を要求されない。本明細書に開示されるシステムは、バックエンドで量子技術を使用しながら、クラウド上でデータ解析サービス用のユーザーインターフェースを提供し得る。
【０００５】
本明細書に開示されるシステムと方法は、はるかに大きな性能、柔軟性および手頃なコストを備えたコンピュータサービスの質を改善することができるであろう。本明細書に開示されるスケーラブル量子コンピュータは、デジタルコンピュータを補足し得、ここで専用の計算資源が特定のクラスの問題のためにプログラムされ、または構成される。特定の計算問題のための量子計算サービスを必要とするユーザーは、遠隔で、例えばクラウド上などで、量子計算資源にアクセスすることができる。ユーザーは、個々の量子ビット（キュービット）と共に作動する量子コンピュータとプロセッサ上でアルゴリズムと試行を実行することができる。ユーザーは、量子計算資源の内部アーキテクチャとメカニズムを理解することを要求されないだろう。例えば天気予報、財務分析、暗号法、ロジスティック計画、地球に似た惑星の探索および創薬等の、個々の実務における問題および関係する解決法にユーザーが精通している程度は様々であるため、本明細書に開示される方法とシステムを使用した異なる量子計算資源への柔軟なアクセスが提供され得る。クラウドを介して提供される量子計算サービスは、デジタルコンピュータよりも有意により迅速なサービスを提供することができる。
【０００６】
本明細書に提供されるシステムと方法は、例えば量子コンピュータへのリモートアクセスを提供し、およびリクエストが処理される方法を容易にすることによって、量子コンピュータの機能性を改善し得る。これは、様々な位置にいる複数ユーザーにわたる量子計算のスケーリングを可能にする。
【０００７】
本開示は、量子コンピュータへの即時アクセスを可能にする方法とシステムを提供する。そのようなアクセスはリモートアクセスまたはローカルアクセスであり得る。量子コンピュータは、クラウドベースのインターフェースを介して等のように、ネットワーク上でアクセスされ得る。
【０００８】
ある態様では、本明細書に開示されるのは、ハイブリッド計算資源へのアクセスを提供するための、量子コンピュータと古典的コンピュータを含むコンピューティングシステムであって、量子コンピュータと古典的コンピュータはネットワークを通じてデジタルコンピュータに動作可能に接続され、およびデジタルコンピュータは少なくとも１つのコンピュータプロセッサとコンピュータメモリを含み、コンピューティングシステムは以下を含む：（ａ）ネットワークを通じてデジタルコンピュータからリクエストを受信するように構成されたゲートウェイであって、リクエストは計算タスクを含む、ゲートウェイ；および（ｂ）（ｉ）ゲートウェイからのリクエストを受信し、（ｉｉ）計算タスクを１つ以上の量子計算タスクと１つ以上の古典的計算タスクに分解し、および（ｉｉｉ）１つ以上の量子計算タスクを量子コンピュータに分配し、および１つ以上の古典的計算タスクを古典的コンピュータに分配するように構成されたアービタ。
【０００９】
いくつかの実施形態では、アービタは、（ｉ）量子コンピュータから、古典的コンピュータから、またはその両方から、部分解を受信し、（ｉｉ）部分解を計算タスクの解へと統合し、（ｉｉｉ）解の完全性を評価し、および（ｉｖ）解の完全性が達成されるまで計算タスクの残りの部分の分解と分配を繰り返すように構成される。いくつかの実施形態では、アービタは、（ｉ）集中型または分散型の古典的処理環境で作動し、および（ｉｉ）高度な処理手法で計算タスクを分解および／または分配するように構成されたインテリジェントエージェントを含む。いくつかの実施形態では、量子コンピュータは、１つ以上の量子計算タスクを解くための１つ以上の量子アルゴリズムを実行するように構成され、および古典的コンピュータは１つ以上の古典的計算タスクを解くための１つ以上の古典的アルゴリズムを実行するように構成される。いくつかの実施形態では、ゲートウェイは、クライアントが計算タスクを送信し、かつ計算の解を受信することを可能にするように構成されたアプリケーションプログラミングインターフェース（ＡＰＩ）を含む。
【００１０】
別の態様では、本明細書に開示されるのは、ハイブリッド計算資源へのアクセスを提供するための、量子コンピュータと古典的コンピュータを含む方法であって、量子コンピュータと古典的コンピュータはネットワークを通じてデジタルコンピュータに動作可能に接続され、およびデジタルコンピュータは少なくとも１つのコンピュータプロセッサとコンピュータメモリを含み、該方法は以下を含む：（ａ）ネットワークを通じてデジタルコンピュータから計算タスクを含むリクエストを受信する工程；（ｂ）ゲートウェイからリクエストを受信する工程；（ｃ）計算タスクを１つ以上の量子計算タスクと１つ以上の古典的計算タスクに分解する工程；および（ｄ）１つ以上の量子計算タスクを量子コンピュータに、および１つ以上の古典的計算タスクを古典的コンピュータに分配する工程。
【００１１】
いくつかの実施形態では、該方法はさらに、（ｉ）量子コンピュータから、古典的コンピュータから、またはその両方から、部分解を受信し、（ｉｉ）部分解を計算タスクの解へと統合し、（ｉｉｉ）解の完全性を評価し、および（ｉｖ）解の完全性が達成されるまで計算タスクの残りの部分の分解と分配を繰り返す工程を含む。いくつかの実施形態では、該方法はさらに、（ｉ）集中型または分散型の古典的処理環境で作動し、および（ｉｉ）高度な処理手法で計算タスクを分解および／または分配するためのインテリジェントエージェントを使用する工程を含む。いくつかの実施形態では、量子コンピュータは、１つ以上の量子計算タスクを解くための１つ以上の量子アルゴリズムを実行し、および古典的コンピュータは１つ以上の古典的計算タスクを解くための１つ以上の古典的アルゴリズムを実行する。いくつかの実施形態では、アプリケーションプログラミングインターフェース（ＡＰＩ）は、クライアントが計算タスクを送信し、かつ計算の解を受信することを可能にするために使用される。
【００１２】
別の態様では、本明細書に開示されるのは、ネットワークを通じて、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームへのリモートアクセスを、デジタルコンピュータのユーザーに提供するためのコンピューティングシステムであって、デジタルコンピュータは、少なくとも１つのコンピュータプロセッサと、リクエストを生成するために少なくとも１つのコンピュータプロセッサによって実行可能なコンピュータプログラムを含むコンピュータメモリを含み、および少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームは、１つ以上の解を生成するためにリクエストに応えて１つ以上の命令を実行するように構成され、コンピューティングシステムは以下を含む：ネットワークを通じてデジタルコンピュータからリクエストを受信するように構成された通信用インターフェース；（ｉ）リクエストに応えて、少なくとも１つ以上の解を生成するための１つ以上の命令を実行するように構成される少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームに、１つ以上の命令を提供し、かつ（ｉｉ）少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームによって生成された１つ以上の解を受信する、ように構成されたクラスタマネージャ；および少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームによって生成された１つ以上の解を保存するように構成されたメモリ。
【００１３】
いくつかの実施形態では、クラスタマネージャは、１つ以上の命令の開始または終了を制御する、または１つ以上の命令の存続期間をモニタリングするように構成される。いくつかの実施形態では、クラスタマネージャは、（ｉ）キューにリクエストを出し、（ｉｉ）キューにおいてリクエストの順序を保全するように構成される。いくつかの実施形態では、コンピューティングシステムはさらに、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームの異なるアーキテクチャに利用可能なアプリケーションプログラミングインターフェース（ＡＰＩ）を含み、ＡＰＩは、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームのアーキテクチャまたは技術的な詳細を隠すように構成される。いくつかの実施形態では、少なくとも１つの非古典的コンピュータは、量子即時コンピュータ（ｑｕａｎｔｕｍ−ｒｅａｄｙ  ｃｏｍｐｕｔｅｒ）または量子対応コンピュータ（ｑｕａｎｔｕｍ−ｅｎａｂｌｅｄ  ｃｏｍｐｕｔｅｒ）を含み、および１つ以上の命令は量子アルゴリズムを含む。いくつかの実施形態では、通信用インターフェースは、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームによって生成された１つ以上の解を、デジタルコンピュータに提供するように構成される。いくつかの実施形態では、１つ以上の命令は複数の命令を含み、１つ以上の解は複数の解を含み、およびクラスタマネージャは、複数の非古典的コンピュータを含むコンピューティングプラットフォームへと送達される複数の命令を提供するように構成され、複数の非古典的コンピュータを含むコンピューティングプラットフォームは、複数の解を生成するための複数の命令を実行するように構成される。いくつかの実施形態では、コンピューティングシステムはさらに、１つ以上の解を生成するための１つ以上の命令の実行と引き換えに、価値のあるアイテムを受信するように構成されたトランザクショナルユニットを含む。いくつかの実施形態では、トランザクショナルユニットは、１つ以上の解を生成するための１つ以上の命令を実行するのにかかるコストを判定し、トランザクショナルユニットは１つ以上の命令を実行する前または後にコストを判定し、および１つ以上の命令は１つ以上の命令を実行する認証を受信すると実行される。いくつかの実施形態では、認証はデジタルコンピュータのユーザーから受信され、および価値のあるアイテムはコストに等しい。
【００１４】
別の態様では、本明細書に開示されるのは、ネットワークを通じて、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームへのリモートアクセスを、デジタルコンピュータのユーザーに提供するためのコンピュータにより実行される方法であって、デジタルコンピュータは、少なくとも１つのコンピュータプロセッサと、リクエストを生成するために少なくとも１つのコンピュータプロセッサによって実行可能なコンピュータプログラムを含むコンピュータメモリを含み、および少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームは、１つ以上の解を生成するためにリクエストに応えて１つ以上の命令を実行するように構成され、該方法は以下の工程を含む：ネットワークを通じてデジタルコンピュータからリクエストを受信するように構成された通信用インターフェースを使用する工程；リクエストに応えて、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームへ送達するための１つ以上の命令を提供する工程であって、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームは、１つ以上の解を生成するための１つ以上の命令を実行する、工程；少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームによって生成された１つ以上の解を受信する工程；および少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームによって生成された１つ以上の解をメモリに保存する工程。
【００１５】
いくつかの実施形態では、該方法はさらに、１つ以上の命令の開始または終了を制御する工程、または１つ以上の命令の存続期間をモニタリングする工程を含む。いくつかの実施形態では、該方法はさらに、（ｉ）キューにリクエストを出す工程、（ｉｉ）キューにおいてリクエストの順序を保全する工程を含む。いくつかの実施形態では、該方法はさらに、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームの異なるアーキテクチャに利用可能なアプリケーションプログラミングインターフェース（ＡＰＩ）を使用する工程を含み、ＡＰＩは、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームのアーキテクチャまたは技術的な詳細を隠す。いくつかの実施形態では、少なくとも１つの非古典的コンピュータは、量子即時コンピュータまたは量子対応コンピュータを含み、および１つ以上の命令は量子アルゴリズムを含む。いくつかの実施形態では、該方法はさらに、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームによって生成された１つ以上の解を、デジタルコンピュータに提供する工程を含む。いくつかの実施形態では、１つ以上の命令は複数の命令を含み、１つ以上の解は複数の解を含み、および該方法は、複数の非古典的コンピュータを含むコンピューティングプラットフォームに送達される複数の命令を提供し、複数の非古典的コンピュータを含むコンピューティングプラットフォームは、複数の解を生成するために複数の命令を実行する。いくつかの実施形態では、該方法はさらに、１つ以上の解を生成するための１つ以上の命令の実行と引き換えに、価値のあるアイテムを受信する工程を含む。いくつかの実施形態では、該方法はさらに、１つ以上の命令を実行する前または後に、１つ以上の解を生成するための１つ以上の命令を実行するのにかかるコストを判定する工程を含み、１つ以上の命令は１つ以上の命令を実行する認証を受信すると実行される。いくつかの実施形態では、認証はデジタルコンピュータのユーザーから受信され、および価値のあるアイテムはコストに等しい。
【００１６】
別の態様では、本明細書に開示されるのは、ネットワークを通じて、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームへのクラウドアクセスを、デジタルコンピュータに提供するコンピューティングシステムであって、前記デジタルコンピュータは、少なくとも１つのコンピュータプロセッサと、リクエストを生成するために前記少なくとも１つのコンピュータプロセッサによって実行可能なコンピュータプログラムを含むコンピュータメモリを含み、および前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームは、１つ以上の解を生成するために前記リクエストに応えて１つ以上の命令を実行するように構成され、前記コンピューティングシステムは以下を含む：前記ネットワークを通じて前記デジタルコンピュータから前記リクエストを受信するように構成されたクラウドベースのインターフェース；クラスタマネージャであって、（ｉ）前記リクエストに応えて、前記少なくとも１つ以上の解を生成するための前記１つ以上の命令を実行するように構成される前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームに、前記１つ以上の命令を提供し、かつ（ｉｉ）前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームによって生成された前記１つ以上の解を受信する、ように構成されたクラスタマネージャ；および前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームによって生成された前記１つ以上の解を保存するように構成された１つ以上のデータベース。
【００１７】
いくつかの実施形態では、コンピューティングシステムはさらに、前記デジタルコンピュータのユーザーの認証、システムとデータの安全の強化、前記デジタルコンピュータからの前記リクエストの受信、および前記データトラフィックのモニタリングの１つ以上を実行するように構成されたゲートウェイを含む。いくつかの実施形態では、前記クラスタマネージャは、前記１つ以上の命令を生成するまたは終了する、または前記１つ以上の命令の存続期間をモニタリングするように構成される。いくつかの実施形態では、コンピューティングシステムはさらに、キューに前記リクエストを出すように構成されたキューイングユニットを含む。いくつかの実施形態では、前記キューイングユニットは、前記キューにおける前記リクエストの順序を保全するように構成される。いくつかの実施形態では、コンピューティングシステムはさらに、前記リクエストに関連するログを記録するように構成されたロギングユニットを含み、前記ログは、タイムスタンプ、前記リクエストに関連する事象、計算の連続したスナップショット、および診断情報の少なくとも１つを含む。
【００１８】
いくつかの実施形態では、コンピューティングシステムはさらに、前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームの異なるアーキテクチャに使用可能なアプリケーションプログラミングインターフェース（ＡＰＩ）を含む。いくつかの実施形態では、前記ＡＰＩは、前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームのアーキテクチャ、または技術的詳細を隠す。
【００１９】
いくつかの実施形態では、コンピューティングシステムはさらに、（ｉ）前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームに、前記リクエストに関連する計算問題を、または（ｉｉ）前記デジタルコンピュータに、前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームからの前記１つ以上の解を、連続的に通信するように構成された連続ユニットを含む。
【００２０】
いくつかの実施形態では、前記少なくとも１つの非古典的コンピュータは量子コンピュータであり、および前記１つ以上の命令は量子アルゴリズムを含む。いくつかの実施形態では、前記クラウドベースのインターフェースは、前記デジタルコンピュータに前記１つ以上の解を提供するように構成される。いくつかの実施形態では、前記少なくとも１つの非古典的コンピュータは、複数の非古典的コンピュータを含む。いくつかの実施形態では、前記１つ以上の命令は複数の命令を含み、および前記１つ以上の解は複数の解を含み、および前記クラスタマネージャは、前記複数の非古典的コンピュータを含む前記コンピューティングプラットフォームに送達される前記複数の命令を提供し、前記複数の非古典的コンピュータを含むコンピューティングプラットフォームは、前記複数の解を生成するために前記複数の命令を実行する。いくつかの実施形態では、前記デジタルコンピュータはパソコンである。いくつかの実施形態では、前記コンピューティングプラットフォームは少なくとも１つのデジタルプロセッサを含む。
【００２１】
別の態様では、本明細書に開示されるのは、ネットワークを通じて、少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームへのクラウドアクセスを、デジタルコンピュータに提供するためのコンピュータにより実行される方法であって、前記デジタルコンピュータは、少なくとも１つのコンピュータプロセッサと、リクエストを生成するために前記少なくとも１つのコンピュータプロセッサによって実行可能なコンピュータプログラムを含むコンピュータメモリを含み、および前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームは、１つ以上の解を生成するために前記リクエストに応えて１つ以上の命令を実行するように構成され、該方法は以下の工程を含む：（ｉ）前記ネットワークを通じて前記デジタルコンピュータから前記リクエストを受信するために、クラウドベースのインターフェースを使用する工程；（ｉｉ）前記リクエストに応えて、前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームに送達するための前記１つ以上の命令を提供する工程であって、前記少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームは、前記１つ以上の解を生成するための前記１つ以上の命令を実行する、工程；（ｉｉｉ）前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームによって生成された前記１つ以上の解を受信する工程；および、（ｉｖ）前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームによって生成された前記１つ以上の解を、１つ以上のデータベースに保存する工程。
【００２２】
いくつかの実施形態では、該方法はさらに、前記デジタルコンピュータのユーザーを認証する工程、システムとデータの安全を強化する工程、前記少なくとも１つのコンピュータプロセッサから前記リクエストを受信する工程、および前記データトラフィックをモニタリングする工程の１つ以上を含む。いくつかの実施形態では、該方法はさらに、前記１つ以上の命令を生成する工程または終了する工程、または前記１つ以上の命令の存続期間をモニタリングする工程を含む。いくつかの実施形態では、該方法はさらに、（ｂ）に先立って、キューに前記リクエストを出す工程を含む。いくつかの実施形態では、該方法はさらに、前記キューにおいて前記リクエストの順序を保全する工程を含む。いくつかの実施形態では、該方法はさらに、前記リクエストに関連するログを記録する工程を含み、前記ログは、タイムスタンプ、前記リクエストに関連する事象、計算の連続したスナップショット、および診断情報の少なくとも１つを含む。
【００２３】
いくつかの実施形態では、前記少なくとも１つの非古典的コンピュータは量子コンピュータであり、および前記１つ以上の命令は量子アルゴリズムを含む。いくつかの実施形態では、該方法はさらに、アプリケーションプログラミングインターフェース（ＡＰＩ）を生成する工程を含み、前記ＡＰＩは、前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームの異なるアーキテクチャに使用可能である。いくつかの実施形態では、該方法はさらに、（ｉ）前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームに、前記リクエストに関連する計算問題を、または（ｉｉ）前記デジタルコンピュータに、前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームからの前記１つ以上の解を、連続的に通信する工程を含む。いくつかの実施形態では、該方法はさらに、前記デジタルコンピュータに前記１つ以上の解を提供するために、前記クラウドベースのインターフェースを使用する工程を含む。いくつかの実施形態では、前記少なくとも１つの非古典的コンピュータは、複数の非古典的コンピュータを含む。いくつかの実施形態では、前記１つ以上の命令は複数の命令を含み、および前記１つ以上の解は複数の解を含み、および前記複数の命令は、前記複数の非古典的コンピュータを含む前記コンピューティングプラットフォームに送達され、前記複数の非古典的コンピュータを含むコンピューティングプラットフォームは、前記複数の解を生成するために前記複数の命令を実行する。いくつかの実施形態では、前記デジタルコンピュータはパソコンである。いくつかの実施形態では、前記コンピューティングプラットフォームは少なくとも１つのデジタルプロセッサを含む。
【００２４】
別の態様では、本明細書に開示されるのは、実行に際して、ネットワークを通じて少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームへのクラウドアクセスをデジタルコンピュータに提供するための方法を実行する、マシン実行可能コードを含む非一時的コンピュータ可読媒体であって、前記デジタルコンピュータは、少なくとも１つのコンピュータプロセッサと、リクエストを生成するために前記少なくとも１つのコンピュータプロセッサによって実行可能なコンピュータプログラムを含むコンピュータメモリを含み、および前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームは、１つ以上の解を生成するために前記リクエストに応えて１つ以上の命令を実行するように構成され、前記方法は以下の工程を含む：（ｉ）前記ネットワークを通じて前記デジタルコンピュータから前記リクエストを受信するために、クラウドベースのインターフェースを使用する工程；（ｉｉ）前記リクエストに応えて、前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームへ送達するための前記１つ以上の命令を提供する工程であって、前記少なくとも１つの非古典的コンピュータを含むコンピューティングプラットフォームは、前記１つ以上の解を生成するための前記１つ以上の命令を実行する、工程；（ｉｉｉ）前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームによって生成された前記１つ以上の解を受信する工程；および、（ｉｖ）前記少なくとも１つの非古典的コンピュータを含む前記コンピューティングプラットフォームによって生成された前記１つ以上の解を、１つ以上のデータベースに保存する工程。
【００２５】
別の態様では、本明細書に開示されるのは、ネットワークを通じてデジタルコンピュータに動作可能に接続された量子コンピュータを含む、量子計算資源へのアクセスを提供するためのコンピューティングシステムであって、量子コンピュータは１つ以上のアルゴリズムを行なうように構成され、デジタルコンピュータは少なくとも１つのコンピュータプロセッサおよびコンピュータメモリを含み、コンピュータメモリは、ネットワーク上での量子コンピュータとの通信を促進するアプリケーションを供給するために、少なくとも１つのコンピュータプロセッサによって実行可能な命令を備えたコンピュータプログラムを含み、コンピューティングシステムは以下を含む：（ａ）ネットワークを通じてデジタルコンピュータからリクエストを受信するようにプログラムされたゲートウェイであって、リクエストは計算タスクを含む、ゲートウェイ；（ｂ）キューにリクエストを出すようにプログラムされたキューイングユニット；（ｃ）（１）キューにあるリクエストを量子機械命令に変換し、（２）計算タスクを行なうためにネットワークを通じて量子コンピュータに量子機械命令を送達し、および（３）量子コンピュータから１つ以上の解を受信するために、ワーカー（ｗｏｒｋｅｒ）を生成するようにプログラムされたクラスタマネージャ；および（ｄ）スケーラブルで持続的なデータ保存を行ない、（１）リクエスト、（２）リクエストに含まれるデータセット、および（３）１つ以上の解の１つ以上を保存するようにプログラムされた１つ以上のデータセット。
【００２６】
いくつかの実施形態では、ゲートウェイはさらに、以下の１つ以上を実行するようにプログラムされる：システムのユーザーの認証、システムとデータの安全の強化、少なくとも１つのコンピュータプロセッサへのリクエストのルーティング、およびデータトラフィックのモニタリング。いくつかの実施形態では、クラスタマネージャはさらに、計算タスクの開始と終了を制御し、および計算タスクの存続期間をモニタリングするように構成される。いくつかの実施形態では、キューイングユニットはさらに、キューにおけるリクエストの順序を保全し、かつメッセージが失われるのを防ぐようにプログラムされる。いくつかの実施形態では、コンピューティングシステムはさらに、リクエストに関連するログを記録するようにプログラムされたロギングユニットを含み、前記ログは、タイムスタンプ、リクエストに関連する事象、計算の連続したスナップショット、および診断情報の少なくとも１つを含む。いくつかの実施形態では、コンピューティングシステムはさらにアプリケーションプログラミングインターフェース（ＡＰＩ）を含み、ＡＰＩは量子コンピュータのアーキテクチャと技術的詳細を隠すためのプログラミングモデルを提供し、およびＡＰＩは量子コンピュータの様々なアーキテクチャに使用可能である。いくつかの実施形態では、コンピューティングシステムはさらに、ユーザーからのリクエストに関連する計算問題を量子コンピュータに通信し、かつ量子コンピュータからの１つ以上の計算された解をユーザーに通信するようにプログラムされた連続ユニットを含む。
【００２７】
別の態様では、本明細書に開示されるのは、ネットワークを通じてデジタルコンピュータに動作可能に接続された量子コンピュータを含む、量子計算資源へのアクセスを提供するための命令を含む非一時的コンピュータ可読媒体であって、量子コンピュータは１つ以上のアルゴリズムを行なうように構成され、デジタルコンピュータは少なくとも１つのコンピュータプロセッサおよびコンピュータメモリを含み、非一時的コンピュータ可読媒体は以下を含む：（ａ）ネットワークを通じてデジタルコンピュータからリクエストを受信するようにプログラムされたゲートウェイであって、リクエストは計算タスクを含む、ゲートウェイ；（ｂ）キューにリクエストを出すようにプログラムされたキューイングユニット；（ｃ）（１）キューにあるリクエストを量子機械命令に変換し、（２）計算タスクを行なうためにネットワークを通じて量子コンピュータに量子機械命令を送達し、および（３）量子コンピュータから１つ以上の解を受信するために、ワーカー（ｗｏｒｋｅｒ）を生成するようにプログラムされたクラスタマネージャ；および（ｄ）スケーラブルで持続的なデータ保存を行ない、（１）リクエスト、（２）リクエストに含まれるデータセット、および（３）１つ以上の解の１つ以上を保存するようにプログラムされた１つ以上のデータセット。
【００２８】
いくつかの実施形態では、ゲートウェイはさらに、以下の１つ以上を実行するようにプログラムされる：システムのユーザーの認証、システムとデータの安全の強化、少なくとも１つのコンピュータプロセッサへのリクエストのルーティング、およびデータトラフィックのモニタリング。いくつかの実施形態では、クラスタマネージャはさらに、計算タスクの開始と終了を制御し、および計算タスクの存続期間をモニタリングするように構成される。いくつかの実施形態では、キューイングユニットはさらに、キューにおけるリクエストの順序を保全し、かつメッセージが失われるのを防ぐようにプログラムされる。いくつかの実施形態では、非一時的コンピュータ可読媒体はさらに、リクエストに関連するログを記録するようにプログラムされたロギングユニットを含み、前記ログは、タイムスタンプ、リクエストに関連する事象、計算の連続したスナップショット、および診断情報の少なくとも１つを含む。いくつかの実施形態では、非一時的コンピュータ可読媒体はさらにアプリケーションプログラミングインターフェース（ＡＰＩ）を含み、ＡＰＩは量子コンピュータのアーキテクチャと技術的詳細を隠すためのプログラミングモデルを提供し、およびＡＰＩは量子コンピュータの様々なアーキテクチャに使用可能である。いくつかの実施形態では、非一時的コンピュータ可読媒体はさらに、ユーザーからのリクエストに関連する計算問題を量子コンピュータに通信し、かつ量子コンピュータからの１つ以上の計算された解をユーザーに通信するようにプログラムされた連続ユニットを含む。
【００２９】
別の態様では、本明細書に開示されるのは、ネットワークを通じてデジタルコンピュータに動作可能に接続された量子コンピュータを含む、量子コンピュータ資源へのウェブベースのアクセスを提供するためのコンピュータにより実行される方法であって、量子コンピュータは１つ以上のアルゴリズムを行なうように構成され、デジタルコンピュータは少なくとも１つのコンピュータプロセッサおよびコンピュータメモリを含み、コンピュータメモリは、ネットワーク上での量子コンピュータとの通信を促進するアプリケーションを供給するために、少なくとも１つのコンピュータプロセッサによって実行可能な命令を備えたコンピュータプログラムを含み、該方法は以下の工程を含む：（ａ）ゲートウェイにおいて、ネットワークを通じてデジタルコンピュータからリクエストを受信する工程であって、リクエストは計算タスクを含む、工程；（ｂ）キューにリクエストを出すためにキューイングユニットを使用する工程；（ｃ）（１）キューにあるリクエストを量子機械命令に変換し、（２）計算タスクを行なうためにネットワークを通じて量子コンピュータに量子機械命令を送達し、および（３）量子コンピュータから１つ以上の解を受信するためにワーカー（ｗｏｒｋｅｒ）を生成するために、コンピュータプロセッサを使用する工程；および（ｄ）スケーラブルで持続的なデータ保存を行ない、（１）リクエスト、（２）リクエストに含まれるデータセット、および（３）１つ以上の解の１つ以上を保存するために、１つ以上のデータセットを使用する工程。
【００３０】
いくつかの実施形態では、該方法はさらに、ゲートウェイにおいて以下の１つ以上を行う工程を含む：ウェブサービスの使用の認証、システムとデータの安全の強化、少なくとも１つのコンピュータプロセッサの１つへのリクエストのルーティング、およびデータトラフィックのモニタリング。いくつかの実施形態では、該方法はさらに、プロセッサによって計算タスクの開始と終了を制御し、および計算タスクの存続期間をモニタリングする工程を含む。いくつかの実施形態では、該方法はさらに、プロセッサによってキューにおけるリクエストの順序を保全する工程、およびメッセージが失われるのを防ぐ工程を含む。いくつかの実施形態では、該方法はさらに、アプリケーションプログラミングインターフェース（ＡＰＩ）を生成するためにコンピュータプロセッサを使用する工程を含み、ＡＰＩは量子コンピュータのアーキテクチャと技術的詳細を隠すためのプログラミングモデルを提供し、およびＡＰＩは量子コンピュータの様々なアーキテクチャに使用可能である。いくつかの実施形態では、該方法はさらに、ユーザーからのリクエストに関連する計算問題を量子コンピュータに連続的に通信するためにコンピュータプロセッサを使用する工程、および量子コンピュータからの１つ以上の計算された解をユーザーに通信する工程を含む。
【００３１】
本開示の別の態様は、１つ以上のコンピュータプロセッサによる実行に際して、上記または本明細書のいずれかに記載の方法を実行する、マシン実行可能コードを含む非一時的コンピュータ可読媒体を提供する。
【００３２】
本開示の更なる態様と利点は、以下の詳細な説明から当業者にとって容易に明白になるだろうが、ここでは本開示の例示的な実施形態のみが示され記載される。以下の記載から分かるように、本開示は他の異なる実施形態も可能であり、およびそのいくつかの詳細は、全て本開示から逸脱することなく、様々な明白な点において修正が可能である。従って、図面と詳細な説明は本質的に例示的なものと見なされ、限定的とは見なされない。
【００３３】
＜参照による組み込み＞
本明細書で言及されるすべての刊行物、特許または特許出願は、あたかも各刊行物、特許または特許出願が参照により組み込まれることが具体的かつ個別に示されるのと同程度で、参照により本明細書に組み込まれる。
【図面の簡単な説明】
【００３４】
本発明の新規な特徴は、添付された特許請求の範囲にある特殊性により明らかにされる。本発明の特徴と利点のより良い理解は、本発明の原理が利用される例示的な実施形態を明らかにする以下の詳細な説明、および添付の図面（本明細書ではまた「図」および「ＦＩＧ」）を参照することによって得られるだろう。
【図１】アプリケーションプログラミングインターフェース（ＡＰＩ）ゲートウェイおよびキューイングユニットの非限定的な例を示す。
【図２】ＡＰＩゲートウェイ、キューイングユニットおよびデータベースサービスの非限定的な例を示す。
【図３】キューイングユニット、データベースサービスおよびクラスタマネージャの非限定的な例を示す。
【図４】クラスタマネージャおよびロギングユニットの非限定的な例を示す。
【図５】共有される量子計算資源にアクセスするためのクラウドプラットフォームのコンピューティングアーキテクチャの非限定的な例を示す。
【図６】量子対応コンピューティングプラットフォームの非限定的な例を示す。
【図７】量子および古典的な計算資源において、与えられた問題を部分問題へと分解するための解析ツリーの非限定的な例を示す。
【発明を実施するための形態】
【００３５】
本発明の様々な実施形態が本明細書に示され記載される一方で、そのような実施形態が単なる例として提供されることは当業者にとって明白だろう。多くの変形、変更および置換が、本発明から逸脱することなく当業者によって想到されるだろう。本明細書に記載される本発明の実施形態の様々な代替が使用され得ることが理解されるべきである。
【００３６】
特に定義されていない限り、本明細書で使用される全ての専門用語は、本発明が属する技術の当業者によって一般に理解されるのと同じ意味を有している。本明細書および添付の特許請求の範囲で使用されるように、単数型「ａ」「ａｎ」および「ｔｈｅ」は、文脈が明確に規定しない限り複数の参照を含む。本明細書における「または」への言及は、特に明記されていない限り「および／または」を包含するように意図される。
【００３７】
量子計算資源は珍しいものであろう。量子計算資源へのアクセスは高額であり、または地理的な制限を考慮するとそのような量子計算資源はアクセス不能である場合もある。ユーザーが量子コンピュータに直接アクセスしていたとしても、ユーザーは、計算タスクを解くために量子コンピュータを構成し、および／または適切な量子アルゴリズムを選ぶための高度な専門技術を有している必要があるだろう；そうでなければユーザーは、量子コンピュータによって提供される迅速な計算からの恩恵を得られない。優れた量子コンピュータでさえ、正しいアルゴリズム、正しい問題および正しいパラメータが選ばれなければ、問題を解く際の古典的計算資源に対する利点はないだろう。他方でユーザーの視点に立つと、計算問題は、多くのより小さなサブタスクを含む非常に大規模な計算タスクである場合もある。これらのサブタスクの各々は、異なる複雑性の特性を有する場合もある。したがって、正しい計算資源、正しいアルゴリズムおよび正しいパラメータの使用は、もとの問題を効率的に解き、および／または量子の潜在的な能率促進からの恩恵を得るのに不可欠であろう。
【００３８】
本開示は、量子即時サービスおよび／または量子対応サービスを提供するシステムおよび方法を提供する。量子即時サービスは、ユーザーが量子資源を管理し、および古典的計算資源と量子計算資源とを切り替えるのを有利により容易にするだろう。付加的に、量子対応フレームワークは、各特定の部分問題またはサブタスクにとって正しいソルバーと正しいパラメータを、フレームワークが高度な処理能力で選択するようなハイブリッド法で、古典的資源と量子資源の両方をユーザーが使用するのを可能にし得る。
【００３９】
本開示は、量子計算資源（例えば量子即時または量子対応のサービス）への共有されたまたは分配されたアクセスを可能にし得るシステムおよび方法を提供する。開示されたシステムは、クラウドコンピューティングプラットフォーム上に量子計算サービス（例えば量子アルゴリズムに基づいた最適化）を提供し得る。ソフトウェア開発キット（ＳＤＫ）を使用すると、ユーザーは、量子コンピュータを使用して最適化問題を解くのに必要な、量子計算資源、実装、または知識の深い理解を要求されないだろう。例えば、ユーザーに量子計算資源への共有されたまたは分配されたアクセスを提供するＳＤＫの使用は、ＰＣＴ国際出願ＰＣＴ／ＣＡ２０１７／０５０３２０“Ｍｅｔｈｏｄｓ  ａｎｄ  Ｓｙｓｔｅｍｓ  ｆｏｒ  Ｑｕａｎｔｕｍ  Ｃｏｍｐｕｔｉｎｇ”に開示されており、これは参照により完全に本明細書に組み込まれる。
【００４０】
本開示は、ネットワークを通じて（例えばクラウドにおいて）等の、分散環境において量子計算を促進するシステムおよび方法を提供する。例えば、第１の位置のユーザーは、第１の位置に対して遠隔に位置する第２の位置にある量子コンピュータ（例えば断熱量子コンピュータ）によって行われる演算またはタスクに関するリクエストを提出し得る。リクエストは、ネットワークを通じて１つ以上のコンピュータサーバーへと送られ、それはその後演算またはタスクを行なうために量子コンピュータにリクエストを送る。
【００４１】
本明細書に提供されるのは、分散コンピューティング環境（例えばクラウド）において最適化サービスを提供するシステムおよび方法であって、それは断熱量子コンピュータなどの量子計算技術を利用する場合もある。本開示の方法およびシステムは、場合によっては量子コンピュータを使用して最適化問題を解くのに必要な、資源、実装または知識の深い理解をユーザーが有する必要なく、様々な種類の量子コンピュータおよび様々な位置にいるユーザーにわたって、量子計算が相対的にかつ容易にスケーリングされることを可能にする。本明細書に提供されるシステムは、ユーザーがバックエンドの量子技術を利用しながら分散コンピューティング環境（例えばクラウド）においてデータ解析を行なうことを可能にするユーザーインターフェースを含み得る。
【００４２】
いくつかの実施形態では、システム、媒体、ネットワークおよび方法は、量子コンピュータまたはその使用を含む。量子計算は量子ビット（キュービット）を使用し、それは状態の重ね合わせであり得る。量子チューリングマシンはそのようなコンピュータの理論モデルであり、ユニバーサル量子コンピュータとしても知られている。量子コンピュータは、非決定論的・確率的コンピュータとの理論的類似を共有する。
【００４３】
いくつかの実施形態では、量子コンピュータは１つ以上の量子プロセッサを含む。量子コンピュータは１つ以上の量子アルゴリズムを行なうように構成され得る。量子コンピュータは、量子ビット（キュービット）によって表されるデータを保存または処理し得る。量子コンピュータは、ショアのアルゴリズムまたは量子多体系のシミュレーションを使用した整数因数分解のように、現在利用可能な最良のアルゴリズムを使用するいかなる古典的コンピュータよりも、はるかに素早く特定の問題を解くことができる場合もある。可能性のある確率的な古典的アルゴリズムよりも迅速に機能する、サイモンのアルゴリズムなどの量子アルゴリズムが存在する。量子アルゴリズムの例として限定されないが、量子最適化アルコリズム、量子フーリエ変換、振幅増幅、量子ウォークアルゴリズム、および量子進化アルゴリズムがあげられる。量子コンピュータは、古典的コンピュータが適当な時間内に解くことができないであろう問題を効率的に解くことができる場合もある。したがって、本明細書に開示されるシステムは、複雑な問題を解くために量子計算資源の長所を利用する。
【００４４】
いかなる種類の量子コンピュータも、本明細書に開示される技術に最適であり得る。量子コンピュータの例として、限定されないが、断熱量子コンピュータ、量子ゲートアレイ、一方向量子コンピュータ、トポロジカル量子コンピュータ、量子チューリングマシン、超伝導体ベースの量子コンピュータ、イオントラップ量子コンピュータ、光格子、量子ドットコンピュータ、スピンベースの量子コンピュータ、空間ベースの量子コンピュータ、Ｌｏｓｓ−ＤｉＶｉｎｃｅｎｚｏ量子コンピュータ、核磁気共鳴（ＮＭＲ）ベースの量子コンピュータ、液体ＮＭＲ量子コンピュータ、ソリッドステートＮＭＲ  Ｋａｎｅ量子コンピュータ、ヘリウム上の電子（ｅｌｅｃｔｒｏｎｓ−ｏｎ−ｈｅｌｉｕｍ）量子コンピュータ、キャビティ量子電気力学ベースの量子コンピュータ、分子磁石の量子コンピュータ、フラーレンベースの量子コンピュータ、線形光量子コンピュータ、ダイヤモンドベースの量子コンピュータ、Ｂｏｓｅ−Ｅｉｎｓｔｅｉｎ凝縮ベースの量子コンピュータ、トランジスターベースの量子コンピュータ、および希土類元素イオンドープ無機結晶（ｒａｒｅ−ｅａｒｔｈ−ｍｅｔａｌ−ｉｏｎ−ｄｏｐｅｄ  ｉｎｏｒｇａｎｉｃ  ｃｒｙｓｔａｌ）ベースの量子コンピュータがあげられる。量子コンピュータは、量子アニーラ、イジングソルバー、光パラメトリック発振器（ＯＰＯ）、または量子計算のゲートモデルの１つ以上を含み得る。
【００４５】
本開示のシステムは、量子即時または量子対応のコンピューティングシステムを含んでもよく、またはそれらを使用してもよい。量子即時コンピューティングシステムは、量子コンピュータに動作可能に接続されたデジタルコンピュータを含んでもよい。量子コンピュータは１つ以上の量子アルゴリズムを行なうように構成されてもよい。量子対応コンピューティングシステムは、量子コンピュータと古典的コンピュータを含んでもよく、および量子コンピュータと古典的コンピュータはデジタルコンピュータに動作可能に接続される。量子コンピュータは、計算問題を解くための１つ以上の量子アルゴリズムを行なうように構成されてもよい。古典的コンピュータは少なくとも１つの古典的プロセッサおよびコンピュータメモリを含んでもよく、および計算問題を解くための１つ以上の古典的アルゴリズムを行なうように構成されてもよい。
【００４６】
用語「量子アニーラ」および類語は一般的に、量子アニーリングを使用する、イジングスピン模型におけるスピンの構成の最適化を行う超伝導キュービットのシステムを指し、例えば、Ｆａｒｈｉ，Ｅ．ｅｔ  ａｌ．，“Ｑｕａｎｔｕｍ  Ａｄｉａｂａｔｉｃ  Ｅｖｏｌｕｔｉｏｎ  Ａｌｇｏｒｉｔｈｍｓ  ｖｅｒｓｕｓ  Ｓｉｍｕｌａｔｅｄ  Ａｎｎｅａｌｉｎｇ”ａｒＸｉｖ．ｏｒｇ：ｑｕａｎｔ  ｐｈ／０２０１０３１（２００２），ｐｐ．１  １６に記載されている。そのような類似のプロセッサの実施形態は、ＭｃＧｅｏｃｈ，Ｃａｔｈｅｒｉｎｅ  Ｃ．ａｎｄ  Ｃｏｎｇ  Ｗａｎｇ，（２０１３），“Ｅｘｐｅｒｉｍｅｎｔａｌ  Ｅｖａｌｕａｔｉｏｎ  ｏｆ  ａｎ  Ａｄｉａｂａｔｉｃ  Ｑｕａｎｔｕｍ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｃｏｍｂｉｎａｔｏｒｉａｌ  Ｏｐｔｉｍｉｚａｔｉｏｎ”Ｃｏｍｐｕｔｉｎｇ  Ｆｒｏｎｔｉｅｒｓ，”Ｍａｙ  １４  １６，２０１３（「＜ｈｔｔｐ：／／ｗｗｗ．ｃｓ．ａｍｈｅｒｓｔ．ｅｄｕ／ｃｃｍ／ｃｆ１４−ｍｃｇｅｏｃｈ．ｐｄｆ＞」）、さらに米国特許出願第２００６／０２２５１６５号に開示される。
【００４７】
いくつかの実施形態では、古典的コンピュータは１つ以上の古典的アルゴリズムを行なうように構成され得る。古典的アルゴリズム（または古典的計算タスク）は、量子コンピュータ、量子即時コンピューティングサービスまたは量子対応コンピューティングサービスを使用することなく、１つ以上の古典的コンピュータによって実行可能なアルゴリズム（または計算タスク）であり得る。古典的アルゴリズムは非量子アルゴリズムであり得る。古典的コンピュータは、量子コンピュータ、量子即時コンピューティングサービス、または量子対応コンピュータを含まないコンピュータであり得る。古典的コンピュータは、量子ビット（キュービット）ではなくデジタルビット（例えば、零（「０」）および一（「１」））により表されるデータを処理し、または保存し得る。古典的コンピュータの例として、限定されないが、サーバーコンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、サブノート型コンピュータ、ネットブックコンピュータ、ネットパッドコンピュータ、セットトップコンピュータ、メディアストリーミングデバイス、ハンドヘルドコンピュータ、インターネット家電、モバイルスマートフォン、タブレットコンピュータ、携帯情報端末、ビデオゲーム機、および伝達手段（ｖｅｈｉｃｌｅ）があげられる。
【００４８】
ある態様では、本開示は、量子即時最適化のためのシステムを提供する。コンピューティングシステムは、ネットワークを通じて遠隔の量子コンピュータに動作可能に接続されたデジタルコンピュータを含み得る。量子コンピュータは１つ以上の量子アルゴリズムを行なうように構成され得る。デジタルコンピュータは少なくとも１つのコンピュータプロセッサおよびコンピュータメモリを含み得る。コンピュータメモリは、アプリケーションを供給するために、少なくとも１つのコンピュータプロセッサによって実行可能な命令を備えたコンピュータプログラムを含み得る。アプリケーションは、ユーザーによる量子コンピュータの使用を促進し得る。
【００４９】
別の態様では、本開示は量子対応最適化のためのシステムを提供する。コンピューティングシステムは量子コンピュータおよび古典的コンピュータを含んでもよく、量子コンピュータと古典的コンピュータはネットワークを通じてデジタルコンピュータに動作可能に接続される。量子コンピュータは、計算問題を解くための１つ以上の量子アルゴリズムを行なうように構成され得る。古典的コンピュータは少なくとも１つの古典的プロセッサおよびコンピュータメモリを含んでもよく、および計算問題を解くための１つ以上の古典的アルゴリズムを行なうように構成され得る。デジタルコンピュータは少なくとも１つのコンピュータプロセッサとコンピュータメモリを含んでもよく、ここでデジタルコンピュータは、アプリケーションを供給するために少なくとも１つのコンピュータプロセッサによって実行可能な命令を備えたコンピュータプログラムを含み得る。アプリケーションは、ユーザーによる量子コンピュータおよび／または古典的コンピュータの使用を促進し得る。
【００５０】
いくつかの実装は、デスクトップパソコン、ラップトップ、スーパーコンピュータ、分散コンピューティング、クラスタ、クラウドベースの計算資源、スマートフォンまたはタブレットなどの、ビット上で動作する古典的コンピュータと共に、量子コンピュータを使用してもよい。
【００５１】
システムは、ネットワークを通じてリクエストを受信するようにプログラムされる、または構成されるゲートウェイを含み得る。そのリクエストは計算タスクを含み得る。計算タスクの例として、限定されないが、検索、最適化、統計的解析、モデリング、データマトリクス等があげられる。いくつかの実施形態では、リクエストはデータセットを含み得る；例えばモデリングを生成するための、またはデータセットの統計を分析するための変数と観測値を含むデータ行列。さらに、解は導き出され得る；例えば、所与のデータセットの基礎となる最適なモデルは、量子コンピュータから導き出される；統計的解析は量子コンピュータによって行なわれる。
【００５２】
システムは、１つ以上のキューにあるリクエストを保存し、かつ順序づけるようにプログラムされ、または構成されるキューイングユニットを含み得る。システムは、（１）キューにあるリクエストを１つ以上の量子機械命令に変換し、（２）計算タスクを行なうためにネットワークを通じて量子コンピュータに１つ以上の量子機械命令を送達し、および（３）量子コンピュータから１つ以上の解を受信するために、インスタンス／コンテナ（本明細書ではまた「ワーカー」）を生成するようにプログラムされ、または構成されるクラスタマネージャを含み得る。１つ以上の解はシステムのデータベースに保存され得る。システムは、ワーカーの事象を記録するようにプログラムされ、または構成されるロギングユニットを含み得る。
【００５３】
システムは、ユーザー用のインターフェースを含んでもよい。いくつかの実施形態では、インターフェースはアプリケーションプログラミングインターフェース（ＡＰＩ）を含み得る。インターフェースは、量子コンピュータの内部の詳細（例えばアーキテクチャと動作）を（例えばユーザーから隠すことによって）抜き去るプログラミングモデルを提供し得る。いくつかの実施形態では、インターフェースは、量子ハードウェアの変更に応じてアプリケーションプログラムを更新する必要を最小化し得る。いくつかの実施形態では、インターフェースは、量子コンピュータの内部構造が変化した場合も、同じままであり得る。
【００５４】
＜ゲートウェイ＞
本開示のシステム、媒体、ネットワークおよび方法は、ユーザーからリクエストを受信するようにプログラムされ、または構成され得るゲートウェイを含み得る。そのリクエストは計算タスクを含み得る。いくつかの実施形態では、ゲートウェイは、システムのユーザーを認証するようにプログラムされ、または構成される。いくつかの実施形態では、ゲートウェイはシステムとデータの安全をモニタリングするようにプログラムされ、または構成される。例えばゲートウェイは、リクエストと応答の暗号化のためにセキュアー・ソケット・レイヤー（ＳＳＬ）を使用してもよい。いくつかの実施形態では、ゲートウェイは、少なくとも１つのデジタルプロセッサの１つにリクエストを送るようにプログラムされ、または構成される。いくつかの実施形態では、ゲートウェイは、データトラフィックをモニタリングするようにプログラムされ、または構成される。
【００５５】
いくつかの実施形態では、本明細書にされるシステム、媒体、ネットワークおよび方法はキューイングユニットを含む。いくつかの実施形態では、キューイングユニットは、キューにリクエストを出すようにプログラムされ、または構成される。キューが複数のリクエストを含む場合、複数のリクエストは順番に出されてもよい。その順序は、先入れ先出し方式、タイミング、または利用可能な量子計算資源に基づいていてもよい。いくつかの実施形態では、キューイングユニットはさらに、キューにあるリクエストを並べ替えるようにプログラムされ、または構成される。いくつかの実施形態では、キューイングユニットは、メッセージが失われるのを防ぐ責任がある。提出されたタスクはキューに保存されてもよく、およびそれらと共に機能する必要のあるマイクロサービスによって順番にアクセスされてもよい。
【００５６】
ゲートウェイは、認証、ルーティング、安全保護およびモニタリングの目的に使用されるマイクロサービスであり得る。図１を参照すると、リクエスト（１０１）はアプリケーションプログラミングインターフェース（ＡＰＩ）ゲートウェイ（１１１）によって受信され、次に１つ以上の標的マイクロサービスへと転送される。いくつかの実施形態では、標的マイクロサービスが直ちに利用可能でない場合、リクエスト（１０１）はまず、キューにリクエストを出すキューイングユニット（１２１）によって処理され得る。場合によっては、リクエストはキュー（１２１）に押し込まれ、またはキュー（１２１）に挿入される。いくつかの実施形態では、キュー（１２１）にあるリクエストは、計算タスクの優先度に基づいて並べ替えられる。例えば、新たに入ってきたリクエストが、キューの一番上にあるリクエストと同じ計算タスクを有する場合、量子計算資源を節約するために、新たなリクエストは一番上のキューと同時に実行される方がよく、それによってキューイングユニットは同様にキューの一番上に新たなリクエストを出す。
【００５７】
いくつかの実施形態では、本明細書に記載されるシステム、媒体、ネットワークおよび方法は、データベースサービス、またはその使用を含む。いくつかの実施形態では、データベースは、リクエストにあるデータセットを保存するようにプログラムされ、または構成される。いくつかの実施形態では、マイクロサービスにあるデータベースは持続的なデータの保存を担当している。いくつかの実施形態では、解かれた問題の解はデータベースによって保全される。
【００５８】
図２を参照すると、データベース（１３１）はキューイングユニット（１２１）と通信する。いくつかの実施形態では、ワーカーまたは量子計算資源の状態（例えば有効性、読込み、書き込み、キューイング、実行されるアルゴリズム、行われたアルゴリズム、およびタイムスタンプ）は、データベース（１３１）に保存される。いくつかの実施形態では、リクエストと共に送信されたデータは、同様にデータベース（１３１）に保存される。持続的なデータおよび解決されたタスクの解はデータベース（１３１）に保存され得る。
【００５９】
いくつかの実施形態では、本明細書に開示される量子即時システムは、１つ以上のデータベースまたはその使用を含む。多くのタイプのデータベースが、アプリケーション情報の保存と検索に適しているだろう。いくつかの実施形態では、適切なデータベースには、非限定的な例として、リレーショナルデータベース、非リレーショナルデータベース、オブジェクト指向型データベース、オブジェクトデータベース、実体関連モデルデータベース、連想型データベースおよびＸＭＬデータベースが含まれる。いくつかの実施形態では、データベースはインターネットを基盤とする。いくつかの実施形態では、データベースはウェブベースである。いくつかの実施形態では、データベースはクラウドコンピューティングを基盤とする（例えばクラウド上）。他の実施形態では、データベースは１つ以上のローカルコンピュータ記憶デバイスを基盤とする。
【００６０】
いくつかの実施形態では、システムは、ゲートウェイを通じてユーザーから量子コンピュータへと問題インスタンスを通信するように構成された連続ユニットを含み得る。他方で、連続ユニットは、量子コンピュータからのそれらのインスタンスの計算された解を、ゲートウェイを通じてユーザーに通信するようにプログラムされ、または構成され得る。連続メカニズムは、ＪａｖａＳｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ（ＪＳＯＮ）、拡張可能なマーク付け言語（ＸＭＬ）、または他のマークアップ言語に基づいてもよい；しかしながら、連続のための完全に新しいフォーマットが使用されてもよい。いくつかの実施形態では、連続メカニズムはテキストまたはバイナリーファイルの送信を含んでもよい。いくつかの実施形態では、連続メカニズムは暗号化されてもされなくてもよい。いくつかの実施形態では、連続メカニズムは圧縮されてもされなくてもよい。
【００６１】
いくつかの実施形態では、システムは、計算タスクを解くために、ユーザーによるリクエストの提出が可能なように構成されるユーザーインターフェースを含んでもよい。ユーザーはタスクを特定し、かつ関連付けられたデータセットを提出してもよい。ユーザーインターフェースはゲートウェイにリクエストとデータセットを送信してもよい。ゲートウェイは次に、本明細書に開示される技術に基づいてリクエストを処理してもよい。解が量子コンピュータによって導き出されると、ゲートウェイはユーザーに通知を送信してもよい。ユーザーはユーザーインターフェース経由で解を検索してもよい。
【００６２】
＜クラスタマネージャ＞
いくつかの実施形態では、本明細書に記載されるシステム、媒体、ネットワークおよび方法はクラスタマネージャを含む。クラスタマネージャは、リクエストを量子機械命令に変換するようにプログラムされ、または構成され得る。いくつかの実施形態では、クラスタマネージャは、計算タスクを行なうために量子プロセッサに量子機械命令を送達する。加えて、クラスタマネージャは量子プロセッサから１つ以上の解を受信する。
【００６３】
いくつかの実施形態では、クラスタマネージャは、計算タスクを２つ以上の計算成分に分割するようにプログラムされる。いくつかの実施形態では、計算成分は量子アルゴリズムに対応する。いくつかの実施形態では、２つ以上の計算成分は、１つ以上の量子アルゴリズムに変換され、または量子機械命令に変換される。
【００６４】
いくつかの実施形態では、量子機械命令への変換は、キュービットの数の判定および／または量子オペレーターの判定を含む。いくつかの実施形態では、２つ以上の計算成分は、連続的に、並列式で、またはそれらの両方で、量子コンピュータによって実行される。
【００６５】
いくつかの実施形態では、クラスタマネージャは２つ以上の計算成分の解を集めるようにプログラムされ、または構成される。いくつかの実施形態では、クラスタマネージャはさらに、計算タスクの開始と終了を制御するようにプログラムされ、または構成される。さらに、クラスタマネージャは、計算タスクの存続期間をモニタリングするようにプログラムされ、または構成されてもよい。
【００６６】
図３を参照すると、中央キュー（１２１）は、クラスタマネージャ（１４１）にキューの最近の状態を送信する。この例において、クラスタマネージャ（１４１）はＡｐａｃｈｅ  Ｍｅｓｏｓサーバーによって実現される。クラスタマネージャ（１４１）は、特定のタイプの計算成分の存続期間を開始および制御する。クラスタマネージャは、キューエントリによって要求される操作（例えば、特定の量子計算命令に変換する、計算タスクを実行するように量子コンピュータ／プロセッサ（２０１）を制御する等）を行なうことができるインスタンス／コンテナ（ワーカーと呼ばれる）を始動させる。例えば、ワーカー（１５２）はリクエスト（１２２）の処理を担当する。ワーカー（１５２）が成功すると、それはデータベースサービス（１３１）にリクエストの処理の結果を送信し、およびキューからエントリ（１２２）を削除する。ワーカー（１５２）は次に、コストを節約するために、他の動作のための資源を有効活用するために破壊される。
【００６７】
いくつかの実施形態では、リクエストにおいて指定されたアルゴリズムは、古典的アルゴリズムまたは量子アルゴリズムを含み得る。ワーカーは、古典的アルゴリズムまたは量子アルゴリズムが別の古典的アルゴリズムまたは別の量子アルゴリズムに変換されるかどうかを判定し得る。一旦リクエストにある計算タスクが量子機械命令に変換されると、量子機械命令は量子コンピュータに送信され得る。量子コンピュータは、計算タスクを完了するために古典的アルゴリズムまたは量子アルゴリズム、またはその両方を実行し得る。
【００６８】
＜ロギングユニット＞
いくつかの実施形態では、本明細書に記載されるシステム、媒体、ネットワークおよび方法は、ロギングユニット、またはその使用を含む。いくつかの実施形態では、ロギングサービスは、別個のマイクロサービスに生じる事象の追跡を担当している。マイクロサービスのいくつかまたはすべては、中央ロギングマイクロサービスへと事象のログを送信し得る。
【００６９】
本明細書に開示される事象は、以下の１つ以上に関係し得る：システムへのログイン、リクエストの提出、リクエストの処理、リクエストのキューイング、リクエストにある計算タスクの処理、計算タスクの分割、量子アルゴリズムと量子命令への計算タスクの変換、量子コンピュータへの量子命令の送信、量子コンピュータによる計算の実行、量子コンピュータにおける計算操作の実行、量子コンピュータからサーバーへの計算結果または解の送信、および結果または解の有効性をユーザーに通知。
【００７０】
いくつかの実施形態では、ロギングユニットは、ログを保存するようにプログラムされ、または構成され、ログには、デジタルコンピュータまたは量子プロセッサで起こる事象が含まれる。いくつかの実施形態では、ログは事象のタイムスタンプを含む。
【００７１】
図４を参照すると、ロギングユニット（１６１）は、事象のいくつかまたはすべてを記録するためにワーカーと通信する。この図では、ロギングユニット（１６１）は、計算タスクの開始、演算、および終了を記録するために、ワーカー（１５３）と通信する。
【００７２】
＜量子対応および量子即時コンピューティング＞
本開示は、量子対応コンピューティングまたは量子対応コンピューティングの使用を含み得るシステム、媒体、ネットワークおよび方法を提供する。量子コンピュータは、特定のクラスの計算タスクを、古典的コンピュータよりも効率的に解くことができる場合もある。しかしながら、量子計算資源は稀であり、かつ高額であり得、および効率的にまたは効果的に（例えばコスト効率的にまたはコスト効果的に）使用される一定レベルの専門技術を含み得る。多くのパラメータが、量子コンピュータがその潜在的な計算能力を提供するために、適切に調整され得る。
【００７３】
量子コンピュータ（または他の種類の非古典的コンピュータ）は、コプロセッサとして古典的コンピュータと共に動作可能であり得る。量子対応コンピューティングのハイブリッドアーキテクチャは、ハードの最適化問題などの複雑な計算タスクに取り組むのに非常に能率的であり得る。本明細書に開示されるシステムは、量子即時または古典的なコンピューティングサービスで効率的に問題を解き得るかを決定することにより、計算費用のかかる問題を解くことができる遠隔インターフェースを提供し得る。インターフェースの背後のコンピューティングサービスは、問題を効率的にかつ高度な処理能力で分解し、または分類し、および量子即時または古典的なサービスに計算タスクの適切な成分を任せることができるだろう。
【００７４】
本明細書に記載される方法とシステムは、作業の一部に古典的コンピュータを、および作業の残りの部分に量子（または量子に似た）コンピュータ（例えば量子即時、または量子対応）を使用して、複雑な計算問題（複雑な離散型最適化など）への解のハイブリッド量子対応コンピューティングを提供する、クラウドベースのフレームワークを実現するように構成されたアーキテクチャを含んでもよい。
【００７５】
図６は、量子即時サービスを使用して計算タスクを行なうためのワークフローを示す。第１の動作において、ユーザーまたはクライアントはアプリケーションプログラミングインターフェース（ＡＰＩ）ゲートウェイ（６０１）に計算タスクを提出してもよい。次に、計算タスクはアービタ（６０２）へ転送されてもよい。第２の動作において、アービタ（６０２）は計算タスクを分解、および／または量子即時サービス（６０３）と古典的サービス（６０４）に分配してもよい。計算タスクは次に、部分問題へと分解および／または分配されてもよく、その各々はそれぞれ即時サービス（６０３）と古典的サービス（６０４）によって行われてもよい。次に、即時サービス（６０３）と古典的サービス（６０４）各々からの１つ以上の解は、アービタ（６０２）（または別のアービタ）に送られてもよい。次に、クライアントまたはユーザーの電子機器のユーザーインターフェースに送られる等（例えば、クラウドを通じて等、ネットワークを通じて送られる）、計算タスクの解の表示がクライアントまたはユーザーに提供されてもよい。解は、部分問題の個々の解を含み得る。その表示は解または個々の解を含むかもしれない。
【００７６】
本明細書に開示される技術は、困難な（例えば複雑な）計算タスクをより単純な（例えばより複雑でない）部分問題へと、高度な処理能力で分解する工程を含み得る、一連のサブプロセスを含み得る。システムはさらに、分解されたタスクをどのように複数の古典的計算資源と量子即時コンピューティングサービスへと分配するかを、高度な処理能力で決定し得る。
【００７７】
図６を再び参照すると、量子対応ＡＰＩゲートウェイ（６０１）は、以下の１つ以上を提供する責任のあるユーザー対応サービスを含み得る：認証、モニタリング（例えばロギング）および帯域幅制限。ユーザー対応サービスは、クライアントコンピュータへのプログラムによるアクセスを含み得る。認証は、ユーザーの身元を照合し、および量子対応資源へのアクセスを認めるべきかを決定し得る。
【００７８】
図６を再び参照すると、アービタ（６０２）は量子問題と古典的問題を一緒に解き得る。いくつかの応用では、アービタ（６０２）はインテリジェントアルゴリズムを使用して与えられた問題を分解し得る。アービタ（６０２）は、集中型または分散型の古典的処理環境で作動する１つ以上のインテリジェントアルゴリズムを含み得る。アービタは以下の１つ以上を作動させる量子対応ソフトウェアサービスを提供し得る：（１）与えられた問題を部分問題へと分解する（例えば分解する）；（２）量子即時サービス（６０３）を使用して解くことができる部分問題を特定する；（３）適宜、古典的サービス（６０３）および量子即時サービス（６０４）へとそれぞれタスクを分配する；（４）古典的サービス（６０３）および量子即時サービス（６０４）からそれぞれ部分問題の解を回収する；（５）回収された部分問題の解を使用して、もとの計算タスクを換算する；（６）もとの問題が完全に解かれた場合、システムは解を表示して終了する；そうでなければ、システムは換算された問題の残りの部分に対して動作（１）を繰り返してもよい。量子即時サービス（６０３）の動作は、本明細書に別記される技術に基づいてもよい。他方で古典的サービス（６０４）は、クライアントからそのようなタスクの指示を取得することによる高価な計算タスクの処理；そのようなタスクの指示を適切なフォームに変換するための、必要なプロセスの適用；およびコンピュータ、コンピュータのクラスタ、スーパーコンピュータ等の１つ以上の古典的デジタルコンピューティングデバイスへの、そのようなタスクの指示の提出、を扱うように構成される任意のクラウドベースのソフトウェアサービスを含み得る。
【００７９】
様々な実装では、コンピューティングシステムは並列計算または分散計算を含んでもよい。量子即時サービス（６０３）および古典的サービス（６０４）は並列式で作動し得る。さらに、並列計算は量子即時サービス（６０３）において実施され得る。例えば図５を参照すると、量子コンピュータは、ワーカーファーム（１５１）において並列式で多数の計算問題を解いてもよい：単一の問題または部分問題がワーカーファーム（１５１）において並列式で解かれてもよい。同様に、古典的コンピュータは、並列式で多数の計算問題を解いてもよい；単一の問題または部分問題はさらに、並列式または分散法で解かれてもよい。
【００８０】
分解と分配のためのインテリジェントアルゴリズムは、動的であり、かつ問題に依存し得る。１つ以上のそのようなインテリジェントアルゴリズムが使用されてもよい。図７を参照すると、インテリジェントアルゴリズムは探索木（７０１）として可能解空間をモデル化し得る。探索木の各ノードは、解体されたまたは重複する変数のセットを含む対応する部分問題へと、元の計算問題を分解するために使用され得る。探索木（７０１）では、異なるノードは部分問題のソルバーを表す；例えば、ノード０、２、５、６および１１−１４は古典的タスクを解くことができ、他方でノード１、３−４および７−１０は量子タスクを解くことができるだろう。さらに、古典的タスクおよび量子タスクを解く能力は、ノード間で様々であろう；例えば、ノード３と８は古典的タスクをほとんど解けず、および多くの量子タスクを解くことができるだろうが、他方でノード７は多くの古典的タスクを解くことができ、および量子タスクをほとんど解くことができないだろう。インテリジェントアルゴリズムは、探索木にある特定のノードにおいて、潜在的な部分問題の特定の特徴を計算し得る。特徴の例には限定されないが、古典的ソルバーの妥当性、量子ソルバーの妥当性、計算タスクの複雑性（例えば時間とプロセッサのサイクル）、量子および古典的なソースにおける現在の計算性能、および計算された解の推定時間が含まれ得る。特徴は、決定論的または確率論的モデルであってもよい。インテリジェントアルゴリズムは、利用可能な量子計算資源と古典的計算資源の各々のサイズ制限、性能および最高のパフォーマンスモードについての情報へのアクセスを有し得る。インテリジェントアルゴリズムは、潜在的な部分問題の指数と共に、量子計算資源と古典的計算資源についての利用可能な情報を使用してもよい。インテリジェントアルゴリズムは、探索木の特定のノードにおいて問題を分解するのに有利かどうかを判定することができる。分解が行なわれる場合、結果としてもたらされる部分問題は、探索木にあるそれらに対応するノードと共に部分問題のプールに加えられてもよい。分解が有利でない場合、特定の分解が有利になるまで、インテリジェントアルゴリズムはすべての可能性のあるノードを考慮して探索木を横断（トラバース）し続けてもよい。量子計算資源または古典的計算資源から受け取った部分問題の部分的結果に基づいて、インテリジェントアルゴリズムは、よりよい解に寄与しないであろう特定のノードの除去によって探索木を小さくすることができるであろう。
【００８１】
本開示は量子コンピュータに言及したが、本開示の方法およびシステムは他の種類のコンピュータと共に使用するために用いられてもよく、それは非古典的コンピュータであってもよい。そのような非古典的コンピュータは、量子コンピュータ、ハイブリッド量子コンピュータ、量子型コンピュータ、または古典的コンピュータではない他の量子コンピュータを含み得る。非古典的コンピュータの例には限定されないが、日立イジングソルバー（Ｈｉｔａｃｈｉ  Ｉｓｉｎｇ  ｓｏｌｖｅｒ）、光学パラメータに基づいたコヒーレント・イジングマシン、および特定のクラスの問題を解くのにより有効であるように異なる物理的現象を利用する他のソルバーが含まれ得る。
【００８２】
＜トランザクション＞
様々な実施形態では、本明細書に記載されるシステム、方法、プラットフォーム、および媒体は、１つ以上の解を生成するために、１つ以上の命令を少なくとも実行するのと引き換えに、価値のあるアイテムを受信するためのトランザクショナルユニットを含み得る。価値のあるアイテムは金銭またはクレジットを含み得る。価値のあるアイテムは、デジタルコンピュータのユーザーから受信され得る。トランザクショナルユニットは、１つ以上の解を生成するために１つ以上の命令を実行するためのコストを判定し得る。トランザクショナルユニットは、１つ以上の命令を実行した後または前にコストを判定してもよく、および１つ以上の命令は、１つ以上の命令を実行するための認証を受信すると実行され得る。認証はデジタルコンピュータのユーザーから受信され得る。価値のあるアイテムはコストに等しい場合もある。
【００８３】
＜デジタル処理デバイス＞
いくつかの実施形態では、本明細書に記載されるシステム、媒体、ネットワークおよび方法は、デジタル処理デバイス、またはその使用を含む。いくつかの実施形態では、デジタル処理デバイスは、デバイスの機能を実行する１つ以上のハードウェア中央処理装置（ＣＰＵ）を含む。いくつかの実施形態では、デジタル処理デバイスはさらには、実行可能な命令を行うように構成されるオペレーティングシステム（ＯＳ）を含む。いくつかの実施形態では、デジタル処理デバイスはコンピュータネットワークに接続される。いくつかの実施形態では、デジタル処理デバイスは、ワールド・ワイド・ウェブにアクセスするようにインターネットに接続される。いくつかの実施形態では、デジタル処理デバイスは、クラウドコンピューティングインフラストラクチャーに接続される。いくつかの実施形態では、デジタル処理デバイスはイントラネットに接続される。いくつかの実施形態では、デジタル処理デバイスはデータ記憶デバイスに接続される。
【００８４】
本明細書の記載によれば、適切なデジタル処理デバイスの非限定的な例には、サーバーコンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、サブノート型コンピュータ、ネットブックコンピュータ、ネットパッドコンピュータ、セットトップコンピュータ、メディアストリーミングデバイス、ハンドヘルドコンピュータ、インターネット家電、モバイルスマートフォン、タブレットコンピュータ、携帯情報端末、ビデオゲーム機、および伝達手段（ｖｅｈｉｃｌｅ）が含まれ得る。スマートフォンは、本明細書に記載される方法およびシステムと共に使用するのに適しているだろう。場合によってはコンピュータネットワーク接続を備えた、選ばれたテレビ、ビデオプレーヤおよびデジタル音楽プレーヤーが、本明細書に記載されるシステムで使用するのに適しているだろう。適切なタブレットコンピュータには、ブックレット、スレートおよびコンバーティブル型を備えたものが含まれ得る。
【００８５】
いくつかの実施形態では、デジタル処理デバイスは、実行可能な命令を行うように構成されたオペレーティングシステムを含む。オペレーティングシステムは、例えば、デバイスのハードウェアを制御し、およびアプリケーションの実行のためのサービスを提供する、プログラムとデータを含むソフトウェアである。適切なサーバーオペレーティングシステムには、非限定的な例としてＦｒｅｅＢＳＤ、ＯｐｅｎＢＳＤ、ＮｅｔＢＳＤ（登録商標）、Ｌｉｎｕｘ、Ａｐｐｌｅ（登録商標）Ｍａｃ  ＯＳ  Ｘ  Ｓｅｒｖｅｒ（登録商標）、Ｏｒａｃｌｅ（登録商標）Ｓｏｌａｒｉｓ（登録商標）、Ｗｉｎｄｏｗｓ  Ｓｅｒｖｅｒ（登録商標）、およびＮｏｖｅｌｌ（登録商標）ＮｅｔＷａｒｅ（登録商標）が含まれる。適切なパーソナルコンピュータオペレーティングシステムには、非限定的な例としてＭｉｃｒｏｓｏｆｔ（登録商標）Ｗｉｎｄｏｗｓ（登録商標）、Ａｐｐｌｅ（登録商標）Ｍａｃ  ＯＳ  Ｘ（登録商標）、ＵＮＩＸ（登録商標）、およびＧＮＵ／Ｌｉｎｕｘ（登録商標）などのＵＮＩＸに似たオペレーティングシステムが含まれる。いくつかの実施形態では、オペレーティングシステムはクラウドコンピューティングによって提供される。適切なモバイルスマートフォンオペレーティングシステムには、非限定的な例としてＮｏｋｉａ（登録商標）Ｓｙｍｂｉａｎ（登録商標）ＯＳ、Ａｐｐｌｅ（登録商標）ｉＯＳ（登録商標）、Ｒｅｓｅａｒｃｈ  Ｉｎ  Ｍｏｔｉｏｎ（登録商標）ＢｌａｃｋＢｅｒｒｙ  ＯＳ（登録商標）、Ｇｏｏｇｌｅ（登録商標）Ａｎｄｒｏｉｄ（登録商標）、Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｗｉｎｄｏｗｓ  Ｐｈｏｎｅ（登録商標）ＯＳ、Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｗｉｎｄｏｗｓ  Ｍｏｂｉｌｅ（登録商標）ＯＳ、Ｌｉｎｕｘ（登録商標）、およびＰａｌｍ（登録商標）ＷｅｂＯＳ（登録商標）が含まれる。適切なメディアストリーミングデバイスオペレーティングシステムには、非限定的な例としてＡｐｐｌｅ  ＴＶ（登録商標）、Ｒｏｋｕ（登録商標）、Ｂｏｘｅｅ（登録商標）、Ｇｏｏｇｌｅ  ＴＶ（登録商標）、Ｇｏｏｇｌｅ  Ｃｈｒｏｍｅｃａｓｔ（登録商標）、Ａｍａｚｏｎ  Ｆｉｒｅ（登録商標）、およびＳａｍｓｕｎｇ（登録商標）ＨｏｍｅＳｙｎｃ（登録商標）が含まれる。適切なビデオゲーム機オペレーティングシステムには、非限定的な例としてＳｏｎｙ（登録商標）ＰＳ３（登録商標）、Ｓｏｎｙ（登録商標）ＰＳ４（登録商標）、Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｘｂｏｘ  ３６０（登録商標）、Ｍｉｃｒｏｓｏｆｔ  Ｘｂｏｘ  Ｏｎｅ、Ｎｉｎｔｅｎｄｏ（登録商標）Ｗｉｉ（登録商標）、Ｎｉｎｔｅｎｄｏ（登録商標）Ｗｉｉ  Ｕ（登録商標）、およびＯｕｙａ（登録商標）が含まれる。
【００８６】
いくつかの実施形態では、デバイスは記憶装置および／またはメモリデバイスを含む。記憶装置および／またはメモリデバイスは、一時的または恒久的な方式でデータまたはプログラムを保存するために使用される１つ以上の物理的な装置である。いくつかの実施形態では、デバイスは揮発性メモリであり、保存した情報を保全するために電力を必要とする。いくつかの実施形態では、デバイスは不揮発性メモリであり、デジタル処理デバイスに電力が供給されていない時に、保存した情報を保持する。いくつかの実施形態では、不揮発性メモリはフラッシュメモリを含む。いくつかの実施形態では、不揮発性メモリはダイナミックランダムアクセスメモリ（ＤＲＡＭ）を含む。いくつかの実施形態では、不揮発性メモリは強誘電体ランダムアクセスメモリ（ＦＲＡＭ）を含む。いくつかの実施形態では、不揮発性メモリは相変化ランダムアクセスメモリ（ＰＲＡＭ）を含む。他の実施形態では、デバイスは、非限定的な例としてＣＤ−ＲＯＭ、ＤＶＤ、フラッシュメモリデバイス、磁気ディスクデバイス、磁気テープドライブ、光学ドライブ、およびクラウドコンピューティングベースの記憶域を含む記憶デバイスである。いくつかの実施形態では、記憶装置および／またはメモリデバイスは、本明細書に開示のデバイスなどの組み合わせである。
【００８７】
いくつかの実施形態では、デジタル処理デバイスは、ユーザーに視覚情報を送るディスプレイを含む。いくつかの実施形態では、ディスプレイはブラウン管（ＣＲＴ）である。いくつかの実施形態では、ディスプレイは液晶ディスプレイ（ＬＣＤ）である。いくつかの実施形態では、ディスプレイは薄膜トランジスター液晶ディスプレイ（ＴＦＴ−ＬＣＤ）である。いくつかの実施形態では、ディスプレイは有機発光ダイオード（ＯＬＥＤ）ディスプレイである。いくつかの実施形態では、ＯＬＥＤディスプレイは、パッシブ−マトリクスＯＬＥＤ（ＰＭＯＬＥＤ）またはアクティブ−マトリクスＯＬＥＤ（ＡＭＯＬＥＤ）のディスプレイである。いくつかの実施形態では、ディスプレイはプラズマディスプレイである。他の実施形態では、ディスプレイはビデオプロジェクターである。いくつかの実施形態では、ディスプレイは、本明細書に開示されるデバイスなどの組み合わせである。
【００８８】
いくつかの実施形態では、デジタル処理デバイスは、ユーザーからの情報を受け取るための入力デバイスを含む。いくつかの実施形態では、入力デバイスはキーボードである。いくつかの実施形態では、入力デバイスは、非限定的な例としてマウス、トラックボール、トラックパッド、ジョイスティック、ゲームコントローラ、またはスタイラスを含むポインティングデバイスである。いくつかの実施形態では、入力デバイスはタッチスクリーンまたはマルチタッチスクリーンである。他の実施形態では、入力デバイスは、音声または他の音入力を捕らえるマイクロホンである。他の実施形態では、入力デバイスは、動きまたは視覚入力を捕らえるビデオカメラまたは他のセンサーである。いくつかの実施形態では、入力デバイスは、Ｋｉｎｅｃｔ、Ｌｅａｐ  Ｍｏｔｉｏｎなどである。いくつかの実施形態では、入力デバイスは、本明細書に開示されるデバイスなどの組み合わせである。
【００８９】
＜非一時的コンピュータ可読記憶媒体＞
いくつかの実施形態では、本明細書に記載されるシステム、媒体、ネットワークおよび方法は、随意にネットワーク接続されたデジタル処理デバイスのオペレーティングシステムによって実行可能な命令を含むプログラムで符号化された、１つ以上の非一時的コンピュータ可読記憶媒体を含む。いくつかの実施形態では、コンピュータ可読記憶媒体は、デジタル処理デバイスの実体のあるコンポーネントである。いくつかの実施形態では、コンピュータ可読記憶媒体は、デジタル処理デバイスから随意に取外し可能である。いくつかの実施形態では、コンピュータ可読記憶媒体は、非限定的な例としてＣＤ−ＲＯＭ、ＤＶＤ、フラッシュメモリデバイス、ソリッドステートメモリ、磁気ディスクドライブ、磁気テープドライブ、光学ドライブ、クラウドコンピューティングシステムおよびサービスなどを含む。場合によっては、プログラムと命令は、恒久的に、実質的に恒久的に、半恒久的に、または非一時的に、媒体にエンコードされる。
【００９０】
＜コンピュータプログラム＞
いくつかの実施形態では、本明細書に記載されるシステム、媒体、ネットワークおよび方法は、少なくとも１つのコンピュータプログラムまたはその使用を含む。コンピュータプログラムは、指定されたタスクを行なうために書かれた、デジタル処理デバイスのＣＰＵにおいて実行可能な一連の命令を含む。コンピュータ可読命令は、特定のタスクを行う、または特定のデータ型（例えば抽象データ型）を実行するファンクション、オブジェクト、アプリケーションプログラミングインターフェース（ＡＰＩ）、データ構造などのプログラムユニットとして実施され得る。本明細書に提供される開示に照らして、コンピュータプログラムは様々な言語の様々なバージョンで書かれてもよい。
【００９１】
コンピュータ可読命令の機能は、様々な環境において望ましいように組み合わせ、または分配してもよい。いくつかの実施形態では、コンピュータプログラムは、命令の１つの配列を含む。いくつかの実施形態では、コンピュータプログラムは、命令の複数の配列を含む。いくつかの実施形態では、コンピュータプログラムは１つの位置から提供される。他の実施形態では、コンピュータプログラムは複数の位置から提供される。いくつかの実施形態では、コンピュータプログラムは１つ以上のソフトウェアユニットを含む。いくつかの実施形態では、コンピュータプログラムは、部分的にまたは全体として、１つ以上のウェブアプリケーション、１つ以上のモバイルアプリケーション、１つ以上のスタンドアロンアプリケーション、１つ以上のウェブブラウザプラグイン、拡張、アドイン、またはアドオン、またはその組み合わせを含む。
【００９２】
＜ウェブアプリケーション＞
いくつかの実施形態では、コンピュータプログラムはウェブアプリケーションを含む。ウェブアプリケーションは１つ以上のソフトウェアフレームワークおよび１つ以上のデータベースシステムを利用してもよい。いくつかの実施形態では、ウェブアプリケーションは、Ｍｉｃｒｏｓｏｆｔ（登録商標）．ＮＥＴまたはＲｕｂｙ  ｏｎ  Ｒａｉｌｓ（ＲｏＲ）などのソフトウェアフレームワークで作成される。いくつかの実施形態では、ウェブアプリケーションは、非限定的な例としてリレーショナル、非リレーショナル、オブジェクト指向、連想型、およびＸＭＬのデータベースシステムを含む１つ以上のデータベースシステムを利用する。いくつかの実施形態では、適切なリレーショナルデータベースシステムには、非限定的な例としてＭｉｃｒｏｓｏｆｔ（登録商標）ＳＱＬ  Ｓｅｒｖｅｒ、ｍｙＳＱＬ（商標）、およびＯｒａｃｌｅ（登録商標）が含まれる。ウェブアプリケーションは１つ以上の言語の１つ以上のバージョンで書かれてもよい。ウェブアプリケーションは、１つ以上のマークアップ言語、プレゼンテーション定義言語、クライアント側スクリプト言語、サーバー側コーディング言語、データベース照会言語、またはその組み合わせで書かれてもよい。いくつかの実施形態では、ウェブアプリケーションは、ハイパーテキストマークアップ言語（ＨＴＭＬ）、拡張ハイパーテキストマークアップ言語（ＸＨＴＭＬ）、または拡張マークアップ言語（ＸＭＬ）などのマークアップ言語である程度まで書かれている。いくつかの実施形態では、ウェブアプリケーションは、Ｃａｓｃａｄｉｎｇ  Ｓｔｙｌｅ  Ｓｈｅｅｔｓ（ＣＳＳ）などのプレゼンテーション定義言語である程度まで書かれている。いくつかの実施形態では、ウェブアプリケーションは、Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｊａｖａｓｃｒｉｐｔ  ａｎｄ  ＸＭＬ（ＡＪＡＸ）、Ｆｌａｓｈ（登録商標）Ａｃｔｉｏｎｓｃｒｉｐｔ、Ｊａｖａｓｃｒｉｐｔ、またはＳｉｌｖｅｒｌｉｇｈｔなどのクライアント側スクリプト言語である程度まで書かれている。いくつかの実施形態では、ウェブアプリケーションは、Ａｃｔｉｖｅ  Ｓｅｒｖｅｒ  Ｐａｇｅｓ（ＡＳＰ）、ＣｏｌｄＦｕｓｉｏｎ（登録商標）、Ｐｅｒｌ、Ｊａｖａ（商標）、ＪａｖａＳｅｒｖｅｒ  Ｐａｇｅｓ（ＪＳＰ）、Ｈｙｐｅｒｔｅｘｔ  Ｐｒｅｐｒｏｃｅｓｓｏｒ（ＰＨＰ）、Ｐｙｔｈｏｎ（登録商標）、Ｒｕｂｙ、Ｔｃｌ、Ｓｍａｌｌｔａｌｋ、ＷｅｂＤＮＡ（登録商標）、またはＧｒｏｏｖｙなどのサーバー側のコーディング言語である程度まで書かれている。いくつかの実施形態では、ウェブアプリケーションは、構造化照会言語（ＳＱＬ）などのデータベース照会言語である程度まで書かれている。いくつかの実施形態では、ウェブアプリケーションは、ＩＢＭ（登録商標）Ｌｏｔｕｓ  Ｄｏｍｉｎｏなどの企業向けサーバー製品を統合する。いくつかの実施形態では、ウェブアプリケーションはメディアプレーヤー要素を含む。いくつかの実施形態では、メディアプレーヤー要素は、非限定的な例としてＡｄｏｂｅ（登録商標）Ｆｌａｓｈ（登録商標）、ＨＴＭＬ  ５、Ａｐｐｌｅ（登録商標）ＱｕｉｃｋＴｉｍｅ（登録商標）、Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｓｉｌｖｅｒｌｉ��ｈｔ（登録商標）、Ｊａｖａ（商標）、およびＵｎｉｔｙ（登録商標）を含む、多くの適切なマルチメディア技術のうちの１つ以上を利用する。
【００９３】
＜モバイルアプリケーション＞
いくつかの実施形態では、コンピュータプログラムは、モバイルデジタル処理デバイスに提供されるモバイルアプリケーションを含む。いくつかの実施形態では、モバイルアプリケーションは、製造時にモバイルデジタル処理デバイスに提供される。他の実施形態では、モバイルアプリケーションは、本明細書に記載されるコンピュータネットワーク経由でモバイルデジタル処理デバイスに提供される。
【００９４】
モバイルアプリケーションは、例えばハードウェア、言語および開発環境を使用して作成されてもよい。モバイルアプリケーションは様々なプログラミング言語で書かれてもよい。適切なプログラミング言語には、非限定的な例として、Ｃ、Ｃ＋＋、Ｃ＃、Ｏｂｊｅｃｔｉｖｅ−Ｃ、Ｊａｖａ（商標）、Ｊａｖａｓｃｒｉｐｔ、Ｐａｓｃａｌ、Ｏｂｊｅｃｔ  Ｐａｓｃａｌ、Ｐｙｔｈｏｎ（商標）、Ｒｕｂｙ、ＶＢ．ＮＥＴ、ＷＭＬ、およびＣＳＳの有無に関わらないＸＨＴＭＬ／ＨＴＭＬ、またはその組み合わせが含まれる。
【００９５】
適切なモバイルアプリケーションの開発環境は、いくつかのソースから入手可能である。市販の開発環境には、非限定的な例として、ＡｉｒｐｌａｙＳＤＫ、ａｌｃｈｅＭｏ、Ａｐｐｃｅｌｅｒａｔｏｒ（登録商標）、Ｃｅｌｓｉｕｓ、Ｂｅｄｒｏｃｋ、Ｆｌａｓｈ  Ｌｉｔｅ、．ＮＥＴ  Ｃｏｍｐａｃｔ  Ｆｒａｍｅｗｏｒｋ、Ｒｈｏｍｏｂｉｌｅ、およびＷｏｒｋＬｉｇｈｔ  Ｍｏｂｉｌｅ  Ｐｌａｔｆｏｒｍが含まれる。他の開発環境は費用なしで利用可能であり、非限定的な例としてＬａｚａｒｕｓ、ＭｏｂｉＦｌｅｘ、ＭｏＳｙｎｃおよびＰｈｏｎｅｇａｐを含む。さらに、モバイルデバイスの製造業者は、非限定的な例としてｉＰｈｏｎｅおよびｉＰａｄ（ｉＯＳ）ＳＤＫ、Ａｎｄｒｏｉｄ（商標）ＳＤＫ、ＢｌａｃｋＢｅｒｒｙ（登録商標）ＳＤＫ、ＢＲＥＷ  ＳＤＫ、Ｐａｌｍ（登録商標）ＯＳ  ＳＤＫ、Ｓｙｍｂｉａｎ  ＳＤＫ、ｗｅｂＯＳ  ＳＤＫ、およびＷｉｎｄｏｗｓ（登録商標）Ｍｏｂｉｌｅ  ＳＤＫを含むソフトウェア開発キットを流通させている。
【００９６】
いくつかの商用フォーラムはモバイルアプリケーションの流通に利用可能であり得、非限定的な例としてＡｐｐｌｅ（登録商標）Ａｐｐ  Ｓｔｏｒｅ、Ａｎｄｒｏｉｄ（商標）Ｍａｒｋｅｔ、ＢｌａｃｋＢｅｒｒｙ（登録商標）Ａｐｐ  Ｗｏｒｌｄ、Ｐａｌｍデバイス用のＡｐｐ  Ｓｔｏｒｅ、ｗｅｂＯＳ用のＡｐｐ  Ｃａｔａｌｏｇ、Ｍｏｂｉｌｅ用のＷｉｎｄｏｗｓ（登録商標）Ｍａｒｋｅｔｐｌａｃｅ、Ｎｏｋｉａ（登録商標）デバイス用のＯｖｉ  Ｓｔｏｒｅ、Ｓａｍｓｕｎｇ（登録商標）Ａｐｐｓ、およびＮｉｎｔｅｎｄｏ（登録商標）ＤＳｉ  Ｓｈｏｐを含む。
【００９７】
＜スタンドアロンアプリケーション＞
いくつかの実施形態では、コンピュータプログラムは、独立したコンピュータプロセスとして実行され、既存のプロセスへのアドオンではない、例えばプラグインではない、プログラムであるスタンドアロンアプリケーションを含む。スタンドアロンアプリケーションはコンパイルされ得る。コンパイラは、プログラミング言語で書かれたソースコードを、アセンブリ言語または機械コードなどの２進法のオブジェクトコードに変えるコンピュータプログラムである。コンパイルされた適切なプログラミング言語には、非限定的な例として、Ｃ、Ｃ＋＋、Ｏｂｊｅｃｔｉｖｅ−Ｃ、ＣＯＢＯＬ、Ｄｅｌｐｈｉ、Ｅｉｆｆｅｌ、Ｊａｖａ（商標）、Ｌｉｓｐ、Ｐｙｔｈｏｎ（商標）、Ｖｉｓｕａｌ  Ｂａｓｉｃ、およびＶＢ．ＮＥＴ、またはその組み合わせが含まれる。コンパイルは、少なくとも部分的に、実行可能プログラムを生成するためにしばしば行なわれる。いくつかの実施形態では、コンピュータプログラムは１つ以上のコンパイルされた実行可能なアプリケーションを含む。
【００９８】
＜ウェブブラウザプラグイン＞
いくつかの実施形態では、コンピュータプログラムは、ウェブブラウザプラグインを含む。コンピューティングにおいて、プラグインは、より大きなソフトウェアアプリケーションに特定の機能を加える１つ以上のソフトウェアコンポーネントである。ソフトウェアアプリケーションのメーカーは、第三者の開発者がアプリケーションを拡張する性能を作り出すのを可能にし、新たな機能を容易に追加できるようサポートし、およびアプリケーションのサイズを減らすために、プラグインをサポートする。サポートされている時、プラグインはソフトウェアアプリケーションの機能のカスタマイズを可能にし得る。例えばプラグインは一般的に、ビデオを再生し、対話機能を生成し、ウィルスをスキャンし、および特定のファイルタイプを表示するために、ウェブブラウザで使用される。ウェブブラウザプラグインには、限定されないが、Ａｄｏｂｅ（登録商標）Ｆｌａｓｈ（登録商標）Ｐｌａｙｅｒ、Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｓｉｌｖｅｒｌｉｇｈｔ（登録商標）、およびＡｐｐｌｅ（登録商標）ＱｕｉｃｋＴｉｍｅ（登録商標）が含まれる。いくつかの実施形態では、ツールバーは１つ以上のウェブブラウザ拡張、アドインまたはアドオンを含む。いくつかの実施形態では、ツールバーは１つ以上のエクスプローラバー、ツールバンドまたはデスクバンドを含む。
【００９９】
非限定的な例として、Ｃ＋＋、Ｄｅｌｐｈｉ、Ｊａｖａ（商標）、ＰＨＰ、Ｐｙｔｈｏｎ（商標）、およびＶＢ．ＮＥＴ、またはそれらの組み合わせを含む様々なプログラミング言語でのプラグインの開発を可能にし得る、いくつかのプラグインフレームワークが利用可能である。
【０１００】
ウェブブラウザ（インターネットブラウザとも呼ばれる）は、ワールド・ワイド・ウェブ上の情報資源の検索、提示、および横断（トラバース）のために、ネットワーク接続されたデジタル処理デバイスと共に使用するために構成され得るソフトウェアアプリケーションである。適切なウェブブラウザには、非限定的な例として、Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（登録商標）、Ｍｏｚｉｌｌａ（登録商標）Ｆｉｒｅｆｏｘ（登録商標）、Ｇｏｏｇｌｅ（登録商標）Ｃｈｒｏｍｅ、Ａｐｐｌｅ（登録商標）Ｓａｆａｒｉ（登録商標）、Ｏｐｅｒａ  Ｓｏｆｔｗａｒｅ（登録商標）Ｏｐｅｒａ（登録商標）、およびＫＤＥ  Ｋｏｎｑｕｅｒｏｒが含まれる。いくつかの実施形態では、ウェブブラウザはモバイルウェブブラウザである。モバイルウェブブラウザ（マイクロブラウザ、ミニブラウザおよび無線ブラウザとも呼ばれる）は、非限定的な例としてハンドヘルドコンピュータ、タブレットコンピュータ、ネットブックコンピュータ、サブノート型コンピュータ、スマートフォン、音楽プレーヤー、携帯情報端末（ＰＤＡ）、および携帯型ビデオゲームシステムを含むモバイルデジタル処理デバイスでの使用のために構成され得る。適切なモバイルウェブブラウザには、非限定的な例としてＧｏｏｇｌｅ（登録商標）Ａｎｄｒｏｉｄ（と登録商標）ブラウザ、ＲＩＭ  ＢｌａｃｋＢｅｒｒｙ（登録商標）ブラウザ、Ａｐｐｌｅ（登録商標）Ｓａｆａｒｉ（登録商標）、Ｐａｌｍ（登録商標）Ｂｌａｚｅｒ、Ｐａｌｍ（登録商標）ＷｅｂＯＳ（登録商標）ブラウザ、モバイル用のＭｏｚｉｌｌａ（登録商標）Ｆｉｒｅｆｏｘ（登録商標）、Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（登録商標）Ｍｏｂｉｌｅ、Ａｍａｚｏｎ（登録商標）Ｋｉｎｄｌｅ（登録商標）Ｂａｓｉｃ  Ｗｅｂ、Ｎｏｋｉａ（登録商標）ブラウザ、Ｏｐｅｒａ  Ｓｏｆｔｗａｒｅ（登録商標）Ｏｐｅｒａ（登録商標）Ｍｏｂｉｌｅ、およびＳｏｎｙ（登録商標）ＰＳＰ（商標）ブラウザが含まれる。
【０１０１】
＜ソフトウェアモジュール＞
いくつかの実施形態では、本明細書に記載されるシステム、媒体、ネットワークおよび方法は、ソフトウェア、サーバー、および／またはデータベースモジュール、またはその使用を含む。ソフトウェアモジュールは様々なマシン、ソフトウェアおよびプログラミング言語を使用して作成され得る。本明細書に開示されるソフトウェアモジュールは、様々な方法で実施される。いくつかの実施形態では、ソフトウェアモジュールは、ファイル、コードの一部、プログラミングオブジェクト、プログラミング構造、またはその組み合わせを含む。いくつかの実施形態では、ソフトウェアモジュールは、複数のファイル、コードの複数部分、複数のプログラミングオブジェクト、複数のプログラミング構造、またはその組み合わせを含む。いくつかの実施形態では、１つ以上のソフトウェアモジュールは、非限定的な例として、ウェブアプリケーション、モバイルアプリケーションおよびスタンドアロンアプリケーションを含む。いくつかの実施形態では、ソフトウェアモジュールは１つのコンピュータプログラムまたはアプリケーションにある。他の実施形態では、ソフトウェアモジュールは複数のコンピュータプログラムまたはアプリケーションにある。いくつかの実施形態では、ソフトウェアモジュールは１つのマシン上でホストされる。他の実施形態では、ソフトウェアモジュールは複数のマシン上でホストされる。いくつかの実施形態では、ソフトウェアモジュールはクラウドコンピューティングプラットフォーム上でホストされる。いくつかの実施形態では、ソフトウェアモジュールは１つの位置にある１つ以上のマシン上でホストされる。他の実施形態では、ソフトウェアモジュールは複数の位置にある１つ以上のマシン上でホストされる。
【０１０２】
＜実施例＞
以下の例示的な実施例は、本明細書に記載されるソフトウェアアプリケーション、システム、および方法の代表的な実施形態であり、および限定を目的とするものではない。
【０１０３】
＜実施例１：コンピューティングアーキテクチャ＞
図５は、システムのコンピューティングアーキテクチャの非限定的な例を示す。計算タスクを含むリクエスト（１０１）は、ＡＰＩゲートウェイ（１１１）へ送信される。リクエスト（１０１）は、キューにリクエストを出すキューイングユニット（１２１）によってまず処理される。データベース（１３１）は、キューの状態とトランザクションを記録するためにキューイングユニット（１２１）と通信する。キューイングユニット（１２１）はさらに、クラスタマネージャ（１４１）にキューの最近の状態を送信する。この実施例において、クラスタマネージャ（１４１）はＡｐａｃｈｅ  Ｍｅｓｏｓサーバーによって実現される。クラスタマネージャ（１４１）は、特定のタイプの計算成分の存続期間を開始させ、かつ制御する。クラスタマネージャ（１４１）は、特定の量子計算命令に変換し、かつ計算タスクを実行するようにデジタルおよび量子のプロセッサを制御する等、統合されたデジタル計算および量子計算を行なうためにワーカーファーム（１５１）のワーカーを始動させる。割り当てられたタスクを完了したワーカーは、その後、クラスタマネージャ（１４１）によって破壊される。ロギングユニット（１６１）は、すべての事象を記録するためにワーカーと通信する。
【０１０４】
本開示のシステムおよび方法は、例えば以下に記載されるもの等の、他のシステムおよび方法と組み合わせてもよく、またはそれらによって修正されてもよい：米国特許第２０１２／０３２６７２０号および米国特許第２００６／０２２５１６５号；Ｆａｒｈｉ，Ｅｄｗａｒｄ，ｅｔ  ａｌ．“Ｑｕａｎｔｕｍ  ｃｏｍｐｕｔａｔｉｏｎ  ｂｙ  ａｄｉａｂａｔｉｃ  ｅｖｏｌｕｔｉｏｎ．”ａｒＸｉｖ  ｐｒｅｐｒｉｎｔ  ｑｕａｎｔ−ｐｈ／０００１１０６（２０００）；およびＶａｎ  Ｄａｍ，Ｗｉｍ，Ｍｉｃｈｅｌｅ  Ｍｏｓｃａ，ａｎｄ  Ｕｍｅｓｈ  Ｖａｚｉｒａｎｉ，“Ｈｏｗ  ｐｏｗｅｒｆｕｌ  ｉｓ  ａｄｉａｂａｔｉｃ  ｑｕａｎｔｕｍ  ｃｏｍｐｕｔａｔｉｏｎ？”，Ｆｏｕｎｄａｔｉｏｎｓ  ｏｆ  Ｃｏｍｐｕｔｅｒ  Ｓｃｉｅｎｃｅ，２００１，Ｐｒｏｃｅｅｄｉｎｇｓ，４２ｎｄ  ＩＥＥＥ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  ＩＥＥＥ（２００１）、これらの各々は参照により完全に本明細書に組み込まれる。
【０１０５】
本発明の好ましい実施形態が本明細書に示され、記載されたが、そのような実施形態が単なる例として提供されていることは、当業者にとって明白だろう。本発明を明細書内で提供される特定の例によって制限することは意図していない。本発明は、前述の明細書に関連して記載されているが、他方で本明細書の実施形態の記載と例示は、限定的な意味で解釈されることを意図していない。多くの変形、変化、および置換が、本発明から逸脱することなく当業者に想到されるであろう。さらに、本発明の全ての態様は、様々な条件と変数に依存する、本明細書に記載の特定の記述、構成または相対的比率に限定されないことを理解されたい。本明細書に記載される本発明の実施形態の様々な代案が、本発明を実施する際に利用され得ることを理解されたい。したがって、本発明はさらに、そのような代案、修正、変形または同等物を包含することが熟慮される。以下の特許請求の範囲が本発明の範囲を定義し、したがってこの特許請求の範囲内にある方法と構造およびそれらの同等物が包含されることが意図されている。
【図１】
2019521431.tif 000003
【図２】
2019521431.tif 000004
【図３】
2019521431.tif 000005
【図４】
2019521431.tif 000006
【図５】
2019521431.tif 000007
【図６】
2019521431.tif 000008
【図７】
2019521431.tif 000009
【国際調査報告】
2019521431.tif 000010
2019521431.tif 000011