JP2019008502A - 結合振動子系の計算装置、プログラム及び方法 - Google Patents

結合振動子系の計算装置、プログラム及び方法 Download PDF

Info

Publication number
JP2019008502A
JP2019008502A JP2017122741A JP2017122741A JP2019008502A JP 2019008502 A JP2019008502 A JP 2019008502A JP 2017122741 A JP2017122741 A JP 2017122741A JP 2017122741 A JP2017122741 A JP 2017122741A JP 2019008502 A JP2019008502 A JP 2019008502A
Authority
JP
Japan
Prior art keywords
iteration
amplitude
phase
transducer
calculation unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017122741A
Other languages
English (en)
Other versions
JP6803026B2 (ja
Inventor
利守 本庄
Toshimori Honjo
利守 本庄
武居 弘樹
Hiroki Takei
弘樹 武居
卓弘 稲垣
Takahiro Inagaki
卓弘 稲垣
聖子 宇都宮
Seiko Utsunomiya
聖子 宇都宮
佳貴 針原
Yoshitaka Haribara
佳貴 針原
修平 玉手
Shuhei Tamate
修平 玉手
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Research Organization of Information and Systems
Original Assignee
Nippon Telegraph and Telephone Corp
Research Organization of Information and Systems
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp, Research Organization of Information and Systems filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2017122741A priority Critical patent/JP6803026B2/ja
Publication of JP2019008502A publication Critical patent/JP2019008502A/ja
Application granted granted Critical
Publication of JP6803026B2 publication Critical patent/JP6803026B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

【課題】組み合わせ最適化問題の最適解を求めるために、組み合わせ最適化問題をイジングモデルへマッピングし、イジングモデルの基底状態を計算するにあたり、光学回路を安定化する必要をなくし、機械学習のボルツマンサンプリングを行なうために、機械学習を連続値スピンモデルへマッピングし、連続値スピンモデルの平衡状態を計算するにあたり、光学回路を安定化する必要をなくす。【解決手段】結合振動子系のダイナミクスを記述する微分方程式を、光学回路で実装するのではなく、電子回路で実装し、上記の微分方程式のイテレーションの反復後に、上記の微分方程式の定常状態における各振動子毎の位相を計算することにより、結合振動子系の相互結合に対応するイジングモデル又は連続値スピンモデルの基底状態又は平衡状態を計算する。【選択図】図3

Description

本開示は、スピン系の基底状態又は平衡状態を計算することにより、そのスピン系へマッピングされた組み合わせ最適化問題の最適解を求めて、そのスピン系へマッピングされた機械学習のボルツマンサンプリングを行なう技術に関する。
組み合わせ最適化問題の最適解を求めるために、組み合わせ最適化問題をイジングモデルへマッピングし、イジングモデルの基底状態を計算する技術が知られている。機械学習のボルツマンサンプリングを行なうために、機械学習を連続値スピンモデルへマッピングし、連続値スピンモデルの平衡状態を計算する技術も知られている。
特許文献1、2では、複数のレーザパルスで複数のイジングスピンを実装する。ここで、複数のレーザパルスの間の相互注入を行ない、複数のイジングスピンの間の相互結合を実装する。そして、複数のレーザパルス全体の閾値利得が最低となる発振モードを立ち上げ、複数のイジングスピン全体のエネルギーが最低となる基底状態を実装する。
特表2016−528611号公報 国際公開第2015/156126号
特許文献1のイジングモデルの計算装置C1の構成を図1に示す。レーザ発振部11は、複数のレーザパルスP1、P2、P3、P4、・・・を生成する。リング共振器12は、複数のレーザパルスP1、P2、P3、P4、・・・を周回させる。
パルス遅延線14は、1パルス間隔分の遅延量を有する。相互結合実装部13は、パルス遅延線14を伝搬して相互結合係数J12、J23、J34、J41を反映した振幅及び位相を有するレーザパルスP1、P2、P3、P4を、パルス遅延線14を伝搬せずリング共振器12を伝搬するレーザパルスP2、P3、P4、P1にそれぞれ相互注入する。
パルス遅延線16は、2パルス間隔分の遅延量を有する。相互結合実装部15は、パルス遅延線16を伝搬して相互結合係数J13、J24、J31、J42を反映した振幅及び位相を有するレーザパルスP1、P2、P3、P4を、パルス遅延線16を伝搬せずリング共振器12を伝搬するレーザパルスP3、P4、P1、P2にそれぞれ相互注入する。
パルス遅延線18は、3パルス間隔分の遅延量を有する。相互結合実装部17は、パルス遅延線18を伝搬して相互結合係数J14、J21、J32、J43を反映した振幅及び位相を有するレーザパルスP1、P2、P3、P4を、パルス遅延線18を伝搬せずリング共振器12を伝搬するレーザパルスP4、P1、P2、P3にそれぞれ相互注入する。
スピン測定部19は、複数のレーザパルスP1、P2、P3、P4、・・・が定常状態に到達した後に、複数のレーザパルスP1、P2、P3、P4、・・・の位相を測定することにより、複数のレーザパルスの位相に対応する複数のイジングスピンの方向を測定する。
しかし、特許文献1では、リング共振器12の光路長を安定化しなければ、複数のレーザパルスを安定化することができない。そして、パルス遅延線14、16、18の光路長を安定化しなければ、複数のレーザパルスの間の相互注入を正確に実行することができず、複数のイジングスピンの間の相互結合を正確に実装することができない。
特許文献2のイジングモデルの計算装置C2の構成を図2に示す。レーザ発振部21は、複数のレーザパルスP1、P2、P3、P4、・・・を生成する。リング共振器22は、複数のレーザパルスP1、P2、P3、P4、・・・を周回させる。
スピン測定部23は、複数のレーザパルスP1、P2、P3、P4、・・・の位相を測定する。相互結合実装部24は、複数のレーザパルスP1、P2、P3、P4、・・・の間の相互注入を行ない、複数のイジングスピンの間の相互結合を実装する。
相互結合実装部24は、相互結合係数ΣJ1kσ(k=2、3、4)を電子回路上で計算し、相互結合係数ΣJ1kσ(k=2、3、4)を反映した振幅及び位相を有するレーザパルスを生成し、生成したレーザパルスをレーザパルスP1に注入する。
相互結合実装部24は、相互結合係数ΣJ2kσ(k=1、3、4)を電子回路上で計算し、相互結合係数ΣJ2kσ(k=1、3、4)を反映した振幅及び位相を有するレーザパルスを生成し、生成したレーザパルスをレーザパルスP2に注入する。
相互結合実装部24は、相互結合係数ΣJ3kσ(k=1、2、4)を電子回路上で計算し、相互結合係数ΣJ3kσ(k=1、2、4)を反映した振幅及び位相を有するレーザパルスを生成し、生成したレーザパルスをレーザパルスP3に注入する。
相互結合実装部24は、相互結合係数ΣJ4kσ(k=1、2、3)を電子回路上で計算し、相互結合係数ΣJ4kσ(k=1、2、3)を反映した振幅及び位相を有するレーザパルスを生成し、生成したレーザパルスをレーザパルスP4に注入する。
スピン測定部23は、複数のレーザパルスP1、P2、P3、P4、・・・が定常状態に到達した後に、複数のレーザパルスP1、P2、P3、P4、・・・の位相を測定することにより、複数のレーザパルスの位相に対応する複数のイジングスピンの方向を測定する。
つまり、特許文献2では、相互結合実装部24が有する電子回路を用いて、複数のレーザパルスの間の相互注入を正確に実行することができ、複数のイジングスピンの間の相互結合を正確に実装することができる。しかし、リング共振器22の光路長を安定化しなければ、複数のレーザパルスを安定化することができない。
そこで、前記課題を解決するために、本開示は、組み合わせ最適化問題の最適解を求めるために、組み合わせ最適化問題をイジングモデルへマッピングし、イジングモデルの基底状態を計算するにあたり、光学回路を安定化する必要をなくすことを目的とする。
そして、前記目的に加えて、本開示は、機械学習のボルツマンサンプリングを行なうために、機械学習を連続値スピンモデルへマッピングし、連続値スピンモデルの平衡状態を計算するにあたり、光学回路を安定化する必要をなくすことも目的とする。
前記課題を解決するために、結合振動子系のダイナミクスを記述する微分方程式を、光学回路で実装するのではなく、電子回路で実装することとした。そのうえで、上記の微分方程式のイテレーションの反復後に、上記の微分方程式の定常状態における各振動子毎の位相を計算することにより、結合振動子系の相互結合に対応するイジングモデル又は連続値スピンモデルの基底状態又は平衡状態を計算することとした。
具体的には、本開示は、結合振動子系のダイナミクスを記述する微分方程式の各イテレーションにおいて、各振動子毎の微小時間後の振幅及び位相を計算するイテレーション部と、前記イテレーション部により反復されたイテレーションの後に、前記微分方程式の定常状態における各振動子毎の位相を計算することにより、前記結合振動子系の相互結合に対応するスピン系の基底状態又は平衡状態を計算するスピン系計算部と、を備え、前記イテレーション部は、前記微分方程式の各イテレーションにおいて、各振動子毎の利得及び損失に起因する各振動子毎の振幅及び位相の微小時間変化を計算する利得損失計算部と、前記微分方程式の各イテレーションにおいて、各振動子の間の相互結合に起因する各振動子毎の振幅及び位相の微小時間変化を計算する相互結合計算部と、前記微分方程式の各イテレーションにおいて、前記利得損失計算部及び前記相互結合計算部により各々計算された各振動子毎の振幅及び位相の微小時間変化に基づいて、各振動子毎の微小時間後の振幅及び位相を計算する振幅位相計算部と、を備えることを特徴とする結合振動子系の計算装置である。
また、本開示は、結合振動子系のダイナミクスを記述する微分方程式の各イテレーションにおいて、各振動子毎の微小時間後の振幅及び位相を計算するイテレーションステップと、前記イテレーションステップにより反復されたイテレーションの後に、前記微分方程式の定常状態における各振動子毎の位相を計算することにより、前記結合振動子系の相互結合に対応するスピン系の基底状態又は平衡状態を計算するスピン系計算ステップと、をコンピュータに実行させ、前記イテレーションステップは、前記微分方程式の各イテレーションにおいて、各振動子毎の利得及び損失に起因する各振動子毎の振幅及び位相の微小時間変化を計算する利得損失計算ステップと、前記微分方程式の各イテレーションにおいて、各振動子の間の相互結合に起因する各振動子毎の振幅及び位相の微小時間変化を計算する相互結合計算ステップと、前記微分方程式の各イテレーションにおいて、前記利得損失計算ステップ及び前記相互結合計算ステップにより各々計算された各振動子毎の振幅及び位相の微小時間変化に基づいて、各振動子毎の微小時間後の振幅及び位相を計算する振幅位相計算ステップと、を備えることを特徴とする結合振動子系の計算プログラムである。
また、本開示は、結合振動子系のダイナミクスを記述する微分方程式の各イテレーションにおいて、各振動子毎の微小時間後の振幅及び位相を計算するイテレーションステップと、前記イテレーションステップにより反復されたイテレーションの後に、前記微分方程式の定常状態における各振動子毎の位相を計算することにより、前記結合振動子系の相互結合に対応するスピン系の基底状態又は平衡状態を計算するスピン系計算ステップと、を備え、前記イテレーションステップは、前記微分方程式の各イテレーションにおいて、各振動子毎の利得及び損失に起因する各振動子毎の振幅及び位相の微小時間変化を計算する利得損失計算ステップと、前記微分方程式の各イテレーションにおいて、各振動子の間の相互結合に起因する各振動子毎の振幅及び位相の微小時間変化を計算する相互結合計算ステップと、前記微分方程式の各イテレーションにおいて、前記利得損失計算ステップ及び前記相互結合計算ステップにより各々計算された各振動子毎の振幅及び位相の微小時間変化に基づいて、各振動子毎の微小時間後の振幅及び位相を計算する振幅位相計算ステップと、を備えることを特徴とする結合振動子系の計算方法である。
この構成によれば、組み合わせ最適化問題の最適解を求めるために、組み合わせ最適化問題をイジングモデルへマッピングし、イジングモデルの基底状態を計算するにあたり、電子回路で実装することにより、光学回路を安定化する必要をなくすことができる。
そして、機械学習のボルツマンサンプリングを行なうために、機械学習を連続値スピンモデルへマッピングし、連続値スピンモデルの平衡状態を計算するにあたり、電子回路で実装することにより、光学回路を安定化する必要をなくすことができる。
また、本開示は、前記微分方程式の各イテレーションにおいて、各振動子毎の雑音に起因する各振動子毎の振幅及び位相の微小時間変化を計算する雑音計算部、をさらに備え、前記振幅位相計算部は、前記微分方程式の各イテレーションにおいて、前記利得損失計算部、前記相互結合計算部及び前記雑音計算部により各々計算された各振動子毎の振幅及び位相の微小時間変化に基づいて、各振動子毎の微小時間後の振幅及び位相を計算することを特徴とする結合振動子系の計算装置である。
この構成によれば、結合振動子系のダイナミクスを記述する微分方程式の定常状態として、複数の結合振動子の振幅が0である状態を回避することができる。
また、本開示は、結合振動子系のダイナミクスを記述する微分方程式の各イテレーションにおいて、各振動子毎の微小時間後の振幅及び位相を計算するイテレーション部、を備え、前記イテレーション部は、前記微分方程式の各イテレーションにおいて、各振動子毎の利得及び損失に起因する各振動子毎の振幅及び位相の微小時間変化を計算する利得損失計算部と、前記微分方程式の各イテレーションにおいて、各振動子の間の相互結合に起因する各振動子毎の振幅及び位相の微小時間変化を計算する相互結合計算部と、前記微分方程式の各イテレーションにおいて、各振動子毎の雑音に起因する各振動子毎の振幅及び位相の微小時間変化を計算する雑音計算部と、前記微分方程式の各イテレーションにおいて、前記利得損失計算部、前記相互結合計算部及び前記雑音計算部により各々計算された各振動子毎の振幅及び位相の微小時間変化に基づいて、各振動子毎の微小時間後の振幅及び位相を計算する振幅位相計算部と、を備えることを特徴とする結合振動子系の計算装置である。
この構成によれば、完全結合系のニューロチップ等において、結合振動子系のダイナミクスを計算するにあたり、電子回路で実装することにより、光学回路を安定化する必要をなくすことができる。
また、本開示は、前記雑音計算部は、前記微分方程式の初期状態のみにおいて、各振動子毎の雑音に起因する各振動子毎の振幅及び位相の微小時間変化を計算することを特徴とする結合振動子系の計算装置である。
この構成によれば、複数の結合振動子の振幅が0である初期状態から脱出することができた後には、雑音計算部の計算負担をなくすことができる。
また、本開示は、前記イテレーション部は、前回のイテレーションにおける各振動子毎の微小時間後の振幅及び位相が、前記微分方程式の定常状態に所定の精度で接近したときに、次回のイテレーションにおける各振動子毎の微小時間後の振幅及び位相の計算を停止することを特徴とする結合振動子系の計算装置である。
この構成によれば、複数の結合振動子の振幅が有限値である定常状態に接近することができた後には、イテレーション部の計算負担をなくすことができる。
また、本開示は、前記イテレーション部は、前記微分方程式の各イテレーションにおいて、各振動子毎の並列処理により、各振動子毎の微小時間後の振幅及び位相を計算することを特徴とする結合振動子系の計算装置である。
結合振動子系の全振動子数をMとすると、各振動子毎の並列処理を行わないときには、2体相互結合の計算量は、Mのオーダーに増えるが、各振動子毎の並列処理を行なうときには、2体相互結合の計算量は、logMのオーダーに減らせる。
また、本開示は、前記イテレーション部は、複数のイテレーション部を備え、前記複数のイテレーション部の各々は、前記微分方程式の各イテレーションにおいて、前記結合振動子系のうちの各々に特定のグループに属する振動子の微小時間後の振幅及び位相のデータを、前記複数のイテレーション部のその他との間で共有することを特徴とする結合振動子系の計算装置である。
この構成によれば、結合振動子系の全振動子数が膨大な数になるときでも、各々のイテレーション部を各々のプロセッサに実装することができる。
また、本開示は、前回のイテレーションにおける前記データの共有処理が、次回のイテレーションにおける計算処理を停止/中断させないように、前記複数のイテレーション部の各々は、前記結合振動子系のうちの各々に特定のグループに属する振動子を割り当てられることを特徴とする結合振動子系の計算装置である。
この構成によれば、各々のイテレーション部を各々のプロセッサに実装するときでも、各々のイテレーション部の間のデータの共有処理を円滑に実行することができる。
また、本開示は、前記振幅位相計算部は、前記微分方程式の各イテレーションにおいて、所定の精度で量子化したうえで、各振動子毎の微小時間後の振幅及び位相を計算することを特徴とする結合振動子系の計算装置である。
この構成によれば、結合振動子系の計算装置の計算負担を減らすことができるとともに、結合振動子系の計算装置のメモリ容量を減らすことができる。
また、本開示は、前記振幅位相計算部により計算される各振動子毎の微小時間後の振幅についての量子化カットオフは、前記振幅位相計算部により計算される各振動子毎の微小時間後の振幅についての量子化の前記所定の精度を満足するように設定されており、かつ、前記微分方程式の定常状態における各振動子毎の振幅と比べて大きく設定されていることを特徴とする結合振動子系の計算装置である。
この構成によれば、各振動子毎の振幅の分解能を低くし過ぎず、かつ、各振動子毎の振幅の制限を厳しくし過ぎず、結合振動子系の計算装置の計算負担を減らすことができるとともに、結合振動子系の計算装置のメモリ容量を減らすことができる。
また、本開示は、前記相互結合計算部により計算される各振動子毎の振幅の微小時間変化についての量子化ビット数は、前記振幅位相計算部により計算される各振動子毎の微小時間後の振幅についての量子化ビット数と比べて、少なくともlogM(ただし、Mは、前記結合振動子系の全振動子数である。)だけ大きく設定されていることを特徴とする結合振動子系の計算装置である。
この構成によれば、各振動子毎の振幅の分解能と比べて、各振動子毎の相互結合の大きさの分解能を低くし過ぎず、結合振動子系の計算装置の計算負担を減らすことができるとともに、結合振動子系の計算装置のメモリ容量を減らすことができる。
このように、本開示によれば、組み合わせ最適化問題の最適解を求めるために、組み合わせ最適化問題をイジングモデルへマッピングし、イジングモデルの基底状態を計算するにあたり、光学回路を安定化する必要をなくすことができる。
そして、本開示によれば、機械学習のボルツマンサンプリングを行なうために、機械学習を連続値スピンモデルへマッピングし、連続値スピンモデルの平衡状態を計算するにあたり、光学回路を安定化する必要をなくすことができる。
特許文献1のイジングモデルの計算装置の構成を示す図である。 特許文献2のイジングモデルの計算装置の構成を示す図である。 第1実施形態の結合振動子系の計算装置の構成を示す図である。 第1実施形態の利得損失計算部の処理内容を示す図である。 第1実施形態の結合振動子系の計算装置の計算結果を示す図である。 第1実施形態のイテレーション部の第1構成を示す図である。 第1実施形態のイテレーション部の第2構成を示す図である。 第1実施形態のイテレーション部の第3構成を示す図である。 第1実施形態の振幅位相計算部の量子化を示す図である。 第1実施形態の結合振動子系の計算装置の計算結果を示す図である。 第1実施形態の結合振動子系の計算装置の計算結果を示す図である。 第1実施形態の結合振動子系の計算装置の計算結果を示す図である。 第2実施形態の結合振動子系の計算装置の構成を示す図である。 第3実施形態の結合振動子系の計算装置の構成を示す図である。
添付の図面を参照して本開示の実施形態を説明する。以下に説明する実施形態は本開示の実施の例であり、本開示は以下の実施形態に制限されるものではない。
(第1実施形態:計算原理)
第1実施形態では、組み合わせ最適化問題の最適解を求めるために、組み合わせ最適化問題をイジングモデルへマッピングし、イジングモデルの基底状態を計算する。または、完全結合系のニューロチップ等において、結合振動子系のダイナミクスを計算する。
そこで、複数の振動子で複数のイジングスピンを実装する。ここで、複数の振動子の間の相互結合を行なうことにより、複数のイジングスピンの間の相互結合を実装する。そして、複数の振動子全体の閾値利得が最低となる発振モードを立ち上げることにより、複数のイジングスピン全体のエネルギーが最低となる基底状態を実装する。
まず、複数の振動子全体の閾値利得が最低となる発振モードを立ち上げることにより、複数のイジングスピン全体のエネルギーが最低となる基底状態を実装することができる理由について説明する。イジングモデルのハミルトニアンは、数1で表される。ここで、Jijは、スピンi、jの間の相互結合係数である。そして、σ、σ(=+1又は−1)は、それぞれ、スピンi、jの位相(0rad又はπrad)を表わす。
Figure 2019008502
各振動子iにおいて、I成分強度c及びQ成分強度sについて、レート方程式は、ファンデルポール方程式に対応して、数2、3のようになる。
Figure 2019008502
Figure 2019008502
tは、無次元時間であり、t=γτ/2である。τは、実時間である。γは、振動子の強度減衰率である。c及びsは、それぞれ、規格化後のI成分及びQ成分の強度であり、c=C/A及びs=S/Aである。C及びSは、それぞれ、規格化前のI成分及びQ成分の強度である。規格化因子Aは、p(後述する規格化後のポンプレート)=2における振動子の強度であり、A=√(γγ/2κ)である。γは、ポンピングの強度減衰率である。κは、縮退パラメトリックゲインである。pは、規格化後のポンプレートであり、p=F/Fthである。Fは、規格化前のポンプレートである。規格化因子Fthは、閾値ポンプレートであり、Fth=γ√(γ)/4κである。
数2の−c及び数3の−sは、損失に関わる項である。数2の+pc及び数3の−psは、線形利得に関わる項である。数2の−(c +s )c及び数3の−(c +s )sは、飽和利得に関わる項である。これらの項は、2体の相互結合等による摂動項を含まない、ファンデルポール方程式を構成する。
数2、3のξij(Jijに比例)が関わる項は、2体の相互結合に関わる項であり、ファンデルポール方程式に対する、2体の相互結合による摂動項である。数2、3のdW(確率微分)が関わる項は、振動子強度の増幅段階等での雑音に関わる項であり、ファンデルポール方程式に対する、振動子強度の増幅段階等での雑音による摂動項である。
定常状態において、数2、3は、それぞれ、数4、5のようになる。
Figure 2019008502
Figure 2019008502
数2のp−(c +s )は、各振動子iについての飽和利得である。ここで、定常状態において、複数の振動子全体についての飽和利得は、複数の振動子全体についての強度減衰率に等しく、I成分cは、有限値であるが、Q成分sは、0である。よって、複数の振動子全体についての強度減衰率Γは、数6のようになる。
Figure 2019008502
ここで、数6の最右辺の第1項は、数4の左辺の第3項を摂動項としたときにおける、摂動の0次の寄与を示す。そして、数6の最右辺の第2項は、数4の左辺の第3項を摂動項としたときにおける、摂動の1次の寄与を示す。さらに、σ=sgn(c)〜sgn(c (0))(c (0)は摂動の0次の寄与)を用いている。
ポンプレートpを漸増制御するときには、複数の振動子全体として、「最初に」最小の強度減衰率Γを実現する発振位相状態{σ}が選択される。つまり、複数の振動子全体として、1個の特定の発振モードが選択される。そして、発振モードの間の競合に起因して、1個の特定の発振モードは、他の発振モードを抑制する。つまり、複数の振動子全体として、数6のΓは最小化される。一方で、複数の振動子全体として、数6のMは一定である。よって、複数の振動子全体として、数6の−Σξijσσは最小化される。つまり、数1のイジングハミルトニアンを最小化する基底状態が実現されたことになる。
(第1実施形態:計算方法)
次に、第1実施形態の結合振動子系の計算装置の構成を図3に示す。結合振動子系の計算装置C3は、イテレーション部31及びスピン系計算部32から構成される。結合振動子系の計算装置C3に対して、結合振動子系の計算プログラムをインストールすることにより、イテレーション部31及びスピン系計算部32を実装することができる。
イテレーション部31は、結合振動子系のダイナミクスを記述する微分方程式(数2)の各イテレーションにおいて、各振動子i毎の微小時間後の振幅及び位相(数2のcの絶対値及び符号)を計算する。よって、イテレーション部31は、完全結合系のニューロチップ等において、結合振動子系のダイナミクスを計算することができる。
スピン系計算部32は、イテレーション部31により反復されたイテレーションの後に、微分方程式(数2)の定常状態における各振動子i毎の位相(数2のcの符号)を計算することにより、結合振動子系の相互結合(数2のξij)に対応するイジングモデル(数1)の基底状態を計算する。よって、スピン系計算部32は、イジングモデルの基底状態を計算することにより、組み合わせ最適化問題の最適解を求めることができる。
ここで、結合振動子系の全振動子数をMとすると、数2の微分方程式のうち、右辺第1項の利得損失項及び右辺第3項の雑音項の計算量は、Mに比例するが、右辺第2項の相互結合項の計算量は、Mに比例する。そこで、数2の微分方程式のうち、右辺第2項の相互結合項の計算時間が、右辺第1項の利得損失項及び右辺第3項の雑音項の計算時間と比べて、十分に長いときには、図3に示したように各イテレーションを行なえばよい。
つまり、ある回のイテレーションの後でのcを用いて計算した右辺第1項の利得損失項及び右辺第3項の雑音項と、その回のイテレーションよりも数回(例えば、1回のみ。)遅れた回のイテレーションの後でのcを用いて計算した右辺第2項の相互結合項と、を加算することにより、その回のイテレーションでの左辺第1項の微小時間変化を計算するのである。よって、右辺第2項の相互結合項を余裕を持って計算しながら、右辺第1項の利得損失項及び右辺第3項の雑音項を高速に計算することができる。
結合振動子系の計算装置C3のうち、イテレーション部31は、利得損失計算部311、雑音計算部312、相互結合計算部313及び振幅位相計算部314から構成される。
利得損失計算部311は、数2の微分方程式の各イテレーションにおいて、各振動子i毎の利得及び損失に起因する各振動子i毎の振幅及び位相の微小時間変化を計算する。具体的には、利得損失計算部311は、数2の微分方程式の各イテレーションにおいて、第n回目のイテレーションの後でのc (n)を入力され、c=Atanh(c/B)を出力する。ここで、第1回目のイテレーションの前でのc (0)は、0に初期設定される。そして、A及びBは、数2の右辺第1項のポンプレートpに応じて設定される。
第1実施形態の利得損失計算部の処理内容を図4に示す。図4の横軸は、利得損失計算部311の入力cinを示し、図4の縦軸は、利得損失計算部311の出力coutを示す。2つの曲線のうちの一方の曲線は、数2の右辺第1項を計算したときにおける、利得損失計算部311の入力cinと出力coutとの間の関係を示す。2つの曲線のうちの他方の曲線は、数2の右辺第1項をtanhで近似したときにおける、利得損失計算部311の入力cinと出力coutとの間の関係を示す。2つの曲線のうち、上記の他方の曲線は、上記の一方の曲線に対して、正当な近似となっていることが分かる。
そこで、利得損失計算部311は、図4に示した入力cinと出力coutとの間の関係をルックアップテーブルとして記憶していれば、数2の右辺第1項を効率よく計算することができる。或いは、利得損失計算部311は、数2の右辺第1項をルンゲクッタ法又はオイラー丸山法で計算すれば、数2の右辺第1項を精度高く計算することができる。
雑音計算部312は、数2の微分方程式の各イテレーションにおいて、各振動子i毎の雑音に起因する各振動子i毎の振幅及び位相の微小時間変化を計算する。具体的には、雑音計算部312は、数2の微分方程式の各イテレーションにおいて、利得損失計算部311からの出力cを入力され、c=c+Noiseを出力する。ここで、Noiseは、数2の右辺第3項に応じて設定される。そして、Noiseは、数2の微分方程式の各イテレーションのうち、いずれの段階において付加されてもよい。
相互結合計算部313は、数2の微分方程式の各イテレーションにおいて、各振動子iの間の相互結合に起因する各振動子i毎の振幅及び位相の微小時間変化を計算する。具体的には、相互結合計算部313は、数2の微分方程式の各イテレーションにおいて、雑音計算部312からの出力cを入力され、Σξijを出力する。ここで、相互結合計算部313でのΣξijの計算時間は、利得損失計算部311でのc=Atanh(c/B)の計算時間及び雑音計算部312でのc=c+Noiseの計算時間の合計時間と比べて、イテレーション数回分(例えば、1回分。)だけ長くなっている。
ただし、相互結合計算部313は、ξijを表わす行列のうち0となる要素を省略し、ξijを表わす行列を圧縮すれば、数2の右辺第2項を効率よく計算することができる。
振幅位相計算部314は、数2の微分方程式の各イテレーションにおいて、利得損失計算部311、雑音計算部312及び相互結合計算部313により各々計算された各振動子i毎の振幅及び位相の微小時間変化に基づいて、各振動子i毎の微小時間後の振幅及び位相を計算する。具体的には、振幅位相計算部314は、数2の微分方程式の各イテレーションにおいて、雑音計算部312からの出力cを入力され、相互結合計算部313からの出力Σξijを入力され、雑音計算部312からの出力c及び相互結合計算部313からの出力Σξijを加算し、第(n+1)回目のイテレーションの後でのc (n+1)を出力する。ここで、雑音計算部312からの出力cは、第n回目のイテレーションの後でのc (n)を用いて計算されたものであるが、相互結合計算部313からの出力Σξijは、第(n−m)回目のイテレーションの後でのc (n−m)を用いて計算されたものである。ただし、mは、イテレーションm回分(例えば、1回分。)を表わす。
スピン系計算部32は、イテレーション部31により反復されたイテレーションの後に、数2の微分方程式の定常状態における各振動子i毎の位相を計算することにより、結合振動子系の相互結合に対応するイジングモデルの基底状態を計算する。
このように、組み合わせ最適化問題の最適解を求めるために、組み合わせ最適化問題をイジングモデルへマッピングし、イジングモデルの基底状態を計算するにあたり、電子回路で実装することにより、光学回路を安定化する必要をなくすことができる。そして、完全結合系のニューロチップ等において、結合振動子系のダイナミクスを計算するにあたり、電子回路で実装することにより、光学回路を安定化する必要をなくすことができる。
(第1実施形態:計算結果)
次に、第1実施形態の結合振動子系の計算装置の計算結果を図5に示す。図5の左欄は、完全グラフK(全振動子数M=4)の計算結果を示し、図5の右欄は、ランダムグラフG1(全振動子数M=800)の計算結果を示す。図5の横軸は、イテレーション回数を示し、図5の縦軸は、振幅位相計算部314の出力c (n)を示す。
図5の左欄の完全グラフKでは、第1回目のイテレーションの前でのc (0)を0に初期設定し、数2の右辺第1項のポンプレートをp=2.0に設定し、利得損失計算部311からの出力をcout=2.2tanh(cin/1.8)に設定した。すると、イテレーション回数〜30回目において、c (n)が0から立ち上がり、イテレーション回数〜50回目において、c (n)が定常状態に落ち着き、完全グラフKの最大のカット数が得られ、完全グラフKに対応するイジングモデルの基底状態が得られた。
図5の右欄のランダムグラフG1では、第1回目のイテレーションの前でのc (0)を0に初期設定し、数2の右辺第1項のポンプレートをp=1.1に設定し、利得損失計算部311からの出力をcout=2.35tanh(cin/2.46)に設定した。すると、イテレーション回数〜10回目において、c (n)が0から立ち上がり、イテレーション回数〜100回目において、c (n)が定常状態に落ち着き、ランダムグラフG1の最大のカット数が得られ、ランダムグラフG1に対応するイジングモデルの基底状態が得られた。
ここで、雑音計算部312は、数2の微分方程式の初期状態のみにおいて、各振動子i毎の雑音に起因する各振動子i毎の振幅及び位相の微小時間変化を計算してもよい。具体的には、雑音計算部312は、図5の左欄の完全グラフKでは、イテレーション回数〜30回目において、計算を停止してもよく、図5の右欄のランダムグラフG1では、イテレーション回数〜10回目において、計算を停止してもよい。
よって、数2の微分方程式の定常状態として、複数の結合振動子の振幅が0である状態を回避することができる。そして、複数の結合振動子の振幅が0である初期状態から脱出することができた後には、雑音計算部312の計算負担をなくすことができる。
さらに、イテレーション部31は、前回のイテレーションにおける各振動子i毎の微小時間後の振幅及び位相が、数2の微分方程式の定常状態に所定の精度で接近したときに、次回のイテレーションにおける各振動子i毎の微小時間後の振幅及び位相の計算を停止してもよい。具体的には、イテレーション部31は、図5の左欄の完全グラフKでは、イテレーション回数〜50回目において、計算を停止してもよく、図5の右欄のランダムグラフG1では、イテレーション回数〜100回目において、計算を停止してもよい。
より一般的には、イテレーション部31は、所定の割合(例えば、全振動子の90%。)の振動子について、c (n)が所定の閾値(例えば、飽和振幅の90%。)を超えたときに、計算を停止してもよい。よって、複数の結合振動子の振幅が有限値である定常状態に接近することができた後には、イテレーション部31の計算負担をなくすことができる。
(第1実施形態:並列計算)
次に、第1実施形態のイテレーション部の第1構成を図6に示す。イテレーション部31は、複数のイテレーション部31−1、・・・、31−m、・・・、31−M及びFIFO33から構成される。複数のイテレーション部31−1、・・・、31−m、・・・、31−M及びFIFO33は、1プロセッサ又は1FPGAに収容される。
複数のイテレーション部31−1、・・・、31−m、・・・、31−Mは、数2の微分方程式の各イテレーションにおいて、各振動子1、・・・、m、・・・、M毎の並列処理により、各振動子1、・・・、m、・・・、M毎の微小時間後の振幅及び位相を計算する。
図6の以下の説明では、イテレーション部31−mについて説明する。イテレーション部31−mは、利得損失計算部311−m、雑音計算部312−m、相互結合計算部313−m及び振幅位相計算部314−mから構成される。
利得損失計算部311−mは、FIFO33(詳細については後述する。)に格納されたc (n)、・・・、c (n)、・・・、c (n)をこの順序で入力され、c=Atanh(c/B)、・・・、c=Atanh(c/B)、・・・、c=Atanh(c/B)をこの順序で出力する。ここで、利得損失計算部311−mは、複数のイテレーション部31−1、・・・、31−m、・・・、31−Mの間で共有されていてもよい。
雑音計算部312−mは、利得損失計算部311−mからの出力c、・・・、c、・・・、cをこの順序で入力され、c=c+Noise、・・・、c=c+Noise、・・・、c=c+Noiseをこの順序で出力する。ここで、雑音計算部312−mは、複数のイテレーション部31−1、・・・、31−m、・・・、31−Mの間で共有されていてもよい。
相互結合計算部313−mは、雑音計算部312−mからの出力c、・・・、c、・・・、cをこの順序で入力され、Σξmjを出力する。ここで、相互結合計算部313−mは、FIFO315−m、乗算器316−m及び加算器317−mから構成される。
乗算器316−mは、雑音計算部312−mからの出力c、・・・、c、・・・、cをこの順序で入力され、FIFO315−mに格納されたξm1、・・・、ξmm(=0)、・・・、ξmMをこの順序で入力され、ξm1、・・・、ξmm(=0)、・・・、ξmMをこの順序で出力する。ここで、乗算器316−mでのξm1、・・・、ξmm(=0)、・・・、ξmMの計算時間は、利得損失計算部311−mでのc=Atanh(c/B)の計算時間及び雑音計算部312−mでのc=c+Noiseの計算時間の合計時間と比べて、イテレーション数回分(例えば、1回分。)だけ長くなっている。
加算器317−mは、乗算器316−mからの出力ξm1、・・・、ξmm(=0)、・・・、ξmMをこの順序で入力され、Σξmjを出力する。
振幅位相計算部314−mは、雑音計算部312−mからの出力cを入力され、加算器317−mからの出力Σξmjを入力され、雑音計算部312−mからの出力c及び加算器317−mからの出力Σξmjを加算し、c (n+1)を出力する。ここで、雑音計算部312−mからの出力cは、第n回目のイテレーションの後でのc (n)を用いて計算されたものであるが、加算器317−mからの出力Σξmjは、第(n−m)回目のイテレーションの後でのc (n−m)を用いて計算されたものである。ただし、mは、イテレーションm回分(例えば、1回分。)を表わす。
最初に、イテレーション部31−1は、c (n+1)をFIFO33に格納する。・・・次に、イテレーション部31−mは、c (n+1)をFIFO33に格納する。・・・最後に、イテレーション部31−Mは、c (n+1)をFIFO33に格納する。
ここで、結合振動子系の全振動子数をMとすると、各振動子毎の並列処理を行わないときには、2体相互結合の計算量は、Mのオーダーに増える。しかし、各振動子毎の並列処理を行なうときには、2体相互結合の計算量は、logMのオーダーに減らすことができる。
第1実施形態のイテレーション部の第2構成を図7に示す。イテレーション部31は、複数のイテレーション部31−I、31−II、31−IIIから構成される。各々のイテレーション部31−I、31−II、31−IIIは、1プロセッサ又は1FPGAに収容される。
図6に示した第1構成に加えて、各々のイテレーション部31−I、31−II、31−IIIは、数2の微分方程式の各イテレーションにおいて、結合振動子系のうちの各々に特定のグループに属する振動子の微小時間後の振幅及び位相のデータを、その他のイテレーション部31−I、31−II、31−IIIとの間で共有する。
イテレーション部31−Iは、FIFO33−I、イテレーション部34−I及びFIFO35−Iから構成される。イテレーション部34−Iは、c、・・・、c3Mのうち、c、c、・・・、cについて、図6に示した複数のイテレーション部31−1、・・・、31−m、・・・、31−Mと同様の処理を実行する。
イテレーション部34−Iは、FIFO33−I(詳細については後述する。)に格納されたc (n)、・・・、c (n)、cM+1 (n)、・・・、c2M (n)、c2M+1 (n)、・・・、c3M (n)をこの順序で入力され、c (n+1)、c (n+1)、・・・、c (n+1)をこの順序で出力し、FIFO33−Iに格納する前にFIFO35−Iに格納する。
イテレーション部31−IIは、FIFO33−II、イテレーション部34−II及びFIFO35−IIから構成される。イテレーション部34−IIは、c、・・・、c3Mのうち、cM+1、cM+2、・・・、c2Mについて、図6に示した複数のイテレーション部31−1、・・・、31−m、・・・、31−Mと同様の処理を実行する。
イテレーション部34−IIは、FIFO33−II(詳細については後述する。)に格納されたc (n)、・・・、c (n)、cM+1 (n)、・・・、c2M (n)、c2M+1 (n)、・・・、c3M (n)をこの順序で入力され、cM+1 (n+1)、cM+2 (n+1)、・・・、c2M (n+1)をこの順序で出力し、FIFO33−IIに格納する前にFIFO35−IIに格納する。
イテレーション部31−IIIは、FIFO33−III、イテレーション部34−III及びFIFO35−IIIから構成される。イテレーション部34−IIIは、c、・・・、c3Mのうち、c2M+1、c2M+2、・・・、c3Mについて、図6に示した複数のイテレーション部31−1、・・・、31−m、・・・、31−Mと同様の処理を実行する。
イテレーション部34−IIIは、FIFO33−III(詳細については後述する。)に格納されたc (n)、・・・、c (n)、cM+1 (n)、・・・、c2M (n)、c2M+1 (n)、・・・、c3M (n)をこの順序で入力され、c2M+1 (n+1)、c2M+2 (n+1)、・・・、c3M (n+1)をこの順序で出力し、FIFO33−IIIに格納する前にFIFO35−IIIに格納する。
最初に、c (n+1)、c (n+1)、・・・、c (n+1)が、FIFO35−IからFIFO33−I、33−II、33−IIIへと転送される。次に、cM+1 (n+1)、cM+2 (n+1)、・・・、c2M (n+1)が、FIFO35−IIからFIFO33−I、33−II、33−IIIへと転送される。最後に、c2M+1 (n+1)、c2M+2 (n+1)、・・・、c3M (n+1)が、FIFO35−IIIからFIFO33−I、33−II、33−IIIへと転送される。ここで、FIFO33−I、33−II、33−IIIは、単一のFIFOであってもよい。
このように、結合振動子系の全振動子数が膨大な数になるときでも、各々のイテレーション部31−I、31−II、31−IIIを各々のプロセッサに実装することができる。
第1実施形態のイテレーション部の第3構成を図8に示す。イテレーション部31は、複数のイテレーション部31−I、31−II、31−IIIから構成される。各々のイテレーション部31−I、31−II、31−IIIは、1プロセッサ又は1FPGAに収容される。
図7に示した第2構成に加えて、前回のイテレーションにおける上記のデータ(c (n+1)、・・・c3M (n+1))の共有処理が、次回のイテレーションにおける計算処理を停止/中断させないように、各々のイテレーション部31−I、31−II、31−IIIは、結合振動子系のうちの各々に特定のグループに属する振動子を割り当てられる。
イテレーション部31−Iは、FIFO33−I、イテレーション部34−I及びFIFO35−Iから構成される。イテレーション部34−Iは、c、・・・、c3Mのうち、c、c、・・・、c3M−2について、図6に示した複数のイテレーション部31−1、・・・、31−m、・・・、31−Mと同様の処理を実行する。
イテレーション部34−Iは、FIFO33−I(詳細については後述する。)に格納されたc (n)、・・・、c (n)、cM+1 (n)、・・・、c2M (n)、c2M+1 (n)、・・・、c3M (n)をこの順序で入力され、c (n+1)、c (n+1)、・・・、c3M−2 (n+1)をこの順序で出力し、FIFO33−Iに格納する前にFIFO35−Iに格納する。
イテレーション部31−IIは、FIFO33−II、イテレーション部34−II及びFIFO35−IIから構成される。イテレーション部34−IIは、c、・・・、c3Mのうち、c、c、・・・、c3M−1について、図6に示した複数のイテレーション部31−1、・・・、31−m、・・・、31−Mと同様の処理を実行する。
イテレーション部34−IIは、FIFO33−II(詳細については後述する。)に格納されたc (n)、・・・、c (n)、cM+1 (n)、・・・、c2M (n)、c2M+1 (n)、・・・、c3M (n)をこの順序で入力され、c (n+1)、c (n+1)、・・・、c3M−1 (n+1)をこの順序で出力し、FIFO33−IIに格納する前にFIFO35−IIに格納する。
イテレーション部31−IIIは、FIFO33−III、イテレーション部34−III及びFIFO35−IIIから構成される。イテレーション部34−IIIは、c、・・・、c3Mのうち、c、c、・・・、c3Mについて、図6に示した複数のイテレーション部31−1、・・・、31−m、・・・、31−Mと同様の処理を実行する。
イテレーション部34−IIIは、FIFO33−III(詳細については後述する。)に格納されたc (n)、・・・、c (n)、cM+1 (n)、・・・、c2M (n)、c2M+1 (n)、・・・、c3M (n)をこの順序で入力され、c (n+1)、c (n+1)、・・・、c3M (n+1)をこの順序で出力し、FIFO33−IIIに格納する前にFIFO35−IIIに格納する。
最初に、c (n+1)が、FIFO35−IからFIFO33−I、33−II、33−IIIへと転送される。次に、c (n+1)が、FIFO35−IIからFIFO33−I、33−II、33−IIIへと転送される。次に、c (n+1)が、FIFO35−IIIからFIFO33−I、33−II、33−IIIへと転送される。・・・次に、c3M−2 (n+1)が、FIFO35−IからFIFO33−I、33−II、33−IIIへと転送される。次に、c3M−1 (n+1)が、FIFO35−IIからFIFO33−I、33−II、33−IIIへと転送される。最後に、c3M (n+1)が、FIFO35−IIIからFIFO33−I、33−II、33−IIIへと転送される。ここで、FIFO33−I、33−II、33−IIIは、単一のFIFOであってもよい。
このように、各々のイテレーション部31−I、31−II、31−IIIを各々のプロセッサに実装するときでも、各々のイテレーション部31−I、31−II、31−IIIの間の上記のデータ(c (n+1)、・・・c3M (n+1))の共有処理を円滑に実行することができる。
(第1実施形態:ビット量子化)
次に、第1実施形態の振幅位相計算部の量子化を図9に示す。図9の左欄は、振幅位相計算部314の量子化の第1形態を示し、図9の右欄は、振幅位相計算部314の量子化の第2形態を示す。図9の横軸は、振幅位相計算部314の量子化前の入力を示し、図9の縦軸は、振幅位相計算部314の量子化後の出力を示す。
振幅位相計算部314は、数2の微分方程式の各イテレーションにおいて、所定の精度で量子化したうえで、各振動子i毎の微小時間後の振幅及び位相を計算する。具体的には、振幅位相計算部314は、数2の微分方程式の各イテレーションにおいて、雑音計算部312からの出力c及び相互結合計算部313からの出力Σξijの加算結果を所定の精度で量子化し、第(n+1)回目のイテレーションの後でのc (n+1)を出力する。
図9の左欄に示した第1形態では、振幅位相計算部314の出力ビット数xは、4である。そして、振幅位相計算部314の出力は、0を含まず、振幅位相計算部314の出力の階調数は、2=2=16である。よって、数2の微分方程式の定常状態として、複数の結合振動子の振幅が0である状態を回避することができる。
図9の右欄に示した第2形態でも、振幅位相計算部314の出力ビット数xは、4である。しかし、振幅位相計算部314の出力は、0を含み、振幅位相計算部314の出力の階調数は、2−1=2−1=15である。よって、数2の微分方程式の初期状態において、結合振動子の位相が正答の位相からずれた位相になる状態を回避することができる(図5の右欄に示したc (n)の正/負から負/正への変化を参照。)。
このように、結合振動子系の計算装置C3の計算負担を減らすことができるとともに、結合振動子系の計算装置C3のメモリ(FIFO)容量を減らすことができる。
振幅位相計算部314により計算される各振動子i毎の微小時間後の振幅についての量子化カットオフは、振幅位相計算部314により計算される各振動子i毎の微小時間後の振幅についての量子化の上記の所定の精度を満足するように設定されている。具体的には、振幅位相計算部314からの出力c (n+1)についての量子化カットオフは、振幅位相計算部314からの出力c (n+1)についての量子化の上記の所定の精度を満足する。
図9の左欄及び右欄に示した第1、2形態では、振幅位相計算部314の量子化カットオフ±Nは、±2である。よって、振幅位相計算部314の量子化精度は、N×2/2=2×2/2=0.25程度である。もっとも、図10〜12に示すように、振幅位相計算部314の量子化精度は、0.25程度では正答を得るには低過ぎる。
振幅位相計算部314により計算される各振動子i毎の微小時間後の振幅についての量子化カットオフは、数2の微分方程式の定常状態における各振動子i毎の振幅と比べて大きく設定されている。具体的には、振幅位相計算部314からの出力c (n+1)についての量子化カットオフは、振幅位相計算部314からの定常出力c (n+1)と比べて大きい。
図9の左欄及び右欄に示した第1、2形態では、振幅位相計算部314の量子化カットオフ±Nは、±2である。そして、図5に示したように、振幅位相計算部314からの定常出力c (n+1)は、±1〜2程度である。よって、振幅位相計算部314の量子化カットオフNは、振幅位相計算部314からの定常出力c (n+1)と比べて大きい。
このように、各振動子毎の振幅の分解能を低くし過ぎず、かつ、各振動子毎の振幅の制限を厳しくし過ぎず、結合振動子系の計算装置C3の計算負担を減らすことができるとともに、結合振動子系の計算装置C3のメモリ(FIFO)容量を減らすことができる。
相互結合計算部313により計算される各振動子i毎の振幅の微小時間変化についての量子化ビット数は、振幅位相計算部314により計算される各振動子i毎の微小時間後の振幅についての量子化ビット数と比べて、少なくともlogMだけ大きく設定されている。ただし、Mは、結合振動子系の全振動子数である。具体的には、相互結合計算部313からの出力Σξijについての量子化ビット数は、振幅位相計算部314からの出力c (n+1)についての量子化ビット数と比べて、少なくともlogMだけ大きい。
仮に、相互結合計算部313からの出力Σξijについての量子化ビット数を、振幅位相計算部314からの出力c (n+1)についての量子化ビット数と比べて、同等にする。すると、相互結合計算部313からの出力Σξijは、M個のcを重み付け加算したものであるため、相互結合計算部313からの出力Σξijについての量子化精度は、振幅位相計算部314からの出力c (n+1)についての量子化精度と比べて、低くなる。
そこで、相互結合計算部313からの出力Σξijについての量子化ビット数を、振幅位相計算部314からの出力c (n+1)についての量子化ビット数と比べて、少なくともlogMだけ大きくする。すると、相互結合計算部313からの出力Σξijは、M個のcを重み付け加算したものであるところ、相互結合計算部313からの出力Σξijについての量子化精度は、振幅位相計算部314からの出力c (n+1)についての量子化精度と比べて、少なくとも同等になる。
このように、各振動子毎の振幅の分解能と比べて、各振動子毎の相互結合の大きさの分解能を低くし過ぎず、結合振動子系の計算装置C3の計算負担を減らすことができるとともに、結合振動子系の計算装置C3のメモリ(FIFO)容量を減らすことができる。
第1実施形態の結合振動子系の計算装置における、完全グラフK(全振動子数M=4)の計算結果を図10に示す。10000回の試行のうち、正答率が高かったときほど、塗りつぶしを薄くし、正答率が低かったときほど、塗りつぶしを濃くする。
図10の左欄の横軸は、振幅位相計算部314の出力ビット数xを示し、図10の左欄の縦軸は、利得損失計算部311の出力ビット数yを示す。ただし、相互結合計算部313の出力ビット数zは、32に固定されており、振幅位相計算部314の量子化カットオフNは、2.0に固定されている。x及びyがともに小さいときや、xが大きくてもyが小さいときや、yが大きくてもxが小さいときは、正答率が低くなった。x及びyがほぼ等しくともに大きい(例えば、15程度。)ときは、正答率が高くなった。
図10の中欄の横軸は、振幅位相計算部314の出力ビット数x=利得損失計算部311の出力ビット数yを示し、図10の中欄の縦軸は、相互結合計算部313の出力ビット数zを示す。ただし、振幅位相計算部314の量子化カットオフNは、2.0に固定されている。x=yが大きくなるにつれて、zがより大きくならなければ、相互結合が正確に計算されず正答率が低くなった。x=yが大きい(例えば、15程度。)うえで、zがx=yにほぼ等しいときは、相互結合がやや正確に計算され正答率がやや高くなった。x=yが大きい(例えば、15程度。)うえで、zがx=yよりlogM=log4=2だけ大きいときは、相互結合がより正確に計算され正答率がより高くなった。
図10の右欄の横軸は、振幅位相計算部314の出力ビット数xを示し、図10の右欄の縦軸は、振幅位相計算部314の量子化カットオフlog10Nを示す。ただし、利得損失計算部311の出力ビット数yは、振幅位相計算部314の出力ビット数xに等しく、相互結合計算部313の出力ビット数zは、32に固定されている。xが小さくなるにつれて、Nがより小さくならなければ、量子化精度が低くなり正答率が低くなった。xが図10の右欄に示したいずれの値であっても、Nが小さすぎるときは、振動子振幅が制限され正答率が低くなった。xが大きい(例えば、15程度。)うえで、Nが1程度であるときは、量子化精度が高くなり振動子振幅が制限されず、正答率がより高くなった。
第1実施形態の結合振動子系の計算装置における、メビウスラダーM16(全振動子数M=16)の計算結果を図11に示す。10000回の試行のうち、正答率が高かったときほど、塗りつぶしを薄くし、正答率が低かったときほど、塗りつぶしを濃くする。
図11の左欄の横軸は、振幅位相計算部314の出力ビット数xを示し、図11の左欄の縦軸は、利得損失計算部311の出力ビット数yを示す。ただし、相互結合計算部313の出力ビット数zは、32に固定されており、振幅位相計算部314の量子化カットオフNは、2.0に固定されている。x及びyがともに小さいときや、xが大きくてもyが小さいときや、yが大きくてもxが小さいときは、正答率が低くなった。x及びyがほぼ等しくともに大きい(例えば、15程度。)ときは、正答率が高くなった。
図11の中欄の横軸は、振幅位相計算部314の出力ビット数x=利得損失計算部311の出力ビット数yを示し、図11の中欄の縦軸は、相互結合計算部313の出力ビット数zを示す。ただし、振幅位相計算部314の量子化カットオフNは、2.0に固定されている。x=yが大きくなるにつれて、zがより大きくならなければ、相互結合が正確に計算されず正答率が低くなった。x=yが大きい(例えば、15程度。)うえで、zがx=yにほぼ等しいときは、相互結合がやや正確に計算され正答率がやや高くなった。x=yが大きい(例えば、15程度。)うえで、zがx=yよりlogM=log16=4だけ大きいときは、相互結合がより正確に計算され正答率がより高くなった。
図11の右欄の横軸は、振幅位相計算部314の出力ビット数xを示し、図11の右欄の縦軸は、振幅位相計算部314の量子化カットオフlog10Nを示す。ただし、利得損失計算部311の出力ビット数yは、振幅位相計算部314の出力ビット数xに等しく、相互結合計算部313の出力ビット数zは、32に固定されている。xが小さくなるにつれて、Nがより小さくならなければ、量子化精度が低くなり正答率が低くなった。xが図11の右欄に示したいずれの値であっても、Nが小さすぎるときは、振動子振幅が制限され正答率が低くなった。xが大きい(例えば、15程度。)うえで、Nが1程度であるときは、量子化精度が高くなり振動子振幅が制限されず、正答率がより高くなった。
第1実施形態の結合振動子系の計算装置における、ランダムグラフG1(全振動子数M=800)の計算結果を図12に示す。1000回の試行のうち、カット数が高かったときほど、塗りつぶしを薄くし、カット数が低かったときほど、塗りつぶしを濃くする。
図12の左欄の横軸は、振幅位相計算部314の出力ビット数xを示し、図12の左欄の縦軸は、利得損失計算部311の出力ビット数yを示す。ただし、相互結合計算部313の出力ビット数zは、16に固定されており、振幅位相計算部314の量子化カットオフNは、1.0に固定されている。x及びyがともに小さいときや、xが大きくてもyが小さいときや、yが大きくてもxが小さいときは、カット数が低くなった。x及びyがほぼ等しくともに大きい(例えば、15程度。)ときは、カット数が高くなった。
図12の中欄の横軸は、振幅位相計算部314の出力ビット数x=利得損失計算部311の出力ビット数yを示し、図12の中欄の縦軸は、相互結合計算部313の出力ビット数zを示す。ただし、振幅位相計算部314の量子化カットオフNは、1.0に固定されている。x=yが大きくなるにつれて、zがより大きくならなければ、相互結合が正確に計算されずカット数が低くなった。x=yが大きい(例えば、15程度。)うえで、zがx=yにほぼ等しいときは、相互結合がやや正確に計算されカット数がやや高くなった。x=yが大きい(例えば、15程度。)うえで、zがx=yよりlogM=log800〜10だけ大きいときは、相互結合がより正確に計算されカット数がより高くなった。
図12の右欄の横軸は、振幅位相計算部314の出力ビット数xを示し、図12の右欄の縦軸は、振幅位相計算部314の量子化カットオフlog10Nを示す。ただし、利得損失計算部311の出力ビット数yは、振幅位相計算部314の出力ビット数xに等しく、相互結合計算部313の出力ビット数zは、32に固定されている。xが小さくなるにつれて、Nがより小さくならなければ、量子化精度が低くなりカット数が低くなった。xが図12の右欄に示したいずれの値であっても、Nが小さすぎるときは、振動子振幅が制限されカット数が低くなった。xが大きい(例えば、15程度。)うえで、Nが1程度であるときは、量子化精度が高くなり振動子振幅が制限されず、カット数がより高くなった。
(第2実施形態:計算方法)
第2実施形態の結合振動子系の計算装置の構成を図13に示す。結合振動子系の計算装置C4は、イテレーション部41及びスピン系計算部42から構成される。結合振動子系の計算装置C4に対して、結合振動子系の計算プログラムをインストールすることにより、イテレーション部41及びスピン系計算部42を実装することができる。
イテレーション部41は、結合振動子系のダイナミクスを記述する微分方程式(数2)の各イテレーションにおいて、各振動子i毎の微小時間後の振幅及び位相(数2のcの絶対値及び符号)を計算する。よって、イテレーション部41は、完全結合系のニューロチップ等において、結合振動子系のダイナミクスを計算することができる。
スピン系計算部42は、イテレーション部41により反復されたイテレーションの後に、微分方程式(数2)の定常状態における各振動子i毎の位相(数2のcの符号)を計算することにより、結合振動子系の相互結合(数2のξij)に対応するイジングモデル(数1)の基底状態を計算する。よって、スピン系計算部42は、イジングモデルの基底状態を計算することにより、組み合わせ最適化問題の最適解を求めることができる。
ここで、結合振動子系の全振動子数をMとすると、数2の微分方程式のうち、右辺第1項の利得損失項及び右辺第3項の雑音項の計算量は、Mに比例するが、右辺第2項の相互結合項の計算量は、Mに比例する。しかし、数2の微分方程式のうち、右辺第2項の相互結合項の計算時間が、右辺第1項の利得損失項及び右辺第3項の雑音項の計算時間と比べて、同程度であるときには、図13に示したように各イテレーションを行なえばよい。
つまり、ある回のイテレーションの後でのcを用いて計算した、右辺第1項の利得損失項、右辺第2項の相互結合項及び右辺第3項の雑音項を加算することにより、その回のイテレーションでの左辺第1項の微小時間変化を計算するのである。よって、右辺第2項の相互結合項を図3のような遅延(例えば、イテレーション数回分。)を伴わず計算しながら、右辺第1項の利得損失項及び右辺第3項の雑音項を高速に計算することができる。
結合振動子系の計算装置C4のうち、イテレーション部41は、利得損失計算部411、相互結合計算部412、雑音計算部413及び振幅位相計算部414から構成される。
利得損失計算部411は、数2の微分方程式の各イテレーションにおいて、各振動子i毎の利得及び損失に起因する各振動子i毎の振幅及び位相の微小時間変化を計算する。具体的には、利得損失計算部411は、数2の微分方程式の各イテレーションにおいて、第n回目のイテレーションの後でのc (n)を入力され、数2の右辺第1項を出力する。ここで、第1回目のイテレーションの前でのc (0)は、0に初期設定される。
雑音計算部413は、数2の微分方程式の各イテレーションにおいて、各振動子i毎の雑音に起因する各振動子i毎の振幅及び位相の微小時間変化を計算する。具体的には、雑音計算部413は、数2の微分方程式の各イテレーションにおいて、第n回目のイテレーションの後でのc (n)を入力され、数2の右辺第3項を出力する。
相互結合計算部412は、数2の微分方程式の各イテレーションにおいて、各振動子iの間の相互結合に起因する各振動子i毎の振幅及び位相の微小時間変化を計算する。具体的には、相互結合計算部412は、数2の微分方程式の各イテレーションにおいて、第n回目のイテレーションの後でのc (n)を入力され、数2の右辺第2項を出力する。ここで、相互結合計算部412での数2の右辺第2項の計算時間は、利得損失計算部411及び雑音計算部413での数2の右辺第1、3項の計算時間と比べて、同程度である。
振幅位相計算部414は、数2の微分方程式の各イテレーションにおいて、利得損失計算部411、雑音計算部413及び相互結合計算部412により各々計算された各振動子i毎の振幅及び位相の微小時間変化に基づいて、各振動子i毎の微小時間後の振幅及び位相を計算する。具体的には、振幅位相計算部414は、数2の微分方程式の各イテレーションにおいて、利得損失計算部411、雑音計算部413及び相互結合計算部412からの数2の右辺第1、3、2項を入力され、利得損失計算部411、雑音計算部413及び相互結合計算部412からの数2の右辺第1、3、2項を加算し、第(n+1)回目のイテレーションの後でのc (n+1)を出力する。ここで、利得損失計算部411、雑音計算部413及び相互結合計算部412からの数2の右辺第1、3、2項は、第n回目のイテレーションの後でのc (n)を用いて計算されたものである。
スピン系計算部42は、イテレーション部41により反復されたイテレーションの後に、数2の微分方程式の定常状態における各振動子i毎の位相を計算することにより、結合振動子系の相互結合に対応するイジングモデルの基底状態を計算する。
このように、組み合わせ最適化問題の最適解を求めるために、組み合わせ最適化問題をイジングモデルへマッピングし、イジングモデルの基底状態を計算するにあたり、電子回路で実装することにより、光学回路を安定化する必要をなくすことができる。そして、完全結合系のニューロチップ等において、結合振動子系のダイナミクスを計算するにあたり、電子回路で実装することにより、光学回路を安定化する必要をなくすことができる。
第2実施形態においても、第1実施形態の図6〜8と同様に、並列計算を行なうことができ、第1実施形態の図9〜12と同様に、ビット量子化を行なうことができる。
(第3実施形態:計算原理)
第3実施形態では、機械学習のボルツマンサンプリングを行なうために、機械学習をXYモデルへマッピングし、XYモデルの平衡状態を計算する。または、完全結合系のニューロチップ等において、結合振動子系のダイナミクスを計算する。
そこで、複数の振動子で複数のXY面内スピンを実装する。ここで、複数の振動子の間の相互結合を行なうことにより、複数のXY面内スピンの間の相互結合を実装する。そして、複数の振動子全体の様々な発振モードのサンプリングを行なうことにより、複数のXY面内スピン全体の様々なエネルギーのサンプリングを行なう。
まず、複数の振動子全体の様々な発振モードのサンプリングを行なうことにより、複数のXY面内スピン全体の様々なエネルギーのサンプリングを行なうことができる理由について説明する。XYモデルのハミルトニアンは、数7で表される。ここで、Jijは、スピンi、jの間の相互結合係数である。そして、θ、θは、それぞれ、スピンi、jのXY面内での連続値をとる位相(0radから2πradまで)を表わす。
Figure 2019008502
複数の振動子の時間発展を表わす複素ランジュバン方程式は、数8により表わされる。ここで、dAは、振動子iの信号成分についての複素振幅変化を表わし、dtは、時間変化を表わし、dWは、振動子iの雑音成分についての複素ウィーナー過程を表わす。
Figure 2019008502
g(A)は、振動子iの強度増幅率であり、数9により表わされる。ここで、gは、小信号利得を表わし、nは、飽和強度を表わす。よって、(1/2)g(A)Adtは、振動子iの信号成分について、利得に起因する複素振幅変化を表わす。
Figure 2019008502
γは、振動子の強度減衰率であり、数10により表わされる。ここで、ωは、振動子の発振周波数を表わし、Qは、振動子の共振Q値を表わす。ただし、ω及びQは、すべての振動子について、同一の値をとる。よって、−(1/2)γdtは、振動子iの信号成分について、損失に起因する複素振幅変化を表わす。
Figure 2019008502
γinjは、相互結合率を表わす。よって、(γinj/2)Jijdtは、振動子iの信号成分について、振動子jから振動子iへの相互結合に起因する複素振幅変化を表わす。そして、(γinj/2)ΣJijdtは、振動子iの信号成分について、振動子i以外のすべての振動子から振動子iへの相互結合に起因する複素振幅変化を表わす。
Dは、振動子の振幅の拡散係数を表わす。よって、√(D)dWは、振動子iの信号成分について、振幅拡散に起因する複素振幅変化を表わす。
複数の振動子のポテンシャル関数は、数11により表わされる。ここで、H(A)は、ポテンシャル関数を表わし、太字のAは、複数の振動子の信号成分について、複素振幅のベクトル表示を表わし、A は、Aの複素共役を表わす。
Figure 2019008502
複数の振動子の時間発展を表わす複素ランジュバン方程式は、数12のように書き換えられる。複数の振動子の信号成分について、複素振幅の定常状態の分布関数は、ポテンシャル関数を用いて、数13により表わされ、より具体的には、数14により表わされる。ここで、Pst(A)は、定常状態の分布関数を表わし、Cは、規格化因子を表わす。
Figure 2019008502
Figure 2019008502
Figure 2019008502
ここで、複数の振動子の間の相互結合の強度が低いため、すべての振動子の強度が独立して数15により表わされる定常状態の同じ強度に安定化する、と仮定する。なお、nは、定常状態の同じ強度を表わす。すると、数14の第1のexpの項のDが小さいため、数14の第1のexpの項が数16により表わされるΠδ(|A−n)に近似される。なお、δは、δ関数を表わし、C’は、新たな規格化因子を表わす。
Figure 2019008502
Figure 2019008502
ここで、振動子iの信号成分の複素振幅を、振幅√(n)及び位相θを用いて、数17のように表わす。すると、定常状態の分布関数は、数18により表わされる。
Figure 2019008502
Figure 2019008502
さて、複数の振動子の系と複数のスピンの系を対応付けるために、数19で表わされる疑似的な逆温度β=1/(kT)を定義する。ここで、kは、ボルツマン定数を表わし、Tは、複数のスピンの系の疑似的な温度を表わし、Dθ=D/nは、振動子の位相の拡散係数を表わす。
Figure 2019008502
すると、定常状態の位相の分布関数は、数20により表わされる。ここで、太字のθは、複数の振動子の信号成分について、位相のベクトル表示を表わし、H(θ)は、数21により表わされる、XYモデルのハミルトニアンを表わす。つまり、複数の振動子の系の定常状態の分布関数は、複数のスピンの系の疑似的な熱平衡状態のボルツマン分布に対応するのである。
Figure 2019008502
Figure 2019008502
(第3実施形態:計算方法)
次に、第3実施形態の結合振動子系の計算装置の構成を図14に示す。結合振動子系の計算装置C5は、イテレーション部51及びスピン系計算部52から構成される。結合振動子系の計算装置C5に対して、結合振動子系の計算プログラムをインストールすることにより、イテレーション部51及びスピン系計算部52を実装することができる。
イテレーション部51は、結合振動子系のダイナミクスを記述する微分方程式(数8)の各イテレーションにおいて、各振動子i毎の微小時間後の振幅及び位相(数8のAの絶対値及び位相)を計算する。よって、イテレーション部51は、完全結合系のニューロチップ等において、結合振動子系のダイナミクスを計算することができる。
スピン系計算部52は、イテレーション部51により反復されたイテレーションの後に、微分方程式(数8)の定常状態における各振動子i毎の位相(数8のAの位相)を計算することにより、結合振動子系の相互結合(数7のJij)に対応するXYモデル(数7)の平衡状態を計算する。よって、スピン系計算部52は、XYモデルの平衡状態を計算することにより、機械学習のボルツマンサンプリングを行なうことができる。
ここで、結合振動子系の全振動子数をMとすると、数8の微分方程式のうち、右辺第1項の利得損失項及び右辺第3項の雑音項の計算量は、Mに比例するが、右辺第2項の相互結合項の計算量は、Mに比例する。
しかし、数8の微分方程式のうち、右辺第2項の相互結合項の計算時間が、右辺第1項の利得損失項及び右辺第3項の雑音項の計算時間と比べて、同程度であるときには、図14に示したように各イテレーションを行なえばよい。
つまり、ある回のイテレーションの後でのAを用いて計算した、右辺第1項の利得損失項、右辺第2項の相互結合項及び右辺第3項の雑音項を加算することにより、その回のイテレーションでの左辺第1項の微小時間変化を計算するのである。よって、右辺第2項の相互結合項を図3のような遅延(例えば、イテレーション数回分。)を伴わず計算しながら、右辺第1項の利得損失項及び右辺第3項の雑音項を高速に計算することができる。
ただし、数8の微分方程式のうち、右辺第2項の相互結合項の計算時間が、右辺第1項の利得損失項及び右辺第3項の雑音項の計算時間と比べて、十分に長いときには、図3と同じように各イテレーションを行なえばよい。
つまり、ある回のイテレーションの後でのAを用いて計算した右辺第1項の利得損失項及び右辺第3項の雑音項と、その回のイテレーションよりも数回(例えば、1回のみ。)遅れた回のイテレーションの後でのAを用いて計算した右辺第2項の相互結合項と、を加算することにより、その回のイテレーションでの左辺第1項の微小時間変化を計算するのである。よって、右辺第2項の相互結合項を余裕を持って計算しながら、右辺第1項の利得損失項及び右辺第3項の雑音項を高速に計算することができる。
結合振動子系の計算装置C5のうち、イテレーション部51は、利得損失計算部511、相互結合計算部512、雑音計算部513及び振幅位相計算部514から構成される。
利得損失計算部511は、数8の微分方程式の各イテレーションにおいて、各振動子i毎の利得及び損失に起因する各振動子i毎の振幅及び位相の微小時間変化を計算する。具体的には、利得損失計算部511は、数8の微分方程式の各イテレーションにおいて、第n回目のイテレーションの後でのA (n)を入力され、数8の右辺第1項を出力する。ここで、第1回目のイテレーションの前でのA (0)は、0に初期設定される。
雑音計算部513は、数8の微分方程式の各イテレーションにおいて、各振動子i毎の雑音に起因する各振動子i毎の振幅及び位相の微小時間変化を計算する。具体的には、雑音計算部513は、数8の微分方程式の各イテレーションにおいて、第n回目のイテレーションの後でのA (n)を入力され、数8の右辺第3項を出力する。
相互結合計算部512は、数8の微分方程式の各イテレーションにおいて、各振動子iの間の相互結合に起因する各振動子i毎の振幅及び位相の微小時間変化を計算する。具体的には、相互結合計算部512は、数8の微分方程式の各イテレーションにおいて、第n回目のイテレーションの後でのA (n)を入力され、数8の右辺第2項を出力する。ここで、相互結合計算部512での数8の右辺第2項の計算時間は、利得損失計算部511及び雑音計算部513での数8の右辺第1、3項の計算時間と比べて、同程度である。
振幅位相計算部514は、数8の微分方程式の各イテレーションにおいて、利得損失計算部511、雑音計算部513及び相互結合計算部512により各々計算された各振動子i毎の振幅及び位相の微小時間変化に基づいて、各振動子i毎の微小時間後の振幅及び位相を計算する。具体的には、振幅位相計算部514は、数8の微分方程式の各イテレーションにおいて、利得損失計算部511、雑音計算部513及び相互結合計算部512からの数8の右辺第1、3、2項を入力され、利得損失計算部511、雑音計算部513及び相互結合計算部512からの数8の右辺第1、3、2項を加算し、第(n+1)回目のイテレーションの後でのA (n+1)を出力する。ここで、利得損失計算部511、雑音計算部513及び相互結合計算部512からの数8の右辺第1、3、2項は、第n回目のイテレーションの後でのA (n)を用いて計算されたものである。
スピン系計算部52は、イテレーション部51により反復されたイテレーションの後に、数8の微分方程式の定常状態における各振動子i毎の位相を計算することにより、結合振動子系の相互結合に対応するXYモデルの平衡状態を計算する。
このように、機械学習のボルツマンサンプリングを行なうために、機械学習を連続値スピンモデルへマッピングし、連続値スピンモデルの平衡状態を計算するにあたり、電子回路で実装することにより、光学回路を安定化する必要をなくすことができる。そして、完全結合系のニューロチップ等において、結合振動子系のダイナミクスを計算するにあたり、電子回路で実装することにより、光学回路を安定化する必要をなくすことができる。
第3実施形態においても、第1実施形態の図6〜8と同様に、並列計算を行なうことができ、第1実施形態の図9〜12と同様に、ビット量子化を行なうことができる。
本開示の結合振動子系の計算装置、プログラム及び方法は、次の目的に利用可能である:(1)組み合わせ最適化問題の最適解を求めるために、組み合わせ最適化問題をイジングモデルへマッピングし、イジングモデルの基底状態を計算するにあたり、光学回路を安定化する必要をなくす、(2)機械学習のボルツマンサンプリングを行なうために、機械学習を連続値スピンモデルへマッピングし、連続値スピンモデルの平衡状態を計算するにあたり、光学回路を安定化する必要をなくす、(3)完全結合系のニューロチップ等において、結合振動子系のダイナミクスを計算するにあたり、光学回路を安定化する必要をなくす。
C1、C2:イジングモデルの計算装置
C3、C4、C5:結合振動子系の計算装置
P1、P2、P3、P4:レーザパルス
11、21:レーザ発振部
12、22:リング共振器
13、15、17、24:相互結合実装部
14、16、18:パルス遅延線
19、23:スピン測定部
31、41、51:イテレーション部
32、42、52:スピン系計算部
33:FIFO
311、411、511:利得損失計算部
312、413、513:雑音計算部
313、412、512:相互結合計算部
314、414、514:振幅位相計算部

Claims (13)

  1. 結合振動子系のダイナミクスを記述する微分方程式の各イテレーションにおいて、各振動子毎の微小時間後の振幅及び位相を計算するイテレーション部と、
    前記イテレーション部により反復されたイテレーションの後に、前記微分方程式の定常状態における各振動子毎の位相を計算することにより、前記結合振動子系の相互結合に対応するスピン系の基底状態又は平衡状態を計算するスピン系計算部と、
    を備え、
    前記イテレーション部は、
    前記微分方程式の各イテレーションにおいて、各振動子毎の利得及び損失に起因する各振動子毎の振幅及び位相の微小時間変化を計算する利得損失計算部と、
    前記微分方程式の各イテレーションにおいて、各振動子の間の相互結合に起因する各振動子毎の振幅及び位相の微小時間変化を計算する相互結合計算部と、
    前記微分方程式の各イテレーションにおいて、前記利得損失計算部及び前記相互結合計算部により各々計算された各振動子毎の振幅及び位相の微小時間変化に基づいて、各振動子毎の微小時間後の振幅及び位相を計算する振幅位相計算部と、
    を備えることを特徴とする結合振動子系の計算装置。
  2. 前記微分方程式の各イテレーションにおいて、各振動子毎の雑音に起因する各振動子毎の振幅及び位相の微小時間変化を計算する雑音計算部、
    をさらに備え、
    前記振幅位相計算部は、前記微分方程式の各イテレーションにおいて、前記利得損失計算部、前記相互結合計算部及び前記雑音計算部により各々計算された各振動子毎の振幅及び位相の微小時間変化に基づいて、各振動子毎の微小時間後の振幅及び位相を計算する
    ことを特徴とする、請求項1に記載の結合振動子系の計算装置。
  3. 結合振動子系のダイナミクスを記述する微分方程式の各イテレーションにおいて、各振動子毎の微小時間後の振幅及び位相を計算するイテレーション部、
    を備え、
    前記イテレーション部は、
    前記微分方程式の各イテレーションにおいて、各振動子毎の利得及び損失に起因する各振動子毎の振幅及び位相の微小時間変化を計算する利得損失計算部と、
    前記微分方程式の各イテレーションにおいて、各振動子の間の相互結合に起因する各振動子毎の振幅及び位相の微小時間変化を計算する相互結合計算部と、
    前記微分方程式の各イテレーションにおいて、各振動子毎の雑音に起因する各振動子毎の振幅及び位相の微小時間変化を計算する雑音計算部と、
    前記微分方程式の各イテレーションにおいて、前記利得損失計算部、前記相互結合計算部及び前記雑音計算部により各々計算された各振動子毎の振幅及び位相の微小時間変化に基づいて、各振動子毎の微小時間後の振幅及び位相を計算する振幅位相計算部と、
    を備えることを特徴とする結合振動子系の計算装置。
  4. 前記雑音計算部は、前記微分方程式の初期状態のみにおいて、各振動子毎の雑音に起因する各振動子毎の振幅及び位相の微小時間変化を計算する
    ことを特徴とする、請求項2又は3に記載の結合振動子系の計算装置。
  5. 前記イテレーション部は、前回のイテレーションにおける各振動子毎の微小時間後の振幅及び位相が、前記微分方程式の定常状態に所定の精度で接近したときに、次回のイテレーションにおける各振動子毎の微小時間後の振幅及び位相の計算を停止する
    ことを特徴とする、請求項1から4のいずれかに記載の結合振動子系の計算装置。
  6. 前記イテレーション部は、前記微分方程式の各イテレーションにおいて、各振動子毎の並列処理により、各振動子毎の微小時間後の振幅及び位相を計算する
    ことを特徴とする、請求項1から5のいずれかに記載の結合振動子系の計算装置。
  7. 前記イテレーション部は、複数のイテレーション部を備え、
    前記複数のイテレーション部の各々は、前記微分方程式の各イテレーションにおいて、前記結合振動子系のうちの各々に特定のグループに属する振動子の微小時間後の振幅及び位相のデータを、前記複数のイテレーション部のその他との間で共有する
    ことを特徴とする、請求項6に記載の結合振動子系の計算装置。
  8. 前回のイテレーションにおける前記データの共有処理が、次回のイテレーションにおける計算処理を停止/中断させないように、前記複数のイテレーション部の各々は、前記結合振動子系のうちの各々に特定のグループに属する振動子を割り当てられる
    ことを特徴とする、請求項7に記載の結合振動子系の計算装置。
  9. 前記振幅位相計算部は、前記微分方程式の各イテレーションにおいて、所定の精度で量子化したうえで、各振動子毎の微小時間後の振幅及び位相を計算する
    ことを特徴とする、請求項1から8のいずれかに記載の結合振動子系の計算装置。
  10. 前記振幅位相計算部により計算される各振動子毎の微小時間後の振幅についての量子化カットオフは、前記振幅位相計算部により計算される各振動子毎の微小時間後の振幅についての量子化の前記所定の精度を満足するように設定されており、かつ、前記微分方程式の定常状態における各振動子毎の振幅と比べて大きく設定されている
    ことを特徴とする、請求項9に記載の結合振動子系の計算装置。
  11. 前記相互結合計算部により計算される各振動子毎の振幅の微小時間変化についての量子化ビット数は、前記振幅位相計算部により計算される各振動子毎の微小時間後の振幅についての量子化ビット数と比べて、少なくともlogM(ただし、Mは、前記結合振動子系の全振動子数である。)だけ大きく設定されている
    ことを特徴とする、請求項9又は10に記載の結合振動子系の計算装置。
  12. 結合振動子系のダイナミクスを記述する微分方程式の各イテレーションにおいて、各振動子毎の微小時間後の振幅及び位相を計算するイテレーションステップと、
    前記イテレーションステップにより反復されたイテレーションの後に、前記微分方程式の定常状態における各振動子毎の位相を計算することにより、前記結合振動子系の相互結合に対応するスピン系の基底状態又は平衡状態を計算するスピン系計算ステップと、
    をコンピュータに実行させ、
    前記イテレーションステップは、
    前記微分方程式の各イテレーションにおいて、各振動子毎の利得及び損失に起因する各振動子毎の振幅及び位相の微小時間変化を計算する利得損失計算ステップと、
    前記微分方程式の各イテレーションにおいて、各振動子の間の相互結合に起因する各振動子毎の振幅及び位相の微小時間変化を計算する相互結合計算ステップと、
    前記微分方程式の各イテレーションにおいて、前記利得損失計算ステップ及び前記相互結合計算ステップにより各々計算された各振動子毎の振幅及び位相の微小時間変化に基づいて、各振動子毎の微小時間後の振幅及び位相を計算する振幅位相計算ステップと、
    を備えることを特徴とする結合振動子系の計算プログラム。
  13. 結合振動子系のダイナミクスを記述する微分方程式の各イテレーションにおいて、各振動子毎の微小時間後の振幅及び位相を計算するイテレーションステップと、
    前記イテレーションステップにより反復されたイテレーションの後に、前記微分方程式の定常状態における各振動子毎の位相を計算することにより、前記結合振動子系の相互結合に対応するスピン系の基底状態又は平衡状態を計算するスピン系計算ステップと、
    を備え、
    前記イテレーションステップは、
    前記微分方程式の各イテレーションにおいて、各振動子毎の利得及び損失に起因する各振動子毎の振幅及び位相の微小時間変化を計算する利得損失計算ステップと、
    前記微分方程式の各イテレーションにおいて、各振動子の間の相互結合に起因する各振動子毎の振幅及び位相の微小時間変化を計算する相互結合計算ステップと、
    前記微分方程式の各イテレーションにおいて、前記利得損失計算ステップ及び前記相互結合計算ステップにより各々計算された各振動子毎の振幅及び位相の微小時間変化に基づいて、各振動子毎の微小時間後の振幅及び位相を計算する振幅位相計算ステップと、
    を備えることを特徴とする結合振動子系の計算方法。
JP2017122741A 2017-06-23 2017-06-23 結合振動子系の計算装置、プログラム及び方法 Active JP6803026B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017122741A JP6803026B2 (ja) 2017-06-23 2017-06-23 結合振動子系の計算装置、プログラム及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017122741A JP6803026B2 (ja) 2017-06-23 2017-06-23 結合振動子系の計算装置、プログラム及び方法

Publications (2)

Publication Number Publication Date
JP2019008502A true JP2019008502A (ja) 2019-01-17
JP6803026B2 JP6803026B2 (ja) 2020-12-23

Family

ID=65028911

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017122741A Active JP6803026B2 (ja) 2017-06-23 2017-06-23 結合振動子系の計算装置、プログラム及び方法

Country Status (1)

Country Link
JP (1) JP6803026B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110175427A (zh) * 2019-06-03 2019-08-27 江西理工大学 一种在耦合振子系统中实现非对称振荡死亡的方法
EP3754556A1 (en) * 2019-06-18 2020-12-23 Fujitsu Connected Technologies Limited Sampling device and sampling method
JP2021060864A (ja) * 2019-10-08 2021-04-15 株式会社東芝 探索装置、探索方法、プログラム、探索システムおよび裁定取引システム
CN115659631A (zh) * 2022-10-24 2023-01-31 江西理工大学 一种基于振幅包络的延展态的实现方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006190234A (ja) * 2004-12-06 2006-07-20 Univ Waseda シミュレーション装置、シミュレーション方法、シミュレーションプログラムを格納した記録媒体
JP2016103282A (ja) * 2015-12-25 2016-06-02 株式会社日立製作所 情報処理システム及び管理装置
JP2016528611A (ja) * 2013-07-09 2016-09-15 ザ ボード オブ トラスティーズ オブ ザ レランド スタンフォード ジュニア ユニバーシティー 光パラメトリック発振器のネットワークを使用する計算

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006190234A (ja) * 2004-12-06 2006-07-20 Univ Waseda シミュレーション装置、シミュレーション方法、シミュレーションプログラムを格納した記録媒体
JP2016528611A (ja) * 2013-07-09 2016-09-15 ザ ボード オブ トラスティーズ オブ ザ レランド スタンフォード ジュニア ユニバーシティー 光パラメトリック発振器のネットワークを使用する計算
JP2016103282A (ja) * 2015-12-25 2016-06-02 株式会社日立製作所 情報処理システム及び管理装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110175427A (zh) * 2019-06-03 2019-08-27 江西理工大学 一种在耦合振子系统中实现非对称振荡死亡的方法
CN110175427B (zh) * 2019-06-03 2023-06-09 江西理工大学 一种在耦合振子系统中实现非对称振荡死亡的方法
EP3754556A1 (en) * 2019-06-18 2020-12-23 Fujitsu Connected Technologies Limited Sampling device and sampling method
JP2021060864A (ja) * 2019-10-08 2021-04-15 株式会社東芝 探索装置、探索方法、プログラム、探索システムおよび裁定取引システム
JP7314014B2 (ja) 2019-10-08 2023-07-25 株式会社東芝 探索装置、探索方法、プログラム、探索システムおよび裁定取引システム
CN115659631A (zh) * 2022-10-24 2023-01-31 江西理工大学 一种基于振幅包络的延展态的实现方法
CN115659631B (zh) * 2022-10-24 2023-08-04 江西理工大学 一种基于振幅包络的延展态的实现方法

Also Published As

Publication number Publication date
JP6803026B2 (ja) 2020-12-23

Similar Documents

Publication Publication Date Title
JP2019008502A (ja) 結合振動子系の計算装置、プログラム及び方法
TWI591490B (zh) 類神經網路處理器中之向量運算單元
Cochelin et al. A high order purely frequency-based harmonic balance formulation for continuation of periodic solutions
CN112074806A (zh) 使用减小的位宽向量的块浮点计算
Zhang et al. Extreme-scale phase field simulations of coarsening dynamics on the sunway taihulight supercomputer
González et al. Real‐time direct integration of reduced solid dynamics equations
US20040225483A1 (en) Fdtd hardware acceleration system
Idesman et al. Accurate solutions of wave propagation problems under impact loading by the standard, spectral and isogeometric high-order finite elements. Comparative study of accuracy of different space-discretization techniques
Puri et al. Reduced order fully coupled structural–acoustic analysis via implicit moment matching
Kochmann Stability criteria for continuous and discrete elastic composites and the influence of geometry on the stability of a negative‐stiffness phase
Bilbao et al. Conservative numerical methods for the full von Kármán plate equations
Gorobets et al. Technology for Supercomputer Simulation of Turbulent Flows in the Good New Days of Exascale Computing.
Galvis et al. Dynamic analysis of three-dimensional polycrystalline materials using the boundary element method
Berthet et al. The balanced proper orthogonal decomposition applied to a class of frequency-dependent damped structures
Meyer et al. Optimization of a passive structure for active vibration isolation: an interval-computation-and constraint-propagation-based approach
Nunes et al. Exact general solutions for the mode shapes of longitudinally vibrating non-uniform rods via Lie symmetries
Gaidai et al. Rotating shaft's non-linear response statistics under biaxial random excitation, by path integration
Gong et al. Elastic significant bit quantization and acceleration for deep neural networks
Galvis et al. BESLE: Boundary element software for 3D linear elasticity
Feeny et al. A nonsymmetric state-variable decomposition for modal analysis
Corre et al. The asymptotic expansion load decomposition elastoplastic beam model
Layton et al. A semi-Lagrangian double Fourier method for the shallow water equations on the sphere
Corre et al. Higher‐order beam model with eigenstrains: theory and illustrations
Petrolo et al. Wave propagation in compact, thin-walled, layered, and heterogeneous structures using variable kinematics finite elements
Tan et al. Energy scattering of hybrid FE-SEA model with nonlinear joints

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20170623

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201030

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201117

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201118

R150 Certificate of patent or registration of utility model

Ref document number: 6803026

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250