IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電気株式会社の特許一覧

<>
  • 特許-演算装置、演算方法およびプログラム 図1
  • 特許-演算装置、演算方法およびプログラム 図2
  • 特許-演算装置、演算方法およびプログラム 図3
  • 特許-演算装置、演算方法およびプログラム 図4
  • 特許-演算装置、演算方法およびプログラム 図5
  • 特許-演算装置、演算方法およびプログラム 図6
  • 特許-演算装置、演算方法およびプログラム 図7
  • 特許-演算装置、演算方法およびプログラム 図8
  • 特許-演算装置、演算方法およびプログラム 図9
  • 特許-演算装置、演算方法およびプログラム 図10
  • 特許-演算装置、演算方法およびプログラム 図11
  • 特許-演算装置、演算方法およびプログラム 図12
  • 特許-演算装置、演算方法およびプログラム 図13
  • 特許-演算装置、演算方法およびプログラム 図14
  • 特許-演算装置、演算方法およびプログラム 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-02
(45)【発行日】2024-09-10
(54)【発明の名称】演算装置、演算方法およびプログラム
(51)【国際特許分類】
   G06N 99/00 20190101AFI20240903BHJP
   G06N 10/60 20220101ALI20240903BHJP
【FI】
G06N99/00 180
G06N10/60
【請求項の数】 8
(21)【出願番号】P 2023525186
(86)(22)【出願日】2021-05-31
(86)【国際出願番号】 JP2021020729
(87)【国際公開番号】W WO2022254544
(87)【国際公開日】2022-12-08
【審査請求日】2023-11-10
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成30年度、国立研究開発法人新エネルギー・産業技術総合開発機構「高効率・高速処理を可能とするAIチップ・次世代コンピューティングの技術開発/次世代コンピューティング技術の開発」委託研究、産業技術力強化法第17条の適用を受ける特許出願
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100149548
【弁理士】
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100181135
【弁理士】
【氏名又は名称】橋本 隆史
(72)【発明者】
【氏名】須佐 友紀
【審査官】山本 俊介
(56)【参考文献】
【文献】特開2017-73106(JP,A)
【文献】NIGG, Simon E. et al.,"Robust quantum optimizer with full connectivity",Science Advances,Vol.3, No.4,[online], American Association for the Advancement,2017年04月04日,Pages 1-7,[retrieved on 2021.07.08], Retrieved from the Internet: <URL: https://advances.sciencemag.org/content/3/4/e1602273.short>.,ISSN: 2375-2548, <DOI: 10.1126/sciadv.1602273>
(58)【調査した分野】(Int.Cl.,DB名)
G06N 99/00
G06N 10/60
(57)【特許請求の範囲】
【請求項1】
制御パラメータ値の変化に応じて、量子状態を、一つの量子状態から、前記一つの量子状態とは異なる二つの量子状態の何れか、またはこれら二つの量子状態の組合せ状態に変化させる複数の量子非線形発振器と、
組合せ最適化問題に応じた結合強度で前記量子非線形発振器同士を結合している第1結合器と、
前記第1結合器とは別に、前記量子非線形発振器同士を結合している第2結合器と、
時間経過に応じて、前記量子非線形発振器の前記制御パラメータ値と、前記第2結合器による前記量子非線形発振器同士の結合強度とを制御する制御手段と、
前記量子非線形発振器が示す前記量子状態を測定する測定器と、
を備える演算装置。
【請求項2】
前記量子非線形発振器は、前記一つの量子状態に初期設定される前記量子状態を、前記制御パラメータ値の変化に応じて断熱的に変化させて、前記組合せ最適化問題の計算終了時に、前記一つの量子状態とは異なる二つの量子状態の何れか、またはこれら二つの量子状態の組合せ状態にする、
請求項1に記載の演算装置。
【請求項3】
前記第1結合器は、前記組合せ最適化問題を表すイジング模型のハミルトニアンにおけるイジング変数間の結合強度に応じた結合強度で前記量子非線形発振器同士を結合している、
請求項1または請求項2に記載の演算装置。
【請求項4】
前記第2結合器は、前記量子非線形発振器が生成する区別可能な二つの量子状態のうち一方の量子状態から他方の量子状態への変換を表す演算子の反強磁性相互作用として前記量子非線形発振器同士を結合している、
請求項1から3の何れか一項に記載の演算装置。
【請求項5】
前記制御手段は、非疑似古典確率的な量子分岐現象を用いる量子アニーリングを実行するように、前記第2結合器による前記量子非線形発振器同士の結合強度を制御する、
請求項4に記載の演算装置。
【請求項6】
前記制御手段は、前記第2結合器による前記量子非線形発振器同士の結合の強度の、前記制御パラメータ値の変化における軌跡が一次相転移線と交わらないように、前記第2結合器による前記量子非線形発振器同士の結合の強度を制御する、
請求項1から5の何れか一項に記載の演算装置。
【請求項7】
制御パラメータ値の変化に応じて、量子状態を、一つの量子状態から、前記一つの量子状態とは異なる二つの量子状態の何れか、またはこれら二つの量子状態の組合せ状態に変化させる量子非線形発振器同士が、第1結合器によって、組合せ最適化問題に応じた結合強度で結合されており、前記量子非線形発振器同士が、前記第1結合器とは別の第2結合器によってさらに結合されている演算装置を制御するコンピュータが、
時間経過に応じて、前記量子非線形発振器の前記制御パラメータ値と、前記第2結合器による前記量子非線形発振器同士の結合強度とを制御し、
前記量子非線形発振器が示す前記量子状態を測定する、
ことを含む演算方法。
【請求項8】
制御パラメータ値の変化に応じて、量子状態を、一つの量子状態から、前記一つの量子状態とは異なる二つの量子状態の何れか、またはこれら二つの量子状態の組合せ状態に変化させる量子非線形発振器同士が、第1結合器によって、組合せ最適化問題に応じた結合強度で結合されており、前記量子非線形発振器同士が、前記第1結合器とは別の第2結合器によってさらに結合されている演算装置を制御するコンピュータに、
時間経過に応じて、前記量子非線形発振器の前記制御パラメータ値と、前記第2結合器による前記量子非線形発振器同士の結合強度とを制御することと、
前記量子非線形発振器が示す前記量子状態を測定することと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、演算装置、演算方法およびプログラムに関する。
【背景技術】
【0002】
組合せ最適化問題を解く方法の1つとして、量子力学的な現象を利用する量子アニーリングが提案されている。
例えば、特許文献1には、カー・パラメトリック発振器(Kerr Parametric Oscillator)を量子非線形発振器として用いて量子アニーリングを実行する量子計算装置が記載されている。
【先行技術文献】
【特許文献】
【0003】
【文献】日本国特開2017-73106号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
量子アニーリングによって組合せ最適化問題の解を求める際、量子アニーリングの実行時間がなるべく短いことが好ましい。
【0005】
本発明の目的の一例は、上述した課題を解決することのできる演算装置、演算方法およびプログラムを提供することである。
【課題を解決するための手段】
【0006】
本発明の第一の態様によれば、演算装置は、制御パラメータ値の変化に応じて、量子状態を、一つの量子状態から、前記一つの量子状態とは異なる二つの量子状態の何れか、またはこれら二つの量子状態の組合せ状態に変化させる複数の量子非線形発振器と、組合せ最適化問題に応じた結合強度で前記量子非線形発振器同士を結合している第1結合器と、前記第1結合器とは別に、前記量子非線形発振器同士を結合している第2結合器と、時間経過に応じて、前記量子非線形発振器の前記制御パラメータ値と、前記第2結合器による前記量子非線形発振器同士の結合強度とを制御する制御手段と、前記量子非線形発振器が示す前記量子状態を測定する測定器と、を備える。
【0007】
本発明の第二の態様によれば、演算方法は、制御パラメータ値の変化に応じて、量子状態を、一つの量子状態から、前記一つの量子状態とは異なる二つの量子状態の何れか、またはこれら二つの量子状態の組合せ状態に変化させる量子非線形発振器同士が、第1結合器によって、組合せ最適化問題に応じた結合強度で結合されており、前記量子非線形発振器同士が、前記第1結合器とは別の第2結合器によってさらに結合されている演算装置を制御するコンピュータが、時間経過に応じて、前記量子非線形発振器の前記制御パラメータ値と、前記第2結合器による前記量子非線形発振器同士の結合強度とを制御し、前記量子非線形発振器が示す前記量子状態を測定する、ことを含む。
【0008】
本発明の第三の態様によれば、プログラムは、制御パラメータ値の変化に応じて、量子状態を、一つの量子状態から、前記一つの量子状態とは異なる二つの量子状態の何れか、またはこれら二つの量子状態の組合せ状態に変化させる量子非線形発振器同士が、第1結合器によって、組合せ最適化問題に応じた結合強度で結合されており、前記量子非線形発振器同士が、前記第1結合器とは別の第2結合器によってさらに結合されている演算装置を制御するコンピュータに、時間経過に応じて、前記量子非線形発振器の前記制御パラメータ値と、前記第2結合器による前記量子非線形発振器同士の結合強度とを制御することと、前記量子非線形発振器が示す前記量子状態を測定することと、を実行させるためのプログラムである。
【発明の効果】
【0009】
本発明によれば、量子アニーリングの実行時間の短縮を図ることができる。
【図面の簡単な説明】
【0010】
図1】実施形態に係る演算装置の構成例を示す図である。
図2】実施形態に係る量子状態の時間発展の第1例を示す図である。
図3】実施形態に係る量子状態の時間発展の第2例を示す図である。
図4】実施形態に係る量子状態の時間発展の第3例を示す図である。
図5】実施形態に係る関数A(s)の例を示す図である。
図6】実施形態に係る関数B(s)の例を示す図である。
図7】実施形態に係る制御パラメータsの値と磁化mの値との関係の第1例を示す図である。
図8】実施形態に係る制御パラメータsの値と磁化mの値との関係の第2例を示す図である。
図9】実施形態に係る制御パラメータsの値と磁化mの値との関係の第3例を示す図である。
図10】実施形態に係る第2結合器による結合の強度と磁化mの不連続変化幅との関係の例を示す図である。
図11】実施形態に係る式(15)による磁化mの計算結果に基づいて図示された相図である。
図12】実施形態に係る演算装置100を用いて組合せ最適化問題を解く場合の処理手順の例を示すフローチャートである。
図13】実施形態に係る演算装置の構成の第2例を示す図である。
図14】実施形態に係る演算方法における処理手順の例を示す図である。
図15】少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
【発明を実施するための形態】
【0011】
以下、本発明の実施形態を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組合せの全てが発明の解決手段に必須であるとは限らない。
【0012】
図1は、実施形態に係る演算装置の構成例を示す図である。図1に示す構成で、演算装置100は、量子非線形発振器101と、第1結合器102と、第2結合器103と、制御部104と、測定器105とを備える。
【0013】
演算装置100は、量子アニーリングを実行する。量子アニーリングを単にアニーリングとも称する。
量子アニーリングとは、量子力学的な現象を利用して組合せ問題を解く方法である。組合せ問題とは、多数の変数を持つ評価関数(目的関数)の値を最大、最小にする、あるいは、問題を解く動作を終了する判定条件を満たす場合の変数値の組を探索するという問題である。変数の個数が大きくなると、組合せのパターンが指数関数的に増大するため、解の探索が非常に困難になることが知られている。以降、説明の便宜上、組み合わせ問題を「最適化問題」と表し、組み合わせ問題の解を、「最適解」と表す。また、最適化問題は、評価関数の値を最小化する場合の変数値の組を探索する問題であるとする。
【0014】
量子アニーリングにおいては、量子状態を表す変数の関数であるイジング模型(Ising Model)のハミルトニアンで評価関数を表現することで、組合せ最適化問題の最適解がイジング模型の基底状態として求められる。イジング模型の基底状態は、エネルギーが最小になる状態を表す。すなわち量子アニーリングでは、イジング模型の基底状態を探索する。
【0015】
イジング模型において量子状態を表す変数はイジング変数とも呼ばれる。
イジング模型は、ハミルトニアンが以下の式(1)で表される模型である。
【0016】
【数1】
【0017】
σ、σは、何れも+1または-1の値をとるイジング変数である。さらに、量子アニーリングの実行方式によっては、イジング変数は初期値0をとり得る。演算装置100が、式(1)で示されるハミルトニアンを評価関数として用いて量子アニーリングを実行する場合も、イジング変数σ、σは、何れも初期値0をとる。
【0018】
式(1)においてi、jはイジング変数のインデックスである。インデックスi、jはイジング変数を識別する。式(1)の右辺第一項であるΣi=1 (hσ)のhは局所バイアスであり、実数値をとる。式(1)の右辺第二項であるΣi<j(Jijσσ)のJijは、σとσとの相関の強さを表す結合定数であり、実数値をとる。Jijが正の値をとる場合、Jijの大きさ(絶対値|Jij|)が大きいほど正の相関が強いことを示す。Jijが負の値をとる場合、Jijの大きさが大きいほど負の相関が強いことを示す。
【0019】
組合せ最適化問題をイジング模型に変換することは、式(1)においてhとJijとを設定することに対応する。量子アニーリングで、式(1)に示すイジング模型のハミルトニアンを評価関数として、評価関数の値を最小にするイジング変数の±1の組合せを探索するようにしてもよい。Nは組合せ最適化問題の問題サイズを表す正の整数である。式(1)は、N個のイジング変数σからσまでを含む。
【0020】
式(1)で示される評価関数は、高々二つのイジング変数が相関する場合の組合せ最適化問題を表現している。ただし、組合せ最適化問題に用いられるイジング変数の個数は一つ以上であればよく、特定の個数に限定されない。組合せ最適化問題によっては三つのイジング変数が相関する場合もあり、その場合はσσσのように三つのイジング変数の積で表される項が式(1)に加わる。四つ以上のイジング変数が相関するような組合せ最適化問題の場合も同様で、相関するイジング変数の積の項が式(1)に加わることとなる。
【0021】
量子アニーリングの実行方式として、量子揺らぎを用いる方式と、量子力学的な分岐現象を用いる方式とが提案されており、これらは原理的に異なる方式である。
量子揺らぎを用いる量子アニーリングでは、量子揺らぎの強度を制御パラメータとする。最初に全量子ビットに量子揺らぎを強く印加して重ね合わせ状態を実現する。次に、量子揺らぎの強度を減少させる過程で、組合せ最適化問題に基づいて定められる量子ビット間の相互作用を強くする。そして、量子揺らぎの強度が0になった時点での量子ビットの量子状態からイジング変数の値を読み出すことにより組合せ最適化問題の解が得られる。
【0022】
演算装置100は、量子力学的な分岐現象を用いる量子アニーリングを実行する。
量子力学的な分岐現象を用いる量子アニーリングでは、量子非線形発振器を用いる。また、量子力学的な分岐現象を用いる量子アニーリングでは、時間に対応する無次元の制御パラメータを用いることができる。
【0023】
量子非線形発振器では、制御パラメータ値の変化に応じて量子状態が断熱的に変化する。具体的には、量子非線形発振器は、初期状態として設定される一つの量子状態を分岐させて区別可能な二つの量子状態の重ね合わせ状態を作ることが可能である。分岐後の区別可能な二つの量子状態の各々はイジング変数の値と対応させることができる。
【0024】
ここでいう断熱的に変化することは、外界からの干渉が無い状態で準静的に変化することであってもよい。
制御パラメータ値の変化に応じて量子状態を断熱的に変化させることを、制御パラメータを断熱的に制御するとも称する。
【0025】
量子力学的な分岐現象を用いる量子アニーリングでは、組合せ最適化問題に基づいて定められる強度で量子非線形発振器同士を結合しておく。そして、制御パラメータ値を変化させて量子非線形発振器における量子状態を二つの量子状態のうち何れかに分岐させることで、組合せ最適化問題の解を得られる。
【0026】
例えば、演算装置100が組合せ最適化問題を解く場合、第1結合器102が、複数ある量子非線形発振器101同士を、組合せ最適化問題に基づいて定められる強度で結合している。なお、第2結合器103は、第1結合器102とは別に、一次相転移を解消または軽減するために、複数ある量子非線形発振器101同士を結合している。
【0027】
そして、制御部104が制御パラメータを制御する。制御パラメータ値の変化に応じて、各量子非線形発振器101の量子状態は区別可能な二つの量子状態のうちのいずれかの状態に変化する。測定器105が、各量子非線形発振器101の量子状態を測定することで、各状態に対応するイジング変数の値で示される組合せ最適化問題の解が得られる。
【0028】
制御部104は、制御手段の例に該当する。
制御部104の構成は、特定のものに限定されない。例えば、制御部104が、コンピュータを用いて構成されていてもよい。あるいは、制御部104が、ASIC(Application Specific Integrated Circuit)またはFPGA(Field Programmable Gate Array)などプログラミング可能なハードウェアを用いて構成されていてもよい。
【0029】
量子揺らぎを用いる方式、および、量子力学的な分岐現象を用いる方式のいずれにおいても、量子アニーリングにより組合せ最適化問題の最適解を得るためには、一般的にアニーリングを完了するまでの時間を断熱的な制御が可能な程度に長く確保する必要があることが知られている。
【0030】
アニーリングに必要な時間は、量子断熱定理により見積もることができる。組合せ最適化問題の中には量子アニーリングでも解くのに非常に長い時間を要する困難な問題がある。例えば量子アニーリングの過程中に一次相転移が起きるような最適化問題では、最適解を得るのに必要な量子アニーリング時間が問題サイズに応じて指数関数的に増大してしまうことが知られている。
【0031】
量子力学的な分岐現象を用いる量子アニーリングでは、制御パラメータを断熱的に制御することで量子非線形発振器がイジング変数の±1にそれぞれ対応する区別可能な二つの量子状態のいずれかを生成する。
ここでいう状態を生成することは、状態を何らかの状態にすることであってもよい。例えば、状態を生成することは、状態を元の状態とは異なる状態に変化させることであってもよい。あるいは、状態を生成することは、状態を元の状態と同じ状態、または、元の状態とは異なる状態に変化させることであってもよい。
【0032】
ここでいう二つの量子状態が区別可能であることは、量子状態を測定した場合に、二つの量子状態の何れかが測定結果として得られ、二つの量子状態の重ね合わせ状態は測定結果として得られないことである。一方、区別可能な二つの量子状態を生成することは、量子状態を、これら二つの量子状態の何れか、または、二つの量子状態の重ね合わせ状態にすることであってもよい。量子状態が二つの量子状態の重ね合わせ状態になっている場合でも、二つの量子状態の何れかが量子状態の測定結果として得られ、二つの量子状態の重ね合わせ状態は量子状態の測定結果としては得られない。
【0033】
量子力学的な分岐現象を用いる量子アニーリングでは、演算装置は、各量子非線形発振器が生成した量子状態を読み取り、対応するイジング変数の値を評価関数に入力して組合せ最適化問題の解の探索を行う。評価関数として、例えば上記の式(1)で表されるイジング模型のハミルトニアンなどを用いることができる。
【0034】
以下では、スピン行列を用いて表現される発振器を量子非線形発振器として用いる場合を例に、量子力学的な分岐現象を用いる量子アニーリングの説明を行う。
ただし、量子非線形発振器101は、スピン行列を用いて表現される発振器に限定されず、量子力学的な分岐現象を示すいろいろな量子非線形発振器とすることができる。例えば、量子非線形発振器101としてカー・パラメトリック発振器を用いるようにしてもよい。
【0035】
単独の量子非線形発振器が生成する量子状態は、例えば次の式(2)に示されるハミルトニアンH(s)に従って、制御パラメータsの値毎の瞬間基底状態(Instantaneous Ground State)として与えられる。
【0036】
【数2】
【0037】
式(2)に示されるハミルトニアンH(s)は、量子非線形発振器の動作を表現するためのものである。式(2)に示されるハミルトニアンH(s)は、式(1)に示される組合せ最適化問題を表現するためのハミルトニアンHIsingとは異なる。
スピン数が1のスピン行列演算子のx方向成分Sは、式(3)のように表される。
【0038】
【数3】
【0039】
スピン数が1のスピン行列演算子のz方向成分Sは、式(4)のように表される。
【0040】
【数4】
【0041】
sは量子非線形発振器の制御パラメータであり、時間について連続増加関数である。アニーリング開始時はs=0であり、アニーリングの完了時はs=1である。
A(s)はsについて連続な関数であり、0≦s≦1の範囲の任意のsに対して非負のスカラ値を出力する。
【0042】
B(s)はsについて連続な関数であり、s=0で負のスカラ値を出力し、s=1で正のスカラ値を出力する。s=0およびs=1の何れでも、|B(s)|は|A(s)|より十分大きな値をとるものとする。例えば、s=0およびs=1の何れでも|B(s)|が|A(s)|の10倍程度の値をとるようになっていてもよい。
B(s)=0となるsの値は一意であるとする。B(s)=0となるsにおいて、A(s)は0より十分大きな値をとるものとする。
【0043】
A(s)は、上記の条件を満たすいろいろな関数とすることができる。例えば、A(s)が定数関数、ガウス関数、sの[0,1]の区間を半周期とする三角関数(Trigonometric Function)、または、三角形関数(Triangular Function)であってもよいが、これらに限定されない。
【0044】
B(s)は、上記の条件を満たすいろいろな関数とすることができる。例えば、B(s)が線形関数、二次関数、双曲線正接関数(Hyperbolic Tangent Function)、誤差関数(Error Function)、または、ソフトサイン関数(Softsign Function)であってもよいが、これらに限定されない。
【0045】
A(s)が、量子非線形発振器毎に異なる関数となっていてもよい。B(s)も、量子非線形発振器毎に異なる関数となっていてもよい。以下では、説明の便宜上、A(s)として全ての量子非線形発振器に同じ関数が用いられているものとする。B(s)についても全ての量子非線形発振器に同じ関数が用いられているものとする。
【0046】
式(2)において、制御パラメータsを0から1に連続的に増加するように断熱的に制御することで、量子非線形発振器はs=0での初期量子状態とは異なる区別できる二つの量子状態を生成する。
式(2)において、右辺第三項「-hS」のhは局所バイアスを表す定数である。
【0047】
図2は、量子状態の時間発展の第1例を示す図である。図2は、式(2)において制御パラメータsの値が0から1に連続的に増加することに応じて、量子非線形発振器が初期量子状態「|0>」からイジング変数の+1に対応する量子状態「|+1>」またはイジング変数の-1に対応する量子状態「|-1>」を生成する様子の第1例を示す。図2のグラフの横軸は制御パラメータsの値を表し、縦軸はsの値に応じて、量子状態「|0>」、量子状態「|+1>」および量子状態「|-1>」のそれぞれが測定される確率を表している。
【0048】
線L111は、量子状態「|0>」が測定される確率を表す。線L112は、量子状態「|+1>」が測定される確率を表す。線L113は、量子状態「|-1>」が測定される確率を表す。図2では、線L112と線L113とが重なっている。
アニーリング完了時に生成される量子状態は式(2)における第三項のhの値に依存する。図2は、h=0の場合の例を示している。
【0049】
量子非線形発振器が生成可能な三つの量子状態である「|0>」、「|+1>」および「|-1>」は、いずれも式(4)の行列演算子S で表される固有状態であり、それぞれ0、+1、-1を固有値とする。
【0050】
図2の例で、s=1.0となるアニーリング完了時には、量子状態「|+1>」と量子状態「|-1>」とが何れも確率0.5で測定される。このことは、二つの量子状態(|+1>、|-1>)の重ね合わせ状態が生成されることを示している。このように、hが0の場合は二つの量子状態(|+1>、|-1>)の重ね合わせ状態がアニーリング完了時に生成される。
図2の例で、s=0.5付近で、初期の量子状態「|0>」が測定される確率が小さくなり、量子状態「|+1>」が測定される確率及び量子状態「|-1>」が測定される確率が大きくなっている。これにより、量子分岐現象が起きていることが示されている。
【0051】
図3は、量子状態の時間発展の第2例を示す図である。図3は、式(2)において制御パラメータsの値が0から1に連続的に増加することに応じて、量子非線形発振器が初期量子状態「|0>」からイジング変数の+1に対応する量子状態「|+1>」またはイジング変数の-1に対応する量子状態「|-1>」を生成する様子の第2例を示す。図3のグラフの横軸は制御パラメータsの値を表し、縦軸はsの値に応じて、量子状態のうち「|0>」、「|+1>」および「|-1>」のそれぞれが測定される確率を表している。
【0052】
線L121は、量子状態「|0>」が測定される確率を表す。線L122は、量子状態「|+1>」が測定される確率を表す。線L123は、量子状態「|-1>」が測定される確率を表す。
図3は、h=1の場合の例を示している。図3の例で、s=1.0となるアニーリング完了時には、量子状態「|+1>」のみが測定されるようになる。このように、hが正の値の場合は量子状態「|+1>」のみがアニーリング完了時に測定されるようになる。
【0053】
図4は、量子状態の時間発展の第3例を示す図である。図4は、式(2)において制御パラメータsの値が0から1に連続的に増加することに応じて、量子非線形発振器が初期量子状態「|0>」からイジング変数の+1に対応する量子状態「|+1>」またはイジング変数の-1に対応する量子状態「|-1>」を生成する様子の第3例を示す。図4のグラフの横軸は制御パラメータsの値を表し、縦軸はsの値に応じて、量子状態「|0>」、量子状態「|+1>」および量子状態「|-1>」のそれぞれが測定される確率を表している。
【0054】
線L131は、量子状態「|0>」が測定される確率を表す。線L132は、量子状態「|+1>」が測定される確率を表す。線L133は、量子状態「|-1>」が測定される確率を表す。
図4は、h=-1の場合の例を示している。図4の例で、s=1.0となるアニーリング完了時には、量子状態「|-1>」のみが測定されるようになる。このように、hが負の値の場合は、量子状態「|-1>」のみがアニーリング完了時に測定されるようになる。
【0055】
図5は、関数A(s)の例を示す図である。図5は、関数A(s)としてガウス関数を用いる場合の例を示している。図2から図4までの例では、式(2)におけるA(s)は図5に示すようなガウス関数としている。
ただし、関数A(s)は、ガウス関数に限定されない。上述したように、関数A(s)として、sを引数として非負のスカラ値を出力する関数を用いることができる。
【0056】
図6は、関数B(s)の例を示す図である。図6は、関数B(s)として線形関数を用いる場合の例を示している。図2から図4の例では、式(2)におけるB(s)は図6に示すような線形関数としている。
ただし、関数B(s)は、線形関数に限定されない。上述したように、関数B(s)として、s=0で負のスカラ値を出力し、s=1で正のスカラ値を出力し、かつ、s=1では、B(s)がA(s)より大きな値をとる関数を用いることができる。
【0057】
互いに相互作用しているN個の量子非線形発振器が生成する量子状態は、例えば次の式(5)に示されるハミルトニアンHに従って、制御パラメータsの値毎の瞬間基底状態として与えられる。
【0058】
【数5】
【0059】
式(5)においてi、jは量子非線形発振器のインデックスである。インデックスi、jは、量子非線形発振器を識別する。式(5)の右辺第一項の「-A(s)S 」および第二項の「-B(s)(S 」は、式(2)における右辺第一項の「-A(s)S」および第二項の「-B(s)(S」にそれぞれ対応している。式(5)の右辺第三項のhは局所バイアスを表す。式(5)の「-A(s)S-B(s)(S-h 」は、個々の量子非線形発振器の量子状態を表す。
【0060】
式(5)の右辺第四項のJijは二つの量子非線形発振器同士の結合強度を表す。式(5)の「Jij 」は、量子非線形発振器間の相互作用を表す。
式(5)のhおよびJijは式(1)に示されているhおよびJijと同様である。hの値およびJijの値は、何れも組合せ最適化問題に応じて設定される。
【0061】
式(5)に示すハミルトニアンにおいて、制御パラメータsを0とすると、各量子非線形発振器は初期量子状態である「|0>」を生成する。制御パラメータsを0から1に連続的に増加するように断熱的に制御することで、各量子非線形発振器は時々刻々と変化する式(5)のハミルトニアンにおける瞬間基底状態を生成する。s=1では各量子非線形発振器は式(1)に示す評価関数の値を最小にするようなイジング変数の値の組合せに対応する量子状態(「|+1>」もしくは「|-1>」)をそれぞれ生成する。そして、各量子非線形発振器が生成した量子状態を測定することで、評価関数の値を最小にするイジング変数の値の組合せを得る。
【0062】
式(5)は、二つの量子非線形発振器が結合している場合のハミルトニアンを示している。三つのイジング変数が相関する組合せ最適化問題を解く場合は、ハミルトニアンにS のように三つのスピン行列の積で表される項を式(5)に加えて、三つの量子非線形発振器を結合させることで組合せを求めることが可能である。四つ以上のイジング変数が相関する組合せ最適化問題の場合も同様で、相関するイジング変数の個数分のスピン行列の積の項を式(5)に加えて、相関するイジング変数の個数分の量子非線形発振器を結合させることで組合せを求めることが可能である。
【0063】
式(5)に示すハミルトニアンにおいて量子系のエネルギー準位を時系列順に追いかけた場合、基底状態と励起状態のエネルギー準位が最も接近する瞬間がある。この瞬間の基底状態と励起状態のエネルギー差を最小エネルギーギャップと称することがある。量子アニーリングで最適解を得るのに必要な時間、すなわち、制御パラメータの値を0から1に変化させるのにかけるべき時間をTとし、最小エネルギーギャップをΔとすると、式(6)が成立することが知られている。
【0064】
【数6】
【0065】
式(6)は、量子アニーリングで最適解を得るのに必要な時間Tが、最小エネルギーギャップΔの2乗の逆数に比例することを示している。式(6)によると最小エネルギーギャップが小さいほど量子アニーリングに必要な時間が増大する。換言すると、量子アニーリング時間Tを固定した場合、最小エネルギーギャップが小さい程、最適解を得られる確率も小さくなる。
【0066】
アニーリング中に一次相転移現象が起こるような組合せ最適化問題の場合は、一般的に最小エネルギーギャップは問題のサイズが大きくなるにつれて指数関数的に減少することが知られている。すなわち、アニーリング中に一次相転移現象が起こるような組合せ最適化問題の場合は量子アニーリングで最適解を得るのに必要な時間Tは指数関数的に増大する。
【0067】
また、二次相転移現象が起こるような組合せ最適化問題の場合は、最小エネルギーギャップが問題のサイズが大きくなるにつれて冪関数的に減少することが知られている。従って、二次相転移現象が起こるような組合せ最適化問題の場合は、量子アニーリングで最適解を得るのに必要な時間Tは冪関数的に増大する。
【0068】
最適解を得るのに必要な時間は問題のサイズが大きくなるにつれて指数関数的に増大する組合せ最適化問題より、冪関数的に増大する組合せ最適化問題の方が最適解の探索は容易である。特に、一次相転移現象が起こるような組合せ最適化問題よりも、二次相転移現象が起こるような組合せ最適化問題のほうが、量子アニーリングで最適解を得るのに必要な時間Tが短くて済むと期待される。
【0069】
上記のように、量子力学的な分岐現象を用いる量子アニーリングでは、量子非線形発振器が生成する量子状態からイジング模型のハミルトニアンで記述される評価関数を最小にするイジング変数の値-1または1の組合せを求める。最小エネルギーギャップの大きさは組合せ最適化問題の難易度と関係する。組合せ最適化問題が難しいほど、最小エネルギーギャップは小さくなると考えておおよそ問題はない。さらに、一般論として、問題のサイズが大きくなるほど最小エネルギーギャップは小さくなることが知られている。また、アニーリング中に一次相転移現象が起こるような組合せ最適化問題の場合は量子アニーリングをもってしても解探索が困難な問題である。
【0070】
演算装置100の量子非線形発振器101の各々は、イジング模型における量子状態を時間発展させる。上記のように、量子非線形発振器101は、制御パラメータsの値の増加に応じて、量子状態「|0>」から、量子状態「|+1>」または量子状態「|-1>」、あるいは、量子状態「|+1>」と「|-1>」との重ね合わせ状態に変化させる。
量子非線形発振器101は、例えばカー・パラメトリック発振器など非線形性を有する既存の量子発振器を用いて構成することができる。
【0071】
複数の第1結合器102及び第2結合器103のそれぞれは、複数の量子非線形発振器101同士を結合強度可変に結合している。上記のように、第1結合器102は、量子非線形発振器101同士を、組合せ最適化問題に基づいて定められる強度で結合している。第2結合器103は、一次相転移を解消または軽減するために、量子非線形発振器101同士を結合している。
第1結合器102及び第2結合器103の何れも、量子アニーリングに用いられるプログラマブル結合器を用いて構成することができる。
【0072】
上記のように、演算装置100は量子力学的な分岐現象を用いる量子アニーリングによって組合せ最適化問題の最適解を求める装置である。組合せ最適化問題は式(1)に示すようなイジング模型で記述される評価関数に変換され、演算装置100は、基底状態を求めることにより最適解を求める。
【0073】
N個の各量子非線形発振器101は、式(7)のように示されるハミルトニアンHQNO(s)に従って動作する。
【0074】
【数7】
【0075】
式(7)におけるiは各量子非線形発振器101におけるインデックスである。インデックスiは、量子非線形発振器101を識別する。Nは組合せ最適化問題の問題サイズである。アニーリングに使用する量子非線形発振器101の個数はN個である。各量子非線形発振器101は、アニーリング完了時には区別できる二つの量子状態を生成することができる。
【0076】
式(7)の右辺「Σi=1 (-A(s)S -B(s)(S -h )」は、式(5)の右辺における「Σi=1 (-A(s)S -B(s)(S -h )」と同様である。
式(7)の右辺第一項のA(s)は非負のスカラ値を出力する関数である。A(s)は、例えば定数またはガウス関数でもあっても良いが、これらに限定されない。式(7)の右辺第二項のB(s)はs=0で負のスカラ値を出力し、s=1で正のスカラ値を出力する関数である。
式(7)の右辺第三項のhの値は、解きたい組合せ最適化問題に応じて設定される、量子非線形発振器101毎の局所バイアスの強度を示す。
【0077】
量子非線形発振器101同士は第1結合器102を介して結合することができる。第1結合器102による結合のハミルトニアンは式(8)のように表される。
【0078】
【数8】
【0079】
式(8)の右辺「-Σi<jij 」は、式(5)の右辺における「-Σi<jij 」と同様である。
ijは、解きたい組合せ最適化問題に応じて設定される、量子非線形発振器101同士の第1結合器102による結合の強度を表す。式(8)におけるi、jは量子非線形発振器101のインデックスである。インデックスi、jは、量子非線形発振器101を識別する。
【0080】
式(8)は、二つの量子非線形発振器101が第1結合器102を介して結合している場合のハミルトニアンを示している。三つのイジング変数が相関する組合せ最適化問題を解く場合は、ハミルトニアンにS のように三つのスピン行列の積で表される項を式(8)に加えて、三つの量子非線形発振器を結合させることで組合せを求めることが可能である。四つ以上のイジング変数が相関する組合せ最適化問題の場合も同様で、相関するイジング変数の個数分のスピン行列の積の項が式(8)に加えて、相関するイジング変数の個数分の量子非線形発振器101を結合させることで組合せを求めることが可能である。
【0081】
上記のように、量子非線形発振器101同士は第2結合器103を介して結合することができる。第2結合器103による結合のハミルトニアンは式(9)のように表される。
【0082】
【数9】
【0083】
式(9)におけるi、jは量子非線形発振器101のインデックスである。インデックスi、jは、量子非線形発振器101を識別する。X、Xは行列演算子である。式(9)では、「X」は、XとXとのテンソル積を表す。
C(s)はsを引数として非負の値をとる関数であり、量子非線形発振器101同士の第2結合器103による結合の強度を表す。C(s)が、(i,j)の組み合わせ毎に異なる関数となっていてもよい。以下では、説明の便宜上、C(s)が(i,j)の組み合わせによらず同じ関数であるものとする。
、Xは、何れも式(10)のXのように定義される。
【0084】
【数10】
【0085】
式(10)の「|+1><-1|」では、量子状態「|+1>」が列ベクトルで表され、量子状態「<-1|」が行ベクトルで表される。「|-1><+1|」では、量子状態「|-1>」が列ベクトルで表され、量子状態「<+1|」が行ベクトルで表される。ベクトルの積「|+1><-1|」、「|-1><+1|」のそれぞれが3行3列の行列を構成し、これらの行列を足し合わせて右辺の行列を得られる。「|+1><-1|」が、右辺の行列の左下の要素値「1」をもたらす。「|-1><+1|」が、右辺の行列の右上の要素値「1」をもたらす。
式(10)の行列演算子Xで表される操作を、量子非線形発振器101が生成する区別可能な二つの量子状態(|+1>、|-1>)に施すと、一方の量子状態から他方の状態へ変化する効果が得られる。
【0086】
第2結合器103による結合は、式(9)に示されるハミルトニアンのように、量子非線形発振器101が生成する区別可能な二つの量子状態のうち一方の量子状態から他方の量子状態への変換を表す演算子の反強磁性相互作用として記述することができる。
【0087】
上記のように、式(9)のハミルトニアンHint2(s)は、二つの量子非線形発振器101が第2結合器103を介して結合している場合のハミルトニアンである。三つの量子非線形発振器101を結合させる場合は、ハミルトニアンにXのように三つのスピン行列の積で表される項を式(9)に加える。四つ以上の量子非線形発振器101を結合させる場合も同様で、結合させる量子非線形発振器101の個数分の式(10)で示す行列の積の項を式(9)に加える。
【0088】
制御部104は、全ての量子非線形発振器101および全ての第2結合器103に入力する制御信号を生成する。制御部104が生成する制御信号は、少なくとも、式(7)におけるA(s)を制御するための第1の制御信号と、式(7)におけるB(s)を制御するための第2の制御信号と、式(9)におけるC(s)を制御するための第3の制御信号と、を含む。
【0089】
制御部104が、室温に置かれる半導体装置を用いて構成されていてもよい。あるいは、制御部104が、数mK(ミリケルビン)から数K程度の極低温に冷却された超伝導回路を用いて構成されていてもよい。
【0090】
測定器105は、各量子非線形発振器101における量子状態を測定する。測定器105として、量子状態を測定可能な既存の測定器を用いることができる。
測定器105が、室温に置かれた半導体装置を用いて構成されていてもよい。
あるいは、測定器105が、数mKから数K程度の極低温に冷却された超伝導回路を用いて構成されていてもよい。
制御部104が、測定器105を制御して量子状態を測定するようにしてもよい。
【0091】
上記のように、演算装置100は、複数の量子非線形発振器101からなる量子非線形発振器を備えている。演算装置100は、量子非線形発振器101を制御し、区別可能な二つの量子状態のいずれかを生成することができる。演算装置100は、複数の量子非線形発振器101が生成する量子状態の中から、基底状態を探索する。また、複数の量子非線形発振器101は第1結合器102および第2結合器103を介して結合されており、結合強度を変化させることができる。
【0092】
量子非線形発振器101は、例えば超伝導材料を用いた超伝導回路で実現される。超伝導回路で量子非線形発振器101を実現した場合においては、量子非線形発振器は数mK程度の極低温に冷却されて動作する。この場合、量子非線形発振器101は、例えば希釈冷凍機を用いて冷却される。
【0093】
演算装置100が実行する量子アニーリングの全ハミルトニアンは、式(7)から式(9)に示されるハミルトニアンHQNO(s)、Hint1およびHint2(s)の総和として、式(11)のハミルトニアンH(s)のように表される。
【0094】
【数11】
【0095】
演算装置100は、量子非線形発振器101が、制御パラメータsの値の増加に応じて、区別可能な二つの量子状態を生成する過程において、式(9)のC(s)で表される第2結合器103による結合の強度を調整することが出来る。特にC(s)>0とすることで式(11)のハミルトニアンに基づく量子アニーリングは非疑似古典確率的(non-stoquastic)になる。すなわち第2結合器103を介して量子非線形発振器101同士を結合することで、非疑似古典確率的な量子力学的な分岐現象を用いた量子アニーリングを実行することができる。
【0096】
演算装置100によれば、従来の量子力学的な分岐現象を利用した量子アニーリングでは一次相転移が起きるような組合せ最適化問題を解く場合に、非疑似古典確率的な量子アニーリングを実行することで一次相転移を回避し、量子アニーリング中の最小エネルギーギャップが大きくなるようにC(s)を調整することにより、必要な計算時間を短くすることができる。
【0097】
次に演算装置100の動作について説明する。制御部104は、量子アニーリングにおける時間経過に伴って制御パラメータsの値を0から1に増大させ、量子非線形発振器101が量子分岐現象を発現させるように第1の制御信号及び第2の制御信号を生成し、第2結合器103による結合の強度を調整するための第3の制御信号を生成する。
【0098】
そして、測定器105は、量子アニーリング終了時点における、各量子非線形発振器101が生成する量子状態を測定する。それにより、式(1)で表されるイジング模型の基底状態が、どのようなものであるかがわかる。言い換えれば、式(1)で表されるイジング模型にマッピングされた所定の組合せ最適化問題の解がどのようなものであるかが分かる。このようにして、所望の組合せ最適化問題の解を求めることが可能となる。
【0099】
次に、式(12)で表される理論モデルを用いて、p個のイジング変数が相関している組合せ最適化問題に対して本実施形態の効果の理論検証を行った結果について説明する。
【0100】
【数12】
【0101】
式(12)では右辺第三項の「N(1/NΣi=1 」が、p個のイジング変数が相関している組合せ最適化問題に応じて、p個の量子非線形発振器101が第1結合器102を介して結合していることを表している。右辺第四項は2個の量子非線形発振器101が第2結合器103を介して結合していることを表している。
【0102】
なお、式(12)のハミルトニアンH(s)で解く組合せ最適化問題の最適解は自明である。pが偶数の場合は、全ての量子非線形発振器101が同じ量子状態を生成している状態が最適解に相当する。pが奇数の場合は、全ての量子非線形発振器101が「|+1>」の量子状態を生成している状態が最適解に相当する。
【0103】
式(12)のハミルトニアンH(s)は、式(11)においてh=0として、「Σi<j(Jij )」を「N(1/NΣi=1 」に置き換え、「Σi<j」を「N(1/NΣi=1 」に置き換えたものである。「Σi<j」から「N(1/NΣi=1 」への置き換えは理論解析のためのものである。問題のサイズNが十分大きい場合は、「Σi<j」と「N(1/NΣi=1 」とは実質的に等価となる。
【0104】
式(12)のハミルトニアンにおいて、pが3以上の整数かつC(s)=0かつ問題のサイズNが十分大きい場合、アニーリング中に一次相転移が起こることが知られている。この場合、式(12)で表現される組合せ最適化問題は、量子アニーリングにとって困難な問題である。ここでいう困難とは、問題のサイズが大きくなると、最適解を得るのに必要な時間が指数関数的に増大することである。式(12)のpが無限大に近づく場合には、どのような工夫をしても困難さを解消することができないことが知られている。
【0105】
次に、式(12)のモデルを用いてアニーリング中に一次相転移が起きないようなC(s)の設定方法について理論的な面から説明を行う。
【0106】
式(12)のハミルトニアンにおいて局所バイアスと第1結合器102及び第2結合器103による結合に関して各量子非線形発振器101は対称的である。このため、式(12)のハミルトニアンにおける制御パラメータsの値毎の瞬間基底状態では、各量子非線形発振器101が生成する量子状態は全て同じ状態とすることができる。よって各量子非線形発振器101が瞬間基底状態として生成する量子状態をまとめて、式(13)で表されるようなテンソル積で記述することができる。
【0107】
【数13】
【0108】
「|Ψ>」は、各量子非線形発振器101における量子状態を纏めた状態を表す。式(12)において、iは各量子非線形発振器101におけるインデックスである。インデックスiは、量子非線形発振器101を識別する。「|0>」はi番目の量子非線形発振器101の初期量子状態を表す。「|+1>」と「|-1>」とは、アニーリング完了時にi番目の量子非線形発振器101が生成することが可能な、互いに区別可能な量子状態を表す。「|+1>」と「|-1>」とは、それぞれイジング変数の+1と-1に対応する。
【0109】
θ、φ、α、βの各々は、量子アニーリング中における各量子非線形発振器101が生成する量子状態における「|0>」、「|+1>」および「|-1>」が測定される確率を決定するパラメータである。θ、φ、α、βの何れも、制御パラメータsの値に応じて値が変化する。各量子非線形発振器101が生成する量子状態は瞬間基底状態では全て同じ状態であるため、θ、φ、α、βは全ての量子非線形発振器101において同じ値とする。
【0110】
式(13)において瞬間基底状態を与えるθ、φ、α、βは、式(14)で与えられる半古典ポテンシャルVを計算することで求めることができる。
【0111】
【数14】
【0112】
制御パラメータsの値毎に、式(14)で与えられる半古典ポテンシャルVを最小化するようなθ、φ、αおよびβの値を式(13)に入力することで、制御パラメータsの値毎の瞬間基底状態を計算することができる。理論解析においてはθ、φ、αおよびβの値は数値計算によって求めることができる。
【0113】
式(14)で与えられる半古典ポテンシャルVを最小化するようなθ、φ、αおよびβを用いることで、式(15)のように定義される磁化m(秩序変数とも呼ばれる)を制御パラメータsの値毎に計算することができる。
【0114】
【数15】
【0115】
式(15)で計算される磁化mは、量子非線形発振器101が生成している量子状態の平均的な状態を表す。磁化mによれば、瞬間基底状態の全体の平均的な様子を制御パラメータsの値毎に知ることができる。例えばm=0であれば量子非線形発振器101が生成する量子状態は平均的に「|0>」の状態もしくは「|+1>」と「|-1>」の重ね合わせ状態である。m=1であれば量子非線形発振器101が生成する量子状態は平均的に「|+1>」である。m=―1であれば量子非線形発振器101が生成する量子状態は平均的に「|-1>」である。
【0116】
磁化mは、磁性体の相転移における秩序変数として用いられる。ここでいう秩序変数は、相が持つ秩序を表すマクロな変数である。相転移の際、秩序変数の値が大きく変化する。
数値計算により求められた式(13)で与えられる半古典ポテンシャルVを最小化するようなθ、φ、αおよびβの値を式(15)に入力して制御パラメータsの値毎の磁化mを計算することで、アニーリング中に一次相転移が起きているか否かを知ることができる。
【0117】
式(12)のハミルトニアンにおける量子アニーリングでは、アニーリング開始時にはm=0であり、アニーリング完了時にはm=1となる。m=0からアニーリング完了時にm=1に変化するまでに、磁化mが不連続に変化することがあれば、一次相転移が起きていることが分かる。一方、m=0からm=1まで、mの値が終始連続的に変化していれば、二次相転移が起きていることがわかる。
【0118】
上述したように、量子アニーリングにおいて一次相転移が起きる組合せ最適化問題は、最適解を求めるのに指数関数的な時間が必要なことが知られている。一方で一次相転移が起きず二次相転移のみが起きる場合は、最適解を求めるのに冪関数的な時間が必要なことが知られている。
【0119】
図7は、制御パラメータsの値と磁化mの値との関係の第1例を示す図である。図7はp=5、C(s)=0としたときの、制御パラメータsに対する式(15)で計算される磁化mの様子を示している。図7のグラフの縦軸は磁化mを表し、横軸は制御パラメータsの0.3から0.7までの範囲を表す。
【0120】
図7の例で、s=0.5付近で磁化mの値が不連続に変化している。この場合の、磁化mの不連続な変化によって、一次相転移が起きていることが示されている。したがって、C(s)=0とした場合、すなわち第2結合器103を介して量子非線形発振器101同士が結合していない場合は最適解を求めるのに指数関数的な時間を要する。
【0121】
図8は、制御パラメータsの値と磁化mの値との関係の第2例を示す図である。図8はp=5、C(s)=2としたときの、制御パラメータsに対する式(15)で計算される磁化mの様子を示している。図8のグラフの縦軸は磁化mを表し、横軸は制御パラメータsの0.3から0.7までの範囲を表す。
【0122】
図8の例で、s=0.5付近で磁化mの値が0から連続的に増加した後、不連続に変化している。この場合の磁化mの連続的な変化によって、二次相転移が起きていることが示され、磁化mの不連続な変化によって一次相転移が起きているが示されている。したがって、C(s)=2とした場合、第2結合器103を介して量子非線形発振器101同士が結合しているが、最適解を求めるのに指数関数的な時間を要する。
【0123】
図9は、制御パラメータsの値と磁化mの値との関係の第3例を示す図である。図9はp=5、C(s)=15としたときの、制御パラメータsに対する式(15)で計算される磁化mの様子を示している。図9のグラフの縦軸は磁化mを表し、横軸は制御パラメータsの0.3から0.7までの範囲を表す。
【0124】
図9の例で、s=0.5付近で磁化mの値が0から連続的に増加し、m=1となる。図9の例では、図7の例および図8の例と異なり、一次相転移は起きずに二次相転移が起きている。
図9の例を、図7の例および図8の例と比較すると、第2結合器103を介しての量子非線形発振器101同士の結合を強くしたことで、最適解を冪関数的な時間で求めることができる。
図7から図9までの例に示されるように、第2結合器103による結合の強度を強くすると、不連続な変化幅が小さくなる。第2結合器103による結合の強度をさらに強くすると、不連続な変化が消失する。
【0125】
図8および図9のそれぞれにおいて、磁化mが連続的に0から増加し始める点があり、ここで二次相転移が起きていることは厳密に計算することが可能である。一方、図7および図8に例示されるような一次相転移が起きるか否かは、数値計算により検証が可能である。
【0126】
図10は、第2結合器103による結合の強度と磁化mの不連続変化幅との関係の例を示す図である。図10のグラフの縦軸はアニーリング中における磁化mの不連続変化幅を示し、横軸は第2結合器103による結合の強度C(s)を示す。図10は、第2結合器103による結合の強度C(s)毎の、磁化mの不連続変化幅の計算結果を示している。
図10の例ではC(s)の値は、制御パラメータsに依らない定数値としている。
【0127】
線L211は、p=3とした場合の、第2結合器103の強度C(s)に対する磁化mの不連続変化幅を示す。線L212は、p=4とした場合の、第2結合器103の強度C(s)に対する磁化mの不連続変化幅を示す。線L213は、p=5とした場合の、第2結合器103の強度C(s)に対する磁化mの不連続変化幅を示す。線L214は、p=6とした場合の第2結合器103の強度C(s)に対する磁化mの不連続変化幅を示す。
【0128】
図10において、第2結合器103の強度C(s)の設定値に対して磁化mの不連続変化幅が0ではない場合、量子アニーリング中に一次相転移が起きていることを示している。このときの磁化mの不連続変化幅は、一次相転移の強さを表す。一次相転移が起きている場合でも磁化mの不連続変化幅が比較的小さい場合は、必要な計算時間が比較的短いことが知られている。図10の例で、いずれのpの値の場合においても、一次相転移が起きる場合でも量子非線形発振器101同士が第2結合器103を介して結合していない場合より結合している場合の方が、磁化mの不連続変化幅が小さくなる。このように、第2結合器103が量子非線形発振器101同士を結合していることで、一次相転移の強さを緩和できる。
【0129】
例えば、図8での磁化mの値の不連続変化幅は図7での磁化mの値の不連続変化幅より小さい。このように、図8の例では、図7の例の場合よりもC(s)の値、すなわち第2結合器103を介しての量子非線形発振器101同士の結合の強度を強めたことで一次相転移が緩和されている。図8の例では、アニーリング中に一次相転移が起きて最適解を求めるのに指数関数的な時間は要するものの、図7の例の場合よりも第2結合器103を介しての量子非線形発振器101同士の結合の強度を強めることで最適解の探索に要する時間を短縮できる。
【0130】
図10において、第2結合器の強度C(s)の設定値に対して磁化mの不連続変化幅が0である場合、一次相転移が起きていないことを示している。
図10において、第2結合器103の強度をC(s)=0とした場合、すなわち量子非線形発振器101同士が第2結合器103を介して結合していない場合、いずれのpの場合も磁化mの不連続幅が0.8を上回るような一次相転移が起きている。一方で第2結合器103による結合の強度をC(s)=10と強めることでp=3、4または5の場合は、磁化mの不連続幅をほぼ0にすることができ二次相転移にすることができる。
【0131】
p=6の場合、図10において図示した範囲の第2結合器103による結合の強度では磁化mの不連続幅をほぼ0にすることはできていないが、第2結合器103による結合の強度を強めることで磁化mの不連続幅が単調減少している。このことから、p=6の場合、第2結合器103による結合の強度を更に強めることで磁化mの不連続変化幅をほぼ0にすることができると期待される。
【0132】
図11は、式(15)による磁化mの計算結果に基づいて図示された相図である。図11のグラフの横軸は、制御パラメータsの値を示し、縦軸は第2結合器103による結合の強度C(s)を示す。図11は制御パラメータsの値が0.47から0.52の範囲で図示されている。
【0133】
線L311は、式(11)においてp=3とした場合の一次相転移線である。線L312は、式(11)においてp=4とした場合の一次相転移線である。線L313は、式(11)においてp=5とした場合の一次相転移線である。線L314は、式(11)においてp=6とした場合の一次相転移線である。一次相転移線は式(15)に示す磁化mを数値計算することで図示可能である。一次相転移線上では磁化が不連続に変化している。
線L321は、二次相転移線である。二次相転移線は厳密な計算により図示が可能である。
【0134】
図11において、制御パラメータsの値を0から1に変化させる過程で、制御パラメータsの値と結合の強度C(s)との座標の図11における軌跡が、一次相転移線と交わるような第2結合器103による結合の強度C(s)を設定した場合、一次相転移が起きて量子アニーリングに必要な時間は指数関数的に増大する。これに対して、本実施の形態においてC(s)を設定する場合、制御パラメータsの値と結合の強度C(s)との座標の図11における軌跡が一次相転移線と交わることを避けるようにC(s)を設定すると良い。例えばp=5の場合、s=0.5付近でC(s)=10となるように第2結合器103による結合の強度C(s)を設定するようにしてもよい。これにより、制御パラメータsの値と結合の強度C(s)との座標の図11における軌跡が、一次相転移線と交わることを避けることができる。
【0135】
制御パラメータsの値と結合の強度C(s)との座標の図11における軌跡が一次相転移線と交わる場合においても、C(s)=0とするよりは正の値に設定する方が、図10に示される磁化mの不連続幅が小さくなり、困難さは多少緩和される。C(s)の値を正の値に設定することで、量子アニーリングに必要な時間は指数関数的に増大するが、増大具合(指数の係数)を変化させることができる。
【0136】
図7図8図9図10、および図11を図示するにあたり式(12)におけるA(s)は図4に示すようなガウス関数とし、B(s)は図5に示すような線形関数とした。ただし、上記のように、A(s)はガウス関数に限定されず、B(s)は線形関数に限定されない。
【0137】
第2結合器103を介して量子非線形発振器101同士を結合することで組合せ最適化問題の計算に必要な時間を短縮することができる。特に、第2結合器103による結合の強度を強めることで一次相転移を二次相転移に変化させることができる場合、量子力学的な分岐現象を利用した量子アニーリングで最適解を求めるのに要する時間を、指数関数程度の時間から冪関数程度の時間に短縮することができる。
【0138】
図12は、演算装置100を用いて組合せ最適化問題を解く場合の処理手順の例を示すフローチャートである。
図12の処理で、ユーザは、解きたい組合せ最適化問題に応じて各量子非線形発振器101の局所バイアスhおよび量子非線形発振器101同士の第1結合器102による結合の強度Jijを設定する(ステップS11)。
【0139】
次に、ユーザは、第2結合器103を含む量子非線形発振器101の制御部104による制御の仕方を設定する(ステップS12)。具体的には、ユーザは、関数A(s)、B(s)およびC(s)を設定する。
次に、制御部104は、制御パラメータsを初期値0に設定し、各量子非線形発振器101が生成する量子状態を「|0>」に初期化する(ステップS13)。
【0140】
次に、制御部104は、各量子非線形発振器101が分岐現象を起こすように制御パラメータsを断熱的に変化させる(ステップS14)。
そして、測定器105は、各量子非線形発振器101が生成した量子状態を測定する(ステップS15)。この測定により、組合せ最適化問題の解を得られる。
ステップS15の後、演算装置100は、図12の処理を終了する。
【0141】
以上のように、複数の量子非線形発振器101の各々は、制御パラメータ値の変化に応じて、量子状態を、一つの量子状態から、その一つの量子状態とは異なる二つの量子状態の何れか、またはこれら二つの量子状態の組合せ状態に変化させる。第1結合器102は、組合せ最適化問題に応じた結合強度で量子非線形発振器101同士を結合している。第2結合器103は、第1結合器102とは別に、量子非線形発振器101同士を結合している。制御部104は、時間経過に応じて、量子非線形発振器の前記制御パラメータ値と、第2結合器による量子非線形発振器101同士の結合強度とを制御する。測定器105は、量子非線形発振器が示す前記量子状態を測定する。
【0142】
第2結合器103が、第1結合器102とは別に、量子非線形発振器101同士を結合していることで、量子アニーリングの過程中に一次相転移が起きるような最適化問題を、一次相転移を二次相転移に変化させた量子アニーリングを実行することで解くことができる。あるいは、第2結合器103が、第1結合器102とは別に、量子非線形発振器101同士を結合していることで、量子アニーリングの過程中に一次相転移が起きる場合に、一次相転移の際の磁化の不連続変化幅を比較的小さくすることができる。
このように、演算装置100によれば量子アニーリングの実行時間の短縮を図ることができる。
また、演算装置100によれば、複数の量子非線形発振器101が、量子状態を、一つの量子状態から、その一つの量子状態とは異なる二つの量子状態の何れか、またはこれら二つの量子状態の組合せ状態に変化させることで、量子力学的な分岐現象を用いる量子アニーリングを実行することができる。
【0143】
また、量子非線形発振器101は、一つの量子状態に初期設定される量子状態を、制御パラメータ値の変化に応じて断熱的に変化させて、組合せ最適化問題の計算終了時に、一つの量子状態とは異なる二つの量子状態の何れか、またはこれら二つの量子状態の組合せ状態にする。
演算装置100によれば、量子非線形発振器101が量子状態を断熱的に変化させる点で、組合せ最適化問題の最適解を得られることが期待される。
【0144】
また、第1結合器102は、組合せ最適化問題を表すイジング模型のハミルトニアンにおけるイジング変数間の結合強度に応じた結合強度で量子非線形発振器101同士を結合している。
演算装置100によれば、組合せ最適化問題を第1結合器102の結合強度に反映させることができ、この点で、組合せ最適化問題を高精度に解けると期待される。
【0145】
また、第2結合器103は、量子非線形発振器101が生成する区別可能な二つの量子状態のうち一方の量子状態から他方の量子状態への変換を表す演算子の反強磁性相互作用として量子非線形発振器101同士を結合している。
演算装置100では、非疑似古典確率的な量子分岐現象を用いる量子アニーリングを実行できることが期待される。演算装置100によれば、非疑似古典確率的な量子分岐現象を用いる量子アニーリングを実行することで、量子アニーリングの過程中に一次相転移が起きるような最適化問題を、一次相転移を二次相転移に変化させた量子アニーリングに置き換えて実行することができる。あるいは、演算装置100によれば、非疑似古典確率的な量子分岐現象を用いる量子アニーリングを実行することで、量子アニーリングの過程中に一次相転移が起きる場合に、一次相転移の際の磁化の不連続変化幅を比較的小さくすることができる。
このように、演算装置100によれば量子アニーリングの実行時間の短縮を図ることができる。
【0146】
また、制御部104は、非疑似古典確率的な量子分岐現象を用いる量子アニーリングを実行するように、第2結合器103による量子非線形発振器101同士の結合強度を制御する。
演算装置100では、非疑似古典確率的な量子分岐現象を用いる量子アニーリングを実行できることが期待される。演算装置100によれば、非疑似古典確率的な量子分岐現象を用いる量子アニーリングを実行することで、上記のように量子アニーリングの実行時間の短縮を図ることができる。
【0147】
また、制御部104は、第2結合器103による量子非線形発振器101同士の結合の強度の、制御パラメータ値の変化における軌跡が一次相転移線と交わらないように、第2結合器103による量子非線形発振器101同士の結合の強度を制御する。
演算装置100によれば、第2結合器103による量子非線形発振器101同士の結合の強度を、軌跡が一次相転移線と交わらないような結合強度とすることで、量子アニーリングの過程中に一次相転移が起きるような最適化問題を、一次相転移を二次相転移に変化させた量子アニーリングに置き換えて実行することができる。
このように、演算装置100によれば量子アニーリングの実行時間の短縮を図ることができる。
【0148】
図13は、実施形態に係る演算装置の構成の第2例を示す図である。図13に示す構成で、演算装置610は、複数の量子非線形発振器611と、第1結合器612と、第2結合器613と、制御部614と、測定器615とを備える。
かかる構成で、複数の量子非線形発振器611の各々は、制御パラメータ値の変化に応じて、量子状態を、一つの量子状態から、その一つの量子状態とは異なる二つの量子状態の何れか、またはこれら二つの量子状態の組合せ状態に変化させる。第1結合器612は、組合せ最適化問題に応じた結合強度で量子非線形発振器611同士を結合している。第2結合器613は、第1結合器612とは別に、量子非線形発振器611同士を結合している。制御部614は、時間経過に応じて、量子非線形発振器611の制御パラメータ値と、第2結合器613による量子非線形発振器611同士の結合強度とを制御する。測定器615は、量子非線形発振器611が示す量子状態を測定する。
制御部614は、制御手段の例に該当する。
【0149】
第2結合器613が、第1結合器612とは別に、量子非線形発振器611同士を結合していることで、量子アニーリングの過程中に一次相転移が起きるような最適化問題を、一次相転移を二次相転移に変化させた量子アニーリングを実行することで解くことができる。あるいは、第2結合器613が、第1結合器612とは別に、量子非線形発振器611同士を結合していることで、量子アニーリングの過程中に一次相転移が起きる場合に、一次相転移の際の磁化の不連続変化幅を比較的小さくすることができる。
このように、演算装置610によれば量子アニーリングの実行時間の短縮を図ることができる。
また、演算装置610によれば、複数の量子非線形発振器611が、量子状態を、一つの量子状態から、その一つの量子状態とは異なる二つの量子状態の何れか、またはこれら二つの量子状態の組合せ状態に変化させることで、量子力学的な分岐現象を用いる量子アニーリングを実行することができる。
【0150】
量子非線形発振器611は、例えば、図1に示される量子非線形発振器101等を用いて構成することができる。第1結合器612は、例えば、図1に示される第1結合器102等を用いて構成することができる。第2結合器613は、例えば、図1に示される第2結合器103等を用いて構成することができる。制御部614は、例えば、図1に示される制御部104等の機能を用いて実現することができる。測定器615は、例えば、図1に示される測定器105等を用いて構成することができる。
【0151】
図14は、実施形態に係る演算方法における処理手順の例を示す図である。図14に示す演算方法は、制御を行うこと(ステップS611)と、測定を行うこと(ステップS612)とを含む。
制御を行うこと(ステップS611)では、制御パラメータ値の変化に応じて、量子状態を、一つの量子状態から、その一つの量子状態とは異なる二つの量子状態の何れか、またはこれら二つの量子状態の組合せ状態に変化させる量子非線形発振器同士が、第1結合器によって、組合せ最適化問題に応じた結合強度で結合されており、量子非線形発振器同士が、第1結合器とは別の第2結合器によってさらに結合されている演算装置を制御するコンピュータが、時間経過に応じて、量子非線形発振器の制御パラメータ値と、第2結合器による量子非線形発振器同士の結合強度とを制御する。
測定を行うこと(ステップS612)では、上記のコンピュータが、量子非線形発振器が示す量子状態を測定する。
【0152】
第2結合器613が、第1結合器612とは別に、量子非線形発振器611同士を結合していることで、ステップS611における制御にて、量子アニーリングの過程中に一次相転移が起きるような最適化問題を、一次相転移を二次相転移に変化させた量子アニーリングを実行することで解くことができる。あるいは、第2結合器613が、第1結合器612とは別に、量子非線形発振器611同士を結合していることで、ステップS611における制御にて、量子アニーリングの過程中に一次相転移が起きる場合に、一次相転移の際の磁化の不連続変化幅を比較的小さくすることができる。
このように、図14に示す演算方法によれば量子アニーリングの実行時間の短縮を図ることができる。
また、図14に示す演算方法によれば、複数の量子非線形発振器が、量子状態を、一つの量子状態から、その一つの量子状態とは異なる二つの量子状態の何れか、またはこれら二つの量子状態の組合せ状態に変化させることで、量子力学的な分岐現象を用いる量子アニーリングを実行することができる。
【0153】
図15は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
図15に示す構成で、コンピュータ700は、CPU710と、主記憶装置720と、補助記憶装置730と、インタフェース740と、不揮発性記録媒体750とを備える。
【0154】
上記の演算装置100および610のうち何れか1つ以上またはその一部が、コンピュータ700に実装されてもよい。その場合、上述した各処理部の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。また、CPU710は、プログラムに従って、上述した各記憶部に対応する記憶領域を主記憶装置720に確保する。各装置と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って通信を行うことで実行される。また、インタフェース740は、不揮発性記録媒体750用のポートを有し、不揮発性記録媒体750からの情報の読出、および、不揮発性記録媒体750への情報の書込を行う。
【0155】
演算装置100がコンピュータ700に実装される場合、制御部104の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
【0156】
また、CPU710は、プログラムに従って、制御部104が処理を行うための記憶領域を主記憶装置720に確保する。
演算装置100と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。
演算装置100とユーザとのインタラクションは、インタフェース740が入力デバイスおよび出力デバイスを有し、CPU710の制御に従って出力デバイスにて情報をユーザに提示し、入力デバイスにてユーザ操作を受け付けることで実行される。演算装置100が行う量子状態の測定は、インタフェース740が測定器を備え、CPU710の制御に従って測定を行うことで実行される。
【0157】
演算装置610がコンピュータ700に実装される場合、制御部614の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
【0158】
また、CPU710は、プログラムに従って、制御部614が処理を行うための記憶領域を主記憶装置720に確保する。
演算装置610と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。
演算装置610とユーザとのインタラクションは、インタフェース740が入力デバイスおよび出力デバイスを有し、CPU710の制御に従って出力デバイスにて情報をユーザに提示し、入力デバイスにてユーザ操作を受け付けることで実行される。演算装置610が行う量子状態の測定は、インタフェース740が測定器を備え、CPU710の制御に従って測定を行うことで実行される。
【0159】
上述したプログラムのうち何れか1つ以上が不揮発性記録媒体750に記録されていてもよい。この場合、インタフェース740が不揮発性記録媒体750からプログラムを読み出すようにしてもよい。そして、CPU710が、インタフェース740が読み出したプログラムを直接実行するか、あるいは、主記憶装置720または補助記憶装置730に一旦保存して実行するようにしてもよい。
【0160】
なお、演算装置100、および、610が行う処理の全部または一部を実行するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、CD-ROM(Compact Disc Read Only Memory)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
【0161】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【産業上の利用可能性】
【0162】
本発明は、演算装置、演算方法および記録媒体に適用してもよい。
【符号の説明】
【0163】
100、610 演算装置
101、611 量子非線形発振器
102、612 第1結合器
103、613 第2結合器
104、614 制御部
105、615 測定器
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15