(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024008888
(43)【公開日】2024-01-19
(54)【発明の名称】古典・量子ハイブリッドソルバを用いてQUBO問題を解くための方法およびシステム
(51)【国際特許分類】
G06N 10/60 20220101AFI20240112BHJP
G06N 3/04 20230101ALI20240112BHJP
G06N 3/0464 20230101ALI20240112BHJP
【FI】
G06N10/60
G06N3/04 100
G06N3/0464
【審査請求】有
【請求項の数】15
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023110092
(22)【出願日】2023-07-04
(31)【優先権主張番号】22183667
(32)【優先日】2022-07-07
(33)【優先権主張国・地域又は機関】EP
(71)【出願人】
【識別番号】521124319
【氏名又は名称】テラ クアンタム アーゲー
【氏名又は名称原語表記】TERRA QUANTUM AG
(74)【代理人】
【識別番号】100109210
【弁理士】
【氏名又は名称】新居 広守
(72)【発明者】
【氏名】デシュパンデ・アジンキャ
(72)【発明者】
【氏名】メルニコフ・アレクセイ エー.
(57)【要約】 (修正有)
【課題】中規模量子(NISQ)デバイスの使用に関して二次制約なしバイナリ最適化(QUBO)問題を対応するQUBOグラフ問題に符号化する方法等を提供する。
【解決手段】方法は、QUBO問題の各バイナリ変数がQUBOグラフ問題のノードに対応し、2つのノード間のエッジが2つのノードに対応する両方のバイナリ変数を含む項の係数を符号化するか又はQUBOグラフ表現のQUBOグラフ問題を受信し、前記問題を処理システム上の訓練済みグラフ・ニューラル・ネットワークへの入力として提供し、入力で提供されたQUBO問題に対する訓練済みグラフ・ニューラル・ネットワークの出力から変分量子ソルバを用いてQUBO問題を解くための予測性能メトリックを取り出し、予測性能メトリックに基づいて、QUBO問題を量子ハードウェアに実装された変分量子ソルバに提供するか又はQUBO問題を古典処理システムに実装された古典ソルバに提供する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
所与の二次制約なしバイナリ最適化(QUBO)問題に基づいて処理ハードウェアを選択するためのコンピュータ実施方法であって、前記方法は、
前記QUBO問題を対応するQUBOグラフ問題に符号化するステップであって、前記QUBO問題の各バイナリ変数が前記QUBOグラフ問題のノードに対応し、2つのノード間のエッジが、前記2つのノードに対応する両方のバイナリ変数を含む項の係数を符号化するステップか、または、QUBOグラフ表現のQUBOグラフ問題を受信するステップと、
前記QUBOグラフ問題を、処理システム上の訓練済みグラフ・ニューラル・ネットワークへの入力として提供するステップと、
前記入力で提供された前記QUBOグラフ問題に対する前記訓練済みグラフ・ニューラル・ネットワークの出力から、変分量子ソルバ(20)を用いて前記QUBO問題を解くための予測性能メトリックを取り出すステップと、
前記予測性能メトリックに基づいて、前記QUBO問題を、量子ハードウェア(23)に実装された前記変分量子ソルバ(20)に提供するステップとを含む
方法。
【請求項2】
前記訓練済みグラフ・ニューラル・ネットワークは、前記変分量子ソルバ(20)を用いて前記QUBO問題を解く場合の前記量子近似比、または当該量子近似比に基づく性能メトリックを推定するように訓練された
請求項1に記載の方法。
【請求項3】
前記訓練済みグラフ・ニューラル・ネットワークは、畳み込みグラフ・ニューラル・ネットワーク、特に空間グラフ・ニューラル・ネットワークである
請求項1に記載の方法。
【請求項4】
前記訓練済みグラフ・ニューラル・ネットワークは、複数のグラフ畳み込み層を含み、各畳み込み層は、前記QUBOグラフ問題のノードごとに、隣接するノードの特徴ベクトルをまとめて集約特徴ベクトルにする集約ステップと、前記ノードの元の特徴ベクトルおよび前記集約特徴ベクトルが、訓練可能な変換に従ってノードごとに、更新特徴ベクトルに変換される変換ステップとを含む
請求項1に記載の方法。
【請求項5】
前記訓練済みグラフ・ニューラル・ネットワークは、前記複数のグラフ畳み込み層のうちの少なくとも1つの前記出力をプーリングするためのプーリング層と、前記プーリング層と前記訓練済みグラフ・ニューラル・ネットワークの出力との間の全結合層とを含む
請求項4に記載の方法。
【請求項6】
前記訓練済みニューラルネットワークは、
訓練セットを受信するステップであって、前記訓練セットは、複数のQUBOグラフ問題と、前記複数のQUBOグラフ問題の各々に対応する性能メトリックとを含み、前記性能メトリックは、前記QUBOグラフ問題用の前記変分量子ソルバ(20)を用いて決定された解候補(28)の品質指標と、前記QUBOグラフ問題の古典解の同様の品質指標との比を示し、前記品質指標は、特に、前記解候補(28)に関するコストである、受信するステップと、
前記訓練セットでグラフ畳み込みネットワークを訓練するステップであって、前記グラフ畳み込みネットワークの前記入力では、前記複数のQUBOグラフ問題を受信し、前記グラフ畳み込みネットワークの訓練可能なパラメータは、所与のQUBOグラフ問題用の前記グラフ畳み込みネットワークの前記出力が前記性能メトリックに近づくように反復的に更新される、訓練するステップとによって訓練された
請求項1に記載の方法。
【請求項7】
前記変分量子ソルバ(20)は、前記QUBO問題の解を示す出力を決定するための変分量子ネットワーク(22)を含み、前記変分量子ネットワーク(22)のゲート構成は、特に、前記QUBO問題に基づいて選択され、前記変分量子ネットワーク(22)は、量子近似最適化アルゴリズム(QAOA)に基づくことが好ましく、かつ/または、前記ゲート構成は、コストを前記QUBO問題の解に帰属させるコスト関数に依存することが好ましく、最適解が前記コスト関数のグローバル極値に関連付けられている
請求項1に記載の方法。
【請求項8】
前記方法は、さらに、前記QUBOグラフ問題を、量子ハードウェア(23)に実装された前記変分量子ソルバ(20)に提供するステップの一部として、
前記QUBOグラフ問題を第2訓練済みグラフ・ニューラル・ネットワークに提供するステップであって、前記第2訓練済みグラフ・ニューラル・ネットワークは、複数のQUBOグラフ問題に対して、前記変分量子ソルバ(20)による最適解に関する変分パラメータを予測するように訓練された、提供するステップと、
前記第2訓練済みグラフ・ニューラル・ネットワークの出力で、前記第2訓練済みグラフ・ニューラル・ネットワークから予測変分パラメータを受信するステップと、
前記変分量子ソルバ(20)を用いて前記QUBO問題の候補解(28)を決定するために、前記予測変分パラメータおよび前記問題を前記変分量子ソルバ(20)に提供するステップとを含む
請求項1に記載の方法。
【請求項9】
所与の二次制約なしバイナリ最適化(QUBO)問題を解くためのコンピュータ実施方法であって、前記方法は、
前記QUBO問題を対応するQUBOグラフ問題に符号化するステップであって、前記QUBO問題の各バイナリ変数が前記QUBOグラフ問題のノードに対応し、2つのノード間のエッジが、前記2つのノードに対応する両方のバイナリ変数を含む項の係数を符号化するステップか、または、QUBOグラフ表現のQUBOグラフ問題を受信するステップと、
前記QUBOグラフ問題を、処理システム上の訓練済みグラフ・ニューラル・ネットワークへの入力として提供するステップと、
前記入力で提供された前記QUBOグラフ問題に対する前記訓練済みグラフ・ニューラル・ネットワークの出力から、変分量子ソルバ(20)を用いて前記QUBO問題を解くための予測変分パラメータを受信するステップと、
前記QUBO問題に対する前記予測変分パラメータを、量子ハードウェア(23)に実装された前記変分量子ソルバ(20)に提供するステップとを含む
方法。
【請求項10】
前記変分量子ソルバ(20)は、前記QUBO問題の解を示す出力を決定するための変分量子ネットワーク(22)を含み、前記変分量子ネットワーク(22)の前記量子ゲート構成は、前記QUBO問題に固有であり、前記変分パラメータは、前記QUBO問題に固有の前記変分量子ネットワーク(22)の前記出力を規定し、前記変分量子ネットワーク(22)は、特に、量子近似最適化アルゴリズム(QAOA)に基づいている
請求項9に記載の方法。
【請求項11】
所与の二次制約なしバイナリ最適化(QUBO)問題を解くためのシステム(10)であって、前記システム(10)は、
前記QUBO問題に対応するQUBOグラフ問題を取得し、前記QUBO問題の各バイナリ変数が前記QUBOグラフ問題のノードに対応し、2つのノード間のエッジが、前記2つのノードに対応する両方のバイナリ変数を含む項の係数を符号化し、または、QUBOグラフ表現のQUBOグラフ問題を受信し、
前記QUBOグラフ問題を、処理システム上の訓練済みグラフ・ニューラル・ネットワークへの入力として提供し、
前記入力で提供された前記QUBOグラフ問題に対する前記訓練済みグラフ・ニューラル・ネットワークの出力から、変分量子ソルバ(20)を用いて前記QUBO問題を解くための予測性能メトリックを受信し、
前記予測性能メトリックに基づいて、前記QUBO問題を、量子ハードウェア(23)に実装された前記変分量子ソルバ(20)に提供する、処理システムを備える
システム(10)。
【請求項12】
前記対応するQUBOグラフ問題を取得することは、前記処理システムによって、前記QUBO問題を前記対応するQUBOグラフ問題に符号化することを含む
請求項11に記載のシステム(10)。
【請求項13】
前記システム(10)は、特に、前記処理システムで実行可能な機械可読モデルを備え、かつ/または、前記システム(10)は、さらに、前記訓練済みグラフ・ニューラル・ネットワークを実装するAI処理ハードウェアを備え、前記AI処理ハードウェアは、特に、GPU、ニューラル処理部、アナログメモリベース・ハードウェア、またはニューロモルフィック・ハードウェアを含む
請求項11に記載のシステム(10)。
【請求項14】
前記処理システムは、さらに、
前記QUBOグラフ問題を第2訓練済みグラフ・ニューラル・ネットワークに提供し、前記第2訓練済みグラフ・ニューラル・ネットワークは、複数のQUBOグラフ問題に対して、前記変分量子ソルバ(20)による最適解に関する前記変分量子ソルバ(20)の変分パラメータを予測するように訓練されており、
前記第2訓練済みグラフ・ニューラル・ネットワークの出力で、前記第2訓練済みグラフ・ニューラル・ネットワークから予測変分パラメータを受信し、
前記変分量子ソルバ(20)を用いて前記QUBO問題の候補解(28)を決定するために、前記予測変分パラメータおよび前記問題を前記変分量子ソルバ(20)に提供する
請求項11に記載のシステム(10)。
【請求項15】
機械可読命令を含むコンピュータプログラムであって、前記コンピュータプログラムが処理システムによって実行されると、前記機械可読命令により、前記処理システムが請求項1~10のいずれか1項に記載の方法を実施し、かつ/または、請求項11~14のいずれか1項に記載のシステム(10)を実装する
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、量子計算の分野に関する。より詳細には、本発明は、量子・古典ハイブリッドソルバを用いて二次制約なしバイナリ最適化問題の解を見つけることに関する。
【背景技術】
【0002】
量子コンピュータは、計算を実行するために、その状態および相互作用を制御することができる制御可能な量子力学システムのプラットフォームを提供する。計算は、制御可能な量子力学システム、例えば、古典ビットの量子アナログとしての量子ビットの決定論的発展によって実現され、量子力学システムの状態を測定して計算結果を決定することができる。
【0003】
これらの量子ビットに対する制御動作は、量子ゲートと呼ばれる。量子ゲートは、単一量子ビットの状態の変化を引き起こす(いわゆる単一量子ビットゲート)ために、および、複数の量子ビットに作用して(いわゆるマルチ量子ビットゲート)、例えば、複数の量子ビットの状態およびそれらの任意の組み合わせをもつれさせるために、量子ビットにコヒーレントに作用することができる。例えば、単一量子ビットゲートは、選択可能な値、例えばπ/2だけ、電子のスピン状態の回転を引き起こしてもよい。マルチ量子ビットゲートは、2つの量子ビットの状態に対するコヒーレントCNOT演算など、2つ以上の量子ビットに対してコヒーレントに作用してもよい。複数の量子ゲートは、計算を実行するために、並列にまたは順次に、量子コンピュータの量子ビットに適用することができる。最後に、一連の量子ゲートを適用した後、量子ビットの状態を繰り返し測定して、起こり得る計算結果ごとの確率を決定してもよい。
【0004】
古典コンピュータで扱いにくいと考えられる問題の解を計算するために、量子コンピュータは、量子力学的状態の特殊な特性、特に、異なる量子状態の重ね合わせおよびもつれを利用して、比較的少ない計算ステップ数で解を見つけることができる。
【0005】
しかしながら、量子力学システムの重ね合わせ状態/もつれ状態は、本質的に揮発性を有し(例えば、デコヒーレンスに悩まされる)、これらのシステムの制御および測定は、忠実度の余裕の影響を受けるため、制御可能な量子力学システム(量子ビット)の数と、連続的に実行される制御動作(量子ゲート)の数との両方において、最先端の量子コンピュータは、現在、限界がある。
【0006】
これらの欠点にもかかわらず、非特許文献1によって開示された量子近似最適化アルゴリズム(QAOA)などの変分量子アルゴリズムは、近い将来利用可能な量子プロセッサ、すなわちノイズのある中規模量子(NISQ)デバイスのための有望なアプリケーションである。なぜなら、QAOAは、複数の問題セットに量子優位性を与えるために使用できる可能性のあることが示されているからである。QAOAは、所与の問題に固有の変分量子回路を規定し、当該回路内の量子ゲートは、量子ビットレジスタ内の量子ビットに対する可変作用を有し、その可変作用は、変分パラメータによってパラメータ化される。既知の初期状態の量子ビットを準備し、変分パラメータを初期推測して変分量子回路を適用した後、当該変分パラメータは続いて、変分量子回路の出力が所与の問題の最適解に近づくように、コストを回路の出力に帰属させるコスト関数を極値化するよう変更され得る。
【0007】
非特許文献2は、訓練済みリカレント古典ネットワークをフィードバックループに適用して、QAOAに基づいて量子ニューロンネットワーク(QNN)の変分パラメータを更新している。LSTMリカレント・ニューラル・ネットワークが、QNNパラメータの更新を再帰的に提案するために使用され、それによって、量子・古典最適化のための古典ブラックボックス・オプティマイザとして働く。所与の反復では、RNNは、入力として、前のQNNクエリの推定コスト関数期待値と、QNNが評価された変分パラメータとを受信する。限定された回数実行した後、量子ニューロンネットワークは、初期化状態にあると考えられ、解を微調整するために別のオプティマイザが使用されている。
【0008】
非特許文献3は、訓練済みグラフ・ニューラル・ネットワーク(GNN)を適用して、最大カット問題を解くためのQNNをウォームスタートしている。GNNは、各ノードがカットのどちらかの側にある確率を出力するように訓練され、その確率から候補解を導き出すことができ、その候補解を用いて、QNNをウォームスタートするためのQNNのミキサ・ハミルトニアンの初期状態および初期角度を見つけることができる。GNNは、教師なし学習アプローチで訓練され、GNNが最大カット問題の最適解を近似するように、候補解に帰属するコストが極値化される。
【先行技術文献】
【非特許文献】
【0009】
【非特許文献1】ファハリ(Farhi)ら著、「量子近似最適化アルゴリズム(A Quantum Approximate Optimization Algorithm)」
【非特許文献2】ヴェルドン(Verdon)ら著、「古典ニューラルネットワークを介して量子ニューラルネットワークを用いて学習する学習(Learning to learn with quantum neural networks via classical neural networks)」
【非特許文献3】ジェイン(Jain)ら著、「量子近似最適化のグラフ・ニューラル・ネットワーク初期化(Graph neural network initialization of quantum approximate optimization)」
【非特許文献4】キプフ(Kipf)およびウェリング(Welling)著、グラフ畳み込みネットワークを用いた半教師あり分類(Semi-Supervised Classification with Graph Convolutional Networks)、2017年
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、変分量子回路による解の品質は、変分量子回路が適用される問題に依存する可能性があり、問題によって著しく変わり得る。さらに、既知のウォーム・スタート・アプローチでは、依然として、変分量子回路を相当の回数反復する必要があり得る。
【0011】
この技術的現状に鑑み、本発明の目的は、NISQデバイスの使用に関係する、特に解の品質および計算速度に関する効率を向上させることである。
【課題を解決するための手段】
【0012】
本目的は、独立請求項に記載の、2つの方法と、コンピュータプログラムと、システムとによって解決される。従属請求項は、好ましい実施の形態に関する。
【0013】
第1の態様によれば、本発明は、所与の二次制約なしバイナリ最適化(QUBO)問題に基づいて処理ハードウェアを選択するためのコンピュータ実施方法に関する。本方法は、QUBO問題を対応するQUBOグラフ問題に符号化するステップであって、QUBO問題の各バイナリ変数がQUBOグラフ問題のノードに対応し、2つのノード間のエッジが、2つのノードに対応する両方のバイナリ変数を含む項の係数を符号化するステップか、または、QUBOグラフ表現のQUBOグラフ問題を受信するステップと、QUBOグラフ問題を、処理システム上の訓練済みグラフ・ニューラル・ネットワークへの入力として提供するステップとを含む。本方法は、さらに、入力で提供されたQUBOグラフ問題に対する訓練済みグラフ・ニューラル・ネットワークの出力から、変分量子ソルバを用いてQUBO問題を解くための予測性能メトリックを取り出すステップと、予測性能メトリックに基づいて、QUBO問題を、量子ハードウェアに実装された変分量子ソルバに提供するステップとを含む。
【0014】
量子ハードウェアは、現在利用するのが難しく、量子ハードウェアによって得られる解の品質が良好である場合にのみ使用することが好まれるであろう。本発明者らは、グラフ・ニューラル・ネットワークは、変分量子ソルバを用いて問題を実際に解く場合に取得可能な性能メトリックを予測するように訓練することができ、その結果、訓練済みグラフ・ネットワークは、QUBOグラフ問題例が量子優位性から利点を得るかどうか、または、推定された解の品質が、QUBO問題の解を解くか、もしくは近似するのに古典アルゴリズムの使用よりも変分量子ソルバの使用を保証するにはあまりにも低すぎるかどうかを予測し得ることを見出した。言い換えれば、性能メトリックは、変分量子ソルバを用いてQUBO問題を実際に解く際、解の予測品質に関係する定性的および/または定量的指標を提供し得る。したがって、本方法は、所与の問題に対して、その問題の対称性に基づいて適切な処理ハードウェアを自動的に選択し、それによって、変分量子ネットワークを用いてQUBO(NP困難)問題を解く効率を高め得る。グラフ・ニューラル・ネットワークは、より大きい問題(グラフ)に対する分類タスクを一般化することと、解を見つけるための変分量子ソルバに変分量子ネットワークが適用される場合、性能メトリックの実際値と相関のある出力を行うこととが見出された。
【0015】
一般に、性能メトリックは、QUBO問題を解くために変分量子ネットワークを適用することによって得ることができる最良解の品質を分類し得る。閾値条件を満たす予測性能メトリックに基づいて、例えば、性能メトリックが所定の閾値よりも低いか、または高い場合、QUBO問題は、古典処理システムに実装された古典ソルバなどの異なるソルバか、または異なる(変分)量子ソルバに提供され得る。
【0016】
好ましい実施の形態では、訓練済みグラフ・ニューラル・ネットワークは、変分量子ソルバを用いてQUBO問題を解く場合の量子近似比、または当該量子近似比に基づく性能メトリックを推定するように訓練された。
【0017】
量子近似比は、変分量子ソルバによる最良解に関するコストと、古典ソルバを用いて得られた最適解のコストまたは最良近似解のコストとの比として定義されてもよく、コストは、定量的品質メトリックをQUBO問題の候補解に帰属させるコスト関数に基づいて計算される。
【0018】
QUBO問題は、コストが、性能メトリックをQUBO問題に鑑みたQUBOメトリックの解に帰属させる二次関数または二次関数に基づくコストになるように、バイナリ変数に関する二次関数が極値化される最適化問題である。QUBO問題は、他のすべてのバイナリ・ベクトルのうち、目的関数f
Qに対して最小(最大)であるバイナリ・ベクトルx
*を見つけることとして定義されてもよく、f
Qは、バイナリ変数に関する二次多項式
【数1】
であり、
【数2】
に対して
【数3】
であり、
【数4】
に対して係数
【数5】
であり、[n]は、n以下の厳密に正の整数のセットを示し、
【数6】
である。
【0019】
そして、量子近似比は、変分量子ネットワークfQ(xvariational)を用いて得られた最良解の目的関数を、例えば問題fQ(xoptimal)を総当たり攻撃することによって得ることができる最良解の目的関数で割った比、または当該比に基づくか、数学的に等価か、または比例する関数であってもよい。
【0020】
QUBO問題は、各バイナリ変数をグラフノードとして指定することによって、QUBOグラフ問題に符号化されてもよい。2つのノード間のエッジ重みは、これらのノードが表している2つの変数を含む目的関数における項の係数と等しくてもよい。エッジ重みが0である場合、エッジは削除することができる。ノード重みは、そのノードによって表された変数だけを含む項の係数と等しくてもよい。結果として生じるQUBOグラフ表現は、QUBO問題の対称性/構造を取り込んでもよく、グラフ・ニューラル・ネットワークによって処理されてもよい。しかしながら、最大カット問題などのいくつかQUBO問題は、固有のQUBOグラフ表現を有してもよく、また、符号化が必要ないようにグラフ・ニューラル・ネットワークに直接提供されてもよい。
【0021】
グラフ・ニューラル・ネットワークは、エッジによって相互接続された一連のノードと見なされ得るグラフ向けの一連の訓練可能な変換を規定する、一般に古典処理ハードウェアに実装されたニューラルネットワークであり、ノードは、特徴ベクトルに関連付けられてもよく、かつ/または、エッジは、それぞれの重みに関連付けられてもよい。グラフ・ニューラル・ネットワークは、グラフ・ニューラル・ネットワークの出力がグラフの対称性を取り込み、かつ、ノードが単にラベル変更されただけのグラフに対する同じ出力などの、同一または類似の構造を有するグラフの異なる等価表記を一般化できるように、グラフを処理してもよい。
【0022】
好ましい実施の形態では、訓練済みグラフ・ニューラル・ネットワークは、畳み込みグラフ・ニューラル・ネットワーク、特に空間グラフ・ニューラル・ネットワークである。
【0023】
畳み込みグラフ・ネットワークは、グラフのノード/エッジに対する一般化された畳み込み演算を含み、これは、スペクトルアプローチまたは空間的アプローチに分類され得る。グラフ・ニューラル・ネットワークへのスペクトルアプローチは、入力グラフ信号を、正規化グラフ・ラプラシアンの固有ベクトルである基底を有する空間への投影に変換するグラフ・フーリエ変換を適用するステップを含んでもよく、畳み込みは、フーリエ変換によって規定されてもよい。反対に、空間的アプローチでは、畳み込みは、グラフのノード/エッジに作用する画像操作に対して規定された畳み込みに類似してもよく、メッセージ・パッシング・パラダイムを用いてもよい。
【0024】
例えば、グラフ・ニューラル・ネットワークは、複数のグラフ畳み込み層内の隣接するノードの値に関する情報を用いて、それぞれの関連付けられた値(特徴ベクトル)を更新するノードを含んでもよい。
【0025】
好ましい実施の形態では、訓練済みグラフ・ニューラル・ネットワークは、複数のグラフ畳み込み層を含み、各畳み込み層は、QUBOグラフ問題のノードごとに、隣接するノードの特徴ベクトルをまとめて集約特徴ベクトルにする集約ステップと、ノードの元の特徴ベクトルおよび集約特徴ベクトルが、訓練可能な変換に従ってノードごとに、更新特徴ベクトルに変換される変換ステップとを含む。例えば、特徴ベクトルは、ノードに接続されたエッジに関する情報を含んでもよい。
【0026】
集約ステップは、例えば、隣接するノードの特徴を合計もしくは平均化することによって、隣接するノードの最小値もしくは最大値を選択することによって、かつ/または、隣接するノードの特徴に関係する注意機構に基づいて、複数の方法で実施されてもよく、隣接するノードの集約された特徴は、処理されたノードの特徴と組み合わされてもよく、かつ/または更新特徴ベクトルを得るために変換されてもよい。訓練可能な変換は、一般に、多層パーセプトロンを用いて、集約された特徴を、更新特徴ベクトルに変換するなどによる機械学習技術の適用を伴う。例えば、グラフ同型(ニューラル)ネットワーク、GINでは、層k-1における各ノードの特徴h
v
k-1は、
【数7】
に従って、更新特徴ベクトルh
v
kに変換されてもよい。N(v)は、処理されたノードvに隣接するものであり、∈
(k)は、処理されたノードの前の特徴h
v
(k-1)を、隣接するノードの集約された(合計された)特徴に加えるための重みであり、MLP(x)は、特徴ベクトルxへの多層パーセプトロンの適用を表す。言い換えれば、各ノードに対する変換は、隣接するノードのすべての特徴と、それ自体(ファクタのイプシロン∈
(k)によって重み付けられた)とを合計し、次に、その結果を多層パーセプトロンを用いて変換するステップを含んでもよい。
【0027】
エッジ重みは、特徴ベクトルの一部として、畳み込み(例えば、式(2)などの変換関数)の一部として、および/または、グラフ・ニューラル・ネットワーク内でエッジをノードとして扱うことによって、考慮されてもよい。例えば、グラフ・ニューラル・ネットワークの特定のノードは、グラフノードに由来するのか、またはグラフエッジに由来するのかを示すために、符号化を用いることができる。その後、グラフは、ノード特徴だけを有するとして扱うことができる。さらに、または代替として、畳み込みステップは、例えば隣接するノードごとに、それぞれのノード、隣接するノード、および接続するエッジに基づく変換を含んでもよい。
【0028】
別の例として、非特許文献4によって導入されたグラフ畳み込みネットワークは、伝播ステップ
【数8】
を用いてもよい。ここで、H
lは、すべてのノードの特徴ベクトルを行列形式で示す、グラフ畳み込みネットワークのl番目の層における活性化(特徴)行列であり、
【数9】
は、自己接続部(self-connections)を有する無向グラフの隣接行列であり、I
Nは、単位行列であり、
【数10】
は、(訓練可能な)層固有の重み行列であり、σは、ReLuなどの活性化関数を示す。
【0029】
次いで、複数の伝播ステップの後に生じる更新値(特徴ベクトル/活性化行列)は、グラフレベル読み出しを含み得る、ニューラルネットワークのさらなる層によって処理されてもよく、グラフレベル読み出しは、ノードの更新特徴ベクトル/更新値を出力ベクトルおよびさらなる層、例えば全結合層に変換し、集約層によって抽出されたグラフ対称性に応じて出力を行ってもよい。
【0030】
好ましい実施の形態では、訓練済みグラフ・ニューラル・ネットワークは、複数のグラフ畳み込み層のうちの少なくとも1つの出力をプーリングするためのプーリング層と、プーリング層と訓練済みグラフ・ニューラル・ネットワークの出力との間の全結合層とを含む。
【0031】
集約ステップと同様に、例えばグラフ畳み込み層の後のノードの特徴を合計もしくは平均化することによって、ノードの最小値もしくは最大値を選択することによって、かつ/または、ノードの特徴に関係する注意機構に基づいて、異なるプーリング技術を実施の形態に用いて、すべてのノードの更新特徴ベクトルから導き出された特徴ベクトルを得るなどしてもよい。
【0032】
例えば、GINでは、グラフ・ニューラル・ネットワークは、グローバルプーリング/グラフレベル読み出しに合計プーリングを用いてもよく、すなわち、特徴ベクトルのすべてが合計されてもよく、合計された特徴ベクトルが、グラフレベル読み出し結果(プーリングされた特徴)であってもよい。続いて、ニューロンの複数の全結合層を用いて、プーリングされた特徴を所望の出力に変換してもよい。全結合層は、任意の適切な活性化関数、例えばReLuを有する人工ニューロンを含んでもよく、ReLuでは、層内の人工ニューロンの各々が前の層のすべての人工ニューロンに接続されてもよい。例として、全結合層は、全結合された人工ニューロンの3つまたは4つの層を含んでもよい。
【0033】
好ましい実施の形態では、訓練済みニューラルネットワークは、訓練セットを受信するステップであって、訓練セットは、複数のQUBOグラフ問題と、複数のQUBOグラフ問題の各々に対応する性能メトリックとを含み、性能メトリックは、QUBOグラフ問題用の変分量子ソルバを用いて決定された解候補の品質指標と、QUBOグラフ問題の古典解の同様の品質指標との比を示し、品質指標は、特に、解候補に関するコストである、受信するステップと、訓練セットでグラフ畳み込みネットワークを訓練するステップであって、グラフ畳み込みネットワークの入力では、複数のQUBOグラフ問題を受信し、グラフ畳み込みネットワークの訓練可能なパラメータは、所与のQUBOグラフ問題用のグラフ畳み込みネットワークの出力が性能メトリックに近づくように反復的に更新される、訓練するステップとによって訓練された。
【0034】
変分量子ソルバによる解の性能メトリックは、例えば上で定義したような解の量子近似比であってもよく、または、所与のQUBOグラフ問題に対する量子近似比を示す性能メトリックであってもよい。
【0035】
訓練セットは、複数のQUBOグラフ問題への変分量子ソルバの以前の適用から構築されてもよく、例えば、品質指標は、変分量子ソルバを用いて得られた/得ることが可能な最良解に対して計算されてもよく、例えば、総当たり攻撃または古典近似アルゴリズムを介して得られた最適解など、古典解は、古典方法を用いて決定されてもよい。
【0036】
好ましい実施の形態では、変分量子ソルバは、QUBO問題の解を示す出力を決定するための変分量子ネットワークを含み、変分量子ネットワークのゲート構成は、特に、QUBO問題に基づいて選択され、変分量子ネットワークは、量子近似最適化アルゴリズム(QAOA)に基づくことが好ましく、かつ/または、ゲート構成は、コストをQUBO問題の解に帰属させるコスト関数に依存することが好ましく、最適解がコスト関数のグローバル極値に関連付けられている。
【0037】
変分量子ソルバは、一般に、複数の量子ビットを含んでもよく、その量子状態は、順次にまたは単一の量子ビットおよび/もしくは複数の量子ビットと並列に適用された量子ゲートの適用によって操作されてもよい。
【0038】
量子ビットは、各量子ビットの基底状態などの初期状態に初期化することができる。いくつかの実施の形態では、量子ビットを基底状態に初期化した後、例えばアダマール・ゲートを適用することによって、量子ビットレジスタ内の各量子ビットの重ね合わせ状態が準備される。
【0039】
続いて、複数の量子ゲートが量子ビットに適用され、それらの状態が出力状態に変換されてもよい。変分量子ソルバでは、変分量子ネットワーク内の量子ゲートのうちの少なくともいくつかの動作がパラメータ化され、その結果、測定された出力は、(変分)量子ゲートの可変作用をパラメータ化する変分パラメータの関数となる。(少なくとも部分的にパラメータ化された)量子ゲートの組み合わされた動作は、動作原理がニューラルネットワークの動作に類似し得るため、変分量子ネットワークと呼ばれてもよい。
【0040】
いくつかの例において、量子ゲートの層は、量子ビットに作用して、変分量子ネットワーク内の量子ビットをリンクさせてもよい。量子ゲートの層は、量子ビットレジスタ内の量子ビットの状態に対する複数のコヒーレント動作の累積的な作用を含んでもよい。1つの層におけるコヒーレント動作の累積作用は、一般に、計算に関与する量子ビットレジスタ内のすべての量子ビットに作用するべきであり、言い換えれば、量子ゲートの層は、量子ビットレジスタ内のすべての量子ビットの状態に直接影響を及ぼすべきである。各層は、少なくとも1つのマルチ量子ビットゲートと、少なくとも1つの変分量子ゲート(原理的には、同一ゲートであり得るであろう)とを含むべきである。当業者は、層内の量子ビットの状態に対する一連のコヒーレント動作を短縮するために、層内の複数の量子ゲートが量子ビットに並列に適用され得ることを理解するであろう。その後、量子ゲートの複数の層を量子ビットに適用することにより、層ごとに変分パラメータによってパラメータ化された変分量子ネットワークを形成してもよい。
【0041】
層は、同一タイプの量子ゲートを含んでもよく、量子ビットレジスタに順次適用されてもよい。例えば、各層は量子ゲートの同一アーキテクチャを特徴としてもよいが、変分パラメータの異なる要素が層の変分ゲートに適用されてもよい。言い換えれば、層は同一量子ゲートアーキテクチャを特徴としてもよいが、各層内の量子ビットに対する量子ゲートの作用は、変分パラメータに基づいて異なってもよい。
【0042】
いくつかの実施の形態では、量子ゲートの層は、各層に量子ゲートの同一配置を有し、各層の量子ゲートは、特に、量子ビットレジスタのすべての量子ビットに対して共に作用する複数のマルチ量子ビット量子ゲートを含む。
【0043】
量子ゲートの層が量子ビットに作用した後、量子ビットを測定して、既知の初期状態に関する変分量子ネットワークの特徴的な結果を得ることができる。量子力学的計算の結果は、量子ビットの計算上の基底状態を介して問題の古典解にリンクし得る。計算基底状態は、各量子ビットの基底状態のテンソル積によって跨ったヒルベルト空間の直交基底状態であってもよい。
【0044】
変分量子ゲートの初期変分パラメータは、初期(ランダム)推測を符号化することができ、変分パラメータを有する変分量子ネットワークの評価の結果を測定して、対応する解を決定することができる。その解に基づいて、QUBO問題のコスト関数を古典的に評価して、コストを解に帰属させてもよく、言い換えれば、解がどの程度良好であるかの尺度が計算される。通常、続いて、変分パラメータは、出力が最適解に近づくように、古典処理システムに実装されたフィードバックループを用いて(反復的に)更新され、変分量子ソルバが量子・古典ハイブリッドアルゴリズムになる。
【0045】
例えば、QAOAでは、量子ゲートのp個の層それぞれの量子ゲート構成は、QUBO問題の構造に基づいて決定され、量子ゲートに関連付けられた可変作用を含む。具体的には、各層は、初期状態|Ψ
0〉から出力状態
【数11】
を生成するために、それぞれのユニタリU(β)、U(γ)を定義する可変作用β、γを有するミキサ・ハミルトニアンH(β)および問題ハミルトニアンH(γ)を含む。
【0046】
適切な(古典)オプティマイザ・アルゴリズムを用いて可変作用β、γを変えることによって、測定された出力量子状態は、問題の解を符号化する出力に近づくことができる。しかしながら、特定の基本となる量子ハードウェアに合わせ得る他の量子アルゴリズムが、実施の形態に利用されてもよい。
【0047】
訓練済みグラフ・ニューラル・ネットワークは、変分量子ソルバによって得られた最適解に基づいて訓練されることが好ましく、グラフ・ニューラル・ネットワークによって予測された性能メトリックが、予測量子優位性を示す閾値を満たす場合、新たなQUBO問題が変分量子ソルバに提供される。それでもなお、いくつかの実施の形態では、QUBO問題が提供される変分量子ソルバは、また、グラフ・ニューラル・ネットワークが訓練された変分量子ソルバと異なってもよく、例えば、訓練済みグラフ・ニューラル・ネットワークは、量子優位性が所与のQUBO問題に利用され得るかどうかをある程度示してもよい。他の実施の形態では、複数のグラフ・ニューラル・ネットワークが、所与のQUBO問題に適した変分量子ソルバを選択するなどのために、様々な変分量子ソルバの性能メトリックを予測するように訓練される。
【0048】
本方法を実施した結果は、変分量子ソルバの適用が古典ソルバの適用に対して効率的であるかどうかを示し得る性能メトリックを提供することができ、これにより、変分量子ソルバを用いて解くのに適した問題例を迅速に識別すことが可能になり得る。
【0049】
さらに、本発明者らは、また、特にQAOAアルゴリズムに基づいて、グラフ・ニューラル・ネットワークを用いて変分量子ネットワークの最適変分パラメータを直接予測し得、最適変分パラメータは、コスト関数を極値化するか、または、最良解に向けて変分パラメータを反復的に更新する場合に変分量子ソルバを用いて得ることができる最適解に近い解を少なくとも提供することを見出した。
【0050】
好ましい実施の形態では、本方法は、さらに、QUBOグラフ問題を、量子ハードウェアに実装された変分量子ソルバに提供するステップの一部として、QUBOグラフ問題を第2訓練済みグラフ・ニューラル・ネットワークに提供するステップであって、第2訓練済みグラフ・ニューラル・ネットワークは、複数のQUBOグラフ問題に対して、変分量子ソルバによる最適解に関する変分パラメータを予測するように訓練された、提供するステップと、第2訓練済みグラフ・ニューラル・ネットワークの出力で、第2訓練済みグラフ・ニューラル・ネットワークから予測変分パラメータを受信するステップとを含む。本方法は、さらに、変分量子ソルバを用いてQUBO問題の候補解を決定するために、予測変分パラメータおよび問題を変分量子ソルバに提供するステップを含む。
【0051】
したがって、候補解は、第2訓練済みグラフ・ニューラル・ネットワークの出力から受信された変分パラメータに基づいて決定し得る。このように得られた候補解は、最終解として用いられてもよく、または、変分量子ソルバを用いて候補解の精度を高め、コスト関数を極値化してもよい。本発明者らは、所与のQUBOグラフ問題に基づいて変分パラメータを予測するように訓練されたグラフ・ニューラル・ネットワークは、変分量子ソルバを用いて得ることができる最適解に近い解を提供し得るだけでなく、訓練セットのものよりも複雑なQUBO問題に対する最適変分パラメータ(可変作用)を見つける問題をある程度一般化し得ることを見出した。並列の両方のグラフ・ニューラル・ネットワークにQUBO問題が提供されてもよく、性能メトリックが閾値を満たす場合、第2グラフ・ニューラル・ネットワークの予め計算された出力が、変分量子ソルバに提供されてもよいことに留意されたい。最良解を予測するように通常ニューラルネットワークが訓練される先行技術と比較して、このアプローチは、訓練セットの問題よりも多くのノード/変数を有するグラフに直接一般化し得る。
【0052】
第2の態様によれば、本発明は、所与の二次制約なしバイナリ最適化(QUBO)問題を解くためのコンピュータ実施方法に関する。本方法は、QUBO問題を対応するQUBOグラフ問題に符号化するステップであって、QUBO問題の各バイナリ変数がQUBOグラフ問題のノードに対応し、2つのノード間のエッジが、2つのノードに対応する両方のバイナリ変数を含む項の係数を符号化するステップか、または、QUBOグラフ表現のQUBOグラフ問題を受信するステップと、QUBOグラフ問題を、処理システム上の訓練済みグラフ・ニューラル・ネットワークへの入力として提供するステップとを含む。本方法は、さらに、入力で提供されたQUBOグラフ問題に対する訓練済みグラフ・ニューラル・ネットワークの出力から、変分量子ソルバを用いてQUBO問題を解くための予測変分パラメータを受信するステップと、QUBO問題に対する予測変分パラメータを、量子ハードウェアに実装された変分量子ソルバに提供するステップとを含む。
【0053】
好ましい実施の形態では、変分量子ソルバは、QUBO問題の解を示す出力を決定するための変分量子ネットワークを含み、変分量子ネットワークの量子ゲート構成は、QUBO問題に固有であり、変分パラメータは、QUBO問題に固有の変分量子ネットワークの出力を規定し、変分量子ネットワークは、特に、量子近似最適化アルゴリズム(QAOA)に基づいている。
【0054】
第3の態様によれば、本発明は、所与の二次制約なしバイナリ最適化(QUBO)問題を解くためのシステムに関する。本システムは、QUBO問題に対応するQUBOグラフ問題を取得し、QUBO問題の各バイナリ変数がQUBOグラフ問題のノードに対応し、2つのノード間のエッジが、2つのノードに対応する両方のバイナリ変数を含む項の係数を符号化し、または、QUBOグラフ表現のQUBOグラフ問題を受信し、QUBOグラフ問題を、処理システム上の訓練済みグラフ・ニューラル・ネットワークへの入力として提供する、処理システムを備える。処理システムは、さらに、入力で提供されたQUBOグラフ問題に対する訓練済みグラフ・ニューラル・ネットワークの出力から、変分量子ソルバを用いてQUBO問題を解くための予測性能メトリックを受信し、予測性能メトリックに基づいて、QUBO問題を、量子ハードウェアに実装された変分量子ソルバに提供する。
【0055】
本システムは、第1の態様、第2の態様、またはそれらの実施の形態の任意の組み合わせに係る方法を実施してもよい。
【0056】
いくつかの実施の形態では、本システムは、例えば、QUBO問題を、量子ハードウェアに実装された変分量子ソルバに提供することの代替または追加として、予測性能メトリックに基づいて、QUBO問題を、古典処理システムに実装された古典ソルバに提供してもよい。
【0057】
好ましい実施の形態では、対応するQUBOグラフ問題を取得することは、処理システムによって、QUBO問題を対応するQUBOグラフ問題に符号化することを含む。
【0058】
好ましい実施の形態では、本システムは、特に、処理システムで実行可能な機械可読モデルを備え、かつ/または、本システムは、さらに、訓練済みグラフ・ニューラル・ネットワークを実装するAI処理ハードウェアを備え、AI処理ハードウェアは、特に、GPU、ニューラル処理部、アナログメモリベース・ハードウェア、またはニューロモルフィック・ハードウェアを含む。
【0059】
機械可読モデルは、適切な処理ハードウェア上で動作する場合、訓練済みグラフ・ニューラル・ネットワークを実装してもよい。処理システムは、単一の処理部を含んでもよく、または、機能的に接続され得る複数の処理部を含んでもよい。処理部は、マイクロコントローラ、ASIC、PLA(CPLA)、FPGA、または、前述のAI処理ハードウェアなどの、ソフトウェア、ハードウェア、ファームウェアもしくはそれらの組み合わせに基づいて動作する処理装置を含む他の処理装置を含んでもよい。処理装置は、集積メモリを含むか、外部メモリと通信するか、またはその両方を行うことができ、センサ、デバイス、機器、集積論理回路、他のコントローラなどに接続するためのインタフェースをさらに含んでもよく、インタフェースは、電気信号、光信号、無線信号、音響信号などの信号を送受信してもよい。
【0060】
好ましい実施の形態では、処理システムは、さらに、QUBOグラフ問題を第2訓練済みグラフ・ニューラル・ネットワークに提供し、第2訓練済みグラフ・ニューラル・ネットワークは、複数のQUBOグラフ問題に対して、変分量子ソルバによる最適解に関する変分量子ソルバの変分パラメータを予測するように訓練されており、第2訓練済みグラフ・ニューラル・ネットワークの出力で、第2訓練済みグラフ・ニューラル・ネットワークから予測変分パラメータを受信し、変分量子ソルバを用いてQUBO問題の候補解を決定するために、予測変分パラメータおよび問題を変分量子ソルバに提供する。
【0061】
第4の態様によれば、本発明は、機械可読命令を含むコンピュータプログラムであって、コンピュータプログラムが処理システムによって実行されると、機械可読命令により、処理システムが第1の態様または第2の態様の任意の実施の形態に係る方法を実施し、かつ/または、第3の態様の任意の実施の形態に係るシステムを実装する、コンピュータプログラムに関する。
【0062】
本発明に係る方法およびシステムの特徴および多くの利点は、添付の図面を参照して好ましい実施の形態の詳細な説明から、最も良く理解されるであろう。
【図面の簡単な説明】
【0063】
【
図1】
図1は、ハイブリッド量子計算システムの一例を概略的に示す図である。
【
図2】
図2は、QAOAアルゴリズムに基づく変分量子ソルバの一例を概略的に示す図である。
【
図3】
図3は、一例による、所与のQUBO問題に基づいて処理ハードウェアを動的に選択するための方法のフローチャートを示す図である。
【
図4】
図4は、空間的アプローチに基づく例示的畳み込みグラフ・ニューラル・ネットワークの動作原理を示す概略フローチャートを示す図である。
【
図5】
図5は、変分量子ネットワークを用いてQUBO問題を解くための変分パラメータを動的に選択するための方法のフローチャートを示す図である。
【
図6】
図6は、所与のQUBO問題を解くための方法のフローチャートの一例を示す図である。
【
図7】
図7は、所与の最大カット最適化問題を解くための方法のフローチャートの一例を示す図である。
【
図8】
図8は、2つのグラフ・ニューラル・ネットワークを訓練するための訓練セットを構築する例示的方法のフローチャートを示す図である。
【
図9】
図9は、いくつかの例による、QAOAアルゴリズムを実装する変分量子ソルバの性能メトリックおよび最適パラメータを予測するための結果を示す図である。
【
図10A】
図10Aは、等しい重みのエッジによって相互接続された9つのノードを含む例示的グラフを示す図である。
【
図10B】
図10Bは、等しい重みのエッジによって相互接続された9つのノードを含む例示的グラフを示す図である。
【発明を実施するための形態】
【0064】
図1は、変分量子ネットワークを実装し、動作させるためのハイブリッド量子計算システム10の一例を概略的に示す。システム10は、複数の量子ビットを含む量子ビットレジスタ12を備える。複数の量子ゲート14が、計算を実行するために量子ビットレジスタ12の量子ビットに作用してもよく、複数の量子ゲート14の可変作用は、変分パラメータによってパラメータ化されてもよい。計算結果は、量子ビットの状態をハイブリッド量子計算システム10の計算基底状態に投影する測定センサ16によって測定されてもよい。結果は、コントローラ18によって受信することができる。
【0065】
コントローラ18は、計算シーケンスを繰り返し実行してもよい。計算シーケンスは、例えば、|++…+>の量子ビットの初期状態を形成するために、各計算の前に、量子ビットレジスタ12の量子ビットを各量子ビットの基底状態などに初期化するステップを含んでもよい。次に、コントローラ18は、複数の量子ゲート14を量子レジスタ12の量子ビットに適用して、量子ビットのコヒーレント展開を動作させてもよい。最初に、コントローラは、例えばアダマール・ゲートを量子ビットの各々に適用することによって、すべての量子ビットの重ね合わせ状態を生成してもよく、その後、可変作用を有する変分量子ゲートを含む複数の量子ゲート14を適用してもよい。コヒーレント展開に続いて、量子ビットレジスタ12内の量子ビットの状態をセンサ16で測定してもよい。測定センサ16は、複数の量子ゲート14による展開の後に各量子ビットの状態を測定するための複数の単一量子ビット状態検出器であってもよい。測定を繰り返すことにより、各測定結果の確率を決定することが可能になり得、その結果を、QUBO問題の解を見つけるために使用してもよい。コントローラ18は、その測定結果に基づいて、解を求めるQUBO問題のコスト関数を用いて解の「エネルギー」/「コスト」を古典的に計算することができる。
【0066】
例えば、コスト関数は、任意のグラフ上の最大カット問題、すなわち、2つの分離されたセット間のエッジの総重みが可能な限り大きくなるように、接続されたノードのセットを通るカットを見つける問題であってもよい。この問題は、VLSI回路設計におけるチップレイアウトの最適化などのいくつかの同等の問題に割り当てることができ、そのため、正解を見つけることは、技術的に重要である。最大カット問題は、コスト関数
【数12】
を最小化するQUBO問題としてパラメータ化されてもよく、ここで、d
ijは、グラフ内のi番目のノードとj番目のノードと間のエッジの重みである。解は、2つのセットのうちの一方への対応を示すノードのバイナリ文字列
【数13】
である。次に、対応するQUBO行列の要素は、Q
ij=2d
ij(i>j)およびQ
ii=-Σ
jd
ijであってもよい。したがって、量子計算ネットワークの結果状態の確率を決定した後、それぞれのコスト関数に従ってコストを計算してもよい。
【0067】
次いで、従来、コントローラ18は、測定結果に関連するQUBOタイプの問題の解を徐々に改善するなどのために、結果に基づいて調整された可変作用を有する計算シーケンスを繰り返してもよい。例えば、コントローラ18は、測定結果から、複数の量子ゲート14に関連付けられた勾配またはエネルギー地形を決定するために、変分量子ゲートの調整された動作パラメータを用いて計算シーケンスを繰り返してもよく、変分量子ネットワークを改善された解に向けて徐々に調整するために、推定された勾配に基づいて変分パラメータを更新してもよい。
【0068】
図2は、複数の量子ゲート14が量子デバイス23に実装された変分量子ネットワーク22を含む、QAOAアルゴリズムに基づく変分量子ソルバ20の一例を示す。変分量子ネットワーク22は、状態Ψ
1~Ψ
Nを有する複数の量子ビットを含む量子ビットレジスタ12を含み、各量子ビット状態の展開は、量子ビットレジスタ12から測定センサ16に向かって水平に延びる水平線として示されている。
【0069】
量子ビットは、最初に基底状態、例えば|+>に初期化されてもよい。複数の量子ゲート14は、各量子ビットを重ね合わせ状態に準備するために、量子ビットが初期化された後に量子ビットレジスタ12の各量子ビットに作用する複数のアダマール(H)・ゲートまたは別の初期化シーケンス(図示せず)を含んでもよい。次いで、変分量子ネットワーク22は、等しい構造を有する量子ゲートの複数のp個の層24a~24cを含んでもよく、層24a~24cは、その後に適用される量子ビットレジスタ12内の量子ビットに対する複数の量子動作を表す。
【0070】
各層24a~24cは、可変作用が変分パラメータβ、γによってパラメータ化される複数の変分量子ビットゲートを含む。具体的には、QAOAにおいて、アルゴリズムは、可能な計算基底状態
【数14】
の均一な重ね合わせの量子ビットで始まる。
【0071】
その後、一連のp個のユニタリ演算、すなわち、それぞれ角度βおよびγを特徴とする層24cが適用される。これらの変換後、状態は、
【数15】
になる。
【0072】
QAOAアルゴリズムにおいて、第1ユニタリは、通常、
【数16】
によって示され、これは、状態の各項にコスト依存フェーズを加える。最大カットについては、式5で定義されたコスト関数が直接代入されてもよく、問題グラフ26内の各ノードx
i、x
jは、図に示すように量子ビットのうちの1つに割り当てられてもよい。第1ユニタリは、両方の変数を含む項による共通エッジによって接続されたノードを結合してもよい。第2ユニタリは、
【数17】
によって示され得、これは、
【数18】
を用いることによって計算基底において結合を実施する。すなわち、量子ビットjに対して単一量子ビット回転を実施してもよい。量子ゲート14の層24a~24cを量子ビットに適用した後、量子ビットの状態は、測定センサ16によって測定されてもよい。測定センサ16は、複数の量子ゲート14による展開の後に各量子ビットの状態を測定するための複数の単一量子ビット状態検出器であってもよい。測定を繰り返すことにより、各測定結果の確率を決定することが可能になり得、その結果を、例示的問題グラフ26に対する図示された解候補28などの解を見つけるために使用してもよい。
【0073】
その後、古典計算システム30は、最適解に近い可能性のある「良好な」解に反復的に近づくために、例えばコスト計算モジュール32においてコスト〈CZ〉を計算し、そして、パラメータ更新モジュール34において更新パラメータ値γ、βを決定することによって、何らかの最適化関数に基づいて、更新パラメータ値γ、βを決定してもよい。
【0074】
しかしながら、量子ハードウェアの利用は、現在依然として限定されており、QUBO問題を解くために量子ハードウェアを用いる効率も、特定の問題例に依存し得る。具体的には、いくつかのQUBO問題は、変分量子ソルバ20によって解く場合、量子優位性から利点を得ない可能性があるか、または、解のコストが最適解から著しく外れている可能性がある。したがって、変分量子ソルバ20が良好な解を提供すると予想される問題にのみ、量子ハードウェアを適用することが有利であろう。
【0075】
図3は、一例による、所与のQUBO問題に基づいて処理ハードウェアを動的に選択するための方法のフローチャートを示す。本方法は、QUBO問題を対応するQUBOグラフ問題に符号化するステップであって、QUBO問題の各バイナリ変数がQUBOグラフ問題のノードに対応し、2つのノード間のエッジが、2つのノードに対応する両方のバイナリ変数を含む項の係数を符号化するステップか、または、QUBOグラフ表現のQUBOグラフ問題を受信するステップ(S10)と、QUBOグラフ問題を、処理システム上の訓練済みグラフ・ニューラル・ネットワークへの入力として提供するステップ(S12)とを含む。本方法は、さらに、入力で提供されたQUBOグラフ問題に対する訓練済みグラフ・ニューラル・ネットワークの出力から、変分量子ソルバ20を用いてQUBO問題を解くための予測性能メトリックを取り出すステップ(S14)と、予測性能メトリックに基づいて、QUBO問題を、量子ハードウェアに実装された変分量子ソルバ20に提供するステップ(S16)とを含む。
【0076】
例えば、グラフ・ニューラル・ネットワークは、例えば、同様のQUBO問題用の変分量子ソルバ20の過去の性能に基づいて、入力で提供された所与のQUBO問題に対する性能メトリックとして、QUBO問題に関係する正規化されたコスト関数の期待値、または、C
zと理論最大値C
maxとの比の期待値として定義された量子近似比r
【数19】
を予測するように訓練されてもよい。性能メトリックが閾値を満たす場合、QUBO問題は、変分量子ソルバ20に提供され得る。そうでなければ、QUBO問題は、古典処理システムに実装された古典ソルバ、または異なる(変分)量子ソルバに提供され得る。
【0077】
グラフ・ニューラル・ネットワークは、空間情報を破棄することなく、グラフから特徴を抽出してもよく、実験において、変分量子ソルバ20の性能メトリック予測のタスクに適していることが、本発明者らによって見出された。
【0078】
図4は、空間的アプローチに基づく例示的畳み込みグラフ・ニューラル・ネットワークの動作原理を示す概略フローチャートを示す。
【0079】
第1ステップ(2)では、入力グラフ(1)内の各ノードに対して、隣接するノードすべての特徴が集約される。いくつかの一般的な集約方法には、合計、平均化、最小値もしくは最大値の選択、または、隣接するノードに関連付けられた特徴ベクトルへの注意機構の適用がある。第2ステップ(3)では、隣接するノードの特徴が集約された第1ステップ(2)の結果を含む各ノード上の特徴ベクトルが、訓練可能な変換を用いて新たなベクトルに変換され、前の2つのステップ(2、3)によって抽出された構造情報を含む更新グラフ(4)が得られ得る。
【0080】
ステップ(2、3)は、複数の集約層および変換層を形成するなどのために、更新グラフ(4)に適用されてもよく、各集約層および各変換層を適用することで、ますます遠くなる隣接するノードの特徴を反復的に集約してもよい。
【0081】
その後、集約ステップと変換ステップとを繰り返し適用した結果が、プーリング層/読み出し層/平滑化層内で読み出されてもよい(5)。グラフレベル読み出し(5)は、各ノードに関連付けられた特徴ベクトルを現在含むグラフを、ベクトルに変換してもよい。さらに、最大値プーリング、最小値プーリング、平均値プーリング、および合計値プーリングなどの異なるアプローチが、実施の形態において用いられてもよい。グラフレベル読み出し(5)での特徴が、前の層の中間特徴ベクトルの一部またはすべてに依存し得るように、例えば、前の集約ステップおよび変換ステップの中間結果に依存し得るように、前の層からのジャンプ接続(jump connection)が用いられてもよい。しかしながら、いくつかの実施の形態では、グラフレベル読み出し(5)を実行するために、最後の変換ステップおよび集約ステップの最終の特徴ベクトルだけが用いられてもよい。
【0082】
結果として生じるベクトルは、グラフに関する情報を含んでもよい。この時点で、いくつかの全結合層を適用することができ、また、出力が得られてもよく、その出力は、例えば、QAOAアルゴリズムに基づいて、変分量子ソルバ20を用いて入力問題(1)を解く場合の予測性能メトリックであってもよい。
【0083】
追加として、または代替として、グラフ・ニューラル・ネットワークは、入力で提供されたQUBOグラフに基づいて、出力で変分量子ソルバ20の最適変分パラメータを予測するように訓練されてもよい。
【0084】
図5は、QUBO問題を解くための変分パラメータを動的に選択するための方法のフローチャートを示す。本方法は、QUBO問題を対応するQUBOグラフ問題に符号化するステップであって、QUBO問題の各バイナリ変数がQUBOグラフ問題のノードに対応し、2つのノード間のエッジが、2つのノードに対応する両方のバイナリ変数を含む項の係数を符号化するステップか、または、QUBOグラフ表現のQUBOグラフ問題を受信するステップ(S20)と、QUBOグラフ問題を、処理システム上の訓練済みグラフ・ニューラル・ネットワークへの入力として提供するステップ(S22)とを含む。本方法は、さらに、入力で提供されたQUBOグラフ問題に対する訓練済みグラフ・ニューラル・ネットワークの出力から、変分量子ソルバ20を用いてQUBO問題を解くための予測変分パラメータを受信するステップ(S24)と、QUBO問題に対する予測変分パラメータを、量子ハードウェアに実装された変分量子ソルバ20に提供するステップ(S26)とを含む。
【0085】
したがって、変分量子ソルバ20に実装されたQAOAアルゴリズムの変分パラメータγ、βなどの変分量子ネットワークの変分パラメータを予測するために、グラフ・ニューラル・ネットワークが用いられてもよい。
【0086】
先の場合と同様に、グラフ・ニューラル・ネットワークは、変分量子ソルバ20をQUBO(グラフ)問題のセットに適用し、そして、最適解に関する変分パラメータγ、βを記録したという過去の結果を用いて訓練されてもよい。次いで、グラフ・ニューラル・ネットワークは、所与のQUBO問題に基づいて、新たな所与のQUBO問題に対する変分パラメータγ、βを予測するように訓練されてもよい。QAOAアルゴリズムについて、これは、QAOAアルゴリズムを実装する変分量子ネットワークの層24a~24cの1層につき2つのパラメータγ、βを予測するステップを含んでもよく、問題グラフ26のサイズとは無関係であってもよい。
【0087】
したがって、グラフ・ニューラル・ネットワークは、変分量子ソルバ20が「良好な」解および「良好な」解をもたらす可能性のあるパラメータを生成しそうかどうかを、所与のQUBO問題に基づいて予測するために用いられてもよく、ここで、「良好な」解とは、例えば、古典ハードウェアを用いてQUBO問題をブルートフォース攻撃する場合、QUBO問題の最適解のコストに近いコストを有する解である。
【0088】
図6は、所与のQUBO問題を解くための方法のフローチャートの一例を示す。第1ステップ(1)では、古典ハードウェアに少なくとも部分的に実装され得る処理システムに、組み合わせ最適化問題が提供される。処理システムは、組み合わせ最適化問題がまだグラフ表現で提供されていない場合、組み合わせ最適化問題を、第1グラフ・ニューラル・ネットワークによって処理するためのグラフ表現に符号化してもよい(2)。入力問題がQUBOグラフ表現でない場合、その入力問題は、任意選択でQUBO表現に変換されてもよく、処理システムによって、第1グラフ・ニューラル・ネットワークで処理可能なグラフ表現に符号化されてもよい。例えば、問題のQUBO形式への変換は、多項式制約なしバイナリ最適化問題を、その対応する二次制約なしバイナリ最適化問題に二次化することを包含してもよい。次いで、QUBO問題は、グラフ表現に符号化されてもよい。
【0089】
第1グラフ・ニューラル・ネットワークは、続いて、グラフ表現の組み合わせ最適化問題を処理して、変分量子ソルバ20が組み合わせ最適化問題の良好な解を提供する可能性があるかどうかを示し得る性能メトリックを提供してもよい。例えば、グラフ・ニューラル・ネットワークは、量子近似比などの正規化された性能メトリックを提供してもよく、その正規化性能メトリックは、変分量子ソルバ20による最適解のコストがどの程度、組み合わせ最適化問題の本当に適切な解のコストに近いかを示し得る。
【0090】
性能メトリックに基づいて、組み合わせ最適化問題を解くのに適したアルゴリズムが選択されてもよい(3)。性能メトリックが、変分量子ソルバ20に実装されたある量子アルゴリズムが良好な解を得ると予想されることを示す場合、処理システムは、その量子アルゴリズムを選択してもよい(4)。
【0091】
量子アルゴリズムの変分パラメータγ、βを予測するために、第2グラフ・ニューラル・ネットワークがグラフ表現の組み合わせ最適化問題を処理してもよい(5)。変分パラメータγ、βは、変分量子ソルバ20に提供され、その出力で解候補を生成してもよく(6)、その解候補は、組み合わせ最適化問題の解として使用されてもよく(9)、またはウォームスタート手順の一部として使用されてもよく、予測変分パラメータγ、βは、続いて、変分量子ソルバ20を用いて得ることができる最適解(9)に向けて解の精度をさらに高めるために更新されてもよい。
【0092】
第1グラフ・ニューラル・ネットワークが変分量子ソルバ20の性能が低いことを予測する場合、処理システムは、組み合わせ最適化問題の解を解くか、または近似するための古典アルゴリズムを選択してもよく(7)、古典アルゴリズムは、古典ハードウェア上で実行され、組み合わせ最適化問題の解を提供してもよい(9)。
【0093】
図7は、所与の最大カット最適化問題を解くための方法のフローチャートの一例を示す。本方法は、既にQUBOグラフ表現であり得る最大カット最適化問題を受信する(1)ことで始まる。入力問題がQUBOグラフ表現でない場合、その入力問題は、任意選択でQUBO表現に変換されてもよく(2)、処理システムによって、第1グラフ・ニューラル・ネットワークで処理可能なグラフ表現に符号化されてもよい(3)。例えば、各バイナリ変数は、グラフノードに対応してもよい。2つのノード間のエッジ重みは、これらのノードが表している2つの変数を含む目的関数中の項の係数と等しくてもよい。エッジ重みが0である場合、エッジを削除することができる。ノード重みは、そのノードによって表された変数だけを含む項の係数と等しくてもよい。
【0094】
図示した例では、グラフ・ニューラル・ネットワークとして訓練済みグラフ同型ネットワークを用いて、問題グラフ26用の変分量子ソルバ20に実装された量子アルゴリズムを用いることで得られ得るであろう量子近似比を予測する(4)。この予測に基づいて、適切な量子アルゴリズムまたは古典アルゴリズムを選択することができる。
【0095】
変分量子ソルバ20の予測量子近似比が良好である場合(5)、変分量子ソルバ20に問題が提供され得る。図示した例において、変分量子ソルバ20は、量子アルゴリズムとしてQAOAを実装している。
【0096】
本方法は、さらに、第2グラフ・ニューラル・ネットワークを用いて量子アルゴリズムの最適変分パラメータγ、βを予測するステップ(6)を含んでもよい。例えば、グラフ・ニューラル・ネットワークは、最適変分パラメータγ、βが既に利用可能である他の問題グラフ26で訓練されてもよい。続いて、訓練済みグラフ・ニューラル・ネットワークを用いて、新たな問題グラフに対して最適変分パラメータγ、βを予測してもよい。
【0097】
最後に、変分量子ソルバ20を用いて決定された結果に基づいて、最大カット問題の解を計算することができる。予測品質が良好でなかった場合(8)か、または、品質管理機構の一部として、古典方法を用いて問題を解くことができる(9)。最適解を見つけるか、または近似するための可能な古典方法のいくつかの例には、「qbsolv」または「ゴーマンズ-ウィリアムソン・アルゴリズム(Goemans-Williamson Algorithm)」がある。最終的には、変分量子ソルバ20を用い、かつ/または古典ソルバを用いて決定された解に基づいて、最大カット問題への解の割り当てが行われてもよい(10)。
【0098】
図8は、
図3および
図5~
図7に示した方法に用いられ得る2つのグラフ・ニューラル・ネットワークを訓練するための訓練セットを構築する例示的方法のフローチャートを示す。
【0099】
本方法は、組み合わせ最適化問題のセットから選択され得る、ランダム最大カット問題などの所与の組み合わせ最適化問題の(ランダムな)問題例を受信するステップ(1)を含む。問題例は、必要に応じて、古典ハードウェアに実装された適切なアルゴリズムを用いてQUBO形式に変換されてもよく(2)、問題例のグラフ表現は、例えば問題例の符号化によって得られてもよい(4)。
【0100】
並行して、問題例は、変分量子ソルバ20に提供され(3)、変分量子ソルバ20によって最適変分パラメータγ、β(5)と、問題例の最適解とを得るようにしてもよい。変分量子ソルバ20によって得られた最適解と、本当に最適な解または(古典アルゴリズムを用いて得られた)解の古典近似とに基づいて、得られた最適解の性能メトリックとして量子近似比が計算されてもよい(6)。
【0101】
QUBO問題例のグラフ表現(4)と、変分量子ソルバ20によって得られた最適解に関する最適変分パラメータγ、β(5)とは、第1データベースに加えられてもよい(7)。QUBO問題例のグラフ表現(4)と、変分量子ソルバ20によって得られた最適解に関する近似比(6)とは、第2データベースに加えられてもよい(8)。
【0102】
ステップ(1)~(8)は、第1データベースおよび第2データベース内にそれぞれ第1訓練セットおよび第2訓練セットを構築するために複数回繰り返されてもよく、続いて、第1訓練セットおよび第2訓練セットは、QUBOグラフ問題26がグラフ・ニューラル・ネットワークへの入力として提供されたときに、グラフ・ニューラル・ネットワークの出力としての最適変分パラメータγ、βおよび近似比を予測するようグラフ・ニューラル・ネットワークを訓練するために用いられてもよい。
【0103】
図9(a)~
図9(c)は、いくつかの例による、QAOAアルゴリズムを実装する変分量子ソルバ20の性能メトリックおよび最適パラメータを予測するための本発明者らによって得られた結果を示す。8つのノードを含むグラフ(約11,000個のグラフ)から主に構成される2~8つのノードを含むグラフ(約12,000個のグラフ)を含む訓練データセットに基づいて、2つのグラフ・ニューラル・ネットワークを訓練した。9つのノードを含む問題グラフ(約260,000個のグラフ)を有するテスト・データセットを用いて、結果の有効性を確認した。ノード重みおよびエッジ重みは、すべてのグラフにおいて等しかった。
【0104】
結果は、異なる3つのアルゴリズムについて提示しており、「p」は、QAOA回路の深さ、すなわち、層24a~24cの数と、関連する変分パラメータγ、βの対とを示す。
【0105】
図9(a)は、QAOAアルゴリズムを実装する変分量子ソルバ20を用いてそれぞれの問題を解く場合の解の品質(性能メトリック)を予測するために用いられたグラフ同型ネットワークの訓練統計を示す。量子近似誤差の二乗平均平方根誤差は、学習率が0.0001の1000エポックについて、エポック数に対してプロットされている。観察されるように、3つのケースすべてにおいて、誤差は、最初の200エポック以内に急速に減少し、その後、鈍化している。
【0106】
図9(b)は、それぞれの問題を解くためのQAOAアルゴリズムの最適変分パラメータγ、βを予測するために用いられたグラフ同型ネットワークの訓練統計を示す。最適パラメータの二乗平均平方根誤差は、学習率が0.0001の1000エポックについて、エポック数に対してプロットされている。
【0107】
図9(c)は、
図9(b)と同じグラフ同型ネットワークの平均コスト・デルタと、その標準偏差とを1000訓練エポックにわたってプロットしている。コスト・デルタは、QAOAにおける特定のグラフについての、予測パラメータから得られたコストと、最適パラメータから得られたコストとの差として定義される。この統計は、複数の訓練グラフにわたって平均化され、すべてのエポックにおいて、標準偏差を示す領域が色付されている。観察されるように、平均コスト・デルタと、その標準偏差の両方が、時間と共に減少している。これは、グラフ同型ネットワークが、良質の解を生み出す変分パラメータγ、βの予測を次第に学習していると理解することができる。
【0108】
図10A、
図10Bは、等しい重みのエッジによって相互接続された9つのノードを含む2つの例示的グラフを示す。2つの例示的グラフは、
図7のフローチャートに示した方法が適用されたテスト・データセットから選択されたランダムグラフである。両方のグラフについて、対応する最大カット問題を解くための量子近似比は、変分量子ソルバ20によって得ることができる最適解を決定するためのQAOAベース変分量子ソルバ20を古典ハードウェア上でシミュレートすることによって、および、古典アルゴリズムを用いて問題を正確に解くことによって、それらから量子近似比を計算することにより決定した(「実際の性能」)。さらに、変分量子ソルバ20によって得ることができる最適解に関する最適変分パラメータを記録した(「実際の最適パラメータ」)。
【0109】
加えて、グラフの各々について、量子近似比(「予測性能」)および最適変分パラメータ(「予測最適パラメータ」)を予測するための最大8つのノードを有するグラフを含む訓練データセットに対して訓練された2つのグラフ・ニューラル・ネットワークの予測出力を記録した。
【0110】
表1および表2は、QAOAアルゴリズムの異なる3つの回路深さpについて、シミュレートされた変分量子ソルバ20の記録された結果と、それぞれ
図10Aおよび
図10bに示されたグラフに対するグラフ・ニューラル・ネットワークの予測出力とを示し、追加の参考として、予測最適パラメータと実際の最適パラメータについてシミュレートされた変分量子ソルバ20の出力を用いたコスト関数が提供されている。
【0111】
【0112】
【0113】
上記結果に基づいて、グラフ・ニューラル・ネットワークは、変分量子ソルバ20によって解く場合、それぞれのQAOA問題に対する近似比を予測できることが分かる。さらに、第2グラフ・ニューラル・ネットワークも、最適変分パラメータγ、βを正確に予測することができ、その結果、予測変分パラメータγ、βを用いる解のコストは、実際の最適変分パラメータγ、βを用いるコストに近い。
【0114】
グラフ・ニューラル・ネットワークは、
図10A、
図10Bのグラフよりも小さいグラフで訓練されたものであり、グラフ・ニューラル・ネットワークは、訓練セットよりも複雑な問題に対する性能と最適パラメータとを予測するために用いられてもよく、また、古典解を見つけるのが難しい問題に用いられてもよいことが示されていることにも留意されたい。
【0115】
前述の説明では、グラフ・ニューラル・ネットワークは、厳密解を用いた近似比に基づいて訓練した。しかしながら、当業者であれば、より大きいグラフに対して、厳密解を決定することは計算上コストが高くなり得ることを理解するであろう。したがって、性能メトリックも、量子解と、それぞれのQUBO問題の近似解であり得る古典解との比に基づいてもよく、または、変分量子ソルバ20による解の正規化コストなどの、古典解と無関係であり得る性能メトリックが用いられてもよい。
【0116】
さらに、多くの問題は、本方法を適用する前にQUBO問題に変換し得るため、本方法は、対応するQUBO問題として再公式化できるか、または対応するQUBO問題によって近似化できる他の問題にも適用され得ることに留意されたい。
【0117】
好ましい実施の形態および図面の説明は、本発明およびそれに関連する有益な効果を説明するのに役立つにすぎず、限定を暗示するものと理解されるべきではない。本発明の範囲は、添付の特許請求の範囲によってのみ決定されるべきである。
【符号の説明】
【0118】
10 システム
12 量子ビットレジスタ
14 複数の量子ゲート
16 測定センサ
18 コントローラ
20 変分量子ソルバ
22 変分量子ネットワーク
23 量子デバイス
24a~24c 量子ゲートの層
26 問題グラフ
28 候補解
30 古典計算システム
32 コスト計算モジュール
34 パラメータ更新モジュール
【外国語明細書】