(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-17
(45)【発行日】2024-09-26
(54)【発明の名称】疎なデータ収集に基づく量子コンピューティング・システムのクロストークの特徴付け
(51)【国際特許分類】
G06N 10/70 20220101AFI20240918BHJP
【FI】
G06N10/70
(21)【出願番号】P 2022525007
(86)(22)【出願日】2020-11-06
(86)【国際出願番号】 EP2020081282
(87)【国際公開番号】W WO2021089779
(87)【国際公開日】2021-05-14
【審査請求日】2023-04-24
(32)【優先日】2019-11-08
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【氏名又は名称】太佐 種一
(72)【発明者】
【氏名】ムラリー、プラカシュ
(72)【発明者】
【氏名】ジャバディアブハリ、アリ
(72)【発明者】
【氏名】マッカイ、デイヴィッド
【審査官】山本 俊介
(56)【参考文献】
【文献】国際公開第2019/152019(WO,A1)
【文献】Mohan Sarovar et al.,Detecting crosstalk errors in quantum information processors,arXiv [online],2019年08月26日,https://arxiv.org/abs/1908.09855v1,[2024年3月21日検索]
(58)【調査した分野】(Int.Cl.,DB名)
G06N 10/00-10/80
(57)【特許請求の範囲】
【請求項1】
システムであって、
コンピュータ実行可能構成要素を記憶したメモリと、
前記メモリに記憶された前記コンピュータ実行可能構成要素を実行するプロセッサと
を備え、前記コンピュータ実行可能構成要素が、
量子デバイスの中の量子ゲートのサブセットを1つまたは複数のビンにパックするパッケージ構成要素、および
量子ゲートの前記サブセットがパックされたいくつかの前記1つまたは複数のビンに基づいて前記量子デバイスのクロストークを特徴付ける評価構成要素
を含
み、
量子ゲートの前記サブセットが、前記量子デバイスの中の少なくとも1つの量子ゲートによって分離された少なくとも2つの量子ゲートを含む、
システム。
【請求項2】
量子ゲートの前記サブセットが、前記量子デバイスの中の2つ以上の量子ゲートによって分離された、請求項1に記載のシステム。
【請求項3】
前記評価構成要素が、前記いくつかの前記1つまたは複数のビンにパックされた量子ゲートの前記サブセットのうちの1つまたは複数のサブセットのクロストーク測定を実行して、前記量子デバイスの前記クロストークを特徴付ける、請求項1または2に記載のシステム。
【請求項4】
前記評価構成要素が、前記クロストーク測定を定められた時間間隔で実行して、前記いくつかの前記1つまたは複数のビンにパックされた量子ゲートの前記サブセットのうちの少なくとも1つのサブセットのクロストーク変動を捕捉する、請求項3に記載のシステム。
【請求項5】
前記評価構成要素が、前記いくつかの前記1つまたは複数のビンにパックされた量子ゲートの前記サブセットのうちの少なくとも2つのサブセットの並列化されたクロストーク測定を同時に実行して、前記量子デバイスの前記クロストークを特徴付け、それによって、前記量子デバイスの前記クロストークを特徴付けるための前記プロセッサの計算コストの低減または時間の短縮うちの少なくとも一方を容易にする、請求項1ないし4のいずれかに記載のシステム。
【請求項6】
前記コンピュータ実行可能構成要素がさらに、
定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットを識別する識別構成要素を含み、前記評価構成要素が、量子ゲートの前記少なくとも1つのサブセットに基づいて前記量子デバイスのクロストークを特徴付ける、
請求項1ないし5のいずれかに記載のシステム。
【請求項7】
請求項3に記載の特徴を有し、前記評価構成要素が、前記クロストーク測定の結果を前記識別構成要素に提供するように構成されており、該測定結果が、前記いくつかの前記1つまたは複数のビンにパックされた量子ゲートの前記1つまたは複数のサブセットに対応する誤り率を含む、請求項6に記載のシステム。
【請求項8】
前記評価構成要素が、同時ランダム化ベンチマーキング(SRB)測定を含むクロストーク測定を実行することによって前記量子デバイスのクロストークを特徴付ける、請求項1ないし7のいずれかに記載のシステム。
【請求項9】
前記評価構成要素が、SRB実験を実行して、前記いくつかの前記1つまたは複数のビンにパックされた量子ゲートの前記サブセットのうちの少なくとも2つのサブセットの独立誤り率と条件付きゲート誤り率とのうちの少なくとも一方を測定し、前記量子デバイスのクロストークを特徴付けることによって、前記クロストークを特徴付けるように構成されている、請求項8に記載のシステム。
【請求項10】
前記評価構成要素が、並列に駆動されうる制御NOTゲート(CNOTゲート)のあらゆる対の条件付き誤り率(CER)を測定するように構成されており、該CNOTゲートが、ゲート・ベースの量子コンピューティング・デバイスの中で使用される量子論理ゲートを含む、請求項1ないし9のいずれかに記載のシステム。
【請求項11】
コンピュータ実施方法であって、
プロセッサに動作可能に結合されたシステムによって、量子デバイスの中の量子ゲートのサブセットを1つまたは複数のビンにパックすること、および
前記システムによって、量子ゲートの前記サブセットがパックされたいくつかの前記1つまたは複数のビンに基づいて前記量子デバイスのクロストークを特徴付けること
を含
み、
量子ゲートの前記サブセットが、前記量子デバイスの中の少なくとも1つの量子ゲートによって分離された少なくとも2つの量子ゲートを含む、コンピュータ実施方法。
【請求項12】
疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けるプロセスを容易にするコンピュータ・プログラムであって、
プロセッサに、
量子デバイスの中の量子ゲートのサブセットを1つまたは複数のビンにパックすること、および
量子ゲートの前記サブセットがパックされたいくつかの前記1つまたは複数のビンに基づいて前記量子デバイスのクロストークを特徴付けること
を、実行させ
、
量子ゲートの前記サブセットが、前記量子デバイスの中の少なくとも1つの量子ゲートによって分離された少なくとも2つの量子ゲートを含む、コンピュータ・プログラム。
【請求項13】
システムであって、
コンピュータ実行可能構成要素を記憶したメモリと、
前記メモリに記憶された前記コンピュータ実行可能構成要素を実行するプロセッサと
を備え、前記コンピュータ実行可能構成要素が、
定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットを識別する識別構成要素、および
量子ゲートの前記少なくとも1つのサブセットに基づいて前記量子デバイスのクロストークを特徴付ける評価構成要素
を含
み、
量子ゲートの前記少なくとも1つのサブセットが、前記量子デバイスの中の単一の量子ゲートによって分離された量子ゲートの対を含む、システム。
【請求項14】
量子ゲートの前記少なくとも1つのサブセットが、前記量子デバイスの中の少なくとも2つの量子ゲートによって分離された量子ゲート対を含む、請求項
13に記載のシステム。
【請求項15】
前記コンピュータ実行可能構成要素がさらに、
前記量子デバイスの量子ゲート・サブセットを1つまたは複数のビンにパックするパッケージ構成要素を含み、前記評価構成要素が、前記量子ゲート・サブセットがパックされたいくつかの前記1つまたは複数のビンに基づいて前記量子デバイスの前記クロストークを特徴付ける、
請求項
13または
14に記載のシステム。
【請求項16】
前記評価構成要素が、
定められた第1の時刻に、前記量子デバイスの量子ゲート・サブセットの並列化されたクロストーク測定を同時に実行して、前記定められたレベルのクロストークを発生させる、前記量子デバイスの中の量子ゲートの前記少なくとも1つのサブセットを識別し、
定められた第2の時刻に、前記定められたレベルのクロストークを発生させる、前記量子デバイスの中の量子ゲートの前記少なくとも1つのサブセットに基づいて前記量子デバイスの前記クロストークを特徴付ける、
請求項
13ないし
15のいずれかに記載のシステム。
【請求項17】
前記識別構成要素が、定められた時間間隔で実行された前記量子デバイスの1つまたは複数の量子ゲート・サブセットのクロストーク測定に基づいて量子ゲートの前記少なくとも1つのサブセットを識別し、それによって、前記量子デバイスの前記クロストークを特徴付けるための前記プロセッサの計算コストの低減または時間の短縮うちの少なくとも一方を容易にする、請求項
13ないし
16のいずれかに記載のシステム。
【請求項18】
コンピュータ実施方法であって、
プロセッサに動作可能に結合されたシステムによって、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットを識別すること、および
前記システムによって、量子ゲートの前記少なくとも1つのサブセットに基づいて前記量子デバイスのクロストークを特徴付けること
を含み、
量子ゲートの前記少なくとも1つのサブセットが、前記量子デバイスの中の少なくとも1つの量子ゲートによって分離された少なくとも2つの量子ゲートを含む、コンピュータ実施方法。
【請求項19】
量子ゲートの前記サブセットが、前記量子デバイスの中の2つ以上の量子ゲートによって分離された、請求項11または18に記載のコンピュータ実施方法。
【請求項20】
量子ゲートの前記サブセットが、前記量子デバイスの中の2つ以上の量子ゲートによって分離された、請求項12に記載のコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本主題開示(subject disclosure)は、量子コンピューティング・システムのクロストーク(crosstalk)を特徴付けることに関し、より詳細には、疎なデータ収集(sparse data collection)に基づいて量子コンピューティング・システムのクロストークを特徴付けることに関する。
【発明の概要】
【0002】
以下に、本発明の1つまたは複数の実施形態の基本的理解を提供する概要を示す。この概要が、鍵となる要素もしくは決定的に重要な要素を識別すること、または、この概要が、特定の実施形態の範囲もしくは特許請求の範囲を限定することは意図されていない。その唯一の目的は、後に示すより詳細な説明に対する前置きとして、着想を、簡略化された形で示すことにある。本明細書に記載された1つまたは複数の実施形態では、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にするシステム、デバイス、コンピュータ実施方法(computer-implemented method)もしくはコンピュータ・プログラム製品またはこれらの組合せが説明される。
【0003】
一実施形態によれば、システムは、コンピュータ実行可能構成要素を記憶したメモリと、メモリに記憶されたコンピュータ実行可能構成要素を実行するプロセッサとを備えることができる。コンピュータ実行可能構成要素は、量子デバイスの中の量子ゲートのサブセットを1つまたは複数のビン(bin)にパックするパッケージ構成要素を含むことができる。コンピュータ実行可能構成要素はさらに、量子ゲートのサブセットがパックされたいくつかの1つまたは複数のビンに基づいて量子デバイスのクロストークを特徴付ける評価構成要素を含むことができる。このようなシステムの利点は、このようなシステムが、条件付きゲート誤り率(conditional gate error rate)を測定するために実行される実験(例えばクロストーク測定)の数を減らすことによって量子デバイスのクロストーク特徴付け(crosstalk characterization)時間を短縮することができることである。
【0004】
いくつかの実施形態では、評価構成要素が、そのいくつかの1つまたは複数のビンにパックされた量子ゲートのサブセットのうちの1つまたは複数のサブセットのクロストーク測定を実行して、量子デバイスのクロストークを特徴付ける。このようなシステムの利点は、このようなシステムが、クロストーク測定を実行するプロセッサの計算コストを低減させることができることである。
【0005】
別の実施形態によれば、コンピュータ実施方法は、プロセッサに動作可能に結合されたシステムによって、量子デバイスの中の量子ゲートのサブセットを1つまたは複数のビンにパックすることを含むことができる。このコンピュータ実施方法はさらに、そのシステムによって、量子ゲートのサブセットがパックされたいくつかの1つまたは複数のビンに基づいて量子デバイスのクロストークを特徴付けることを含むことができる。このようなコンピュータ実施方法の利点は、条件付きゲート誤り率を測定するために実行される実験(例えばクロストーク測定)の数を減らすことによって量子デバイスのクロストーク特徴付け時間を短縮するように、このようなコンピュータ実施方法を実施することができることである。
【0006】
いくつかの実施形態では、このコンピュータ実施方法がさらに、そのシステムによって、そのいくつかの1つまたは複数のビンにパックされた量子ゲートのサブセットのうちの1つまたは複数のサブセットのクロストーク測定を実行して、量子デバイスのクロストークを特徴付けることを含むことができる。このようなコンピュータ実施方法の利点は、クロストーク測定を実行するプロセッサの計算コストを低減させるように、このようなコンピュータ実施方法を実施することができることである。
【0007】
別の実施形態によれば、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けるプロセスを容易にするコンピュータ・プログラム製品が提供される。このコンピュータ・プログラム製品は、プログラム命令が実装されたコンピュータ可読ストレージ媒体を含み、このプログラム命令は、プロセッサによって、量子デバイスの中の量子ゲートのサブセットを1つまたは複数のビンにパックすることを、そのプロセッサに実行させるように、そのプロセッサによって実行可能である。このプログラム命令はさらに、そのプロセッサによって、量子ゲートのサブセットがパックされたそのいくつかの1つまたは複数のビンに基づいて量子デバイスのクロストークを特徴付けることを、そのプロセッサに実行させるように、そのプロセッサによって実行可能である。このようなコンピュータ・プログラム製品の利点は、このようなコンピュータ・プログラム製品が、条件付きゲート誤り率を測定するために実行される実験(例えばクロストーク測定)の数を減らすことによって量子デバイスのクロストーク特徴付け時間を短縮することができることである。
【0008】
いくつかの実施形態では、このプログラム命令がさらに、そのプロセッサによって、そのいくつかの1つまたは複数のビンにパックされた量子ゲートのサブセットのうちの1つまたは複数のサブセットのクロストーク測定を実行して、量子デバイスのクロストークを特徴付けることを、そのプロセッサに実行させるように、そのプロセッサによって実行可能である。このようなコンピュータ・プログラム製品の利点は、このようなコンピュータ・プログラム製品が、クロストーク測定を実行するプロセッサの計算コストを低減させることができることである。
【0009】
一実施形態によれば、システムは、コンピュータ実行可能構成要素を記憶したメモリと、メモリに記憶されたコンピュータ実行可能構成要素を実行するプロセッサとを備えることができる。コンピュータ実行可能構成要素は、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットを識別する識別構成要素を含むことができる。コンピュータ実行可能構成要素はさらに、量子ゲートの少なくとも1つのサブセットに基づいて量子デバイスのクロストークを特徴付ける評価構成要素を含むことができる。このようなシステムの利点は、このようなシステムが、条件付きゲート誤り率を測定するために実行される実験(例えばクロストーク測定)の数を減らすことによって量子デバイスのクロストーク特徴付け時間を短縮することができることである。
【0010】
いくつかの実施形態では、評価構成要素が、定められた第1の時刻に、量子デバイスの量子ゲート・サブセットの並列化されたクロストーク測定を同時に実行して、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットを識別し、定められた第2の時刻に、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットに基づいて量子デバイスのクロストークを特徴付ける。このようなシステムの利点は、このようなシステムが、クロストーク測定を実行するプロセッサの計算コストを低減させることができることである。
【0011】
別の実施形態によれば、コンピュータ実施方法は、プロセッサに動作可能に結合されたシステムによって、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットを識別することを含むことができる。このコンピュータ実施方法はさらに、そのシステムによって、量子ゲートの少なくとも1つのサブセットに基づいて量子デバイスのクロストークを特徴付けることを含むことができる。このようなコンピュータ実施方法の利点は、条件付きゲート誤り率を測定するために実行される実験(例えばクロストーク測定)の数を減らすことによって量子デバイスのクロストーク特徴付け時間を短縮するように、このようなコンピュータ実施方法を実施することができることである。
【0012】
いくつかの実施形態では、このコンピュータ実施方法がさらに、そのシステムによって、定められた第1の時刻に、量子デバイスの量子ゲート・サブセットの同時の並列化されたクロストーク測定を実行して、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットを識別すること、およびそのシステムによって、定められた第2の時刻に、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットに基づいて量子デバイスのクロストークを特徴付けることを含むことができる。このようなコンピュータ実施方法の利点は、クロストーク測定を実行するプロセッサの計算コストを低減させるように、このようなコンピュータ実施方法を実施することができることである。
【図面の簡単な説明】
【0013】
【
図1】本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的なシステムのブロック図である。
【
図2】本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的なシステムのブロック図である。
【
図3】本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的な情報を示す図である。
【
図4】本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的な図である。
【
図5】本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的な情報を示す図である。
【
図6】本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的な情報を示す図である。
【
図7A】本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的なコンピュータ実施方法の流れ図である。
【
図7B】本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的なコンピュータ実施方法の流れ図である。
【
図7C】本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的なコンピュータ実施方法の流れ図である。
【
図8】本明細書に記載された1つまたは複数の実施形態を容易にすることができる例示的で非限定的な動作環境のブロック図である。
【
図9】本主題開示の1つまたは複数の実施形態による、例示的で非限定的なクラウド・コンピューティング環境のブロック図である。
【
図10】本主題開示の1つまたは複数の実施形態による、例示的で非限定的な抽象化モデル層のブロック図である。
【発明を実施するための形態】
【0014】
以下の詳細な説明は例示だけが目的であり、以下の詳細な説明が、実施形態を限定すること、または実施形態の用途もしくは使用を限定すること、あるいはその両方を限定することは意図されていない。さらに、上記の「背景技術」もしくは「発明の概要」または「発明を実施するための形態」に示された明示のまたは暗示の情報によって拘束されることも意図されていない。
【0015】
次に、図面を参照して1つまたは複数の実施形態を説明する。全体を通じて、同じ要素を指すために同じ参照符号が使用されている。以下の説明では、説明の目的上、1つまたは複数の実施形態のより完全な理解を提供するために、数多くの特定の詳細が示される。しかしながら、さまざまなケースにおいて、それらの特定の詳細なしで1つまたは複数の実施形態を実施することができることは明白である。
【0016】
量子コンピューティングは一般に、コンピューティング機能および情報処理機能を実行する目的で量子-機械現象を使用することである。量子コンピューティングは、一般にトランジスタを用いて2進値に対して演算を実行する古典的コンピューティングと対照をなすものと見ることができる。すなわち、古典的コンピュータは、0または1であるビット値に対して演算を実行することができるが、量子コンピュータは、0および1の両方の重ね合わせ(superposition)を含む量子ビット(キュービット(qubit))に対して演算を実行し、多数の量子ビットをもつれさせる(entangle)ことができ、干渉(interference)を使用する。
【0017】
量子コンピューティングは、その計算の複雑さのために古典的コンピュータ上で全くまたは実際上解決することができない課題を解決する可能性を有する。しかしながら、量子コンピューティングでは、例えば量子デバイスの量子ゲート(本明細書ではゲートとも呼ぶ)間のクロストークの軽減を可能にするためにそのようなクロストークを特徴付けるのに、非常に特殊な技術が必要となる。
【0018】
クロストークは、量子機械内でゲートが同時に駆動されたときの重要なノイズ源である。クロストークは、すぐ近くで別のゲートが同時に駆動されたときにゲートの質が劣化することがあることを指す。大規模量子システム(例えば量子デバイス、例えば量子コンピュータ、量子プロセッサ、量子回路など)上のクロストークを完全に特徴付けることは難問たりうる。
【0019】
既存の量子コンピューティング・システム、もしくはそのようなシステムを運用している管理者(例えば販売者)、またはその両方は、ベースライン法(baseline method)を使用して、量子システム(例えば量子コンピュータ、量子プロセッサ、量子回路など)上のクロストークを特徴付けている。このベースライン法は、同時ランダム化ベンチマーキング(simultaneous randomized benchmarking)(SRB)を使用した一連の実験(例えばクロストーク測定)を実行することを含む。
【0020】
このような既存の量子コンピューティング・システムの課題は、それらのシステムが、上で説明したベースライン法を使用して量子システムのクロストークを特徴付けるのに長時間を要することである。このような既存の量子コンピューティング・システムの別の課題は、それらのシステムが、上で説明したベースライン法を実行することに起因する高い計算コストを有することである。例えば、1SRB当たりのランダム・シーケンスが100、1シーケンス当たりの試行が1024である場合、このベースライン法の実施は、22.6百万(22.6M)回の実行、および20キュービット機械上での現在の実行速度で8時間を超える計算を含む。このような既存の量子コンピューティング・システムの別の課題は、それらのシステムが、定期的に更新される校正データの中にクロストーク率(crosstalk rate)を提供しないことである。例えば、このような既存の量子コンピューティング・システム、もしくはそのようなシステムを運用している管理者(例えば販売者)、またはその両方は現在、毎日の校正データの中にクロストーク率を報告していない。
【0021】
上で説明したベースライン法を使用して量子システムのクロストークを特徴付けるのに長時間を要するという既存の技術の上記の課題が与えられた場合には、本開示を実施して、量子デバイスの中の量子ゲートのサブセットを1つもしくは複数のビンにパックすること、または量子ゲートのサブセットがパックされたいくつかの(例えば最少数の)1つもしくは複数のビンに基づいて量子デバイスのクロストークを特徴付けること、あるいはその両方を実行することができるシステム、コンピュータ実施方法もしくはコンピュータ・プログラム製品またはこれらの組合せの形態の、この課題に対する解決策を生み出すことができる。このようなシステム、コンピュータ実施方法もしくはコンピュータ・プログラム製品またはこれらの組合せの利点は、それらが、条件付きゲート誤り率を測定するために実行される実験(例えばクロストーク測定)の数を減らすことによって量子デバイスのクロストーク特徴付け時間を短縮することができることである。
【0022】
いくつかの実施形態では、本開示を実施して、そのいくつかの1つまたは複数のビンにパックされた量子ゲートのサブセットのうちの1つまたは複数のサブセットのクロストーク測定を実行して、量子デバイスのクロストークを特徴付けることができるシステム、コンピュータ実施方法もしくはコンピュータ・プログラム製品またはこれらの組合せの形態の、上で説明した課題に対する解決策を生み出すことができる。このようなシステム、コンピュータ実施方法もしくはコンピュータ・プログラム製品またはこれらの組合せの利点は、それらが、クロストーク測定を実行するプロセッサの計算コストを低減させることができることである。
【0023】
上で説明したベースライン法を使用して量子システムのクロストークを特徴付けるのに長時間を要するという既存の技術の上記の課題が与えられた場合には、本開示を実施して、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットを識別すること、もしくは量子ゲートの少なくとも1つのサブセットに基づいて量子デバイスのクロストークを特徴付けること、またはその両方を実行することができるシステム、コンピュータ実施方法もしくはコンピュータ・プログラム製品またはこれらの組合せの形態の、この課題に対する解決策を生み出すことができる。このようなシステム、コンピュータ実施方法もしくはコンピュータ・プログラム製品またはこれらの組合せの利点は、それらが、条件付きゲート誤り率を測定するために実行される実験(例えばクロストーク測定)の数を減らすことによって量子デバイスのクロストーク特徴付け時間を短縮することができることである。
【0024】
いくつかの実施形態では、本開示を実施して、定められた第1の時刻に、量子デバイスの量子ゲート・サブセットの並列化されたクロストーク測定を同時に実行して、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットを識別すること、および定められた第2の時刻に、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットに基づいて量子デバイスのクロストークを特徴付けることができるシステム、コンピュータ実施方法もしくはコンピュータ・プログラム製品またはこれらの組合せの形態の、上で説明した課題に対する解決策を生み出すことができる。このようなシステム、コンピュータ実施方法もしくはコンピュータ・プログラム製品またはこれらの組合せの利点は、それらが、クロストーク測定を実行するプロセッサの計算コストを低減させることができることである。
【0025】
図1は、本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的なシステム100のブロック図を示している。システム100は、クロストーク特徴付けシステム102を含むことができ、クロストーク特徴付けシステム102をクラウド・コンピューティング環境に関連づけることができる。例えば、クロストーク特徴付けシステム102を、
図9を参照して後に説明するクラウド・コンピューティング環境950、または
図10を参照して後に説明する1つもしくは複数の機能抽象化層(例えばハードウェアおよびソフトウェア層1060、仮想化層1070、管理層1080もしくはワークロード層1090またはこれらの組合せ)、あるいはその両方に関連づけることができる。
【0026】
クロストーク特徴付けシステム102もしくはその構成要素(例えばパッケージ構成要素108、評価構成要素110、識別構成要素202など)、またはその両方は、本明細書に記載された主題開示の1つまたは複数の実施形態に基づく1つまたは複数の操作を実行するために、
図9を参照して後に説明するクラウド・コンピューティング環境950の1つもしくは複数のコンピューティング・リソース、または
図10を参照して後に説明する1つもしくは複数の機能抽象化層(例えば量子ソフトウェアなど)、あるいはその両方を使用することができる。例えば、クラウド・コンピューティング環境950、またはこのような1つもしくは複数の機能抽象化層、あるいはその両方は、本明細書に記載された主題開示の1つまたは複数の実施形態に基づく1つまたは複数の操作を実行するためにクロストーク特徴付けシステム102もしくはその構成要素またはその両方が使用することができる、1つもしくは複数の古典的コンピューティング・デバイス(例えば古典的コンピュータ、古典的プロセッサ、仮想機械、サーバなど)、量子ハードウェア、または量子ソフトウェア(例えば量子コンピューティング・デバイス、量子コンピュータ、量子プロセッサ、量子回路シミュレーション・ソフトウェア、超伝導回路など)、あるいはこれらの組合せを含むことができる。例えば、クロストーク特徴付けシステム102もしくはその構成要素またはその両方は、1つまたは複数の古典的および/もしくは量子:数学関数、計算および/もしくは式;コンピューティングおよび/もしくは処理スクリプト;アルゴリズム;モデル(例えば人工知能(AI)モデル、機械学習(ML)モデルなど);ならびに/または本明細書に記載された主題開示の1つまたは複数の実施形態に基づく別の操作を実行するために、このような1つもしくは複数の古典的もしくはコンピューティング・リソースまたはその両方を使用することができる。
【0027】
本開示はクラウド・コンピューティングに関する詳細な説明を含んではいるが、本明細書に記載された教示の実施態様はクラウド・コンピューティング環境だけに限定されないことを理解されたい。むしろ、本発明の実施形態は、現在知られているまたは後に開発される他の任意のタイプのコンピューティング環境に関連して実施することができる。
【0028】
クラウド・コンピューティングは、最小限の管理労力またはサービスのプロバイダとの最小限のインタラクションで迅速に供給およびリリースすることができる構成可能なコンピューティング・リソース(例えばネットワーク、ネットワーク・バンド幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想機械およびサービス)の共用プールへの便利なオンデマンド・ネットワーク・アクセスを可能にするサービス配信モデルである。このクラウド・モデルは、少なくとも5つの特徴、少なくとも3つのサービス・モデル、および少なくとも4つのデプロイメント(deployment)モデルを含むことができる。
【0029】
特徴は以下のとおりである。
【0030】
オンデマンド・セルフサービス:クラウド・コンシューマは、サーバ時間およびネットワーク・ストレージなどのコンピューティング機能を、このサービスのプロバイダとのヒューマン・インタラクションを必要とすることなく必要に応じて自動的に一方向的に供給することができる。
【0031】
ブロード・ネットワーク・アクセス:機能は、ネットワーク上で利用可能であり、機能には、異種のシンまたはシック・クライアント・プラットフォーム(例えば移動電話、ラップトップおよびPDA)による使用を促進する標準的機構を通してアクセスされる。
【0032】
リソース・プーリング(resource pooling):マルチテナント・モデルを使用して多数のコンシューマにサービスを提供するために、プロバイダのコンピューティング・リソースがプールされており、要求に応じて、異なる物理および仮想リソースが動的に割当ておよび再割当てされる。コンシューマは一般に、提供されたリソースの正確な位置を制御できずまたは正確な位置を知らないが、より高次の抽象化レベル(例えば国、州またはデータセンター)で位置を指定することができるという意味で、位置独立の感覚がある。
【0033】
ラピッド・エラスティシティ(rapid elasticity):機能は、素早くスケールアウトするために迅速かつ弾力的に、場合によっては自動的に供給することができ、素早くスケールインするために迅速にリリースすることができる。コンシューマにとって、供給に利用可能な機能はしばしば無限であるように見え、いつでも好きな量だけ購入することができる。
【0034】
メジャード・サービス(measured service):クラウド・システムは、サービスのタイプ(例えばストレージ、処理、バンド幅および使用中ユーザ・アカウント)に対して適切なある抽象化レベルで計測機能に介入することによって、リソースの使用状況を自動的に制御および最適化する。リソースの使用状況を監視、制御および報告して、利用されているサービスのプロバイダとコンシューマの両方に透明性を提供することができる。
【0035】
サービス・モデルは以下のとおりである。
【0036】
ソフトウェア・アズ・ア・サービス(SaaS):コンシューマに提供されるこの機能は、クラウド・インフラストラクチャ上で実行されるプロバイダのアプリケーションを使用する機能である。ウェブ・ブラウザなどのシン・クライアント・インタフェース(例えばウェブ・ベースの電子メール)を通してさまざまなクライアント・デバイスからそれらのアプリケーションにアクセス可能である。場合によっては可能な限られたユーザ固有のアプリケーション構成の設定を除けば、コンシューマは、ネットワーク、サーバ、オペレーティング・システム、ストレージまたは個々のアプリケーション機能を含む基礎をなすクラウド・インフラストラクチャを管理もまたは制御もしない。
【0037】
プラットフォーム・アズ・ア・サービス(PaaS):コンシューマに提供されるこの機能は、クラウド・インフラストラクチャ上で、プロバイダがサポートするプログラム言語およびツールを使用して作成されたコンシューマ作成または取得のアプリケーションをデプロイする機能である。コンシューマは、ネットワーク、サーバ、オペレーティング・システムまたはストレージを含む基礎をなすクラウド・インフラストラクチャを管理もまたは制御もしないが、デプロイされたアプリケーションおよび場合によってはアプリケーション・ホスティング環境構成は制御することができる。
【0038】
インフラストラクチャ・アズ・ア・サービス(IaaS):コンシューマに提供されるこの機能は、処理、ストレージ、ネットワークおよび他の基本的なコンピューティング・リソースを供給する機能であり、コンシューマは任意のソフトウェアをデプロイおよび実行することができ、これらのソフトウェアは、オペレーティング・システムおよびアプリケーションを含むことができる。コンシューマは、基礎をなすクラウド・インフラストラクチャを管理もまたは制御もしないが、オペレーティング・システム、ストレージおよびデプロイされたアプリケーションは制御することができ、場合によっては、選択されたネットワーク構成要素(例えばホスト・ファイアウォール)を限定的に制御することができる。
【0039】
デプロイメント・モデルは以下のとおりである。
【0040】
プライベート・クラウド:このクラウド・インフラストラクチャは、組織体のためだけに運営される。インフラストラクチャは、その組織体または第三者が管理することができ、オンプレミス(on-premises)またはオフプレミス(off-premises)で存在することができる。
【0041】
コミュニティ・クラウド:このクラウド・インフラストラクチャは、いくつかの組織体によって共有され、利害(例えばミッション、セキュリティ要件、ポリシーおよびコンプライアンス上の問題)を共有する特定のコミュニティをサポートする。インフラストラクチャは、その組織体または第三者が管理することができ、オンプレミスまたはオフプレミスで存在することができる。
【0042】
パブリック・クラウド:このクラウド・インフラストラクチャは、一般大衆または大きな産業グループが利用可能であり、クラウド・サービスを販売している組織体によって所有される。
【0043】
ハイブリッド・クラウド:このクラウド・インフラストラクチャは、固有の実体を維持しているが、データおよびアプリケーション・ポータビリティを可能にする標準化された技術または独占技術(例えばクラウド間のロード・バランシングのためのクラウド・バースティング(cloud bursting))によって1つに結合された2つ以上のクラウド(プライベート、コミュニティまたはパブリック)の合成体である。
【0044】
クラウド・コンピューティング環境は、無国籍、低結合、モジュール性および意味論的相互運用性(semantic interoperability)に重きを置くサービス指向の環境である。クラウド・コンピューティングの中心には、相互接続されたノードのネットワークを含むインフラストラクチャがある。
【0045】
クロストーク特徴付けシステム102は、メモリ104、プロセッサ106、パッケージ構成要素108、評価構成要素110もしくはバス112、またはこれらの組合せを含むことができる。
【0046】
本明細書に開示されたさまざまな図に示された主題開示の実施形態は例示だけが目的であり、そのため、そのような実施形態のアーキテクチャは、それらの図に示されたシステム、デバイスもしくは構成要素またはそれらの組合せに限定されないことを認識すべきである。例えば、いくつかの実施形態では、システム100もしくはクロストーク特徴付けシステム102またはその両方がさらに、動作環境800および
図8に関して本明細書で説明されるさまざまなコンピュータ要素もしくはコンピューティング・ベースの要素またはその両方を含むことができる。いくつかの実施形態では、このようなコンピュータ要素もしくはコンピューティング・ベースの要素またはその両方を、
図1に関してまたは本明細書に開示されたその他の図に関して図示および説明されたシステム、デバイス、構成要素またはコンピュータ実施演算のうちの1つまたは複数の実施に関して使用することができる。
【0047】
メモリ104は、コンピュータもしくは機械またはその両方が読み取ること、書き込むこともしくは実行することまたはこれらの組合せを行うことができる1つもしくは複数の構成要素もしくは命令またはその両方であって、プロセッサ106(例えば古典的プロセッサ、量子プロセッサなど)によって実行されたときに、実行可能なそれらの構成要素もしくは命令またはその両方によって規定された演算の実行を容易にすることができる、1つもしくは複数の構成要素もしくは命令またはその両方を記憶することができる。例えば、メモリ104は、コンピュータおよび/または機械が読み取ること、書き込むことおよび/または実行することができる構成要素および/または命令であって、例えば、メモリ104は、コンピュータもしくは機械またはその両方が読み取ること、書き込むこともしくは実行することまたはこれらの組合せを行うことができる構成要素もしくは命令またはその両方であって、プロセッサ106によって実行されたときに、クロストーク特徴付けシステム102、パッケージ構成要素108、評価構成要素110、またはクロストーク特徴付けシステム102に関連した、主題開示のさまざまな図を参照してもしくは参照せずに本明細書で説明されたその他の構成要素(例えば識別構成要素202など)、あるいはこれらの組合せに関係した本明細書に記載されたさまざまな機能の実行を容易にすることができる、構成要素もしくは命令またはその両方を記憶することができる。
【0048】
メモリ104は、揮発性メモリ(例えばランダム・アクセス・メモリ(RAM)、スタティックRAM(SRAM)、ダイナミックRAM(DRAM)など)、もしくは不揮発性メモリ(例えばリードオンリー・メモリ(ROM)、プログラマブルROM(PROM)、消去可能なプログラマブルROM(EPROM)、電気的に消去可能なプログラマブルROM(EEPROM)など)、またはその両方を含むことができ、それらの揮発性メモリもしくは不揮発性メモリまたはその両方は、1つもしくは複数のメモリ・アーキテクチャを使用することができる。メモリ104のさらなる例は、システム・メモリ816および
図8を参照して後に説明される。メモリ104のこのような例を使用して、主題開示の任意の実施形態を実施することができる。
【0049】
プロセッサ106は、コンピュータもしくは機械またはその両方が読み取ること、書き込むこともしくは実行することまたはこれらの組合せを行うことができる1つもしくは複数の構成要素もしくは命令またはその両方であって、メモリ104に記憶することができる1つもしくは複数の構成要素もしくは命令またはその両方を実施することができる、1つもしくは複数のタイプのプロセッサもしくは電子回路またはその両方(例えば古典的プロセッサ、量子プロセッサなど)を含むことができる。例えば、プロセッサ106は、コンピュータもしくは機械またはその両方が読み取ること、書き込むこともしくは実行することまたはこれらの組合せを行うことができるこのような構成要素もしくは命令またはその両方によって指定することができるさまざまな演算を実行することができ、それらの演算は、限定はされないが、論理、制御、入力/出力(I/O)、算術演算もしくはその他の演算またはこれらの組合せを含む。いくつかの実施形態では、プロセッサ106が、1つまたは複数の中央処理ユニット、マルチコア・プロセッサ、マイクロプロセッサ、デュアル・マイクロプロセッサ、マイクロコントローラ、システム・オン・ア・チップ(SOC)、アレイ・プロセッサ、ベクトル・プロセッサ、量子プロセッサもしくは他のタイプのプロセッサ、またはこれらの組合せを含むことができる。プロセッサ106のさらなる例は、処理ユニット814および
図8に関して後に説明される。プロセッサ106のこのような例を使用して、主題開示の任意の実施形態を実施することができる。
【0050】
システム100、クロストーク特徴付けシステム102もしくはそれらに結合された構成要素、またはこれらの組合せの機能を実行するために、クロストーク特徴付けシステム102、メモリ104、プロセッサ106、パッケージ構成要素108、評価構成要素110、もしくは本明細書に記載されたクロストーク特徴付けシステム102のその他の構成要素(例えば識別構成要素202)、またはこれらの組合せを、バス112を介して互いに、通信可能に、電気的に、動作可能にもしくは光学的にまたはこれらの組合せで結合することができる。バス112は、1つまたは複数のメモリ・バス、メモリ・コントローラ、周辺バス、外部バス、ローカル・バス、量子バスもしくはその他のタイプのバス、またはこれらの組合せを含むことができ、これらのバスは、さまざまなバス・アーキテクチャを使用することができる。バス112のさらなる例は、システム・バス818および
図8を参照して後に説明される。バス112のこのような例を使用して、主題開示の任意の実施形態を実施することができる。
【0051】
クロストーク特徴付けシステム102は、プロセッサを含む任意のタイプの構成要素、機械、デバイス、設備、装置および/もしくは機器を含むことができ、ならびに/または有線ネットワークおよび/もしくは無線ネットワークと有効におよび/もしくは動作可能に通信することができる。このような全ての実施形態が想定される。例えば、クロストーク特徴付けシステム102は、サーバ・デバイス、コンピューティング・デバイス、汎用コンピュータ、専用コンピュータ、量子コンピューティング・デバイス(例えば量子コンピュータ)、タブレット・コンピューティング・デバイス、ハンドヘルド・デバイス、サーバ・クラス・コンピューティング・マシンおよび/もしくはデータベース、ラップトップ・コンピュータ、ノートブック・コンピュータ、デスクトップ・コンピュータ、携帯電話、スマート・フォン、コンシューマ機器および/もしくは器具、工業用および/もしくは商用デバイス、デジタル・アシスタント、インターネットが使用可能なマルチメディア電話機(multimedia Internet enabled phone)、マルチメディア・プレーヤ、ならびに/または他のタイプのデバイスを含むことができる。
【0052】
クロストーク特徴付けシステム102を、データ・ケーブル(例えばハイデフィニション・マルチメディア・インタフェース(High-Definition Multimedia Interface)(HDMI(R))、レコメンデッド・スタンダード(recommended standard)(RS)232、Ethernet(R)ケーブルなど)を介して、1つまたは複数の外部システム、ソースまたはデバイス(例えば古典的コンピューティング・デバイス、通信デバイスなど、もしくは量子コンピューティング・デバイス、通信デバイスなど、またはその両方)あるいはこれらの組合せに(例えば通信可能に、電気的に、動作可能に、光学的に)結合することができる。いくつかの実施形態では、クロストーク特徴付けシステム102を、ネットワークを介して、1つまたは複数の外部システム、ソースまたはデバイス(例えば古典的コンピューティング・デバイス、通信デバイスなど、もしくは量子コンピューティング・デバイス、通信デバイスなど、またはその両方)あるいはこれらの組合せに(例えば通信可能に、電気的に、動作可能に、光学的に)結合することができる。
【0053】
いくつかの実施形態では、このようなネットワークが、限定はされないが、セル方式ネットワーク、ワイド・エリア・ネットワーク(WAN)(例えばインターネット)またはローカル・エリア・ネットワーク(LAN)を含む有線および無線ネットワークを含むことができる。例えば、クロストーク特徴付けシステム102は、実質的に任意の所望の有線または無線技術を使用して、1つもしくは複数の外部システム、ソースもしくはデバイス、例えばコンピューティング・デバイス、またはこれらの組合せと通信することができ(その逆もまた真である)、この実質的に任意の所望の有線または無線技術は、限定はされないが、ワイヤレス・フィデリティ(wireless fidelity)(Wi-Fi)、グローバル・システム・フォー・モバイル・テレコミュニケーションズ・システム(global system for mobile communications)(GSM)、ユニバーサル・モバイル・テレコミュニケーションズ・システム(universal mobile telecommunications system)(UMTS)、ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(worldwide interoperability for microwave access)(WiMAX)、エンハンスト・ジェネラル・パケット・ラジオ・サービス(enhanced general packet radio service)(エンハンストGPRS)、サード・ジェネレーション・パートナーシップ・プロジェクト(third generation partnership project)(3GPP)ロング・ターム・エボルーション(long term evolution)(LTE)、サード・ジェネレーション・パートナーシップ・プロジェクト2(3GPP2)ウルトラ・モバイル・ブロードバンド(ultra mobile broadband)(UMB)、ハイ・スピード・パケット・アクセス(high speed packet access)(HSPA)、Zigbeeおよび他の802.XX無線技術および/もしくは従来の電気通信技術、BLUETOOTH(R)、セッション・イニシエーション・プロトコル(Session Initiation Protocol)(SIP)、ZIGBEE(R)、RF4CEプロトコル、WirelessHARTプロトコル、6LoWPAN(IPv6オーバー・ローパワー・ワイヤレス・エリア・ネットワーク(IPv6 over Low power Wireless Area Networks))、Z-Wave、ANT、ウルトラワイドバンド(ultra-wideband)(UWB)標準プロトコル、ならびに/またはその他の専用および非専用通信プロトコルを含む。したがって、このような例では、クロストーク特徴付けシステム102が、クロストーク特徴付けシステム102と外部システム、ソースもしくはデバイス(例えばコンピューティング・デバイス、通信デバイスなど)またはこれらの組合せとの間の情報伝達を容易にする、ハードウェア(例えば中央処理ユニット(CPU)、トランシーバ、復号器、量子ハードウェア、量子プロセッサなど)、ソフトウェア(例えば一組のスレッド、一組のプロセス、実行中のソフトウェア、量子パルス・スケジュール、量子回路、量子ゲートなど)、またはハードウェアとソフトウェアの組合せを含むことができる。
【0054】
クロストーク特徴付けシステム102は、コンピュータもしくは機械またはその両方が読み取ること、書き込むこともしくは実行することまたはこれらの組合せを行うことができる1つもしくは複数の構成要素もしくは命令またはその両方であって、プロセッサ106(例えば古典的プロセッサ、量子プロセッサなど)によって実行されたときに、このような構成要素もしくは命令またはその両方によって規定された演算の実行を容易にすることができる、1つもしくは複数の構成要素もしくは命令またはその両方を含むことができる。さらに、数多くの実施形態では、クロストーク特徴付けシステム102に関連した、主題開示のさまざまな図を参照してまたは参照せずに本明細書で説明された任意の構成要素が、コンピュータもしくは機械またはその両方が読み取ること、書き込むこともしくは実行することまたはこれらの組合せを行うことができる1つもしくは複数の構成要素もしくは命令またはその両方であって、プロセッサ106によって実行されたときに、このような構成要素もしくは命令またはその両方によって規定された演算の実行を容易にすることができる、1つもしくは複数の構成要素もしくは命令またはその両方を含むことができる。例えば、(例えばクロストーク特徴付けシステム102に通信可能に、電子的に、動作可能におよび/もしくは光学的に結合され、ならびに/またはクロストーク特徴付けシステム102によって通信可能に、電子的に、動作可能におよび/もしくは光学的に使用される)パッケージ構成要素108、評価構成要素110、および/またはクロストーク特徴付けシステム102に関連した本明細書に開示された他の構成要素は、コンピュータおよび/または機械が読み取ること、書き込むことおよび/または実行することができる構成要素および/または命令を含むことができる。その結果、数多くの実施形態によれば、クロストーク特徴付けシステム102もしくはクロストーク特徴付けシステム102に関連した本明細書に開示された任意の構成要素、またはその両方は、クロストーク特徴付けシステム102もしくはクロストーク特徴付けシステム102に関連した任意の構成要素またはその両方に関して本明細書で説明された1つまたは複数の演算の実行を容易にするために、プロセッサ106を使用して、コンピュータもしくは機械またはその両方が読み取ること、書き込むこともしくは実行することまたはこれらの組合せを行うことができるこのような構成要素もしくは命令またはその両方を実行することができる。
【0055】
クロストーク特徴付けシステム102は、パッケージ構成要素108、評価構成要素110、および/もしくはクロストーク特徴付けシステム102に関連した本明細書に開示された他の構成要素(例えば識別構成要素202など)によって実行される演算、ならびに/またはパッケージ構成要素108、評価構成要素110、および/もしくはクロストーク特徴付けシステム102に関連した本明細書に開示された他の構成要素(例えば識別構成要素202など)に関連した演算の実行を容易にすることができる。例えば、後に詳細に説明するように、クロストーク特徴付けシステム102は、プロセッサ106(例えば古典的プロセッサ、量子プロセッサなど)を介して、量子デバイスの中の量子ゲートのサブセットを1つもしくは複数のビンにパックすること、または量子ゲートのサブセットがパックされたいくつかの1つもしくは複数のビンに基づいて量子デバイスのクロストークを特徴付けること、あるいはその両方を容易にすることができる。別の例では、クロストーク特徴付けシステム102がさらに、プロセッサ106(例えば古典的プロセッサ、量子プロセッサなど)を介して、そのいくつかの1つもしくは複数のビンにパックされた量子ゲートのサブセットのうちの1つもしくは複数のサブセットのクロストーク測定を実行して、量子デバイスのクロストークを特徴付けること、クロストーク測定を定められた時間間隔で実行して、そのいくつかの1つもしくは複数のビンにパックされた量子ゲートのサブセットのうちの少なくとも1つのサブセットのクロストーク変動を捕捉すること、またはそのいくつかの1つもしくは複数のビンにパックされた量子ゲートのサブセットのうちの少なくとも2つのサブセットの同時の並列化されたクロストーク測定を実行して、量子デバイスのクロストークを特徴付け、それによって、量子デバイスのクロストークを特徴付けるためのプロセッサの計算コストの低減もしくは時間の短縮うちの少なくとも一方を容易にすること、あるいはこれらの組合せを容易にすることができる。いくつかの実施形態では、量子ゲートのサブセットが、量子デバイスの中の少なくとも1つの量子ゲートによって分離された少なくとも2つの量子ゲートを含むことができ、もしくは量子ゲートのサブセットを、量子デバイスの中の2つ以上の量子ゲートによって分離されたものとすることができ、またはその両方が可能である。
【0056】
別の例では、クロストーク特徴付けシステム102が、プロセッサ106(例えば古典的プロセッサ、量子プロセッサなど)を介して、定められたレベルのクロストーク(例えば量子デバイスの中の量子ゲートの他のサブセットに比べて高いレベルのクロストーク)を発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットを識別すること、もしくは量子ゲートの少なくとも1つのサブセットに基づいて量子デバイスのクロストークを特徴付けること、またはその両方を容易にすることができる。別の例では、クロストーク特徴付けシステム102がさらに、プロセッサ106(例えば古典的プロセッサ、量子プロセッサなど)を介して、量子デバイスの量子ゲート・サブセットを1つもしくは複数のビンにパックし、量子ゲート・サブセットがパックされたいくつかの1つもしくは複数のビンに基づいて量子デバイスのクロストークを特徴付けること、定められた第1の時刻に(例えば時刻=0(t=0)にもしくは1日目にまたはその両方に)、量子デバイスの量子ゲート・サブセットの同時の並列化されたクロストーク測定を実行して、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットを識別すること、(例えば将来の)定められた第2の時刻に(例えばt=1にもしくは2日目、3日目などに、またはこれらの組合せで)、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットに基づいて量子デバイスのクロストークを特徴付けること、または定められた時間間隔で(例えば3日ないし5日に1回)実行された量子デバイスの1つもしくは複数の量子ゲート・サブセットのクロストーク測定に基づいて量子ゲートの少なくとも1つのサブセットを識別すること、あるいはこれらの組合せを容易にすることができる。いくつかの実施形態では、量子ゲートの少なくとも1つのサブセットが、量子デバイスの中の単一の量子ゲートによって分離された量子ゲートの対を含むことができ、もしくは量子ゲートの少なくとも1つのサブセットが、量子デバイスの中の少なくとも2つの量子ゲートによって分離された量子ゲート対を含むことができ、またはその両方が可能である。
【0057】
クロストーク特徴付けオーバヘッドの低減
実システム測定(例えば異なる量子デバイスのクロストーク測定)では、クロストークがゲート誤り率に劇的に影響しうることが示されており、ゲート誤り率は用途の信頼性に影響を及ぼしうる。コンパイル(compilation)によるこれらの影響を軽減するため、クロストーク特徴付けシステム102は(例えばパッケージ構成要素108、評価構成要素110もしくは識別構成要素202またはこれらの組合せを介して)、命令スケジューリング中に、実システムに関連した特徴付けデータを使用することができる。クロストーク・ノイズは空間的時間的変動を有するため、コンパイラに正しい入力を供給するためにクロストーク・ノイズを毎日特徴付けることができる(例えば、このような空間的時間的変動のため、量子システム上でゲート誤りおよび可干渉時間を毎日測定することができる)。この目的のため、後に説明するように、クロストーク特徴付けシステム102は(例えばパッケージ構成要素108、評価構成要素110もしくは識別構成要素202またはこれらの組合せを介して)、条件付きゲート誤り率を測定するために実行される実験の数を減らすことができる。このような実験は、量子デバイスの中の量子ゲート・サブセットの1つまたは複数のクロストーク測定を含むことができ、そのような条件付きゲート誤り率は以下のように定義することができる。
【0058】
条件付きゲート誤り率:ゲートgiについて、2キュービット・ランダム化ベンチマーキング(RB)によって測定された独立誤り率をE(gi)として示すことができ、gjと同時に測定されたgiの誤り率を、条件付き誤り率E(gi|gj)として示すことができる。ゲートgiがgjとの間にクロストーク干渉を有するとき、予想されることは、E(gi|gj)がE(gi)よりも高くなることである。
【0059】
クロストーク特徴付けシステム102は(例えば評価構成要素110を介して)、並列に駆動されうる制御NOTゲート(controlled NOT gate)(CNOTゲート)のあらゆる対の条件付き誤り率(CER)を測定することができ、そのようなCNOTゲートは、ゲート・ベースの量子コンピューティング・デバイスの中で使用される量子論理ゲートを含む。例えば、クロストーク特徴付けシステム102は、キュービット0およびキュービット1として示されたキュービット間に画定された第1のCNOTゲート(CNOT 0,1)ならびにキュービット2およびキュービット3として示されたキュービット間に画定された第2のCNOTゲート(CNOT 2,3)を含み、そのような量子ゲートCNOT 0,1とCNOT 2,3との対がキュービットを共有していない、量子デバイスの中のCNOT対の条件付き誤り率を測定することができる。例えば、
図4に示されたキュービット結合マップ402aを参照すると、クロストーク特徴付けシステム102は、例えばキュービット0とキュービット1との間に画定されたCNOTゲート(CNOT 0,1)およびキュービット2とキュービット3との間に画定されたCNOTゲート(CNOT 2,3)を含むゲート対404であって、キュービットを共有していないゲート対404などの、CNOT対の条件付き誤り率を測定することができる。
【0060】
上で説明した手法は、221対の同時ランダム化ベンチマーキング(SRB)実験を含む。そのようなそれぞれのSRB実験は、理論的モデルへの最終的な曲線の当てはめを得るための異なるランダム・ゲート長を用いた多数回の実行を含み、曲線上のそれぞれのデータ点は、ノイズが多い操作のため、多数回の試行を含む。1SRB当たりのランダム・シーケンスが100、1シーケンス当たりの試行が1024である場合、このベースライン法では22.6M回の実行、および現在の実行速度で8時間を超える計算が必要となる。ここで説明したそのような実行を(例えばクロストーク特徴付けシステム102によって)実行して、
図3に示された散布
図302a、302b、302cを生成することができる。例えば、クロストーク特徴付けシステム102は、これらの全ての実験を、(例えばシミュレーションで実行するとは対照的に、)例えば半導体もしくは超伝導デバイスまたは半導体超伝導デバイス上に製造された多数のキュービットを含む集積量子回路などの量子コンピューティング・ハードウェア上で実行することができる。
【0061】
ある量子コンピューティング・デバイスに関連したクロストークの空間的時間的振る舞いに関するデータがない場合、クロストーク特徴付けシステム102は、クロストークのコンパイラ・レベル軽減を可能にするために、上で説明したこのようなSRB実験を定期的に実行することができる。例えば、クロストーク特徴付けシステム102は、クロストークのコンパイラ・レベル軽減を可能にするために、これらのSRB実験を毎日実行することができる。しかしながら、これらのSRB実験をこのように定期的に実行すると、長い時間がかかり、計算的に費用がかさむ。
【0062】
このようなクロストーク特徴付けオーバヘッド(例えばクロストークを特徴付けるための計算コストもしくは時間またはその両方)を低減させるため、クロストーク特徴付けシステム102は、パッケージ構成要素108、評価構成要素110もしくは識別構成要素202またはこれらの組合せを使用し、疎なデータ収集を使用してこのような特徴付けを容易にすることをサポートする一連の観察に基づいて、量子コンピューティング・システム(例えば量子コンピューティング・デバイス)のクロストークを特徴付けることができる。例えば、クロストーク特徴付けシステム102は、このような構成要素を使用し、1つまたは複数の物理(例えばシミュレートされたものではない)量子コンピューティング・デバイス(例えば量子コンピュータ、量子プロセッサ、量子ハードウェアなど)を実装することによって取得されたデータに関連した一連の観察に基づいて、量子コンピューティング・システムのクロストークを特徴付けることができ、このようなデータは、
図3の散布
図302a、302b、302c、
図5のグラフ502もしくは
図6の棒グラフ602あるいはこれらの組合せに示された情報を含むことができる。
【0063】
一例として、
図3に示された散布
図302a、302b、302cを参照すると、クロストーク特徴付けシステム102は、第1の観察、すなわち1ホップ(hop)の距離にあるゲートによるクロストーク・ノイズだけが重大であり、したがって、1ホップだけ分離された(例えば単一のゲートによって分離されており、ゲート対のゲートがキュービットを共有していない)ゲート対に対してSRB実験を実行するだけで十分であるとの観察に基づいて、クロストーク特徴付けオーバヘッドを低減させることができる。例えば、超伝導システムのハミルトン関数(Hamiltonian)は最近接結合(nearest-neighbor coupling)によって支配されており、したがって、1ホップだけ分離された量子ハードウェア・ゲート間のクロストークだけを特徴付けるだけで十分である。本明細書で使用されているとおり、ホップは量子ゲート間の距離を記述することができる。
【0064】
図3は、本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的な情報300を示している。簡潔にするため、対応するそれぞれの実施形態で使用されている同じ要素もしくはプロセスまたはその両方の繰返しの説明は省く。
【0065】
情報300は散布
図302a、302b、302cを含むことができる。散布
図302a、302b、302cは、1つまたは複数の物理(例えばシミュレートされたものではない)量子コンピューティング・デバイス(例えば量子コンピュータ、量子プロセッサ、量子ハードウェアなど)を実装することによって取得されたデータを含むことができる。例えば、散布
図302a、302b、302cは、それぞれ第1の量子コンピューティング・デバイス、第2の量子コンピューティング・デバイスおよび第3の量子コンピューティング・デバイスを実装することによって取得されたデータを含むことができる。例えば、散布
図302a、302b、302cは、3つの異なる物理(例えばシミュレートされたものではない)量子コンピューティング・デバイス(例えば量子コンピューティング・ハードウェア)内で、CNOT演算の全ての対に対して同時RB(SRB)実験を1度に1対ずつ実行することによって取得されたデータを含むことができる。
【0066】
散布
図302a、302b、302cは、条件付き誤り率(CER)E(g
i|g
j)およびE(g
j|g
i)を与える、対g
iおよびg
jに対するSRB実験を実行することによって取得されたデータを含むことができる。散布
図302a、302b、302cは、ホップ・カウントk(
図3ではホップ数として示されている)のところに、kホップだけ分離されたゲート対に対するこれらの条件付き誤り率(CER)を示している。比較を容易にするため、散布
図302a、302b、302cは、距離∞のところに、それぞれのゲートに対するクロストークのない独立誤り率を示している。散布
図302aでは、ホップ・カウント1のところに、この散布図の距離∞における最大Y軸値よりもはるかに高い7.5%よりも高い条件付き誤り率を有するゲート対がいくつかあり、このことは、1ホップ距離におけるクロストークの影響を示している。これらの3つのデバイスでは、ゲートからのクロストーク・ノイズが主として、1ホップの距離にあるゲートにだけ影響を与える。
【0067】
1ホップの距離にあるゲートによるクロストーク・ノイズだけが重大であり、したがって、1ホップだけ分離されたゲート対に対してSRB実験を実行するだけで十分であるとの第1の観察に基づき、クロストーク特徴付けシステム102は、2つのゲート対が2ホップ以上分離されているときにはそれらのゲート対のSRB測定を並列に実行することができることを示す第2の観察に基づいて、クロストーク特徴付けオーバヘッドを低減させることができる。例えば、
図4に示されたキュービット結合マップ402a、402bを参照すると、上で説明した第1の観察に基づいて、クロストーク特徴付けシステム102は、パッケージ構成要素108もしくは評価構成要素110またはその両方を使用して、各々が2ホップ以上分離されているいくつかのゲート対にわたってクロストーク測定を効率的に並列化することによって、クロストーク特徴付けオーバヘッドを低減させることができる。
【0068】
図4は、本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的な
図400を示している。簡潔にするため、対応するそれぞれの実施形態で使用されている同じ要素もしくはプロセスまたはその両方の繰返しの説明は省く。
【0069】
図400は、1つまたは複数のキュービット結合マップ402a、402bを含むことができる。キュービット結合マップ402a、402bは、量子コンピューティング・デバイスの中のキュービット(
図4では0から19として示された節点によって表されている)のトポグラフィ図を含むことができ、この図では、このようなキュービットのうちの2つ以上のキュービットが、量子ゲート(
図4ではキュービットを表しているある節点を接続する線によって表されている)によって互いに結合されている。キュービット結合マップ402aは1つまたは複数のゲート対404、406、408を含むことができる。キュービット結合マップ402bは1つまたは複数のゲート対410、412、414を含むことができる。ゲート対404、406、408もしくはゲート対410、412、414またはその両方はCNOTゲート対を含むことができる。例えば、ゲート対404は、キュービット0とキュービット1との間に画定されたCNOTゲート(CNOT 0,1)およびキュービット2とキュービット3との間に画定されたCNOTゲート(CNOT 2,3)を含むことができ、CNOT 0,1とCNOT 2,3はキュービットを共有していない。
【0070】
2つのゲート対が2ホップ以上分離されているときには、それらのゲート対のSRB測定を、評価構成要素110によって並列に実行することができる。例えば、評価構成要素110は、ゲート対404(CNOT 0,1|CNOT 2,3)、ゲート対406(CNOT 6,7|CNOT 8,9)およびゲート対408(CNOT 15,16|CNOT 17,18)に対するクロストーク測定を、同じ実験で(例えば同時に)実行することができる。これができるのは、それぞれの対が、他のどの対からも少なくとも2ホップ離れているためである。
【0071】
SRB実験を効率的に並列化するために、クロストーク特徴付けシステム102は、パッケージ構成要素108を使用して、この課題をビン・パッキングの事例としてモデル化することができる。パッケージ構成要素108は、量子デバイスの中の量子ゲートのサブセットを1つまたは複数のビンにパックすることができる。例えば、パッケージ構成要素108は、量子デバイス(例えば量子コンピュータ、量子プロセッサ、量子回路など)の中の量子ゲートのサブセットを1つまたは複数のビンにパックすることができ、量子ゲートのそれらのサブセットは、量子デバイスの中の少なくとも1つの量子ゲートによって分離された少なくとも2つの量子ゲートを含む。例えば、パッケージ構成要素108は、量子デバイスの中の量子ゲートの対を構成する量子ゲートのサブセットを1つまたは複数のビンにパックすることができる。別の例では、パッケージ構成要素108が、量子デバイスの中の量子ゲートのサブセットを1つまたは複数のビンにパックすることができ、量子ゲートのそれらのサブセットは、量子デバイスの中の2つ以上の量子ゲートによって分離されている。1つまたは複数のビンへの量子ゲートのサブセット(例えば対)のこのようなパッキングを容易にするため、パッケージ構成要素108は、後に説明するように発見的手法(heuristic approach)(例えば発見的アルゴリズム)を使用することができる。
【0072】
SRB測定を実行するn個のゲート対からなる一組のゲート対が与えられた場合、パッケージ構成要素108は、発見的技術(例えば発見的アルゴリズム)、例えばランダム化ファースト・フィット発見的技術(randomized first fit heuristic)(例えばビン・パッキング・アルゴリズム)を使用して、それらのゲート対を少数の実験にパックすることができる。例えば、パッケージ構成要素108は、このような発見的技術を使用して一組のビンを繰り返し構築することができ、それぞれのビンは1つの実験に対応し、最初は1つの空のビンだけがある。パッケージ構成要素108は、このような発見的技術を使用して、量子コンピューティング・デバイスのゲート対(例えばゲート対404、406、408もしくはゲート対410、412、414またはその両方)を通して繰り返し、それぞれのゲート対を、最初のコンパチブルな(compatible)ビンに入れることができる。例えば、1つのゲート対(g
i,g
j)が1つのビンとコンパチブルであるのは、そのビンの中の全てのゲート対(g
k,g
l)が少なくともkホップ離れている場合である。例えば、
図4を参照すると、ある量子コンピューティング・デバイスにおいて、k=2の場合、ゲート対408(CNOT 15,16|CNOT 17,18)は、ゲート対406(CNOT 6,7|CNOT 8,9)を含むビンとコンパチブルであり、CNOT 10,11|CNOT 12,13と定義されたゲート対を含むビンとはコンパチブルでない。
【0073】
既存のビンがいずれもコンパチブルでないとき、パッケージ構成要素108は、上で説明したこのような発見的技術を使用して新たなビンを生成することができる。このようにして、パッケージ構成要素108によるこのような発見的技術の適用に基づいて、全てのゲート対を一組または複数組のビンに分割することができる。パッケージ構成要素108は、ゲート対のリストをランダムにシャッフルすることによって発見的アルゴリズムを複数回実行することができ、さらに、最少数のビン(例えば最低数のビン)を有する分割(例えば一組のビン)を選択することができる。量子デバイスの中の全てのゲート対のこのような分割および最少数のビンを有する分割の選択に基づいて、評価構成要素110は、単一のビンの全てのゲート対に対してSRB実験を並列に実行することができる。
【0074】
評価構成要素110は、量子ゲートのサブセットがパックされたそのいくつかの1つまたは複数のビンに基づいて、上で説明した量子デバイスのクロストークを特徴付けることができる。量子デバイスのクロストークを特徴付けるため、評価構成要素110は、そのいくつかの(例えば最少数の)1つまたは複数のビンにパックされた量子ゲートのサブセットのうちの1つまたは複数のサブセットのクロストーク測定を実行することができる。評価構成要素110は、そのいくつかの1つまたは複数のビンにパックされた量子ゲートのサブセットのうちの少なくとも2つのサブセットの並列化されたクロストーク測定を同時に実行して、量子デバイスのクロストークを特徴付けることができる。例えば、評価構成要素110は、SRB実験を実行して、そのいくつかの(例えば最少数の)1つまたは複数のビンにパックされた量子ゲートのサブセットのうちの少なくとも2つのサブセットの独立誤り率もしくは条件付きゲート誤り率またはその両方を測定し、量子デバイスのクロストークを特徴付けることができる。
【0075】
評価構成要素110は、クロストーク測定を定められた時間間隔で(例えば3日ないし5日ごとに)実行して、そのいくつかの1つまたは複数のビンにパックされた量子ゲートのサブセットのうちの少なくとも1つのサブセットのクロストーク変動を捕捉することができる。別の例では、後に説明するように、評価構成要素110が、クロストーク測定を定められた時間間隔で(例えば3日ないし5日ごとに)実行して、定められたレベルのクロストーク(例えば量子デバイスの中の量子ゲートの他のサブセットに比べて高いレベルのクロストーク)を発生させる、そのいくつかの1つまたは複数のビンにパックされた量子ゲートのサブセットのうちの1つまたは複数のサブセットを識別することができる。
【0076】
クロストーク特徴付けシステム102はさらに、高クロストーク対が数日にわたって比較的に安定なままであるとの第3の観察に基づいて、クロストーク特徴付けオーバヘッドを低減させることができる。これは、クロストーク対の構造的性質に起因し、クロストーク対は、ゲート誤りに比べて、ドリフトまたは規則的変化を受けにくい。したがって、クロストーク特徴付けシステム102は、評価構成要素110を使用して、後に説明するように高クロストーク対に対してだけ定期的な(例えば毎日の)クロストーク測定を実行し、残りの1ホップ・ゲート対は、(例えば、高いレベルのクロストークを発生させない、上で説明したそのいくつかの1つまたは複数のビンのそれぞれのビンの中の残りのゲート対に対してSRB実験を実行することによって、)周期的に、例えば3日ないし5日に1回特徴付けることができる。
【0077】
評価構成要素110は、定められた第1の時刻に、量子デバイスの量子ゲート・サブセットの並列化されたクロストーク測定(例えばSRB実験)を同時に実行して、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットを識別すること、もしくは、さらに、定められた第2の時刻に、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットに基づいて量子デバイスのクロストークを特徴付けること、またはその両方を実行することができる。例えば、評価構成要素110は、時刻=0(t=0)にもしくは操作の1日目にまたはその両方に、そのいくつかの1つまたは複数のビンにパックされた量子ゲート・サブセットの並列化されたクロストーク測定を同時に実行して、高いレベルのクロストーク(例えば量子デバイスの中の他の量子ゲート対に比べて高いレベルのクロストーク)を発生させる、量子デバイスの中の1つまたは複数の量子ゲート対を識別することができる。この例では、例えばt=1にもしくは操作の2日目にまたはその両方などの後の時刻に、評価構成要素110は、このような高いレベルのクロストークを発生させると(例えば識別構成要素202によって、
図2を参照して説明するように)識別された量子ゲート対に対してだけクロストーク測定を実行し、このような測定に基づいて量子デバイスのクロストークを特徴付けることができる。
【0078】
図2は、本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的なシステム200のブロック図を示している。システム200は、クロストーク特徴付けシステム102を含むことができ、クロストーク特徴付けシステム102は識別構成要素202を含むことができる。簡潔にするため、対応するそれぞれの実施形態で使用されている同じ要素もしくはプロセスまたはその両方の繰返しの説明は省く。
【0079】
識別構成要素202は、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセットを識別することができる。例えば、上で説明したそのいくつかの1つまたは複数のビンにパックされた量子ゲートのサブセットに対して評価構成要素110によって実行されたクロストーク測定に基づいて、識別構成要素202は、定められたレベルのクロストークを発生させる、量子ゲートのこのようなサブセットのうちの1つまたは複数のサブセットを識別することができる。例えば、定められた時間間隔で(例えば3日ないし5日ごとに)評価構成要素110によって実行することができるこのようなクロストーク測定に基づいて、識別構成要素202は、高いレベルのクロストーク(例えば量子デバイスの中の量子ゲートの他のサブセットに比べて高いレベルのクロストーク)を発生させる、そのいくつかの1つまたは複数のビンにパックされた量子ゲートの1つまたは複数のサブセットを識別することができる。
【0080】
一例では、上で説明したそのいくつかの1つまたは複数のビンにパックされた量子ゲートのサブセットに対して評価構成要素110によって実行されたこのようなクロストーク測定に基づいて、評価構成要素110は、このような実験の結果を識別構成要素202に提供することができ、このような実験結果は、そのいくつかの1つまたは複数のビンにパックされた量子ゲートの1つまたは複数のサブセットに対応する誤り率(例えば独立誤り率もしくは条件付き誤り率またはその両方)を含むことができる。この例では、識別構成要素202が、実験結果をコンパイルすること、もしくはこのようなデータをプロットすること、またはその両方を実行して、高いレベルのクロストーク(例えば量子デバイスの中の量子ゲートの他のサブセットに比べて高いレベルのクロストーク)を発生させる、そのいくつかの1つまたは複数のビンにパックされた量子ゲートの1つまたは複数のサブセットを識別することができる。例えば、識別構成要素202は、このような実験結果を利用して、
図5に示されたグラフ502のプロット504a、504b、504c、504dを作成すること、もしくはそのようなプロットを分析すること、またはその両方を実行し、高いレベルのクロストーク(例えば量子デバイスの中の量子ゲートの他のサブセットに比べて定められたレベルのクロストーク)を発生させる量子ゲートのサブセット(例えば
図5を参照して説明するゲート対506a、506b、506c、506d)を識別することができる。
【0081】
一例では、識別構成要素202が、このような実験結果を利用して、
図5に示されたグラフ502のプロット504a、504b、504c、504dを作成すること、もしくはそのようなプロットを分析すること、またはその両方を実行し、例えば、量子デバイスの中の量子ゲートの他のサブセット(例えばゲート対506a、506b)に比べて高いレベルのクロストークを発生させる、ゲート対506a、506b、506c、506dのうちの1つまたは複数のゲート対(例えばゲート対506cもしくはゲート対506dまたはその両方)を識別することができる。高いレベルのクロストークを発生させるゲート対のこのような識別に基づいて、評価構成要素110は、このようなゲート対に対して定期的な(例えば毎日の)クロストーク測定を実行することができ、残りの1ホップ・ゲート対については、周期的に、例えば3日ないし5日に1回、SRB実験を実行して、そのような1ホップ・ゲート対のクロストークを特徴付けることができる。
【0082】
図5は、本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的な情報500を示している。簡潔にするため、対応するそれぞれの実施形態で使用されている同じ要素もしくはプロセスまたはその両方の繰返しの説明は省く。
【0083】
情報500はグラフ502を含むことができる。グラフ502は、数日(例えば6日)にわたって毎日測定された、ある物理(例えばシミュレートされたものではない)量子コンピューティング・デバイスの中の量子ゲートの誤り率(例えば独立誤り率および条件付き誤り率(CER))の1つまたは複数のプロットを含むことができる。グラフ502は、このような量子コンピューティング・デバイスのクロストーク・ノイズの日別変動を示すことができ、プロット504a、504b、504c、504dはそれぞれ、ゲート対506a、506b、506c、506dの条件付き誤り率(CER)の日別変動を示すことができ、プロット508a、508b、508c、508dはそれぞれ、ゲート510a、510b、510c、510dの独立誤り率の日別変動を示すことができる。
【0084】
プロット504a、504b、504c、504dおよびプロット508a、508b、508c、508dによって示されているとおり、このようなある量子コンピューティング・デバイスの6日間の実験期間にわたって、ゲート対506a、506b、506c、506dの条件付き誤り率(CER)は、ゲート510a、510b、510c、510dの独立誤り率の例えば約2倍(2×)である。同じ6日間の実験期間にわたって2つの追加の物理(例えばシミュレートされたものではない)量子コンピューティング・デバイスも試験した例示的な実施形態(図示せず)において、プロット504a、504b、504c、504dおよびプロット508a、508b、508c、508dは、ゲート対506a、506b、506c、506dの条件付き誤り率(CER)がゲート510a、510b、510c、510dの独立誤り率の約3×であることを示している。
【0085】
いくつかの実施形態では、ゲート対506a、506b、506c、506dに対応するプロット504a、504b、504c、504dを使用して、定められたレベルのクロストークを発生させる、量子デバイスの中の量子ゲートの1つまたは複数のサブセットを識別することができる。例えば、識別構成要素202は、ゲート対506a、506b、506c、506dに対応するプロット504a、504b、504c、504dを使用して、高いレベルのクロストーク(例えばゲート対506a、506bなどの他のゲート対に比べて高いレベルのクロストーク)を発生させる、ゲート対506a、506b、506c、506dのうちの1つまたは複数のゲート対(例えばゲート対506c、506d)を識別することができる。
【0086】
図6は、本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的な情報600を示している。簡潔にするため、対応するそれぞれの実施形態で使用されている同じ要素もしくはプロセスまたはその両方の繰返しの説明は省く。
【0087】
情報600は、主題開示の1つまたは複数の実施形態による本明細書に記載されたクロストーク特徴付けプロセスのうちの1つまたは複数のクロストーク特徴付けプロセスを使用して実施された3つの物理(例えばシミュレートされたものではない)量子コンピューティング・デバイス604a、604b、604c(例えば量子コンピュータ、量子プロセッサ、量子ハードウェアなど)に対応するクロストーク特徴付け時間を示す棒グラフ602を含むことができる。
【0088】
棒線606は、量子デバイスの全ての量子ゲート対に対してクロストーク測定(例えばSRB実験)を実行することによって量子コンピューティング・デバイス上のクロストークを特徴付けるのにかかる時間を示している。
【0089】
棒線608は、上で説明した1ホップ法(
図6ではOpt1:1ホップとして示されている)を使用して(例えば1ホップだけ分離された量子ゲート対に対してクロストーク測定(例えばSRB実験)を実行することによって)量子コンピューティング・デバイス上のクロストークを特徴付けるのにかかる時間を示している。
【0090】
棒線610は、上で説明した1ホップ法およびビン・パッキング法(
図6ではOpt2:1ホップ+ビン・パッキングとして示されている)を使用して(例えば1ホップだけ分離され、パッケージ構成要素108によって最少数のビンにパックされた量子ゲート対に対してクロストーク測定(例えばSRB実験)を実行することによって)量子コンピューティング・デバイス上のクロストークを特徴付けるのにかかる時間を示している。
【0091】
棒線612は、上で説明した高クロストーク量子ゲート対だけ(
図6ではOpt3:高クロストーク対のみとして示されている)を使用して(例えば高いレベルのクロストークを発生させると識別された量子ゲート対に対してクロストーク測定(例えばSRB実験)を実行することによって)量子コンピューティング・デバイス上のクロストークを特徴付けるのにかかる時間を示している。
【0092】
棒グラフ602の棒線606、608、610、612によって示されているように、クロストーク特徴付けシステム102は(例えばパッケージ構成要素108、評価構成要素110もしくは識別構成要素202またはこれらの組合せを介して)、それによって、このようなクロストーク特徴付けを実行するクロストーク特徴付けシステム102に関連づけられた1つまたは複数のコンピューティング・リソース(例えばプロセッサ)のクロストーク特徴付け時間の短縮もしくは計算コストの低減またはその両方を容易にすることができる。
【0093】
クロストーク特徴付けシステム102をさまざまな技術に関連づけることができる。例えば、クロストーク特徴付けシステム102を、クロストーク特徴付け技術、量子クロストーク特徴付け技術、ビン・パッケージング発見的技術、分散量子計算技術、量子コンピュータ技術、量子ハードウェアおよび/もしくはソフトウェア技術、機械学習技術、人工知能技術、クラウド・コンピューティング技術、ならびに/または他の技術に関連づけることができる。
【0094】
クロストーク特徴付けシステム102は、上で識別したさまざまな技術に関連したシステム、デバイス、構成要素、動作ステップもしくは処理ステップまたはこれらの組合せに対する技術的改良を提供することができる。例えば、クロストーク特徴付けシステム102は、条件付きゲート誤り率を測定するために実行される実験(例えばクロストーク測定)の数を減らすことによって量子デバイスのクロストーク特徴付け時間を短縮することができる。
【0095】
クロストーク特徴付けシステム102は、クロストーク特徴付けシステム102に関連した古典的コンピューティング・デバイスもしくは量子コンピューティング・デバイス(例えば量子プロセッサ、量子ハードウェア、超伝導回路など)またはその両方に関連した処理ユニット(例えばプロセッサ106)に対する技術的改良を提供することができる。例えば、上で説明したようにして(例えば条件付きゲート誤り率を測定するために実行される実験(例えばクロストーク測定)の数を減らすことによって)量子デバイスのクロストーク特徴付け時間のこのような短縮を容易にすることによって、クロストーク特徴付けシステム102は、それによって、このようなクロストーク特徴付けを実行する(例えば量子デバイスのゲート対に対してクロストーク測定を実行する)プロセッサ(例えばプロセッサ106)の計算コストを低減させることができる。
【0096】
上で説明したこのようなクロストーク特徴付け時間の短縮もしくは計算コストの低減またはその両方に基づけば、クロストーク特徴付けシステム102の実用的用途は、量子コンピューティング・システム、もしくはそのようなシステムを運用している管理者(例えば販売者)、またはその両方によって、クロストーク特徴付けシステム102を、システムのクロストークを定期的に(例えば毎日)特徴付け、ならびに/またはこのようなクロストーク・データを、システムに関連したおよび/もしくはシステムを利用している実体(例えば、例えばシステムによって実行される量子コンピューティング・ジョブをスケジューリングするコンパイラなどの実体)に提供するように、実装することができることである。クロストーク特徴付けシステム102のこのような実用的用途は、量子コンピューティング・システム上で実行される1つまたは複数のコンパイル・ジョブ(例えば量子コンピューティング・ジョブ)の出力(例えば計算結果もしくは処理結果またはその両方)を改良することができる。
【0097】
クロストーク特徴付けシステム102は、比較的に新しい量子コンピューティング技術によって駆動される新たな手法を提供することを認識すべきである。例えば、クロストーク特徴付けシステム102は、量子コンピューティング・デバイスのクロストークを特徴付けるために使用されている現在は長時間を要し計算費用がかさむ方法によって駆動されている量子コンピューティング・デバイスのクロストークを特徴付けるための新たな手法を提供する。
【0098】
クロストーク特徴付けシステム102は、ハードウェアまたはソフトウェアを使用して、その性質において高度に技術的であり、抽象的ではなく、人間による一組の頭脳行為として実行することができない課題を解決することができる。いくつかの実施形態では、上で識別したさまざまな技術に関する定められたタスクを実行するために、1つまたは複数の専用コンピュータ(例えば専用処理ユニット、専用古典的コンピュータ、専用量子コンピュータなど)によって、本明細書に記載されたプロセスのうちの1つまたは複数のプロセスを実行することができる。クロストーク特徴付けシステム102もしくはその構成要素またはその両方を使用して、上述の技術の進歩、量子コンピューティング・システム、クラウド・コンピューティング・システム、コンピュータ・アーキテクチャもしくはその他の技術またはこれらの組合せの使用によって生じる新たな課題を解決することができる。
【0099】
本明細書に記載されたクロストーク特徴付けシステム102もしくはその構成要素またはその両方によって実行することができるさまざまな操作は人間の知力を超える操作であるため、クロストーク特徴付けシステム102は、人間の知性で複製することができないまたは人間が実行することができない電気構成要素、機械構成要素および回路のさまざまな組合せを利用することができることを認識すべきである。例えば、ある期間にクロストーク特徴付けシステム102によって処理されるデータの量、そのようなデータを処理する速度、またはデータのタイプは、同じ期間に人間の知性が処理することができる量よりも大きな量、処理することができる速度よりも速い速度、または処理することができるデータ・タイプとは異なるデータ・タイプとなりうる。
【0100】
いくつかの実施形態によれば、クロストーク特徴付けシステム102はさらに、本明細書に記載されたさまざまな動作も実行している間に、1つまたは複数の他の機能を実行する(例えば完全にパワーオンされる、完全に実行されるなど)ように完全に動作可能でありうる。このような同時多動作実行は人間の知力を超えることを認識すべきである。クロストーク特徴付けシステム102は、人間ユーザなどの実体が手動で取得することが不可能な情報を含むことができることも認識すべきである。例えば、クロストーク特徴付けシステム102、パッケージ構成要素108、評価構成要素110もしくは識別構成要素202またはこれらの組合せに含まれる情報のタイプ、量もしくは多様性またはこれらの組合せは、人間ユーザによって手動で取得された情報よりも複雑なものでありうる。
【0101】
図7Aは、本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的なコンピュータ実施方法700aの流れ図を示している。簡潔にするため、対応するそれぞれの実施形態で使用されている同じ要素もしくはプロセスまたはその両方の繰返しの説明は省く。
【0102】
702aで、コンピュータ実施方法700aは、プロセッサ(例えばプロセッサ106、量子プロセッサなど)に動作可能に結合されたシステムによって(例えばクロストーク特徴付けシステム102もしくはパッケージ構成要素108またはその両方を介して)、量子デバイス(例えば量子コンピュータ、量子プロセッサ、量子回路、量子ハードウェアなど)の中の量子ゲートのサブセット(例えばゲート対404、406、408もしくはゲート対410、412、414またはその両方)を1つまたは複数のビンにパックすることを含むことができる。
【0103】
704aで、コンピュータ実施方法700aは、システムによって(例えばクロストーク特徴付けシステム102もしくは評価構成要素110またはその両方を介して)、量子ゲートのサブセットがパックされたいくつかの(例えば最少数の)1つまたは複数のビンに基づいて量子デバイスのクロストークを特徴付けることを含むことができる。
【0104】
図7Bは、本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的なコンピュータ実施方法700bの流れ図を示している。簡潔にするため、対応するそれぞれの実施形態で使用されている同じ要素もしくはプロセスまたはその両方の繰返しの説明は省く。
【0105】
702bで、コンピュータ実施方法700bは、プロセッサ(例えばプロセッサ106、量子プロセッサなど)に動作可能に結合されたシステムによって(例えばクロストーク特徴付けシステム102もしくは識別構成要素202またはその両方を介して)、定められたレベルのクロストーク(例えば量子デバイスの中の量子ゲートの他のサブセットに比べて高いレベルのクロストーク)を発生させる、量子デバイスの中の量子ゲートの少なくとも1つのサブセット(例えばゲート対506cもしくはゲート対506dまたはその両方)を識別することを含むことができる。
【0106】
704bで、コンピュータ実施方法700bは、システムによって(例えばクロストーク特徴付けシステム102もしくは評価構成要素110またはその両方を介して)、量子ゲートの少なくとも1つのサブセットに基づいて量子デバイスのクロストークを特徴付けることを含むことができる。
【0107】
図7Cは、本明細書に記載された1つまたは複数の実施形態による、疎なデータ収集に基づいて量子コンピューティング・システムのクロストークを特徴付けることを容易にすることができる例示的で非限定的なコンピュータ実施方法700Cの流れ図を示している。簡潔にするため、対応するそれぞれの実施形態で使用されている同じ要素もしくはプロセスまたはその両方の繰返しの説明は省く。
【0108】
702cで、コンピュータ実施方法700cは、(例えばパッケージ構成要素108もしくはパッケージ構成要素108によって使用される発見的ビン・パッキング・アルゴリズムまたはその両方を介して、)量子デバイス(例えば量子コンピュータ、量子プロセッサ、量子ハードウェアなど)の中の1ホップだけ分離されたゲート対(例えばキュービット結合マップ402aのゲート対404、406、408もしくはキュービット結合マップ402bのゲート対410、412、414またはその両方)を識別することを含むことができる。
【0109】
704cで、コンピュータ実施方法700cは、(例えばパッケージ構成要素108を介して、)ゲート対を1つまたは複数のビンにパックして、少なくとも一組のビンを構築することを含むことができる。例えば、上で説明したとおり、SRB測定を実行するn個のゲート対からなる一組のゲート対が与えられた場合、パッケージ構成要素108は、発見的技術(例えば発見的アルゴリズム)、例えばランダム化ファースト・フィット発見的技術(例えばビン・パッキング・アルゴリズム)を使用して、それらのゲート対を少数の実験にパックすることができる。例えば、パッケージ構成要素108は、このような発見的技術を使用して一組のビンを繰り返し構築することができ、それぞれのビンは1つの実験に対応し、最初は1つの空のビンだけがある。
【0110】
706cで、コンピュータ実施方法700cは、(例えばパッケージ構成要素108を介して、)それぞれのゲート対をコンパチブルのビンにパックすることができるかどうかを判定することを含むことができる。例えば、上で説明したとおり、パッケージ構成要素108は、発見的技術を使用して、量子コンピューティング・デバイスのゲート対(例えばゲート対404、406、408もしくはゲート対410、412、414またはその両方)を通して繰り返し、それぞれのゲート対を、最初のコンパチブルなビンに入れることができ、ここで、1つのゲート対(g
i,g
j)が1つのビンとコンパチブルであるのは、そのビンの中の全てのゲート対(g
k,g
l)が少なくともkホップ離れている場合である。例えば、
図4を参照すると、ある量子コンピューティング・デバイスにおいて、k=2の場合、ゲート対408(CNOT 15,16|CNOT 17,18)は、ゲート対406(CNOT 6,7|CNOT 8,9)を含むビンとコンパチブルであり、CNOT 10,11|CNOT 12,13と定義されたゲート対を含むビンとはコンパチブルでない。
【0111】
706cで、あるゲート対を既存のコンパチブルのビンにパックすることができないと判定された場合、708cで、コンピュータ実施方法700cは、(例えばパッケージ構成要素108を介して、)新たなビンを生成することを含むことができる。例えば、上で説明したとおり、既存のビンがいずれもコンパチブルでないとき、パッケージ構成要素108は、発見的技術を使用して新たなビンを生成することができる。このようにして、パッケージ構成要素108によるこのような発見的技術の適用に基づいて、全てのゲート対を一組または複数組のビンに分割することができる。パッケージ構成要素108は、ゲート対のリストをランダムにシャッフルすることによって発見的アルゴリズムを複数回実行するために、ステップ704c、706c、708cを繰り返すことができる。
【0112】
706cで、それぞれのゲート対を既存のコンパチブルのビンにパックすることができると判定された場合、710cで、コンピュータ実施方法700cは、(例えばパッケージ構成要素108を介して、)最少数のビンを有する一組のビンを選択することを含むことができる。例えば、上で説明したとおり、パッケージ構成要素108は、最少数のビン(例えば最低数のビン)を有する分割(例えば一組のビン)を選択することができる。
【0113】
712cで、コンピュータ実施方法700cは、(例えば評価構成要素110を介して、)選択した一組のビンのそれぞれのビンの中の全てのゲート対に対してSRB実験を実行することを含むことができる。例えば、上で説明したとおり、量子デバイスの中の全てのゲート対のこのような分割および最少数のビンを有する分割の選択に基づいて、評価構成要素110は、単一のビンの全てのゲート対に対してSRB実験を並列に実行することができる。
【0114】
714cで、コンピュータ実施方法700cは、(例えば識別構成要素202を介して、)比較的に高いレベルのクロストークを発生させるゲート対があるかどうかを判定することを含むことができる。例えば、
図2を参照して上で説明したとおり、SRB実験の結果に基づいて(例えばそれぞれのゲート対のクロストーク測定に基づいて)、識別構成要素202は、他のゲート対に比べて高いレベルのクロストークを発生させる1つまたは複数のゲート対を識別することができる。
【0115】
714cで、比較的に高いレベルのクロストークを発生させるゲート対がないと判定された場合には、716cで、コンピュータ実施方法700cは、(例えば評価構成要素110を介して、)712cで実行したSRB実験に基づいて量子デバイスのクロストークを特徴付けること、および712cで(例えば評価構成要素110を介して)SRB実験を繰り返す前に定められた時間(例えば3日ないし5日)待機することを含むことができる。
【0116】
714cで、比較的に高いレベルのクロストークを発生させるゲート対があると判定された場合には、718cで、コンピュータ実施方法700cは、(例えば評価構成要素110を介して、)比較的に高いレベルのクロストークを発生させるゲート対(例えば
図5に示されているゲート対506cもしくはゲート対506dまたはその両方)に対してだけ定期的な(例えば毎日の)SRB実験を実行することを含むことができる。
【0117】
720cで、コンピュータ実施方法700cは、(例えば評価構成要素110を介して、)量子デバイスのクロストークを特徴付けること、および(例えば高いレベルのクロストークを発生させない、選択された一組のビンのそれぞれのビンの中の残りのゲート対に対してSRB実験を実行することによって)残りの全てのゲート対に対してSRB実験を周期的に実行することを含むことができる。例えば、上で説明したとおり、評価構成要素110は、高クロストーク対に対してだけ規則的な(例えば毎日の)クロストーク測定を実行し、(例えば高いレベルのクロストークを発生させない、選択された一組のビンのそれぞれのビンの中の残りのゲート対に対してSRB実験を実行することによって)残りの1ホップ・ゲート対を周期的に、例えば3日ないし5日に1回、特徴付けることができる。
【0118】
説明を単純にするため、コンピュータ実施方法は、一連の動作として示され、説明される。主題である革新は、示された動作によって、もしくは動作の順序によって、またはその両方によって限定されるものではなく、例えば、動作は、さまざまな順序でもしくは同時に、またはその両方で実施することができ、本明細書に示されていない他の動作および本明細書に記載されてない他の動作とともに実施することができることを理解および認識すべきである。さらに、開示された主題に従ってコンピュータ実施方法を実施するのに、示された全ての動作が必要であるというわけではない。さらに、代替として、コンピュータ実施方法を、状態図または事象によって、相互に関係づけられた一連の状態として表すことができることを当業者は理解および認識するであろう。さらに、以下に開示されるコンピュータ実施方法および本明細書の全体を通して開示されるコンピュータ実施方法は、そのようなコンピュータ実施方法をコンピュータに移送および転送することを容易にするために、製品上に記憶することができることも認識すべきである。本明細書で使用されるとき、製品という用語は、コンピュータ可読デバイスまたはストレージ媒体からアクセス可能なコンピュータ・プログラムを包含することが意図されている。
【0119】
開示された主題のさまざまな態様に対する背景を提供するため、
図8および以下の議論は、開示された主題のさまざまな態様を実施することができる適当な環境の一般的な説明を提供することが意図されている。
図8は、本明細書に記載された1つまたは複数の実施形態を容易にすることができる例示的で非限定的な動作環境のブロック図を示している。簡潔にするため、対応するそれぞれの実施形態で使用されている同じ要素もしくはプロセスまたはその両方の繰返しの説明は省く。
【0120】
図8を参照すると、本開示のさまざまな態様を実施するための適当な動作環境800はさらに、コンピュータ812を含むことができる。コンピュータ812はさらに、処理ユニット814、システム・メモリ816およびシステム・バス818を含むことができる。システム・バス818は、限定はされないがシステム・メモリ816を含むシステム構成要素を処理ユニット814に結合する。処理ユニット814は、使用可能なさまざまなプロセッサのうちの任意のプロセッサとすることができる。デュアル・マイクロプロセッサおよびその他のマルチプロセッサ・アーキテクチャを処理ユニット814として使用することもできる。システム・バス818は、限定はされないがインダストリアル・スタンダード・アーキテクチャ(ISA)、マイクロチャネル・アーキテクチャ(MCA)、エンハンストISA(EISA)、インテリジェント・ドライブ・エレクトロニクス(IDE)、VESAローカル・バス(VLB)、ペリフェラル・コンポーネント・インターコネクト(PCI)、カード・バス、ユニバーサル・シリアル・バス(USB)、アドバンスト・グラフィクス・ポート(AGP)、Firewire(IEEE 1394)、およびスモール・コンピュータ・システムズ・インタフェース(SCSI)を含む使用可能なさまざまなバス・アーキテクチャのうちの任意のバス・アーキテクチャを使用した、メモリ・バスもしくはメモリ・コントローラ、周辺バスもしくは外部バス、またはローカル・バス、あるいはこれらの組合せを含む、いくつかのタイプのバス構造体のうちの任意のバス構造体とすることができる。
【0121】
システム・メモリ816はさらに、揮発性メモリ820および不揮発性メモリ822を含むことができる。不揮発性メモリ822には基本入出力システム(BIOS)が記憶されており、BIOSは、起動中などにコンピュータ812内の要素間で情報を転送するための基本ルーチンを含む。コンピュータ812はさらに、取外し可能/非取外し可能な揮発性/不揮発性コンピュータ・ストレージ媒体を含むことができる。
図8は例えばディスク・ストレージ824を示している。ディスク・ストレージ824はさらに、限定はされないが、磁気ディスク・ドライブ、フロッピー(R)・ディスク・ドライブ、テープ・ドライブ、Jazドライブ、Zipドライブ、LS-100ドライブ、フラッシュ・メモリ・カードまたはメモリ・スティックのようなデバイスを含むことができる。ディスク・ストレージ824はさらに、他のストレージ媒体とは別個の、または他のストレージ媒体と組み合わされた、ストレージ媒体を含むことができる。システム・バス818へのディスク・ストレージ824の接続を容易にするため、通常は、インタフェース826などの取外し可能なまたは非取外し可能なインタフェースが使用される。
図8はさらに、適当な動作環境800の中で説明した基本コンピュータ・リソースとユーザとの間の媒介物として機能するソフトウェアを示している。このようなソフトウェアはさらに、例えばオペレーティング・システム828を含むことができる。ディスク・ストレージ824に記憶することができるオペレーティング・システム828は、コンピュータ812のリソースの制御および割振りを実行するように機能する。
【0122】
システム・アプリケーション830は、例えばシステム・メモリ816またはディスク・ストレージ824に記憶されたプログラム・モジュール832およびプログラム・データ834を介したオペレーティング・システム828によるリソースの管理を利用する。本開示は、さまざまなオペレーティング・システムまたはオペレーティング・システムの組合せを用いて実施することができることを認識すべきである。ユーザは、入力デバイス836を介してコンピュータ812にコマンドまたは情報を入力する。入力デバイス836は、限定はされないが、マウスなどのポインティング・デバイス、トラックボール、スタイラス、タッチ・パッド、キーボード、マイクロホン、ジョイスティック、ゲーム・パッド、衛星アンテナ、スキャナ、TVチューナ・カード、デジタル・カメラ、デジタル・ビデオ・カメラ、ウェブ・カメラなどを含む。これらの入力デバイスおよびその他の入力デバイスは、インタフェース・ポート838を介し、システム・バス818を通して処理ユニット814に接続する。インタフェース・ポート838は、例えばシリアル・ポート、パラレル・ポート、ゲーム・ポートおよびユニバーサル・シリアル・バス(USB)を含む。出力デバイス840は、入力デバイス836と同じタイプのポートのうちのいくつかのポートを使用する。したがって、例えば、USBポートを使用して、コンピュータ812に入力を提供すること、およびコンピュータ812から出力デバイス840に情報を出力することができる。とりわけモニタ、スピーカおよびプリンタのように、専用アダプタを必要とするいくつかの出力デバイス840があることを示すために、出力アダプタ842が提供されている。例として、出力アダプタ842は、限定はされないが、出力デバイス840とシステム・バス818の間の接続手段を提供するビデオ・カードおよびサウンド・カードを含む。リモート・コンピュータ844などの他のデバイスもしくはデバイス・システムまたはその両方は、入力機能と出力機能の両方を提供することに留意すべきである。
【0123】
コンピュータ812は、ネットワーク化された環境内で、リモート・コンピュータ844などの1つまたは複数のリモート・コンピュータへの論理接続を使用して動作することができる。リモート・コンピュータ844は、コンピュータ、サーバ、ルータ、ネットワークPC、ワークステーション、マイクロプロセッサ・ベースの機器、ピア・デバイスまたは他の一般的なネットワーク・ノードなどであることができ、通常はさらに、コンピュータ812に関して説明した要素のうちの多くの要素または全ての要素を含むことができる。簡潔にするため、リモート・コンピュータ844にはメモリ・ストレージ・デバイス846だけが示されている。リモート・コンピュータ844は、ネットワーク・インタフェース848を介してコンピュータ812に論理的に接続されており、次いで通信接続850を介して物理的に接続されている。ネットワーク・インタフェース848は、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、セル方式ネットワークなどの有線もしくは無線通信ネットワークまたはその両方を包含する。LAN技術は、光ファイバ分散データ・インタフェース(FDDI)、銅線分散データ・インタフェース(CDDI)、Ethernet(R)、トークン・リングなどを含む。WAN技術は、限定はされないが、ポイント・ツー・ポイント・リンク、回線交換ネットワーク、例えば統合サービス・デジタル・ネットワーク(ISDN)およびその変形物、パケット交換ネットワーク、ならびにデジタル加入者線(DSL)を含む。通信接続850は、ネットワーク・インタフェース848をシステム・バス818に接続するのに使用されるハードウェア/ソフトウェアを指す。図を分かりやすくするために、通信接続850はコンピュータ812の内側に示されているが、通信接続850をコンピュータ812の外側に置くこともできる。例示だけが目的だが、ネットワーク・インタフェース848に接続するためのハードウェア/ソフトウェアはさらに、通常の電話機グレードのモデム、ケーブル・モデムおよびDSLモデムを含むモデム、ISDNアダプタならびにEthernet(R)カードなどの内部および外部技術を含むことができる。
【0124】
次に
図9を参照すると、例示的なクラウド・コンピューティング環境950が示されている。示されているとおり、クラウド・コンピューティング環境950は1つまたは複数のクラウド・コンピューティング・ノード910を含み、クラウド・コンシューマによって使用されるローカル・コンピューティング・デバイス、例えばパーソナル・デジタル・アシスタント(PDA)もしくは移動電話954A、デスクトップ・コンピュータ954B、ラップトップ・コンピュータ954Cまたは自動車コンピュータ・システム954Nあるいはこれらの組合せは、これらのノードと通信することができる。
図9には示されていないが、クラウド・コンピューティング・ノード910はさらに、クラウド・コンシューマによって使用されるローカル・コンピューティング・デバイスが通信することができる量子プラットフォーム(例えば量子コンピュータ、量子ハードウェア、量子ソフトウェアなど)を含むことができる。ノード910は互いに通信することができる。それらのノードは、上で説明したプライベート、コミュニティ、パブリックまたはハイブリッド・クラウドまたはこれらの組合せなどの1つまたは複数のネットワークに、物理的にまたは仮想的にグループ分けされていることがある(図示せず)。これによって、クラウド・コンピューティング環境950は、インフラストラクチャ、プラットフォームもしくはソフトウェアまたはこれらの組合せをサービスとして提供することができ、そのため、クラウド・コンシューマは、ローカル・コンピューティング・デバイス上にリソースを維持する必要がない。
図9に示されたタイプのコンピューティング・デバイス954A~Nは単なる例であることが意図されていること、ならびにコンピューティング・ノード910およびクラウド・コンピューティング環境950は、任意のタイプのネットワーク上もしくはアドレス指定可能なネットワーク接続上またはその両方で(例えばウェブ・ブラウザを使用して)、コンピュータ化された任意のタイプのデバイスと通信することができることが理解される。
【0125】
次に
図10を参照すると、クラウド・コンピューティング環境950(
図9)によって提供される一組の機能抽象化層が示されている。
図10に示されている構成要素、層および機能は単なる例であることが意図されており、本発明の実施形態はそれらに限定されないことを予め理解しておくべきである。図示のとおり、以下の層および対応する機能が提供される。
【0126】
ハードウェアおよびソフトウェア層1060は、ハードウェア構成要素およびソフトウェア構成要素を含む。ハードウェア構成要素の例は、メインフレーム1061、RISC(縮小命令セット・コンピュータ)アーキテクチャ・ベースのサーバ1062、サーバ1063、ブレード・サーバ(blade server)1064、ストレージ・デバイス1065ならびにネットワークおよびネットワーキング構成要素1066を含む。いくつかの実施形態では、ソフトウェア構成要素が、ネットワーク・アプリケーション・サーバ・ソフトウェア1067、量子プラットフォーム・ルーティング・ソフトウェア1068もしくは量子ソフトウェア(
図10には示されていない)、またはこれらの組合せを含む。
【0127】
仮想化層1070は、仮想実体の以下の例を提供することができる抽象化層を提供する:仮想サーバ1071、仮想ストレージ1072、仮想専用ネットワークを含む仮想ネットワーク1073、仮想アプリケーションおよびオペレーティング・システム1074、ならびに仮想クライアント1075。
【0128】
一例では、管理層1080が以下の機能を提供することができる。リソース供給(Resource provisioning)1081は、クラウド・コンピューティング環境内でタスクを実行する目的に利用されるコンピューティング・リソースおよびその他のリソースの動的調達を提供する。計量および価格決定(Metering and Pricing)1082は、クラウド・コンピューティング環境内でリソースが利用されたときの費用追跡、およびこれらのリソースの消費に対する課金または請求を提供する。一例では、これらのリソースがアプリケーション・ソフトウェア・ライセンスを含むことがある。セキュリティは、クラウド・コンシューマおよびタスクの識別確認ならびにデータおよび他のリソースの保護を提供する。ユーザ・ポータル1083は、コンシューマおよびシステム管理者に、クラウド・コンピューティング環境へのアクセスを提供する。サービス水準管理(Service level management)1084は、必要なサービス水準が達成されるようなクラウド・コンピューティング・リソースの割振りおよび管理を提供する。サービス水準合意(Service Level Agreement)(SLA)計画および履行1085は、SLAに従って将来必要になると予想されるクラウド・コンピューティング・リソースの事前調整および調達を提供する。
【0129】
ワークロード層1090は、クラウド・コンピューティング環境を利用することができる機能の例を提供する。この層から提供することができるワークロードおよび機能の非限定的な例は、マッピングおよびナビゲーション1091、ソフトウェア開発およびライフサイクル管理1092、仮想教室教育配信1093、データ解析処理1094、トランザクション処理1095、ならびにクロストーク特徴付けソフトウェア1096を含む。
【0130】
本発明は、インテグレーションの可能な任意の技術的詳細レベルにおいて、システム、方法、装置もしくはコンピュータ・プログラム製品、またはこれらの組合せであることがある。コンピュータ・プログラム製品は、本発明の態様をプロセッサに実行させるためのコンピュータ可読プログラム命令をその上に有するコンピュータ可読ストレージ媒体を含むことができる。このコンピュータ可読ストレージ媒体は、命令実行デバイスが使用するための命令を保持および記憶することができる有形のデバイスとすることができる。このコンピュータ可読ストレージ媒体は例えば、限定はされないが、電子ストレージ・デバイス、磁気ストレージ・デバイス、光学ストレージ・デバイス、電磁気ストレージ・デバイス、半導体ストレージ・デバイスまたはこれらの適当な組合せとすることができる。コンピュータ可読ストレージ媒体のより具体的な例の非網羅的なリストは、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、リードオンリー・メモリ(ROM)、消去可能なプログラマブル・リードオンリー・メモリ(EPROMまたはフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク・リードオンリー・メモリ(CD-ROM)、デジタル・バーサタイル・ディスク(DVD)、メモリ・スティック、フロッピー(R)・ディスク、機械的にコード化されたデバイス、例えばパンチカードまたはその上に命令が記録された溝の中の一段高くなった構造体、およびこれらの適当な組合せを含みうる。本明細書で使用されるとき、コンピュータ可読ストレージ媒体は、それ自体が一過性の信号、例えば電波もしくは他の自由に伝搬する電磁波、ウェーブガイドもしくは他の伝送体内を伝搬する電磁波(例えば光ファイバ・ケーブル内を通る光パルス)、または電線を通して伝送される電気信号であると解釈されるべきではない。
【0131】
本明細書に記載されたコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体から対応するそれぞれのコンピューティング/処理デバイスにダウンロードすることができ、またはネットワーク、例えばインターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワークもしくは無線ネットワークまたはこれらの組合せを介して外部コンピュータもしくは外部ストレージ・デバイスにダウンロードすることができる。このネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータもしくはエッジ・サーバ、またはこれらの組合せを含むことができる。それぞれのコンピューティング/処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インタフェースは、コンピュータ可読プログラム命令をネットワークから受信し、それらのコンピュータ可読プログラム命令を、対応するそれぞれのコンピューティング/処理デバイス内のコンピュータ可読ストレージ媒体に記憶するために転送する。本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、もしくは集積回路用のコンフィギュレーション・データであってもよく、またはSmalltalk(R)、C++などのオブジェクト指向プログラミング言語、および「C」プログラミング言語または同種のプログラミング言語などの手続き型プログラミング言語を含む、1つまたは複数のプログラミング言語の任意の組合せで書かれた、ソース・コードもしくはオブジェクト・コードであることができる。このコンピュータ可読プログラム命令は、全体がユーザのコンピュータ上で実行されてもよく、一部がユーザのコンピュータ上で実行されてもよく、独立型ソフトウェア・パッケージとして実行されてもよく、一部がユーザのコンピュータ上で、一部がリモート・コンピュータ上で実行されてもよく、または全体がリモート・コンピュータもしくはリモート・サーバ上で実行することができる。上記の最後のシナリオでは、リモート・コンピュータを、ローカル・エリア・ネットワーク(LAN)もしくはワイド・エリア・ネットワーク(WAN)を含む任意のタイプのネットワークを介してユーザのコンピュータに接続されたものとすることができ、またはこの接続を、外部コンピュータに対して(例えばインターネット・サービス・プロバイダを使用してインターネットを介して)実施することができる。いくつかの実施形態では、本発明の態様を実行するために、例えばプログラム可能論理回路、フィールドプログラマブル・ゲート・アレイ(FPGA)またはプログラム可能論理アレイ(PLA)を含む電子回路が、このコンピュータ可読プログラム命令の状態情報を利用してその電子回路をパーソナライズすることにより、このコンピュータ可読プログラム命令を実行することができる。
【0132】
本明細書では、本発明の態様が、本発明の実施形態による方法、装置(システム)およびコンピュータ・プログラム製品の流れ図もしくはブロック図またはその両方の図を参照して説明される。それらの流れ図もしくはブロック図またはその両方の図のそれぞれのブロック、およびそれらの流れ図もしくはブロック図またはその両方の図のブロックの組合せは、コンピュータ可読プログラム命令によって実施することができることが理解される。これらのコンピュータ可読プログラム命令は、機械を形成する汎用コンピュータ、専用コンピュータまたは他のプログラム可能データ処理装置のプロセッサに、それらのコンピュータまたは他のプログラム可能データ処理装置のプロセッサによって実行されるこれらの命令が、これらの流れ図もしくはブロック図またはその両方の図のブロックに指定された機能/動作を実施する手段を生成するような態様で提供することができる。これらのコンピュータ可読プログラム命令はさらに、特定の方式で機能するようにコンピュータ、プログラム可能データ処理装置もしくは他のデバイスまたはこれらの組合せに指図することができるコンピュータ可読ストレージ媒体に、その中に命令が記憶されたコンピュータ可読ストレージ媒体が、これらの流れ図もしくはブロック図またはその両方の図のブロックに指定された機能/動作の態様を実施する命令を含む製品を含むような態様で、記憶することができる。これらのコンピュータ可読プログラム命令はさらに、コンピュータ、他のプログラム可能装置または他のデバイス上で一連の動作ステップを実行させて、コンピュータによって実施されるプロセスを生成するために、このコンピュータ、他のプログラム可能データ処理装置または他のデバイス上に、このコンピュータ、他のプログラム可能装置または他のデバイス上で実施されるこれらの命令が、これらの流れ図もしくはブロック図またはその両方の図のブロックに指定された機能/動作を実施するような態様で、ロードすることができる。
【0133】
添付図中の流れ図およびブロック図は、本発明のさまざまな実施形態によるシステム、方法およびコンピュータ・プログラム製品の可能な実施態様のアーキテクチャ、機能および動作を示している。この点に関して、それらの流れ図またはブロック図のそれぞれのブロックは、指定された論理機能を実施するための1つまたは複数の実行可能命令を含む、命令のモジュール、セグメントまたは部分を表しうる。いくつかの代替実施態様では、これらのブロックに示された機能を、図に示された順序とは異なる順序で実施することができる。例えば、連続して示された2つのブロックを、実際には、実質的に同時に実行することができ、または、含まれる機能によってはそれらのブロックを逆の順序で実行することもできる。それらのブロック図もしくは流れ図またはその両方の図のそれぞれのブロック、ならびにそれらのブロック図もしくは流れ図またはその両方の図のブロックの組合せを、指定された機能もしくは動作を実行しまたは専用ハードウェアとコンピュータ命令の組合せを実施するハードウェアベースの専用システムによって実施することができることにも留意すべきである。
【0134】
以上に、1台のコンピュータ上もしくは複数のコンピュータ上またはその両方で実行されるコンピュータ・プログラム製品のコンピュータ実行命令の一般的な文脈で主題を説明したが、他のプログラム・モジュールと組み合わせて本開示を実施することもできることを当業者は認識するであろう。一般に、プログラム・モジュールは、特定のタスクを実行し、もしくは特定の抽象データ型を実装し、またはその両方を実行する、ルーチン、プログラム、構成要素、データ構造などを含む。さらに、本発明のコンピュータ実施方法は、シングルプロセッサまたはマルチプロセッサ・コンピュータ・システム、ミニコンピューティング・デバイス、メインフレーム・コンピュータ、コンピュータ、ハンドヘルド・コンピューティング・デバイス(例えばPDA、電話機)、マイクロプロセッサ・ベースのまたはプログラム可能な家庭用または産業用電子機器などを含む、他のコンピュータ・システム構成を用いて実施することもできることを当業者は認識するであろう。示された態様は、通信ネットワークを通してリンクされたリモート処理デバイスによってタスクが実行される分散コンピューティング環境で実施することもできる。しかしながら、全部ではないにせよ、本開示の一部の態様を、独立型コンピュータ上で実施することもできる。分散コンピューティング環境では、ローカル・メモリ・ストレージ・デバイスとリモート・メモリ・ストレージ・デバイスの両方にプログラム・モジュールを置くことができる。
【0135】
本出願で使用されるとき、用語「構成要素」、「システム」、「プラットフォーム」、「インタフェース」などは、1つもしくは複数の特定の機能を有する実体であって、コンピュータに関係した実体もしくはオペレーショナル・マシン(operational machine)に関係した実体を指すことができ、またはそのようは実体を含むことができ、またはその両方であることができる。本明細書に開示された実体は、ハードウェア、ハードウェアとソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアであることができる。例えば、構成要素は、限定はされないが、プロセッサ上で実行されるプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行スレッド、プログラムもしくはコンピュータ、またはこれらの組合せであることができる。例として、サーバ上で実行されるアプリケーションとサーバの両方が構成要素であることがある。プロセスもしくは実行スレッドまたはその両方の中に、1つまたは複数の構成要素が存在することができ、構成要素は、1つのコンピュータ上に限局されていること、もしくは2つ以上のコンピュータ間に分散化されていること、またはその両方であることができる。他の例では、さまざまなデータ構造がその上に記憶されたさまざまなコンピュータ可読媒体から、対応するそれぞれの構成要素を実行することができる。構成要素は、ローカル・プロセスもしくはリモート・プロセスまたはその両方を介して、例えば1つまたは複数のデータ・パケット(例えば、ローカル・システム内で、分散システム内で、もしくはインターネットなどのネットワークを横切って、またはこれらの組合せで、他のシステムとともに、信号を介して別の構成要素と対話している1つの構成要素からのデータ)を有する信号に従って通信することができる。別の例として、構成要素は、電気または電子回路によって操作される機械部品によって提供される特定の機能を有する装置であることができ、この電気または電子回路は、プロセッサによって実行されるソフトウェアまたはファームウェア・アプリケーションによって操作される。このような場合、プロセッサは、装置内または装置外に置くことができ、ソフトウェア・アプリケーションまたはファームウェア・アプリケーションの少なくとも一部を実行することができる。別の例として、構成要素は、機械部品を含まない電子構成要素を介して特定の機能を提供する装置であることができ、それらの電子構成要素は、電子構成要素の機能を少なくとも部分的に与えるソフトウェアまたはファームウェアを実行するためのプロセッサまたは他の手段を含むことができる。一態様では、構成要素が、例えばクラウド・コンピューティング・システム内で、仮想機械を介して電子構成要素をエミュレートすることができる。
【0136】
さらに、用語「または」は、排他的な「または」ではなく包括的な「または」を意味することが意図されている。すなわち、特段の記載がある場合、または文脈から明白である場合を除き、「XがAまたはBを使用する」は、自然な包括的置換(natural inclusive permutation)のうちのいずれかを意味することが意図されている。すなわち、XがAを使用する場合、XがBを使用する場合、またはXがAとBの両方を使用する場合、「Xが、AまたはBを使用する」は、上記のいずれの事例の下でも満たされる。さらに、特段の記載がある場合、または単数形を指示していることが文脈から明白である場合を除き、本明細書および添付図面で使用される冠詞「a」および「an」は、一般に、「1つまたは複数」を意味すると解釈すべきである。本明細書で使用されるとき、用語「例」もしくは「例示的な」またはその両方は、例、事例または例示として役に立つものであることを意味するために利用される。誤解を避けるために言うと、本明細書に開示された主題はこのような例によって限定されない。さらに、「例」もしくは「例示的な」またはその両方として本明細書に記載された任意の態様または設計を、他の態様または設計よりも好ましいまたは有利であると解釈する必要は必ずしもなく、あるいは、そのような態様または設計が、当業者に知られている等価の例示的な構造体および技術を排除することも意味しない。
【0137】
本明細書で使用されるとき、「プロセッサ」という用語は、限定はされないが、シングルコア・プロセッサ、ソフトウェア・マルチスレッド実行機能を有するシングルコア・プロセッサ、マルチコア・プロセッサ、ソフトウェア・マルチスレッド実行機能を有するマルチコア・プロセッサ、ハードウェア・マルチスレッド技術を有するマルチコア・プロセッサ、パラレル・プラットフォーム、および分散共用メモリを有するパラレル・プラットフォームを含む、実質的に任意のコンピューティング処理ユニットまたはデバイスを指しうる。さらに、プロセッサは、本明細書に記載された機能を実行するように設計された集積回路、特定用途向け集積回路(ASIC)、デジタル信号処理プロセッサ(DSP)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、プログラマブル・ロジック・コントローラ(PLC)、コンプレックス・プログラマブル・ロジック・デバイス(CPLD)、ディスクリート・ゲートまたはトランジスタ・ロジック、ディスクリート・ハードウェア構成要素、またはこれらの任意の組合せを指しうる。さらに、プロセッサは、空間使用を最適化し、またはユーザ機器の性能を強化するために、限定はされないが、分子ベースおよび量子ドット・ベースのトランジスタ、スイッチおよびゲートなどのナノスケール・アーキテクチャを利用することができる。プロセッサを、コンピューティング処理ユニットの組合せとして実施することもできる。本開示では、「ストア」、「ストレージ」、「データ・ストア」、「データ・ストレージ」、「データベース」などの用語、ならびに構成要素の動作および機能に関連する実質的に任意の他の情報ストレージ構成要素が、「メモリ」またはメモリを含む構成要素として具体化された実体である「メモリ構成要素」を指すために利用される。本明細書に記載されたメモリもしくはメモリ構成要素またはその両方は、揮発性メモリもしくは不揮発性メモリであることができ、または揮発性メモリと不揮発性メモリの両方を含むことができることを認識すべきである。例として、不揮発性メモリは、限定はされないが、リードオンリー・メモリ(ROM)、プログラマブルなROM(PROM)、消去可能なプログラマブルROM(EPROM)、電気的に消去可能なプログラマブルROM(EEPROM)、フラッシュ・メモリまたは不揮発性のランダム・アクセス・メモリ(RAM)(例えば強誘電体RAM(FeRAM))を含むことができる。揮発性メモリはRAMを含むことができ、RAMは、例えば外部キャッシュ・メモリとして機能することができる。例として、限定はされないが、スタティックRAM(SRAM)、ダイナミックRAM(DRAM)、シンクロナスDRAM(SDRAM)、ダブル・データ・レートSDRAM(DDR SDRAM)、エンハンストSDRAM(ESDRAM)、Synchlink DRAM(SLDRAM)、ダイレクトRambus RAM(DRRAM)、ダイレクトRambusダイナミックRAM(DRDRAM)およびRambusダイナミックRAM(RDRAM)など、多くの形態のRAMが使用可能である。さらに、本明細書のシステムまたはコンピュータ実施方法の開示されたメモリ構成要素は、限定はされないが、これらのタイプのメモリおよび他の適当なタイプのメモリを含むことが意図されている。
【0138】
以上に説明したことは、システムおよびコンピュータ実施方法の単なる例を含む。当然ながら、本開示を説明するために、構成要素またはコンピュータ実施方法の考えうるあらゆる組合せを記載することは不可能だが、本開示の他の多くの組合せおよび置換が可能であることを当業者は理解することができる。さらに、詳細な説明、特許請求の範囲、付録および図面において用語「含む(includes)」、「有する(has)」、「所有する(possesses)」などが使用される範囲で、このような用語は、用語「備える/含む(comprising)」が、請求項中で転換語(transitional word)として使用されているときに解釈されるのと同様に、包括的であることが意図されている。
【0139】
さまざまな実施形態の以上の説明は例示のために示したものであり、以上の説明が網羅的であること、または、以上の説明が、開示された実施形態だけに限定されることは意図されていない。当業者には、記載された実施形態の範囲および思想を逸脱しない多くの変更および変形が明らかとなろう。本明細書で使用した用語は、実施形態の原理、実用的用途、もしくは市販されている技術にはない技術的改善点を最もよく説明するように、または本明細書に開示された実施形態を当業者が理解できるように選択した。