JP7239521B2 - 情報処理装置および情報処理方法 - Google Patents

情報処理装置および情報処理方法 Download PDF

Info

Publication number
JP7239521B2
JP7239521B2 JP2020057747A JP2020057747A JP7239521B2 JP 7239521 B2 JP7239521 B2 JP 7239521B2 JP 2020057747 A JP2020057747 A JP 2020057747A JP 2020057747 A JP2020057747 A JP 2020057747A JP 7239521 B2 JP7239521 B2 JP 7239521B2
Authority
JP
Japan
Prior art keywords
spin
range
interaction
random number
node
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.)
Active
Application number
JP2020057747A
Other languages
English (en)
Other versions
JP2021157555A (ja
Inventor
晶子 加藤
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2020057747A priority Critical patent/JP7239521B2/ja
Publication of JP2021157555A publication Critical patent/JP2021157555A/ja
Application granted granted Critical
Publication of JP7239521B2 publication Critical patent/JP7239521B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Mram Or Spin Memory Techniques (AREA)

Description

本発明は、相互作用するスピンモデルの基底状態探索に当てはめた原理に基づく機械学習や最適化問題を解くための技術に関する。
大規模な組合せ最適化問題をヒューリスティックに解く方法の一つとして、統計力学でしばし登場する磁性体の振舞いを説明するための相互作用モデルの基底状態探索に対応させることがある。特に、最もシンプルな相互作用モデルである「イジングモデル」を専用ハードウェアに実装し、焼きなまし法(シミュレーテッド・アニーリング)や量子的焼きなまし法の原理を適用することで、高速に基底状態へ到達させる技術がいくつか提案されている。
イジングモデルは+1/-1(ないしは、0/1、上/下)の2値をとるスピンと、スピン間の相互作用を示す相互作用係数と、スピン毎にある外部磁場係数とで定義される。イジングモデルは与えられたスピン配列、相互作用係数、及び、外部磁場係数から、その時のエネルギーを計算することができる。イジングモデルのエネルギー関数は一般的に次式で表わされる。
Figure 0007239521000001
なお、σ,σはそれぞれi番目とj番目のスピンの値、Ji,jはi番目とj番目のスピンの間の相互作用係数、hはi番目のスピンに対する外部磁場係数、σはスピンの配列を表わすものとする。
式(1)において、右辺第一項は、スピン間の相互作用に起因するエネルギーを計算するものである。一般的にイジングモデルは無向グラフとして表現され、i番目スピンからj番目スピンへの相互作用と、j番目スピンからi番目スピンへの相互作用を区別することはない。そのため、第一項ではi≠jを満たすσ,σの組み合わせについて、相互作用係数の影響を計算している。また第二項は、各スピンに対する外部磁場に起因するエネルギーを計算するものである。
イジングモデルの基底状態探索とは、イジングモデルのエネルギー関数を最小化するスピンの配列を求める最適化問題である。相互作用係数J及び外部磁場係数hの値域に制限を付けないときには、トポロジが非平面グラフになるイジングモデルの基底状態を求めることはNP困難問題であることが知られている。
イジングモデルの基底状態探索は、元々イジングモデルが対象としていた磁性体の振る舞いを説明することのみならず、様々な用途に用いられている。これは、イジングモデルが相互作用に基づく最も単純なモデルであり、同様に相互作用に起因する様々な事象を表現する能力を持っているためであると言える。例えば、特許文献1には、イジングモデルの基底状態探索を用いて、職場組織などの集団におけるストレス度を推定する方法が開示されている。
また、イジングモデルの基底状態探索は、NP困難なグラフ問題として知られている最大カット問題とも対応している。イジングモデルにより最大カット問題を取り扱った例として、特許文献2があげられる。このようなグラフ問題は、ソーシャルネットワークにおけるコミュニティの検出や、画像処理におけるセグメンテーションなど、幅広い応用を持っている。そのため、イジングモデルや同様の相互作用モデルの基底状態探索を行うソルバがあれば、このような様々な問題に適用することができる。
特開2012-217518号公報 特開2016-051314号公報
イジングモデルの基底状態を求めることは、上述のようにNP困難問題であることから、イノマン型コンピュータで解くことは計算時間の面で困難を伴う。ヒューリスティックを導入して高速化を図るアルゴリズムも提案されているものの、イノマン型コンピュータではなく物理現象をより直接的に利用した計算、すなわちスピンを模した量子ビットもしくは古典ビットから成るコンピュータによりイジングモデルの基底状態を高速に求める方法が提案されている。さらに近年ではこのような動作原理をGPU(Graphics Processing Unit)上に再現する技術も実現されている(例えば非特許文献2)。イジングモデルに限らず、このような統計力学の磁性体の相互作用モデルを動作原理とする計算機構を以下ではアニーリング型計算装置と呼ぶことにする。
一般に最適化問題は例えば次の式(2)のような形で定義される。
Figure 0007239521000002
1行目の式f(x)は目的関数で通常最小化問題として与える。最大化問題の場合でも、fの符号を変えれば最小化問題として扱える。2行目は最適化の際に満たさなければならない制約条件を意味している。ここでは等式制約を示しているが、制約が不等式の場合もある。xは設計変数であり、この値を調整することで目的関数を最小化する。
アニーリング型計算機では、xは計算対象となる相互作用モデルのスピン配列とし、一般的には連続値でも離散値でもよい。よく用いられるイジングモデルを模した場合のスピン値σは0/1や-1/1などの2値変数であるが、統計力学におけるスピンモデルには2値以外のスピンを取り扱うモデルは数多く提案、研究されており、例えばQ値の多値変数などはQ状態ポッツモデル、連続変数では古典XYモデルなどの基底状態探索問題として取り扱える。本実施例ではアニーリング計算で取り扱うモデルの対象をイジングモデルに限定せず、一般的なスピンモデルや、人工知能(Artificial Intelligence:AI)におけるニューラルネットワークやボルツマンマシンのモデルも適用可能対象であるため、「相互作用モデル」と呼ぶことにする。また、多値変数も含めた値を取りうるスピンの概念を「ノード」と呼ぶことにする。
上記式(2)を相互作用モデルの形で表現すると、例えば以下の式(3)のようにするのが一般的である。
Figure 0007239521000003
つまり、目的関数f(x)に対応するf項と、二次式λ[h(x)-c]の形で制約条件を入れたモデルのエネルギー最小化問題となる。λはfとの兼ね合いで調整される任意の定数(ハイパーパラメータ―)である。λにより、式(3)右辺の第1項と第2項の大小関係が調整できる。具体的にはλを大きくすると、第2項の制約条件が支配的になり、制約条件とのずれがエネルギーE(x)に大きく反映されることになる。
この式(3)では式(2)に対応するよう、hがcに一致するスピン配列を取るとき、すなわち制約条件を満たすとき、第2項が0となりE(x)=f(x)となってエネルギーが最小となる。しかし、h=c以外の状態では第2項はλに依存した有限の値を取る。λが小さい場合にはλの値に依存してE(x)がエネルギー的に多少高くなるというだけなので、制約条件を満たさない解が有限の確率で発生することを許してしまう。
ここで単純に考えられるのは、λをfと比較して十分大きく設定する、すなわち式(3)第2項を支配的にするということである。しかし、アニーリング型計算機中で用いられるスピン更新確率は更新前後のEに依存しており、かつhは多くの場合大域的な値、すなわちiに関して系全体、あるいは系の一部に関して和の形になっているため、λを大きくすることで更新確率が極端に小さくなることになる。そのためλが大き過ぎる場合にはスピン更新が起こりにくくなり、目的とするスピン配置に収束するのに長い時間を要することになる。また、λの調整によっては、制約を満たす解を得られたとしても、制約を満たしつつエネルギーをもっと下げられる場合があり得るので、良質な解を得たいならばλを試行して、制約を満たす範囲で最もエネルギーが下がる状態を探索しなければならない。
なお、アニーリング型計算機中で用いられるスピン更新確率Pは、例えばメトロポリス的に決定される場合では、更新前のEをEbefore、更新後のEをEafterとすると、P=min(1, exp(-β(Eafter-Ebefore)))となる(βは所定の定数)。
さらに原理上スピン数が大きくなったり、制約条件の種類が増えたりするにつれ、制約条件を破らずに最低エネルギー状態を見つけることの難易度は増す。つまり、必ず満たさなければならない「強い制約」であっても、λが小さ過ぎる場合は実質「弱い制約」として扱われてしまう。多少の制約の破れは許容できたり、人手で直せるものであったりするような「弱い制約」の場合は問題とならないこともあるが、「強い制約」の下で問題を解かなければならない際にはλのパラメータチューニングに労力を要する。最悪、完全に満たす解は原理的に見つからない可能性すらあるが、それを知ることは困難である。
そこで本願発明の課題は、制約条件に関するパラメータチューニングの労力を低減し、モデル構築の試行時間を削減することにある。
本発明の好ましい一側面は、相互作用モデルのエネルギー最小化問題の計算を行う情報処理装置である。この装置は、相互作用モデルの初期状態が制約条件を満たしているかどうかを判定する初期配置判定器と、相互作用モデルに対して相互作用計算を実行して初期状態から状態を遷移させる相互作用コアと、制約条件を満たしている相互作用モデルの情報と制約条件の情報を相互作用コアへ割当てる制御部と、を備える。相互作用コアは、相互作用モデルの一部または全部において制約条件が維持されるように、初期状態から状態を遷移させる。
本発明の好ましい他の一側面は、相互作用モデルのエネルギー最小化問題の計算を行うために、メモリにモデルを表現するノードの値を格納し、ノードの値を更新することでモデルのエネルギー状態を遷移させる情報処理方法である。この方法は、メモリ上で制約条件を満たすべきノードの値が格納される保存範囲を示すアドレスと、制約条件を記憶する第1のステップ、メモリに制約条件を満たすノードの値を書き込む第2のステップ、保存範囲内で制約条件を破らないようにノードの値を更新する第3のステップ、を実行する。
制約条件に関するパラメータチューニングの労力を低減し、モデル構築の試行時間を削減することができる。
情報処理装置全体の構成例を示すブロック図。 情報処理装置全体の他の構成例を示すブロック図。 相互作用ボードの処理の例の流れを示すフローチャート。 相互作用ボードの処理の他の例の流れを示すフローチャート。 相互作用コアの全体構成を示すブロック図。 スピンの配置更新のフローチャート。 磁化保存範囲内のスピンの配置更新のフローチャート。 スピンの配置を更新する際の基本的な更新過程の一例の概念図。 スピンの配置を複数同時に更新する際の更新過程の一例の概念図。 巡回セールスマン問題への適用した場合のスピンの配置を更新する際の一例の概念図。 磁化保存範囲内のスピンの配置更新の他のフローチャート。
以下、本発明の実施形態を、図面を参照しつつ説明する。本実施例で示す各形態は、本発明を実現するための一例であり、本発明の技術範囲を限定するものではない。なお、実施例において、同一の機能を有する部材には同一の符号を付し、その繰り返しの説明は、特に必要な場合を除き省略する。また、本発明に直接関係のない先行技術部分は省略する。
同一あるいは同様な機能を有する要素が複数ある場合には、同一の符号に異なる添字を付して説明する場合がある。ただし、複数の要素を区別する必要がない場合には、添字を省略して説明する場合がある。
本明細書等における「第1」、「第2」、「第3」などの表記は、構成要素を識別するために付するものであり、必ずしも、数、順序、もしくはその内容を限定するものではない。また、構成要素の識別のための番号は文脈毎に用いられ、一つの文脈で用いた番号が、他の文脈で必ずしも同一の構成を示すとは限らない。また、ある番号で識別された構成要素が、他の番号で識別された構成要素の機能を兼ねることを妨げるものではない。
図面等において示す各構成の位置、大きさ、形状、範囲などは、発明の理解を容易にするため、実際の位置、大きさ、形状、範囲などを表していない場合がある。このため、本発明は、必ずしも、図面等に開示された位置、大きさ、形状、範囲などに限定されない。
本明細書で引用した刊行物、特許および特許出願は、そのまま本明細書の説明の一部を構成する。
本明細書において単数形で表される構成要素は、特段文脈で明らかに示されない限り、複数形を含むものとする。
本実施例では、補助スピンを導入したり、強い制約をポテンシャル項として相互作用モデルの式に明示的に入れたりはせず、スピン数保存の更新方法を導入することで制約条件を満たすことができるアニーリング型計算機の動作機構を提案する。具体的には、例えば0と1のどちらかの値をとるスピンをもつ相互作用モデルにおいて、0を取るスピンの総数、1を取るスピンの総数の比率が、各ビットのスピン値を更新しても変化しないように更新を行う。
式(4)はスピン更新を説明する概念であり、磁化について説明する式である。スピン値の総和は、
Figure 0007239521000004
と書くことができる。
このときのσi,kは、Mの測定時点のkステップ目のスピンの値である。Mを統計物理学では「磁化」と呼ぶため、便宜上ここでも磁化と呼ぶ。
たとえば解きたい問題の制約条件が、スピン値の総和ないし、部分和が特定の値に一致することであるとする。つまり、式(2)の第2式左辺の関数h(x)が式(4)の右辺のようにスピン値の和の形で書かれるとすると、まさに式(2)の右辺の定数cは磁化Mに相当しており、計算によって得られる磁化の値が一定であることを要請している。
和を取る範囲(式(4)の右辺のiの範囲)のことを以下では「磁化保存範囲」と呼ぶ。所定範囲の磁化が一定であるという前提で、この時解くべきエネルギー関数が式(3)のような場合では、磁化の保存と関連する制約条件を表す第2項目は不要となる。
本実施例ではこの原理を利用し、局所的(スピン値を記憶するメモリのアドレスごと)に見れば演算によってスピンの値は常に変化しつつも、大域的(制約条件の和をとる範囲のスピン値を記憶するメモリのアドレス全体)に見れば常に磁化が保存されるようにスピン更新を行う技術を用いることで、指定された制約条件が磁化によって記述できる場合、その制約を破らないアニーリング計算を実行できる情報処理装置を提供する。
本実施例の情報処理装置の一例は、最適化問題もしくは人工知能計算を、統計力学に基づく相互作用モデルのエネルギー最小化問題に置き換えて計算を行う装置であって、CPU(Central Processing Unit)と相互作用ボードが接続され、相互作用モデルの情報及び制約条件の情報を相互作用ボードとCPU間で情報の送受信を行う。相互作用ボードではCPUから受信したスピン値の初期配置が制約条件を満たしているかどうかを判定するための初期配置判定器を有し、受信した相互作用モデルの情報と制約条件の情報を相互作用コアへ割当てる制御部を有する。また、スピン値を更新する際に用いる乱数を発生させる乱数発生器と、制約条件を満たすために必要なスピン値の交換先を決定する際に用いる乱数を発生させる乱数発生装置を有する。
<情報処理装置の構成>
図1は、初期配置判定部14を内蔵する実施例の情報処理装置100-1の全体構成を示すブロック図である。
図2は、初期配置判定部14を内蔵しない実施例の情報処理装置100-2の全体構成を示すブロック図である。
図1と図2は本実施例に係る情報処理装置100全体の構成例であり、本実施例の構成要素となる相互作用ボード1内の構成を主として示すブロック図である。基本的に情報処理装置100は、サーバのような構成を利用可能であり、一般的なサーバとしての入力装置、出力装置、CPU、記憶装置等の構成を備えている。ただし、CPU2以外の実施例と直接関連のない従来技術の部分は一部省略してある。
相互作用ボード1は、特定の最適化問題を解くために用いられるGPUを想定している。本実施例では、相互作用コア11は、CMOS(Complementary Metal-Oxide Semiconductor)集積回路やFPGA(Field Programmable Gate Array)上の論理回路として実装されていることを想定して説明するが、他の固体素子でも実現可能である。また、図1と図2の構成はCPU2あるいは相互作用ボード1上のマイコンにソフトウェアを実行させることによっても実現可能とする。
図1と図2の構成の一部または全部をソフトウェアによって実現する場合、計算や制御等の機能は、記憶装置に格納されたプログラムがCPUやマイコンによって実行されることで、定められた処理を他のハードウェアと協働して実現される。計算機などが実行するプログラム、その機能、あるいはその機能を実現する手段を、「機能」、「手段」、「部」、「器」、「ユニット」、「モジュール」等と呼ぶ場合がある。
本実施例中、ソフトウェアで構成した機能と同等の機能は、FPGA、ASIC(Application Specific Integrated Circuit)などのハードウェアでも実現できる。
図1において、相互作用ボード1-1は、相互作用モデルの基底状態探索を行う専用ハードウェアであり、例えば画面描画処理のための専用ハードウェアであるGPUのように、CPU2を備えるホストに装着する拡張カードの形態を取る。図1の構成において、本実施例で説明する以外の構成は、例えば特許文献2に記載の構成を援用することができる。なお、特許文献2の構成に限らず、イジングモデルを扱う公知のアニーリングマシンの構成を援用してもよく、同様の効果が得られる。
相互作用ボード1-1は、図1に示すように、相互作用コア11、第1乱数発生器12、第2乱数発生器13、初期配置判定部14、制御部15、送信部16、受信部17とホストインターフェイス(I/F)18を備える。相互作用コア11は並列処理を効率よく実行するために、例えば特許文献2で示される専用のハードウェアを用いることができる。相互作用ボード1の相互作用コア以外の構成は、ソフトでもハードでも実現可能である。ソフトウェアで実装する場合には、当該処理は相互作用ボード1上のマイコン(図示せず)あるいはCPU2が行うようにしてもよい。
図2は初期配置判定部14がない等、図1の一部の編成を一部変更するだけなので、基本的には図1を用いて説明し、該当箇所で図2との違いを説明する。
まず処理開始時に、受信部17はCPU2から、スピン値σ、相互作用係数値Ji,j、外部磁場係数値h、これらを格納すべきメモリのアドレス値、磁化値M、磁化保存範囲のスピンのアドレス値(磁化保存範囲)を受け取る。ホストI/F18を介してCPU2との間でコマンドや情報の授受を行う。前述のように式(3)の磁化値Mは式(4)の定数cに相当する。
初期配置判定部14は、計算開始時に受信部から送られてきたスピン値σと磁化値Mが式(4)と矛盾していないかどうかを判定する装置である。矛盾していない場合は制御部15へ処理を進める信号を送る。矛盾している、すなわち、制約を満たしていない場合は送信部16経由でCPU2へエラー信号を送り処理を終了させる。
制御部15はスピン初期値、アドレス値、相互作用係数値、外部磁場係数値、磁化値及び磁化保存範囲を初期配置判定部14(図1の場合)もしくは受信部17(図2の場合)から受け取り相互作用コア11へ送る。アドレス値、相互作用係数値、外部磁場係数値は相互作用コア11内にあるスピンアレイ20内のスピンユニット30へ割当てられ、磁化保存範囲、磁化値は相互作用コア11内の磁化保存情報記憶部22に格納される。磁化保存範囲は具体的には、磁化保存範囲に含まれるスピンの値を格納するメモリのアドレスあるいはアドレスの範囲として記憶される。上述の相互作用コア11の構成については、後に図5で説明する。
相互作用コア11や相互作用ボード1が複数ある構成の場合は、この制御部15でどこのボードやコアへ割り当てるかを判別し割り振る。
第1乱数発生器12は、従来のアニーリング型計算機にも備わっている機構であり、相互作用コア11の相互演算動作の際に、局所解にとらわれることをできるだけ防げるような、効率的な確率的スピン値更新を行うための乱数列を発生させる。第2乱数発生器13は、本実施例の特徴の一つであり、後述する磁化が保存するスピン更新の際に必要となる、磁化保存範囲内のスピンアドレス値を確率的に決定するために必要な乱数ビット列を発生させる。相互作用コア11は相互作用モデルの相互作用演算を実行する部分で、詳細は図5を用いて後述する。
上記の第1乱数発生器12と第2乱数発生器13は、同じ乱数発生器を兼用することもできる。ただし、ただ、スピン更新用の第1乱数発生器12は実数乱数、交換先決定用の第2乱数発生器13は整数乱数にするのが好ましい。交換先決定用の第2乱数発生器が整数乱数なのは、確率的にアドレス値(整数)を決定するためである。乱数発生器を共通にする場合には、実数/整数変換器を通すことで整数の第2乱数として、アドレス値を決定することができる。
初期配置判定部14で行う一連の処理は、相互作用ボード1上ではなく、ホストとなるCPU2上のソフトウェア処理で行ってもよい。その場合の構成は図2の相互作用ボード1-2のようになる。
図1の相互作用ボード1-1との違いは、受信部17がCPU2からから受け取る情報をそのまま制御部15へ転送される点である。初期判定をCPU2でソフトウェア処理により行う場合、初期状態が満たされていないものを転送してしまわないようにユーザー側の配慮が必要になるが、相互作用ボード1-2の構成は簡略化される。
<相互作用ボードの制御フロー>
図3は、図1に示された相互作用ボード1-1の使用に関する全体の動作フローを示したものである。特許文献1や特許文献2等の先行技術で示されている公知の動作は詳細を省略する。
まず、ステップS101で計算開始に先立って、CPU2は相互作用ボード1をリセットする。
続いて、ステップS102でCPU2から相互作用ボード1に対して、スピン初期値、アドレス値、相互作用係数値、外部磁場係数値及び磁化値と磁化保存範囲のスピンのアドレス値(磁化保存範囲)が転送され、相互作用ボード1は受信部17を通してパケットを受信する。磁化は制約条件の数に応じて複数種類入力可能であり、その場合は各磁化に対応する磁化の保存範囲も受け取る。
スピン初期値σはユーザーが設定可能であるが、後のステップS103で制約条件を満たしているかどうかのチェックを受ける。本実施例では、その後のステップにおいても制約条件が破られないようにスピン更新処理が行われる。
次に、ステップS103で、受信部17から初期配置判定部14に対してスピン値、磁化値、磁化保存範囲が送られ、初期配置判定部14はスピン値を磁化保存範囲内で加算し、受け取った磁化値cと等しいか比較を行う。比較判定の結果の信号が初期配置判定部14から送信部16を介しCPU2へ送られる。比較判定値が真ならば、スピン値、磁化値、磁化保存範囲を制御部15へ送り、偽ならば、CPU2が処理を強制終了させる。なお初期配置判定部14では比較判定値のみを制御部15へ送り、制御部15は受信部17からスピン値、磁化値、磁化保存アドレス値を直接受け取ってもよい。
続くステップS104では、制御部15が、アドレス値を参照し、相互作用コア11内の該当するスピンユニット30や磁化保存情報記憶部22にスピン値、相互作用値、外部磁場値、磁化値、磁化保存範囲を書き込む。磁化値と磁化保存範囲は第2乱数発生器13にも送られる。
スピン初期値σはアドレス値に従ってスピンアレイ20内のスピンユニット30に格納される。例えば特許文献2では、スピンユニット30はSRAM(Static Random Access Memory)によるメモリアレイで構成される。この場合、制御部15はSRAMインターフェースでメモリアレイをアクセスすることができる。相互作用係数Ji,j、外部磁場係数hiも同様にスピンユニット30に格納される。
磁化値は式(3)の定数cに相当する値である。磁化保存範囲はスピン値σの総和がcとなる範囲を、当該スピン値が格納されるメモリのアドレスあるいはアドレス範囲を指定することで特定する。磁化保存範囲および磁化の値は、制御部15が相互作用コア11の一部のメモリ領域を確保する等して構成した磁化保存情報記憶部22に格納される。磁化保存範囲が複数ある場合には、磁化保存範囲を示すアドレスと当該磁化保存範囲の磁化値の組が複数格納される。
ステップS105でCPU2は相互作用動作を開始するよう相互作用ボード1の制御部15に通知する。相互作用においては、磁化保存範囲内において磁化値が保存されるように、すなわち制約条件が満たされるようにスピンの更新を実行する。相互作用動作フローに関しては後述する。
相互作用動作の完了後、ステップS106でCPU2は、相互作用ボード1から終了とわかる信号を受け取り、制御用通信に適した転送モードに切り替えるよう相互作用ボード1の制御部15に通知する。
その後、ステップS107でCPU2は計算結果であるスピン値を読み取る。すべてのスピンユニットの値を読み取り終わったら、処理を終了する。
図4は、図2に示された相互作用ボード1-2の使用に関する全体の動作フローを示したものである。相互作用ボード1-2はCPU2で初期配置判定を行うため、その図3におけるステップS103はフローから除外される。それ以外のフローは図3のフローと同一である。
<相互作用コアの構成>
図5は、相互作用コア11の概略構成を示す。こちらではI/Oに関する部分など、本実施例と直接関係のない部分は省略する。
相互作用コア11では、相互作用モデルのスピン値、相互作用係数及び外部磁場係数をすべてスピンアレイ20内のメモリセルに記憶する情報で表現する。スピンアレイ20は複数のスピンユニット30から成る。図5では4つのスピンユニット、スピンユニット30-1、スピンユニット30-2、スピンユニット30-3、スピンユニット30-4から成る例を示してあるが、スピンアレイ内のスピンユニット30間の構成やスピンユニット30の数は本実施例にとっては本質的な影響はない。また、スピンアレイ20内もしくはスピンユニット30内で各スピンユニットが持つスピン状態のエネルギー値を算出できると想定している(例えば特許文献2参照)。
磁化保存情報記憶部22は、ステップS102でCPU2から相互作用ボード1に対して送られてきた、磁化値と磁化保存範囲のスピンのアドレス値(磁化保存範囲)を記憶している。磁化保存範囲が複数ある場合には、それぞれの範囲に対応するメモリのアドレスと、その範囲のスピンの値が満たすべき条件(例えばスピンの値の合計値)を記憶する。
交換先スピンアドレス決定部21では、図1または図2での第2乱数発生器13で生成され第2乱数注入線24を通して転送されてきた第2の乱数と、磁化保存情報記憶部22に記憶されている磁化及び磁化保存範囲の情報を受けて算出された確率を比較して、更新対象スピンのアドレス値を決定する装置である。決定された更新スピンアドレスはスピンアレイ20へ送られる。
第1乱数注入線23は図1または図2での第1乱数発生器12で生成された第1の乱数をスピンアレイ20へ送るためにある。第1の乱数は、従来のアニーリングマシンでも温度に依存して遷移確率を生成するために用いられてきたものと同様のものである。
本実施例では、複数のスピン値を交換するために、更新対象スピンユニット30同士が直接つながっていない場合がある。交換先エネルギー記憶部25は、これら2つのスピンユニット間でエネルギー情報の授受を行えるように、エネルギー情報(スピン値)をスピンユニット30から読み出して一時的に格納し、スピンアレイ20と情報を授受する記憶装置を備える。
<相互作用コアの制御フロー>
図6Aと図6Bを用いて、相互作用コア11で行う相互作用S105の制御フローを説明する。図6Aに示すように、相互作用S105は、磁化保存範囲外の相互作用S601と磁化保存範囲内の相互作用S602に分けて実行される。なお、磁化保存範囲外の相互作用S601と磁化保存範囲内の相互作用S602の順序は、図6Aと逆になってもよい。
磁化保存範囲外の相互作用S601については、例えば特許文献2等に記載の技術と同様に、第1の乱数を用いて更新の判定を行って状態を遷移させる。
図6Bを用いて、相互作用コア11で行う磁化保存範囲内の相互作用S602の制御フローを説明する。図6Bを補足する説明図として、図7にはスピンの更新プロセスの概念図を示した。
ここでは、ピッキングカート問題として知られる最適化問題を例に説明する。ピッキングカート問題は、例えば1つのピッキングカートに常に3つの箱を乗せることを制約条件とする。この制約条件Hcは式(5)のように数式化される。
Figure 0007239521000005
ここで、μはカートの番号でありkは箱の番号である。具体的な回路では、スピンアレイ20においてスピン値を格納するメモリのアドレス(スピンアドレス)に相当する。xはスピン値で1または0の値を取り、箱が載っているか否かを示す。式(5)の第1項はカートに箱が3つ載るという制約を示し、第2項はカートがユニークである(同じカートが2つない)という制約を示す。理論的に第2項は例外のない制約(強い制約)であり、第1項は場合により変更可能な制約である。
図7は、カートが4つで、箱は12個の例である。例えばμの4つの行は上から1~4番のカートを示し、kの12の列は1~12番の箱を示している。ここでは、制約項が部分的に課される場合で、各部分にまたがった制約がない場合(各制約が独立な場合)を考える。図7のセルにある数字はスピン値を表している。図7の(1)は初期配置判定S103で設定された初期状態で、番号1のカートに番号1~3の箱が、番号2のカートに番号4~6の箱が、番号3のカートに番号7~9の箱が、番号4のカートに番号10~12の箱が載っていることを示す。
図7において、一つの升(四角)710がひとつのスピンユニット30に対応している。装置の実装上、一つのスピンユニット30は所定単位のメモリに対応しているので、一つの升710はスピン値を格納するメモリと解してよい。なお、図7のスピンの配列は概念上のものを示しており、必ずしもメモリの物理的な配列に対応するものではない。
先に述べた磁化保存情報記憶部22は、磁化が保存されるメモリの範囲すなわち図7で示される磁化保存領域を記憶している。交換先スピンアドレス決定部21は、第2の乱数に基づいて磁化保存領域内で交換されるスピンのアドレスを決定する。交換先エネルギー記憶部25はスピンの値を交換するためにスピンの値の記憶およびメモリの読み書きを行う。
図6Bでは、まずステップS301で、更新対象となるスピン(更新スピン)を磁化保存範囲内で1つまたは複数選択する。ここでのスピン選択は従来の技術と同様であり、例えば制御部15がランダムあるいは任意のルールで順番に選択する。ここでは、図7の(1)の実線の丸で示した部分が選択された更新スピン701とする。この時のスピン値は1であることを意味している。
次にステップS302では、第2乱数発生器13にて第2の乱数R2を発生させ、図5の交換先スピンアドレス決定部21へ送る。
本実施例では、ステップS301で選択された更新スピンのスピン値を、別のスピンのスピン値と交換することで磁化保存を実現させる。そのため、ステップS303は交換相手となるスピン(交換先スピン)のアドレス値を、図5の交換先スピンアドレス決定部で、第2の乱数R2を用いて確率的に算出する。
この時の確率は、例えば更新確率の算出方法を説明する式である式(6)、
Figure 0007239521000006
に従い決定される。
これはマルコフ連鎖モンテカルロ法におけるよく知られた詳細つり合いの式である。ここでB→Aは状態Bから状態Aへの遷移を意味し、Pflipはスピンの更新確率であり、従来のアニーリング型計算機でも用いられているものである。Psiteは第2の乱数R2に基づく交換相手のスピンの選択確率を表す。
wは各状態のボルツマン重みであり、状態が与えられれば一意に決まるが、この式を満たす限りにおいて、更新方法や更新確率には自由度がある。Psite及びPflipの簡単な選び方の一例としては、Pflipをメトロポリス的に決定し、Psiteは磁化保存範囲から一様ランダムとなる確率で決定する。
図7(2)の太枠の部分は、1つの磁化保存範囲702を表しており、その中から第2の乱数R2を用いて交換相手のアドレスが選択される。図7の(2)の点線の丸で示した部分がステップS303で選択された交換相手のスピン(交換先スピン)703とする。この時の交換先スピンの値は0であることがわかる。なお、図7の例では、横方向に4つの磁化保存範囲があり、制約条件によりひとつの磁化保存範囲のスピンの合計値は3である。
ステップS304では、選択されたスピンと交換相手のスピン値を、交換先エネルギー記憶部25が読み出して、記憶するとともに両方を比較する。比較した結果、スピン値が同じであればスピンの更新は行わずに終了する。スピン値が異なる場合、続いてステップS305では第1乱数発生器12にて第1の乱数R1を発生させ、図5のスピンアレイ20へ送る。
次のステップS306において、スピン値を交換する確率Pflipを例えばメトロポリス的に算出し、スピン値の交換を行うかどうかを、第1の乱数R1と比較して決定する。確率PflipがR1以上の場合、ステップS307に進み、PflipがR1未満の場合は処理を終了する。
ステップS307では、交換先エネルギー記憶部25は、自分が記憶するスピンの値に基づいて、スピンユニット30のメモリを書き換えてスピン値の交換を行う。実装例としては、ステップS306では書き換え許可/不許可の信号をメモリに与えるので、その場合にはステップS307で書き換えを行っても、メモリ内のスピンの値は変化しない。
ステップS307の結果スピン値の交換を行った場合、図7(3)のようになる。図7(3)から明らかなように、太枠の部分で示す磁化保存範囲702においてスピン値の合計は変化していない、すなわち制約条件が満足されている。
なお、図7(3)の状態では、10番の箱が2番と4番のカートに同時に載っていることになるので、現実のピッキングカート問題としては、箱がユニークである(同じ箱が2つない)という制約条件をさらに満足する必要がある。このように、制約条件が相互に影響し合う場合(制約条件が独立でない場合)については、後に実施例2で説明する。
以上のように、本実施例では初期状態において制約条件を満たすスピン配列を設定し、その後のスピンの更新では、制約条件を破らないようにスピンの更新を実現する。このため、制約条件のハイパーパラメータの調整を省略することが可能である。
ステップS301では、複数のスピン同時に選択することも可能である。
図8は、制約項が全スピンに関係する場合で,複数スピンの同時更新を行う際の更新手順を示している。図8では簡単のためにひとつの磁化保存範囲にあるスピンのみを描いてある。図8(1)の実線の丸で囲んだ3つの部分が、選択された更新スピン801を意味する。
図8(2)は、図6BのステップS303に該当する箇所であり、点線の丸で囲んだ3つの部分が選択された交換先スピン802を示す。このように、図8(1)での更新スピン801の数と同じ数だけの交換先スピン802を選択する。更新スピンと交換先スピンのペアはランダムに決めてよい。このとき、図8(2)の左から3番目のセルのように、更新スピンと同じスピンを交換先スピンに選択した場合、そのスピンに関しては処理しない。
図8(3)は図6BのステップS304~S307の処理によって更新が実現された後のスピン配置である。
<巡回セールスマン問題>
よく知られた最適化問題の実施例として、巡回セールスマン問題を解くときの手順を説明する。巡回セールスマン問題とは、N都市ある中で各都市間の移動コストが与えられたとき、各都市1回の訪問で総移動コストが最小になるように全都市を訪問する経路を求める問題であり、NP困難に属する問題である。
この問題を本実施例で解くとき、以下の式(7)のようにエネルギー関数と制約を定式化できる。
Figure 0007239521000007
ここでスピンσi,jは都市iをj番目に訪問した場合に1となり、それ以外は0となる変数である。相互作用係数Di,i’は都市iとi’間の移動コストである。制約条件の第1式は都市を一度しか訪問しない制約、第2式はj番目の訪問都市が1つしかないことを意味している。
この問題の場合では制約が2種類あるが、図6Aおよび図6Bのフローを基本にして実行可能であり、スピンの選択方法の詳細に関しても図7の手順を拡張することで実行可能である。ただし、このケースでは、磁化保存範囲が相互に影響し合う(独立でない)ため、一つの磁化保存範囲におけるスピンの交換が、他の磁化保存範囲のスピン値の合計に影響を及ぼさないように処理を設計する必要がある。
図9を用いて詳細な処理手順を説明する。巡回セールスマン問題に対応して、図9は制約項がi方向(横方向)とj方向(縦方向)の2方向の場合のスピン更新の概念を示している。i方向とj方向の制約は一部で重複するため、相互の影響を考慮する必要がある。
図10は、図9の処理を実行するために相互作用コア11で行う、磁化保存範囲内の相互作用S602-2の制御フローを説明するフローチャートである。実施例2ではシステム全体の構成や処理全体のフローは、実施例1の図1~図6Aに説明したものと同様でよい。
本実施例では、まず相互に影響する磁化保存範囲からスピン値1または0のアドレスを特定する。相互に影響する磁化保存範囲とは、範囲が直接的あるいは間接的に重複する磁化保存範囲をいう。この例ではステップS1001で、交換先エネルギー記憶部25が磁化保存情報記憶部22に記憶されている磁化保存範囲のスピンの値を読み出し、スピン値1(0でもよい)のアドレスを特定する。図9に相互に影響する磁化保存範囲を模式的に示した。
次に図6BのステップS301に該当する更新対象のスピンの選択で、制御部15がスピン値1のスピンから1つのスピン901を選択する。ここでは、図9(1)のように、更新スピン901を選択したとする。
ステップS1002では、交換先スピンアドレス決定部21は磁化保存情報記憶部22に記憶されている磁化保存範囲に基づいて、更新スピン901を含む磁化保存範囲を特定する。ここでは、i方向の第1のサイト902とj方向の第0のサイト903が特定され、これらは互いに影響する。黒枠の第1のサイト902は式(6)の制約の第1式であるi方向の磁化保存範囲を意味する。ここで、制約条件の第1式は都市を一度しか訪問しない制約であるから、i方向の磁化保存とはi方向で1となるスピンが常に1つであることを意味する。
式(6)の制約を参考にすると、iとjの2方向の磁化保存範囲があるのだが、この例ではまずはi方向の第1のサイト902内で交換先スピンを選択する。ステップS1003で、第1のサイト902のスピン値0のアドレスから確率Psiteで交換先スピンのアドレスの選択をする。この処理は、図6BのステップS302~S303と同様である。結果図9(2)の点線の円の部分に該当する交換先スピン904が選ばれたとする。
スピンを交換するかどうかの判定は、図6BのステップS304~S307と同様である。本実施例では、最初に値1のスピンのみを更新スピン候補に選択しているので、第1のサイト902内でスピン値の合計が1であるという制約を前提にすると、選択スピンと交換先スピンの値は必ず異なり、スピンの交換により必ず値が逆転する。このため図6BのステップS304の確認は省略できる。ただし、磁化保存範囲のスピン値の合計が2以上とした場合(都市を2度以上訪問する制約とした場合)は、ステップS304の実行が必要である。
スピンを交換する判定となった場合には、ステップS1003で第1のサイト902内で更新スピン901と交換先スピン904の値の交換が決定する。この例では、実際のメモリの書き換えは後でまとめて実行する。図10では省略しているが、スピンを交換しない判定となった場合には、処理を終了することは図6BのステップS304と同様である。スピンを交換しなかった場合には処理は終了し、ステップS301で次の更新スピンを特定する。図10の処理は1つのサイクルで、磁化保存範囲中の値1のスピンの数繰り返す(図9の例では4回)。
ステップS1003でスピンを交換することにした場合には、次に、ステップS1004で交換先スピンアドレス決定部21は、磁化保存情報記憶部22の磁化保存領域のデータを参照して、交換先スピン904を含むj方向の第2のサイト905を特定する。
式(6)の第2式の制約を満たすために、交換先スピン904を含むj方向の磁化保存範囲を第2のサイト905のスピンの値の合計が変化してはならない。第2のサイト905は式(6)の制約の第2式に対応する。第2式はj番目の訪問都市が1つしかないことを意味しているので、j方向の磁化保存とはj方向で1となるスピンが常に1つでなければならないことを意味する。このとき、ステップS1003で交換先スピン904の値が反転して1になるため、j方向の制約を満たすためには、図9(2)の実線の三角で示す1の値のスピン906を反転する必要がある。
ステップS1005では、交換先スピンアドレス決定部21が第2のサイト905内で制約を破るスピンを特定する。更新の結果制約が破れるかどうかの判定は、交換先エネルギー記憶部25で読み出したスピンの値と磁化保存情報記憶部22の情報に基づいて、交換先スピンアドレス決定部21で検証が可能である。更新の結果、制約が破られない場合には、処理を終了する。本実施例の場合は、第2式の制約によりスピンの交換が行われると、必ず直交方向のサイトの制約が破れる。すなわち2番目のサイト905のスピンの合計が2になるので、2番目のサイト905の制約を破らないためには確率1で1の値を持つ実線の三角で示すスピンのアドレスが、変更すべきスピン906のアドレスとして決定される。
次にステップS1006では、交換先スピンアドレス決定部21は、制約を破るスピンを含み第0のサイト903と重複する第3のサイトを特定する。交換先スピンアドレス決定部21は、磁化保存情報記憶部22の情報に基づいて、図9(3)に示すように、変更すべきスピン906を含み、第0のサイト903と重複する第3のサイト907を特定することができる。
次にステップS1007では、第3のサイト907内でスピン906の値と、点線の三角で示す第0のサイト903のスピン908の値の交換を決定する。この決定は、制約条件を守るために、第1のサイト902でスピンの交換が行われる場合は必ず行う。
次にステップS1008では、交換先エネルギー記憶部25により、スピンユニット30内のメモリを書き換えてスピンの値の交換を行う。その結果、図9(3)のように、スピン901とスピン904が交換され、また、スピン906とスピン908が交換される。このようにスピン904が更新確率Pflipで更新されたとすると、図9(4)のようなスピン配置となる。
図9~図10の実施例では各サイトのスピン値の合計が1であることで、最終的にはスピン901,902,906,908が時計回りにシフトすることにより、全てのサイトで制約が満たされることになる。スピン901,902,906,908が反時計回りにシフトすることでも、全てのサイトで制約が満たされるのは明らかである。各サイトのスピン値の合計が2以上の場合でも、交換先エネルギー記憶部25がスピンの値を読み出して、磁化保存情報記憶部22に記憶された制約条件を満たすようにスピンを更新することが可能である。
第2の実施例では、上記のように制約条件が複数あり、制約条件が互いに影響する場合であっても磁化保存が可能である。すなわち、第1の制約条件を満たすように更新を行うと第2の制約条件が破られる場合には、第2の制約条件を破る原因となるスピンをさらなる更新対象として第2の制約条件の違反を回避すればよい。
第2の実施例では、横方向のサイトのスピンの合計を1としたが、2以上の場合は図7に示したように複数のスピンの交換を繰り返せばよい。
上記実施例では、スピンユニット30内のメモリの書き換えは交換先エネルギー記憶部25の制御で行ったが、制御部15あるいは上位装置の制御で行うこともできる。また、上記実施例では、スピンの値は0または1の2値を取っているが、他の数値、2値または多値の離散値、連続値、あるいは重ね合わせを表現した量子状態にも適用が可能である。
以上説明した実施例によれば、制約を満たす実行可能解を得るために制約係数の強さを調整するプロセスが不要となる。これまで弱い制約しか取り扱えなかったアニーリング装置で、実質取り扱いできる問題の範囲が広がる。
1 相互作用ボード
2 CPU
11 相互作用コア
12 第1乱数発生器
13 第2乱数発生器
14 初期配置判定部
15 制御部
16 送信部
17 受信部
18 ホストI/F
21 交換先スピンアドレス決定部
22 磁化保存情報記憶部
23 乱数注入線
24 乱数注入線
25 交換先エネルギー記憶部

Claims (15)

  1. 相互作用モデルのエネルギー最小化問題の計算を行う情報処理装置であって、
    前記相互作用モデルの初期状態が制約条件を満たしているかどうかを判定する初期配置判定器と、
    前記相互作用モデルに対して相互作用計算を実行して前記初期状態から状態を遷移させる相互作用コアと、
    制約条件を満たしている相互作用モデルの情報と制約条件の情報を前記相互作用コアへ割当てる制御部と、
    を備え、
    前記相互作用コアは、
    前記相互作用モデルの一部または全部において前記制約条件が維持されるように、前記初期状態から状態を遷移させる、
    情報処理装置。
  2. 前記相互作用コアは、
    前記相互作用モデルを表現するノードの値を格納するメモリを備える、
    請求項1記載の情報処理装置。
  3. 前記相互作用コアは、
    前記メモリの所定の範囲において、前記ノードの値の合計値が変化しないように、前記初期状態から状態を遷移させる、
    請求項2記載の情報処理装置。
  4. 前記相互作用コアは、
    前記メモリの所定の範囲のアドレスと前記ノードの値の合計値を記憶する磁化保存情報記憶部を備える、
    請求項3記載の情報処理装置。
  5. 前記相互作用コアは、
    前記メモリの所定の範囲において、第1のノードと第2のノードの値を交換することにより、前記ノードの値の合計値が変化しないように、前記初期状態から状態を遷移させる、
    請求項4記載の情報処理装置。
  6. 前記相互作用コアは、
    前記メモリの第1の範囲において、第1のノードと第2のノードの値を交換することにより、前記第1の範囲において前記ノードの値の合計値が変化しないように、第1の状態遷移を行い、
    前記第1の状態遷移により、前記メモリの第2の範囲において前記ノードの値の合計値が変化する場合には、前記第2の範囲と第3のノードを共有する前記メモリの第3の範囲において、前記第3のノードと第4のノードの値を交換する第2の状態遷移を行うことで、前記第2の範囲および前記第3の範囲における前記ノードの値の合計値の変化を防ぎ、
    前記第4のノードは前記第1の範囲と重複する前記メモリの第0の範囲に含まれるものとすることで、前記第1の範囲および前記第0の範囲における前記ノードの値の合計値の変化を防ぐ、
    請求項5記載の情報処理装置。
  7. 状態を遷移させるためにノードの値を更新する際に用いる第1の乱数を発生させる第1の乱数発生器と、
    前記制約条件を満たすために必要なノードの値の交換先を決定する際に用いる第2の乱数を発生させる第2の乱数発生器を有する、
    請求項5記載の情報処理装置。
  8. 前記第1の乱数は実数乱数、前記第2の乱数は整数乱数である、
    請求項7記載の情報処理装置。
  9. 前記第1の乱数発生器と前記第2の乱数発生器は独立の構成あるいは共通の構成であり、
    前記第1の乱数発生器と前記第2の乱数発生器が共通の構成を持つ場合には、実数/整数変換器を用いて前記整数乱数を生成する、
    請求項8記載の情報処理装置。
  10. 前記相互作用コアはホストに接続される相互作用ボードで構成され、
    前記初期配置判定器は、
    前記相互作用ボードに内蔵されるか、あるいは、前記ホストの一部として構成される、
    請求項1記載の情報処理装置。
  11. 前記ノードはスピンを表現し、
    前記相互作用コアは、
    前記第2の乱数と前記磁化保存情報記憶部の情報から交換先スピンのアドレスを算出する交換先スピンアドレス決定部と、
    前記交換先スピンのエネルギー情報をメモリから受け取り仮格納し、またメモリへ戻す交換先エネルギー情報格納部を有する、
    請求項7記載の情報処理装置。
  12. 前記ノードの値は、
    2値または多値の離散値、連続値、および量子状態の少なくとも一つである、
    請求項2記載の情報処理装置。
  13. 相互作用モデルのエネルギー最小化問題の計算を行うために、メモリにモデルを表現するノードの値を格納し、ノードの値を更新することでモデルのエネルギー状態を遷移させる情報処理方法であって、
    前記メモリ上で制約条件を満たすべきノードの値が格納される保存範囲を示すアドレスと、前記制約条件を記憶する第1のステップ、
    前記メモリに制約条件を満たすノードの値を書き込む第2のステップ、
    前記保存範囲内で前記制約条件を破らないように前記ノードの値を更新する第3のステップ、
    を実行する情報処理方法。
  14. 前記制約条件は、前記保存範囲内のノードの値の合計値であり、前記ノードの値の更新は、前記保存範囲内で2つのノードの値を交換することで行われる、
    請求項13記載の情報処理方法。
  15. 前記ノードの値を更新するための確率を計算する実数乱数と、前記交換する2つのノードの少なくとも一つを選択するための整数乱数を用いる、
    請求項14記載の情報処理方法。
JP2020057747A 2020-03-27 2020-03-27 情報処理装置および情報処理方法 Active JP7239521B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020057747A JP7239521B2 (ja) 2020-03-27 2020-03-27 情報処理装置および情報処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020057747A JP7239521B2 (ja) 2020-03-27 2020-03-27 情報処理装置および情報処理方法

Publications (2)

Publication Number Publication Date
JP2021157555A JP2021157555A (ja) 2021-10-07
JP7239521B2 true JP7239521B2 (ja) 2023-03-14

Family

ID=77918541

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020057747A Active JP7239521B2 (ja) 2020-03-27 2020-03-27 情報処理装置および情報処理方法

Country Status (1)

Country Link
JP (1) JP7239521B2 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016051314A (ja) 2014-08-29 2016-04-11 株式会社日立製作所 半導体装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016051314A (ja) 2014-08-29 2016-04-11 株式会社日立製作所 半導体装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
党 璋 外2名,「グリッド分割を用いたイジングモデルによる巡回セールスマン問題の解法」,電子情報通信学会技術研究報告 [online],一般社団法人電子情報通信学会,2019年11月,第119巻, 第282号, VLD2019-40,pp.97-102,[検索日 2019年12月17日], インターネット:<URL:https://www.ieice.org/ken/user/index.php?cmd=download&p=CETm&t=IEICE-DC&l=57df8fa478d645fb26045e2762d2ba89277851794f79f693de48961f1887ea26&lang=>, ISSN:2432-6380
和久津 拓也 外1名,「制約充足型連動式状態遷移ニューラルネットワークとその組合せ最適化問題への応用」,計測自動制御学会論文集,社団法人計測自動制御学会,1995年05月31日,第31巻, 第5号,pp.622-630,ISSN:0453-4654

Also Published As

Publication number Publication date
JP2021157555A (ja) 2021-10-07

Similar Documents

Publication Publication Date Title
JP7186797B2 (ja) 量子計算のための方法及びシステム
CN114861576B (zh) 超导量子芯片版图的仿真方法及装置、电子设备和介质
JP6874219B2 (ja) 情報処理装置、演算装置、及び情報処理方法
JP7007585B2 (ja) 最適化装置、最適化装置の制御方法及び最適化装置の制御プログラム
WO2017033326A1 (ja) 半導体装置および情報処理装置
JP7007520B6 (ja) 情報処理装置、演算装置、及び情報処理方法
JP7417074B2 (ja) 最適化装置、最適化方法及び最適化装置の制御プログラム
CN115136115A (zh) 使用共享便笺式存储器的向量简化
Sevkli et al. A novel discrete particle swarm optimization for p-median problem
JP7193708B2 (ja) 最適化装置及び最適化装置の制御方法
Barlow et al. Multiobjective memetic algorithm applied to the optimisation of water distribution systems
JP2022088600A (ja) 量子回路の処理方法、装置、電子デバイス、記憶媒体、及びプログラム
Hayashi et al. Accelerator chip for ground-state searches of Ising model with asynchronous random pulse distribution
JP7219402B2 (ja) 最適化装置、最適化装置の制御方法及び最適化装置の制御プログラム
Zou et al. Massively simulating adiabatic bifurcations with FPGA to solve combinatorial optimization
JP7239521B2 (ja) 情報処理装置および情報処理方法
Markopoulou The computing spacetime
JP2021157360A (ja) 最適化装置及び最適化方法
US20210173978A1 (en) Optimization device, optimization device control method, and computer-readable recording medium recording optimization device control program
RU2530270C2 (ru) Виртуальная потоковая вычислительная система, основанная на информационной модели искусственной нейросети и нейрона
CN111985631B (zh) 信息处理设备、信息处理方法及计算机可读记录介质
JP7398401B2 (ja) 最適化方法、情報処理装置及びそれを用いたシステム
EP4105837A1 (en) Computer program, data processing apparatus, and data processing method
Suzuki et al. The design implications of form-finding with dynamic topologies
Patel et al. A max-plus model of asynchronous cellular automata

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220420

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230220

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230228

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230302

R150 Certificate of patent or registration of utility model

Ref document number: 7239521

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150